具体实施方式
尽管本说明书包含许多细节,但是不应该将这些细节理解为对于任何发明或可以要求保护内容的范围的限制,而是应该将这些细节理解为可专用于具体发明的具体实施例的特征的描述。还可以在单一实施例中组合地来实现在分开的实施例的上下文中在本说明书中描述的某些特征。相反地,还可以在多个实施例中单独地或者按照任何适合的子组合来实现在单一实施例的上下文中描述的各个特征。
而且,尽管上面可以将特征描述为按照某些组合来进行动作、甚至最初是这样要求保护的,但是在一些情况下,可以从组合中排除来自所要求保护组合的一个或更多特征,并且所要求保护的组合可以针对子组合或子组合的变形。
将根据本发明的图像处理设备安装在各种数字摄影设备中。这里,数字摄影设备可以包括:数字照相机、数字可携式摄像机(camcorder)、具有数字照相机的移动电话、具有数字照相机的PAD或具有数字照相机的个人多媒体播放器,并且将该数字摄影设备配置为通过用户的快门操作来获得对象的图像、将图像转换为数字图像、并将数字图像存储在存储介质中。
图1是图示了根据本发明优选实施例的图像处理设备的框图。
参考图1,根据本发明优选实施例的图像处理设备包括:图像传感器100、图像信号处理模块200、多媒体应用处理模块300、存储介质400和显示部件 500。
图像传感器100拾取对象的图像,并且向图像信号处理模块200输出模拟原始图像信号。优选地,图像传感器100是图像拾取装置,诸如CCD或CMOS。然而,本发明不限于特定类型的图像传感器。
图像信号处理模块200接收从图像传感器100输出的模拟原始图像信号,将所接收的模拟原始图像信号转换为数字图像信号,根据本发明来处理所转换的数字图像信号,并且向多媒体应用处理模块300输出所处理的数字图像信号。具体地,如图2所示,根据本实施例的图像信号处理模块200包括:预处理单元210、初始(original)图像处理单元220、显示图像处理单元230和图像输出单元240。
预处理单元210将模拟原始图像信号转换为数字图像信号,并如果必要,则转换信号的色彩坐标,诸如YUV或RGB,并且预处理单元210执行典型的图像信号处理,例如,色彩校正、伽玛校正或噪声减少。这里,“预处理”通常表示在根据本发明的存储图像处理和显示图像处理之前执行的处理。由预处理单元210执行的处理不与本发明的特征直接相关,并且由在相关产业中广泛已知为ISP(图像信号处理器)的典型图像信号处理模块来执行,并且省略了其详细描述。
初始图像处理单元220是如下的功能块,该功能块被配置为遵照要通过在下面描述的多媒体应用处理模块300而在存储介质400中存储的一般图像数据的格式、来处理由图像传感器100捕获并由预处理单元210预处理的捕获图像。
具体地,初始图像处理单元220包括存储图像缩放器(scalar)221。存储图像缩放器221遵照由用户预设或由摄影设备设置为默认的标准分辨率(例如,640*480),来缩放由预处理单元210预处理的捕获图像。
并且,初始图像处理单元220可以包括JPEG编码器223,其用于对由存储图像缩放器221缩放的捕获图像进行编码。不在多媒体应用处理模块300中提供JPEG编码器223,而是在图像信号处理模块200中提供该JPEG编码器223,并因而,由图像信号处理模块200对要在存储介质400中存储的图像数据进行编码,并传送到多媒体应用处理模块300。相应地,减小数据速率,以使得图像信号处理模块200和多媒体应用处理模块300之间的数据接口稳定。其间,尽管本实施例示出了根据JPEG标准的编码,但是本发明不 限于JPEG编码。
此外,如图3所示,初始图像处理单元220可以包括用于临时地存储所编码的图像数据的存储图像缓冲器225。如图4所示,图像输出单元240可以包括作为数据流接口的存储图像输出接口241和显示图像输出接口243。
显示图像处理单元230是被配置为遵照要通过在下面描述的多媒体应用处理模块300在显示部件500上显示的图像数据的格式、来处理由图像传感器100捕获并由预处理单元210预处理的捕获图像的功能块。
具体地,显示图像处理单元230包括:显示图像缩放器231和显示图像缓冲器233。显示图像缩放器231遵照被合并为摄影设备的寻像器的显示部件500的尺寸(例如,320*240)来缩放由预处理单元210预处理的捕获图像。显示图像缓冲器233临时地存储由显示图像缩放器231缩放的图像数据。
如图3所示,存储图像缓冲器225和显示图像缓冲器233的尺寸分别小于用于存储的图像数据和用于显示的图像数据的整体尺寸,并且其每一个具有用于存储要在一次中输出的数据量的尺寸。存储图像缓冲器225和显示图像缓冲器233中的每一个具有FIFO(先入先出)结构。
其间,显示图像处理单元230还可以包括用于对由显示图像缩放器231缩放的图像数据进行编码的编码器(未示出)(例如,JPEG编码器)。在此情况下,对用于显示的图像数据进行编码,并且将其与上述用于存储的图像数据一起传送到多媒体应用处理模块300,从而可以进一步使得图像信号处理模块200和多媒体应用处理模块300之间的数据接口稳定。
图像输出单元240向多媒体应用处理模块300输出由初始图像处理单元220的JPEG编码器223编码的用于存储的图像数据、和由显示图像缩放器231缩放(或缩放并编码)的用于显示的图像数据。此时,可以使用各种输出方法(例如,顺序输出方法、交织输出方法或并行输出方法)来输出用于存储的图像数据和用于显示的图像数据,并且下面做出其详细描述。
参考图1,多媒体应用处理模块300从图像信号处理模块200(实践中,从图像输出单元240)接收用于存储的图像数据和用于显示的图像数据,并且将用于存储的图像数据存储到存储介质400(诸如,SDRAM)中,并将用于显示的图像数据存储到例如具有LCD模块的显示部件500上。
并且,如图3所示,多媒体应用处理模块300从图像信号处理模块200(实践中,从图像输出单元240)接收用于每个预定单元的用于存储的图像 数据和用于显示的图像数据,并且将用于存储的图像数据存储到存储图像存储区域中,并将用于显示的图像数据存储到显示图像存储区域中。这里,可以在多媒体应用处理模块300或存储介质400(诸如,SDRAM)中提供存储图像存储区域和显示图像存储区域。
并且,当在显示图像存储区域中存储的用于显示的图像数据足够用于单一捕获图像时,多媒体应用处理模块300在例如具有LCD模块的显示部件500上显示用于显示的图像数据。
其间,如图4所示,根据本发明又一优选实施例的存储图像输出接口241向多媒体应用处理模块300输出由初始图像处理单元220的JPEG编码器223编码的用于存储的图像数据。并且,显示图像输出接口243向多媒体应用处理模块300输出由显示图像缩放器231缩放(或缩放并编码)的用于显示的图像数据。存储图像输出接口241和显示图像输出接口243是彼此独立的数据流接口,并且它们可以形成图像输出单元240。
具体地,参考图5,存储图像输出接口241可以合并到YCbCr 8位总线2411中。并且,显示图像输出接口243可以合并到SPI(串行外围接口)接口中,所述SPI接口包括SPI主(master)310和SPI从属(slave)2431。然而,本发明不限于该方面,并且可以使用对于本领域普通技术人员公知的另一接口。
并且,参考图5,对于图像数据的迅速存储和读取,多媒体应用处理模块300可以通过DMA(直接存储器访问)方法、使用DAM控制器320,来允许存储介质400、显示部件500和多媒体应用处理模块300之间的数据发送和接收。
图6是图示了根据本发明优选实施例的图像处理方法的流程图。图9是图示了根据本发明优选实施例的用于传送图像数据的步骤的时序图。参考图6和图9来详细描述根据本发明实施例的图像处理方法。
与传统的照相机不同,商业数字摄影设备支持用于经过寻像器来预览要在照片中包括的对象图像的预览功能。也就是说,当用户接通数字摄影设备(或在照相机模式中操作数字摄影设备)时,摄影设备进入预览模式,并且按照以短的帧间隔来改变图像的运动图像的形式,而经过寻像器来显示对象的图像。然后,当用户捕捉到他/她所期望的最优图像时,他/她操作快门来进入捕获模式,并捕获对象的数字静止图像。本发明涉及捕获模式中的图像处 理方法,并且预览模式中的图像处理方法不执行图6的步骤S40、S50、S60和S80,而是将预览图像处理为用于显示的图像,并且在显示部件上显示预览图像。图9的“VSYNC”是代表了每个帧的开始的垂直同步信号。在预览模式中,图像数据处理模块200和多媒体应用处理模块300与VSYNC同步地进行操作,以处理并显示合并到每帧图像中的预览图像。
其间,图像传感器100在预览模式中拍摄的图像或由图像信号处理模块200处理的图像数据可以是由图像传感器100或摄影设备支持的最大尺寸(分辨率)的图像。然而,当摄影设备朝向较高像素移动时,它花费更多的时间来处理预览图像。为了解决该问题,可以增加帧间隔,这导致了不自然的运动图像。因而,尽管图像质量相对低,但是典型地以低分辨率来操作图像传感器100或摄影设备。另一方面,在捕获模式中捕获的图像是由图像传感器100或摄影设备支持的最大尺寸的图像或由用户预设的尺寸的图像。并且,在捕获模式中,可以操作闪光灯,或可以改变曝光时间。作为结果,在预览模式中显示的图像和在捕获模式中捕获的图像可以彼此不同。
当用户操作快门来进入捕获模式时,图像传感器100以预定分辨率来捕获对象的图像,并且向图像信号处理模块200输出模拟原始图像信号(S10)。随后,图像信号处理模块200处理模拟原始图像信号。此时,对于预处理和缓冲不可避免地发生时间延迟,直到JPEG编码器223的编码开始为止,并且直到输出编码后的用于存储的图像数据为止。结果,多媒体应用处理模块300在输入下一垂直同步信号之前,没有接收用于存储的图像数据和用于显示的图像数据,多媒体应用处理模块300与该下一垂直同步信号同步地进行操作,并且多媒体应用处理模块300可能丢弃一个帧。相应地,当捕获了图像时,将VSYNC信号延迟与延迟时间(d)一样多,并且图像信号处理模块200和多媒体应用处理模块300与改变后的VSYNC信号同步地进行操作。
接下来,图像信号处理模块200的预处理单元210接收从图像传感器100输出的模拟原始图像信号,并且执行上述系列的预处理,例如,模数转换、色彩坐标转换、色彩校正、伽玛校正或噪声减少(S20)。
将由预处理单元210预处理的图像数据输入到初始图像处理单元220的存储图像缩放器221和显示图像处理单元230的显示图像缩放器231中。然后,显示图像缩放器231遵照摄影设备的显示部件500的尺寸(例如,320*240)来缩放由预处理单元210预处理的捕获图像(S30),并且将由显示图像缩放 器231缩放的图像数据临时地存储到显示图像缓冲器233中。
其间,存储图像缩放器221遵照由用户预设或由摄影设备设置为默认的分辨率标准(例如,640*480),来缩放由预处理单元210预处理的捕获图像(S40)。随后,由JPEG编码器223对由存储图像缩放器221缩放的捕获图像进行编码(S50)。
接下来,图像输出单元240向多媒体应用处理模块300输出由JPEG编码器223编码的用于存储的图像数据和由显示图像缩放器231缩放的用于显示的图像数据。此时,可以通过各种方法来输出用于存储的图像数据和用于显示的图像数据,然而本实施例示出了顺序输出方法。也就是说,图像输出单元240首先输出来自JPEG编码器223的用于存储的图像数据(S60),并且在完成了用于存储的图像数据的输出之后,图像输出单元240从显示图像缓冲器233读取用于显示的图像数据,并且向多媒体应用处理模块300输出用于显示的图像数据(S70)。这里,可以改变用于存储的图像数据和用于显示的图像数据的输出次序。并且,用于存储的图像数据和用于显示的图像数据中的每一个可以具有可变的或固定的长度。在固定长度的情况下,可以添加伪数据(dummy data)以用于图像数据的长度匹配。
并且,在其中由图像输出单元240输出的用于存储的图像数据和用于显示的图像数据超过一个帧周期的情况下,图像信号处理模块200可以跳过或延迟代表了下一帧的开始的垂直同步信号VSYNCk+1。在延迟的情况下,可以从输出图像数据的末端向下一垂直同步信号VSYNCk+2或向延迟的垂直同步信号VSYNCk+1添加伪数据。
多媒体应用处理模块300如上所述地从图像输出单元240接收用于存储的图像数据和用于显示的图像数据,并且将用于存储的图像数据存储到存储介质400(例如,SDRAM)中(S80),并且在例如具有LCD模块的显示部件500上显示用于显示的图像数据(S90)。尽管本实施例示出了不单独地存储用于显示的图像数据,然而可以将用于显示的图像数据存储到预定的存储区域中。这里,可以在多媒体应用处理模块300或存储介质400中提供用于存储用于显示的图像数据的存储区域。在其中单独地存储用于显示的图像数据的情况下,它在下面描述的连续捕获模式中是有用的。
其间,如上所述,显示图像处理单元230还可以包括用于对由显示图像缩放器231缩放的用于显示的图像数据进行编码的编码器(例如,JPEG编码 器),或者显示图像处理单元230可以使用初始图像处理单元220的JPEG编码器223来对用于显示的图像数据进行编码。在后一情况下,可以进一步使得图像信号处理模块200和多媒体应用处理模块300之间的数据接口稳定。但是,因为多媒体应用处理模块300应该解码已编码的用于显示的图像数据、并且在显示部件500上显示所述图像数据,所以与未编码的用于显示的图像数据相比、花费更多的时间来显示编码后的用于显示的图像数据。然而,典型地,用于显示的图像的尺寸比用于存储的图像的尺寸小得多,并因而,花费短的时间来解码用于显示的图像,并且用户感觉很小的时间延迟。可以将用于显示的小尺寸图像的编码数据用作缩略图(thumbnail)图像。
图7是图示了根据本发明另一实施例的图像处理方法的流程图。图10是图示了根据本发明另一实施例的用于传送图像数据的步骤的时序图。参考图7和图10来详细描述根据本发明另一实施例的图像处理方法,并且省略了上述的相同步骤和重叠描述。
利用步骤S10到S30,存储图像缩放器221遵照由用户预设或由摄影设备设置为默认的分辨率标准(例如,640*480),来缩放由预处理单元210预处理的捕获图像(S40)。随后,由JPEG编码器223来编码由存储图像缩放器221缩放的捕获图像(S50),并将编码后的用于存储的图像临时地存储到存储图像缓冲器225中。
接下来,图像输出单元240向多媒体应用处理模块300输出由JPEG编码器223编码并在存储图像缓冲器225中存储的用于存储的图像数据、和由显示图像缩放器231缩放并在显示图像缓冲器233中存储的用于显示的图像数据。此时,可以通过各种方法来输出用于存储的图像数据和用于显示的图像数据,然而本实施例示出了交织输出方法,也就是说,对于每个预定单元而交替地输出用于存储的图像数据和用于显示的图像数据。
可以合并交织输出方法,使得存储图像缓冲器225和显示图像缓冲器233交替地占用图像输出单元240的输出总线。具体地,当存储图像缓冲器225和显示图像缓冲器223中的任何一个比另一个缓冲器更早地填充有预定的临界量的图像数据时,该缓冲器占用输出总线。随后,该缓冲器发送预定单元的图像数据,并释放输出总线。对存储图像缓冲器225和显示图像缓冲器233交替地执行该操作,使得对于每个预定单元而交替地向多媒体应用处理模块300输出用于存储的图像数据和用于显示的图像数据(S61)。
这里,在严格意义上,可能不“交替地”传送图像数据。例如,根据缓冲器的尺寸或图像数据的尺寸,任何一个缓冲器可以比另一缓冲器更慢地填充图像数据。然后,该缓冲器可以跳过图像数据的一次传送。
其间,优选地,在将其图像数据加载到输出总线以前,每个缓冲器事先发送首标,该首标包含代表了图像数据是用于存储的图像数据还是用于显示的图像数据(即,图像数据的类型)的信息。
多媒体应用处理模块300如上所述地对于每个预定单元而交替地接收用于存储的图像数据和用于显示的图像数据,并且将用于存储的图像数据存储到存储图像存储区域中、和将用于显示的图像数据存储到显示图像存储区域上(S71)。可以检查上述首标,来确定从图像输出单元240接收的图像数据是用于存储的图像数据还是用于显示的图像数据。
连续地执行上述系列的操作,直到输入代表了下一帧的开始的垂直同步信号VSYNCk+1为止(S81)。当输入了下一垂直同步信号VSYNCk+1时,向显示部件500输出并在显示部件500上显示到目前为止在显示图像存储区域中存储的用于显示的图像数据(S91)。
图8是图示了根据本发明又一实施例的图像处理方法的流程图。图11是图示了根据本发明又一实施例的用于传送图像数据的步骤的时序图。参考图8和图11来详细描述根据本发明又一实施例的图像处理方法,并且省略了上述的相同步骤和重叠描述。
利用步骤S10到S30,存储图像缩放器221遵照由用户预设或由摄影设备设置为默认的分辨率标准(例如,640*480),来缩放由预处理单元210预处理的捕获图像(S40)。随后,由JPEG编码器223对由存储图像缩放器221缩放的捕获图像进行编码(S50)。
接下来,图像输出单元240向多媒体应用处理模块300输出由JPEG编码器223编码的用于存储的图像数据和由显示图像缩放器231缩放的用于显示的图像数据。此时,可以通过各种方法来输出用于存储的图像数据和用于显示的图像数据,然而本实施例示出了同时并行输出方法。也就是说,使用存储图像输出接口241来向多媒体应用处理模块300输出来自JPEG编码器223的用于存储的图像数据,并且与用于存储的图像数据的输出并行地,使用显示图像输出接口243来向多媒体应用处理模块300输出来自显示图像缓冲器233的用于显示的图像数据(S62)。
具体地,如上所述地将存储图像输出接口241合并到YCbCr 8位总线中,并将其配置为当将编码后的用于存储的图像数据加载到输出总线中时、激活水平同步信号HSYNC,使得多媒体应用处理模块300接收用于存储的图像数据。并且,如上所述地将显示图像输出接口243合并到SPI接口中,并且将其配置为当在显示图像缓冲器233中收集了预定量的用于显示的图像数据时、向SPI主310输出中断信号。然后,SPI主310经过SPI从属2431来接收用于显示的图像数据。
多媒体应用处理模块300如上所述地从图像输出单元240接收用于存储的图像数据和用于显示的图像数据,并且将用于存储的图像数据存储到存储介质400(例如,SDRAM)的存储图像存储区域中,并且将用于显示的图像数据存储到显示图像存储区域中(S72)。接下来,确定是否输入代表了下一帧开始的垂直同步信号VSYNCk+1(S82)。在其中没有输入垂直同步信号VSYNCk+1的情况下,该方法返回到步骤S60,以重复图像数据的输入和存储,而在其中输入了垂直同步信号VSYNCk+1的情况下,在例如具有LCD模块的显示部件500上显示在显示图像存储区域中存储的用于显示的图像数据(S92)。
上述的描述与用于捕获并显示一个静止图像的处理相关,然而可以有用地将本发明应用到其中以短时间间隔来连续地捕获多个图像的连续捕获模式。参考图12来做出该详细描述。
首先,按照与图6的步骤S10到S90相同的方式来执行用于捕获图像并在显示部件上显示捕获图像的处理。连续捕获模式中的处理还包括以下步骤S100到S140。
在显示部件上显示用于显示的图像数据(S90),并且将其存储到上述显示图像存储区域中(S100)。
接下来,做出是否终止了连续捕获(即,是否全部执行了预定频率的图像捕获)的判决(S110)。在其中没有终止连续捕获的情况下,在用于捕获图像的步骤S10中重复用于存储用于显示的图像数据的步骤S100。也就是说,在显示部件500上直接显示每个捕获图像,并因而,用户可以立即检查连续捕获的图像,并存储用于显示的图像数据,以用于用户的最终选择。
其间,在其中终止了连续捕获的情况下,全部读取在显示图像存储区域中存储的连续捕获图像的用于显示的图像数据(S120)。
首先,缩小所读取的用于显示的图像数据,使得以全屏幕形式显示多个图像,并且以全屏幕形式在显示部件500上进行显示,以用于用户的选择(S130)。
然后,用户选择所期望的捕获图像,并最终将与所选择的捕获图像对应的用于存储的图像数据存储到存储介质中(S140)。
图13是图示了根据本发明另一实施例的连续捕获模式中的图像处理方法的流程图。参考图13来描述根据本发明另一实施例的连续捕获模式中的图像处理方法。
首先,按照与图7的步骤S10到S91相同的方式来执行用于捕获图像并在显示部件上显示捕获图像的处理。连续捕获模式中的处理还包括接下来的步骤S101到S131。
在完成了一个捕获图像的处理之后,做出是否终止了连续捕获(即,是否全部执行了预定频率的图像捕获)的判决(S101)。结果,在其中没有终止连续捕获的情况下,在用于捕获图像的步骤S10中重复用于显示用于显示的图像数据的步骤S91。也就是说,在显示部件500上直接显示每个捕获图像,使得用户可以立即检查连续捕获的图像。
其间,在其中终止了连续捕获的情况下,全部读取在显示图像存储区域中存储的连续捕获图像的用于显示的图像数据(S111)。
首先,将从显示图像存储区域读取的图像数据缩小到适当的尺寸,使得以全屏幕形式显示多个图像,并且以全屏幕形式在显示部件500上显示所述图像,以用于用户选择(S121)。
然后,用户选择所期望的捕获图像,并最终将与所选择的捕获图像对应的用于存储的图像数据存储到存储介质中(S131)。
传统地,需要600分钟或更多来恢复三百万像素的压缩图像,以用于将所恢复的图像显示在显示部件上,并因而用户感觉不满意该捕获时间。然而,本发明按照原样来在显示部件上显示由显示图像处理单元遵照显示部件的格式而处理的用于显示的图像数据,并因而其不需要用于执行用以显示捕获图像的单独操作所需的时间,由此导致了捕获图像的迅速显示。
可以将根据本发明的上述图像处理方法合并为计算机可读介质中的计算机可读代码。计算机可读介质包括用于存储可由计算机系统读取的数据的所有类型的存储装置。例如,计算机可读介质是ROM(只读存储器)、RAM(随 机存取存储器)、CD-ROM(致密盘-只读存储器)、磁带、软盘或光学数据存储装置,并且可以按照载波(例如,经由以太网的传送)的形式来合并。并且,计算机可读介质可以存储并执行分散在经由网络而彼此连接的计算机系统中且可由计算机通过分散方法来读取的代码。此外,程序员可以容易地在现有技术中推断用于实现该图像处理方法的功能程序、代码和代码段。
仅描述了少数实现和示例,并且可以基于在本申请中描述并图示的内容来做出其他实现、增强和变形。
产业应用性
根据本发明,图像信号处理模块向多媒体应用处理模块顺序输出捕获图像的用于显示的图像数据和用于存储的图像数据,使得多媒体应用处理模块将用于存储的图像数据存储到存储器中,并且在显示部件上显示用于显示的图像数据。因为图像信号处理模块已经遵照显示部件的格式而处理了用于显示的图像数据,且具体地,用于显示的图像数据具有小尺寸,从而消除了单独编码的需要,所以多媒体应用处理模块不需要单独的解码操作,以用于在显示部件上显示捕获图像。即时需要解码操作,多媒体应用处理模块也能够在短时间中对小尺寸的图像数据进行解码。因此,在没有显著时间延迟的情况下显示了所捕获的图像。并且,根据本发明,直接地显示在连续捕获模式中连续捕获的图像,使得用户可以迅速地检查并选择图像。