图片管理服务方法技术

技术编号:22242591 阅读:42 留言:0更新日期:2019-10-09 22:01
本发明专利技术公开了一种图片管理服务方法,包括以下步骤:从数据接入服务获取传感器数据,分析是否需要抓图;当需要抓图时由抓图模块发起抓图请求,通过相机接入服务转发抓图请求至相机进行抓图,抓图后等待相机上传图片到抓图模块;当接收到图片时,由抓图消息模块将数据写入云存储服务器并将图片地址以及其他数据封装为一条kafka消息写入kafka。本发明专利技术通过改变图片获取触发的时机,可大大减少图片采集次数,从而减少图片后续处理的传输过程中所需的带宽。

Picture Management Service Method

【技术实现步骤摘要】
图片管理服务方法
本专利技术属于大数据
,具体涉及一种图片管理服务方法。
技术介绍
随着电梯业务的发展,越来越多的应用需要依赖于通过抓拍电梯内的图片,对图片进行分析来解决业务问题。比如:当电梯开始运行时,通过抓拍图片来统计人流量;当电梯里的设备上报困人告警,需要抓拍一张图片通过分析该图片来确认是否为误报等。由于众多应用都需要抓图,存在诸多问题,例如,给相机性能带来一定的压力,如果多个应用同时抓图,可能造成部分应用获取图片失败;相机给每个应用上传图片,造成网络流量加大,需要购买更大的网络带宽。假设1台电梯每天运行1000次,每次运行抓图1张,每张图片100KB,总共有50000台电梯,有10个应用需要抓图,如果每个应用自行抓图,则需要1000*50000*10=5亿次抓图,约50TB,数据量巨大,需要大量网络带宽进行数据传输。
技术实现思路
鉴于以上存在的技术问题,本专利技术用于提供一种图片管理服务方法。为解决上述技术问题,本专利技术采用如下的技术方案:一种图片管理服务方法,包括以下步骤:从数据接入服务获取传感器数据,分析是否需要抓图;当需要抓图时由抓图模块发起抓图请求,通过相机接入服务转发抓图请求至相机进行抓图,抓图后等待相机上传图片到抓图模块;当接收到图片时,由抓图消息模块将数据写入云存储服务器并将图片地址以及其他数据封装为一条kafka消息写入kafka。优选地,所述当需要抓图时包括电梯到达或者离开1楼或者-1楼。优选地,所述当需要抓图时包括电梯开始运行。优选地,所述电梯开始运行的条件是:电梯门处于关闭状态,并且电梯处于运行中或者楼层发生了变化。优选地,所述抓图模块采用事件循环机制,相机上传的图片先加入一个阻塞队列,当队列中存在图片时,使用一个独立的线程不断的从队列中获取图片,并找到对应的等待对象,将该等待对象和图片发送给消息通知模块。优选地,所述kafka消息包括版本号、消息ID、抓图时间戳、电梯编号、扩展属性类型、扩展属性和图片地址。采用本专利技术具有如下的有益效果:通过改变图片获取触发的时机,可大大减少图片采集次数,从而减少图片后续处理的传输过程中所需的带宽。附图说明图1为本专利技术实施例的图片管理服务方法的步骤流程图;图2为本专利技术实施例的图片管理服务方法的先进先出的阻塞队列示意图;图3为本专利技术实施例的图片管理服务方法的kafka消息示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。参照图1,所示为本专利技术实施例公开的一种图片管理服务方法的流程图,包括以下步骤:从数据接入服务获取传感器数据,分析是否需要抓图,此步骤为传感器数据分析;当需要抓图时由抓图模块发起抓图请求,通过相机接入服务转发抓图请求至相机进行抓图,抓图后等待相机上传图片到抓图模块;当接收到图片时,由抓图消息模块将数据写入云存储服务器并将图片地址以及其他数据封装为一条kafka消息写入kafka。具体应用实例中,目前包括两种抓图场景:a.电梯到达或者离开1楼或者-1楼时抓拍一张图片;b.电梯开始运行时抓拍一张图片。分析模块的作用还在于确定电梯何时开始运行,目前认为电梯运行的条件是:电梯门处于关闭状态,并且电梯处于运行中或者楼层发生了变化。由于抓图管理服务负责分析传感器数据,因此其他服务不需要读取该数据,因此传感器数据kafka集群的压力得到缓解。并且传感器数据到应用到抓图变为传感器数据直接到抓图,减少了处理环节,使得抓图更及时。另一方面,当分析结果为开始运行并且在1楼或者-1楼,则只需抓一张图片,减少了抓图次数。具体应用实例中,云存储服务器可采用华为云提供的对象存储服务(OBS),其他的云服务器也可。具体应用实例中,当传感器数据分析模块触发抓图时,会创建一个等待对象,并将该对象加入一个以相机ID作为key的映射表中。抓图模块采用事件循环机制,参见图2,相机上传的图片会先加入一个阻塞队列中,当队列中存在图片时,使用一个独立的线程不断的从队列中获取图片,并找到对应的等待对象。将该等待对象和图片发送给消息通知模块。采用事件循环机制,可以使用少量的线程处理大量图片,节省CPU资源。具体应用实例中,消通知模块接收到图片和相关的数据后,将这些数据封装为一条kafka消息,并使用protoc进行序列化,然后将消息写入kafka。由于kafka会将数据保存一段时间,因此部分应用可以在半夜服务器空闲的时候进行数据分析。具体的kafka消息格式参见图3,包括版本号、消息ID、抓图时间戳、电梯编号、扩展属性类型、扩展属性和图片地址。如
技术介绍
中指出的,在现有技术中,假设1台电梯每天运行1000次,每次运行抓图1张,每张图片100KB,总共有50000台电梯,公司有10个应用需要抓图。如果每个应用自行抓图,需要1000*50000*10=5亿次抓图,约50TB。而采用本专利技术实施例实现的技术方案,先采用分析触发器数据抓图,只需抓取1000*50000=5000万次抓图,约5TB。因为图片时从电梯传到服务器,需要通过公网,因此节省了大量网络带宽资源。后续虽然每个应用都需获取图片,但是那是内外流量。并且由于图片保存到了云存储服务器,不需要实时分析的应用可以错开高峰期读取图片。应当理解,本文所述的示例性实施例是说明性的而非限制性的。尽管结合附图描述了本专利技术的一个或多个实施例,本领域普通技术人员应当理解,在不脱离通过所附权利要求所限定的本专利技术的精神和范围的情况下,可以做出各种形式和细节的改变。本文档来自技高网
...

【技术保护点】
1.一种图片管理服务方法,其特征在于,包括以下步骤:从数据接入服务获取传感器数据,分析是否需要抓图;当需要抓图时由抓图模块发起抓图请求,通过相机接入服务转发抓图请求至相机进行抓图,抓图后等待相机上传图片到抓图模块;当接收到图片时,由抓图消息模块将数据写入云存储服务器并将图片地址以及其他数据封装为一条kafka消息写入kafka。

【技术特征摘要】
1.一种图片管理服务方法,其特征在于,包括以下步骤:从数据接入服务获取传感器数据,分析是否需要抓图;当需要抓图时由抓图模块发起抓图请求,通过相机接入服务转发抓图请求至相机进行抓图,抓图后等待相机上传图片到抓图模块;当接收到图片时,由抓图消息模块将数据写入云存储服务器并将图片地址以及其他数据封装为一条kafka消息写入kafka。2.如权利要求1所述的图片管理服务方法,其特征在于,所述当需要抓图时包括电梯到达或者离开1楼或者-1楼。3.如权利要求1所述的图片管理服务方法,其特征在于,所述当需要抓图时包括电梯开始运行。4.如权...

【专利技术属性】
技术研发人员:蓝慧东费辉
申请(专利权)人:浙江新再灵科技股份有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1