图像处理设备和方法、记录介质和程序的制作方法

文档序号:6466845阅读:280来源:国知局
专利名称:图像处理设备和方法、记录介质和程序的制作方法
技术领域
本发明涉及图像处理设备和方法、记录介质和程序,具体地说,涉及能够可靠地跟踪随时间而变化的运动图像中的所需点的图像处理设备和方法、记录介质和程序。

背景技术
已经提出了自动跟踪运动图像中的所需点的许多方法。
例如,专利文件1提出了一种技术,其中使用和对应于要被跟踪的对象的块相关的运动矢量进行跟踪。
专利文件2提出了一种技术,其中估计和要被跟踪的对象相关的区域,并根据该区域的运动的估计结果跟踪该区域。
[专利文件1]日本未审专利申请公开号6-143235。
[专利文件2]日本未审专利申请公开号5-304065。
不过,在专利文件1披露的技术中,只使用一个运动矢量进行跟踪。因而,不能提供足够的鲁棒性能。此外,例如由于包含要被跟踪的对象的图像转动而使该对象从用户的视域中消失,并随后跟踪点再次出现时,不能再跟踪跟踪点,这便是一个问题。
在专利文件2所述的技术中,利用一个区域。因而,增加了鲁棒性能。不过,当为了增加鲁棒性使该区域太大时,并且例如当用家用摄像机捕捉的儿童面部的图像被跟踪并被推摄时,具有比面部大的面积的儿童身体有时被跟踪并被推摄。
因而,在这两种技术中,如果发生了遮断(即如果要被跟踪的对象暂时被另一个对象遮盖),或者如果例如由于场景改变而导致要被跟踪的对象暂时消失,则实现鲁棒跟踪是困难的。


发明内容
本发明要解决的问题 因而,本发明的目的在于,即使在对象被转动、发生遮断或者发生场景改变时,也能提供跟踪点的可靠跟踪。
解决问题的手段 按照本发明,一种图像处理设备包括位置估计装置,用于估计表示在时间上下一个处理单元的图像中的跟踪点的第二点的位置,所述第二点对应于表示在时间上前一个处理单元的图像中的跟踪点的第一点;产生装置,当所述第二点的位置不可估计时,用于产生作为第一点的候选点的估计的点;确定装置,用于当在下一个处理单元中的第二点的位置可估计时根据位置估计装置的估计结果确定在下一个处理单元中的第二点;以及选择装置,用于当第二点的位置不可估计时从估计的点中选择第一点。
所述处理单元可以是帧。
所述位置估计装置还可以计算位置估计的精度,并且如果计算的精度大于基准值,则位置估计装置确定第二点的位置是可估计的。
如果在下一个处理单元中的第二点的位置是不可估计的,则位置估计装置根据由选择装置选择的第一点估计第二点的位置。
如果第二点的位置是可估计的,则位置估计装置认为第二点的位置是新的第一点,并可以估计在下一个处理单元的图像中的跟踪点的位置。
产生装置可以包括区域估计装置,用于估计至少一点的组是在前一个处理单元或者比前一个处理单元更前一个单元中的目标区域,所述组属于包括第一点的对象,以及估计点产生装置,用于根据目标区域产生估计的点。
区域估计装置通过预测可以找到至少和作为要被估计的对象的目标区域重叠的位置,可以在包括用于估计目标区域的处理单元中的跟踪点的预测点确定区域估计范围,可以在确定的区域估计范围中设置取样点,并且可以估计由取样点中具有相同运动并具有最大尺寸的一组取样点构成的区域为目标区域。
区域估计范围的形状可以是固定的。
区域估计范围的形状可以是可变的。
区域估计装置可以估计在比前一个处理单元更前面的处理单元中的目标区域,以及产生装置可以产生在比前一个处理单元更前面的处理单元中的估计的目标区域内的点作为估计的点。
区域估计装置可以估计在前一个处理单元中的目标区域,以及产生装置可以产生构成目标区域的点作为估计的点。
区域估计装置可以估计和第一点相邻的并具有和第一点相似的像素值的点以及与第一点相邻的点相邻的点是目标区域。
区域估计装置可以在具有预定尺寸并在比前一个处理单元更前面的处理单元中包括第一点的区域中提取取样点,以及区域估计装置可以估计包括前一个处理单元中的通过将具有相同运动并具有最大尺寸的取样点的区域移动相同的移动量而获得的点的区域为目标区域。
图像处理设备还可以包括模板产生装置,用于产生模板,以及相关性计算装置,用于当根据估计的点未确定第二点时,计算比块的处理单元更前面一个或更多个处理单元的处理单元中的表示下一个处理单元中的预定区域的块和表示模板的预定区域的块之间的相关性。当根据由相关性计算装置计算的相关性确定相关性为高时,可以通过至少使用确定装置来检测跟踪点。
模板产生装置可以确定跟踪点周围的预定区域是模板。
模板产生装置可以根据目标区域产生模板。
当根据由相关性计算装置计算的相关性确定相关性为高时,根据在比表示下一个处理单元中的预定区域的块更前面一个或更多个处理单元的处理单元中表示模板的预定区域的块和跟踪点之间的关系并根据具有确定为高的相关性的块的位置,可以确定第二点。
模板产生装置可以确定由目标区域中的取样点构成的区域以及在取样点周围的预定区域为模板。
相关性计算装置可以通过计算在下一个处理单元中的块和比该块的处理单元更前面一个或更多个处理单元的处理单元中的模板的块之间的误差确定相关性。
图像处理设备还可以包括用于确定场景改变的检测装置。当位置估计装置和选择装置不能从估计的点当中选择第二点时,位置估计装置和选择装置根据预定的条件终止它们的处理,并根据场景改变的出现改变该条件。
确定装置还可以包括估计值计算装置,用于计算表示感兴趣的像素和对应像素之间的相关性的估计值,所述感兴趣的像素表示包括在时间上前一个处理单元中的第一点的至少一个像素,所述对应像素表示在时间上下一个处理单元中的至少一个像素,并根据感兴趣的像素的运动矢量被确定,可变值计算装置,用于计算表示相对于感兴趣的像素的像素值的改变的可变值,以及精度计算装置,用于计算运动矢量的精度。
感兴趣的像素的数量可以等于对应的像素的数量。
所述可变值可以是用于指示沿空间方向像素值的改变。
所述可变值可以指示分散程度和动态范围之一。
所述处理单元可以是帧和场之一。
精度计算装置可以根据对于可变值由估计值归一化的值计算运动矢量的精度。
当可变值大于预定阈值时,精度计算装置可以确定对于可变值由估计值归一化的值为运动矢量的精度,以及当可变值小于预定阈值时,精度计算装置可以确定指示运动矢量的精度低的固定值。
估计值计算装置可以计算表示在包括感兴趣的像素的块中的像素和包括对应的像素的块中的像素之间的绝对差的和的估计值。
可变值计算装置可以计算可变值,该可变值表示通过用相邻像素的数量除在包括感兴趣的像素的块中的在感兴趣的像素和与感兴趣的像素相邻的相邻像素之间的绝对差的和而获得的值的和。
精度计算装置可以包括比较装置,用于比较可变值和第一基准值,差值计算装置,用于计算第二基准值和对于可变值由估计值归一化的值之间的差值,以及输出装置,用于根据比较装置的比较结果和由差值计算装置计算的差值计算运动矢量的精度,并输出运动矢量的精度。
图像处理设备还包括运动矢量检测装置,用于从输入图像检测运动矢量,并把运动矢量提供给估计值计算装置,运动补偿装置,用于根据运动矢量检测装置检测的运动矢量运动补偿输入图像,选择装置,用于根据运动矢量的精度选择被运动补偿装置运动补偿的图像和没有被运动补偿的图像之一,以及编码装置,用于编码由选择装置选择的图像。
图像处理设备还可以包括频率分布计算装置,用于计算用运动矢量精度加权的频率分布,以及最大值检测装置,用于检测由频率分布计算装置计算的频率分布的最大值,并根据检测的最大值检测背景运动。
图像处理设备还可以包括平均值计算装置,用于计算在处理单元中的运动矢量精度的平均值,以及确定装置用于比较由平均值计算装置计算的平均值和基准值,并根据比较结果确定场景改变的出现。
平均值计算装置可以对一个处理单元计算一个平均。
图像处理设备还可以包括第一点检测装置,用于检测在图像中运动的对象的第一点,校正区域设置装置,用于根据估计结果设置在图像中的对象周围具有预定尺寸的校正区域,校正装置,用于校正图像中的校正区域内的图像,以及显示控制装置,用于控制包括由校正装置校正的校正区域中的图像的图像显示。
校正装置可以校正图像的模糊。
校正装置可以包括传送装置,用于传送用于识别校正区域中的图像的控制信号和用于指示图像模糊等级的参数,特征检测装置,用于检测根据控制信号识别的校正区域内的图像的特征,并输出表示检测的特征的特征码,存储装置,用于存储表示图像模糊等级的参数和对应于由特征检测装置输出的特征码的系数,读出装置,用于从存储装置中读出所述参数和对应于由特征检测装置输出的特征码的系数,内积计算装置,用于根据由读出装置读出的系数计算输入图像中的像素值的内积,以及选择输出装置,用于选择内积计算装置的计算结果和输入图像的像素值之一并输出所选择的一个。在校正区域中的图像可被校正,因而可以除去图像的模糊。
第一点检测装置可以包括第一提取装置,用于在输入图像的预定第一区域中提取要进行内积计算的像素周围的多个像素,第二提取装置,用于沿多个垂直和水平方向在和第一区域邻接的多个第二区域的每个区域中提取多个像素,块差计算装置,用于通过计算由第一提取装置提取的像素值和由第二提取装置提取的对应像素值之间的绝对差的和计算多个块差,以及差值确定装置,用于确定块差是否大于预定阈值。
所述参数可以是表示模糊图像的像素和不模糊图像的像素之间的关系的模型表达式中的高斯函数的参数。
由存储装置存储的系数可以是通过计算模型表达式的逆矩阵而获得的系数。
选择输出装置可以包括第一提取装置,用于提取由内积计算装置进行内积计算的多个像素,分散计算装置,用于计算表示由第一提取装置提取的多个像素的分散等级的分散度,以及分散确定装置,用于确定由分散计算装置计算的分散度是否大于预定阈值。
选择输出装置还可以包括像素选择装置,用于根据分散确定装置的确定结果选择内积计算装置的计算结果和输入图像的像素值之一作为像素的输出值。
按照本发明,一种图像处理方法包括估计步骤,用于估计表示在时间上下一个处理单元的图像中的跟踪点的第二点的位置,所述第二点对应于表示在时间上前一个处理单元的图像中的跟踪点的第一点;产生步骤,当所述第二点的位置不可估计时,用于产生作为第一点的候选点的估计的点;确定步骤,用于当在下一个处理单元中的第二点的位置可估计时根据位置估计步骤的估计结果确定在下一个处理单元中的第二点;以及选择步骤,用于当第二点的位置不可估计时从估计的点当中选择第一点。
确定步骤还可以包括估计值计算步骤,用于计算表示感兴趣的像素和对应像素之间的相关性的估计值,所述感兴趣的像素表示包括在时间上前一个处理单元中的第一点的至少一个像素,所述对应像素表示在时间上下一个处理单元中的至少一个像素,并根据感兴趣的像素的运动矢量被确定,可变值计算步骤,用于计算表示相对于感兴趣的像素的像素值的改变的可变值,以及精度计算步骤,用于计算运动矢量的精度。
本发明的图像处理方法还可以包括第一点检测步骤,用于检测在图像中运动的对象的第一点,校正区域设置步骤,用于根据估计结果设置在图像中的对象周围具有预定尺寸的校正区域,校正步骤,用于校正图像中的校正区域内的图像,以及显示控制步骤,用于控制包括由校正步骤校正的校正区域中的图像的图像的显示。
按照本发明,一种存储计算机可读程序的记录介质,所述计算机可读程序包括估计步骤,用于估计表示在时间上下一个处理单元的图像中的跟踪点的第二点的位置,所述第二点对应于表示在时间上前一个处理单元的图像中的跟踪点的第一点;产生步骤,当所述第二点的位置不可估计时,用于产生作为第一点的候选点的估计的点;确定步骤,用于当在下一个处理单元中的第二点的位置可估计时根据位置估计步骤的估计结果确定在下一个处理单元中的第二点;以及选择步骤,用于当第二点的位置不可估计时从估计的点中选择第一点。
按照本发明,一种包括程序代码的程序,所述程序代码使计算机执行估计步骤,用于估计表示在时间上下一个处理单元的图像中的跟踪点的第二点的位置,所述第二点对应于表示在时间上前一个处理单元的图像中的跟踪点的第一点;产生步骤,当所述第二点的位置不可估计时,用于产生作为第一点的候选点的被估计的点;确定步骤,用于当在下一个处理单元中的第二点的位置可估计时根据位置估计步骤的估计结果确定在下一个处理单元中的第二点;以及选择步骤,用于当第二点的位置不可估计时从估计的点中选择第一点。
按照本发明,如果在随后的处理单元中第二点的位置是可估计的,则根据该位置的确定结果确定在随后的处理单元中的第二点。如果在随后的处理单元中的第二点的位置是不可估计的,则从产生的估计的点中选择第一点。
优点 按照本发明,可以提供在图像中的跟踪点的跟踪。特别是,可以改善跟踪的鲁棒性能。结果,即使当由于要跟踪的对象的转动而使跟踪点暂时消失时,或者甚至当发生遮断或场景改变时,也可以可靠地跟踪跟踪点。



图1是按照本发明的对象跟踪设备的示例性配置的方块图; 图2是用于说明由图1所示的对象跟踪设备进行的跟踪处理的流程图; 图3表示当要跟踪的对象转动时的跟踪处理; 图4表示当发生遮断时的跟踪处理; 图5表示当场景发生改变时的跟踪处理; 图6是用于说明在图2所示的步S1进行的正常处理的流程图; 图7是用于说明在图6所示的步S21进行的正常处理的初始化处理的流程图; 图8是表示转移候选者提取处理的图; 图9是区域估计相关处理单元的示例性配置的方块图; 图10是表示在图6所示的步S26的区域估计相关处理的流程图; 图11是表示在图10所示的步S61的区域估计处理的流程图; 图12A是表示在图11所示的步S81的用于确定取样点的处理的图; 图12B是表示在图11所示的步S81的用于确定取样点的处理的图; 图13A是表示在图11所示的步S81的用于确定取样点的处理的图; 图13B是表示在图11所示的步S81的用于确定取样点的处理的图; 图14A是表示在图11所示的步S81的用于确定取样点的处理的图; 图14B是表示在图11所示的步S81的用于确定取样点的处理的图; 图15是表示在图11所示的步S81的用于确定取样点的处理的图; 图16是表示在图11所示的步S86用于更新区域估计范围的处理的流程图; 图17A是表示用于更新区域估计范围的处理的图; 图17B是表示用于更新区域估计范围的处理的图; 图17C是表示用于更新区域估计范围的处理的图; 图18A是表示用于更新区域估计范围的处理的图; 图18B是表示用于更新区域估计范围的处理的图; 图18C是表示用于更新区域估计范围的处理的图; 图19A是表示用于更新区域估计范围的处理的图; 图19B是表示用于更新区域估计范围的处理的图; 图19C是表示用于更新区域估计范围的处理的图; 图20A是表示用于更新区域估计范围的处理的图; 图20B是表示用于更新区域估计范围的处理的图; 图20C是表示用于更新区域估计范围的处理的图; 图21是表示在图11所示的步S86用于更新区域估计范围的处理的另一个例子的流程图; 图22A是表示用于更新区域估计范围的处理的图; 图22B是表示用于更新区域估计范围的处理的图; 图22C是表示用于更新区域估计范围的处理的图; 图22D是表示用于更新区域估计范围的处理的图; 图23是表示在图10所示的步S62的转移候选者提取处理的流程图; 图24是表示在图10所示的步S63的模板产生处理的流程图; 图25是表示模板产生的图; 图26是表示模板产生的图; 图27是表示模板和跟踪点之间的位置关系的图; 图28是图1所示的区域估计相关处理单元的配置的另一个例子的方块图; 图29是在图10所示的步S61的区域估计处理的另一个例子的流程图; 图30A是表示相同颜色区域的生长的图; 图30B是表示相同颜色区域的生长的图; 图30C是表示相同颜色区域的生长的图; 图31是表示跟踪点的相同颜色区域和区域估计结果的图; 图32是表示在图10的步S62的转移候选者提取处理的另一个例子的流程图; 图33是表示在图2所示的步S2的异常处理的流程图; 图34是表示在图33的步S301的异常处理的初始化处理的流程图; 图35是表示模板选择的图; 图36是表示搜索区域的图; 图37是表示在图33所示的步S305的继续确定处理的流程图; 图38是表示在图2所示的步S1的正常处理的另一个例子的流程图; 图39是表示在图10所示的步S61的区域估计处理的另一个例子的流程图; 图40是表示在图10所示的步S62的转移候选者提取处理的另一个例子的流程图; 图41是表示当执行图6所示的正常处理时转移候选者的图; 图42是表示当执行图38所示的正常处理时转移候选者的图; 图43是图1所示的运动估计单元的示例性配置的方块图; 图44是表示运动计算处理的流程图; 图45是表示帧时间流的图; 图46是表示帧块的图; 图47是表示块匹配方法的图; 图48是表示运动矢量的图; 图49是表示运动矢量精度计算处理的流程图; 图50是表示计算估计值的方法的图; 图51是表示活动性计算处理的图; 图52是表示用于计算活动性的方法的图; 图53A是表示用于计算块活动性的方法的图; 图53B是表示用于计算块活动性的方法的图; 图53C是表示用于计算块活动性的方法的图; 图53D是表示用于计算块活动性的方法的图; 图53E是表示用于计算块活动性的方法的图; 图53F是表示用于计算块活动性的方法的图; 图54是表示阈值处理的流程图; 图55是表示在估计值和活动性之间的关系的图; 图56是表示归一化处理的流程图; 图57是表示积分处理的流程图; 图58是背景运动估计单元的示例性配置的方块图; 图59是表示背景运动估计处理的流程图; 图60是场景改变检测单元的示例性配置的方块图; 图61是表示场景改变检测处理的流程图; 图62是电视接收机的示例性配置的方块图; 图63是表示电视接收机的图像显示处理的流程图; 图64是按照本发明的图像处理设备的示例性配置的方块图; 图65是运动矢量精度计算单元的示例性配置的方块图; 图66是图像处理设备的示例性配置的方块图; 图67是编码单元的示例性配置的方块图; 图68是表示编码单元的编码处理的流程图; 图69是摄像机抖动模糊校正设备的示例性配置的方块图; 图70是背景运动检测单元的示例性配置的方块图; 图71是表示摄像机抖动模糊校正设备的摄像机抖动模糊校正处理的流程图; 图72是积累设备的示例性配置的方块图; 图73是场景改变检测单元的示例性配置的方块图; 图74是表示积累设备的索引图像产生处理的流程图; 图75是表示积累设备的图像输出处理的流程图; 图76是安全摄像机系统的示例性配置的方块图; 图77是表示安全摄像机系统的监视处理的流程图; 图78是安全摄像机系统的另一种配置的方块图; 图79是表示安全摄像机系统的监视处理的流程图; 图80是按照本发明的安全摄像机系统的示例性配置的方块图; 图81是表示监视处理的流程图; 图82A是表示由安全摄像机系统显示的图像的一个例子的图; 图82B是表示由安全摄像机系统显示的例子的图; 图82C是表示由安全摄像机系统显示的例子的图; 图83是表示校正区域的运动的例子的图; 图84是图像校正单元的示例性配置的方块图; 图85是图像校正单元的控制信号的例子的方块图; 图86A是表示图像模糊的原理的图; 图86B表示图像模糊的原理的图; 图86C是表示图像模糊的原理的图; 图87是表示图像模糊的原理的图; 图88是表示图像模糊的原理的图; 图89是表示图像模糊的原理的图; 图90是表示参数代码组合的例子的图; 图91是表示图像边沿部分的图; 图92是表示模糊校正处理的流程图; 图93是表示图像校正处理的流程图; 图94是表示图像特征检测处理的流程图; 图95是图像特征检测单元的示例性配置的图; 图96A是表示由块剪切单元提取的图像块的图; 图96B是表示由块剪切单元提取的图像块的图; 图96C是表示由块剪切单元提取的图像块的图; 图96D是表示由块剪切单元提取的图像块的图; 图96E是表示由块剪切单元提取的图像块的图; 图97是表示图像组合处理的流程图; 图98是表示图像组合单元的示例性配置的方块图;以及 图99是表示离散计算的图。

具体实施例方式 下面参考

本发明的示例实施例。
图1是包括按照本发明图像处理设备的对象跟踪设备的功能方块图。对象跟踪设备1包括模板匹配单元11,运动估计单元12,场景改变检测单元13,背景运动估计单元14,区域估计相关处理单元15,转移候选者存储单元16,跟踪点确定单元17,模板存储单元18,以及控制单元19。
模板匹配单元11进行在输入图像和存储在模板存储单元18中的模板图像之间的匹配处理。运动估计单元12估计输入图像的运动并向场景改变检测单元13、背景运动估计单元14、区域估计相关处理单元15以及跟踪点确定单元17输出由估计获得的运动矢量和运动矢量的精度。运动估计单元12的配置将在下面参考图43进行详细说明。
场景改变检测单元13根据从运动估计单元12接收的精度来检测场景改变。场景改变检测单元13的配置将在下面参考图50进行详细说明。
背景运动估计单元14根据从运动估计单元12接收的运动矢量和精度来估计背景的运动,并把估计结果传送给区域估计相关处理单元15。背景运动估计单元14的配置将在下面参考图48进行详细说明。
区域估计相关处理单元15根据从运动估计单元12传送的运动矢量和精度、由背景运动估计单元14传送的背景的运动以及由跟踪点确定单元17传送的跟踪点信息来执行区域估计处理。区域估计相关处理单元15还根据输入信息产生转移候选者并把转移候选者传送给存储转移候选者的转移候选者存储单元16。此外,区域估计相关处理单元15根据输入图像产生模板并把模板传送给存储模板的模板存储单元18。区域估计相关处理单元15的配置将在下面参考图9进行详细说明。
跟踪点确定单元17根据由运动估计单元12传送的运动矢量和精度以及由转移候选者存储单元16传送的转移候选者来确定跟踪点,并向区域估计相关单元15输出关于确定的跟踪点的信息。
控制单元19被连接到从模板匹配单元11到模板存储单元18的各个单元。控制单元19根据由用户输入的跟踪点指令控制每个单元,使得对装置(未示出)输出跟踪的结果。
下面说明对象跟踪设备1的操作。
如图2所示,对象跟踪设备1基本上执行正常处理和异常处理。即,对象跟踪设备1在步S1执行正常处理。下面参看图6对正常处理进行说明。在这个处理中,进行用于跟踪由用户规定的跟踪点的处理。如果在步S1的正常处理中对象跟踪设备1不能把该跟踪点转移到新的跟踪点,则在步S2执行异常处理。下面参照图33对异常处理进行说明。当跟踪点从图像中消失时,异常处理则执行一个操作,通过使用模板匹配操作返回到正常处理。在异常处理中,如果确定跟踪操作不能继续进行(即,处理不能返回正常处理),则处理被完成。不过,如果作为使用模板进行的返回处理的结果,确定处理可以返回正常处理,则处理再次返回步S1。因而,对于每一帧,交替地重复在步S1的正常处理和在步S2的异常处理。
按照本发明,如图3到图5所示,通过执行正常处理和异常处理,对象跟踪设备1即使在由于要被跟踪的对象的转动、发生遮断以及发生场景改变而使跟踪点暂时消失时,也能跟踪跟踪点。
即,例如图3所示,作为要被跟踪的对象的人的面部504被显示在帧n-1中。人的面部504包括右眼502和左眼503。例如用户规定右眼502(精确地说,右眼502中的一个像素)作为跟踪点501。在图3所示的例子中,在下一帧n中,人向图的左方运动。此外,在下一帧n+1中,人的面部504顺时针转动。结果,原来能看见的右眼502消失了。因而,在已知的方法中,跟踪便不能进行。因此,在步S1的正常处理中,人的面部的左眼503被认为是和右眼502类似的对象,并被选择,使得跟踪点被转移(设置)到左眼503。因而,可以继续跟踪。
在图4所示的例子中,在帧n-1中,球521从人的面部504的左方运动。在下一帧n中,球521正好遮住人的面部504。在这种状态下,包括被规定为跟踪点501的右眼502的人的面部504未被显示。如果这种遮断发生因而作为要被跟踪的对象的人的面部504未被显示,则代替跟踪点501的转移点消失。因而,难于维持跟踪点的跟踪。不过,按照本发明,在帧n-1中(实际上,在时间上更先前的帧)作为跟踪点501的右眼502的图像作为模板被预先存储。当球521进一步向右运动而在帧n+1中作为跟踪点501的右眼502再次出现时,对象跟踪设备1通过在步S2的异常处理检测到作为跟踪点501的右眼502再次被显示。因而,右眼502再次作为跟踪点501被跟踪。
在图5所示的例子中,在帧n-1中,人的面部504被显示,不过,在下一帧n中,汽车511遮住包括人的面部在内的整个人体。即,在这种情况下,场景发生了改变。按照本发明,即使当这种场景改变发生而使跟踪点501从图像中消失时,对象跟踪设备1也能在汽车511运动并在帧n+1中再次显示右眼502时使用模板在步S2的异常处理中检测到作为跟踪点501的右眼502被再次显示。因而,右眼502可以再次作为跟踪点501被跟踪。
下面参照图6所示的流程图详细说明图2所示的步S1进行的正常处理。在步S21,跟踪点确定单元17执行正常处理的初始化处理。下面参照图7所示的流程图说明初始化处理。在这个初始化处理中,选择关于用户规定的跟踪点的区域估计范围。这个区域估计范围用于估计属于和用户规定的跟踪点相同的对象的点的范围(例如跟踪点是眼睛时,和眼睛一道运动的人的面部或作为刚体的身体)。从区域估计范围中的点中选择转移点。
在步S22,控制单元19控制每个单元等待输入下一帧图像。在步S23,运动估计单元12估计跟踪点的运动。即,通过接收在时间上是包括在步S22用户规定的跟踪点的帧(前一帧)的下一帧的帧(下一帧),控制单元19可以获得在两个相继帧中的图像。因而,在步S23,通过估计在下一帧中与前一帧中的跟踪点对应的跟踪点的位置,可以估计跟踪点的运动。
这里使用的术语“在时间上前一帧”指的是处理顺序(输入顺序)。一般地说,按照捕获图像的顺序输入几帧图像。在这种情况下,较早捕获的帧被定义为前一帧。不过,当较后捕获的帧被首先处理(输入)时,较后捕获的帧被定义为前一帧。
在步S24,运动估计单元12(图43所示的积分处理单元605,其在下面被说明)根据在步S23的处理结果确定是否能够估计跟踪点。例如通过将由运动估计单元12(其在下面参照图43被说明)产生并输出的运动矢量的精度和预定阈值相比较可以确定跟踪点是否能够被估计。更具体地说,如果运动矢量的精度大于或等于预定阈值,则跟踪点可以被估计。不过,如果运动矢量的精度小于预定阈值,则确定跟踪点不能被估计。即,这里的估计的可能性被相对严格地确定。即使当实际上能够进行估计时,如果精度低,所述估计也被确定为不可能的。因而,可以提供更可靠的跟踪处理。
如果跟踪点的运动的估计结果和在跟踪点附近的点的运动估计结果与在数值上占优势的运动一致,则在步S24可以确定估计是可能的,否则,估计便是不可能的。
如果确定跟踪点的运动是可以估计的,即,如果确定在相同的对象上正确地设置跟踪点的可能性(当右眼502被规定为跟踪点501时正确地跟踪右眼502的可能性)相对高,则处理前进到步S25。在步S25,跟踪点确定单元17借助于在步S23获得的估计的运动(运动矢量)移动跟踪点。即,在执行这个操作之后,在下一帧中的作为对应于前一帧中的跟踪点的跟踪点可被确定。
在执行步S25的处理之后,在步S26进行区域估计相关处理。这个区域估计相关处理在下面参照图10进行详细说明。通过执行这个处理,在步S21由正常处理的初始化处理确定的区域估计范围被更新。此外,例如由于目标对象的转动而不能显示跟踪点时,跟踪点要被转移到的转移点的候选者(转移候选者)在这种状态下(即在仍然保持跟踪该跟踪点的状态下)被预先提取(产生)。当甚至到转移候选者的转移不可能时,跟踪被暂时停止。不过,为了证实再次跟踪是可能的(即跟踪点再次出现),预先产生一个模板。
在步S26的区域估计相关处理完成之后,处理返回步S22,并重复步S22之后的处理。
即只要用户规定的跟踪点的运动可以被估计,则对于每一帧重复从步S22到步S26的处理,因而进行跟踪。
不过,在步S24,如果确定跟踪点的运动不能被估计(估计是不可能的),即,如果确定例如运动矢量的精度小于或等于阈值,则处理前进到步S27。在步S27,因为在步S26由区域估计相关处理产生的转移候选者被存储在转移候选者存储单元16中,跟踪点确定单元17从在转移候选者存储单元16中存储的候选者中选择一个最接近于原始跟踪点的候选者。在步S28,跟踪点确定单元17确定是否可以选择转移候选者。如果可以选择转移候选者,则处理前进到步S29,在那里跟踪点被转移到(改变为)在步S27选择的转移候选者。即,由转移候选者表示的点被设置为新的跟踪点。此后,处理返回步S23,在那里估计从转移候选者选择的跟踪点的运动。
在步S24,确定新设置的跟踪点的运动是否可以被估计。如果估计是可能的,则在步S25使跟踪点移动一个估计的运动的量。在步S26,进行区域估计相关处理。此后,处理再次返回步S22,并重复步S22之后的处理。
在步S24,确定新设置的跟踪点的运动不能被估计,处理再次返回步S27。在步S27,选择下一个最接近原始跟踪点的转移候选者。在步S29,选择的转移候选者被设置为新的跟踪点。对于新设置的跟踪点再次重复步S23之后的处理。
如果在每个准备的转移候选者被设置为新的跟踪点之后跟踪点的运动不能被估计,则在步S28确定转移候选者不能被选择。因而,完成正常处理。此后,处理前进到图2中所示的在步S2的异常处理。
下面参照图7所示的流程图详细说明图6所示的步S21的正常处理的初始化操作。
在步S41,控制单元19确定当前处理是否是从异常处理的返回处理。即控制单元19确定完成在步S2的异常处理之后处理是否已经再次返回到正常处理。因为在步S2的异常处理对于第一帧尚未被执行,因此确定该处理不是从异常处理的返回处理。因而,处理前进到步S42。在步S42,跟踪点确定单元17设置跟踪点为被指定为跟踪点的点。即,用户通过操作鼠标或另一种输入单元(未示出)规定在输入图像中的一个预定点作为控制单元19的跟踪点。根据这个指令,控制单元19控制跟踪点确定单元17以确定由用户规定的点是跟踪点。另外,可以使用另一种方法确定跟踪点。例如具有最高亮度的点可被确定为跟踪点。跟踪点确定单元17向区域估计相关处理单元15提供关于确定的跟踪点的信息。
在步S43,区域估计相关处理单元15根据在步S42确定的跟踪点的位置确定区域估计范围。区域估计范围是当在包括跟踪点的实体上的点被估计时的一个范围参考。区域估计范围被预先确定,使得包括跟踪点的实体占优势地占据区域估计范围。更具体地说,区域估计范围被这样确定,使得位置和尺寸跟随包括跟踪点的实体,因此,在呈现在数值上占优势的运动的区域估计范围中的部分可被估计为属于包括跟踪点的实体。在步S43,例如,其中跟踪点位于其中心的一个预定的恒定区域作为初始值被确定为区域估计范围。
接着,处理前进到图3所示的步S22。
相反地,如果在步S41确定当前的处理是从步S2的异常处理返回的处理,则处理前进到步S44。在步S44,跟踪点确定单元17根据和在图33所示的步S303的处理中的模板匹配的位置来确定跟踪点和区域估计范围,这在下面进行说明。例如,和模板中的跟踪点匹配的当前帧中的点被确定为跟踪点。此外,在该点周围的预定的恒定区域被确定为区域估计范围。此后,处理前进到图3所示的步S22。
下面参照图8说明上述的处理。即,在图7所示的步S42,如图8所示,例如如果在帧n-1中的人的眼睛502被规定为跟踪点501,则在步S43把包括跟踪点501的预定区域指定为区域估计范围533。在步S24,确定在区域估计范围533内的一个取样点在下一帧中是否可以被估计。在图8所示的例子中,在帧n之后的帧n+1中,因为包括左眼502的左半个区域534被球521遮盖,在帧n内的跟踪点501的运动在下一帧n+1内不能被估计。因此,在这种情况下,从区域估计范围533(作为包括右眼502的实体的面部504)的点中选择一个点,该区域估计范围已经在时间上前一帧n-1中被预先准备为转移候选者。例如,这里选择在人的面部504中包含的左眼503,更精确地说,左眼503中的一个像素。这个选择的点在帧n+1中被确定为跟踪点。
区域估计相关处理单元15具有图9所示的配置,以便在图6所示的步S26进行区域估计相关处理。即,区域估计相关处理单元15的区域估计单元41从运动估计单元12接收运动矢量和精度,从背景运动估计单元14接收背景运动,并从跟踪点确定单元17接收关于跟踪点的位置信息。转移候选者提取单元42从运动估计单元12接收运动矢量和精度。转移候选者提取单元42还接收区域估计单元41的输出。模板产生单元43接收输入图像和区域估计单元41的输出。
区域估计单元41根据这些输入估计包括跟踪点的实体的区域,接着将估计结果输出到转移候选者提取单元42和模板产生单元43。转移候选者提取单元42根据这些输入提取转移候选者,接着,把提取的转移候选者提供给转移候选者存储单元16。模板产生单元43根据这些输入产生模板,接着,把产生的模板传送给模板存储单元18。
图10详细表示由区域估计相关处理单元15进行的区域估计相关的处理(在图6所示的步S26的处理)。在步S61,由区域估计单元41执行区域估计处理。下面参照图11所示的流程图说明其详细的操作。在这个处理中,估计是属于和跟踪点所属于的对象(与跟踪点同步运动的实体)相同的对象的图像区域中的若干点被提取作为区域估计范围(图17中的区域估计范围81,下面说明)。
在步S62,由转移候选者提取单元42执行转移候选者提取处理。下面参照图23的流程详细说明这个处理。由区域估计单元41从被估计是区域估计范围的范围中的点中提取转移候选者的点。提取的点被存储在转移候选者存储单元16中。
在步S63,由模板产生单元43执行模板产生处理。下面参照图24所示的流程图详细说明这个处理。由这个处理产生模板。
下面参照图11所示的流程图说明图10所示的步S61的区域估计处理。
在步S81,区域估计单元41确定作为候选点的取样点,这些点被估计是属于包括跟踪点的对象的点。
例如,如图12所示,取样点(由黑的方块表示)可以是从固定基准点541开始的沿水平方向和垂直方向相互隔开预定像素的位置的像素。在图12所示的例子中,在每帧的左上角的像素被规定为基准点541(在图中由符号×表示)。取样点是在从基准点541开始沿水平方向相互隔开5个像素和沿垂直方向相互隔开5个像素的位置的像素。即,在这个例子中,将整个屏蔽中分散的像素定义为取样点。并且,在这个例子中,在帧n和帧n+1中的基准点是在固定位置的同一个点。
例如,如图13所示,可动态地改变基准点541,因而在帧n中的基准点和在帧n+1中的基准点处于不同的位置。
在图12和图13所示的例子中,对于每一帧,在取样点之间的距离是恒定的。不过,如图14所示,在取样点之间的距离可以对于每一帧而改变。在图14所示的例子中,在帧n中,取样点之间的距离是5个像素,而在帧n+1中,取样点之间的距离是8个像素。此时,被估计属于包括跟踪点的对象的区域的尺寸可以用作基准距离。更具体地说,当区域估计范围的尺寸减小时,该距离也减小。
另外,如图15所示,在一帧中,取样点之间的距离可以互不相同。此时,在取样点和跟踪点之间的距离可用作基准距离。即,当取样点更接近于跟踪点时,在取样点之间的距离减少。相反地,当取样点更远离跟踪点时,取样点之间的距离增加。
这样,确定取样点。接着,在步S82,区域估计单元41执行用于估计在区域估计范围(在图7所示的步S43、S44和图16的步S106、S108确定的,这在下面进行说明)内取样点的运动的处理。即,区域估计单元41根据由运动估计单元12传送的运动矢量在下一帧中提取对应于区域估计范围中取样点的点。
在步S83,区域估计单元41执行根据具有低于预定阈值的精度的运动矢量从在步S82估计的取样点中除去一些点的处理。用于执行这个处理所需的运动矢量的精度由运动估计单元12提供。因而,从区域估计范围内的取样点中,只提取根据具有高精度的运动矢量估计的点。
在步S84,区域估计单元41根据在区域估计范围中的运动的估计结果提取全屏运动。这里使用的术语“全屏运动”指的是在具有相同运动的区域中具有最大尺寸的区域的运动。更具体地说,对于每个取样点的运动,和取样点的取样间距离成比例的加权被分配为使得产生运动的直方图。提取最大化加权频率的运动(一个运动矢量)作为全屏运动。当产生直方图时,例如,可以考虑像素分辨率准备运动的表示性值。具有一个像素分辨率差的运动可被加到直方图上。
在步S85,区域估计单元41在作为区域估计结果的具有全屏运动的区域估计范围中提取取样点。其中,作为具有全屏运动的取样点,不仅提取具有和全屏运动相同的运动的取样点,而且可以提取具有和全屏运动的运动差小于或等于预定阈值的取样点。
在步S43,S44,S44,S106或S108确定的区域估计范围中的取样点当中,最后提取(产生)具有全屏运动的取样点作为被估计属于包括跟踪点的对象的点。
此后,在步S86,区域估计单元41执行用于更新区域估计范围的处理。然后处理前进到图6所示的步S22。
图16详细表示在图11所示的步S86的更新区域估计范围的处理。在步S101,区域估计单元41计算区域的重心。该区域指的是由在图11中所示的步S85提取的取样点限定的区域(即由被估计属于包括跟踪点的对象的点限定的区域)。即,在运动矢量(全屏运动)和这个区域之间具有一对一的对应性。例如,如图17A所示,从在区域估计范围81内由白色方块表示的取样点当中,提取由黑色方块表示的取样点作为在图11所示的步S85的具有全屏运动的取样点。提取估计由这些取样点限定的区域作为区域82。此后,计算区域82的重心84。更具体地说,给每个取样点按照取样间距离分配一个加权,并计算取样点重力作为该区域的重心。执行这个处理以找出在当前帧中该区域的位置。
在步S102,区域估计单元41按照全屏运动移动区域的重心。这个处理被这样执行,使得区域估计范围81跟随该区域位置的运动,并把该区域移动到下一帧中估计的位置。如图17B所示,当在当前帧中的跟踪点83按照跟踪点83的运动矢量88作为下一帧中的跟踪点93而出现时,全屏运动的运动矢量90基本上对应于运动矢量88。因而,通过根据运动矢量(全屏运动)90移动当前帧中的重心84,可以获得和跟踪点93的帧(下一帧)相同的帧中的点94。通过把区域估计范围91设置为其中心是点94的范围,区域估计范围81可以跟随区域82的位置的运动,从而移动到在下一帧中估计的位置。
在步S103,区域估计单元41根据区域估计结果确定下一个区域估计范围的尺寸。更具体地说,在被估计在该区域的所有取样点之间的距离(在图17所示的区域82中的黑方块之间的距离)的平方和被认为是区域82的尺寸。在下一帧中的区域估计范围91的尺寸被这样确定,使得其略大于区域82的尺寸。即随着在区域82中取样点数量的增加,区域估计范围91的尺寸也增加。相反,当在区域82中的取样点的数量减少时,区域估计范围91的尺寸减少。因而,区域估计范围91的尺寸不仅可以跟随区域82的增大和缩小,而且也可以避免在区域估计范围81中的全屏区域是跟踪对象的周边区域。
如果在图11所示的步S84提取的全屏运动等于背景运动,则跟踪对象不能通过运动来与背景区分。因此,背景运动估计单元14一直执行用于估计背景运动的处理(其细节在下面参照图49进行说明)。在步S104,区域估计单元41确定由背景运动估计单元14传送的背景运动是否等于在图11所示的步S84提取的全屏运动。如果全屏运动等于背景运动,则在步S105,区域估计单元41限制下一个区域估计范围的尺寸,使得当前区域估计范围的尺寸是最大的。因而,不会把背景错误地识别为跟踪对象。因而,区域估计范围的尺寸被这样控制,使得不会被增大。
如果在步S104确定全屏运动不等于背景运动,则不需要在步S105的处理,因此,跳过在步S105的处理。
在步S106,区域估计单元41确定下一个区域估计范围的尺寸,该范围的中心是在移动之后该区域的重心。因而,区域估计范围被这样确定,使得区域估计范围的重心等于在移动之后获得的该区域的重心,并且区域估计范围的尺寸和该区域的尺寸成比例。
在图17B所示的例子中,按照区域82的尺寸确定区域估计范围91的尺寸,其中心是在根据运动矢量(全屏运动)90移动之后的重心94。
应当确保具有在区域估计范围91内侧的全屏运动的区域是要被跟踪的对象的区域(例如图8所示的面部504)。因此,在步S107,区域估计单元41确定跟踪点是否包括在下一个区域估计范围中。如果跟踪点不被包括在下一个区域估计范围内,则在步S108区域估计单元41执行移动下一个区域估计范围的处理,使得下一个区域估计范围包括跟踪点。如果跟踪点包括在下一个区域估计范围内,则不需要在步S108的处理,因此,在步S108的处理被跳过。
更具体地说,在这种情况下,下一个区域估计范围可以被这样移动,使得移动距离最小。或者,下一个区域估计范围可以沿着一个矢量从区域估计范围的重心通过最小的距离移动到跟踪点,使得跟踪点包括在下一个区域估计范围内。
为了维持跟踪的鲁棒性能,可以跳过为包括跟踪点而进行的区域的移动。
在图17C所示的例子中,因为区域估计范围91不包括跟踪点93,区域估计范围91被移动到由区域估计范围101指示的位置(包括左上角跟踪点93的位置)。
图17A到17C表示需要在步S108的移动处理的例子。相反地,图18A到18C表示不需要在步S108的移动处理的例子(即,当在步S107确定跟踪点包括在下一个区域估计范围中时的例子)。
如图18A-18C所示,当在区域估计范围81内的所有取样点都是区域的点时,则不需要图16所示的步S108的移动处理。
图17A到图17C以及图18A-18C表示其中区域估计范围是矩形的例子。不过,如图19A-19C和图20A-20C所示,区域估计范围可以是圆形。图19A-19C分别对应于图17A-17C,其中需要在步S108的移动处理。相反地,图20A-20C分别对应于图18A-18C,其中不需要在步S108进行的移动处理。
因而,通过执行更新图16所示的区域估计范围的处理(在图11所示的步S86),关于下一帧的区域估计范围的位置和尺寸被这样确定,使得区域估计范围包括跟踪点。
在图16所示的用于更新区域估计范围的处理中,区域估计范围的形状是固定的矩形或圆形。不过,区域估计范围的形状可以是可变的。在这种例子中,下面参照图21描述在图11所示的步S86的用于更新区域估计范围的处理。
在步S131,区域估计单元41确定在图11所示的步S84提取的全屏运动是否等于由背景运动估计单元14估计的背景运动。如果二者不等,则处理前进到步S133,在该步区域估计单元41确定对应于被估计属于该区域(由具有等于全屏运动的运动的像素构成的区域)的每个点的一个小区域(即,对一个点确定一个小区域)。在图22A和22B所示的例子中,在区域估计范围161中,确定小区域171和172,它们对应于由黑方块指示的区域中的点。在该图中,标号171表示其中对应于4个点的4个小区域相互重叠的例子。小区域的尺寸可被这样确定,例如使得和取样点之间的距离成比例。
在步S134,区域估计单元41确定在步S133确定的小区域的联合是暂时区域估计范围。在图22C所示的例子中,作为区域171和172的联合的区域182被确定为暂时区域估计范围。如果在获得小区域的联合之后产生多个不连续的区域,则只有具有最大尺寸的区域可被确定为暂时区域估计范围。
如果在步S131确定全屏运动等于背景运动,则在步S132,区域估计单元41确定当前区域估计范围是暂时区域估计范围。其理由是,当前区域估计范围被保持不变,因为当背景运动的估计结果等于全屏运动时,背景不能借助于运动与要被跟踪的对象区分开。
在步S134或S132的处理完成之后,区域估计单元41在步S135通过使用全屏运动移动在步S134或S132确定的暂时区域估计范围来确定下一个区域估计范围。在图22C所示的例子中,暂时区域估计范围181根据全屏运动的运动矢量183被移动,并被确定为暂时区域估计范围182。
在步S136,区域估计单元41确定跟踪点是否包括在在步S135确定的下一个区域估计范围内。如果跟踪点不包括在下一个区域估计范围内,则处理前进到步S137,在该步区域估计单元41这样移动下一个区域估计范围,使得下一个区域估计范围包括跟踪点。在图22C和图22D所示的例子中,因为区域估计范围182不包括跟踪点184,区域估计范围182被这样移动,使得包括左上角的跟踪点184,并被确定为区域估计范围191。
如果在步S136确定跟踪点包括在下一个区域估计范围内,则不需要在步S137的移动处理,因此,在步S137的移动处理被跳过。
下面参照图23说明图10所示的步S62的用于提取转移候选者的处理。
在步S161,转移候选者提取单元42对被估计属于全屏运动的区域的每个点保持通过估计的运动移动的点的移动结果作为转移候选者。即,不直接使用作为区域估计结果获得的点。为了在下一帧中使用这些点,执行根据其运动估计结果提取移动结果的处理。然后把提取的转移候选者传送给转移候选者存储单元16,并被存储在转移候选者存储单元16中。
下面参照图8描述这个处理。即,在图8所示的例子中,在帧n-1和n中出现跟踪点501。不过,在帧n+1中,跟踪点501被来自该图的左方的球521遮盖,因此,跟踪点501消失。因而,在帧n+1中,需要把跟踪点转移到作为要被跟踪的对象的面部504中的一个不同点(例如转移到左眼503,更精确地说,最接近右眼502的点)。因此,在实际要求转移之前在前一帧中预先准备转移候选者。
更具体地说,在图8所示的例子中,可以预测,在大多数情况下,从帧n到帧n+1在区域估计范围533内的运动的估计结果不被正确地估计,这是因为在区域估计范围533中要求转移。即,在图8所示的例子中,因为跟踪点和包括跟踪点的对象的一部分消失而发生转移。因而,对于在帧n中区域估计范围533的一部分534,在该部分中在帧n+1中对象被隐藏(在图8中由交叉影线表示的部分),运动不被正确地估计,因此,运动的精度被估计为低或者不低,因而运动的估计结果是无意义的。
在这种情况下,因为可以用于区域估计的运动估计结果减少或者混合有不正确的运动估计结果,因而增加了区域估计是不正确的可能性。此外,一般地说,在从帧n-1到帧n的在时间上更前面的区域估计中的这种可能性低于从帧n到帧n+1的区域估计中的可能性。
因而,为了减少不正确估计的危险和提高性能,需要不直接地使用区域估计结果,而是在帧n-1(或者在时间上更前面的帧)中获得的区域估计结果被用作运动目标的转移候选者。
不过,区域估计结果可被直接使用。下面参照图38说明在这种情况下的处理。
图24表示在图10所示的步S63用于产生模板的详细处理。在步S181,模板产生单元43对被估计属于该区域(全屏运动的区域)的每个点确定一个小区域。在图25所示的例子中,对于该区域的点221确定一个小区域222。
在步S182,模板产生单元43确定在步S181确定的小区域的联合是模板区域。在图25所示的例子中,小区域222的联合被确定为模板区域231。
接着,在步S183,模板产生单元43由关于在步S182确定的模板区域的信息和图像信息产生模板,并把模板传送给模板存储单元18,该单元存储模板。更具体地说,在模板区域231中的像素数据被确定为模板。
如图26所示,对应于该区域的点221的小区域241大于图25所示的小区域222。因而,作为小区域241的联合的模板区域251也大于图25所示的模板区域231。
小区域的尺寸可以和取样点之间的距离成比例。在这种情况下,比例常数可以被这样确定,使得该尺寸等于取样点之间距离的平方。或者,比例常数可被这样确定,使得该尺寸大于或小于取样点之间距离的平方。
此外,代替区域估计结果,可以使用具有固定尺寸和形状并且其中心在跟踪点的区域作为模板区域。
图27表示在模板和区域估计范围之间的位置关系。模板区域303包括跟踪点305。围绕模板区域303围成的外接矩形301的左上角的点被确定为模板基准点304。从模板基准点304到跟踪点305的矢量306和从模板基准点304到区域估计范围302的左上角的基准点308的矢量作为关于模板区域303的信息。模板由模板区域303中包括的像素构成。矢量306和307被用于当检测到和模板相同的图像时返回正常处理的处理。
在上述的处理中,和转移候选者不同,对应于当前帧的范围和像素被确定为模板。不过,和转移候选者相同,在下一帧中的运动目标点被用作模板。
因而,如同转移候选者,由包括跟踪点的像素数据构成的模板在正常处理期间被预先产生。
图6中所示的步S26的区域估计相关处理可以由区域估计相关处理单元15执行,区域估计相关处理单元15例如具有图28所示的配置。
在这种情况下,如同图9所示的区域估计相关处理单元15那样,区域估计相关处理单元15包括区域估计单元41,转移候选者提取单元42和模板产生单元43。在本例中,将关于跟踪点和输入图像的信息从跟踪点确定单元17输入到区域估计单元41。只有区域估计单元41的输出被输入到转移候选者提取单元42。将区域估计单元41的输出和输入图像输入到模板产生单元43。
在这种情况下,如同图10所示的处理那样,在步S61执行区域估计处理,在步S62执行转移候选者提取处理,并在步S63执行模板产生处理。因为在步S63进行的模板产生处理和图24所示的处理相同,下面只说明在步S61的区域估计处理和在步S62的转移候选者提取处理。
首先参照图29所示的流程图详细说明在步S61的区域估计处理。在步S201,图28所示的区域估计单元41确定取样点,以便估计属于包括跟踪点的对象的图像中的区域。这个处理和图11所示的步S81的处理相同。
不过,在步S201要处理的帧是其中跟踪点已被确定的帧(包括在跟踪完成之后的跟踪点的帧)。这和图11所示的步S81不同,其中用于确定取样点的帧是前一帧。
接着,在步S202,区域估计单元41执行对下一帧(其中取样点在步S201被确定的帧)的图像沿空间方向应用低通滤波器的处理。即,通过应用低通滤波器,从图像中除去高频成分,使得图像被平滑。因而,便于在随后的步S203的相同颜色区域的生成处理。
在步S203,区域估计单元41在像素值之差小于阈值Thimg并规定包括在相同颜色区域中的取样点为区域的估计结果的条件下执行用于由作为开始点的跟踪点生成包括跟踪点的相同颜色的区域的处理。包括在最终生成的相同颜色区域内的取样点被用作区域的估计结果。
更具体地说,例如,如图30A所示,沿8个方向读出和跟踪点相邻的像素的像素值。即,沿上方、右上方向、右方向、右下方、下方、左下方、左方以及左上方方向读出和跟踪点相邻的像素的像素值。计算读出的像素值和跟踪点321的像素值之间的差值。此后,确定计算的差值是否大于或等于阈值Thimg。在图30A所示的例子中,在沿箭头所示的方向的像素(即沿上方、右上方、下方、左方和左上方的像素)的像素值和跟踪点321之间的每个差值小于阈值Thimg。相反,在沿未由箭头指示的方向的像素(即沿右方、右下方和左下方的像素)的像素值和跟踪点321之间的差值大于或等于阈值Thimg。
在这种情况下,如图30B所示,具有小于阈值Thimg的差值的像素(由来自跟踪点321的箭头指示的像素)被作为像素322记录在包括跟踪点321的相同颜色区域内。对于记录在相同颜色区域内的像素322进行相同的处理。在图30B所示的例子中,计算在左上方由白圈指示的像素322的像素值和与像素322相邻的像素(除去已被确定为相同颜色区域的像素之外的像素)的像素值之间的差值。然后确定该差值是否大于或等于阈值Thmig。在图30B所示的例子中,已经执行了对于右方、右下方和下方的像素的相同颜色区域的确定处理。因而,计算沿上方、右上方、左下方、左方和左上方的差值。此外,在这个例子中,沿上方、右上方和左上方的差值小于阈值Thmig。如图30C所示,沿这些方向的像素作为包括跟踪点321的相同颜色区域的像素被记录。
随后重复这种处理。因而,如图31所示,在取样点当中,包括在相同颜色区域331内的点被估计为包括跟踪点321的对象的点。
在图29所示的区域估计处理(图10所示的步S61)被完成之后,由图28所示的转移候选者提取单元42在图10所示的步S62执行转移候选者提取处理。这个转移候选者提取处理由图32的流程图所示。
即,在步S231,转移候选者提取单元42确定被估计是该区域(相同颜色区域)的所有点不经改变便是转移候选者。然后,转移候选者提取单元42把转移候选者传送给转移候选者存储单元16,其存储转移候选者。
在图28所示的区域估计相关处理单元15中,模板产生处理和图24所示的处理相同,该模板产生处理是在图32所示的转移候选者提取处理(图10所示的步S62)被完成之后在图10所示的步S63由图28所示的模板产生单元43执行的。因而,不再对其进行重复的说明。
不过,在这种情况下,包括跟踪点的相同颜色区域可以直接地被确定是模板区域。
下面参照图33所示的流程图详细说明在图2所示的步S1上述的正常处理被完成之后在步S2进行的异常处理。如上所述,当在图6所示的步S24确定跟踪点的运动不能被估计时,以及当在步S28确定跟踪点被转移到的转移候选者不能被选择时,进行这个处理。
在步S301,控制单元19进行异常处理的初始化处理。这个处理的细节由图34所示的流程图表示。
在步S321,控制单元19确定当其不能跟踪跟踪点时(当其不能估计跟踪点的运动并不能选择跟踪点要转移到的转移候选者时)确定是否场景改变发生。场景改变检测单元13一直根据来自运动估计单元12的估计结果监测场景改变是否发生。控制单元19根据来自场景改变检测单元13的检测结果在步S321进行确定。下面参照图50和51说明场景改变检测单元13的详细处理。
如果场景改变发生,控制单元19估计场景改变的发生阻止跟踪点的跟踪。因而,在步S322,控制单元19把模式设置为场景改变。相反,如果在步S321确定没有发生场景改变,则控制单元19在步S323把模式设置为另一种模式。
在步S322或S323的处理被完成之后,在步S324,模板匹配单元11执行用于选择在时间上最早的模板的处理。更具体地说,如图35所示,例如,当帧n被改变为帧n+1并执行异常处理时,模板匹配单元11选择为帧n-m+1而产生的模板,其是为帧n-m+1到帧n而产生的并被存储在模板存储单元18中的m个模板当中在时间上最早的模板。
因而,代替转换到异常处理之前瞬间的模板(在图35所示的例子中为帧n而产生的模板),而使用在转换之前某些时间的模板的理由是,当例如由于要被跟踪的对象的遮断而发生到异常处理的转换时,大多数对象在发生转换之前瞬间已被隐藏,因此,在此时的模板很可能不会捕获到对象的足够大的图像。因而,通过选择在转换之前一个短暂时间的模板,可以提供可靠的跟踪。
在步S325,模板匹配单元11执行用于确定模板搜索区域的处理。例如,模板搜索区域被这样确定,使得在转换到异常处理之前瞬间的跟踪点的位置成为模板搜索区域的中心。
即,如图36所示,假定在帧n中的对象的面部504的右眼502被规定为跟踪点501。在帧n+1中,来自左方的球521遮盖住包括跟踪点501的面部504。在帧n+2中,跟踪点501再出现。在这种情况下,以跟踪点501(包括在模板区域311内)为中心的区域被确定为模板搜索区域312。
在步S326,模板匹配单元11重新设置在转换到异常处理之后通过帧的数量和场景改变的数量为0。通过帧的数量和场景改变的数量用于在图33所示的步S305的继续确定处理(在图37所示的步S361,S363,S365,S367),下面对其进行说明。
如上所述,完成异常处理的初始化处理。此后,在图33所示的步S302,控制单元19执行等待下一帧的处理。在步S303,模板匹配单元11执行模板搜索区域内的模板匹配处理。在步S304,模板匹配单元11确定是否能够返回正常处理。
具体地说,在模板匹配处理中,计算在前面若干帧的帧中的模板(在图36所示的模板区域311中的像素)和模板搜索区域中要被匹配的像素之间的差的绝对值的和。更精确地说,计算在模板区域311中的预定块的像素和在模板搜索区域中的预定块的像素之间的差的绝对值的和。按顺序移动模板区域311中的块的位置,并且差的绝对值的和被相加并被确定为位于模板的该位置的值。此后,当模板在模板搜索区域中按顺序被移动时,搜索具有最小绝对差的和的位置和该位置的值。在步S304,将差的绝对值的最小和与预定阈值比较。如果绝对差的最小和小于或等于该阈值,则确定包括跟踪点的图像(包括在模板中)再出现,因此,确定能够返正常处理。然后在图2所示的步S1返回正常处理。
接着,如上所述,在图7所示的步S41,确定已经返回正常处理。在步S44,具有绝对差的最小和的位置被认为是与模板匹配的位置。此后,根据在匹配位置、与模板相关联地存储的模板位置以及跟踪点的区域估计范围中的位置关系,确定跟踪点和区域估计范围。即,如上面结合图27所述,根据相对于跟踪点305的矢量306和307确定区域估计范围302。
不过,当在图10所示的步S61的区域估计处理(例如图29所示的区域估计处理)中使用其中不使用区域估计范围的方法时,区域估计范围不被确定。
在图33所示的步S304,为了确定是否能够返回正常处理,可以将模板的活动性除绝对差的最小和获得的值与一个阈值比较。在这种情况下,可以使用在图49所示的步S532由活动性计算单元602计算的值作为活动性。
或者,为了确定是否能够返回正常处理,由该绝对差的最小和除以前面一帧的绝对差的最小和获得的值可以和一个阈值比较。在这种情况下,则不需要计算活动性。
即,在步S304,计算在模板和模板搜索区域之间的相关性。根据在该相关性和阈值之间的比较进行所述确定。
在步S304,如果确定不能返回正常处理,则处理前进到步S305,执行继续确定处理。下面参照图37所示的流程图详细说明继续确定处理。在这个处理中,确定是否可以继续进行跟踪处理。
在步S306,控制单元19根据继续确定处理的结果(根据下面要说明的在图37所示的步S366或S368设置的标记)确定是否继续跟踪跟踪点。如果可以继续跟踪点的跟踪处理,则处理返回步S302,重复步S302以后的处理。即,重复地执行该处理,直到跟踪点再出现。
不过,如果在步S306确定不能继续进行跟踪点的跟踪处理(即在图37所示的步S365确定在跟踪点消失之后通过帧的数量大于或等于一个阈值THfr,或者在步S367确定场景改变数大于或等于一个阈值THsc),则确定跟踪处理不能被执行。因而,完成跟踪处理。
图37详细表示在图33的步S305的继续确定处理。在步S361,控制单元19执行使作为变量的通过帧的数量增加1的处理。在图33所示的步S301的异常处理的初始化处理中(在图34所示的步S326),通过帧的数量被预先重置为0。
在步S362,控制单元19确定是否发生场景改变。因为场景改变检测单元13一直执行用于检测场景改变的处理,其可以根据场景改变检测单元13的检测结果确定是否发生场景改变。如果发生场景改变,处理前进到步S363,控制单元19使作为变量的场景改变数加一。在图34所示的步S326的初始化处理中,场景改变数也被预先重置为0。如果在正常处理被转移到异常处理的情况下没有发生场景改变,则跳过在步S363的处理。
接着,在步S364,控制单元19确定在当前被设置的模式是否是场景改变模式。这个模式在图34所示的步S322或S323被设置。如果当前设置的模式是场景改变模式,则处理前进到步S367,其中控制单元19确定场景改变数是否小于预定阈值THsc。如果场景改变数小于预定阈值THsc,则处理前进到步S366,其中控制单元19设置指示能够继续的标记。如果场景改变数大于或等于预定阈值THsc,则处理前进到步S368,其中控制单元19设置表示不能继续的标记。
相反地,在步S364,如果确定当前设置的模式不是场景改变模式(如果确定是另一个模式),则处理前进到步S365,其中控制单元19确定通过帧的数量是否小于预定阈值THfr。通过帧的数量也在图32所示的异常处理的步S326的初始化处理中被预先重置为0。如果确定通过帧的数量小于预定阈值THfr,则在步S366设置表示能够继续的标记。不过,如果确定通过帧的数量大于或等于预定阈值THfr,则在步S368设置表示不能继续的标记。
如上所述,如果在模板匹配处理中场景改变数大于或等于阈值THsc,或者如果通过帧的数量大于或等于阈值THfr,则确定不能继续执行跟踪处理。
如果模式是另一种模式,则可以在考虑场景改变数是0的条件时确定是否能够继续。
在上面的说明中,根据图像的帧执行处理,并且所有帧都被用于处理。不过,可以根据场执行处理。此外,代替使用所有帧或所有场,可以使用通过以预定间隔稀疏化帧或场提取的帧或场用于处理。
此外,在前面的说明中,在估计的区域中的目的点被用作转移候选者,可以直接使用估计的区域中的点,在这种情况下,在图2所示的步S1的正常处理被改变为图38所示的处理代替图6所示的处理。
在图38所示的从步S401到步S410的处理基本上和图6所示的步S21到S29的处理相同。不过,其区别在于,接着在相应于图6所示的步S22的图38所示的步S402的用于等待下一帧的处理插入在步S403的区域估计相关处理,并代替图6所示的步S26的区域估计相关处理而执行在步S407的区域估计范围的更新处理。其它的处理和图6的相同。因此不予重复。
在图38所示的步S403的详细的区域估计相关处理与参照图10说明的相同。在步S407的区域估计范围的更新处理参照图16说明的相同。
当按照图38所示的流程图执行正常处理时,在步S403的区域估计相关处理(图10所示的区域估计相关处理)的区域估计处理(图10所示的步S61的区域估计处理)由图39所示的流程图表示。
从步S431到步S435的处理基本上和图11所示的步S81到步S86的处理相同。不过,图11所示的步S86的区域估计范围的更新处理被从图39所示的处理中除去了。其它的处理和图11的相同。即,因为在图38所示的步S407执行区域估计范围的更新处理,在图39所示的区域估计处理中便不需要区域估计范围的更新处理。
此外,当执行图38所示的正常处理时,在步S403的区域估计相关处理(图10所示的区域估计相关处理)的转移候选者提取处理(图10所示的步S62的转移候选者提取处理)由图40所示。在步S451的处理与图32所示的步S231的转移候选者提取处理相同。
如上所述,当按照图38所示的流程图执行正常处理时的处理和当按照图6所示的流程图执行正常处理时的处理之间的区别如图41和42所示。
当按照图6所示的流程图执行正常处理时并且如图41所示当区域82由帧n内的区域估计范围81中的黑方块表示的点551构成时,根据运动矢量553先前帧n中的区域82内的点551被移动到的位置上的点552在帧n+1中被确定为转移候选者(图23中的步S161的处理)。
每个点551的运动矢量553有时等于全屏运动的运动矢量。不过,点的估计的运动根据涉及确定每个点的运动是否等于全屏运动的精度而略有不同。例如,如果确定具有一点之差的运动沿水平方向和垂直方向是相同的,则(0,0)的运动包括(-1,1)的运动和(1,0)的运动。在这种情况下,即时当全屏运动是(0,0)时,具有(-1,1)或者(1,0)的运动的每个点551被移动该运动的量。代替直接使用目的点作为转移候选者,预先获得的取样点中最接近的点可被确定为转移候选者。当然,为了减少处理负担,每个点552可被移动全屏运动的量。
与此相对,当按照图38所示的流程图执行正常处理时,在帧n内的区域估计范围81内部的点561被确定为转移候选者,如图42所示。
下面参照图43说明图1所示的运动估计单元12的示例性配置。运动估计单元12包括运动矢量检测单元606-1和运动矢量精度计算单元606-2。在这个实施例中,输入图像被传送给估计值计算单元601、活动性计算单元602和运动矢量检测单元606-1。
运动矢量检测单元606-1由输入图像检测运动矢量,并把检测的运动矢量和输入图像传送给运动矢量精度计算单元606-2。如果输入图像已经包含运动矢量,则运动矢量检测单元606-1使图像数据与运动矢量分离,并把图像数据和运动矢量传送给运动矢量精度计算单元606-2。如果输入数据和运动矢量被单独地输入,则可以不需运动矢量检测单元606-1。
运动矢量精度计算单元606-2根据输入图像(图像数据)计算相应运动矢量的精度(以下称为“运动矢量精度”),并和由运动矢量检测单元606-1传送的运动矢量一起输出获得的精度。
在这个实施例中,运动矢量精度计算单元606-2包括估计值计算单元601,活动性计算单元602,以及计算单元606-3。计算单元606-3包括阈值确定单元603,归一化处理单元604,以及积分处理单元605。
由图43所示的运动矢量检测单元606-1传送的运动矢量被输入到估计值计算单元601。输入图像(图像数据)被输入到估计值计算单元601和活动性计算单元602。
估计值计算单元601计算输入图像的估计值并把该估计值传送给归一化处理单元604。活动性计算单元602计算输入图像的活动性并把活动性传送给阈值确定单元603和计算单元606-3的归一化处理单元604。
归一化处理单元604根据由活动性计算单元602传送的活动性来归一化由估计值计算单元601传送的估计值,并把获得的值传送给积分处理单元605。阈值确定单元603比较由活动性计算单元602传送的活动性和预定阈值,并把确定结果传送给积分处理单元605。积分处理单元605根据由归一化处理单元64传送的归一化信息和由阈值确定单元603传送的确定结果来计算运动矢量精度,从而计算运动矢量精度。然后积分处理单元605向设备输出获得的运动矢量精度。此时,积分处理单元605还可以输出由运动矢量检测单元606-1传送的运动矢量。
下面参照图44所示的流程图详细说明由运动估计单元12进行的运动计算处理。运动矢量检测单元606-1在步S501获得输入图像,在步S502把输入图像的帧分成预定块,在步S503比较该帧和在时间上随后(或前面)的帧,以便检测运动矢量。更具体地说,借助于使用块匹配方法检测运动矢量。检测的运动矢量被传送给估计值计算单元601。
下面参照图45到图48说明这个处理。即,在图44所示的步S501,例如,如图45所示,N个帧F1(第一帧)到FN(第N帧)被按照顺序获得。在步S502,在一帧内的图像被分成方块,每个方块具有2L+1个像素的边。其中,设在帧Fn内的任何块是块Bp,并如图46所示,设块Bp的中心坐标(像素)是点P(Xp,Yp)。
在步S503,例如如图47所示,在帧Fn+1,其是帧Fn的下一个帧,块Bp扫描帧Fn+1中的预定扫描区域,以便检查使对应像素的绝对差的和最小的位置。这样,检测到位于使对应像素的绝对差的和最小的位置处的块(块Bq)。检测到的块的中心点Q(Xq,Yq)被确定为对应于块Bp的点P(Xp,Yp)的点。
如图48所示,在块Bp的中心点P(Xp,Yp)和块Bq的中心点Q(Xq,Yq)之间的线(箭头)被检测作为运动矢量V(Vx,Vy)。即运动矢量V(Vx,Vy)被按照下式计算 V(vx,vy)=Q(Xq,Yq)-P(Xp,Yp) ...(1) 在图44所示的步S504,属性信息存储单元22执行运动矢量精度计算处理。下面参照图49对这个处理进行详细说明。借助于这个处理作为一个数量值计算运动矢量精度。
在步S505,运动矢量精度计算单元606-2确定是否对于一帧中的所有块的运动矢量精度的计算都已被完成。
如果在步S505运动矢量精度计算单元606-2确定对于该帧中的所有块的运动矢量精度的计算未完成,则处理返回步S504,并重复地执行步S504之后的处理。如果运动矢量精度计算单元606-2确定完成了所有块的运动矢量精度的计算,则对于该帧的处理被完成。对于每一帧都执行上述的处理。
下面参照图49所示的流程图详细说明在图44所示的步S504的运动矢量精度计算处理。在步S531,估计值计算单元601按照下式计算估计值Eval(P,Q,i,j) Eval(P,Q,i,j)=∑∑|Fj(Xq+x,Yq+y)-Fi(Xp+x,Yp+y)|...(2) 在式(2)中的总和∑∑在从-L到L的范围内对于x计算,在从-L到L的范围内对于y计算。即,为了简化,如图50所示,假定块Bp和块Bq具有5(=2L+1=2×2+1)个像素的边。那么,在帧Fn中的块Bp的左上角坐标为(点P1(Xp-2,Yp-2))的像素71的像素值和对应于像素771的在帧Fn+1中块Bq的坐标为(点(Q1(Xq-2,Yq-2))的像素881的像素值之间的差值被计算。同样,位于点P1(Xp-2,Yp-2)和P25(Xp+2,Yp+2)之间的每个像素的像素值和位于Q1(Xq-2,Yq-2)和Q25(Xq+2,Yq+2)之间的块Bq的对应像素的像素值之间的差值被计算。当L=2时,获得25个差值,并计算绝对差的总和。
位于P(Xp,Yp)(其是上述在帧Fn内的块Bp的中心坐标)的像素(感兴趣的像素)的数量和位于是帧Fn+1中的块Bq的中心坐标的Q(Xq,Yq)并对应于块Bq的中心点的像素(对应像素)的数量可以至少为一。不过,当使用多个像素时,要求该数量是相同的。
这个估计值表示在一帧中其中心为每个点的块和在另一帧中其中心为该点的块之间的估计值(即运动矢量的估计值)。当这个估计值接近于0时,则块变得彼此更为相似。应当注意,在式(2)中,Fi和Fj表示在时间上不同的帧。在前面的说明中,Fn对应于Fi,Fn+1对应于Fj。在式(2)中,虽然绝对差的和作为估计值,但是平方差的和也可被确定为估计值。
代替块匹配方法,可以使用梯度方法或矢量检测方法。
估计值计算单元601向归一化处理单元604传送产生的估计值。
在步S532,活动性计算单元602由输入图像计算活动性。活动性指的是表示图像的复杂性的特征量。如图51和52所示,在用于每个像素的感兴趣的像素Y(x,y)和相邻的8个像素(即相邻像素Y(x-1,y-1),Y(x,y-1),Y(x+1,y-1),Y(x+1,y),Y(x+1,y+1),Y(x,y+1),Y(x-1,y+1),以及Y(x-1,y))之间的差的绝对和的平均按照下式作为感兴趣的像素的活动性被计算 在图52所示的例子中,感兴趣的像素Y(x,y)的值是110,其位于3×3个像素的中心。和感兴趣的像素Y(x,y)相邻的8个像素(相邻像素Y(x-1,y-1),Y(x,y-1),Y(x+1,y-1),Y(x+1,y),Y(x+1,y+1),Y(x,y+1),Y(x-1,y+1),以及Y(x-1,y))的值分别是80,70,75,100,100,100,80和80。因而,活动性由下式表示 Activity(x,y)={|80-110|+|70-110|+|75-110|+|100-110|+|100-110|+|100-110|+|80-110|+|80-110|}/8=24.375 当根据像素计算运动矢量精度时,该活动性被直接用于计算运动矢量精度。当根据块(一个块包括多个像素)计算运动矢量精度时,块的活动性被另外地计算。
为了根据块计算运动矢量精度,例如,如图53A所示,对于具有5(=2L+1=2×2+1)的边的块Bp,被包括在活动性计算区域851a的中心的像素771被定义为感兴趣的像素。此后,使用像素771的值和与像素771相邻的8个像素的值计算活动性。
此外,如图53B到53F所示,在块Bp中的像素被按顺序扫描,以计算相对于包括在活动性计算区域851b到851f的每个中的相邻像素感兴趣的像素的活动性。对块Bp中的所有像素计算的活动性的总和被定义为块Bp的块的活动性。
因而,由下式表示的对于块中的所有像素计算的活动性的总和被定义为块的活动性(块活动性)Blockactivity(i,j) Blockactivity(i,j)=∑∑|Activity(x,y)| ...(4) 由式(4)给出的总和在从-L到L的范围内对于x被计算,在从-L到L的范围内对于y被计算。在式(4)中的i和j表示块的中心位置,因而与式(3)中的i和j不同。
应当注意,块的变化、动态范围、或表示沿空间方向像素值的改变的其它值可用于活动性。
在步S534,阈值确定单元603确定在步S532由活动性计算单元602计算的块活动性是否大于一个预定阈值(阈值Tha,其在下面参照图53被说明)。下面参照图54所示的流程图详细说明这个处理。在这个处理中,设置一个表示块活动性是否大于阈值THa的标记。
在步S534,归一化处理单元604执行归一化处理。下面参照图56详细说明这个处理。在这个处理中,根据在步S31计算的估计值、在步S532计算的块活动性和阈值(线903的梯度,这在下面参照图55进行说明)计算运动矢量精度。
在步S535,积分处理单元605执行积分处理。下面参照图57详细说明这个处理。在这个处理中,根据在步S533设置的标记确定向设备(未示出)输出的运动矢量精度(图54所示的步S552或S553)。
下面参照图54详细说明图49所示的步S533的阈值处理。在步S551,阈值确定单元603根据在图49所示的步S532的处理结果确定计算的块活动性是否大于阈值THa。
更具体地说,实验结果表明,块活动性和使用运动矢量作为参数的估计值有关,如图55所示。在图55中,横轴表示块活动性blockactivity(i,j),纵轴表示估计值Eval。如果运动被正确地检测(如果给出正确的运动矢量),则块活动性的值和估计值的值分布在曲线901的下方的下部区域R1内。与此相反,如果给出错误运动(错误的运动矢量),块活动性的值和估计值的值被分布在曲线902的左方区域R2(该值极少地分散在曲线902上方的区域R2和曲线901下方的区域R1之外的区域内)。曲线901在点P和曲线902交叉。在点P的块活动性的值被规定为阈值THa。阈值THa表示,如果块活动性的值小于阈值THa,则具有相应运动矢量是不正确的可能性(这在下面详细说明)。阈值确定单元603向积分处理单元605输出表示由活动性计算单元602输入的块活动性的值是否大于阈值THa的标记。
如果在步S551确定块活动性大于阈值THa(相应运动矢量很可能是正确的),则处理前进到步S552。在步S552,阈值确定单元603设置指示块活动性大于阈值THa的标记。
与此相反,如果在步S551,确定块活动性不大于(即小于)阈值THa(具有相应运动矢量是不正确的可能性),则处理前进到步S553,设置表示块活动性不大于(即小于)阈值THa的标记。
此后,阈值确定单元603向积分处理单元605输出表示输入块活动性是否大于阈值的标记。
下面参照图56所示的流程图详细说明图49所示的步S534的归一化处理。在步S571,归一化处理单元604根据在步S531计算的估计值、在步532计算的块活动性以及预定阈值(图55所示的线903的梯度)按照下式计算运动矢量精度VC VC=1-估计值/块活动性 ...(5) 在运动矢量精度VC中,估计值除以块活动性而获得的值确定图55所示的曲线中的位置,并表示相对于在原点O与梯度为1的点P之间的线903,该点位于下部区域或者上部区域。即,线903的梯度是1。如果估计值除以块活动性而获得的值大于1,则对应于这个值的点分布在线903上方的区域内。这意味着,当从这个值减去1而获得的运动矢量精度VC较小(对于负值较大)时,相应点分布在区域R2的可能性增加。
相反,如果估计值除以块活动性所获得的值小于1,则相应于这个值的点分布在线903下方的区域内。这意味着,当运动矢量VC较大时(接近于0),相应点分布在区域R1的可能性增加。归一化处理单元604向积分处理单元605输出用这种方式获得的运动矢量精度VC。
在步S572,归一化处理单元604确定按照式(5)计算的运动矢量精度VC是否小于0(运动矢量精度VC是否是负的)。如果运动矢量精度VC大于或等于0,则归一化处理单元604的处理前进到步S573。在步S573,归一化处理单元604把在步S571计算的运动矢量精度VC直接传送给积分处理单元605。
不过,如果在步S572确定运动矢量精度VC小于0(运动矢量精度VC是负的),则处理前进到步S574。在步S574,归一化处理单元604设置运动矢量精度VC为一个固定值0,并把运动矢量精度VC传送给积分处理单元605。
因而,如果具有运动矢量是不正确的可能性(运动矢量是一个错误的矢量)(即运动矢量精度VC是负的),则运动矢量精度被设置为0。
下面参照图57所示的流程图详细说明在图49所示的步S535的积分处理。
在步S591,积分处理单元605确定块活动性是否小于或等于阈值THa。这个确定根据由阈值确定单元603传送的标记进行。如果块活动性大于阈值THa,则在步S592积分处理单元605直接输出由归一化处理单元604计算的运动矢量精度VC和运动矢量。
相反,如果确定块活动性小于或等于阈值THa,则由归一化处理单元604计算的运动矢量精度VC被设置为0并在步S593被输出。
这是因为,即使当归一化处理单元604计算的运动矢量精度VC为正时,如果块活动性值小于阈值THa,则具有不能获得正确的运动矢量的可能性。即,如图55所示,在原点O和点P之间,曲线202向下延伸通过曲线901(向下通过线903)在曲线901和曲线902包围的区域R3内,其中块活动性小于阈值THa,估计值除以块活动性而获得的值分布在两个区域R1和R2内,因此,很可能不能获得正确的运动矢量。因而,在这种分布中,根据运动矢量精度是低的假定执行处理。因而,当运动矢量精度VC是负时以及甚至当运动矢量精度VC是正时,如果块活动性小于阈值THa,则运动矢量精度VC被设置为0。这种设计允许获得正的运动矢量精度VC可靠地表示正确运动矢量。此外,当运动矢量精度VC的值增加时,获得正确运动矢量的可能性增加(分布被包括在区域R1内的可能性增加)。
这个结果和实验定律一致,这些实验定律表明,一般地说,在亮度改变低的区域(活动性低的区域)内获得可靠的运动矢量是困难的。
这样,计算运动矢量精度。结果,运动矢量精度可以用一个数量值表示,因此,可以检测可靠的运动矢量。虽然参照帧图像对处理进行了说明,但是这些处理可以应用于场图像。
图58表示图1所示的背景运动估计单元14的示例性配置。在这个例子中,背景运动估计单元14包括频率分布计算单元1051和背景运动确定单元1052。
频率分布计算单元1051计算运动矢量的频率分布。应当注意,借助于使用从运动估计单元12传送的运动矢量精度VC对所述频率加权,使得对可能是可靠的运动加权。背景运动确定单元1052根据由频率分布计算单元1051计算的频率分布确定具有最大频率的运动为背景运动。然后,背景运动确定单元1052把该运动输出到区域估计相关处理单元15。
现在参照图59说明由背景运动估计单元14进行的背景运动估计处理。
在步S651,频率分布计算单元1051计算运动的频率分布,更具体地说,当作为背景运动的候选者的运动矢量的x坐标和y坐标在距离基准点±16个像素的范围内被表示时,频率分布计算单元1501准备1089(=16×2+1)×(16×2+1))个方框,即,对应于运动矢量的可能点的坐标的方框。当运动矢量发生时,频率分布计算单元1051使对应于该运动矢量的坐标加一。因而,可以计算运动矢量的频率分布。
不过,如果当一个运动矢量发生时增加值1,并且如果低精度的运动矢量发生的频率高时,该低精度的运动矢量可能被确定为背景运动。因此,当运动矢量发生时,频率分布计算单元1051对于与该运动矢量对应的方框(坐标)不加一,但是对该方框增加1乘以运动矢量精度VC(=运动矢量精度VC的值)的值。该运动矢量VC的值被归一化为0到1范围内的值。当这个值接近于1时,精度较高。因而,使用上述方法获得的频率分布成为其中根据运动矢量精度对运动矢量加权的频率分布。因而,低精度的运动被确定为背景运动的危险被减小。
在步S652,频率分布计算单元1051确定其是否完成计算所有块的运动的频率分布的处理。如果存在未被处理的块,则处理返回步S651,对于下一个块执行在步S651的处理。
因而,对全屏执行计算运动的频率分布的处理。如果在步S652确定对于所有块的处理已经被完成,则处理前进到步S653。在步S653,背景运动确定单元1052执行搜索频率分布的最大值的处理。即,背景运动确定单元1052从频率分布计算单元1501计算的频率当中选择最大频率,并确定对应于选择的频率的运动矢量为背景的运动矢量。这个背景的运动矢量被传送给区域估计相关处理单元15,并被例如用于确定背景的运动是否等于图16所示的步S104和图21所示的步S131的全屏运动。
图60详细说明图1所示的场景改变检测单元13的示例性配置。在这个例子中,场景改变检测单元13包括运动矢量精度平均计算单元1071和阈值确定单元1072。
运动矢量精度平均计算单元1071计算从运动估计单元12传送的用于全屏的运动矢量精度VC的平均,并把该平均输出到阈值确定单元1072。阈值确定单元1072将由运动矢量精度平均计算单元1071传送的平均与预定的阈值相比较。然后阈值确定单元1072根据比较结果确定场景改变是否发生并把确定结果输出到控制单元19。
下面参照图61所示的流程图说明场景改变检测单元13的操作。在步S681,运动矢量精度平均计算单元1071计算矢量精度的和。更具体地说,运动矢量精度平均计算单元1071相加从运动估计单元12的积分处理单元605输出的对于每个块计算的运动矢量精度VC的值。在步S682,运动矢量精度平均计算单元1071确定是否对所有块都已完成计算运动矢量精度VC的和的处理。如果对于所有块该处理尚未完成,则运动矢量精度平均计算单元1701重复步S681的处理。借助于重复这个处理,计算在一屏内的所有块的运动矢量精度VC的和。如果在步S682确定已完成计算在一屏内的所有块的运动矢量精度VC的和的处理,则处理前进到步S683。在步S683,运动矢量精度平均计算单元1071执行运动矢量精度VC的平均的处理。更具体地说,在步S681计算的一屏的矢量精度VC的和除以用于相加的块数。结果的值被定义为平均值。
在步S684,阈值确定单元1072将在步S683由运动矢量精度平均计算单元1071计算的运动矢量精度VC的平均与预定阈值相比较,以确定该阈值是否小于平均值。一般地说,如果在不同时间在运动图像的两帧之间场景改变发生,则相应图像消失。因此,即使计算运动矢量,该运动矢量的精度也是低的。因而,如果运动矢量精度VC的平均小于阈值,则在步S685阈值确定单元1072打开场景改变标记。如果运动矢量精度VC的平均不小于(即大于或等于)阈值,则阈值确定单元1072在步S686关断场景改变标记。打开的场景改变标记表示发生了场景改变,而关断的场景改变标记表示未发生场景改变。
将这个场景改变标记传送给控制单元19,用于在图34所示的步S321和图37所示的步S362确定场景改变是否发生。
下面说明包括上述对象跟踪设备的图像处理设备。图62说明对象跟踪设备应用于电视接收机1700的例子。调谐器1701接收RF信号,解调RF信号成为图像信号和音频信号,输出图像信号到图像处理单元1702,并输出音频信号到音频处理单元1707。
图像处理单元1702解调从调谐器1701输入的图像信号。图像处理单元1702然后输出解调的图像信号到对象跟踪单元1703、缩放图像产生单元1704,以及选择单元1705。对象跟踪单元1703实际上具有和上述的图1所示的对象跟踪设备1相同的结构。对象跟踪单元1703执行跟踪在输入图像中由用户规定的对象的跟踪点的处理。对象跟踪单元1703向缩放图像产生单元1704输出关于跟踪点的坐标信息。缩放图像产生单元1704以跟踪点为中心产生一个缩放图像,并输出缩放图像到选择单元1705。选择单元1705根据用户指令选择从图像处理单元1702传送的图像和由缩放图像产生单元1704传送的图像之一,并输出选择的图像到用于显示该图像的图像显示器1706。
音频处理单元1707解调从调谐器1701输入的音频信号并输出解调的信号到扬声器708。
由用户操作遥控器1710。遥控器1710向控制单元1709输出对应于用户操作的信号。控制单元1709例如包括微型计算机,并响应用户的指令控制所有的元件。可除去的介质1711包括半导体存储器、磁盘、光盘或磁光盘。根据需要安装可除去的介质1711。可除去的介质1711向控制单元1709提供程序和各种类型的数据。
下面参照图63所示的流程图说明电视接收机1700的处理。
在步S701,调谐器1701通过天线(未示出)接收RF信号并解调用户指定的频道的信号。然后,调谐器1701向图像处理单元1702输出图像信号并向音频处理单元1707输出音频信号。音频信号被音频处理单元1707解调,并从扬声器1708中输出。
图像处理单元1702解调输入图像信号并向对象跟踪单元1703、缩放图像产生单元1704和选择单元1705输出图像信号。
在步S702,对象跟踪单元1703确定用户是否启动跟踪。如果对象跟踪单元1703确定跟踪未被启动,则对象跟踪单元1703跳过在步S703和S704的处理。在步S705,选择单元1705根据来自控制单元1709的控制选择由图像处理单元1702传送的图像信号和由缩放图像产生单元1704输入的图像信号之一。在这种情况下,因为未收到用户的指令,控制单元1709命令选择单元1705选择来自图像处理单元1702的图像信号。在步S706,图像显示器1706显示由选择单元1705选择的图像。
在步S707,控制单元1709根据用户指令确定是否完成图像显示处理。即,为了终止图像显示处理,用户操作遥控器1710,命令控制单元1709终止图像显示处理。如果控制单元1709未收到用户指令,则处理返回步S701并重复地执行步S701以后的处理。
这样,便执行直接显示与调谐器1701接收的信号对应的图像的正常处理。
当在显示器1706上显示用户想要跟踪的图像时,用户操作调谐器1701来指定该图像。当进行这个操作时,控制单元1709在步S702确定跟踪被启动,并控制对象跟踪单元1703。在控制单元1709的控制下,对象跟踪单元1703开始跟踪由用户指定的跟踪点。这个处理和由上述的对象跟踪设备1执行的处理相同。
在步S704,缩放图像产生单元1704产生其中心在由对象跟踪单元1703跟踪的跟踪点的缩放图像,并向选择单元1705输出缩放图像。
这个缩放处理可以通过使用由本发明人提出的自适应分类技术来执行。例如,日本未审专利申请公开2002-196737描述了一种技术,其中使用由预训练处理获得的系数把525i的信号转换成1080i的信号。这个处理实际上是和沿水平方向和垂直方向以9/4的系数放大图像的处理相同的处理。不过,在图像显示器706中的像素数是固定的。因而,例如为了产生9/4倍的较大图像,缩放图像产生单元704可以通过将525i信号转换为1080i信号,并选择预定数量的其中心在跟踪点的像素(对应于图像显示器706的像素数)来产生缩放图像。为了减小图像,则执行相反的操作。
根据这个原理可以产生由任何比例系数缩放的图像。
如果收到跟踪指令,则选择单元1705在步S705选择由缩放图像产生单元1704产生的缩放图像。作为选择的结果,图像显示器1706在步S706显示由缩放图像产生单元1704产生的缩放图像。
这样其中心在用户规定的跟踪点的缩放图像便在图像显示单元1706上被显示。如果比例系数被设置为1,则只进行跟踪。
图64表示按照本发明的图像处理设备1801的功能性结构。图像处理设备1801包括运动矢量检测单元1821和运动矢量精度计算单元1822。
运动矢量检测单元1821由输入图像来检测运动矢量,并把检测的运动矢量和输入图像传送给运动矢量精度计算单元1822。此外,当输入图像已经含有运动矢量时,运动矢量检测单元1821分离图像数据和运动矢量并把图像数据和运动矢量传送给运动矢量精度计算单元1822。如果输入数据和运动矢量被单独地输入,则不需要运动矢量检测单元1821。
运动矢量精度计算单元1822根据输入图像(图像数据)计算相应运动矢量的精度(下面称为“运动矢量精度”),并把获得的精度输出到一个设备(未示出)。
图65表示图64所示的运动矢量精度计算单元1822的示例性配置。在这个实施例中,运动矢量精度计算单元1822包括估计值计算单元1841,活动性计算单元1842,以及计算单元1843。计算单元1843包括阈值确定单元1851,归一化处理单元1852和积分处理单元1853。
从图64所示的运动矢量检测单元1821输出的运动矢量被输入给估计值计算单元1841。输入图像(图像数据)被输入给估计值计算单元1841和活动性计算单元1842。
估计值计算单元1841计算输入图像的估计值并把估计值传送到归一化处理单元1852。活动性计算单元1842计算输入图像的活动性,并把活动性传送到阈值确定单元1851和计算单元1843的归一化处理单元1852。
归一化处理单元1852根据由活动性计算单元1842传送的活动性归一化从估计值计算单元1841传送的估计值,并把获得的值传送到积分处理单元1853。阈值确定单元1851将从活动性计算单元1842传送的活动性与预定阈值相比较,并把确定结果传送到积分处理单元1853。积分处理单元1853根据从归一化处理单元1852传送的归一化信息和从阈值确定单元1851传送的确定结果计算运动矢量精度。然后积分处理单元1853向设备(未示出)输出获得的运动矢量精度。
运动矢量检测单元1821、运动矢量精度计算单元1822、估计值计算单元1841、精度计算单元1842、计算单元1843、阈值确定单元1851、归一化处理单元1852以及积分处理单元1853分别具有和上述的图43所示的运动矢量检测单元606-1、运动矢量精度计算单元606-2、估计值计算单元601、活动性计算单元602、计算单元606-3、阈值确定单元603、归一化处理单元604、以及积分处理单元605基本相同的结构。因此不重复它们的说明。
上述的图像处理设备1801例如可以由个人计算机构成。
在这种情况下,图像处理设备1的配置例如如图66所示。中央处理单元(CPU)1931按照在只读存储器(ROM)1932中存储的程序或者从存储单元1939装入随机存取存储器(RAM)1933中的程序执行各种处理。RAM 233还根据需要存储CPU 1931为执行各种处理所需的数据。
CPU 1931、ROM 1932和RAM 1933通过总线1934相互连接。输入/输出接口1935也和总线1934相连。
以下的元件和输入/输出接口1935相连输入单元1936,例如包括键盘和鼠标,显示器例如包括阴极射线管(CRT)或液晶显示器(LCD),输出单元1937,例如包括扬声器,通信单元1938,例如包括调制解调器或终端适配器,以及存储单元1939,例如包括硬盘。通信单元1938通过LAN或互联网(未示出)进行和不同设备通信的处理。
驱动装置1940也和输入/输出接口1935相连。包括磁盘、光盘、磁光盘或半导体存储器的可除去的介质根据需要被安装在驱动装置1940内。从这些介质读出的计算机程序根据需要被安装在存储单元1939内。
下面参照图67说明按照本发明的编码单元2261。
在编码单元2261中,输入图像被传送到运动矢量检测单元1821、运动补偿单元2272,以及运动计算单元2271的选择单元2273。运动计算单元2271具有和图64所示的上述图像处理设备1801实际上相同的配置。运动矢量检测单元1821检测来自输入图像的运动矢量并把检测的运动矢量输出到运动补偿单元2272和附加代码产生单元2275。此外,运动矢量检测单元1821向运动矢量精度计算单元1822输出运动矢量和输入图像。
运动矢量精度计算单元1822根据由运动矢量检测单元1821输入的运动矢量和输入图像计算运动矢量精度,并向控制单元2274输出计算的运动矢量精度。控制单元2274根据输入的运动矢量精度控制选择单元2273和附加代码产生单元2275。
运动补偿单元2272根据传送的输入图像和由运动矢量检测单元1821传送的运动矢量来补偿运动,并把运动补偿的图像传送到选择单元2273。选择单元2273选择输入图像或运动补偿的图像,并在控制单元2274的控制下向像素值编码单元2276输出选择的图像。像素值编码单元2276编码接收的图像并输出到积分单元2277。
附加代码产生单元2275产生附加代码,该代码表示每帧图像的运动是否在控制单元2274的控制下被补偿,并将附加代码与由运动矢量检测单元1821输入的运动矢量组合。如果需要,附加代码产生单元2275将运动矢量精度添加到图像,然后,附加代码产生单元2275向积分单元2277输出组合的图像。
积分单元2277积分从像素值编码单元2276输入的代码和由附加代码产生单元2275输入的附加代码,并将积分的代码输出到设备(未示出)。
下面参照图68所述的流程图说明编码单元2261的处理。在步S821到步S825,图像被输入并把每帧图像剪切成预定块。根据剪切的块检测运动矢量。计算每个运动矢量的精度(运动矢量精度)。重复相同的处理直到所有块的运动矢量精度都被检测。
此后,在步S826,运动补偿单元2272根据输入图像和运动矢量补偿运动。即,根据运动矢量计算连续两帧的图像之间的差值并产生差值图像(运动补偿图像)。
在步S827,在控制单元2274的控制下,选择单元2273选择输入图像和由运动补偿单元2272传送的运动补偿图像之一。即,当运动矢量精度足够高时,控制单元2274命令选择单元2273选择运动补偿图像作为要被编码的图像。当运动矢量精度不够高时,控制单元2274则命令选择单元2273选择输入图像。因为根据运动矢量精度选择输入图像和运动补偿图像之一,从而可以避免使用根据可靠性小的精度被运动补偿的图像。选择单元2273把选择的图像传送给像素值编码单元2276。
在步S828,像素值编码单元2276编码在步S828选择的图像(输入图像或运动补偿的图像)。
在步S829,附加代码产生单元2275产生附加代码,该代码用于表示解码所需的编码图像是否是在控制单元2274的控制下被运动补偿的图像。这个附加代码可以包括运动矢量精度。
在步S830,积分单元2277积分在步S828编码的图像和在步S829产生的附加代码。积分单元2277然后向设备(未示出)输出积分的图像和附加代码。
这样,图像被这样编码,使得可以避免使用根据可能是不正确的运动矢量(可能是错误的矢量)被运动补偿的图像。因而,可以避免由使用不可靠的运动矢量进行运动补偿而导致的图像破坏,因此,可以在解码时获得高质量图像。
图69表示其中本发明应用于摄像机抖动模糊校正设备2301的例子。例如,摄像机抖动模糊校正设备2301被应用于数字视频摄像机。
输入图像被输入到背景运动检测单元2311和输出图像产生单元2314。背景运动检测单元2311检测输入图像的背景运动并把检测的背景运动输出到位移积累单元2312。下面参照图70详细说明背景运动检测单元2311。位移积累单元2312积累输入的背景运动的位移量,并向摄像机抖动模糊确定单元2313和输出图像产生单元2314输出积累的位移量。摄像机抖动模糊确定单元2313根据预定阈值确定输入的位移信息是否对应于摄像机抖动模糊,并输出确定结果到输出图像产生单元2314。
输出图像产生单元2314根据由位移积累单元2312输入的位移量和由摄像机抖动模糊确定单元2313输入的确定结果由传送的输入图像产生输出图像。然后输出图像产生单元2314把输出图像记录在可写的记录介质315上,例如硬盘驱动器(HDD)和视频带上。此外,输出图像产生单元2314向显示单元2316输出产生的图像,显示单元例如包括液晶显示器(LCD),其显示产生的图像。
图70详细表示图69所示的背景运动检测单元2311的配置。在这种配置中,背景运动检测单元2311包括运动计算单元2321,频率分布计算单元2322,以及背景运动确定单元2323。运动计算单元2321具有和上述的图63所示的运动计算单元1801实际上相同的配置。
输入图像被传送给运动计算单元2321的运动矢量检测单元1821。运动矢量检测单元1821检测输入图像的运动矢量,并向运动矢量精度计算单元1822输出检测的运动矢量和输入图像。运动矢量精度计算单元1822根据输入的运动矢量和输入图像计算对应于运动矢量的精度(运动矢量精度),并向频率分布计算单元2322传送运动矢量精度。
频率分布计算单元2322计算运动矢量的频率分布。应当注意,通过使用由运动计算单元2321传送的运动矢量精度VC对频率加权,使得对可能是可靠的运动加权。背景运动确定单元2323根据由频率分布计算单元2322计算的频率分布确定具有最大频率的运动为背景运动。
下面参照图71所示的流程图详细说明由摄像机抖动模糊校正设备2301进行的处理。在步S831到S834,输入图像被获取并把图像的帧剪切成预定块。使用例如块匹配方法根据剪切的块检测运动矢量。然后计算每个运动矢量的精度(运动矢量精度)。
在步S835,频率分布计算单元2322计算运动的频率分布。更具体地说,当作为背景运动的候选者的运动矢量的x坐标和y坐标在离开基准点±16个像素的范围内表示时,频率分布计算单元2322准备1089(=16×2+1)×(16×2+1)个方框,即,对应于运动矢量的可能点的坐标的方框。当运动矢量发生时,频率分布计算单元2322使对应于运动矢量的坐标加一。这样,可以计算运动矢量的频率分布。
不过,如果当一个运动矢量发生时增加值1,并且低精度的运动矢量的发生频率高时,则这个低精度的运动矢量可能被确定为背景运动。因此,当运动矢量发生时,频率分布计算单元2322不对对应于该运动矢量的方框(坐标)加值1,而对该方框加1乘以运动矢量精度VC(=运动矢量精度VC的值)的值。运动矢量精度VC的值被归一化为0到1的值。这个值越接近于1,精度越高。因而,使用上述方法获得的频率分布成为其中根据运动矢量精度对运动矢量加权的频率分布。因而,可以减少低精度的运动被确定为背景运动的危险。
在步S836,运动矢量精度计算单元1822确定是否完成所有块的运动的频率分布的计算处理。如果具有未处理的块,则处理返回步S834,对下一个块执行在步S834和S835的处理。在对全屏都执行了运动的频率分布的计算处理之后,处理前进到步S837。在步S837,背景运动确定单元2323执行搜索频率分布的最大值的处理。即,背景运动确定单元2323从由频率分布计算单元2322计算的频率当中选择最大频率,并确定对应于选择的频率的运动矢量为背景运动的运动矢量。这个背景运动的运动矢量被传送给位移积累单元2312。
在步S838,位移积累单元2312按顺序存储表示每一帧背景运动的运动矢量。
在步S839,摄像机抖动模糊确定单元2313确定表示背景运动的运动矢量的位移(绝对值)是否大于预定阈值,从而确定输入图像是否由于摄像机的抖动而变模糊。如果位移大于阈值,则确定手的晃动发生。相反,如果位移小于阈值,则确定没有发生手的晃动。摄像机抖动模糊确定单元2313向输出图像产生单元2314传送确定结果。
如果在步S839摄像机抖动模糊确定单元2313确定手的晃动发生,则在步S840,输出图像产生单元2314产生沿相反方向移动所述位移的图像并输出该图像。因而,用户可以记录或观看其中减少了由于手的晃动而产生的模糊的图像。
相反,如果在步S839,摄像机抖动模糊确定单元2313确定未发生手的晃动,则处理前进到步S841,输出图像产生单元2314直接输出输入图像。输出图像被记录在记录介质2315上并被在显示单元2316上显示。
因而,摄像机抖动模糊被检测和校正。使用运动矢量精度允许精确地检测背景运动,借以向用户提供模糊极小的图像。
图72表示按照本发明的示例性积累设备。作为硬盘驱动(HDD)记录器的积累设备2341包括选择单元2351,记录介质(HDD)2352,索引产生单元2353,场景改变检测单元2354,控制单元2355,索引表2356,选择单元2357,显示图像产生单元2358,总控制单元2359,以及指令输入单元2360。
选择单元2351在总控制单元2359的控制下选择记录在记录介质2352上的图像和输入图像之一,并把选择的图像传送给索引产生单元2353、场景改变检测单元2354和选择单元2357。在总控制单元2359的控制下,图像被记录在由HDD构成的记录介质2352上。
场景改变检测单元2354检测传送的图像中的场景改变,并把检测结果传送到控制单元2355。控制单元2355根据传送的检测结果控制索引产生单元2353和索引表2356。
索引产生单元2353提取记录在记录介质2352上的索引图像和用于识别记录介质2352上的索引图像的位置的附加信息(时间代码、地址等),并在控制单元2355的控制下将它们传送给索引表2356。索引图像是当确定场景改变发生时每个场景的开始图像的缩小图像。
索引表2356存储传送的索引图像和对应的附加信息。索引表2356在控制单元2355的控制下向总控制单元2359传送对应于存储的索引图像的附加信息。
选择单元2357在总控制单元2359的控制下选择由选择单元2351传送的图像和由索引表2356输入的索引图像之一,并向显示图像产生单元2358输出选择的图像。显示图像产生单元2358在总控制单元2359的控制下由传送的图像以图像显示装置2365可以显示的格式产生图像并输出该图像。
在由场景改变检测单元2354输出的场景改变标记的控制下,并在总控制单元2359的控制下,控制单元2355控制索引产生单元2353和索引表2356。
总控制单元2359例如包括微型计算机并控制每个元件。指令输入单元2360包括多个按钮和开关、以及遥控器。指令输入单元2360向总控制单元2359输出对应于用户指令的信号。
图73详细表示图72所示的场景改变检测单元2354的示例性配置。在这个例子中,场景改变检测单元2354包括运动计算单元2371,运动矢量精度平均计算单元2372,以及阈值确定单元2373。运动计算单元2371实际上具有和图64所示的上述的图像处理设备1801相同的配置。
运动矢量检测单元1821检测输入图像中的运动矢量,并把检测的运动矢量和输入图像输出到运动矢量精度计算单元1822。根据输入的运动矢量和图像,运动矢量精度计算单元1822计算对应运动矢量的精度(运动矢量精度),并向运动矢量精度平均计算单元2372输出获得的运动矢量精度。
运动矢量精度平均计算单元2372对全屏计算由运动计算单元2371传送的运动矢量精度VC的平均,并把该平均输出到阈值确定单元2373。阈值确定单元2373将由运动矢量精度平均计算单元2372传送的平均与预定的阈值相比较。然后,阈值确定单元2373根据比较结果确定场景改变是否发生,并输出确定结果到控制单元2355。
下面参照图74所示的流程图详细说明当积累设备2341在记录介质2352上记录图像时执行的索引图像产生处理。当输入正被记录在记录介质2352上时执行这个处理。
在步S871到步S874的处理分别和参照图44所述的步S501到步S504的处理相同,即,在这些处理中,图像被输入,图像的帧被剪切成预定块。根据剪切的块例如使用块匹配方法检测运动矢量。然后计算每个运动矢量的精度(运动矢量精度)。
在步S875,运动矢量精度平均计算单元2372计算从选择单元2351输入的图像(该图像被记录在记录介质2352上)的运动矢量精度的和。更具体地说,运动矢量精度平均计算单元2372把运动计算单元2371的运动矢量精度计算单元1822的积分处理单元1853输出的对于每个块计算的运动矢量精度VC的值相加。在步S876,运动矢量精度计算单元1822确定是否完成了所有块的计算运动矢量精度VC的和的处理。如果尚未完成所有块的这种处理,运动矢量精度计算单元1822则重复步S874和S875的处理。通过重复这些处理,计算一屏内的所有块的运动矢量精度VC的和。如果在步S876确定完成了计算一屏内所有块的运动矢量精度VC的和的处理,则处理前进到步S877。在步S877,运动矢量精度平均计算单元2372执行计算运动矢量精度VC的平均的处理。更具体地说,在步S875计算的一屏的运动矢量精度VC的和除以相加的块数。所得的值被定义为平均。因而,对于一屏(一帧)获得一个平均。
在步S878,阈值确定单元2373比较在步S877由阈值确定单元2373计算的运动矢量精度VC的平均与预定阈值,并向控制单元2355输出比较结果。在步S879,控制单元2355确定所述平均是否小于阈值。一般地说,如果在运动图像的两个连续帧之间发生场景改变,则相应图像消失。因此,即使计算运动矢量,运动矢量的精度也是低的。因而,如果运动矢量精度VC的平均小于阈值,在步S880,控制单元2355控制索引产生单元2353,使得产生索引图像。
即,在步S881,在控制单元2355的控制下,索引产生单元2353减少新场景的开始帧中的图像尺寸,以产生索引图像。例如,当在屏幕上显示3×3的索引图像时,该索引图像是通过沿垂直方向和水平方向把原始图像的尺寸减小到1/3而产生的。此外,此时,索引产生单元2353提取用于识别在记录介质2352上的帧的图像的记录位置的附加信息(时间代码、地址等)。
在步S881,索引产生单元2353在索引表2356中存储在步S880产生的索引图像和对应的附加信息。
在步S879,如果确定运动矢量精度VC的平均大于或等于阈值,则很可能不会发生场景改变。因此,在步S880和S881的处理被跳过,不产生索引图像。
接着,在步S882,控制单元2355确定用户是否命令停止记录。如果尚未命令停止记录,则处理返回步S871,重复S871之后的处理。如果用户已经命令停止记录,则结束处理。
因而,在记录操作期间,自动地检测场景改变,并自动地产生索引图像。
下面参照图75所示的流程图说明用于向积累设备2341的图像显示装置2365输出图像的图像输出处理。当用户命令回放记录图像并输出该图像时执行这个处理。
在步S901,响应由用户进行的指令输入单元2360的操作,总控制单元2359使记录在记录介质2352上的图像被回放和输出。选择单元2351通过选择单元2357向显示图像产生单元2358输出从记录介质2352回放的图像。显示图像产生单元2358把收到的图像转换成显示装置2356可以显示的格式,并向图像显示图像的显示装置2365输出转换的图像。
在步S902,响应用户进行的指令输入单元2360的操作,总控制单元2359确定用户是否命令显示索引图像。如果用户未命令显示索引图像,则处理返回步S901,并重复执行步S901之后的处理。即,继续在图像显示装置2365上回放并输出(显示)在记录介质2352上记录的图像。
相反,如果用户已命令显示索引图像,则在步S903,总控制单元2359控制索引表2356输出在索引表2356中记录的索引图像。即,索引表2356读出索引图像列表,并通过选择单元2357向显示图像产生单元2358输出该列表。显示图像产生单元2358向显示该列表的图像显示装置2356输出索引图像列表。因而,在屏幕上显示其中排列有3×3的索引图像的列表。
通过操作指令输入单元2360,用户可以选择多个显示的索引图像(索引图像列表)中的一个。此后,在步S906,总控制单元2359确定是否选择在图像显示装置2365上显示的索引图像之一。如果确定没有索引图像被选择,则处理返回步S903,重复执行步S903之后的处理。即,图像显示装置2365连续地显示索引图像列表。
相反,如果确定选择一个索引图像(用户从列表中的索引图像中选择所需的索引图像),则在步S905总控制单元2359从对应于从记录介质2352中选择的索引图像的图像开始回放记录的图像。记录的图像通过选择单元2351、选择单元2357和显示图像产生单元2358被输出到图像显示装置2365。图像显示装置2365显示该图像。即,如果确定选择了一个索引图像,则总控制单元2359便从索引表2356中读出对应于在步S904选择的索引图像的附加信息(时间代码、地址等)。然后总控制单元2359控制记录介质2352,使得从对应于索引图像的图像开始回放图像,并把图像输出到用于显示图像的图像显示装置2365。
在步S906,总控制单元2359确定用户是否命令停止输出图像。其通过检查由用户进行的指令输入单元2360的操作,确定用户是否命令停止输出(显示)图像。如果确定用户未输入停止指令,则处理返回步S901,重复执行S901之后的处理。不过,如果确定用户未输入停止指令,则结束处理。
此外,即使当记录介质例如是DVD或视频带时,也可以应用积累设备2341。
上述的一系列处理不仅可以由硬件而且可以由软件来执行。当上述的一系列处理由软件执行时,软件程序被从网络或记录介质下载到被包含在专用硬件中的计算机中或可以通过在其中安装各种程序来执行各种功能的计算机中(例如通用个人计算机)。
在本说明中,用于说明上述的一系列处理的步骤不仅包括以上述的顺序执行的处理,而且包括被并行地或者独立地执行的处理。
图76表示其中本发明应用于安全摄像机系统的例子。在安全摄像机系统2800中,由包括CCD视频摄像机的图像捕获单元2801捕获的图像被显示在图像显示器2802上。跟踪对象检测单元2803从图像捕获单元2801输入的图像中检测要被跟踪的对象,并输出检测结果到对象跟踪单元2805。对象跟踪单元2805这样操作,使得跟踪图像捕获单元2801传送的图像中由跟踪对象检测单元2803规定的要被跟踪的对象。对象跟踪单元2805具有和上述的图1所示的对象跟踪设备1基本相同的配置。摄像机驱动单元2804在对象跟踪单元2805的控制下驱动图像捕获单元2801,使得捕获其中心在要被跟踪的对象的跟踪点的图像。
控制单元2806例如包括微型计算机并控制每个元件。包括半导体存储器、磁盘、光盘或磁光盘的可除去的介质2807根据需要被连接到控制单元2806。可除去的介质1711根据需要向控制单元2806提供程序和各种类型的数据。
下面参照图77所示的流程图说明监视处理的操作。当安全摄像机系统2800被接通电源时,图像捕获单元2801捕获安全区域的图像,并把捕获的图像输出到跟踪对象检测单元2803、对象跟踪单元2805和图像显示器2802。在步S931,跟踪对象检测单元2803执行从图像捕获单元2801输入的图像中检测要被跟踪的对象的处理。例如,当检测运动对象时,跟踪对象检测单元2803检测运动对象作为要被跟踪的图像。例如跟踪对象检测单元2803检测要被跟踪的对象的具有最高亮度的点或中心点作为跟踪点,并向对象跟踪单元2805传送关于确定的跟踪点的信息。
在步S932,对象跟踪单元2805执行跟踪处理以跟踪在步S931检测的跟踪点。这个跟踪处理和上述图1所示的对象跟踪设备1的处理相同。
在步S933,对象跟踪单元2805检测屏幕上的跟踪点的位置。在步S934,对象跟踪单元2805检测在步S933检测的跟踪点的位置和图像中心之间的差。在步S935,对象跟踪单元2805产生和在步S934检测的差对应的摄像机驱动信号,并输出摄像机驱动信号到摄像机驱动单元2804。在步S936,摄像机驱动单元2804根据摄像机驱动信号驱动图像捕获单元2801。因而,图像捕获单元2801这样摇摄或倾斜,使得跟踪点位于图像中心。
在步S937,控制单元2806根据用户的指令确定是否终止监视处理。如果用户未命令停止监视处理,则处理返回步S931,并重复执行S931之后的处理。如果用户已命令停止监视处理,则在步S937确定结束处理。因而,控制单元2806结束监视处理。
如上所述,在安全摄像机系统2800中,运动的对象被自动地检测为跟踪点,并在图像显示器2802上显示其中心点在跟踪点的图像。因而,可以更简单更可靠地执行监视处理。
图78表示按照本发明的安全摄像机系统的结构的另一个例子。安全摄像机系统2900包括图像捕获单元2901、图像显示器2902、对象跟踪单元2903、摄像机驱动单元2904、控制单元2905、指令输入单元2906以及可除去的介质2907。
和图像捕获单元2801类似,图像捕获单元2901例如包括CCD视频摄像机。图像捕获单元2901向图像显示器2902以及对象跟踪单元2903输出捕获的图像。图像显示单元2902显示输入图像。对象跟踪单元2903具有和上述的图1所示的对象跟踪设备1的对象跟踪单元基本相同的结构。摄像机驱动单元2904在对象跟踪单元2903的控制下驱动图像捕获单元2901摇摄或沿预定方向倾斜。
控制单元2905例如包括微型计算机并控制每个元件。指令输入单元2906包括各种按钮和开关以及遥控器。指令输入单元2906向控制单元2905输出对应于用户指令的信号。包括半导体存储器、磁盘、光盘、或磁光盘的可除去的介质2907根据需要和控制单元2905相连。可除去的介质2907根据需要向控制单元2905提供程序和各种类型的数据。
下面参照图79所示的流程图说明控制单元2905的操作。
在步S961,控制单元2905确定用户是否规定了跟踪点。如果跟踪点未被规定,则处理前进到步S969,控制单元2905确定用户是否命令停止处理,如果用户未命令停止处理,则处理返回步S961,并重复执行S961之后的处理。
即,在这个处理期间,由图像捕获单元2901捕获的图像捕获区域的图像被输出到图像显示器2902,其显示该图像。如果用户(观察者)停止监视安全区域的处理,则用户操作指令输入单元2906,命令控制单元2905停止处理。当控制单元2905被命令停止处理时,控制单元205则停止监视处理。
在另一方面,如果用户观察在图像显示器2902上显示的图像并发现任何潜伏的小偷,则用户规定一个点作为跟踪点,在该点显示潜伏的小偷。用户通过操作指令输入单元2906规定这个点。当用户规定跟踪点时,在步S961确定跟踪点被规定,并且处理前进到步S962,执行跟踪处理。在步S962到步S967执行的处理和在图77所示的步S932到S937执行的处理相同。即,通过执行这个操作,图像捕获单元2901被这样驱动,使得规定的跟踪点位于屏幕的中心。
在步S967,控制单元2905确定是否命令停止监视。如果控制单元2905被命令停止监视,则控制单元2905停止处理。不过,如果控制单元2909未被命令停止监视,则处理前进到步S968,控制单元2905确定是否其被命令停止跟踪。例如,当用户识别出被规定为跟踪点的可能的小偷不是小偷时,用户可以操作指令输入单元2906,命令控制单元2905停止跟踪。如果,在步S968,控制单元2905确定其未被命令停止跟踪,则处理返回步S962,执行在步S962之后的处理。即,在这种情况下,继续跟踪跟踪点的操作。
如果在步S968控制单元2905确定其已被命令停止跟踪,则停止跟踪操作。则处理返回步S961,并重复执行步S961之后的处理。
因而,在安全摄像机系统2900中,由用户规定的跟踪点的图像在图像显示器2902的中心被显示。因而,用户可以选择任何所需的图像并可以仔细地监视该图像。
本发明不仅可以应用于电视接收机和安全摄像机系统而且也可以应用于各种类型的对象跟踪设备。
虽然上面的说明是根据帧参照图像处理进行的,但是本发明可以应用于根据场进行的图像处理。
上述的一系列处理不仅可以由硬件而且可以由软件来执行。当上述的一系列处理由软件执行时,软件程序被从网络或记录介质下载到被包含在专用硬件中的计算机中或可以通过在其中安装各种程序来执行各种功能的计算机中(例如通用个人计算机)。
如图76或78所示,这种记录介质的例子不仅包括从设备被单独地分配给用户的可除去的介质2807或2907以便向用户提供程序,例如磁盘(包括软盘)、光盘(包括紧致只读盘存储器(CD-ROM)和数字通用盘(DVD))、磁光盘(包括小型盘(MD)),以及半导体存储器,也包括ROM和用于存储程序并被包括在被提供给用户的设备中的硬盘。
在本发明中,描述存储在记录介质中的程序的步骤不仅包括以上述的顺序执行的处理,而且也包括可以被并行地或独立地执行的处理。
此外,如同本说明中使用的,“系统”指的是多个装置的逻辑组合;所述多个装置不必被包括在一个本体中。
图80表示按照本发明的安全摄像机系统3001的一种示例的结构。在安全摄像机系统3001中,由例如包括CCD视频摄像机的图像捕获单元3021捕获的图像被在图像显示器3023上显示。跟踪对象检测单元3024从图像捕获单元3021输入的图像中检测要跟踪的对象,并把检测结果输出到对象跟踪单元3026。对象跟踪单元3026具有和图1所示的上述的对象跟踪设备1的对象跟踪单元基本相同的结构。
对象跟踪单元3026这样工作,使得跟踪由图像捕获单元3021传送的图像中由跟踪对象检测单元3024规定的跟踪点。区域设置单元3025设置包括由图像捕获单元3021捕获的图像中的跟踪点的对象周围的一个预定区域,并向图像校正单元3022输出表示该区域的位置的位置信息。图像校正单元3022校正由图像捕获单元3021捕获的图像中由区域设置单元3025设置的区域内的图像,使得从该区域中的图像中除去模糊(散焦模糊),并向图像显示器3023输出该图像。摄像机驱动单元3029驱动图像捕获单元3021,使得在对象跟踪单元3026的控制下捕获其中心在跟踪点的图像。
控制单元3027例如包括微型计算机,并控制每个元件。包括半导体存储器、磁盘、光盘或磁光盘的可除去的介质3028根据需要和控制单元3027相连。可除去的介质3208根据需要向控制单元3027提供程序和各种类型的数据。控制单元3027还通过输入/输出接口(未示出)接收用户指令(例如命令)。
下面参照图81所示的流程图说明监视处理。当安全摄像机系统3001被接通电源时,图像捕获单元3021捕获安全区域的图像,并把捕获的图像通过跟踪对象检测单元3024、对象跟踪单元3026以及图像校正单元3022输出到图像显示器3023。在步S1001,跟踪对象检测单元3024执行从图像捕获单元3021输入的图像中检测要被跟踪的对象的处理。例如,当检测运动的对象时,跟踪对象检测单元3204检测例如要被跟踪的对象的具有最高亮度的点或中心点作为跟踪点,并向对象跟踪单元3026输出关于确定的跟踪点的信息。
在步S1002,对象跟踪单元3206执行跟踪处理以跟踪在步S1001检测的跟踪点。因而,由图像捕获单元8021捕获的图像中的要被跟踪的对象(例如人或动物)的跟踪点(例如眼睛或头部的中心)被跟踪。指示跟踪点的位置信息被输入到区域设置单元3025。
在步S1003,区域设置单元3025根据从对象跟踪单元3026的输出设置在要跟踪的对象周围的一个预定区域(例如其中心在跟踪点的具有预定尺寸的矩形)作为校正区域。
在步S1004,图像校正单元3022执行图像校正处理,以校正在由图像捕获单元3021捕获的图像中的由区域设置单元3025设置的校正区域内的图像。下面参照图93详细说明图像校正处理。这个处理使得在校正区域内产生不模糊的清晰图像。
在步S1005,图像显示单元3023输出在步S1004校正的图像,即,其中只有在校正区域内的图像是特别清楚的由图像捕获单元3021捕获的图像。
在步S1006,对象跟踪单元3026根据由步S1002的处理而获得的跟踪结果检测对象的运动,并产生用于驱动摄像机的摄像机驱动信号,使得可以捕获运动的对象的图像。对象跟踪单元3026然后向控制单元3027输出摄像机驱动信号。在步S1007,摄像机驱动单元3027根据摄像机驱动信号驱动图像捕获单元3021。因而,图像捕获单元3021摇摄或倾斜,使得跟踪点总是位于屏幕的内部。
在步S1008,控制单元3027根据用户指令确定是否终止监视处理。如果用户未命令停止监视处理,则处理返回步S1001,重复执行S1001之后的处理。如果用户已命令停止监视处理,则在步S1008确定结束处理。因而控制单元3027终止监视处理。
此外,控制信号被输出到摄像机驱动单元3029,以驱动摄像机(图像捕获单元3021),使得摄像机根据由跟踪对象检测单元3024输出的关于跟踪点的信息跟踪要跟踪的检测的对象,并在图像显示器3023的屏幕内部显示跟踪点(跟踪点不移动到屏幕之外)。此外,向区域设置单元3025和控制单元3027输出跟踪结果,例如关于在屏幕上的跟踪点的位置信息。
图82A-C表示在这种情况下在图像显示器3023上显示的时间序列图像的例子。图82A表示由图像捕获单元3021捕获的要跟踪的对象3051的图像。在这些例子中,向左方跑的人的图像被捕获作为对象3051。在图82B中,对象3051从图82A所示的位置朝左运动。在图82C,对象3051从图82B所示的位置进一步朝左方运动。
跟踪对象检测单元3024在图81所示的步S1001检测对象3051,并向对象跟踪单元3026输出对象3051(人)的眼睛作为跟踪点3051A。在步S1002,对象跟踪单元3026执行跟踪处理。在步S1003,区域设置单元3025设置要跟踪的对象3051(跟踪点3051A)周围的一个预定区域为校正区域3052。
如上所述,对象跟踪单元3026根据跟踪点3051A跟踪对象3051。因而,当对象3051运动时,跟踪点3051A也运动,跟踪结果(位置)被输出到区域设置单元3025。因而,如图82A-82C所示,随着对象3051向左运动,校正区域3052也向左移动。
例如,对应于运动的对象3051(跟踪点3051A)的校正区域3052被按下述设置。图83表示其中在跟踪点周围设置具有预定尺寸的一个矩形区域作为校正区域。在图83中,首先设置校正区域3071A。例如,其中心在跟踪点3051A的一个预定区域被设置为第一校正区域3071A。如果用户规定校正区域,该区域被设置为第一校正区域3071A。此时,区域设置单元25在其内部存储器中存储校正区域3071A的左上角的坐标(X,Y)。如果对象3051的跟踪点3051A运动,则对象跟踪单元3026便开始这样跟踪,使得作为跟踪结果向区域设置单元3025传送沿X轴方向(图中的水平方向)和沿Y轴方向(图中的垂直方向)关于跟踪点3051A的位置(或移动距离)的信息。
接着,根据左上角的上述的坐标设置校正区域。例如,当跟踪点3051A在屏幕上沿X轴方向移动x,沿Y轴方向移动y时,区域设置单元3025在校正区域3071A的左上角的坐标(X,Y)上加上x和y,从而计算坐标(X+x,Y+y)。区域设置单元3025存储这些坐标作为新的校正区域3071B的左上角的坐标。并设置校正区域3071B。如果跟踪点3051A再沿X轴方向移动a,沿Y轴方向移动b,则区域设置单元3025把a和b加到校正区域3071A的左上角的坐标(X+x,Y+y),从而计算坐标(X+x+a,Y+y+b)。区域设置单元3025存储这些坐标作为新的校正区域3071C的左上角的坐标,并设置校正区域3071C。
因而,随着对象(跟踪点)运动,校正区域也运动。
此外,如上所述,由图像校正单元3022对在校正区域3052内部的图像进行图像校正处理(图81所示的步S1004),使得消除图像的模糊。然后该图像被在图像显示器3023上显示。因而,在校正区域3052内部的图82A-C所示的图像中的部分图像被清楚地显示。相反,和在区域3052内部的图像相比在校正区域3052的外部的背景3053的图像被不清楚地显示。
因而,在图像显示器3023上显示的图像的校正区域3052内的对象总是被清楚地显示。因此,观看图像显示器3023的用户自动地观看对象3051。结果,例如,用户可以更快地发现小偷或运动的对象。此外,因为对象3051被清楚地显示,用户可以正确地识别运动的对象(例如人)是什么(人)。
如上所述,因为对象跟踪单元3026具有和图1所示的对象跟踪设备1的对象跟踪单元基本相同的结构,不再重复其说明。
通过按照上述方式构成图80所示的对象跟踪单元3026,即使在要跟踪的对象3051(图82)转动或者甚至当发生遮断时,或者甚至当对象3051的跟踪点3051A由于场景改变而暂时不被显示时,在图像中运动的对象3051(跟踪点3051A)也可以被精确地跟踪。
因而,关于要跟踪的对象3051的跟踪点3051A的位置信息作为图80所示的对象跟踪单元3026的跟踪结果被输出到区域设置单元3025。因而,区域设置单元3025可以设置上述的校正区域3052。此后,图像校正单元3022除去区域3052中的图像的模糊(散焦模糊)。
下面详细说明图80所示的图像校正单元3022的结构和操作。图84是图像校正单元3022的详细结构的方块图。在这个例子中,图像校正单元3022包括控制信号产生单元3741,用于根据区域设置单元3025的输出信号产生控制信号,并把控制信号传送给每个元件,图像特征检测单元3742,用于检测输入图像的特征,地址计算单元3743,用于根据控制信号计算地址,系数ROM 3744,用于根据由地址计算单元3743计算的地址输出预先存储的预定系数,以及区域提取单元3745,用于提取对应于输入图像中的预定区域的多个像素。
图像校正单元3022还包括内积计算单元3746和图像组合单元3747。内积计算单元3746计算由区域提取单元3745输出的像素值和由系数ROM 3744输出的系数的内积,并输出修正的像素值。图像组合单元3747组合校正区域3052中的图像和背景3053,并输出组合的图像。
图85是表示由控制信号产生单元3741产生的控制信号。控制信号A是用于识别在输入图像中要修正的区域(校正区域3052)的信号。根据区域设置单元3025的输出而产生控制信号A,并将其传送给区域提取单元3745和图像组合单元3747。控制信号B是用于识别表示模糊程度的参数σ的信号,这在下面进行说明。控制信号B被传送给地址计算单元3743。参数σ的值例如可以通过控制单元3027由用户指令确定,或者可以被预先确定。
控制信号C是用于命令转换用于求解模糊的模型表达式的关系表达式的加权Wa的信号,这在下面进行说明。控制信号C被传送给地址计算单元3743。控制信号D是用于命令转换用于检测图像特征的阈值的信号。控制信号D被传送给图像特征检测单元742。控制信号C和D可以考虑安全摄像机系统3001的特征被预先确定。或者,控制信号C和D可以通过控制单元3027根据用户指令而被产生。
下面说明图像模糊的原理。假定摄像机的焦距被合适地设置,并设不模糊的图像的像素值X是真实值。设具有散焦模糊的图像的像素值Y是被观测的值。当沿水平方向图像的坐标由x表示,沿垂直方向图像的坐标由y表示,以识别图像的多个像素,该真实值可被表示为X(x,y),观测值可被表示为Y(x,y)。
按照本发明,使用下式(6)作为模糊的模型表达。在式(6)中,使用由下式(7)表示的高斯函数。通过利用高斯函数卷积真实值X(x,y),可以获得观测值Y(x,y)。
在式(6)中,参数σ表示模糊值。
按照式(6),通过利用系数W加权按照变量i和j(-r<i<r,-r<j<r)变化的多个真实值X(x+i,y+j),可以获得一个观测值Y(x,y)。因而,根据具有模糊的图像的多个像素的值可以获得没有模糊的图像的一个像素的值。
此外,模糊值根据上述的参数σ而改变。当参数σ的值相对小时,关于真实值的信息相对于观测值不会宽地分散。因而,获得具有较少模糊的图像。相反,当参数σ相对大时,关于真实值的信息相对于观测值宽地分散。因而,获得具有相对大的模糊的图像。
如上所述,模糊值根据上述的参数σ而改变。因此,为了精确地校正图像模糊,参数σ的值需要被合适地确定。按照本发明,用户规定参数σ的值。或者,通过考虑安全摄像机系统1的特征来预先设置最佳值。
下面参照图86-89更详细地说明图像模糊的原理。图86A表示为简单起见当像素沿一个维度被水平地排列时一个给定图像的真实值X0-X8的图。图86C表示对应于图86A的观测值的图。图86B以条形图的形式表示系数W(i)的大小的图。在这些例子中,变量i的范围是-2<i<2。中间的条表示系数W(0)。从最左到最右的条表示W(-2),W(-1),W(0),W(1),和W(2)。
其中按照式(6)可以获得图86C中的观测值Y2如下 Y2=W(-2)X2+W(-1)X3+W(0)X4+W(1)X5+W(2)X6 类似地,为了获得图86C中的观测值Y0,通过进行关于图87所示的帧3790-1中的真实值的计算,可以获得如下的观测值Y0 Y0=W(-2)X0+W(-1)X1+W(0)X2+W(1)X3+W(2)X4 此外,为了获得观测值Y1,通过进行关于图87所示的在帧3790-2中的真实值的计算,可以获得观测值Y1如下 Y1=W(-2)X1+W(-1)X2+W(0)X3+W(1)X4+W(2)X5 此外,观测值Y3和Y4可以用相同的方式被获得。
图88和89以两维表示在图86A和图86C之间的关系。即,图84中每个像素的值是一个观测值,并通过使用图89中的每个像素的值作为真实值被获得。在这种情况下,可以获得对应于图88所示的像素A的观测值Y(x,y)如下 (Y(x,y)=W(-2,-2)X(x-2,y-2)+W(-1,-2)X(x-1,y-2) +W(0,.2)X(x,y-2)...+W(2,2)X(x+2,y+2) 即可以根据对应于25(=5×5)个像素的真实值获得对应于图88所示的像素A的观测值,所述25个像素由图89所示的其中心在像素A′(对应于像素A)的帧表示。类似地,可以根据对应于其中心在图89所示的像素B′(对应于像素B)的25个像素的真实值获得图88所示的对应于像素B(在像素A右边的像素)的观测值。可以根据对应于其中心在图89所示的像素C′(对应于像素C)的25个像素的真实值获得图88所示的对应于像素C的观测值。可以利用下式获得分别对应于图88所示的像素B和C的观测值Y(x+1,y)和Y(x+2,y) Y(x+1,y)=W(-2,-2)X(x-1,y-2)+W(-1,-2)X(x,y-2)+W(0,-2)X(x-1,y-2)...+W(2,2)X(x+3,y+2) Y(x+2,y)=W(-2,-2)X(x,y-2)+W(-1,-2)X(x+1,y-2)+W(0,-2)X(x+2,y-2)...+W(2,2)X(x+4,y+2) 在对应于图88所示的所有像素的观测值被计算之后,可以获得由下式(8)-(11)表示的矩阵的行列式 Yf=WfXf ...(11) 其中,如果可以求解式(11)中的矩阵Wf的逆矩阵,则可以根据观测值Yf获得真实值Xf。即,可以根据模糊图像的像素获得不模糊的图像的像素,因而校正模糊的图像。
不过,如参照图86-89所述,由式(8)-(11)表示的矩阵的行列式相对于观测值的像素包括许多真实值的像素。因此,难于获得逆矩阵(例如在图87所示的例子中,对于观测值的一个像素需要真实值的5个像素。
因而,除去式(8)-(11)之外,引入由下式(12)至(15)表示的关系式 Wa(p1)W1(p2)(X(x,y)-X(x,y-1))=0 ...(12) Wa(p1)W2(p2)(X(x,y)-X(x+1,y))=0 ...(13) Wa(p1)W3(p2)(X(x,y)-X(x,y+1))=0 ...(14) Wa(p1)W4(p2)(X(x,y)-X(x-1,y))=0 ...(15) 式(12)-(15)对两个相邻像素值的差设置限制。当要获得的真实值处于图像的平淡的部分(相邻像素之间的值没有显著的不同的部分)时,没有矛盾。不过,当要获得的真实值处于图像的边沿部分(相邻像素之间的值具有显著不同的部分)时,则具有矛盾。因而,被校正的图像可能劣化。为此,为了合适地校正模糊图像,对每个像素需要合适地使用4个公式(12)-(15)之一,使得相邻像素不跨过真实值的边沿部分。
因此,图像特征检测单元3742确定图像的边沿部分和平淡(flat)部分,产生表示图像沿哪个方向(例如水平方向或垂直方向)变平淡的代码p2。下面参照图94详细说明图像特征检测单元3742的操作。按照本发明,假定在输入图像(观测值)中的边沿部分和平淡部分的确定结果等于真实值的边沿部分和平淡部分的确定结果。
在式(12)-(15)中,作为代码p2的函数的函数W1-W4是加权函数。按照本发明,通过按照代码p2控制这些函数W1-W4,可以对每个像素选择和使用一个关系式。图90表示对应于代码p2的函数W1-W4的值。随着这个加权函数的值的增加,该部分变得更平淡。相反,随着这个加权函数的值的减小,该部分变得较不平淡(成为边沿的可能性增加)。
代码p2由4位构成。这些位由最左边的位起分别表示一个图像是否沿上方、右方、下方和左方是平淡的。如果通图像沿一个方向是平淡的,则对应的位被设置为“1”。例如,代码p2为“0001”表示图像从感兴趣的像素沿左方是平淡的,但是沿其它的方向不平淡(即具有边沿)。因此,当代码p2是“0001”时,加权函数W4的值增加,式(15)的加权和其它的式(12)-(14)的加权相比具有大的值。因而,代码p2可以改变4个关系式的加权。因而,可以对于每个像素合适地选择和使用4个关系式之一,使得相邻的像素不和边沿交叉。
例如,如图91所示,假定图像从感兴趣的像素沿上方和左方平淡,并且图像沿右方和下方具有边沿。通过改变4个公式(12)-(15)的加权,限制“Xa-Xb=0”和“Xa-Xc=0”被应用于相邻像素值之间的差。不过,不应用限制“Xa-Xd=0”和“Xa-Xe=0”。注意Xb,Xc,Xd,和Xe分别表示沿右方、下方、上方和左方和感兴趣的像素X相邻的像素。
此外,在式(12)-(15)中,函数Wa是不同的加权函数。函数Wa的值也按照代码p1而改变。通过改变函数Wa的值,可以控制校正的图像的总噪声和细节。当函数Wa的值大时,用户感到在校正的图像中具有很小的噪声影响,因此,噪声的感觉减小。相反,当函数Wa的值小时,用户感到在校正的图像中具有增加的细节影响,因此,细节的感觉增加。应当注意,改变函数Wa的值的代码p1对应于图85所示的控制信号C。
如上所述,除去式(8)-(11)之外,还引入由式(12)-(15)表示的关系式。因而,可以解出由式(16)表示的逆矩阵。结果,可以根据观测值获得真实值。
Xs=Ws-1Ys...(16) 按照本发明,要乘以观测值Ys的系数Ws-1被预先存储在系数ROM 3744中。由内积计算单元3746对由区域提取单元3745提取的输入图像计算由式(16)表示的矩阵的行列式(内积)。因而,不需要每次图像被校正时都进行逆矩阵的计算。可以只通过内积计算来校正模糊。不过,因为参数σ和上述的4个关系式根据输入图像而改变,对于参数σ和上述的4个关系式的每个可能的组合都计算逆矩阵。此后,确定对应于参数σ和代码p2的地址。关于这些地址的不同的系数被存储在系数ROM 3744中。
不过,例如,如果加权函数W1-W4的组合对于图89所示的帧(t)中的25(=5×5)个像素的每一个都被改变,并且改变4个关系式,则组合的数量是15(函数W1-W4的组和数)的25次幂(帧(t)中的像素数)。如果对于每个组合都计算逆矩阵,则系数的数量变大。因为系数ROM 3744的容量有限,系数ROM 3744不能存储所有的系数。在这种情况下,处于帧(t)的中心的代码p2只对像素Xt被改变,使得转换关系式。对于帧(t)中的像素Xt之外的像素,代码p2可以被固定于一个伪值例如“1111”。因而,可以把组合系数的数量限制为15。
在上面的说明中,为了说明模糊的原理(模型表达),高斯函数的域被确定为-2≤(x,y)≤2。实际上,高斯函数的域被这样确定,使得支持足够大的值的参数σ。此外,如果关系式可以描述图像的特征,则不限于如式(12)-(15)表示的关系式。因此,在具有有限容量的系数ROM 3744的情况下,这些关系式只对于模糊的中心状态(center phase)(Xt)被转换。不过,本发明不限于此。用于转换关系式的方法可以根据系数ROM 3744的容量而改变。
下面参照图92说明由图像校正单元3022进行的模糊校正处理。在步S1801,图像校正单元3022检测要被处理的区域。要被处理的区域是要进行模糊校正的区域,即校正区域3052。根据从区域设置单元3025输出的信号检测该区域。
在步S1802,图像校正单元22获取参数σ的值。参数σ的值可以由用户规定或者被预先确定。在步S1803,图像校正单元3022也执行图像校正处理,其将在下面参照图93进行说明。通过这个处理,模糊的图像被校正并被输出。
因而,在校正区域3052中的图像模糊被除去,因此,可以获得清楚的图像。
下面参照图93详细说明图92所示的在步S1803的图像校正处理。
在步S1821,图像特征检测单元3742执行图像特征提取处理,其在下面参照图94进行说明。因而,确定相对于感兴趣的像素沿哪个方向图像是平淡的。产生参照图90说明的代码p2,并被输出到地址计算单元3743。
在步S1822,地址计算单元3743计算系数ROM 3744的地址。例如,系数ROM 3744的地址由对应于代码p2(图像特征检测单元3742的输出)的4位构成,所述4位表示参数σ的值(图85所示的控制信号B),2位对应于用于转换上述的4个关系式的加权函数Wa的代码p1(图85所示的控制信号C)。这个地址具有从0到1023的1024个值(210)。地址计算单元3743根据图像特征检测单元3742的输出、控制信号B和控制信号C来计算对应的地址。
在步S1823,地址计算单元3743根据在步S1822计算的地址从系数ROM 3744读出系数,并把读出的系数传送给内积计算单元3746。
在步S1824,内积计算单元3746根据在步S1823读出的系数对每个像素计算内积,并向图像组合单元3747输出内积计算结果。因而,如上所述,可以由观测值获得真实值,因此,可以校正模糊的图像。
在步S1825,图像组合单元3747执行图像组合处理,其在下面参照图97进行说明。因而,确定是输出内积计算单元3746的处理结果还是对于每个像素直接输出输入图像。在步S1826,后处理单元3747输出校正的和选择的图像。
下面参照图94说明在图93所示的步S1821进行的图像特征检测处理。在步S1841,图像特征检测单元3742提取块。在步S1842,图像特征检测单元3742计算在步S1841提取的块之间的差(其细节在下面参照图96进行说明)。在步S1843,图像特征检测单元3742比较在步S1842计算的块差和预定的阈值。在步S1844,图像特征检测单元3742根据比较结果输出代码p2,其表示相对于感兴趣的像素图像为平淡的方向。
下面参照图95和96更详细地说明图像特征检测处理。图95是表示图像特征检测单元3742的详细结构的方块图。在图的左侧,提供有块剪切单元3841-1到3841-5。例如,如图96A-96E所示,块剪切单元3841-1到3841-5提取5个块,每个包括9(=3×3)个像素,其中的一个像素是由黑圈表示的感兴趣的像素(在此时要被校正的像素)。
图96A所示的块3881是其中心是感兴趣的像素的中间块。块3881被块剪切单元3841-5提取。图96B所示的块3882是通过把块3881向上移动一个像素而获得的顶部块。块3882由块剪切单元3841-3提取。图96C所示的块3883是左块,其通过把块3881向左移动一个像素而被获得。块3883由块剪切单元3841-4提取。
图96D所示的块3884是底部块,其是通过把块3881向下移动一个像素而获得的。块3884由块剪切单元3841-1提取。图96E所示的块3885是右块,其通过把块3881向右移动一个像素而被获得。块3885由块剪切单元3841-2提取。在步S1841,对于每个感兴趣的像素提取5个块3881-3885。
关于由块剪切单元3841-1到3841-5提取的每个块的像素的信息被输出到块差计算单元3842-1到3842-4。例如,块差计算单元3842-1到3842-4按照下述计算每个块中的像素之间的差。
在块3881的9个像素当中,在最上行中的3个像素(像素的值)从最左的像素起被表示为a(3881),b(3881)和c(3881)。在中间行的3个像素从最左像素起被表示为d(3881),e(3881)和f(3881)。在最下行中的3个像素从最左像素起被表示为g(3881),h(3881)和i(3881)。类似地,在块3884的9个像素当中,在最上行中的3个像素(像素的值)从最左的像素起被表示为a(3884),b(3884)和c(3884)。在中间行的3个像素从最左像素起被表示为d(3884),e(3884)和f(3884)。在最下行中的3个像素从最左像素起被表示为g(3884),h(3884)和i(3884)。块差计算单元3842-1按照下述计算块差B(1) B(1)=|a(3881)-a(3884)|+|b(3881)-b(3884)|+|c(3881)-c(3884)|+...+|i(3881)-i(3884)| 即,块差B(1)是在块3881(中间)的像素值和块3884(底部)中的对应像素值之间的绝对差之和。类似地,块差计算单元3842-2计算在块3881(中间)的像素值和块3885(右方)中的对应像素值之间的绝对差之和,从而获得块差B(2)。此外,块差计算单元3842-3计算在块3881(中间)的像素值和块3882(顶部)中的对应像素值之间的绝对差之和,从而获得块差B(3)。块差计算单元3842-3计算在块3881(中间)的像素值和块3883(左方)中的对应像素值之间的绝对差之和,从而获得块差B(4)。
在步S1842,如上所述,计算块差B(1)-B(4),它们是中间块和沿水平与垂直4个方向的每个块之间的差。其结果被输出到对应的阈值确定单元3843-1到3843-4以及最小方向确定单元844。
阈值确定单元3843-1到3843-4分别比较块差B(1)到B(4)和预定的阈值。应当注意,这些阈值根据控制信号D而被转换。如果块差B(1)到B(4)分别大于预定阈值,则阈值确定单元3843-1到3843-4便确定该方向是边沿部分,因此,阈值确定单元3843-1到3843-4输出“0”。如果块差B(1)到B(4)分别小于预定阈值,则阈值确定单元3843-1到3843-4便确定该方向是平淡部分,因此,阈值确定单元3843-1到3843-4输出“1”。
在步S1843,使块差和阈值相比较,如上所述。阈值确定单元3843-1到3843-4的输出结果以4位代码的形式被输出到选择器845。例如,如果每个块差B(1)、B(3)、和B(4)都小于阈值,而块差B(2)大于阈值,则输出代码“1011”。
在一些情况下,所有块差B(1)-B(4)都大于阈值(即图像没有平淡部分)。在这种情况下,从阈值确定单元3843-1到3843-4输出代码“0000”。不过,如图90所示,当代码p2是“0000”时,对应的加权函数W1-W4便不能被识别。因此,选择器3845确定阈值确定单元3843-1到3843-4的输出结果是否是“0000”。如果选择器3845确定阈值确定单元3843-1到3843-4的输出结果是“0000”,则选择器作为代码p2输出来自最小方向确定单元3844的输出。
最小方向确定单元3844确定块差B(1)-B(4)当中的最小值,并在阈值确定单元3843-1到3843-4输出代码的同时向选择器3845输出对应于确定结果的4位代码。例如,如果确定块差B(1)是块差B(1)-B(4)中最小的,则最小方向确定单元3844向选择器3845输出代码“1000”。
这种设计使得即使当阈值确定单元3843-1到3843-4输出代码“0000”时,也允许作为代码p2从最小方向确定单元3844输出代码“1000”。当阈值确定单元3843-1到3843-4的输出结果不是“0000”时,作为代码p2输出阈值确定单元3843-1到3843-4的输出结果。在步S3844,这样便产生代码p2并被输出到地址计算单元743。
下面参照图97说明图93所示的步S1825的图像组合处理。在步S1861,图像组合单元3747根据来自内积计算单元3746的输出结果计算像素的分散程度。因而,可以计算在感兴趣的像素周围的像素分散程度。在步S1862,图像组合单元3747确定在步S1862计算的分散程度是否大于预定阈值。
如果在步S1862确定分散程度大于阈值,则图像组合单元3747在步S1863把输入图像转换标记设置为“开”(ON)。相反,如果确定分散程度不大于阈值,则图像组合单元3747在步S1864把输入图像转换标记设置为“关”(OFF)。
如果内积计算单元3746对未发生模糊的输入图像的局部区域内的像素进行内积计算,则可以增加在该像素周围的图像的活动性,因此,图像质量可能变劣。其中,如果分散程度大于预定阈值,则确定该像素是变劣的像素,并且把输入图像转换标记设置为“开”。当该像素被输出时,其输入图像转换标记被设置为“开”的像素被输入图像的像素代替(即像素返回到原始像素)。
在步S1865,图像组合单元3747确定是否所有像素都被检查过。如果确定尚未检查完所有像素,则处理返回步S1861,并重复执行步S1861之后的处理。如果在步S1865确定已经检查过所有像素,则在步S1866图像组合单元3747组合在校正区域3052中的没有模糊的图像和背景3053的图像,并向图像显示器3023输出组合的图像。
因而,对于每个像素确定是输出内积计算的结果还是直接输出输入图像的像素。这种设计可以通过校正局部图像使得在输入图像中没有模糊而阻止图像变劣。
下面参照图98和99更详细的说明这种现象。图98是图像组合单元3747的示例性结构。内积计算单元3746的输出结果是块剪切单元3091的输入。如图99所示,块剪切单元3901剪切其中心是感兴趣的像素a5的9(=3×3)个像素a1-a9,并把这些像素输出到分散计算单元3802。分散计算单元3802按照下述计算分散程度 其中m表示块中的9个像素(像素值)的平均,v表示每个像素和平均之间的方差之和,即,在块中的像素的分散程度。在步S1861,这样计算分散程度,并把计算结果输出到阈值确定单元3903。
阈值确定单元3903比较分散计算单元3902的输出结果(分散程度)和预定阈值。如果确定分散程度大于阈值,则图像组合单元3747控制选择单元3904把对应于感兴趣的像素的输入图像转换标记设置为“开”。如果确定分散程度不大于阈值,则图像组合单元3747控制选择单元3904把对应于感兴趣的像素的输入图像转换标记设置为“关”。在步S1862-S1864,这样确定分散程度是否大于阈值。根据确定结果设置输入图像转换标记。
接着,转换单元3905在选择单元3904的最后处理结果和输入图像的像素之间转换。然后转换单元3905输出所选择的一个。即,在校正区域3052中的图像的像素表示选择单元3904的最后处理结果,而背景3053的图像的像素表示输入图像的像素。图像便这样被转换。
因而,对象3051(图82)被跟踪。只有在包括对象3051的校正区域3052中的图像被更新(校正),因此图像的模糊被除去,因而显示清楚的图像。相反,因为背景3053的图像不经除去模糊便被显示,用户可以自动地并仔细地观察对象3051。
在前面的说明中,图像校正单元3022校正由图像捕获单元3021捕获的图像的校正区域3052中的图像,使得除去图像的模糊。不过,图像校正单元3022可以校正校正区域3052中的图像而不除去图像的模糊,使得在该区域中的每个像素的亮度和颜色设置被改变,并且在该区域中的图像被简单地加亮。按照这种设计,虽然用户不能精确地观看对象3051,但是可以自动地和仔细地观察对象3051。此外,和除去图像的模糊相比,图像校正单元3022的配置可被简化。结果,可以用低的成本实现对象跟踪设备1。
上述的一系列处理不仅可以由硬件而且可以由软件来执行。当上述的一系列处理由软件执行时,软件程序被从网络或记录介质下载到被包含在专用硬件中的计算机中或可以通过在其中安装各种程序来执行各种功能的计算机中(例如通用个人计算机)。
在本说明中,用于说明在记录介质中存储的程序的步骤不仅包括以上述的顺序执行的处理,而且包括被并行地或者独立地执行的处理。
标号 1 对象跟踪设备,11 模板匹配单元,12 运动估计单元,13 场景改变检测单元,14 背景运动估计单元,15 区域估计相关处理单元,16 转移候选者存储单元,17 跟踪点确定单元,18 模板存储单元,19 控制单元
权利要求
1.一种图像处理设备,包括
第一点检测装置,用于检测在图像中的运动对象的第一点;
跟踪装置,用于基于由第一点检测装置检测到的第一点跟踪图像中的运动对象;
校正区域设置装置,用于根据跟踪结果设置在图像中的要跟踪的对象周围具有预定尺寸的校正区域;
校正装置,用于校正图像中的校正区域内的图像;以及
显示控制装置,用于控制包括由校正装置校正的校正区域中的图像的图像显示。
2.如权利要求1所述的图像处理设备,其中校正装置校正图像的模糊。
3.如权利要求2所述的图像处理设备,其中校正装置包括
传送装置,用于传送用于识别校正区域中的图像的控制信号和指示图像模糊等级的参数;
特征检测装置,用于检测根据控制信号识别的校正区域内的图像的特征,并输出表示检测的特征的特征码;
存储装置,用于存储表示图像模糊等级的参数和对应于由特征检测装置输出的特征码的系数;
读出装置,用于从存储装置中读出所述参数和对应于由特征检测装置输出的特征码的系数;
内积计算装置,用于根据由读出装置读出的系数计算输入图像中的像素值的内积;以及
选择输出装置,用于选择内积计算装置的计算结果和输入图像的像素值之一,并输出所选择的一个;
其中在校正区域中的图像被校正以除去图像的模糊。
4.如权利要求3所述的图像处理设备,其中第一点检测装置包括
第一提取装置,用于在输入图像的预定第一区域中提取要进行内积计算的像素周围的多个像素;
第二提取装置,用于沿多个垂直和水平方向在和第一区域邻接的多个第二区域的每个区域中提取多个像素。
5.如权利要求3所述的图像处理设备,其中所述参数是表示模糊图像的像素和不模糊图像的像素之间的关系的模型表达式中的高斯函数的参数。
6.如权利要求5所述的图像处理设备,其中由存储装置存储的系数是通过计算模型表达式的逆矩阵而获得的系数。
7.如权利要求3所述的图像处理设备,其中选择输出装置包括
第一提取装置,用于提取由内积计算装置进行内积计算的多个像素;
分散计算装置,用于计算表示由第一提取装置提取的多个像素的分散等级的分散度;以及
分散确定装置,用于确定由分散计算装置计算的分散度是否大于预定阈值。
8.如权利要求7所述的图像处理设备,其中选择输出装置还包括像素选择装置,用于根据分散确定装置的确定结果选择内积计算装置的计算结果和输入图像的像素值之一作为像素的输出值。
9.一种图像处理方法,包括
检测在图像中的运动对象的第一点的第一点检测步骤;
基于由第一点检测步骤检测到的第一点跟踪图像中的运动对象的跟踪步骤;
根据跟踪结果设置在图像中的要跟踪的对象周围具有预定尺寸的校正区域的校正区域设置步骤;
校正图像中的校正区域内的图像的校正步骤;以及
控制包括由校正步骤校正的校正区域中的图像的图像显示的显示控制步骤。
全文摘要
本发明涉及图像处理设备和方法、记录介质和程序,具体公开了一种用于提供跟踪点的可靠跟踪的图像处理设备和方法。当在帧n-1中作为跟踪点的人的面部(504)的右眼(502)被跟踪时,并且当跟踪点(501)在帧n中出现时,跟踪点(501)继续被跟踪。当在帧n+1中作为跟踪点(501)的右眼(502)由于要跟踪的对象的面部(504)的转动而消失时,跟踪点被转移到左眼(503),其是和作为包括右眼(502)的对象的面部(504)的一个不同点。本发明可以应用于安全摄像机系统。
文档编号G06T7/20GK101393642SQ20081016105
公开日2009年3月25日 申请日期2005年1月6日 优先权日2004年1月6日
发明者近藤哲二郎, 渡边勉, 大月知之, 向井仁志, 山口信行 申请人:索尼株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1