首页> 中国专利> 图像处理方法和设备、数字照相机以及记录图像处理程序的记录介质

图像处理方法和设备、数字照相机以及记录图像处理程序的记录介质

摘要

披露了用于从输入图像识别一个或多个四边形的技术。从输入图像检测边缘区域,提取对应于边缘区域的线,根据包括在线对中的两条线之间的位置关系分类从提取的线中选择的线对,对于该线对计算线对评估值,选择两个线对的组合,从包括在选择的两个线对中的四条线生成四边形,基于形成四边形的两个线对的分类和线对评估值为该四边形计算四边形评估值,以及基于计算的四边形评估值选择四边形。

著录项

  • 公开/公告号CN101248454A

    专利类型发明专利

  • 公开/公告日2008-08-20

    原文格式PDF

  • 申请/专利权人 株式会社理光;

    申请/专利号CN200680030612.9

  • 发明设计人 丸山刚;青木伸;

    申请日2006-08-09

  • 分类号G06T3/00;H04N1/387;H04N5/232;

  • 代理机构北京银龙知识产权代理有限公司;

  • 代理人曾贤伟

  • 地址 日本东京都

  • 入库时间 2023-12-17 20:36:43

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2012-11-21

    授权

    授权

  • 2008-10-15

    实质审查的生效

    实质审查的生效

  • 2008-08-20

    公开

    公开

说明书

技术领域

本发明涉及用于校正拍摄图像的失真的预处理技术,以及更特别地,涉及图像处理方法和设备、具有图像处理方法及设备的功能的数字照相机、以及记录用于从输入图像识别四边形的图像处理程序的记录介质。

此外,本发明涉及图像处理方法和设备、具有图像处理方法及设备的功能的数字照相机、以及记录图像处理程序的记录介质,该图像处理程序用于从拍摄的图像提取例如四边形的形状,并且显示包括加亮的形状区域的图像。

背景技术

近些年并且持续至今,数字照相机变得广泛流行,并且不仅用于拍摄景色或人物,还用来拍摄列车时刻表、海报、公告牌等等来取代记笔记。然而,根据拍摄照片的位置拍摄的列车时刻表和海报可能失真。这样失真的海报很难被阅读,因此,拍摄的图像不是优选的。

即使实际的物体是矩形,根据拍摄的位置拍摄的图像变得失真了,得到了例如梯形。当通过数字照相机拍摄例如列车时刻表或海报的平面物体时,需要校正这样的失真,使得校正后的图像看起来好像是从物体的正面拍摄的。

提出了用于校正由数字照相机拍摄的失真图像的方法。例如,在专利文件1、2、3中披露了典型方法。在传统技术中,从拍摄的图像中提取矩形等,并且执行投影变换使得矩形看起来是平面的。首先,从拍摄的图像中生成缩小的图像,从缩小的图像提取边缘区域,并对边缘区域执行失真校正。然后,对经历了失真校正的边缘区域执行Hough变换或者Radon变换来检测直线。从直线的组合中识别拍摄图像的四边形形状。从四边形计算投影变换矩阵,并且对拍摄图像执行投影变换,由此校正失真。在另一个例子中,提取多个矩形,并将这些矩形重叠在图像上。该图像显示给使用者使得使用者可以选择矩形。基于选择的矩形执行投影变换。

专利文件1:日本公开专利申请第2005-122320号

专利文件2:日本公开专利申请第2005-122328号

专利文件3:日本公开专利申请第2000-341501号

然而,在上述传统技术中,离图像中心最远的直线优选识别为四边形的边。因此,当物体没有放置在图像的中间时,也就是,当要被识别的四个边没有位于图像中心的四个方向时,则不能识别物体。此外,由于执行Hough变换等来检测直线,这一处理耗时严重。Hough变换的表决算法特别需要大量的时间。在专利文件2中披露的技术通过限制X轴方向的候选直线的倾斜为45°≤θ≤135°,以及Y轴方向的候选直线的倾斜为135°≤θ≤225°来试图提高处理速度;然而,其并不能充分地提高速度。此外,如果基于N(整数)个检测的直线的倾斜来确定四边形的垂直边和水平边,则拍摄物体的条件是受限的。具体地,可以识别图17A所示的四边形,但是不能识别图17B所示的通过倾斜照相机拍摄的四边形,即使这两个四边形是相同的物体。

因此,在失真校正的预处理中需要图像处理方法和设备、具有数字照相机功能的数字照相机、以及记录图像处理程序的记录介质,其可以相比传统技术以更高的精度在更短的时间内从输入图像识别一个或多个四边形。

在另一个例子中,提取多个矩形,并且将提取的矩形重叠在图像上。该图像显示给使用者,使得使用者可以选择矩形。基于选择的矩形执行投影变换。

为使用者显示多个提取的矩形,并且基于使用者选择的矩形执行失真校正是可行的。这是因为为了从拍摄的图像确定期望的物体必须知道使用者的意图。例如,即使不同的使用者拍摄了相同的图像,期望的物体也可以是根据使用者而不同的。

然而,多个提取的矩形通常相互重叠,并且一次显示在图像上。因此,区分矩形是困难的。使用者需要看相同的矩形很多次来确定选择是否正确。

此外,照相机不可能知道使用者的意图,因此,使用者期望的矩形可能不总包括在自动提取的矩形中。然而,传统的技术仅允许使用者在提取的矩形中进行选择。如果没有包括期望的矩形,使用者承受再次拍摄物体的麻烦。此外,如果从移动的车辆中拍摄物体,并且在提取的矩形中不包括期望的矩形,使用者可能不能再次拍摄物体。

因此,在例如数字照相机的失真校正的预处理中需要图像处理方法和设备、具有图像处理方法和设备的功能的数字照相机、以及记录图像处理程序的记录介质,借此,使用者可以马上区分多个矩形,并且容易地选择最优的矩形,其中显示重叠在图像上的多个提取的矩形来允许使用者选择期望的矩形。

此外,需要图像处理方法和设备、具有图像处理方法和设备的功能的数字照相机、以及记录图像处理程序的记录介质,其能够在没有提取到期望的例如矩形的形状时,校正显示的形状。

发明内容

因此,本发明可以提供图像处理方法和装置,具有图像处理方法和装置的功能的数字照相机,以及记录消除上述问题的图像处理程序的记录介质。

本发明的实施例提供一种图像处理方法,用于从输入图像中识别一个或多个四边形,该方法包括以下步骤:(a)从输入图像中检测多个边缘区域;(b)提取与检测到的边缘区域对应的多条线;(c)根据包括在线对的两条线之间的位置关系将从提取的线中选择的线对分类,并且对该线对计算线对评估值;(d)从多个线对中选择两个线对的组合,从包括在选择的两个线对中的四条线生成四边形,并且基于形成四边形的两个线对的分类和线对评估值为四边形计算四边形评估值;以及,(e)基于计算的四边形评估值选择四边形。

本发明的实施例提供一种图像处理装置,用于从输入图像识别一个或多个四边形,该装置包括:边缘区域检测单元,配置来从输入图像中检测多个边缘区域;线提取单元,配置来提取与检测到的边缘区域对应的多条线;线对分类/评估单元,配置来从提取的线中选择线对,根据包括在线对的两条线之间的位置关系将该线对分类,并且对该线对计算线对评估值;四边形评估单元,配置来从多个线对中选择两个线对的组合,从包括在选择的两个线对中的四条线生成四边形,并且基于形成四边形的两个线对的分类和线对评估值为四边形计算四边形评估值;以及,四边形选择单元,配置来基于计算的四边形评估值选择四边形。

本发明的实施例提供一种图像处理方法,包括以下步骤:从输入图像中提取多个形状;通过将在提取步骤提取的形状重叠在输入图像上并且加亮每个形状的图像区域来产生对应于这些形状的多个加亮形状区域图像;以及,控制加亮形状区域图像的显示。

本发明的实施例提供一种图像处理装置,包括:显示单元,配置来显示图像;形状提取单元,配置来从输入图像中提取多个形状;重叠图像产生单元,配置来通过将由形状提取单元提取的形状重叠在输入图像上并且加亮每个形状的图像区域来产生与这些形状对应的多个加亮形状区域图像;以及,图像显示控制单元,配置来控制显示单元显示加亮形状区域图像。

本发明的有益效果

根据本发明,可以从拍摄的图像中识别四边形,并且识别的四边形可以以高精度和高速度转换成看起来是从正面拍摄的图像。

根据本发明,在使用数字照相机等的过程中,当从拍摄的图像中提取的例如为矩形的多个形状是被重叠在显示给使用者的图像上来选择期望的矩形时,使用者可以容易地选择最优的矩形。此外,当没有提取到期望的形状时,使用者可以修改提取的形状来获得期望的形状,而不用再次拍摄物体的照片。

附图说明

图1是根据本发明第一实施例的包括图像处理功能的数字照相机的方框图;

图2是失真校正的示意图;

图3是图1所示的失真校正单元的详细方框图;

图4是由图3所示的边缘区域检测单元执行的处理的流程图;

图5A、5B、5C是边缘检测滤波器以及应用了滤波器的亮度图像的例子;

图6是根据在垂直方向和水平方向的亮度变化来划分的二维空间的例子;

图7是由图3所示的线提取单元执行的整个处理的流程图;

图8A、8B、8C描述了线提取的例子;

图9是图7所示的步骤1104的详细流程图;

图10是搜索相邻边缘区域的例子;

图11是由图3所示的线生成单元执行的处理的流程图;

图12A、12B、12C是线生成的例子;

图13是由图3所示的线对分类/评估单元执行的处理的流程图;

图14是由图3所示的四边形评估单元执行的处理的流程图;

图15是描述由图3所示的投影变换单元执行的部分处理的示意图;

图16A、16B、16C是描述校正从拍摄的图像提取的四边形的失真的例子的示意图;

图17A、17B是描述传统技术的问题的图示;

图18是根据本发明第二实施例的包括信息处理功能的数字照相机的方框图;

图19是布置在图18所示数字照相机的背面的显示单元和处理单元的示意图;

图20是图18所示的加亮形状区域图像生成/显示控制单元的功能方框图;

图21是输入图像的例子;

图22是根据第三实施例的重叠图像产生方法(部分1)的流程图;

图23是重叠图像的例子;

图24是重叠图像的另一例子;

图25还是重叠图像的再一例子;

图26是由图20所示的四边形提取结果修改单元执行的处理的转换图;

图27是切换目标重叠图像的例子;

图28是修改对应于目标重叠图像的四边形的例子;

图29是修改对应于目标重叠图像的四边形的另一个例子;

图30还是修改对应于目标重叠图像的四边形的另一个例子;

图31还是修改对应于目标重叠图像的四边形的另一个例子;

图32A、32B是投影变换图像的例子;

图33是根据第四实施例的重叠图像产生方法(部分2)的流程图;

图34是根据第四实施例的重叠图像的例子;

图35是根据第五实施例的重叠图像产生方法(部分3)的流程图;

图36是根据第五实施例的重叠图像的例子;

图37是根据第六实施例的重叠图像产生方法(部分4)的流程图;

图38是根据第六实施例的重叠图像的例子;

图39是根据第七实施例的重叠图像产生方法(部分5)的流程图;

图40是根据第七实施例的重叠图像的例子;

图41是根据第七实施例的重叠图像的另一个例子;

图42还是根据第七实施例的重叠图像的另一个例子;

图43还是根据第七实施例的重叠图像的另一个例子;

图44是根据第八实施例的重叠图像产生方法(部分6)的流程图;以及

图45是根据第八实施例的重叠图像的例子。

具体实施方式

根据本发明的实施例,为了从输入图像中检测直线而不执行需要大量时间的Hough变换,对输入图像的每个像素定义边缘方向,从每个边缘方向检测边缘区域,并且检测对应于每个边缘区域的线(直线)。这提高了边缘检测处理的速度。

如参考背景技术所述,如果基于N个检测的直线的倾斜确定四边形的垂直边和水平边,则拍摄物体的条件是受限的。由此,在本发明中,考虑可以由来自N个检测的直线之中的四条线的组合形成的所有可能的四边形,使得可以在不同的条件下拍摄物体。然而,需要花很长时间来得出由来自N个检测的直线之中的四条线的组合形成的所有可能的四边形。为了缩短处理时间,通过将来自N个检测的线的两条线配对来产生线对;每一对被分类为例如相对的、相邻的或不相关的;向线对给出评估值;通过专注于分类为相对的或相邻的线对来识别四边形;以及基于评估值选择四边形。由此,如下面所述,可以显著减少边缘检测处理所需要的时间。

通过从N条线提取四条线所获得的四边形的最大数目是K=3×N×(N-1)×(N-2)×(N-3)/24(还要考虑四条线排列的顺序)。因此,为了提高边缘检测处理的处理速度必须减小数字K。

通常,从正面拍摄矩形布告板的照片,并且使布告板恰好适合数字照相机的视角。由此,在拍摄图像中的矩形布告板具有如下特性:

1.矩形的相对的边几乎是平行的,并且相互之间以一定距离布置;

2.矩形的相邻的边呈90度,并且理所当然的具有交点。

因此,当从N条线中提取的两条直线几乎平行时,这两条直线被分类为相对的,当它们几乎呈90度时,它们被分类为相邻的,否则被分类为不相关的。此外,计算通过无限延伸N条线中的两条线来获得的线的交点,计算交点和线之间的距离,由此计算两条边缘线的邻接的可能性(Likeliness)(=评估值)。

从两对相对的线的组合和四条相邻的线的组合来明确确定四边形的四条线。因此,从K(整数)个可能的四边形中,可以不考虑不是从两对相对的线的组合和四条相邻的线的组合生成的四边形。此外,四边形的四个顶点是线相交的地方,因此,可以根据四个评估值的大小(level)来评估四边形。

在本发明中,为了提取四边形,即使在线由于噪声等而断了时,或者在输入图像失真时,或者在拍摄的物体的背景包括复杂的颜色时,根据需要组合多条线来生成新的线。

如果使用传统的Sobel滤波器来检测(包括黑色背景上的白色矩形的)图像的边缘,则提取沿着矩形四周的所有像素作为一个边缘区域。然而,在本实施例中,不执行Hough变换,而将图像分成边缘方向并且随后获得边缘区域,使得可以提取矩形的每个边作为不同的边缘区域。

通常,当拍摄物体的照片时,将物体置于中间,并且使得物体恰好适合于数字照相机的视角。在本发明中考虑这一倾向性。具体地,当在失真校正模式拍摄照片时,为了使使用者更容易地确定图片的构成,基于四边形的区域计算评估值。可以考虑该评估值来选择四边形。

当使用者选择使用失真校正模式拍摄在平面上的物体的照片时,绝大多数物体是矩形的。因此,在根据本发明的失真校正处理中,首先假设要识别矩形。由此,当使用者拍摄矩形时,通过计算投影变换矩阵来将四边形变换为平行四边形,基于投影变换后的平行四边形的形状计算评估值,以及基于评估值选择四边形,可以显著增加识别精度。

下面参考附图给出本发明的实施例的详细描述。

图1是根据本发明第一实施例的包括图像处理功能的数字照相机的方框图。如图1所示,拍摄部11包括镜头111、光圈112、快门113、光电转换元件114、以及预处理单元115。通过操作快门113,光电转换元件114通过镜头111和光圈112来接收物体光线,并且将物体光线转换成模拟图像信号。光电转换元件114的例子是CCD(电荷耦合器件)。预处理单元115包括前置放大器、例如为AGC(自动增益控制)的模拟信号处理单元、以及A/D转换单元。预处理单元115对从光电转换元件114接收的模拟图像信号执行例如为放大/钳位的预处理,并且将模拟图像信号转换成数字图像信号。

通过照相机信号处理部12发送预处理单元115输出的数字信号,并且将该数字信号载入帧存储器15。帧存储器15的例子包括VRAM、SRAM以及DRAM。帧存储器15用于暂时保存要由照相机信号处理部12处理的图像信号。

照相机信号处理部12包括数字信号处理器(DSP)。照相机信号处理部12包括失真校正单元120,失真校正单元120执行根据本发明的图像处理功能。下面描述失真校正单元120的细节。ROM 13是程序存储器,用于保存由照相机信号处理部12执行的程序,RAM 14是工作存储器,用于暂时保存由照相机信号处理部12处理中的数据,或者信号处理所必须的其他数据。

CPU 16包括微型计算机,其控制拍摄部11和照相机信号处理部12。CPU16也可以用作ROM 13和RAM 14。

照相机信号处理部12读取载入到帧存储器15中的图像信号,并且对图像信号执行例如为图像压缩的处理。随后,通过接口单元(I/F)17发送图像信号,并且将该图像信号存储在外部存储单元20中。外部存储单元20的例子包括IC存储卡以及光磁盘。可选地,可以使用调制解调器卡和ISDN卡来通过网络将图像信号发送至远程终端。另一方面,通过I/F 17将从外部存储单元20读取的图像信号发送至照相机信号处理部12,在照相机信号处理部12中对图像信号解压缩,并且然后将其载入到帧存储器15中。

为了显示图像信号,通过照相机信号处理部12和I/F 17将帧存储器15中的图像信号发送至显示单元18。显示单元18的例子是在数字照相机上提供的液晶显示装置。

在照相机信号处理部12中的失真校正单元120执行失真校正。例如,表示拍摄物体的输入图像的数字图像信号被载入到帧存储器15中。将数字图像信号从帧存储器15发送至失真校正单元120。失真校正单元120从图像中提取四边形(矩形)形状,并且校正四边形形状的失真。例如,可以将校正的图像信号再次载入到帧存储器15中,用于随后的处理。

图2是描述失真校正的示意图。可以通过将用于失真校正的图像处理程序存储到ROM 13中,并且使照相机信号处理部12中的数字信号处理器(DSP)执行该程序来执行失真校正单元120的功能。可选地,可以由硬件部分地或全部地实现该处理功能。下面描述失真校正单元120的结构和处理的细节。

图3是失真校正单元120的详细方框图。失真校正单元120包括边缘区域检测单元210、线提取单元220、线生成单元230、线对分类/评估单元240、四边形评估单元250、四边形选择单元260以及投影变换单元270。这些单元(210到260)共同地称为四边形提取部200。下面描述每个单元执行的处理的细节。

<边缘区域提取>

边缘区域检测单元210检测拍摄的物体的输入图像的边缘区域。具体地,边缘区域检测单元210提取图像中亮度显著改变的部分,并且将该提取的部分确定为边缘区域。图4是边缘区域检测处理的流程图。

首先,对输入图像应用例如Sobel滤波器或Canny滤波器的边缘检测滤波器来计算X方向的亮度变化(Luminance Variation)gh以及Y方向的亮度变化gv(步骤1001)。X变化gh和Y变化gv是方程funcl(gh,gv)的输入,并且当方程funcl(gh,gv)的返回值为大于或等于阈值时,将对应的像素确定为边缘部分(边缘像素)。当方程funcl(gh,gv)的返回值小于阈值时,不将对应的像素确定为边缘部分,而是确定为非边缘像素(步骤1002)。然后,由X变化gh和Y变化形成的二维空间被分成代表不同方向的多个组,根据每个边缘像素的方向,将其分配给一个组(步骤1003)。在本实施例中,如下所述,由X变化gh和Y变化gv形成的二维空间被分成八个组,从组1到组8,并且将每个边缘像素分配给八个组中的一个组。由此,每个组代表一个边缘图像。在每个边缘图像上附上标签来识别它所属的方向组(步骤1004),并且将边缘图像分成边缘区(步骤1005)。

以下将更详细地描述边缘检测处理。在图5C中示出了输入图像的亮度图像的例子。在图5A、5B中示出的Sobel滤波器用作边缘检测滤波器,在图5C的左上角,(x00,y00)表示像素坐标,以及v00表示像素值。对其他像素应用相同的条件。

假设目标像素为像素(x11,y11)。通过将图5A所示的在X方向上的Sobel滤波器应用于图5C所示的亮度图像而获得如下的在像素(x11,y11)的X方向上的亮度变化gh:

gh=v00×(-1)+v10×(-2)+v20×(-1)+v02×1+v12×2+v22×1

通过将图5B所示的在Y方向上的Sobel滤波器应用于图5C所示的亮度图像而获得在如下的在像素(x11,y11)的Y方向上的亮度变化:

gh=v00×(-1)+v01×(-2)+v02×(-1)+v20×1+v21×2+v22×1

像素(x11,y11)的亮度变化g由g=gh2+gv2获得。当g大于或等于预定的阈值(例如50)时,像素(x11,y11)被确定为边缘像素;当g小于预定的阈值时,像素(x11,y11)被确定为非边缘像素。

通过对每个像素重复上面的处理,提取输入图像的边缘部分(边缘像素)。当提取了输入图像的边缘部分时,如图6所示,由X方向的亮度变化gh和Y方向的亮度变化gv形成的二维空间被分成八个组,并且根据边缘像素的方向,将边缘像素分到组1到8的一个中。通过以边缘方向区分边缘像素,可以区分应该存在于拍摄物体的周围的四个边缘(也就是,矩形的每个边可以被提取为不同的边缘区域)。此外,由于可以不执行Hough转换而检测到边缘,因此,提高了边缘检测处理的处理速度。

通过对边缘图像赋值0(黑色)以及对非边缘图像赋值255(白色)来产生边缘图像。在这个例子中,对每个方向组1到8产生边缘图像;换句话说,产生了八个边缘图像。对每个边缘图像贴上标签来识别对应的方向组。将边缘图像分成不同的边缘区。每个边缘区代表黑色像素的连接。如果包括在边缘区(黑色连接区)中的边缘像素的数目没有到达预定的阈值,则对应的边缘区被确定为噪声,并且被删除。

也可能只产生一个边缘图像,并且对每个边缘像素分配代表不同方向组的不同颜色。

<线提取>

线提取单元220对由边缘区域检测单元210检测到的边缘区域的像素信息执行主分量分析,来提取对应于每个边缘区域的线。对于每个方向组执行线提取。图7是线提取处理的流程图。图8A到8C描述了线提取的例子。

线提取单元220对边缘区域的像素信息执行主分量分析(步骤1101),并且提取对应于边缘区域的直线(步骤1102)。假设有如图8A所示的边缘区域,则对包括在这个边缘区域中的像素信息执行主分量分析。结果,提取了如图8B所示的直线。在执行主分量分析的同时,获得了第一主分量的分布率(contributing rate)。当边缘区域看起来是细长的时候,第一主分量的分布率显示为大的值。因此,第一主分量的分布率用作表达边缘区域为直线的可能性的值。这个值和直线一起保存。然后,如图8C所示,定义围绕边缘区域的最小矩形,定义矩形和线的交点,并且确定对应于边缘区域的线的两个边缘点(坐标)(步骤1103)。

通过对从八个边缘图像检测到的每个边缘区域执行上面的线提取处理,提取对应于输入图像中的边缘区域的线。

然后,执行下面的步骤来补偿断开的直线,这些直线是由于噪声等断开的。对于八个边缘图像的每一个,搜索每个边缘区域的主分量方向(两个方向)来寻找相邻的边缘区域。如果需要(如果应该相互邻近的边缘区域相互分开了),则将相邻的边缘区域合并,并且重复线提取处理(步骤1104)。图9是用于相邻边缘区域的合并处理的流程图。图10是部分边缘区域的例子,包括三个边缘区域301、302、303。

首先,在某一边缘区域,线提取单元220搜索由主分量方向(两个方向)定义的多个像素(步骤1110),并且确定是否存在相邻边缘区域(步骤1111)。例如,如在图10中由箭头311、312指示的那样,线提取单元220从边缘区域301的左和右边缘点搜索规定的数目的像素。图10中这些箭头的长度表示要被搜索的规定的像素的数目。规定的像素的数目可以是固定值,或者基于对应于边缘区域的线的长度来定义。

在图10中,边缘区域301和边缘区域302的边缘点之间的距离在规定的数目的像素之内。因此,将边缘区域301和边缘区域302确定为相邻边缘区域。然而,边缘区域301和边缘区域302之间的距离超过了规定的数目的像素,因此不能被确定为相邻的边缘区域。

然后,当确定存在相邻的边缘区域时,将相邻的边缘区域中的像素信息条目组合来产生组合的像素信息(步骤1112),并且对组合的像素信息执行主分量分析(步骤1113)。线提取单元220确定此时计算的边缘线的可能性是否大于或等于阈值(步骤1114)。当可能性大于或等于阈值(主分量的比率大)时,线提取单元220通过合并相邻的边缘区域来产生合并的边缘区域,并且删除原来的边缘区域(步骤1115)。对该产生的区域重复从步骤1110开始的处理。对所有的边缘区域重复这个处理,并且然后重复图7所示的处理。

具体地,在图10所示的例子中,通过将确定为相邻边缘区域的边缘区域301和边缘区域302的像素信息条目组合起来产生组合的像素信息。对组合的像素信息执行主分量分析。如果边缘线的可能性大于或等于阈值,则将边缘区域301和边缘区域302合并产生新的边缘区域,并且删除边缘区域301和边缘区域302。对新的边缘区域重复从步骤1110开始的处理。

对在八个边缘图像中的所有边缘区域重复上面的处理。对于最后剩余的边缘区域重复图7所示的处理。由此,完成线提取。

在上面的描述中,为了方便而单独处理从八个边缘图像提取的边缘区域。然而,在下述对随后的处理的描述中,不区分从八个边缘图像提取的边缘区域。下面假设边缘区域的总数是N1。因此,由线提取单元220提取的线的总数是N1。每条线附有序列号。

<线生成>

线生成单元230根据需要执行用于从线提取单元220提取的N1条线中生成新线的处理。当边缘区域检测单元210将边缘图像分成八个方向时,单条线可能被错误地分成多条线。线生成单元230执行处理来补偿这种情况。当输入图像失真时,或者当拍摄的物体的背景包括复杂的颜色时,线生成单元230操作。图11是线生成单元230执行的处理的流程图。图12A、12B、12C是线生成的例子。

输入由线生成单元230提取的N1条线(步骤1200)。在N1条线中,线生成单元230提取具有编号i和编号j的两条线(步骤1201)。线生成单元230从N1条线中生成所有可能的线对;对的总数由N1×(N1-1)/2表示(步骤1202)。对所有的线对给出序列号。将计数值Cnt的默认值设置为1,将N2设置为N2=N1(步骤1203)。Cnt表示作为处理对象的线对的序列号,并且N2表示现有的线(N1)与新线之和。随后执行下面的步骤。

线生成单元230确定计数值Cnt是否已超过N1×(N1-1)/2(步骤1204)。当计数值Cnt超过了N1×(N1-1)/2(在步骤1204中为否)时,处理结束。当计数值Cnt未超过N1×(N1-1)/2(在步骤1204中为是)时,线生成单元230选择第Cnt对线(最初的第一对)(步骤1205),并且计算在包括在该对中的两条线(线A和线B)之间的在范围0°到90°内的角度(步骤1206)。线生成单元230确定线A和线B之间的角度是否大于或等于预定的阈值(例如5°)(步骤1207)。当线生成单元230确定角度大于或等于该阈值时(在步骤1207中为否),计数值增加1(Cnt+1)(步骤1216),并且处理返回至步骤1204。图12A和图12B是线A和线B之间的位置关系的例子,并且它们之间的角度由θ表示。图12A是当A、B这对线之间的角度大于或等于阈值时的例子,以及图12B是当A、B这对线之间的角度θ小于阈值的例子。

当线生成单元230确定角度小于阈值时(在步骤1207中为是),线生成单元230测量A、B这对线之间的距离(步骤1208)。A、B这对线之间的距离被定义为如下所述的距离1到4之中的最小值。

1.在通过无限延伸线B所获得的直线和线A的起点之间的距离

2.在通过无限延伸线B所获得的直线和线A的终点之间的距离

3.在通过无限延伸线A所获得的直线和线B的起点之间的距离

4.在通过无限延伸线A所获得的直线和线B的终点之间的距离

线生成单元230确定获得的线A、B之间的距离是否低于预定的阈值(步骤1209)。当距离大于或等于阈值(距离太大)时(步骤1209中为否),计数值增加1(Cnt+1)(步骤1216),并且处理返回至步骤1204。

另一方面,当距离小于阈值时(步骤1209中为是),从线A的起点和终点以及线B的起点和终点的组合获得了四个距离。确定获得的四个距离中的最大值(距离1)和最小值(距离2)(步骤1210)。线生成单元230确定是否满足下面的公式(1),其中V是预定的阈值(步骤1211):

V<(线A的长度+线B的长度)/距离1    ----(1)

当不满足公式(1)时(步骤1211为否),计数值增加1(Cnt+1)(步骤1216),并且处理返回至步骤1204。

当满足公式(1)时(步骤1211为是),线生成单元230比较线对中线A和线B的X、Y坐标,并且确定是否满足下面的条件(步骤1212):

【条件】

(线A的起点和终点的X坐标大于或等于线B的起点和终点的X坐标,或者线A的起点和终点的X坐标小于线B的起点和终点的X坐标)以及

(线A的起点和终点的Y坐标大于或等于线B的起点和终点的Y坐标,或者线A的起点和终点的Y坐标小于线B的起点和终点的Y坐标)。

当不满足这些条件时(步骤1212中为否),计数值增加1(Cnt+1)(步骤1216),并且处理返回至步骤1204。

当满足这些条件时(步骤1212中为是),生成新的线(步骤1213)。新的线是具有起点和终点的线C,线C是在步骤1210中从线A的起点和终点以及线B的起点和终点的组合中获得的四个距离中距离最大的两个点的组合。对于图12B中的例子,如图12C所示生成新线C。没有删除现有的线(线A和线B),并且现有的线被看作不满足步骤1212中描述的条件。对生成的线加上随后的序列号(步骤1214)。N2增加1,其表示为N2+1(步骤121),并且计数值加1(Cnt+1)(步骤1216),并且处理返回至步骤1204。

对于所有的线对,即N1×(N1-1)/2对,重复上面的处理使得生成并加入必要的线。由此,通过将线生成单元230新生成的线加入到现有的N1条线中来获得一共N2条线。

在上面的描述中,当满足步骤1207、1209、1211、1213中的条件时生成线。然而,如果必要,即使当仅满足一个条件也可以生成新线。此外,可以产生由生成的线C和已存在的线构成的新的线对,并且确定是否需要产生另一条新线。

<线对分类/评估>

线对分类/评估单元240从与现有的N1条线和由线生成单元230生成的(N2-N1)条线的总和对应的N2条线中提取具有编号i和编号j的两条线(以下称为线对i、j)。线对分类/评估单元240将线对分类,并且确定评估值。在这个例子中,线对被分类为:不相关的、相对的或者相邻的。图13是由线对分类/评估单元240执行的处理的流程图。

输入与现有的N1条线和由线生成单元230生成的(N2-N1)条线的总和对应的N2条线(步骤1300)。提取具有编号i和编号j的两条线(线对i、j)(步骤1301)。从N2条线生成所有的线对组合;对的总数对应于N2×(N2-1)/2(步骤1302)。对每个线对给出序列号。计数值Cnt的默认值设置为1(步骤1303)。随后,执行下面的步骤。

线对分类/评估单元240确定计数值Cnt是否大于或等于N2×(N2-1)/2(步骤1304)。当计数值Cnt大于或等于N2×(N2-1)/2(在步骤1304中为否)时,处理结束。当计数值Cnt小于N2×(N2-1)/2(在步骤1304中为是)时,线对分类/评估单元240选择第Cnt个对线(最初的第一对)(步骤1305),并且计算在包括在该对中的两条线(线A和线B)之间的在范围0°到90°内的角度(步骤1306)。图12A、12B中示出了线A和线B之间的角度的例子。根据线A、B之间的角度执行下面的处理。α、β的值基于例如统计数据预先确定。

当线对之间的角度是0°到α°时,线对分类/评估单元240测量线对之间的距离(步骤1307)。线对分类/评估单元240确定线对之间的距离是否低于预定的阈值(步骤1308)。当线对之间的距离低于预定的阈值时(步骤1308中为是),线对分类/评估单元240将线对分类为不相关的,并且将评估值确定为0(步骤1309)。当线对之间的距离大于或等于阈值时(步骤1308中为否),线对分类/评估单元240将线对分类为相对的,并且将评估值确定为0(步骤1310)。随后,计数值增加1(Cnt+1)(步骤1314),并且处理返回至步骤1304。

当线对之间的角度是α°到β°时,线对分类/评估单元240将线对分类为相对的(步骤1311),并且处理继续至步骤1313。当线对之间角度是β°到90°时,线对分类/评估单元240将线对分类为相邻的(步骤1312),并行处理继续至1313。随后,计数值增加1(Cnt+1)(步骤1314),并且处理返回至步骤1304。

在步骤1313中,如下获得线对的评估值。评估值表示为0到1之间。

1.获得通过无限延伸线A所获得的直线以及通过无需延伸线B所获得的直线的交点O

2.获得交点O和线A的起点之间的欧几里得距离(Euclid Distance),以及交点O和线A的终点之间的欧几里得距离,并且将较短的距离确定为距离A

3.获得交点O和线B的起点之间的欧几里得距离,以及交点O和线B的终点之间的欧几里得距离,并且将较短的距离确定为距离B

4.距离A和距离B代入下面的方程(2)中来计算评估值(值)

常数1是根据图像大小的常数。通过改变常数1,即使当交点O存在于图像区域的外面并且要提取的四边形的顶点存在于图像区域的外面时,也可以执行计算。

在本实施例中,线对分类为相对的、相邻的或者不相关的,并且有一种类型的评估值。也可以为相对的线确定评估值。然而,对于增加的分类或评估值,处理需要花费更多的时间。

<四边形评估>

四边形评估单元250从由线对分类/评估单元240获得的R(整数)个对(R=N2(N2-1)/2)中顺序地提取两个线对。基于提取的两个线对的分类和评估值,对由两个线对形成的四边形确定评估值。图14是由四边形评估单元250执行的处理的流程图。

输入由线对分类/评估单元240获得的N2×(N2-1)/2个线对(步骤1400)。值P和R设置为P=1,R=N2×(N2-1)/2(步骤1401)。在R对之外(R=N2×(N2-1)/2),提取两个线对所有可能的组合(步骤1402到1406),并且执行下面的步骤。

四边形评估单元250提取两个线对,线对P和线对Q(步骤1407)。线对P等效于包括线i和线j的线对i,j,并且线对Q等效于包括线k和线l的线对k,l。

四边形评估单元250确定线对P和线对Q是否都包括相对的线(步骤1408)。当线对P和线对Q都被分类为相对的时,则包括在线对P和线对Q中的线i、线j、线k和线l可能形成四边形。因此,四边形评估单元250确定四个线对(线对j,k、线对i,l、线对i,k、线对j,l)的评估值是否大于0(步骤1409)。当所有四个线对的评估值大于0时,四边形评估单元250生成由线(直线)i和线k的交点m1、线i和线l的交点m2、线j和线l的交点m3、线j和线k的交点m4形成的四边形(步骤1410)。这个四边形(i,k,j,l)的评估值V通过将四个线对的评估值相加来计算(步骤1411)。

在本实施例中,基于线对的评估值是否大于0来做出决定。然而,也可以为线对的评估值提供阈值,并且预先将线对的评估值排序使得仅仅使用具有高的评估值的线对。由此,边缘检测处理需要更少的时间。此外,当m1、m2、m3、m4的坐标远离图像区域时,可以设置V(i,k,j,l)=0。此外,当四边形m1m2m3m4不是凸四边形时,可以设置V(i,k,j,l)=0。

然后,获得四边形m1m2m3m4的面积S,并且将该面积S和V(i,k,j,l)相乘。(步骤1412)。取代和S相乘,可以产生单调地随着S的增加而增加大的函数g(S),并且在g(S)和V(i,k,j,l)之间执行乘法或加法。

然后,四边形评估单元250评估四边形m1m2m3m4的形状(步骤1413)。如下执行这一操作。线对i,j的线i和线j的交点以及线对k,l的线k和线l的交点被认为是两个没影点(Vanishing Point)。获得将这两个没影点变换成为无穷大距离的投影变换矩阵。通过假设四边形m1m2m3m4是存在于三维平面上的平行四边形并计算平面上的单位法线向量(a,b,c)(例如,参考由KenichiKanaya撰写、由Morikita Shuppan在1990年五月出版的“Gazo Rikai”)来获得投影变换矩阵。由此,可能获得旋转变换矩阵,其通过在拍摄图像时使用焦距来将单位法线向量和照相机的光轴相匹配。然后,通过对四边形m1m2m3m4执行投影变换来获得投影平行四边形n1n2n3n4,并且计算投影平行四边形的一个角度θ(0°到90°)。当θ大于或等于90°时,计算该平行四边形的其他角度。计算后的θ乘以V(i,k,j,l)。取代和θ相乘,可以产生单调地随着θ的增加而增加的函数f(θ),并且在f(θ)和V(i,k,j,l)之间执行乘法或加法。此外,由面积S或g(s)加权的V(i,k,j,l)可以进一步地由θ或者f(θ)加权。

然后,将形成四边形i,k,j,l的四个线对的交点m1、m2、m3、m4以及评估值V(i,k,j,l)被载入到存储器等中(步骤1414)。

<四边形选择>

四边形选择单元260从由四边形评估单元250载入的四边形中以评估值V(i,k,j,l)递减的顺序选择一个或多个四边形。如果必须,可以通过使用面积的评估值和形状的评估值的一个或两个进行选择。

<投影变换>

投影变换单元270基于由四边形选择单元260选择的四边形计算投影变换矩阵,对输入图像执行投影变换,并校正失真。

可以如下计算投影变换矩阵。以距原点最近的顶点作为起始点、以顺时针顺序重新排列四边形m1m2m3m4的顶点的顺序。图15是重新排列的例子。使用步骤1413中相同的方法来计算投影平行四边形,并且获得m1m2∶m3m4的值。假设输入图像的图像大小是1MB×1MB,投影变换单元270获得满足水平长度∶垂直长度=m1m2∶m3m4的矩形,其具有最大的面积,并且其中心和图像中心相匹配。获得的矩形的顶点以顺时针方向由u1,u2,u3,u4表示。类似于四边形m1m2m3m4,u1是u1、u2、u3、u4中距原点最近的顶点。投影变换单元270投影变换矩阵,其按照m1→u1,m2→u2,m3→u3,m4→u4将四边形m1m2m3m4的顶点和矩形u1u2u3u4的顶点链接起来。

通过使用这样获得的投影变换矩阵,对输入图像执行投影变换。根据需要,在执行投影变换时,也可能增大/缩小图像,或者以平行方向或旋转方向移动图像。

图16A、16B、16C是校正从拍摄的图像中提取的四边形的失真的例子。图16A是拍摄的图像(输入图像),并且图16B所示的四边形1600是从这个图像的投影图像中提取的。当校正失真时,可以获得图16C所示的图像。

根据本发明的实施例的数字照相机包括如下单元。第一单元,从输入到照相机的单个拍摄的图像中提取多个形状(四边形、矩形等)。第二单元,加亮提取的图像,在输入图像上重叠每个加亮的图像,由此产生多个加亮形状区域图像。第三单元,在数字照相机上显示加亮形状区域图像。在提取的形状的里面、外面或周边中的一个或多个区域,通过对输入图像中的不同区域执行不同的处理来产生加亮形状区域图像(通过使用不同的颜色或反转的颜色来区分)。对每个提取的形状产生/显示加亮形状区域图像。由此,使用者可以容易地确认并区分每个形状。

通过一次显示多个加亮形状区域图像,可以一次确认多个形状。通过一个接一个地显示多个加亮形状区域图像,可以以高分辨率显示每个图像。

通过设置一个形状作为目标形状并且产生/显示对应于目标形状的加亮形状区域图像,使得从对应于目标形状之外的形状的加亮形状区域图像中区别开来,使用者可以立刻区分并且容易地选择期望的形状。此外,通过放大加亮形状区域图像,可能以高分辨率仅显示目标形状。

可应用于本发明的数字照相机包括用于通过使用者的操作在加亮形状区域图像中修改期望的形状的单元。因此,当没有提取到期望的形状时,使用者可以修改提取的形状,使得不必再次拍摄物体的照片。

下面给出更详细的描述。图18是根据本发明第二实施例的包括图像处理功能的数字照相机的方框图。如图18所示,拍摄部11包括镜头111、光圈112、快门113、光电转换元件114、以及预处理单元115。通过操作快门113,光电转换元件114通过镜头111和光圈112来接收物体光线,并且将物体光线转换成模拟图像信号。光电转换元件114的例子是CCD(电荷耦合器件)。预处理单元115包括前置放大器、例如为AGC(自动增益控制)的模拟信号处理单元、以及A/D转换单元。预处理单元115对从光电转换元件114接收的模拟图像信号执行例如为放大/钳位的预处理,然后将模拟图像信号转换成数字图像信号。

通过照相机信号处理部12发送从预处理单元115输出的数字信号,并且将数字信号载入帧存储器15。帧存储器15的例子包括VRAM、SRAM以及DRAM。帧存储器15用于暂时地保存要由照相机信号处理部12处理的图像信号。

照相机信号处理部12包括数字信号处理器(DSP)。照相机信号处理部12包括加亮形状区域图像生成/显示控制单元130,其执行根据本发明实施例的图像处理功能。细节描述如下。ROM 13是程序存储器,用于保存由照相机信号处理部12执行的程序,RAM 14是工作存储器,用于暂时保存由照相机信号处理部12处理中的数据,或者其他必要的数据。

CPU 16包括微型计算机,其控制拍摄部11和照相机信号处理部12。CPU16也可以用作ROM 13和RAM 14。

照相机信号处理部12读取载入到帧存储器15中的图像信号,并且对图像信号执行例如图像压缩的处理。随后,通过接口单元(I/F)17发送图像信号,并且该图像信号存储到外部存储单元20中。外部存储单元20的例子包括IC存储卡以及光磁盘。可选地,可以使用例如调制解调器卡和ISDN卡来通过网络将图像信号发送至远程终端。另一方面,通过I/F 17将从外部存储单元20读取的图像信号发送至照相机信号处理部12,照相机信号处理部12对图像信号解压缩,并且然后将其载入到帧存储器15中。

如图19所示,显示单元18和操作单元19在数字照相机的背面相互邻近。显示单元18的例子是液晶显示器。操作单元19包括上/下/左/右按钮191到194,以及输入按钮195。

为了显示图像信号,在帧存储器15或RAM 14中的图像信号通过照相机信号处理部12和I/F 17发送至显示单元18。通过按下和显示单元18上显示的内容相关的按钮191至195,通过I/F 17将操作信号发送至照相机信号处理部12和加亮形状区域图像生成/显示控制单元130,并且执行如下所述不同的处理和显示控制。

下面描述加亮形状区域图像生成/显示控制单元130的结构和操作处理的例子。通过将程序存储在ROM 13中并且使得照相机信号处理部12中的数字信号处理器(DSP)执行该程序,可以执行加亮形状区域图像生成/显示控制单元130的功能。可选的,可以通过硬件部分地或者全部地实现处理功能。

在下面的例子中,从输入图像中提取四边形作为候选形状。然而,本实施例可应用于任何形状。使用了四个四边形(候选四边形)作为描述的对象;然而,可以使用任意数量的四边形。

图20所示加亮形状区域图像生成/显示控制单元130的功能方框图。加亮形状区域图像生成/显示控制单元130包括如下单元。四边形提取单元201,用作形状提取单元,从拍摄的输入图像中提取四边形。重叠图像产生单元202,用作加亮形状区域图像生成单元,通过在输入图像中重叠由四边形提取单元201提取的一个或多个四边形来产生包括加亮形状区域的重叠图像。四边形提取结果修改单元203根据需要修改由四边形提取单元201提取的四边形。投影变换处理单元204在修改之前或修改之后从四边形数据计算投影变换矩阵,并且对输入图像执行投影变换。图像显示控制单元205基于来自其他单元的指令控制重叠图像或投影变换图像在显示单元10上的显示。四边形信息存储部206保存与四边形有关的信息,例如在其他单元中的处理阶段或处理结果。四边形信息存储部206的例子是RAM 14。四边形信息存储部206包括如下单元。四边形存储单元2070,保存提取的四边形的形状。重叠图像存储单元2120,保存重叠图像,在重叠图像中,输入图像上重叠了一个或多个四边形。目标重叠图像管理单元2170,将在重叠图像存储单元2120中保存的图像之中的一个重叠图像保存为目标重叠图像。投影变换图像存储单元2180,保存通过对输入图像执行投影变换获得的图像。输入图像存储单元2190,保存输入图像。顶点信息存储单元2200,保存用于修改使用者选择的四边形的形状的顶点的坐标,也保存要在显示单元18上显示的颜色。帧存储器15可以用作输入图像存储单元2190。下面详细描述单元201到205的处理和操作。

<四边形提取单元201>

四边形提取单元201取出保存在输入图像存储单元2190中的拍摄的图像,并且从输入图像中提取四边形。图21示出了拍摄的图像的例子。

假设图21所示的拍摄的图像是输入图像,四边形提取单元201从输入图像中提取不同组合的四边形,评估这些四边形,根据评估值将这些四边形排序,选择前面的四个四边形(表示四边形的四个顶点的组合),并且将这四个四边形存储在四边形存储区域2070中。以降序排列的四个四边形是第一候选四边形2080、第二候选四边形2090、第三候选四边形2100以及第四候选四边形2110。如上描述,可以是任何数目的四边形。

四边形提取单元201可以使用任何传统的提取四边形的方法(例如,见专利文件2、3)。然而,通过使用在本说明书中描述的方法,可以以更高的精度和更快的速度提取四边形。

<重叠图像产生单元202>(部分1)

重叠图像产生单元202使用在输入图像存储单元2190中保存的输入图像以及在四边形存储单元2070中保存的候选四边形(第一候选四边形2080、第二候选四边形2090、第三候选四边形2100以及第四候选四边形2110)来产生第一重叠图像2130、第二重叠图像2140、第三重叠图像2150以及第四重叠图像2160,这些重叠图像是加亮形状区域图像,并且将重叠图像载入到重叠图像存储单元2120。同时,四个重叠图像的一个被载入到目标重叠图像管理单元2170作为目标重叠图像。在默认设置中,第一重叠图像2130是目标重叠图像。

可以以不同的方式产生重叠图像。首先描述典型的方法(部分1),接着描述其变型。

图22是根据第三实施例的重叠图像产生方法(部分1)的流程图。对于候选四边形和输入图像的所有像素(RGB 256色调)执行图22所示的处理。

输入输入图像的像素的坐标和像素值(Vr,Vg,Vb)(步骤301)。Vr表示红色(R)的像素值,Vg表示绿色(G)的像素值,以及Vb表示蓝色(B)的像素值。输入一个候选四边形(步骤302)。在这个例子中,假设输入了第一候选四边形2080。输入图像的每个像素被视为目标图像,并且对目标图像执行下面的处理。

重叠图像产生单元202确定目标图像是否在四边形的周界上(步骤303)。在四边形周界的像素被定义为在四边形的边上的像素,该四边形是由四边形提取单元201提取的四个顶点通过Bresenham的画线算法连接而形成的(假设四边形具有线宽1)。在四边形周界上的具有线宽2的像素被定义为四边形周界上的具有线宽1的像素与相邻于四边形周界上的具有线宽1的像素的像素之间的组合。可以类似定义四边形周界上的具有线宽3和线宽4的像素。那些不在四边形周界上并且由四边形周界上的像素围绕着的、位于四边形内部的像素称为四边形内部像素。不对应于四边形周界上的像素或者四边形内部像素的那些像素称为四边形外部像素。

当目标像素是四边形周界上的像素时,其像素值被设置为(255,0,0)(红色)(步骤304)。当目标像素不在四边形的周界上时,其像素值保持为(Vr,Vg,Vb)(步骤305)。

然后,重叠图像产生单元202确定要被产生的重叠图像是否是目标重叠图像(步骤306)。当要被产生的重叠图像是目标重叠图像时,重叠图像产生单元202确定目标像素是否在图像的周围(步骤307)。具体地,来自图形边缘的三个像素被定义为图像周围的像素。例如,在320×240的图像中,具有x坐标为0、1、2、3、317、318、319或者y坐标为0、1、2、237、238、239的像素是位于图像周围的像素。当目标像素在图像周围时,其像素值被设置为(255,255,0)(黄色)(步骤308)。

通过对输入图像中的所有像素执行上面的处理,重叠图像产生单元202产生第一重叠图像2130,其中对应于第一候选四边形2080的区域由红色加亮。此外,如果第一重叠图像2130是目标重叠图像,则图像的周围用黄色加亮。将产生的第一重叠图像2130载入到重叠图像存储单元2120中。

以相似的方式,重叠图像产生单元202从第二候选四边形2090产生第二重叠图像2140,从第三候选四边形2100产生第三重叠图像2150,从第四候选四边形2110产生第四重叠图像2160,并且将产生的图像载入到重叠图像存储单元2120中。同时,将目标重叠图像载入到目标重叠图像管理单元2170中。

当产生了所有四个重叠图像时,重叠图像产生单元202指示图像显示控制单元205将这些图像一次显示。例如,给出指令来在左上显示第一重叠图像2130,在右上显示第二重叠图像2140,在左下显示第三重叠图像2150,以及在右下显示第四重叠图像2160。图像显示控制单元205从重叠图像存储单元2120读取重叠图像2130到2160,并且根据来自重叠图像产生单元202的指令在显示单元18上显示这些图像。图23是在显示单元18上示出的一个例子。图23表示第一重叠图像2130是目标重叠图像。

如图24所示,除了以同样大小显示了所有四个重叠图像外,还只有目标重叠图像可以在前面被放大。可选的,如图25所示,输入图像(图21所示)也可以和四个重叠图像一起显示。

<四边形提取结果修改单元203>

使用者观看在显示单元18上显示的重叠图像,并且根据需要操作上/下/左/右按钮191到194和输入按钮195来切换目标重叠图像或者修改四边形的形状。

四边形提取结果修改单元203从操作单元19接收操作信息,选择目标重叠图像,修改目标重叠图像中的四边形,以及指示重叠图像产生单元202来再次产生重叠图像。图26是由四边形提取结果修改单元203执行的处理的转换图。在图26中,由四边形提取结果修改单元203执行的步骤由401到404表示,来自使用者的指令由411到419表示。使用者通过按下图19中示出的上/下/左/右按钮191到194和输入按钮195来输入指令。下面详细描述处理的步骤。在最初的阶段,重叠图像显示在如图23所示的显示单元18上,并且目标重叠图像是第一重叠图像2130。

(i)四边形区域选择处理

在四边形区域选择处理401中,使用者从四个四边形中选择一个四边形。在最初阶段,选择对应于在目标重叠图像管理单元2170中保存的目标重叠图像(第一重叠图像2130)的四边形。

当使用者按下右按钮194时(步骤411),在目标重叠图像管理单元2170中保存的目标重叠图像从第一重叠图像2130切换至第二重叠图像2140。重叠图像产生单元202更新第一重叠图像2130、第二重叠图像2140、第三重叠图像2150和第四重叠图像2160。重叠图像产生单元202指示图像显示控制单元205更新显示的图像。当接收到这个指令时,图像显示控制单元205更新显示单元18。当在最初阶段显示图23的内容时,通过按下右按钮194,将显示更新为图17的内容。

当使用者在最初阶段按下左按钮192时(步骤411),将在目标重叠图像管理单元2170中保存的目标重叠图像从第一重叠图像2130切换为第四重叠图像2160。重叠图像产生单元202更新第一重叠图像2130、第二重叠图像2140、第三重叠图像2150和第四重叠图像2160。重叠图像产生单元202指示图像显示控制单元205更新显示的图像。

如上所示,每次按下右按钮194时,根据在重叠图像存储单元2120中保存的重叠图像的升序排列切换在目标重叠图像管理单元2170中保存的目标重叠图像。每次按下左按钮192时,根据在重叠图像存储单元2120中保存的重叠图像的降序排列切换在目标重叠图像管理单元2170中保存的目标重叠图像。当使用者按下输入按钮195时(步骤142),处理转至四边形形状确定处理402。在这个例子中,在图23所示的显示状态中(第一重叠图像2130是目标重叠图像)按下输入按钮195。

(ii)四边形形状确定处理

在四边形形状确定处理402中,确定是否需要修改对应于在目标重叠图像管理单元2170中保存的目标重叠图像的四边形。

当使用者按下上按钮191、左按钮192、下按钮193或者右按钮194中的任一个时(步骤413),在选定的四边形的顶点之中的顶点的颜色改变,并且处理转至顶点校正选择处理403。在图28中,确定需要修改对应于被选为目标重叠图像的第一重叠图像2130的四边形,并且选择四边形的左上顶点。转至顶点校正选择处理403的目的是当在没有自动提取的四边形和期望的四边形相匹配的情况下通过手动校正来获得使用者期望的四边形。具体地,使用者可以手动校正对应于在目标重叠图像管理单元2170中保存的目标重叠图像的四边形和期望的四边形之间的差异。

选择的顶点的坐标和显示颜色保存在顶点信息存储单元2200中,但是重叠图像存储单元2120中的数据保持不变。因此,如果四边形提取结果修改单元203指示图像显示控制单元205不显示顶点,则显示从图28所示的状态返回到图23所示的状态。当按下输入按钮195时(步骤419),处理转至由投影变换处理单元204执行的处理。

(iii)顶点校正选择处理

顶点校正选择处理403确定在表示选择的四边形的四个顶点之中要被校正位置的顶点。当使用者按下左按钮192或者右按钮194时(步骤414),选择的顶点改变,因此,在顶点信息存储单元2200中保存的坐标和显示颜色改变。由此,指示图像显示控制单元205更新要被显示的顶点信息(图29)。

顺序设置四边形的四个顶点,因此,通过按下右按钮194或者左按钮192从一个向另一个切换选择的顶点。当使用者按下上按钮191时(步骤415),选择的顶点的颜色改变(图30),并且处理转至顶点位置修改处理404。当使用者按下输入按钮195时(步骤416),处理转至四边形形状确定处理402。

(iv)顶点位置修改处理

在顶点位置修改处理404中,使用者改变选择的顶点的位置。当使用者按下上按钮191、左按钮192、下按钮193或者右按钮194中的任一个时(步骤408),按照按下的按钮指示的方向,修改对应于在目标重叠图像管理单元2170中保存的目标重叠图像的四边形的形状,由重叠图像产生单元202更新重叠图像,更新在顶点信息存储单元2200中保存的顶点的坐标,并且指示图像显示控制单元205来显示四边形的修改后的形状(图31)。当使用者按下输入按钮195时(步骤417),处理转至顶点校正选择处理403。

<投影变换处理单元204>

投影变换处理单元204基于对应于在目标重叠图像管理单元2170中保存的目标重叠图像(例如,第一重叠图像2130)的修改后的四边形(如果不需要修改,则为原始提取的四边形)的数据计算投影变换矩阵。计算投影变换矩阵的方法是已知的(例如,见专利文件1),因此省略对它的描述。

投影变换处理单元204使用计算得到的投影变换矩阵来对输入图像存储单元2190中保存的输入图像(拍摄的图像)执行投影变换,将经过投影变换的输入图像载入到投影变换图像存储单元2180,并且指示图像显示控制单元205显示经过投影变换的输入图像。图像显示控制单元205从投影变换图像存储单元2180中读取经过投影变换的图像,并且将其显示在显示单元18上。

图32A、32B是显示经过投影变换的图像的示例屏幕。基于图21所示的输入图像,图32A、32B中的每个图像通过从对应于第一重叠图像2130的第一候选四边形2080计算得到的投影变换矩阵来进行投影变换。通过计算投影变换矩阵以及对输入图像执行投影变换使得提取的四边形的大小在图像中最大化,获得了图32B中所示的图像。

<图像显示控制单元205>

图像显示控制单元205基于来自重叠图像产生单元202、四边形提取结果修改单元203或者投影变换处理单元204的指令读取在重叠图像存储单元2120、目标重叠图像管理单元2170、输入图像存储单元2190或者投影变换图像管理单元2180中保存的图像,并且控制要在显示单元18上显示的图像。上面结合重叠图像产生单元202、四边形提取结果修改单元203或者投影变换处理单元204的操作给出了图像显示控制单元205的操作的描述,因此这里省略其描述。

【重叠图像产生单元202的变型】

如上所述,除了根据第三实施例的重叠图像产生方法(部分1),还有很多产生由重叠图像产生单元202执行的重叠图像(加亮形状区域图像)的方法的变型。下面描述其他的变型。

<重叠图像产生单元202>(部分2)

图33是根据第四实施例的重叠图像产生方法(部分2)的流程图。类似于图22所示的处理,对候选四边形和输入图像的所有像素(RGB 256色调)执行图33所示的处理。

输入输入图像的像素的坐标和像素值(Vr,Vg,Vb)(步骤501)。输入一个候选四边形(步骤502)。在这个例子中,假设输入了第一候选四边形2080。在本实施例中,重叠图像产生单元202在这一点确定要被产生的重叠图像是否是目标重叠图像(步骤503)。当要被产生的重叠图像是目标重叠图像时(在步骤503中为是),处理继续至步骤504。当要被产生的重叠图像不是目标重叠图像时(在步骤503中为否),处理继续至步骤508。输入图像的每个像素被视为目标像素,并且对目标像素执行下面的处理。

首先描述当要被产生的重叠图像是目标重叠图像时执行的处理(步骤504)。当目标像素在四边形内部时,其像素值保持为(Vr,Vg,Vb)(步骤505)。当目标像素在四边形周界上时,其像素值被设置为(0,0,255)(蓝色)(步骤506)。当目标像素在四边形的外部时,其像素值被设置为(0,0,0)(黑色)(步骤507)。

然后描述当要被产生的重叠图像不是目标重叠图像时执行的处理(步骤508)。当目标像素在四边形内部时,其像素值保持为(Vr,Vg,Vb)(步骤509)。当目标像素在四边形周界上时,其像素值被设置为(255,0,0)(红色)(步骤510)。当目标像素在四边形的外部时,其像素值保持为(Vr,Vg,Vb)(步骤511)。

通过对输入图像中的所有像素执行上面的处理,重叠图像产生单元202如下产生对应于第一候选四边形2080的第一重叠图像2130。具体地,如果第一重叠图像2130是目标重叠图像,则用蓝色加亮对应于第一候选四边形2080的区域,并且背景为黑色的。如果第一重叠图像2130不是目标重叠图像,则用红色加亮对应于第一候选四边形2080的区域,并且该区域剩下的部分保持不变。将产生的第一重叠图像2130载入到重叠图像存储单元2120中。

以相似的方式,重叠图像产生单元202从第二候选四边形2090产生第二重叠图像2140,从第三候选四边形2100产生第三重叠图像2150,从第四候选四边形2110产生第四重叠图像2160,并且将产生的图像载入到重叠图像存储单元2120中。同时,将目标重叠图像载入到目标重叠图像管理单元2170中。

当产生了所有四个重叠图像时,重叠图像产生单元202指示图像显示控制单元205将这些图像一次显示。例如,给出指令来在左上显示第一重叠图像2130,在右上显示第二重叠图像2140,在左下显示第三重叠图像2150,以及在右下显示第四重叠图像2160。图像显示控制单元205从重叠图像存储单元2120读取重叠图像2130到2160,并且根据来自重叠图像产生单元202的指令在显示单元18上显示这些图像。图34是在显示单元18上示出的一个例子。图34表示第一重叠图像2130是目标重叠图像。类似于第三实施例(部分1),如图24所示,只有目标重叠图像可以被放大并显示在剩下的图像的前面,使得可以容易地识别目标重叠图像。可选的,如图25所示,输入图像(图21所示)也可以和四个重叠图像一起显示,使得重叠图像可以和输入图像相比较。

<重叠图像产生单元202>(部分3)

图35是根据第五实施例的重叠图像产生方法(部分3)的流程图。类似于图22所示的处理,对于候选四边形和输入图像的所有像素(RGB 256色调)执行图35所示的处理。

输入输入图像的像素的坐标和像素值(Vr,Vg,Vb)(步骤601)。输入一个候选四边形(步骤602)。在这个例子中,假设输入了第一候选四边形2080。重叠图像产生单元202在这一点确定要被产生的重叠图像是否是目标重叠图像(步骤603)。当要被产生的重叠图像是目标重叠图像时(在步骤603中为是),处理继续至步骤604。当要被产生的重叠图像不是目标重叠图像时(在步骤603中为否),处理继续至步骤610。输入图像的每个像素被视为目标像素,并且对目标像素执行下面的处理。

首先描述当要被产生的重叠图像是目标重叠图像时执行的处理(步骤604)。当目标像素在四边形内部时,重叠图像产生单元202确定Y坐标是否是四的倍数(步骤605)。当Y坐标是四的倍数时(在步骤605中为是),其像素值被设置为(0,0,0)(黑色)(步骤606)。当Y坐标不是四的倍数时(在步骤605中为否),其像素值保持为(Vr,Vg,Vb)(步骤607)。当目标像素在四边形周界上时,其像素值被设置为(255,0,0)(红色)(步骤608)。当目标像素在四边形的外部时,其像素值被设置为(Vr/2,Vg/2,Vb/2)(步骤609)。

然后描述当要被产生的重叠图像不是目标重叠图像时执行的处理(步骤610)。当目标像素在四边形内部时,其像素值保持为(Vr,Vg,Vb)(步骤611)。当目标像素在四边形周界上时,重叠图像产生单元202确定目标像素和四边形的顶点之间的距离是否小于预定的阈值(步骤612)。当目标像素和四边形的顶点之间的距离小于预定的阈值时(在步骤612中为是),其像素值被设置为(255,0,0)(红色)(步骤613)。当目标像素和四边形的顶点之间的距离大于或等于预定的阈值时(在步骤612中为否),其像素值保持为(Vr,Vg,Vb)(步骤614)。同样,当目标像素在四边形的外部时,其像素值保持为(Vr,Vg,Vb)(步骤614)。

通过对输入图像中的所有像素执行上面的处理,重叠图像产生单元202如下产生对应于第一候选四边形2080的第一重叠图像2130。具体地,如果第一重叠图像2130是目标重叠图像,则用红色加亮对应于第一候选四边形2080的区域,在四边形区域的内部加入黑色的水平线,并且将背景转换为灰色。如果第一重叠图像2130不是目标重叠图像,仅仅从对应于第一候选四边形2080的区域中的四个顶点起的预定长度用红色加亮,并且剩余的保持不变。将产生的第一重叠图像2130载入到重叠图像存储单元2120中。

以相似的方式,重叠图像产生单元202从第二候选四边形2090产生第二重叠图像2140,从第三候选四边形2100产生第三重叠图像2150,从第四候选四边形2110产生第四重叠图像2160,并且将产生的图像载入到重叠图像存储单元2120中。同时,将目标重叠图像载入到目标重叠图像管理单元2170中。

当产生了所有四个重叠图像时,重叠图像产生单元202指示图像显示控制单元205将这些图像一次显示。例如,给出指令来在左上显示第一重叠图像2130,在右上显示第二重叠图像2140,在左下显示第三重叠图像2150,以及在右下显示第四重叠图像2160。图像显示控制单元205从重叠图像存储单元2120读取重叠图像2130到2160,并且根据来自重叠图像产生单元202的指令在显示单元18上显示这些图像。图36是在显示单元18上示出的一个例子。图36表示第一重叠图像2130是目标重叠图像。类似于第三实施例(部分1),可以在前面仅放大目标重叠图像,或者输入图像也可以和四个重叠图像一起显示。

<重叠图像产生单元202>(部分4)

图37是根据第六实施例的重叠图像产生方法(部分4)的流程图。类似于图22所示的处理,对候选四边形和输入图像的所有像素(RGB 256色调)执行图37所示的处理。

输入输入图像的像素的坐标和像素值(Vr,Vg,Vb)(步骤701)。输入一个候选四边形(步骤702)。在这个例子中,假设输入了第一候选四边形2080。重叠图像产生单元202在这一点确定要被产生的重叠图像是否是目标重叠图像(步骤703)。当要被产生的重叠图像是目标重叠图像时(在步骤703中为是),处理继续至步骤704。当要被产生的重叠图像不是目标重叠图像时(在步骤703中为否),处理继续至步骤707。输入图像的每个像素被视为目标像素,并且对目标像素执行下面的处理。

首先描述当要被产生的重叠图像是目标重叠图像时执行的处理(步骤704)。当目标像素在四边形内部时(在步骤704中为是),其像素值被设置为(255-Vr,255-Vg,255-Vb)(步骤705)。当目标像素不在四边形的内部时(在步骤704中为否),其像素值被设置为(Vr/2,Vg/2,Vb/2)(步骤706)。

然后描述当要被产生的重叠图像不是目标重叠图像时执行的处理(步骤707)。当目标像素在四边形的外部时(在步骤707中为是),预先计算四边形内部的像素值的平均值(Ar,Ag,Ab)(步骤709),并且目标像素的像素值被设置为(255-Ar,255-Ag,255-Ab)(步骤710)。当目标像素不在四边形的外部时(在步骤707中为否),其像素值保持为(Vr,Vg,Vb)(步骤708)。

通过对输入图像中的所有像素执行上面的处理,重叠图像产生单元202如下产生对应于第一候选四边形2080的第一重叠图像2130。具体地,如果第一重叠图像2130是目标重叠图像,则通过反转的颜色加亮四边形的内部,同时将四边形的外部转换为灰色。如果第一重叠图像2130不是目标重叠图像,则四边形的内部保持不变,并且将外部转换为四边形的内部的平均像素值的反转的颜色。将产生的第一重叠图像2130载入到重叠图像存储单元2120中。

以相似的方式,重叠图像产生单元202从第二候选四边形2090产生第二重叠图像2140,从第三候选四边形2100产生第三重叠图像2150,从第四候选四边形2110产生第四重叠图像2160,并且将产生的图像载入到重叠图像存储单元2120中。同时,将目标重叠图像载入到目标重叠图像管理单元2170中。

当产生了所有四个重叠图像时,重叠图像产生单元202指示图像显示控制单元205将这些图像一次显示。例如,给出指令来在左上显示第一重叠图像2130,在右上显示第二重叠图像2140,在左下显示第三重叠图像2150,以及在右下显示第四重叠图像2160。图像显示控制单元205从重叠图像存储单元2120读取重叠图像2130到2160,并且根据来自重叠图像产生单元202的指令在显示单元18上显示这些图像。图38是在显示单元18上示出的一个例子。图38表示第一重叠图像2130是目标重叠图像。类似于第三实施例(部分1),可以在前面只放大目标重叠图像,或者输入图像也可以和四个重叠图像一起显示。

<重叠图像产生单元202>(部分5)

图39是根据第七实施例的重叠图像产生方法(部分5)的流程图。类似于图22所示的处理,对候选四边形和输入图像的所有像素(RGB 256色调)执行图39所示的处理。

输入输入图像的像素的坐标和像素值(Vr,Vg,Vb)(步骤801)。输入一个候选四边形(步骤802)。在这个例子中,假设输入了第一候选四边形2080。输入图像的每个像素被视为目标像素,并且对目标像素执行下面的处理。

重叠图像产生单元202确定目标像素是否在提取的四边形(第一候选四边形)内部、在四边形的周界上或者在四边形的外部(步骤803。)当目标像素在四边形内部时,其像素值保持为(Vr,Vg,Vb)(步骤804)。当目标像素在四边形周界上时,其像素值对每个固定的间隔交替地设置为(255,0,0)(红色)或者(0,0,255)(蓝色)(步骤805)。当目标像素在四边形的外部时,其像素值保持为(Vr,Vg,Vb)(步骤806)。当对所有像素完成处理时,在预定区域中提供对应于重叠图像的数字(步骤807)。例如,将背景设置为(255,255,255),并且将数字设置为(0,0,0)。

通过对所有四边形执行上面的处理,重叠图像产生单元202产生重叠图像,每个重叠图像包括由红色和蓝色交替加亮的四边形。而且,将数字“1”、“2”、“3”、“4”分别提供在第一、第二、第三和第四重叠图像中。

图40到43是对应于本实施例的重叠图像的例子。图40是第一重叠图像;图41是第二重叠图像,图42是第三重叠图像,图43是第四重叠图像。在这种情况下,单独显示重叠图像,并且可以通过按下右按钮194或者左按钮192等来切换显示的图像。

<重叠图像产生单元202>(部分6)

图44是根据第八实施例的重叠图像产生方法(部分6)的流程图。在第八实施例中,第一到第四候选四边形包括在单个重叠图像中。

输入输入图像的像素的坐标和像素值(Vr,Vg,Vb)(步骤901)。输入第一到第四候选四边形(步骤902)。第一到第四候选四边形中的一个被视为目标四边形,输入图像的每个像素被视为目标像素,并且对每个候选四边形和输入图像的所有像素执行下面的处理。

重叠图像产生单元202确定目标像素是否在第一候选四边形、第二候选四边形、第三候选四边形或者第四候选四边形的周界上(步骤903)。当目标像素不在任何一个的周界上时(在步骤903中为否),其像素值保持为(Vr,Vg,Vb)(步骤904)。例如,第一候选四边形的周界的线宽是2,并且剩下的候选四边形的周界的线宽是1。

当目标像素在第一候选四边形、第二候选四边形、第三候选四边形或者第四候选四边形中任一个的周界上时(在步骤903中为是),重叠图像产生单元202确定目标像素是否在目标四边形的周界上(步骤905)。目标候选四边形的周界的线宽是2,并且剩下的候选四边形的周界的线宽是1。当目标像素在目标四边形的周界上时(在步骤905中为是),其像素值被设置为(255,0,0)(红色)(步骤906)当目标像素不在目标四边形的周界上时(在步骤905中为否),其像素值被设置为(0,0,255)(蓝色)(步骤907)。当目标像素在目标四边形的周界上并且也在除了目标四边形之外的四边形的周界上时,该目标像素被确定为在目标四边形的周界上。

图45是显示在本实施例中获得的重叠图像的示例屏幕。在这个例子中,第一候选四边形是目标四边形,因此,用红色加亮第一候选四边形的周界,并且用蓝色加亮其他候选四边形。

通过将重叠图像中的目标四边形切换为第二候选三角形,仅仅第二候选四边形的周界变成红色,而其他四边形的周界变成蓝色。当目标四边形转换为第三候选三角形时,仅仅第三候选四边形的周界变成红色,而其他四边形的周界变成蓝色。可以通过按下左按钮192或者右按钮194切换目标四边形。

除了上述产生重叠图像的变体的其他方法是可以想到的。下面给出包括上述方法在内的用于产生重叠图像的方法中使用的一系列功能。

下面是当图像依赖于输入图像的像素值时,用于加亮形状图像的功能:

1.将输入图像的亮度值(RGB)转换到另一个坐标系(例如,HSV坐标系),对转换后的坐标系执行处理,并且然后将亮度值转换回RGB坐标系的功能。

2.计算在输入图像的像素周围的像素值的平均值,并且输入计算出的值的功能。

3.计算输入图像的像素的相邻像素的变化(微分滤波器,高斯滤波器等),并且输出计算出的值的功能。

4.对输入图像的像素执行马赛克(mosaic)处理的功能。

5.对输入图像的像素执行压花(embossing)处理的功能

6.当输入图像时计算另一区域(例如,和四边形的内部区域相对的四边形的外部区域)的像素值的平均值,并且基于平均值计算输出值的功能。

下面是当图像不依赖于输入图像的像素值时用于加亮形状图像的功能:

1.用不规则的图案绘制区域的功能。

2.用白色(单一颜色1)和黑色(单一颜色2)的垂直线绘制区域的功能。

3.用白色(单一颜色1)绘制区域并且用黑色(单一颜色2)生成芝麻样的噪声的功能。

为了适合依赖于输入图像的亮度值的像素和不依赖于输入图像的亮度值的像素,可以通过将依赖于输入图像的亮度值的功能和不依赖于输入图像的亮度值的功能合并起来产生功能。例如,在经过第一功能的处理的图像上,可以通过第二功能以字母来绘制特别的坐标。

此外,如在第八实施例(部分6)所述,四边形的周界的线宽可以改变。

根据参考图4到14描述的第一实施例的方法可以用在其他实施例中来从拍摄的图像中提取候选四边形。图20所示的四边形提取单元201和图3所示的四边形提取单元200是相同的。

根据本发明,可以从拍摄的图像中识别四边形,并且识别的四边形可以以高精度和高速度变换成看起来是从正面拍摄的图像。

根据本发明,在使用数字照相机等的过程中,当将从拍摄的图像中提取的例如为矩形的多个形状重叠在显示给使用者的图像上来选择期望的矩形时,使用者可以容易地选择最优的矩形。此外,当没有提取到期望的形状时,使用者可以修改提取的形状来获得期望的形状,而不用再次拍摄物体的照片。

本发明不限于特别披露的实施例,而不偏离本发明的范围的情况下可以对其进行改变和扩展。

本申请基于2005年8月25日申请的日本在先专利申请第2005-243958号,以及2005年8月31日申请的日本在先专利申请第2005-251440号,其全部内容结合于此作为参考。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号