图像处理装置及其控制方法_4

文档序号:9567352阅读:来源:国知局
图是以预定间隔取点A1至点A7的图8A所示的抖动量的变化轨迹的标示。用于计算抖动量的公式如下:
[0078]IAl-01 +1A2-A11 +1A3-A2| +1A4-A3| +1A5-A4| +1A6-A5| +1A7-A6|…(式 1)
[0079]式1表示在从电荷累积开始到完成所有电荷的读取的各预定间隔期间的摄像面上的抖动量的总和(即,积分值)。式1考虑到抖动量的变化轨迹的整个距离的计算,并且能够避免无法正确表示运动图像的各帧的抖动量的问题。注意,在图7B和图7C中,可以通过用I Shake_Vector I来替换式1的计算结果来计算Mdata_shake。
[0080]以下参照图8C,描述作为对上述Shake_Amount的替代,计算抖动量的方法的其他示例。图8C是放大从图8B的原点0到点A2的抖动量的变化轨迹的坐标图。如图中所示,θ 0表示由横轴和向量Al-ο形成的角度,0 1表示由横轴和向量A2-A1形成的角度,Θ2表示向量A1-0与向量A2-1之间的相对角度,满足Θ2= Θ0-Θ1。当像平面上的抖动量的向量轨迹类似于直线时,例如,通过在摄像装置100内部进行的图像处理或者使用PC上的图像处理软件进行的图像处理,可以相对容易地修复无抖动的图像。然而,轨迹越复杂,修复越难。可以通过进行乘以增益的处理来形成在考虑到修复困难时的数据,该增益在计算每预定时间(即,每单位时间)摄像面上的抖动量的总和时随着差分向量的角度变化Θ 2的增加而增加。例如,在进行对|A1-0|增加|A2-A1|时,可以进行以下计算:
[0081]A1-0| + |A2_A11 (Ι+sin Θ 2)
[0082]根据本式,当Θ 2为0度时sin Θ2 = 0,当Θ2为90度时sin Θ 2 = 1。因此,可以根据Θ2的大小设置增益。能够通过进行从电荷累积开始到完成所有电荷的读取的计算并用这种计算结果来替代图7B或图7C中的IShakeJector I,获得考虑到修复抖动的容易度的 Mdata_shake。
[0083]以下对计算Mdata_shake的方法的其他示例提供描述。图5B是用于生成抖动元数据的框图的示例。图5B是通过将功能块301至303添加到图5A而形成的图,因此省略对其他功能块的描述。
[0084]运动向量检测单元303基于信号处理单元111生成的当前图像信号中包含的亮度信号和运动向量检测单元303内部的图像存储器中存储的前一帧的图像信号中包含的亮度信号,来检测图像中的运动向量。将运动向量检测单元303检测到的运动向量输出到平移检测单元301和平移速度计算单元302。注意,运动向量检测单元303不是必不可少的组件。
[0085]平移检测单元301基于来自角速度传感器120或运动向量检测单元303的输出,来确定摄像装置100是否处于平移状态。平移速度计算单元302在平移检测单元301确定摄像装置100处于平移状态时,计算当前平移速度并向抖动量计算单元202输出平移速度。当确定摄像装置100未处于平移状态时,平移速度被设定为0。基于来自角速度传感器120的输出和来自运动向量检测单元303的输出两者之中任一者或两者,来进行平移速度的计算。抖动量计算单元202在考虑到平移速度计算单元302计算出的平移速度的情况下,进行抖动量的计算。
[0086]在运动图像拍摄期间,与静止图像拍摄期间不同,平移操作频繁发生。在主被摄体移动的情况下,常常进行拍摄使得主被摄体仍然接近于画面的中心点。在这种情况下,如果仅使用上述对摄像面上的抖动量进行正规化并且保持该结果作为元数据的方法,则在进行平移期间,该数据一直指示大抖动量。当与主被摄体的运动同步地在运动图像拍摄期间进行平移时,不期望的是在平移期间的所有帧图像都被确定为包含大抖动量,因为这种情形与在静止图像拍摄期间进行的平移相同。
[0087]为此,平移检测单元301首先确定摄像装置100是否处于平移状态。关于平移的确定,可以使用已知的技术。例如,当来自角速度传感器120的输出、或者来自运动向量检测单元303的输出、或者这些输出的总和(即,积分值)超出预定值时,存在确定正在进行平移的方法。
[0088]平移速度计算单元302计算平移速度。能够通过对来自角速度传感器120的输出求平均值来获得平移速度。作为另选方案,可以使用来自运动向量检测单元303的输出。以下参照图9A和图9B,描述使用来自运动向量检测单元303的输出的平移速度的计算。图9A示出了正在拍摄的、使得在画面中心处移动的车辆被保持在画面中心的图像。假定块匹配方法被用于运动向量检测,通过该方法将图像划分成多个块并且针对各块计算运动向量。虚线定义了进行运动向量检测的各个块。
[0089]在图9B中,各个块中进行的运动向量检测的结果由箭头的方向和大小表示。粗线框内的运动向量是车辆的运动向量,粗线框外的运动向量是车辆以外的背景区域的运动向量。当Vector_Back表示背景区域的运动向量的平均值,并且Vector_Car表示车辆区域的运动向量的平均值时,可以由Vector_Back_Vector_Car来计算平移速度。上式用于计算平移速度,在抵消了车辆区域的运动向量时上式为零。如果车辆区域的运动向量为零,是指拍摄以100 %同步跟随车辆的运动,并且可以说正在进行近乎理想的平移。
[0090]参照图10A至图10C,以下描述由图5B中所示的抖动量计算单元202进行的考虑到平移速度的抖动量计算。图10A是来自角速度传感器120的输出(实线)和由平移速度计算单元302计算出的平移速度(虚线)的坐标图,其中横轴表示时间并且纵轴表示角速度。图10A示出了当摄像装置100正在被平移时、角速度传感器120的输出具有通过将具有高频的角速度信号叠加在平移速度上而形成的波形的坐标图。
[0091]这里,假定时间点T30指示图像传感器105开始电荷累积的定时,时间点T31指示完成所有电荷的读取的定时。在这种情况下,如果通过参照图6描述的、不考虑到平移速度时的方法来计算抖动量,则结果为图10B所示的坐标图。由于图10A是示出总是存在平移速度的情况的坐标图,当通过对该坐标图的积分计算抖动量时,也对摄像装置100的运动进行积分,所以结果为图10B所示的非常大的量。由于光学校正系统102通常进行不校正平移运动的控制,所以基于图10B所示的抖动量与来自抖动校正量计算单元201的输出之间的差分计算出的元数据Mdata_shake也将具有大值。
[0092]相比之下,图10C是示出通过对从来自角速度传感器120的输出减去平移速度的结果进行积分而计算出的抖动量的坐标图。图10C示出了排除了平移运动分量的抖动量。由于光学校正系统102通常进行不校正平移运动的控制,所以图10C所示的抖动量与来自抖动校正量计算单元201的输出类似,因此基于上述两者之间的差分计算出的元数据Mdata_shake具有小值。
[0093]结果,能够避免出现当用户进行平移时、Mdata_shake总是为大值并且抖动被确定为大的现象。注意,当不存在主被摄体并且仅通过平移来拍摄风景时,这种情况与上述静止图像拍摄的平移不同,各帧图像仅示出了具有模糊的风景。在这种情况下,平移检测单元301能够确定抖动不是平移的结果,从而避免出现图像中的大抖动被确定为小抖动的现象。可以通过使用图9A和图9B描述的运动向量实现该确定。例如,当画面内的全部运动向量指向同一方向时,图像能够被确定为不是通过为追踪主被摄体的运动而进行的平移拍摄的图像。
[0094]到目前为止,对存在用于驱动光学校正系统102和图像传感器105的机构的假定进行了描述。在不具有用于光学校正抖动的这种手段的摄像装置的情况下,抖动校正量计算单元201不包括在图5A和图5B所示的结构中。因此,在这种情况下,通过仅使用来自抖动量计算单元202的输出进行Mdata_shake的计算,其他的计算方法与在存在用于光学校正抖动的手段的情况下一样。
[0095]接着,对使用上述四种类型的元数据(即,Mdata_focus、Mdata_exposure、Mdata_wb和Mdata_shake)的方法的示例进行描述,通过该方法,使得用户能够从运动图像的各帧中选择最合适的静止图像。
[0096]图11示出了用户由运动图像数据生成静止图像的处理的流程图。步骤S100是用户操作,并且当用户操作摄像装置100的操作部件(附图中未示出)、设置用于由拍摄的运动图像生成静止图像的模式、并选择用于生成静止图像的运动图像时,开始本流程图所示的处理。在步骤S101中,系统控制单元121读取步骤S100中选择的运动图像的所有帧的元数据。在步骤S102中,通过使用步骤S101中读取的元数据,提供用于辅助用户选择最合适的静止图像的辅助功能。步骤S103是用户操作,并且用户通过使用步骤S102的功能来确定要用于生成静止图像的帧。在步骤S104中,进行用于由用户在步骤S103中确定的帧图像生成一个静止图像的解码,并通过JPEG技术进行用于压缩解码的图像的编码。在步骤S105中,将步骤S104中生成的静止图像记录在记录介质114上。在步骤S105的处理之后,本
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1