本发明专利技术公开了一种基于MapReduce计算模型的分布式运动目标检测方法,本发明专利技术以MapReduce计算模型为基础,以分布式计算的方式进行三帧差分法的计算,将图像的分析任务分发到对计算配置要求不高的多个节点上同时进行。这样即节约了分析计算的硬件成本,也解决了因设置时间间隔较小、需要计算的图像过多而造成的效率降低问题。
【技术实现步骤摘要】
本专利技术属于计算机视觉领域,涉及基于MapReduce计算模型的一种分布式运动目标检测方法,适用于快速运动目标检测的范畴。
技术介绍
在计算机视觉领域,基于动态图像序列的运动目标检测是一个非常活跃的研究方向,大量有意义的视觉信息会包含在运动之中,研究运动目标的检测有很大的现实意义和应用价值。帧间差分法是运动目标检测基本的方法之一,将视频理解为图像序列,相邻帧之间差分后非零像素被认为是运动对象造成,从而形成前景区域。这种方法对于动态环境有较强的自适应能力,并且实现逻辑简单,稳定性较好。差分处理的前后帧并不一定是连续时序的视频图像,通过设置固定时间间隔来选取进行差分处理的帧。对于运动过快的检测目标,如果时间间隔设置过大,同一目标在前后两帧中没有重叠,会被检测为两个独立的目标。但是设置过小的时间间隔会导致需要处理的图像数据过大。目前大多数帧间差分法是以串行处理图像帧的方式进行分析的,帧数增加势必加大计算量影响效率。 目前解决上述问题的方法大致分为两种:一种是在可以容忍的范围内最大程度增大时间间隔,但是依然无法避免对运动速度过快的目标检测的失误,而且检测失误对后续监控处理造成的损失是无法预计的;一种是单方面提高计算机硬件配置,来迎合计算量不断增加的需要。但随着监控视频画质的不断提高计算量也会不断提高,无限制的扩展硬件配置去满足计算需要是不现实的。 所以,有必要提出一种新的技术方案,在有限硬件配置的情况下提高快速运动目标检测的分析效率。
技术实现思路
专利技术目的:针对检测目标运动快速出现的上述问题,本专利技术使用MapReduce计算模型对三帧差分进行分布式运算,以便在有限硬件环境下提高该运动目标检测方法的分析效率,以适应图像帧频不断提高的需要。 具体包括如下步骤: (1)上传待分析的视频并进行保存,以自定义时间间隔将视频分解为视频帧序列,为后续分析提供数据; 上传的视频文件是视频分析的数据源,将存放路径作为输入参数传给分片处理逻辑,处理逻辑循环读取视频文件,并按照设置的时间间隔获得一帧帧视频图像,获得的每个视频图像对应一个时间戳(精度到毫秒,根据实际需要还可以更小),并将对应关系存储到HBase数据库中,方便后续分析读取; (2)首先进行视频帧的差分二值化处理。将视频帧序列中每两帧作为差分计算因子的输入值传入; “差分二值化”计算因子需要传入两帧视频图像进行分析,在HBase数据库中每帧图像和按照时间戳排序的下帧图像共同作为一个Map节点的输入,Map的输入格式固定为key/value键值对,这里key为图像对应时间戳,value为图像内容;Map用于对相邻两帧图像进行灰度差分和二值化的处理,生成结果图像与输入的两帧时间戳分别对应再存于HBase数据库; 计算时会有多个Map节点共同进行,系统监控每个节点的完成情况,当出现闲置节点时,从最后处理的视频图像帧开始,按照上述逻辑获得输入值继续节点计算; (3)每三个计算结果图像进行逻辑与的处理;上一步的计算结果图像以时序排列,每三个为一组作为下个计算因子“逻辑与”的输入进行处理; 从数据库HBase中获得时间戳相同的差分二值化图像,并作为Reduce节点的输入进行图像像素点的逻辑与处理,处理结果再与时间戳对应存入数据库,为最后生成视频输出提供数据; 与Map相同,Reduce节点也为多个共同进行,系统实时监控并分配下一个任务给每个Reduce处理节点,直至视频分析结束; (4)将多个“逻辑与”计算因子的输出结果图像以时间顺序进行合并,最终检测得到快速运动目标的视频输出; (5)将Reduce节点输出的图像帧以对应时间戳为顺序进行视频播放,即得到检测后的视频结果。 相对于现有的方式,本专利技术具有如下有益效果: 本专利技术以MapReduce计算模型为基础,以分布式计算的方式进行三帧差分法的计算,将图像的分析任务分发到对计算配置要求不高的多个节点上同时进行。这样即节约了分析计算的硬件成本,也解决了因设置时间间隔较小、需要计算的图像过多而造成的效率降低问题。 附图说明 图1:方法过程说明图 图2:方法整体过程流程图 具体实施方式 下面结合具体实施例和附图进一步详细说明,应理解这些实施例仅用于说明本专利技术而不用于限制本专利技术的范围,阅读本专利技术后,本领域技术人员对专利技术的各种等价形式的修改均落于本申请所得权利要求所限定的范围。 如图2所示,本专利技术提供了一种基于MapReduce计算模型的分布式运动目标检测方法,具体包括如下步骤: 1.上传待处理视频文件。将视频文件放在UNIX/LINUX系统某一指定路径下,路径将作为FileInputFormat类中inputPaths属性的初始值,以便程序查找到视频文件并进行数据拆分; 2.进行输入视频数据拆分。InputFormat()方法会根据输入格式调用RecordReader对象进行数据拆分。继承FileInputFormat类定义图像输入格式<key,value>,其中key是图像帧在时序中的唯一序号(时间戳),value是视频图像帧的信息。再实现RecordReader类中nextKeyValue()方法,依次读取图像帧序列中未读取过的帧信息,信息按照输入格式保存为key/value形式; 3.两两视频帧传入给差分计算因子。假设执行节点TaskTracker有n个,调度节点JobTracker将n+1个输入key/value相邻为一组传给Map进行“差分二值化”的计算。n个TaskTracker节点同时进行计算,节点JobTracker根据调度机制监控每个节点的执行情况,在某一节点执行结束后,再分配下一个相邻key/value给该节点; 4.具体实现二值化处理的接口方法。实现Mapper接口中map()方法,该方法将输入的连续两帧图像进行差分计算生成灰度差分图像,并对灰度差分图像进行二值化处理。处理后的图像信息存放在传入的两个value中,作为下一步处理的输入(其中开始的一、二两帧在处理结束后只将处理图像放入第二帧的value中输出); 5.合并二值化处理结果。将map输本文档来自技高网...
【技术保护点】
基于MapReduce计算模型的分布式运动目标检测方法,其特征在于,包括以下步骤:(1)上传待分析的视频并进行保存,以自定义时间间隔将视频分解为视频帧序列,为后续分析提供数据;上传的视频文件是视频分析的数据源,将存放路径作为输入参数传给分片处理逻辑,处理逻辑循环读取视频文件,并按照设置的时间间隔获得一帧帧视频图像,获得的每个视频图像对应一个时间戳(精度到毫秒,根据实际需要还可以更小),并将对应关系存储到HBase数据库中,方便后续分析读取;(2)首先进行视频帧的差分二值化处理。将视频帧序列中每两帧作为差分计算因子的输入值传入;“差分二值化”计算因子需要传入两帧视频图像进行分析,在HBase数据库中每帧图像和按照时间戳排序的下帧图像共同作为一个Map节点的输入,Map的输入格式固定为key/value键值对,这里key为图像对应时间戳,value为图像内容;Map用于对相邻两帧图像进行灰度差分和二值化的处理,生成结果图像与输入的两帧时间戳分别对应再存于HBase数据库;计算时会有多个Map节点共同进行,系统监控每个节点的完成情况,当出现闲置节点时,从最后处理的视频图像帧开始,按照上述逻辑获得输入值继续节点计算;(3)每三个计算结果图像进行逻辑与的处理;上一步的计算结果图像以时序排列,每三个为一组作为下个计算因子“逻辑与”的输入进行处理;从数据库HBase中获得时间戳相同的差分二值化图像,并作为Reduce节点的输入进行图像像素点的逻辑与处理,处理结果再与时间戳对应存入数据库,为最后生成视频输出提供数据;与Map相同,Reduce节点也为多个共同进行,系统实时监控并分配下一个任务给每个Reduce处理节点,直至视频分析结束;(4)将多个“逻辑与”计算因子的输出结果图像以时间顺序进行合并,最终检测得到快速运动目标的视频输出;(5)将Reduce节点输出的图像帧以对应时间戳为顺序进行视频播放,即得到检测后的视频结果。...
【技术特征摘要】
1.基于MapReduce计算模型的分布式运动目标检测方法,其特征在于,包括以下步骤:
(1)上传待分析的视频并进行保存,以自定义时间间隔将视频分解为视频帧序列,为后续分
析提供数据;
上传的视频文件是视频分析的数据源,将存放路径作为输入参数传给分片处理逻辑,处
理逻辑循环读取视频文件,并按照设置的时间间隔获得一帧帧视频图像,获得的每个视频图
像对应一个时间戳(精度到毫秒,根据实际需要还可以更小),并将对应关系存储到HBase数
据库中,方便后续分析读取;
(2)首先进行视频帧的差分二值化处理。将视频帧序列中每两帧作为差分计算因子的输
入值传入;
“差分二值化”计算因子需要传入两帧视频图像进行分析,在HBase数据库中每帧图像
和按照时间戳排序的下帧图像共同作为一个Map节点的输入,Map的输入格式固定为
key/value键值对,这里key为图像对应时间戳,value为图像内容;Map用于对相邻两帧图
像进行灰度差分和二值化的处理,生成结果...
【专利技术属性】
技术研发人员:薛峰,席屏,
申请(专利权)人:江苏科大汇峰科技有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。