本发明涉及视频领域,尤其涉及一种视频宏块角点光流的录播系统图像跟踪方法和装置。
背景技术:
传统的教学录播系统采用背景建模法对教师学生行为分析实现教师移动,学生起立跟踪,其原理是采用多帧图像按照平均背景法、高斯背景法等方法建模求解背景模型,用当前帧图像减去背景图像,得到前景图像,对前景图像的运动中心轨迹进行跟踪,实现教学过程中教师移动跟踪,学生起立跟踪,从而完成教学过程的全自动录制,其缺点主要有2个方面,一方面是的教师或学生穿纯色衣服时,由于运动缓慢,图像变化不大,误把教师或学生纯色衣服部分处理为背景,导致检测到的运动前景空洞,导致跟踪不准确,另外一方面由于光照、教师学生运动是几何形状发生改变也导致跟踪不准确。
一些其他方案采用经典的角点检测方法进行跟踪,有效减少光照和几何形变对教师学生检测的不准确,但是由于经典的角点检测有2个非常大的缺陷,第一是需要对整帧图像进行角点检测、同时按整帧图像进行角点运动估计,算法运算量大,录播系统要求检测教师移动、学生行为、以及板书行为,经典角点检测与运动估计方法对教师学生跟踪方法无法同时做到多种教学行为的实时检测实时跟踪,导致跟踪迟缓,效果不佳,另外一方面经典角点检测跟踪方法是基于固定经验阀值进行判断是否是角点,在不同的场景下面,经验值不能解决所有问题,会引起一定的噪声,导致跟踪不准确。
本发明采用将采用重叠分割法分割成若干个宏块,宏块分类器对宏块进行分类,角点检测器对潜在有效宏块进行并行角点检测,对检测的结果按照优先级排序,按照优先级获取一定数量的角点送入光流运动估计器进行运动估计,一方面运动估计器将运动估计送入跟踪器对教师、学生运动进行跟踪,另外一方面,运动估计器将估计结果反馈给宏块分类器分类,宏块分类器根据反馈结果将视频宏块分为潜在有效宏块和当前无效宏块,当前无效宏块可以通过定时器超时激活。本发明通过宏块分割、择优计算、角点择优估计,多块并行计算,有效提高计算效率,屏蔽噪声音响,提高跟踪准确性和实时性。
技术实现要素:
基于此,本发明提供了一种基于视频宏块角点光流的录播系统图像跟踪方法。
一种基于视频宏块角点光流的录播系统图像跟踪方法,所述方法包括:
宏块分割器将视频帧根据分辨率采用重叠分割法将图像分割为若干个块;
宏块分类器根据光流运动估计结果对输入的宏块进行分类;
角点检测器基于宏块进行角点检测;
采用光流运动估计器对所述角点进行运动估计;
采用跟踪器对目标进行跟踪。
在其中一个实施例中,在所述宏块分割器将视频帧根据分辨率采用重叠分割法将图像分割为若干个块的步骤前,所述方法还包括:
视频采集模块对视频进行采集,以获取采集到的图像信息。
在其中一个实施例中,所述宏块分割器将视频帧根据分辨率采用重叠分割法将图像分割为若干个块的步骤包括:
视频采集模块将一帧图像发送到宏块分割器;
宏块分割器首先将图像分辨率重采样为标准处理分辨率640×480或1080×720;
当分辨率为640×480时,宏块分割器按照32×24分割或者54×36分分割;
当分辨率为640×480时,宏块间水平重叠不少于4个像素点,垂直重叠不少于3个像素点;
当分辨率为1080×720时,宏块间水平重叠不少于6个像素点,垂直重叠不少于4个像素点;
宏块分割器将分割后的宏块传输给宏块分类器。
在其中一个实施例中,所述宏块分类器根据光流运动估计结果对输入的宏块进行分类的步骤包括:
(1)宏块分类器启动时为每个宏块占位符维护一个检测到的噪声角点队列Q1,同时启动定时器T1,定时器T1间隔为采样间隔,同时为每个宏块占位符维护一个运动角点队列Q2,同时为Q1,Q2的每个元素维护对应的时间戳向量V1,V2;
(2)当宏块分类接收到光流运动估计器的运动反馈时,根据宏块的占位符找到对应的队列Q1,Q2,首先将Q2中满足V2(n) > 2的角点出队,同时删除对应的V2,再将当前宏块运动角点送入Q2中,当Q2长度大于1时,清空Q1,V1,然后将未运动的角点送入Q1中,同时记录对应的时间戳向量V1和V2;
(3)当定时器T1的超时,根据宏块活跃情况检测;
(4)当前宏块占位符活跃时,检测Q1,Q2,当满足Q1长度大于0,且Q2长度小于1,且V1最大值-V1最小值>5,定义当前宏块为无效宏块,同时将对应的宏块占位符为非活跃,同时记录最后一次无效时间TL(单位为采用单位),否则定义当前宏块为有效宏块,保持当前宏块占位符活跃;
(5)当前宏块占位符不活跃时,先按步骤4做同样检测,如果满足步骤4条件,则当前宏块有效,否则如果当前视频时钟Tc-TL>5时,当前宏块有效,当前宏块占位符活跃;
(6)将有效宏块集合传输给角点检测器进行检查角点。
在其中一个实施例中,所采用光流运动估计器对所述角点进行运动估计的步骤包括:
将输入图像帧的x,y,t 各个方向上的微分图像 Ix,Iy,It;
对于每个角点P(x,y),分析对应的图像It值,如果It(x,y)小于阀值H1时,屏蔽角点P,计算角点P(x,y)对应的8领域 Ix,Iy的能量和E,如果E小于阀值H2时,屏蔽角点P;
对每个未屏蔽角点P(x,y),根据公式角点运动速度u,v计算:
u(n+1) = u(n) - ix×(ix×u(n)+iy×v(n) + it) / (0.004 + ix×ix + iy ×iy);
v(n+1) = v(n) - iy×(ix×u(n)+iy×v(n) +it) / (0.004 + ix×ix + iy ×iy);
其中 ix=Ix(x,y) iy=Iy(x,y) it = It(x,y);
迭代次数为20-50次或 abs(u(n+1)-u(n)) <2 且abs(v(n+1)-v(n)) <2,u(0)=v(0)=0;
将估计结果反馈给分类器进行分类;
将估计结果反馈跟踪器进行跟踪。
在其中一个实施例中,所述角点检测器基于宏块进行角点检测的步骤包括:
角点检测首先将宏块通过一个哈尔检测算子,进行提取角点,然后进行重叠处理,重叠处理的方法是首先如果角点位于重叠区,则重叠的2个宏块均检测到该角点,才是有效角点,否则作为无效角点去除;
将有效角点输出到运动估计器进行运动估计。
在其中一个实施例中,所述跟踪器对目标跟踪的步骤包括:
跟踪器采用投影映射方法将图像运动速度u,v变换的摄像机云台的水平和垂直的角速度,控制云台运动。
一种视频宏块角点光流的录播系统图像跟踪装置,所述装置还包括:
视频采集模块,用于视频采集模块对视频进行采集,以获取采集到的图像信息。
宏块分割器,与所述视频采集模块连接,用于将视频帧根据分辨率采用重叠分割法将图像分割为若干个块;
宏块分类器,与所述宏块分割器连接,用于根据光流运动估计结果对输入的宏块进行分类;
角点检测器,与所述宏块分类器连接,用于基于宏块进行角点检测;
光流运动估计器,与所述角点检测器连接,用于对所述角点进行运动估计;
跟踪器,与所述光流运动估计器连接,用于对目标进行跟踪。
有益效果:
本发明公开了一种基于视频宏块角点光流的录播系统图像跟踪方法,所述方法包括:宏块分割器将视频帧根据分辨率采用重叠分割法将图像分割为若干个块;宏块分类器根据光流运动估计结果对输入的宏块进行分类;角点检测器基于宏块进行角点检测;采用光流运动估计器对所述角点进行运动估计;采用跟踪器对目标进行跟踪。本发明采用将采用重叠分割法分割成若干个宏块,宏块分类器对宏块进行分类,角点检测器对潜在有效宏块进行并行角点检测,对检测的结果按照优先级排序,按照优先级获取一定数量的角点送入光流运动估计器进行运动估计,一方面运动估计器将运动估计送入跟踪器对教师、学生运动进行跟踪,另外一方面,运动估计器将估计结果反馈给宏块分类器分类,宏块分类器根据反馈结果将视频宏块分为潜在有效宏块和当前无效宏块,当前无效宏块可以通过定时器超时激活。本发明通过宏块分割、择优计算、角点择优估计,多块并行计算,有效提高计算效率,屏蔽噪声音响,提高跟踪准确性和实时性。
附图说明
为了更清楚地说明本发明运行原理和使用的技术方案,下面将对运行原理和使用的技术中所需要使用的附图作简单地介绍。显而易见,下面描述中的附图仅仅是本发明的一些运行例子,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本发明一种基于视频宏块角点光流的录播系统图像跟踪方法的方法流程图。
图2是本发明一种基于视频宏块角点光流的录播系统图像跟踪装置的装置框图。
具体实施方式
下面将结合本发明运行原理中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参照图1,本发明提供了一种基于视频宏块角点光流的录播系统图像跟踪方法。
一种基于视频宏块角点光流的录播系统图像跟踪方法,所述方法包括:
S101: 宏块分割器将视频帧根据分辨率采用重叠分割法将图像分割为若干个块;
S102:宏块分类器根据光流运动估计结果对输入的宏块进行分类;
S103:角点检测器基于宏块进行角点检测;
S104:采用光流运动估计器对所述角点进行运动估计;
S105:采用跟踪器对目标进行跟踪。
在其中一个实施例中,在所述宏块分割器将视频帧根据分辨率采用重叠分割法将图像分割为若干个块的步骤前,所述方法还包括:
视频采集模块对视频进行采集,以获取采集到的图像信息。
在其中一个实施例中,所述宏块分割器将视频帧根据分辨率采用重叠分割法将图像分割为若干个块的步骤包括:
视频采集模块将一帧图像发送到宏块分割器;
宏块分割器首先将图像分辨率重采样为标准处理分辨率640×480或1080×720;
当分辨率为640×480时,宏块分割器按照32×24分割或者54×36分分割;
当分辨率为640×480时,宏块间水平重叠不少于4个像素点,垂直重叠不少于3个像素点;
当分辨率为1080×720时,宏块间水平重叠不少于6个像素点,垂直重叠不少于4个像素点;
宏块分割器将分割后的宏块传输给宏块分类器。
在其中一个实施例中,所述宏块分类器根据光流运动估计结果对输入的宏块进行分类的步骤包括:
(1)宏块分类器启动时为每个宏块占位符维护一个检测到的噪声角点队列Q1,同时启动定时器T1,定时器T1间隔为采样间隔,同时为每个宏块占位符维护一个运动角点队列Q2,同时为Q1,Q2的每个元素维护对应的时间戳向量V1,V2;
(2)当宏块分类接收到光流运动估计器的运动反馈时,根据宏块的占位符找到对应的队列Q1,Q2,首先将Q2中满足V2(n) > 2的角点出队,同时删除对应的V2,再将当前宏块运动角点送入Q2中,当Q2长度大于1时,清空Q1,V1,然后将未运动的角点送入Q1中,同时记录对应的时间戳向量V1和V2;
(3)当定时器T1的超时,根据宏块活跃情况检测;
(4)当前宏块占位符活跃时,检测Q1,Q2,当满足Q1长度大于0,且Q2长度小于1,且V1最大值-V1最小值>5,定义当前宏块为无效宏块,同时将对应的宏块占位符为非活跃,同时记录最后一次无效时间TL(单位为采用单位),否则定义当前宏块为有效宏块,保持当前宏块占位符活跃;
(5)当前宏块占位符不活跃时,先按步骤4做同样检测,如果满足步骤4条件,则当前宏块有效,否则如果当前视频时钟Tc-TL>5时,当前宏块有效,当前宏块占位符活跃;
(6)将有效宏块集合传输给角点检测器进行检查角点。
在其中一个实施例中,所采用光流运动估计器对所述角点进行运动估计的步骤包括:
将输入图像帧的x,y,t 各个方向上的微分图像 Ix,Iy,It;
对于每个角点P(x,y),分析对应的图像It值,如果It(x,y)小于阀值H1时,屏蔽角点P,计算角点P(x,y)对应的8领域 Ix,Iy的能量和E,如果E小于阀值H2时,屏蔽角点P;
对每个未屏蔽角点P(x,y),根据公式角点运动速度u,v计算:
u(n+1) = u(n) - ix×(ix×u(n)+iy×v(n) + it) / (0.004 + ix×ix + iy ×iy);
v(n+1) = v(n) - iy×(ix×u(n)+iy×v(n) +it) / (0.004 + ix×ix + iy ×iy);
其中 ix=Ix(x,y) iy=Iy(x,y) it = It(x,y);
迭代次数为20-50次或 abs(u(n+1)-u(n)) <2 且abs(v(n+1)-v(n)) <2,u(0)=v(0)=0;
将估计结果反馈给分类器进行分类;
将估计结果反馈跟踪器进行跟踪。
在其中一个实施例中,所述角点检测器基于宏块进行角点检测的步骤包括:
角点检测首先将宏块通过一个哈尔检测算子,进行提取角点,然后进行重叠处理,重叠处理的方法是首先如果角点位于重叠区,则重叠的2个宏块均检测到该角点,才是有效角点,否则作为无效角点去除;
将有效角点输出到运动估计器进行运动估计。
在其中一个实施例中,所述跟踪器对目标跟踪的步骤包括:
跟踪器采用投影映射方法将图像运动速度u,v变换的摄像机云台的水平和垂直的角速度,控制云台运动。
请参照图2,一种视频宏块角点光流的录播系统图像跟踪装置,所述装置还包括:
视频采集模块100,用于视频采集模块对视频进行采集,以获取采集到的图像信息。
宏块分割器200,与所述视频采集模块连接,用于将视频帧根据分辨率采用重叠分割法将图像分割为若干个块;
宏块分类器300,与所述宏块分割器连接,用于根据光流运动估计结果对输入的宏块进行分类;
角点检测器400,与所述宏块分类器连接,用于基于宏块进行角点检测;
光流运动估计器500,与所述角点检测器连接,用于对所述角点进行运动估计;
跟踪器600,与所述光流运动估计器连接,用于对目标进行跟踪。
本发明公开了一种基于视频宏块角点光流的录播系统图像跟踪方法,所述方法包括:宏块分割器将视频帧根据分辨率采用重叠分割法将图像分割为若干个块;宏块分类器根据光流运动估计结果对输入的宏块进行分类;角点检测器基于宏块进行角点检测;采用光流运动估计器对所述角点进行运动估计;采用跟踪器对目标进行跟踪。本发明采用将采用重叠分割法分割成若干个宏块,宏块分类器对宏块进行分类,角点检测器对潜在有效宏块进行并行角点检测,对检测的结果按照优先级排序,按照优先级获取一定数量的角点送入光流运动估计器进行运动估计,一方面运动估计器将运动估计送入跟踪器对教师、学生运动进行跟踪,另外一方面,运动估计器将估计结果反馈给宏块分类器分类,宏块分类器根据反馈结果将视频宏块分为潜在有效宏块和当前无效宏块,当前无效宏块可以通过定时器超时激活。本发明通过宏块分割、择优计算、角点择优估计,多块并行计算,有效提高计算效率,屏蔽噪声音响,提高跟踪准确性和实时性。
以上对本发明运行原理进行了详细介绍,上述运行原理的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述作为分离部件说明的单元可以使或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个芯片单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元上。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘各种可以存储程序代码的介质。
应当理解,本发明的实施方式的各部分可以用硬件、软件、固件或他们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一个实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现;具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)。
以上对本发明运行原理进行了详细介绍,上述运行原理的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。