具体实施方式
下面对照附图对本发明的实施例进行说明。
图1表示摄像机的构成。
摄像机10中,包含有将来自镜头11所输入的被摄体(图中未显示)的光信号变换成电气信号的CCD那样的固体摄像元件12。来自固体摄像元件12的电气信号输入给照相机电路13。照相机电路13,公知包含有采样保持电路,对来自固体摄像元件12的电气信号进行采样保持。通过AGC来调整被采样保持的电气信号的电平,同时由同步信号添加电路来添加同步信号。这样,照相机电路13将来自固体摄像器件12的图像信号变换成模拟视频信号。
照相机电路13所输出的模拟视频信号,进一步通过A/D转换器14转换成数字视频信号。A/D转换器14所输出的数字视频信号提供给运动检测电路(晃动检测机构)18,同时,由存储器控制电路21写入到帧存储器15。
图2表示运动检测电路18的构成。
运动检测电路18,使用例如公知的代表点匹配法,检测出运动矢量。下面对代表点匹配法的概要进行说明。如图3所示,在各个帧的成像区域内,设置多个运动矢量检测区域E1~E4。各个运动矢量检测区域矢量E1~E4的大小相同。另外,各个运动矢量检测区域E1~E4进一步被分割成多个小区域e。本例中,各个运动矢量检测区域E1~E4被分隔成30个小区域e。各个小区域e例如由32像素×16行构成。之后,如图4所示,在各个小区域e中分别设定多个采样点S与1个代表点R。
当前帧中的小区域e内的各个采样点S的成像信号等级(level)(亮度等级),与前帧中的对应的小区域e的代表点R的视频信号等级(亮度等级)之间的差(各个采样点中的相关值),对每一个运动矢量检测区域E1~E4分别求出。之后,将各个运动矢量检测区域E1~E4中,运动矢量检测区域内的所有小区域e之间,相对代表点R的偏位相同的采样点S之间的相关值累积相加。因此,对每一个运动矢量检测区域E1~E4,求出与1个小区域e内的采样点S的数对应的数的相关累积值。
之后,在各个运动矢量检测区域E1~E4内,将相关累积值最小的点相对代表点R的偏位,也即相关性最高的点的偏位,作为该运动矢量检测区域E1~E4的运动矢量抽出。
运动检测电路18,包含有接收来自A/D转换器14的数字视频信号的输入端31,从该输入端31所输入的视频信号,通过滤波器32提供给代表点存储器33与减法电路34。滤波器32是一种数字低通滤波器,用来改善S/N比,通过较少的代表点来确保充足的检测精度。代表点存储器33,将图3中所示的各个运动矢量检测区域E1~E4的小区域e中的、代表点R的位置数据与亮度数据保存起来。
减法电路34,将各个运动矢量检测区域E1~E4的每一个小区域e中的、从代表点存储器33提供的前帧的代表点的亮度数据,与输入端31所提供的当前帧的采样点S的亮度数据相减,计算出其绝对值(各个采样点中的相关值)。将所求出的各个采样点中的相关值,提供给累积相加电路35。
累积相加电路35,将各个运动矢量检测区域E1~E4中的、运动矢量检测区域内的所有小区域中,相对代表点R的偏位相同的采样点之间的相关值累积相加。将相关累积值提供给运算电路36。
运算电路36,求出各个运动矢量检测区域E1~E4的相关累积值的平均值,同时,求出相关累积值最小的像素的位置数据。这样,每一个运动矢量检测区域E1~E4所得到的相关累积值的平均值,以及相关累积值的最小值与相关累积值最小的像素的位置数据,从输出端37提供给微型计算机20(参照图1)。
微型计算机20,根据运算电路36所输入的数据,计算出图像全体的运动矢量(以下简称为“全体运动矢量”)。首先,根据每一个运动矢量检测区域E1~E4的相关累积值最小的像素的位置数据,求出相关累积值最小的像素相对代表点的偏位,将该偏位作为该运动矢量检测区域E1~E4的运动矢量(部分运动矢量)。另外,为了提高部分运动矢量的检测精度,可以使用相关累积值最小的像素的周围4个像素的相关累积值,进行内插,通过这样来计算出相关累积值最小的像素的位置数据。
微型计算机20,对每一个运动矢量检测区域E1~E4,判断相关累积值的平均值除以相关累积值的最小值所得到的值是否大于一定的阈值,以及相关累积值的平均值是否为给定值以上,并判断出各个运动矢量检测区域E1~E4中所求出的部分运动矢量是否可信,也即判断各个运动矢量检测区域E1~E4是有效区域还是无效区域。某个运动矢量检测区域中,如果相关累积值的平均值除以相关累积值的最小值所得到的值大于一定的阈值,且相关累积值的平均值为给定值以上,则该运动矢量检测区域是有效区域。
具体地说,如下那样进行运动矢量检测区域是否为有效区域的判断。首先,在画面的对比度低时,由于亮度差小,因此相关累积值变小。例如在画面全体为白色时,相关累积值变小。这样的情况下,由于没有可靠性,因此在相关累积值的平均值≥给定值时有效。另外,给定值通过实验被决定。
另外,在运动矢量检测区域内有运动物体时,运动物体所占部分与未占部分的相关累积值不同,并且运动物体所占部分取各种相关累积值,其相关累积值一般为较大的值(相关度较低)。因此,在运动矢量检测区域内存在运动物体时,相关累积值的最小值变大的可靠性较高,有可能会误检测出相对运动矢量检测区域的运动矢量(部分运动矢量)。
如果误检测出部分运动矢量,则会误检测出全体运动矢量。但是,在相关累积值的平均值较大时,即使在相关累积值的最小值为某个程度的大小时也可信赖。另外,在相关累积值的平均值较小时,如果相关累积值的最小值不是非常小,就无法信赖。因此,具体地说,将满足(相关累积值的平均值)/(相关累积值的最小值)>5的条件的运动矢量检测区域判断为有效区域,通过不使用不满足该条件的运动矢量检测区域的部分运动矢量,来防止误检测的弊端。
通过这两个条件,来判断各个运动矢量检测区域是否为有效区域。之后,求出判断为有效区域的运动矢量检测区域的部分运动矢量的平均值,将其作为帧之间的运动量也即全体运动矢量Vn。全体运动矢量Vn表示帧之间的运动量及其方向。微型计算机20,使用全体运动矢量Vn来求出积分矢量Sn。关于积分矢量Sn的求法将在后面说明。积分矢量Sn表示帧存储器15的中心到显示区域(剪切框)的中心之间的距离与方向。
手抖动校正中,通过改变帧存储器15内的显示区域的位置(图像剪切位置)来进行校正。图5表示帧存储器15与剪切框100之间的关系。将被帧存储器15内的剪切框100所包围的区域表示为摄像图像。剪切框100的初始位置,被设定在使其中心与帧存储器15的中心相一致的位置上。之后,对应于所检测出的运动矢量,使其位置移动。例如,在向右移动摄像机时的帧存储器15与剪切框100之间的关系如图6所示。如果向右移动摄像机,则被摄体向帧存储器内的左侧移动。这里,通过让剪切框100向着与摄像机的运动方向相反的方向,移动相当于摄像机的运动量,来消除所显示的图像(构图)的变化,抵消手抖动。
图7表示积分矢量Sn与剪切框100之间的关系。剪切框100的位置,在以帧存储器15的中心O为原点的XY坐标系中,通过剪切框100的中心的坐标Ot来获得。如果设当前帧的积分矢量为S,则从帧存储器15的中心O,向通过积分矢量S所表示的方向,移动通过积分矢量S所表示的距离的点,为剪切框100的中心Ot。
这里,手抖动校正的范围,如图8所示,为剪切框100位于帧存储器15的端部之间的范围。也即,积分矢量S的水平成分Sh、垂直成分Sv的范围分别为图8的Sh-min~Sh-max,Sv-min~Sv-max。
如图9所示,在摄像机大幅度运动,积分矢量S的水平成分Sh超出了校正范围的界限值的情况下,如果水平成分Sh小于Sh-min,则将水平成分Sh作为Sh-min(界限值),如果水平成分Sh大于Sh-max,则将水平成分Sh作为Sh-max(界限值)。在积分矢量S的垂直成分Sv超出了校正范围的界限值的情况下也一样,如果垂直成分Sv小于Sv-min,则将垂直成分Sv作为Sv-min(界限值),如果垂直成分Sv大于Sv-max,则将垂直成分Sv作为Sv-max(界限值)。
积分矢量Sn的计算方法,因“手抖动状态”或“平移或俯仰状态“而不同。这些状态由微型计算机20来进行判断。将表示是“手抖动状态”,还是“平移或俯仰状态”的数据,保存到微型计算机20的存储器(图中未示出)中。
在“手抖动状态”下,微型计算机20使用从焦距检测电路19所取得的35mm胶片(film)换算的透镜焦距F、预先设定的焦距的最小值Fmin与最大值Fmax、以及预先设定的积分矢量的衰减系数的最小值Kmin与最大值Kmax,按照下面的式(2),来求出积分矢量衰减系数K。
之后,根据下面的式(3),计算出当前帧的积分矢量Sn。
Sn=K·(Sn-1-C)+Vn+C ...(3)
上述式(3)中,K为根据上述式(2)所计算出的积分矢量的衰减系数。Vn为前帧与当前帧之间的全体运动矢量Vn。Sn-1为前帧的积分矢量。C为衰减中心。衰减中心C的初始值为0,每一次通过上述式(3)计算出积分矢量Sn时,便根据下面的式(4)进行更新。
C=Kc·C ...(4)
上述式(4)中,Kc为预先设定的衰减中心的衰减系数。
“平移或俯仰状态”中,如下式(5)所示,微型计算机20,将微型计算机20的存储器上所存储的1个前帧的积分矢量Sn-1作为当前帧的积分矢量Sn。也即,意味着不进行手抖动校正。
Sn=Sn-1 ...(5)
从“手抖动状态”向“平移或俯仰状态”的转移,在满足以下任一个转移条件(a)、(b)、(c)的情况下进行。
(a)从“手抖动状态”向“平移或俯仰状态”的第1转移条件:全体运动矢量Vn的方向为同一个方向的帧连续,且该连续次数(连续帧数)为30以上。
具体地说,全体运动矢量Vn的垂直成分的方向(上或下)为同一个方向的帧连续,且该连续次数为30以上,或全体运动矢量Vn的水平成分的方向(左或右)为同一个方向的帧连续,且该连续次数为30以上。
(b)从“手抖动状态”向“平移或俯仰状态”的第2转移条件:积分矢量Sn为校正范围的界限值以上的帧连续,其连续次数(连续帧数)为10以上。
具体地说,积分矢量Sn的垂直成分为校正范围的界限值以上的帧连续,且其连续次数为10以上,或积分矢量Sn的水平成分为校正范围的界限值以上的帧连续,且其连续次数为阈值10以上。
另外,如上所述,在积分向量Sn的垂直成分Sv超过了校正范围的界限值的情况下,如果垂直成分Sv小于Sv-min,则将垂直成分Sv作为Sv-min(界限值),如果垂直成分Sv大于Sv-max,则将垂直成分Sv作为Sv-max(界限值)。另外,在积分向量Sn的水平成分Sh超过了校正范围的界限值的情况下,如果水平成分Sh小于Sh-min,则将水平成分Sh作为Sh-min(界限值),如果水平成分Sh大于Sh-max,则将水平成分Sh作为Sh-max(界限值)。
(c)从“手抖动状态”向“平移或俯仰状态”的第3转移条件:全体运动矢量Vn的方向为同一个方向的帧连续,且该在同一方向连续的所有运动矢量Vn的积分值,为画角(剪切框的图像尺寸)的20%以上。
具体地说,全体运动矢量Vn的垂直成分的方向(上或下)为同一个方向的帧连续,且该在同一方向连续的所有运动矢量Vn的垂直成分的积分值,为剪切框的上下宽度的20%以上,或者,全体运动矢量Vn的水平成分的方向(左或右)为同一个方向的帧连续,且该在同一方向连续的所有运动矢量Vn的水平成分的积分值,为剪切框的左右宽度的20%以上。
从“平移或俯仰状态”向“手抖动状态”的转移,在满足以下任一个转移条件(a)、(b)的情况下进行。
(a)从“平移或俯仰状态”向“手抖动状态”的第1转移条件:全体运动矢量Vn为0.5像素以下的帧连续,且该连续次数(连续帧数)为10以上。
具体地说,全体运动矢量Vn的垂直成分为0.5像素以下的帧连续,且该连续次数为10以上,或全体运动矢量Vn的水平成分为0.5像素以下的帧连续,且该连续次数为10以上。
(b)从“平移或俯仰状态”向“手抖动状态”的第2转移条件:全体运动矢量Vn的方向,为与从“手抖动状态”向“平移或俯仰状态”转移时的全体运动矢量Vn的方向相反的方向的帧连续,且该连续次数为10以上。
具体地说,全体运动矢量Vn的垂直成分的方向,为与从“手抖动状态”向“平移或俯仰状态”转移时的全体运动矢量Vn的垂直成分的方向相反的方向的帧连续,且该连续次数为10以上,或全体运动矢量Vn的水平成分的方向,为与从“手抖动状态”向“平移或俯仰状态”转移时的全体运动矢量Vn的水平成分的方向相反的方向的帧连续,且该连续次数为10以上。
在从“平移或俯仰状态”向“手抖动状态”转移时,微型计算机20将此时的积分矢量Sn设定为衰减中心C。也即,将微型计算机20的存储器上的衰减中心C,更新为与此时的积分矢量Sn相同的数据。
本实施例中,对焦距38~280mm,积分矢量的衰减系数K为0.9~0.95。另外,衰减中心的衰减系数Kc设定为0.98。通过控制积分矢量的衰减系数K,能够使所校正的手抖动的频率特性变化。另外,以往在向心速度较快且构图的变化较大的平移或俯仰操作之后,将衰减中心C设定为平移或俯仰操作刚刚结束后的积分矢量Sn,因此,不会因积分矢量的衰减系数K引起急剧的向心运动。与此相对,由于衰减中心的衰减系数Kc(=0.98),因此进行平缓的向心运动,不会被摄影者发现,而能够确保校正范围。
这样所求出的积分矢量Sn输入给存储器控制电路21。存储器控制电路21中,根据所提供的积分矢量Sn,决定帧存储器15的读出开始地址,从该地址读出存储于帧存储器15中的数字视频信号。也即,存储器控制电路21,根据微型计算机20所计算出的积分矢量Sn,移动帧存储器15内的剪切框100。
由存储器控制电路21从帧存储器15中所读出的数字视频信号,发送给电子缩放电路16。电子缩放电路16,为了得到相当于帧存储器15的大小的视频信号,根据从帧存储器15所读出的数字视频信号,使用内插法来放大图像。从电子缩放电路16所输出的数字视频信号,发送给输出端17。
图10表示对每一个帧所进行的摄像机10的动作。
Flag用作存储是“手抖动状态”还是“平移或俯仰状态”的标志位。在复位Flag(Flag=0)的情况下,状态表示为“手抖动状态”,在置位Flag(Flag=1)的情况下,状态表示为“平移或俯仰状态”。
首先复位Flag(Flag=0)(步骤S1)。也即,作为初始状态,设定为“手抖动状态”。
每一个运动矢量检测区域E1~E4中,根据相关累积值最小的像素的位置数据,求出部分运动矢量(步骤S2)。
接下来,根据各个运动矢量检测区域E1~E4的相关累积值的平均值以及相关累积值的最小值,判断各个运动矢量检测区域E1~E4是有效区域还是无效区域(步骤S3)。之后,判断是否存在有效区域(步骤S4)。
在判断存在有效区域的情况下,将有效区域的部分运动矢量的平均值,作为全体运动矢量Vn(步骤S5)。之后进入步骤S7。在不存在有效区域的情况下,将全体运动矢量Vn设为0(步骤S6)。之后进行步骤S7。步骤S7中判断是否为Flag=0。也即,判断是“手抖动状态”还是“平移或俯仰状态”。
在Flag=0的情况下。也即现在的状态为“手抖动状态”的情况下,从焦距检测电路19取得35mm胶片换算的焦距,根据上述式(2),计算出衰减系数K(步骤S8)。使用所计算出的K,根据上述式(3),计算出积分矢量Sn(步骤S9)。之后,根据上述式(4)更新衰减中心C(步骤S10)。之后,进行了第1状态判断处理之后(步骤S11),进入步骤S14。关于第1状态判断处理,将在后面说明。
上述步骤S7中,在Flag=1的情况下。也即现在的状态为“平移或俯仰状态”的情况下,根据上述式(5),计算出积分矢量Sn(步骤S12)。之后,进行了第2状态判断处理之后(步骤S13),进入步骤S14。关于第2状态判断处理,将在后面说明。
步骤S14中,根据通过上述步骤S9或S12所计算出的积分矢量Sn,计算出剪切框的位置。之后结束本次的处理。
图11表示图10的步骤S11的第1状态判断处理的顺序。
首先,判断是否满足从“手抖动状态”向“平移或俯仰状态”的第1转移条件(步骤S21)。也即,判断是否满足全体运动矢量Vn的方向为同一个方向的帧连续,且该连续次数(连续帧数)为30以上这一条件。在满足上述第1转移条件的情况下,判断为“平移或俯仰状态”,也即判断从“手抖动状态”转移到“平移或俯仰状态”,置位Flag(Flag=1)(步骤S25)。之后,进入图10的步骤S14。
在不满足上述第1转移条件的情况下,判断是否满足从“手抖动状态”向“平移或俯仰状态”的第2转移条件(步骤S22)。也即,判断是否满足积分矢量Sn为校正范围的界限值以上的帧连续,其连续次数(连续帧数)为10以上这一条件。在满足上述第2转移条件的情况下,判断为“平移或俯仰状态”,也即判断从“手抖动状态”转移到“平移或俯仰状态”,置位Flag(Flag=1)(步骤S25)。之后,进入图10的步骤S14。
在不满足上述第2转移条件的情况下,判断是否满足从“手抖动状态”向“平移或俯仰状态”的第3转移条件(步骤S23)。也即,判断是否满足全体运动矢量Vn的方向为同一个方向的帧连续,且该在同一方向连续的所有运动矢量Vn的积分值,为画角(剪切框的图像尺寸)的20%以上这一条件。在满足上述第3转移条件的情况下,判断为“平移或俯仰状态”,也即判断从“手抖动状态”转移到“平移或俯仰状态”,置位Flag(Flag=1)(步骤S25)。之后,进入图10的步骤S14。
在不满足上述第3转移条件的情况下,判断为“手抖动状态”,复位Flag(Flag=0)(步骤S24)。之后,进入图10的步骤S14。
图12表示图10的步骤S12的第2状态判断处理的顺序。
首先,判断是否满足从“平移或俯仰状态”向“手抖动状态”的第1转移条件(步骤S31)。也即,判断是否满足全体运动矢量Vn为0.5像素以下的帧连续,且该连续次数(连续帧数)为10以上这一条件。在满足上述第1条件的情况下,判断为“手抖动状态”,也即判断从“平移或俯仰状态”转移到“手抖动状态”,将衰减中心C设定为当前帧的积分矢量Sn之后(步骤S34),复位Flag(Flag=0)(步骤S35)。之后,进入图10的步骤S14。
在不满足上述第1转移条件的情况下,判断是否满足从“平移或俯仰状态”向“手抖动状态”的第2转移条件(步骤S32)。也即,判断是否满足全体运动矢量Vn的方向,与从“手抖动状态”向“平移或俯仰状态”转移时的全体运动矢量Vn的方向相反的方向的帧连续,且该连续次数为10以上这一条件。在满足上述第2转移条件的情况下,判断为“手抖动状态”,也即判断从“平移或俯仰状态”转移到“手抖动状态”,将衰减中心C设定为当前帧的积分矢量Sn之后(步骤S34),复位Flag(Flag=0)(步骤S35)。之后,进入图10的步骤S14。
在不满足上述第2转移条件的情况下,判断为“平移或俯仰状态”,置位Flag(Flag=1)(步骤S33)。之后,进入图10的步骤S14。
像这样进行动作的摄像机10中,以往在平移或俯仰操作时,粘滞(stick)感显著的光学广角侧(缩放倍率小),积分矢量的衰减系数K变小。因此,光学广角侧中,由于低频带的晃动的校正程度较弱,因此,即使例如在平移·俯仰状态的检测失败的情况下,在平移·俯仰操作开始时的摄像机的运动的若干部分没有被校正而残留,因此减轻了粘滞感。
所以,与以往相比,能够提高光学广角侧的操作性(减轻一顿一顿的动作),得到在全缩放区域内都具有良好的操作性的手抖动校正。
另外,在从“平移或俯仰状态”转移到“手抖动状态”时,衰减中心C移动到现在的图像剪切位置,之后,在“手抖动状态”下,衰减中心C徐徐向帧存储器15的中心靠近。因此,能够消除像以往那样的、在平移或俯仰结束之后,图像剪切位置急剧向心,从而看不到图像这一问题。另外,“平移或俯仰状态”中,没有进行手抖动校正,因此,没有对平移或俯仰时的操作性的不良影响。
下面对这一点进行详细说明。图13a~图13c,表示在根据上述式(1)计算出积分矢量Sn的以往的方法中,从“平移或俯仰状态”向“手抖动状态”转移之后经过了两帧的积分矢量S0~S2的变化。
如图13a所示,设从“平移或俯仰状态”转移到“手抖动状态”时的积分矢量为S0,下一帧的运动矢量为V1,再下一帧的运动矢量为V2,则1帧之后的积分矢量S1如图13b所示,为S1=K·S0+V1。同样,两帧后的积分矢量S2,如图13c所示,为S2=K·S1+V2。
图14a~图14d,表示本发明的方法中,从“平移或俯仰状态”向“手抖动状态”转移之后经过了3帧的积分矢量S0~S3的变化。
如图14a所示,设从“平移或俯仰状态”转移到“手抖动状态”时的积分矢量为S0,衰减中心C为C0,下一帧的运动矢量为V1,再下一帧的运动矢量为V2,接着下一帧的运动矢量为V3,则1帧之后的积分矢量S1如图14b所示,由于C0=S0,因此S1=K·(S0-S0)+V1+S0=V1+S0。
接下来,两帧后的积分矢量S2如图14c所示,为S2=K·(S1-C1)+V2+C1。其中,C1为通过C1=Kc·C0求得的新的衰减中心。同样,3帧后的积分矢量S3如图14d所示,为S3=K·(S2-C2)+V3+C2。其中,C2为通过C2=Kc·C1求得的新衰减中心。
以往的方法中,如图13a~图13c所示,以点O为中心的积分矢量Sn通过衰减系数K进行衰减。另外,本发明的方法中,如图14a~图14d所示,以点Cn为中心的从点Cn开始的积分矢量(Sn-Cn)通过衰减系数K进行衰减。这意味着,以往的方法中,以开始帧为基准,通过衰减系数K来进行手抖动校正,与此相对,本发明的方法中,以平移或俯仰状态结束时的帧为基准,通过衰减系数K进行手抖动校正。
因此,以往的方法中,积分矢量的衰减系数K越小,Sn被直接衰减,其变化量ΔSn越大,构图的变化较明显,而本发明的方法中,即使积分矢量的衰减系数K较小,由于只加快了Sn-Cn的衰减速度、也即Sn靠近Cn的速度,Sn的变化速度ΔSn基本上依赖于Cn的变化量、也即Sn的变化速度ΔSn在很大程度上依赖于衰减中心的衰减系数Kc,而几乎不依赖于积分矢量的衰减系数K。因此,本发明的方法中,能够与手抖动的晃动频率特性独立,将Sn的变化速度,也即剪切框(图像剪切位置)的向心速度调节为所期望的值。
图15中表示向左平移摄像机之后,固定摄像机时的剪切框与构图的变化。
以往的方法中,在平移操作初期,由于判断为“手抖动状态”,因此,如图15(a)~(b)所示,对应于照相机的移动来移动剪切框100。此时,由于手抖动校正根据Sn=K·Sn-1+Vn进行,因此构图几乎没有变化。
之后,如图15(b)所示,如果剪切框100到达帧存储器端部,则如图15(c)所示,之后的帧中将剪切框100固定在帧存储器的端部。如果将剪切框100固定在帧存储器的端部,则由于实际上没有进行手抖动校正,因此构图变化了照相机的移动量。如果该状态连续10次则判断从“手抖动状态”转移到“平移或俯仰状态”,变为固定剪切框100的状态(Sn=Sn-1)。这种情况下,如图15(d)所示,构图只变化照相机的移动量。
之后,如果照相机固定,则构图不发生变化,判断从“平移或俯仰状态”转移到“手抖动状态”。由于Vn=0,因此,如图15(e)~(f)所示,通过Sn=K·Sn-1来移动剪切框100。设积分矢量的衰减系数K为0.9,如果从“平移或俯仰状态”向“手抖动状态”的转移时的Sn为64像素,则其移动速度ΔSn为6.4像素/帧。
从上述“平移或俯仰状态”向“手抖动状态”的转移时刻开始的经过时间(帧数)与剪切框(构图)的位置之间的关系如图16所示。例如,从“平移或俯仰状态”转移到“手抖动状态”之后,1秒(30帧)的构图变化量为58像素,虽然照相机停止了但构图仍大幅变化,因此成像非常不自然。
另外,本发明的方法中,在平移操作的初期,由于判断为“手抖动状态”,因此,如图15(a)~(b)所示,对应于照相机的移动来移动剪切框100。此时,由于衰减中心的初始值为0,因此手抖动校正和以往一样,根据Sn=K·Sn-1+Vn进行,因此构图几乎没有变化。
之后,如图15(b)所示,如果剪切框100到达帧存储器端部,则如图15(c)所示,之后的帧中将切割框100固定在帧存储器的端部。如果将剪切框100固定在帧存储器的端部,则由于实际上没有进行手抖动校正,因此构图变化了照相机的移动量。如果该状态连续10次则判断从“手抖动状态”转移到“平移或俯仰状态”,变为固定剪切框100的状态(Sn=Sn-1)。这种情况下,如图15(d)所示,构图只变化照相机的移动量。
之后,如果照相机固定,则构图不发生变化,判断从“平移或俯仰状态”转移到“手抖动状态”。由于Vn=0,因此,如图15(e’)~(f’)所示,根据Sn=K·(Sn-1-C)+C(其中,通过C=Kc·C来更新),来移动剪切框100。设积分矢量的衰减系数K为0.9,衰减中心的衰减系数Kc为0.98,如果从“平移或俯仰状态”向“手抖动状态”转移时的Sn(=C)为64像素,则其移动速度ΔSn=ΔC=1.28像素/帧。
从上述“平移或俯仰状态”向“手抖动状态”的转移时刻开始的经过时间(帧数)与剪切框(构图)的位置之间的关系如图17所示。例如,从“平移或俯仰状态”转移到“手抖动状态”之后,1秒期间(30帧)的构图变化量为20像素,由于照相机固定之后,构图缓缓变化,因此与以往方法相比,没有成像的不协调感。
图18a~图18d表示摄像机10的实际的状态从手抖动状态->平移状态->固体状态变化的情况下的、帧数与摄像机10的显示图像(构图)的移动量之间的关系。
图18a表示没有进行手抖动校正的情况下的构图的移动量,图18b为在根据上述式(1)所计算出的积分矢量Sn的现有技术中,设衰减系数K为0.9来进行手抖动校正的情况(称作第1现有技术)的构图的移动量,图18c为在根据上述式(1)所计算出的积分矢量Sn的现有技术中,设衰减系数K为0.98来进行手抖动校正的情况(称作第2现有技术)的构图的移动量,图18d为通过本实施例进行手抖动校正的情况(为了方便起见而将积分矢量的衰减系数K设为0.9,将衰减中心的衰减系数Kc设为0.98的情况)的构图的移动量。
如期间T1所示,在实际的状态为手抖动状态的情况下,在摄像机10中也判断为“手抖动状态”,在现有技术(图18b、图18c)以及本实施例中都进行手抖动校正。
之后,如期间T2所示,如果实际的状态从手抖动状态向平移状态变化,则变化后起初也判断为“手抖动状态”,因此进行手抖动校正。之后,满足从“手抖动状态”向“平移或俯仰状态”的第1转移条件、第2转移条件或第3转移条件中的任一个条件,摄像机10的判断结果从“手抖动状态”向“平移或俯仰状态”转移。其结果是,不进行手抖动校正,校正后的构图的运动,与不进行手抖动校正的情况相同。
在实际的状态从手抖动状态变化为平移状态之后,在摄像机10的判断结果从“手抖动状态”向“平移或俯仰状态”转移的期间内,第2现有技术(图18c)中衰减系数K较大,由于强有力校正了甚至低频成分的晃动,因此,画面不向希望的方向移动的现象(粘滞现象)变得显著。另外,在第1现有技术(图18b)以及本实施例(图18d)中衰减系数K较小,对低频成分的晃动的校正的程度较弱,因此减轻了粘滞现象。
之后,如期间T3所示,如果实际的状态从平移状态变化为固定状态,则满足从“平移或俯仰状态”向“手抖动状态”的第1转移条件或第2转移条件中的任一个条件,摄像机10的判断结果从“平移或俯仰状态”向“手抖动状态”转移。
如果从“平移或俯仰状态”向“手抖动状态”转移,在现有技术中则通过积分矢量的衰减系数K让图像剪切位置向心移动,而本实施例中,主要通过衰减中心C的衰减系数Kc来让图像剪切位置向心移动。第1现有技术(图18b)中,由于积分矢量的衰减系数K较小,因此图像剪切位置的向心速度较快,构图急剧变化。另外,第2现有技术(图18c)中,积分矢量的衰减系数K较大,本实施例(图18d)中,衰减中心C的衰减系数Kc较大,因此图像剪切位置向心移动速度较慢,构图缓慢变化。
也即,现有技术中,由于1个衰减系数K兼具要校正的晃动频率特性与向心速度,因此无法同时降低平移开始时的粘滞感与平移结束时的向心移动的显著性,而本实施例的摄像机10,能够通过让要校正的晃动频率特性与向心速度独立的衰减系数来进行调整,因此,能够同时降低在平移开始时的粘滞感与平移结束后的向心移动的显著性。
另外,运动矢量除了用代表点匹配法求出之外,例如也可以使用角速度传感器来求出。另外,手抖动校正除了控制图像存储器的剪切位置以外,例如还能够控制镜头角度、镜头位置或受光元件的位置。
另外,上述实施例中,积分矢量的衰减系数K对应于缩放倍率(焦距F)进行变化,但也可以固定积分矢量的衰减系数K。
另外,上述实施例中,在图10的步骤S9中根据上述式(3)计算出积分矢量Sn之后,在图10的步骤S10中根据上述式(4)来更新衰减中心C,但也可以不更新衰减中心C。也即,可以省略图10的步骤S10。这种情况下,衰减中心C的初始值为0,但如图12的步骤S34所示,在从“平移或俯仰状态”向“手抖动状态”转移时,设定为C=Sn。在省略图10的步骤S10的情况下,图像剪切位置向衰减中心C收敛。