一种目标跟踪方法和装置
技术领域
本发明涉及图像处理领域,具体而言,涉及一种目标跟踪方法和装置。
背景技术
目前,人们在外出游玩或者聚会时,会通过手持或者具有云台支撑的摄像机拍摄视频,以记录游玩时的美好景色以及聚会时和家人朋友在一起的快乐时光。
现有的摄像机在拍摄视频时,仅可以对拍摄的视频中出现的人物的人脸进行确认和检测,但不能对视频中出现的人物进行跟踪。在需要对视频中的人物进行跟踪拍摄时,只能通过视频拍摄者自己改变摄像机的拍摄区域和拍摄角度来对视频中出现的人物进行跟踪拍摄。
在对视频中的人物进行跟踪拍摄的过程中,只能通过视频拍摄者人为改变摄像机的拍摄区域和拍摄角度,而人为拍摄区域和拍摄角度的控制操作比较随意,不能保证视频的拍摄质量。
发明内容
有鉴于此,本发明实施例的目的在于提供一种目标跟踪方法和装置,使摄像机可以主动跟踪视频中需要拍摄的人物,提高摄像机的视频拍摄质量。
第一方面,本发明实施例提供了一种目标跟踪方法,包括:
从拍摄的视频流中检测运动目标,其中,所述视频流包括各个视频图像;
从检测到的所述运动目标对应的视频图像中查找人脸图像;
获取查找到的各个所述人脸图像对应的人脸跟踪特征,其中,所述人脸跟踪特征包括:人脸图像特征、人脸与摄像机的距离和所述人脸在所述视频图像中的持续存在时间;
根据各个所述人脸图像的人脸跟踪特征,从查找到的各个所述人脸图像中确定跟踪目标;
对所述跟踪目标进行跟踪。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,从拍摄的视频流中检测运动目标,包括:
通过前景检测方法,在预设时间内判断从拍摄的所述视频流中是否检测到运动目标;
当预设时间内没有检测到运动目标时,根据预设拍摄角度调整视频拍摄范围;
按照调整后的视频拍摄范围继续拍摄视频流。
结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,根据各个所述人脸图像的人脸跟踪特征,从查找到的各个所述人脸图像中确定跟踪目标,包括:
获取最近一次跟踪目标的图像特征;
通过对比检测到的各个所述人脸图像的图像特征与最近一次跟踪目标的图像特征,判断检测到的各个所述人脸图像中是否具有所述最近一次跟踪目标;
如果是,将与所述最近一次跟踪目标一致的人脸图像作为跟踪目标;
如果否,将在所述视频流中持续存在时间大于预设时间长度的人脸图像作为潜在跟踪目标;
计算各个所述潜在跟踪目标的目标稳定参数;
根据计算得到的目标稳定参数确定跟踪目标。
结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,计算各个所述潜在跟踪目标的目标稳定参数,包括:
通过公式V=α*D+(1-α)/S计算得到潜在跟踪目标的目标稳定参数V;
其中,D是作为所述潜在跟踪目标的人脸与摄像机的距离归一化后的数值,S是目标位置稳定度归一化后的数值,α为常数。
结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,对所述跟踪目标进行跟踪,包括:
获取所述视频图像的上一帧视频图像;
根据所述跟踪目标在所述上一帧视频图像中的位置,确定所述视频图像的跟踪目标搜索区域;
通过改进的粒子滤波算法,在确定的所述跟踪目标搜索区域中确定跟踪目标的位置,对所述跟踪目标进行跟踪。
结合第一方面,本发明实施例提供了第一方面的第五种可能的实施方式,其中,根据所述跟踪目标在上一帧视频图像中的位置,确定所述跟踪目标跟踪图像的跟踪目标搜索区域,包括:
从所述上一帧图像中确定跟踪目标的位置坐标;
以所述跟踪目标的位置坐标为跟踪目标搜索区域中心,按照设定的跟踪目标搜索区域大小对所述跟踪目标搜索区域中心进行扩展,得到待定搜索区域;
根据公式C=F(Ppre)-Vcam+Vobj对所述待定搜索区域进行矫正,得到所述视频图像中的所述跟踪目标搜索区域C,其中,F(Ppre)表示所述待定搜索区域,Vcam表示摄像机运动向量,Vobj表示跟踪目标运动向量。
第二方面,本发明实施例还提供了一种目标跟踪装置,包括:
运动目标检测模块,用于从拍摄的视频流中检测运动目标,其中,所述视频流包括各个视频图像;
人脸图像查找模块,用于从检测到的所述运动目标对应的视频图像中查找人脸图像;
人脸跟踪特征获取模块,用于获取查找到的各个所述人脸图像对应的人脸跟踪特征,其中,所述人脸跟踪特征包括:人脸图像特征、人脸与摄像机的距离和所述人脸在所述视频图像中的持续存在时间;
跟踪目标确定模块,用于根据各个所述人脸图像的人脸跟踪特征,从查找到的各个所述人脸图像中确定跟踪目标;
目标跟踪模块,用于对所述跟踪目标进行跟踪。
结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,所述运动目标检测模块,包括:
判断单元,用于通过前景检测方法,在预设时间内判断从拍摄的所述视频流中是否检测到运动目标;
视频拍摄范围调整单元,用于当预设时间内没有检测到运动目标时,根据预设拍摄角度调整视频拍摄范围;
视频流拍摄单元,用于按照调整后的视频拍摄范围继续拍摄视频流。
结合第二方面,本发明实施例提供了第二方面的第二种可能的实施方式,其中,所述人脸跟踪特征获取模块,包括:
特征获取单元,用于获取最近一次跟踪目标的图像特征;
最近一次跟踪目标判断单元,用于通过对比检测到的各个所述人脸图像的图像特征与最近一次跟踪目标的图像特征,判断检测到的各个所述人脸图像中是否具有所述最近一次跟踪目标;
第一跟踪目标确定单元,用于当最近一次跟踪目标判断单元的判断结果为是时,将与所述最近一次跟踪目标一致的人脸图像作为跟踪目标;
潜在跟踪目标确定单元,用于当最近一次跟踪目标判断单元的判断结果为否时,将在所述视频流中持续存在时间大于预设时间长度的人脸图像作为潜在跟踪目标;
计算单元,用于计算各个所述潜在跟踪目标的目标稳定参数;
第二跟踪目标确定单元,用于根据计算得到的目标稳定参数确定跟踪目标。
结合第二方面,本发明实施例提供了第二方面的第三种可能的实施方式,其中,所述计算单元通过公式V=α*D+(1-α)/S计算得到潜在跟踪目标的目标稳定参数V;
其中,D是作为所述潜在跟踪目标的人脸与摄像机的距离归一化后的数值,S是目标位置稳定度归一化后的数值,α为常数。
结合第二方面,本发明实施例提供了第二方面的第四种可能的实施方式,其中,所述目标跟踪模块,包括:
图像获取单元,用于获取所述视频图像的上一帧视频图像;
跟踪目标搜索区域确定单元,用于根据所述跟踪目标在所述上一帧视频图像中的位置,确定所述视频图像的跟踪目标搜索区域;
目标跟踪单元,用于通过改进的粒子滤波算法,在确定的所述跟踪目标搜索区域中确定跟踪目标的位置,对所述跟踪目标进行跟踪。
结合第二方面,本发明实施例提供了第二方面的第五种可能的实施方式,其中,所述跟踪目标搜索区域确定单元,包括:
位置确定子单元,用于从所述上一帧图像中确定跟踪目标的位置坐标;
待定搜索区域生成子单元,用于以所述跟踪目标的位置坐标为跟踪目标搜索区域中心,按照设定的跟踪目标搜索区域大小对所述跟踪目标搜索区域中心进行扩展,得到待定搜索区域;
所述跟踪目标搜索区域确定子单元,用于根据公式C=F(Ppre)-Vcam+Vobj对所述待定搜索区域进行矫正,得到所述视频图像中的所述跟踪目标搜索区域C,其中,F(Ppre)表示所述待定搜索区域,Vcam表示摄像机运动向量,Vobj表示跟踪目标运动向量。
本发明实施例提供的一种目标跟踪方法和装置,通过获取视频流中人脸图像对应的人脸跟踪特征,根据人脸图像的人脸跟踪特征,从查找到的人脸图像中确定跟踪目标,对跟踪目标进行跟踪,与现有技术中只能通过视频拍摄者人为改变摄像机的拍摄区域和拍摄角度操作来对拍摄的人物进行跟踪相比,无需人工操作摄像机,就可以使摄像机主动跟踪视频中需要拍摄的人物,提高了摄像机的视频拍摄质量。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例提供的一种目标跟踪方法所涉及的一种实施系统的结构示意图;
图2示出了本发明实施例1提供的一种目标跟踪方法的流程图;
图3示出了本发明实施例2所提供的另一种目标跟踪方法中三种检测状态的示意图;
图4示出了本发明实施例2所提供的另一种目标跟踪方法中图像采集过程的流程图;
图5示出了本发明实施例2所提供的另一种目标跟踪方法中运动目标检测过程的流程图;
图6示出了本发明实施例2所提供的另一种目标跟踪方法中人脸检测过程的流程图;
图7示出了本发明实施例2所提供的另一种目标跟踪方法中对主要目标进行跟踪的流程图;
图8示出了本发明实施例3所提供的一种目标跟踪装置的结构示意图。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
考虑到相关的摄像机人物跟踪技术中,在对视频中的人物进行跟踪拍摄的过程中,只能通过视频拍摄者人为改变摄像机的拍摄区域和拍摄角度,而人为拍摄区域和拍摄角度的控制操作比较随意,不能保证视频的拍摄质量。
参见图1,其示出了本发明实施例提供的目标跟踪方法所涉及的一种实施系统的结构示意图,该系统包括:云台摄像机10,云台摄像机10包括:摄像机100和与摄像机100连接的云台101。
其中,摄像机100,用于从拍摄的视频流中检测运动目标,其中,视频流包括各个视频图像;从检测到的运动目标对应的视频图像中查找人脸图像;获取查找到的各个人脸图像对应的人脸跟踪特征;根据各个人脸图像的人脸跟踪特征,从查找到的各个人脸图像中确定跟踪目标;根据确定的跟踪目标的运动方式,向云台101发出目标跟踪指令,使云台101改变摄像机100的拍摄角度,对跟踪目标进行跟踪;云台101,用于获取摄像机发送的目标跟踪指令,改变摄像机100的拍摄角度,使得摄像机100改变拍摄角度,对跟踪目标进行视频拍摄。
摄像机100可以采用现有的任意型号的摄像机对视频流进行拍摄,这里不再一一赘述。
云台101可以采用现有的任何电动云台,这里不再一一赘述。
实施例1
参见图2,本实施例提供一种目标跟踪方法,包括以下步骤:
步骤200、从拍摄的视频流中检测运动目标,其中,视频流包括各个视频图像。
各个视频图像中的每个视频图像,就是摄像机所拍摄的每一帧视频图像。
在检测运动目标时,可以通过现有的任何运动目标检测算法对视频图像中的运动目标进行检测,这里不再一一赘述。
步骤202、从检测到的运动目标对应的视频图像中查找人脸图像。
通过Adboost人脸检测算法在检测到的运动目标中查找人脸图像,并确定查找到的人脸图像的人脸图像特征。
步骤204、获取查找到的各个人脸图像对应的人脸跟踪特征,其中,人脸跟踪特征包括:人脸图像特征、人脸与摄像机的距离和人脸在视频图像中的持续存在时间。
人脸与摄像机的距离的获取过程包括以下步骤1至步骤2:
(1)确定视频图像中查找到的人脸图像的尺寸大小;
(2)根据确定的人脸图像的尺寸大小,在预设的人脸图像尺寸与摄像机距离的距离关系表中查询出人脸与摄像机的距离。
在步骤1中,可以通过由Adboost人脸检测算法得到的人脸图像的外接轮廓矩形的大小,确定出人脸图像的尺寸大小。
在步骤2中,可以通过现有的任何查询方式,在预设的人脸图像尺寸与摄像机距离的距离关系表中查询出人脸与摄像机的距离,这里不再一一赘述。
人脸在视频图像中的持续存在时间的获取流程包括以下步骤1至步骤2:
(1)通过拍摄的视频图像中携带的时间戳确定出人脸出现在视频图像中的初始时间;
(2)利用当前系统时间减去人脸出现在视频图像中的起始时间,确定出人脸在视频图像中的持续存在时间。
步骤206、根据各个人脸图像的人脸跟踪特征,从查找到的各个人脸图像中确定跟踪目标。
步骤208、对跟踪目标进行跟踪。
综上所述,本实施例提供的目标跟踪方法,通过获取视频流中人脸图像对应的人脸跟踪特征,根据人脸图像的人脸跟踪特征,从查找到的人脸图像中确定跟踪目标,对跟踪目标进行跟踪,与现有技术中只能通过视频拍摄者人为改变摄像机的拍摄区域和拍摄角度操作来对拍摄的人物进行跟踪相比,无需人工操作摄像机,就可以使摄像机主动跟踪视频中需要拍摄的人物,提高了摄像机的视频拍摄质量。
相关技术中,摄像机只能对拍摄到的视频图像中出现的运动目标进行检测,但有些情况下,所要拍摄的对象并没有出现在摄像机当前的拍摄区域中时,摄像机是不能自行改变拍摄区域来对运动目标进行检测的,为了使摄像机可以自行改变拍摄区域来对运动目标进行检测,从拍摄的视频流中检测运动目标,包括以下步骤1至步骤3:
(1)通过前景检测方法,在预设时间内判断从拍摄的视频流中是否检测到运动目标;
(2)当预设时间内没有检测到运动目标时,根据预设拍摄角度调整视频拍摄范围;
(3)按照调整后的视频拍摄范围继续拍摄视频流。
在步骤1中,预设时间可以是视频拍摄者在视频拍摄前设置的时间长度,也可以是摄像机出厂之前预设的时间长度。
在步骤2中,根据预设拍摄角度调整视频拍摄范围的过程包括以下步骤2a至2b:
(2a)当需要调整视频拍摄范围内进行运动目标检测时,摄像机会从预设在摄像机中的旋转方向和旋转角度的对应关系表中逐一获取旋转方向和旋转角度的对应关系;
(2b)向云台发送旋转指令,旋转指令包括旋转方向和对应的旋转角度,旋转指令用于控制云台根据选择的旋转方向和旋转角度旋调整摄像机的视频拍摄范围。
其中,根据预设在摄像机中的旋转方向和旋转角度的对应关系表来控制云台进行旋转,从而对摄像机的视频拍摄范围进行调整旋转方向和旋转角度的对应关系表中记录的旋转方向和旋转角度的对应关系会让云台旋转360度,使得摄像机可以对周围的运动目标进行准确检测。
在步骤3中,当云台停止旋转时,摄像机在调整后的视频拍摄范围内进行运动目标检测。
综上所述,当在预设时间内没有从拍摄的视频图像中检测到运动目标时,可以在预设的视频拍摄范围内进行运动目标检测,无需视频拍摄者手动改变云台的位置,就可以自动检测周围环境中的运动目标,简化了视频拍摄者在视频拍摄过程中对摄像机的操作,提高了摄像机的使用体验。
相关技术中,在进行视频监控时才进行目标跟踪,而且需要枪机和球机联动才可进行目标跟踪,其中,依靠不动的枪机对目标位置进行检测跟踪,再将位置信息传递给球机,进行相应的放大和转动,实现目标的跟踪。但是在家用时没有条件同时使用枪机和球机进行视频的拍摄,所以为了使单一使用的云台摄像机在拍摄视频时可以进行目标跟踪,根据各个人脸图像的人脸跟踪特征,从查找到的各个人脸图像中确定跟踪目标,包括以下步骤1至步骤2:
(1)获取最近一次跟踪目标的图像特征;
(2)通过对比检测到的各个人脸图像的图像特征与最近一次跟踪目标的图像特征,判断检测到的各个人脸图像中是否具有最近一次跟踪目标,如果是执行步骤3,如果否执行步骤4;
(3)将与最近一次跟踪目标一致的人脸图像作为跟踪目标;
(4)将在视频流中持续存在时间大于预设时间长度的人脸图像作为潜在跟踪目标;
(5)计算各个潜在跟踪目标的目标稳定参数;
(6)根据计算得到的目标稳定参数确定跟踪目标。
在步骤1中,最近一次跟踪目标,就是摄像机上一次视频拍摄时跟踪拍摄的人脸目标,摄像机在确定跟踪目标之后,会对所确定的跟踪目标的图像特征进行缓存。
步骤2包括以下步骤2a至2b:
(2a)通过对比检测到的各个人脸图像的图像特征与最近一次跟踪目标的图像特征,得到各个人脸图像分别和最近一次跟踪目标的相似度;
(2b)判断各个人脸图像分别和最近一次跟踪目标的相似度是否大于预设的相似度阈值,如果是执行步骤3,如果否执行步骤4。
在步骤2a中,通过现有的任何图像对比方法对检测到的各个人脸图像的图像特征与最近一次跟踪目标的图像特征进行对比,这里不再一一赘述。
在步骤4中,预设时间长度可以是视频拍摄者在视频拍摄前设置的时间长度,也可以是摄像机出厂之前预设的时间长度。
在步骤5中,通过公式V=α*D+(1-α)/S计算得到潜在跟踪目标的目标稳定参数V;
其中,D是作为潜在跟踪目标的人脸与摄像机的距离归一化后的数值,S是目标位置稳定度归一化后的数值,α为常数。
在公式V=α*D+(1-α)/S中,S=设定时间内人脸活动区域面积/设定时间内人脸尺寸平均值。
其中,设定时间内人脸活动区域面积由设定时间内人脸在视频图像中的运动轨迹确定,设定时间内人脸尺寸平均值由设定时间内获取的视频图像数量和设定时间内获取的视频图像中确定的人脸尺寸大小确定。
步骤6包括以下步骤6a至6b:
(6a)确定计算得到的各个潜在跟踪目标的目标稳定参数中的最小目标稳定参数;
(6b)将最小目标稳定参数对应的潜在跟踪目标确定为跟踪目标。
综上所述,先通过最近一次跟踪目标的图像特征,确定出检测到的人脸中是否具有跟踪目标,当没有确定出跟踪目标的情况下,根据预设的时间长度,确定出潜在跟踪目标,再通过计算,从潜在跟踪目标中确定出跟踪目标,从而无需使用高成本的枪机和球机,在只有一台云台摄像机的情况下就可进行目标跟踪,降低了目标跟踪的使用成本的同时,也不需要很复杂的操作就可以完成对跟踪目标的跟踪操作,进一步提高了用户对摄像机的使用体验。
相关技术中,使用的目标跟踪算法均是基于静态背景的,无法对运动背景中的目标进行跟踪,所以为了对运动背景中的目标进行跟踪,对跟踪目标进行跟踪包括以下步骤1至步骤3:
(1)获取视频图像的上一帧视频图像;
(2)根据跟踪目标在上一帧视频图像中的位置,确定视频图像的跟踪目标搜索区域;
(3)通过改进的粒子滤波算法,在确定的跟踪目标搜索区域中确定跟踪目标的位置,对跟踪目标进行跟踪。
在步骤2包括如下步骤2a至步骤2c:
(2a)从上一帧视频图像中确定跟踪目标的位置坐标;
(2b)以跟踪目标的位置坐标为跟踪目标搜索区域中心,按照设定的跟踪目标搜索区域大小对跟踪目标搜索区域中心进行扩展,得到待定搜索区域;
(2c)根据公式C=F(Ppre)-Vcam+Vobj对待定搜索区域进行矫正,得到视频图像像中的跟踪目标搜索区域C,其中,F(Ppre)表示待定搜索区域,Vcam表示摄像机运动向量,Vobj表示跟踪目标运动向量。
在步骤3中,本实施例通过现有的任何改进的粒子滤波算法对跟踪目标进行跟踪,这里不再一一赘述。
其中,摄像机可以根据当前的运动情况,获取Vcam,而Vobj是摄像机根据一段时间内的跟踪目标的运动轨迹计算得到的。
综上所述,在对跟踪目标的搜索区域进行矫正后,在矫正后的跟踪目标的搜索区域中确定跟踪目标的位置,在不增加计算量的情况下,保证了对跟踪目标定位的准确性。
实施例2
参见图3,本实施例提供另一种目标跟踪方法,该方法是基于单一的云台摄像机对目标进行检测跟随,必须对摄像机状态进行定义,摄像机状态包含静止检测状态、运动跟随状态和自动巡检状态三种。
其中,静止检测状态:当视频中没有运动目标时,摄像机处于静止检测状态,这种状态下,摄像机处于预置位,静止不动,可以基于固定背景建模进行普通的运动目标检测;当检测到运动目标时,启动人脸检测模块;运动跟随状态:当检测到人脸并确定主要目标后,摄像机进入运动跟随状态,利用基于运动背景的人脸跟踪技术来控制云台转动,保证主要目标人脸始终处于视野中心;自动巡检状态:摄像机具备自动巡检功能,间隔固定时间,处于静止检测状态的摄像机会进行一次自动巡航,在水平方向360°旋转,并进行图片抓拍,利用图像拼接技术生成全景图。
本实施例提供另一种目标跟踪方法,包括:
(1)图像采集
参见图4,图像采集的主要流程包括:获取实时视频流,并通过解码和图像变换计算,获取到一帧一帧的原始的视频图像数据和低分辨率的灰度数据,其中,低分辨率的灰度数据作为运动侦测、人脸定位和人脸跟踪模块的图像输入,较低的分辨率可以有效的降低计算量,加快处理速度;原始的视频图像数据作为人脸验证模块的图像输入,保证识别性能,因为人脸越清晰,识别性能越好。
(2)运动目标检测
参见图5,运动目标检测的主要流程包括:检测画面中是否存在运动,存在运动说明有目标(人)出现,从而启动人脸检测功能。因为人脸检测算法的计算量较大,常见的家庭智能摄像机硬件基本无法满足实时检测,可以通过运动侦测减少静止画面的无效计算工作,降低CPU占用率,这对摄像机整体的解决方案有重大意义。
(3)人脸检测
参见图6,人脸检测的主要流程包括:首先,利用运动侦测模块获取的有效运动区域可以减少人脸检测的范围;第二,训练了一个针对室内环境的Adboost人脸检测器,降低级联层数,并且保证训练数据中的正样本仅包含正脸,得到一个处理速度较快,检测正脸性能较好的分类器。该分类器的优势是速度快,对正脸有较好的检测性,还可以通过运动侦测获取的有效区域降低误检,使得人脸检测模块满足系统实时处理的要求。
(4)确定主要目标
主要目标的选择策略是决定相机云台转动的关键,在实际情况中,单目标跟踪相对简单,当画面中出现多个人脸目标时,为了保证相机不会频繁转动,需要确定一个主要目标人脸,主要目标人脸对于云台有优先控制权。如果主要目标能被成功跟踪到,即可使用主要目标的人脸位置对云台进行控制,反正,认为主要目标消失,云台停止转动。只有当画面中存在新出现人脸时,再次确定主要目标,如此循环。
主要目标的选择策略,需要考虑上一次主要目标消失的时间、当前目标已经存在的时间、当前目标活动方式等信息。
确定主要目标包括如下流程:
(4a)主要目标集合A={Tar1,Tar2,Tar3,…Tarn};
(4b)检测现有目标中,是否包含最近一次消失的主要目标;
(4c)如果条件4b满足,则确定主要目标;
(4d)如果条件4b不满足,检查目标集合A中目标的存在时间是否满足阈值;
(4e)如果条件4d不满足,则无主要目标,摄像机不运动;
(4f)对于满足条件4d的目标集合B,根据距离和稳定度计算度量值V=α*D+(1-α)/S,其中,D和S分别是距离d和位置稳定度s归一化后的值,S=Sover_area/face_size;
(4g)将VMin对应的目标确定为的主要目标。
(5)跟踪主要目标
相关技术中,枪球联动方案中的目标跟踪都是基于静态背景的跟踪算法,而本方案中的人脸跟踪模块需要考虑相机的移动,是运动背景中的目标跟踪,跟踪环境更为复杂,技术实现也更困难。对于一般的跟踪算法,由于背景静止,仅考虑目标运动,当前的跟踪检索区域一般是上一次目标位置Ppre的一个外扩矩形区域C,在当前图像帧中的对应C区域,对目标进行搜索,确定目标的位置Pcur,完成跟踪功能。当相机和运动目标同时运动时,前后两帧图像中目标的位置差异会受到相机运动向量Vcam和目标本身运动Vobj的共同影响,使得跟踪问题更为复杂,计算量也更大。如果这时还采用上述跟踪算法,可能无法准确的获取到Pcur,跟踪准确性会大大降低。
由于我们的相机是主动控制,可以有效的利用Vcam,获取到更为精确的检索区域C,在不增加额外计算量的前提下,保证跟踪的性能。参见图7,在跟踪主要目标的流程中,检索区域C=F(Ppre)-Vcam+Vobj,即在上一帧位置进行外扩后,减去相机的移动向量,再加上目标本身的移动向量(由于目标当前的移动向量是未知的,我们利用上一帧的移动向量Vobj)。
在本方案中,我们的人脸跟踪利用了改进的粒子滤波算法,由于相机的移动是主动式移动,跟踪可以有效的利用相机移动向量,对前后两帧图像进行简单的坐标匹配,提高粒子滤波的搜索范围的有效性,改善跟踪准确性。
综上所述,本实施例提供的目标跟踪方法,通过获取视频流中人脸图像对应的人脸跟踪特征,根据人脸图像的人脸跟踪特征,从查找到的人脸图像中确定跟踪目标,对跟踪目标进行跟踪,与现有技术中只能通过视频拍摄者人为改变摄像机的拍摄区域和拍摄角度操作来对拍摄的人物进行跟踪相比,无需人工操作摄像机,就可以使摄像机可以主动跟踪视频中需要拍摄的人物,提高了摄像机的视频拍摄质量。
实施例3
参见图8,本实施例提供一种目标跟踪装置,用于执行上述的目标跟踪方法,包括:运动目标检测模块800、人脸图像查找模块802、人脸跟踪特征获取模块804、跟踪目标确定模块806和目标跟踪模块808。
其中,运动目标检测模块800,用于从拍摄的视频流中检测运动目标,其中,视频流包括各个视频图像;人脸图像查找模块802,与运动目标检测模块800连接,用于从检测到的运动目标对应的视频图像中查找人脸图像;人脸跟踪特征获取模块804,与人脸图像查找模块802连接,用于获取查找到的各个人脸图像对应的人脸跟踪特征,其中,人脸跟踪特征包括:人脸图像特征、人脸与摄像机的距离和人脸在视频图像中的持续存在时间;跟踪目标确定模块806,与人脸跟踪特征获取模块804连接,用于根据各个人脸图像的人脸跟踪特征,从查找到的各个人脸图像中确定跟踪目标;目标跟踪模块808,与跟踪目标确定模块806连接,用于对跟踪目标进行跟踪。
相关技术中,摄像机只能对拍摄到的视频图像中出现的运动目标进行检测,但有些情况下,所要拍摄的对象并没有出现在摄像机当前的拍摄区域中时,摄像机是不能自行改变拍摄区域来对运动目标进行检测的,为了使摄像机可以自行改变拍摄区域来对运动目标进行检测,运动目标检测模块800,包括:
判断单元,用于通过前景检测方法,在预设时间内判断从拍摄的视频流中是否检测到运动目标;
视频拍摄范围调整单元,用于当预设时间内没有检测到运动目标时,根据预设拍摄角度调整视频拍摄范围;
视频流拍摄单元,用于按照调整后的视频拍摄范围继续拍摄视频流。
综上所述,当在预设时间内没有从拍摄的视频图像中检测到运动目标时,可以在预设的视频拍摄范围内进行运动目标检测,无需视频拍摄者手动改变云台的位置,就可以自动检测周围环境中的运动目标,简化了视频拍摄者在视频拍摄过程中对摄像机的操作,提高了摄像机的使用体验。
相关技术中,在进行视频监控时才进行目标跟踪,而且需要枪机和球机联动才可进行目标跟踪,其中,依靠不动的枪机对目标位置进行检测跟踪,再将位置信息传递给球机,进行相应的放大和转动,实现目标的跟踪。但是在家用时没有条件同时使用枪机和球机进行视频的拍摄,所以为了使单一使用的云台摄像机在拍摄视频时可以进行目标跟踪,人脸跟踪特征获取模块804,包括:
特征获取单元,用于获取最近一次跟踪目标的图像特征;
最近一次跟踪目标判断单元,用于通过对比检测到的各个人脸图像的图像特征与最近一次跟踪目标的图像特征,判断检测到的各个人脸图像中是否具有最近一次跟踪目标;
第一跟踪目标确定单元,用于当最近一次跟踪目标判断单元的判断结果为是时,将与最近一次跟踪目标一致的人脸图像作为跟踪目标;
潜在跟踪目标确定单元,用于当最近一次跟踪目标判断单元的判断结果为否时,将在视频流中持续存在时间大于预设时间长度的人脸图像作为潜在跟踪目标;
计算单元,用于计算各个潜在跟踪目标的目标稳定参数;
第二跟踪目标确定单元,用于根据计算得到的目标稳定参数确定跟踪目标。
其中,计算单元,通过公式V=α*D+(1-α)/S计算得到潜在跟踪目标的目标稳定参数V;
其中,D是作为潜在跟踪目标的人脸与摄像机的距离归一化后的数值,S是目标位置稳定度归一化后的数值,α为常数。
综上所述,先通过最近一次跟踪目标的图像特征,确定出检测到的人脸中是否具有跟踪目标,当没有确定出跟踪目标的情况下,根据预设的时间长度,确定出潜在跟踪目标,再通过计算,从潜在跟踪目标中确定出跟踪目标,从而无需使用高成本的枪机和球机,在只有一台云台摄像机的情况下就可进行目标跟踪,降低了目标跟踪的使用成本的同时,也不需要很复杂的操作就可以完成对跟踪目标的跟踪操作,进一步提高了用户对摄像机的使用体验。
相关技术中,使用的目标跟踪算法均是基于静态背景的,无法对运动背景中的目标进行跟踪,所以,目标跟踪模块808,包括:
图像获取单元,用于获取视频图像的上一帧视频图像;
跟踪目标搜索区域确定单元,用于根据跟踪目标在上一帧视频图像中的位置,确定视频图像的跟踪目标搜索区域;
目标跟踪单元,用于通过改进的粒子滤波算法,在确定的跟踪目标搜索区域中确定跟踪目标的位置,对跟踪目标进行跟踪。
跟踪目标搜索区域确定单元,包括:
位置确定子单元,用于从上一帧图像中确定跟踪目标的位置坐标;
待定搜索区域生成子单元,用于以跟踪目标的位置坐标为跟踪目标搜索区域中心,按照设定的跟踪目标搜索区域大小对跟踪目标搜索区域中心进行扩展,得到待定搜索区域;
跟踪目标搜索区域确定子单元,用于根据公式C=F(Ppre)-Vcam+Vobj对待定搜索区域进行矫正,得到视频图像中的跟踪目标搜索区域C,其中,F(Ppre)表示待定搜索区域,Vcam表示摄像机运动向量,Vobj表示跟踪目标运动向量。
综上所述,在对跟踪目标的搜索区域进行矫正后,在矫正后的跟踪目标的搜索区域中确定跟踪目标的位置,在不增加计算量的情况下,保证了对跟踪目标定位的准确性。
综上所述,本实施例提供的目标跟踪装置,通过获取视频流中人脸图像对应的人脸跟踪特征,根据人脸图像的人脸跟踪特征,从查找到的人脸图像中确定跟踪目标,对跟踪目标进行跟踪,与现有技术中只能通过视频拍摄者人为改变摄像机的拍摄区域和拍摄角度操作来对拍摄的人物进行跟踪相比,无需人工操作摄像机,就可以使摄像机主动跟踪视频中需要拍摄的人物,提高了摄像机的视频拍摄质量。
本发明实施例所提供的进行目标跟踪方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。