图像处理装置、图像处理方法转让专利

申请号 : CN200810213933.3

文献号 : CN101378445B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 山崎明生石田悟郎新开恒扶

申请人 : 精工爱普生株式会社

摘要 :

本发明提供一种图像处理装置、图像处理方法和图像处理程序,该图像处理装置能执行图像的变形,具有:候补区域设定部,其把包含对象图像上的特定图像的区域设定为变形处理的对象的候补区域;排除判别部,其在候补区域之间产生了重叠时,将一个以上的候补区域从变形处理的对象中排除,以消除该重叠;变形处理部,其把所述被排除的候补区域以外的候补区域作为对象,进行区域内的图像的变形。由此,解决了在进行图像变形处理时消耗较多的资源的问题。

权利要求 :

1.一种图像处理装置,可执行图像的变形,其特征在于,包括:候补区域设定部,其将包含对象图像上的特定图像的区域设定为变形处理对象的候补区域;

排除判别部,其在候补区域之间产生了重叠的情况下,将一个以上的候补区域从变形处理的对象中排除,以消除该重叠;以及变形处理部,其以除了所述被排除的候补区域以外的候补区域为对象,进行区域内的图像的变形。

2.根据权利要求1所述的图像处理装置,其特征在于:所述排除判别部,通过反复进行按照规定的选择顺序从多个候补区域中选择一个候补区域,并且当存在与该选择的候补区域重叠的其它候补区域时,将该其它候补区域从变形处理对象中排除的处理,从而消除候补区域之间的重叠。

3.根据权利要求2所述的图像处理装置,其特征在于:所述排除判别部,在选择一个候补区域时,在余下的候补区域中按照特定图像的尺寸从大到小的顺序进行选择。

4.根据权利要求2所述的图像处理装置,其特征在于:所述排除判别部,在选择一个候补区域时,按照从外部输入的候补区域的选择指示进行选择。

5.根据权利要求1~4中的任意一项所述的图像处理装置,其特征在于:所述排除判别部,取得特定图像的对象图像上的斜率,并且判断该斜率是否属于规定的角度范围,对于特定图像的斜率是在该规定的角度范围以外的候补区域,从变形处理的对象中排除。

6.根据权利要求1所述的图像处理装置,其特征在于:所述排除判别部,在存在与特定图像的上下方向不同的各候补区域时,从变形处理的对象中排除第一候补区域以外的第二候补区域,该第一候补区域是特定图像的上方向与特定图像的上下方向相同的候补区域的数量为最大的方向对应的候补区域。

7.根据权利要求6所述的图像处理装置,其特征在于:上下方向是相同的候补区域的数量为最大的方向存在多个时,从变形处理的对象中排除第一候补区域以外的第二候补区域,该第一候补区域是特定图像的上方向与该多个方向中具有尺寸最大的特定图像的候补区域所对应的方向对应的候补区域。

8.根据权利要求6或7所述的图像处理装置,其特征在于:上下方向是相同的候补区域的数量为最大的方向存在多个时,从变形处理的对象中排除第一候补区域以外的第二候补区域,该第一候补区域是特定图像的上方向与在该多个方向中按照规定的优先级选择的一个方向对应的候补区域。

9.根据权利要求1所述的图像处理装置,其特征在于:所述排除判别部,在候补区域的数量超过规定的阈值时,按照特定图像的尺寸,选择纳入该阈值的数量的候补区域,并且针对未被选择的候补区域,从变形处理的对象中排除。

10.根据权利要求1所述的图像处理装置,其特征在于:所述候补区域设定部,作为所述特定图像对象图像上的面部图像进行检测,并且根据检测出的面部图像,设定每个面部图像的候补区域。

11.根据权利要求1所述的图像处理装置,其特征在于:所述变形处理部,在变形对象的候补区域内配置多个分割点,使用连接彼此分割点的直线,把该区域分割为多个小区域,并且移动至少一个分割点的位置,使小区域变形,由此进行图像的变形。

12.根据权利要求1所述的图像处理装置,其特征在于:还具有打印部,其打印进行了上述图像的变形的对象图像。

13.一种图像处理方法,可执行图像的变形,其特征在于,包括:候补区域设定步骤,将包含对象图像上的特定图像的区域设定为变形处理的对象的候补区域;

排除判别步骤,在候补区域之间产生了重叠时,将一个以上的候补区域从变形处理的对象中排除,以消除该重叠;

变形处理步骤,以除了所述被排除的候补区域以外的候补区域为对象,进行区域内的图像的变形。

说明书 :

图像处理装置、图像处理方法

技术领域

[0001] 本发明涉及可执行图像变形的图像处理技术。
[0002] 背景技术
[0003] 众所周知,以数字图像为对象,对图像进行变形的图像处理技术(参照专利文献1)。在专利文献1中,公开了把面部的图像上的一部分区域(表示脸颊的图像的区域)设定为修正区域,按照规定的图案,把修正区域分割为多个小区域,用按照各小区域设定的倍率放大或缩小图像,对面部的形状进行变形的图像处理。
[0004] 专利文献1:日本特开2004-318204号公报
[0005] 在上述以往的用于图像变形的图像处理中,关于多个小区域的每一个,用按照各小区域设定的倍率进行图像的放大或缩小,所以处理繁杂。 此外,用于上述以往的图像变形的图像处理专门修正脸颊的线,难以应对其他多种的变形形式。 [0006] 并且,在以往的技术中,只是在检测到人的面部后对该检测到的面部(面部的部分区域)进行修正、变形,所以当图像数据中存在多个面部时,全部面部均成为变形的对象。 但是,通常将全部面部作为变形的对象,会导致运算处理量的增大和运算时缓冲器等所使用的存储量的增大。 特别是随着该变形处理而产生的存储器消耗和运算处理量的增大,对于具有打印功能、复印功能、扫描功能等多种功能的被称为复合机的图像处理设备,会成为很大的负担,妨碍该图像处理设备的动作。
[0007] 发明内容
[0008] 本发明是为了解决上述的以往的课题而提出的,其目的在于,提供一种能容易并且高效地实现与多样的变形形式对应的图像变形的图像处理的技术。 并且同时提供一种能够通过少的处理负担和少的存储器消 耗实现该图像变形,减少装置的动作负担的技术。
[0009] 为了实现上述目的,本发明的图像处理装置能执行图像的变形,至少具有候补区域设定部、排除判别部、变形处理部。 候补区域设定部把包含对象图像上的特定图像的区域设定为变形处理对象的候补区域,排除判别部把上述设定的候补区域作为对象,按照规定的排除条件,判别从变形处理的对象中排除的区域。 变形处理部以由上述排除判别部判别为排除的区域的候补区域以外的候补区域作为对象,进行区域内的图像的变形。
[0010] 即,根据本发明,仅将存在于对象图像上的变形处理对象的候补区域中、基于规定的排除条件排除后的区域以外的候补区域作为对象进行变形处理,所以能够适当地抑制随着变形处理而产生的存储器消耗量和运算处理量的增大。
[0011] 排除判别部所采用的排除的条件可以考虑如以下所示的各种条件。 [0012] 作为一个例子,排除判别部在候补区域之间产生重叠时,为了消除该重叠,可以从变形处理对象中排除一个以上的候补区域。 为了分别对重叠的两个候补区域进行变形处理,先变形处理一方区域,然后为了变形另一方区域,需要保持与上述一方区域有关的变形后的图像数据,存储器的消耗量变得很大。 根据上述结构,为了消除候补区域之间的重叠,由于从变形处理的对象中排除规定的候补区域,所以能大幅度地抑制存储器的消耗量。
[0013] 消除候补区域之间的重叠的具体手法是各种各样的。 排除判别部从多个候补区域中,按照规定的选择顺序,选择一个候补区域,并且对于该选择的候补区域,存在重叠的其他候补区域时,反复进行从变形处理对象中排除该其他候补区域的处理,消除候补区域之间的重叠。 更具体而言,排除判别部选择一个候补区域时,在余下的候补区域中按照特定图像的尺寸大小的顺序进行选择。 即尺寸大的特定图像推测为对用户来说是重要的图像部分,所以优先选择有关的尺寸大的特定图像,把与它重叠的其他候补区域排除。 其结果,在对象图像上,作为变形图像而留下分别包含彼此不重叠并且尺寸比较大的特定图像的候补区域。
[0014] 或者,排除判别部选择一个候补区域时,按照从外部输入的候补区域的选择指示进行选择。 即按照基于用户的选择指示,选择候补区域,从变形处理对象中排除与该候补区域重叠的其他候补区域。 其结果,用户所选择的候补区域能优先变为变形处理的对象,这样比较恰当。
[0015] 作为其他例子,排除判别部取得关于特定图像的尺寸和对象图像上的斜率,并且判断该取得的尺寸是否在按照该取得的斜率纳入在决定的尺寸上限值内,针对具有该取得的尺寸超过尺寸上限值的特定图像的候补区域,可以从变形处理对象中排除。 包含特定图像的候补区域的变形所需的存储器量不仅根据特定图像的尺寸,还根据该特定图像的斜率而不同。 根据上述结构,包含超过按照斜率允许的尺寸的特定图像的候补区域不为变形处理的对象,所以能适当地抑制伴随着变形处理而产生的存储器消耗量或计算处理量的增大。
[0016] 具体而言,排除判别部通过参照斜率越接近规定的上限角度,尺寸上限值就规定得越小的尺寸上限值规定信息,判断上述取得的尺寸是否纳入尺寸上限值内。 有时根据变形处理部的变形处理的内容,特定图像的斜率越接近规定的上限角度,包含特定图像的候补区域的变形所需的存储器量就越多。 根据上述结构,对于具有变形处理时消耗大量的存储器的倾向的、斜率大的特定图像,通过严格设定尺寸上限值,容易将其从变形处理的对象中排除,所以能抑制伴随着变形处理而产生的存储器消耗量或计算处理的增大。
[0017] 作为其他例子,排除判别部在候补区域至少一部分从对象图像通过规定的修正切出的修正图像中露出时,可以把露出该至少一部分的候补区域从变形处理的对象中排除。 存在一部分或全部从修正图像中露出的候补区域时,为了对有关的候补区域所包含的特定图像进行变形处理时,有必要再度修改进行包含该特定图像的候补区域的设定。有关的再度的设定处理对于图像处理装置,成为较大的负担。 因此,如上所述,针对至少一部分从修正图像中露出的候补区域,通过将其从变形处理的对象中排除,从而能抑制伴随着变形处理的存储器消耗或计算处理的增大。
[0018] 具体而言,排除判别部取得图像输出中使用的多个纵横比的信息, 并且对于至少一部分从通过基于取得的各纵横比的各修正而切出的各修正图像中共同的图像范围中露出的候补区域,可以从变形处理的对象中排除。图像输出是打印或图像的显示等。 根据上述结构,能在以各种纵横比输出对象图像时,只是始终在输出结果中包含全体的候补区域成为变形处理的对象。 因此,不会产生根据输出时的纵横比的不同,进行或不进行变形处理的候补区域。
[0019] 或者,排除判别部关于至少一部分从根据从外部输入的修正的指示而切出的修正图像中露出的候补区域,可以从变形处理的对象中将其排除。 即关于一部分或全部从通过用户任意指定的修正而切出的修正图像中露出的候补区域,从变形处理的对象中排除。 其结果,能避免上述的候补区域的再设定处理,能抑制存储器消耗和处理负担。 [0020] 作为其他例子,排除判别部判断特定图像的对象图像上的斜率是否属于规定的角度范围,关于特定图像的斜率为该规定的角度范围外的候补区域,从变形处理的对象中将其排除。 即预先规定假定为特定图像的斜率的某种程度角度范围,排除与特定图像有关的候补区域,该候补区域具有从有关范围中偏离的斜率。 其结果,能准确减少变形处理所需的存储器消耗量和处理负担量,并且也能防止把不是特定图像的图像部分错误地进行变形。
[0021] 这里,要对对象图像上的各候补区域分别进行变形处理时,各候补区域的特定图像的上下方向散乱,增大了处理负担或存储器消耗量。 因此,变形处理部把各候补区域中特定图像的上下方向大致共同的候补区域作为对象,进行变形处理。 排除判别部在存在特定图像的上下方向不同的各候补区域时,从变形处理的对象中排除候补区域以外的候补区域,该候补区域以外的候补区域其特定图像的上方向与对于特定图像的上下方向共同的候补区域的数量成为最大的方向对应。 如果采用有关的结构,就集中对特定图像的上下方向共同的候补区域进行变形处理。 其结果,能准确减少存储器消耗量和处理负担量,并且能在对象图像上把假定为重要度高的特定图像作为变形的对象。 [0022] 并且,排除判别部,在存在多个上下方向共同的候补区域的数量变为最大的方向时,从变形处理的对象中把候补区域以外的候补区域排 除,该补区域以外的候补区域其特定图像的上方向与多个方向中具有尺寸最大的特定图像的候补区域所对应的方向对应。 加上或代替上述结构,排除判别部在上下方向共同的候补区域的数量变为最大的方向存在多个时,从变形处理的对象中将候补区域以外的候补区域排除,该候补区域以外的候补区域其特定图像的上方向与在多个方向中按照规定的优先级选择的一个方向对应。 例如,上下方向共同的候补区域的数量变为最大的方向存在多个,并且多个方向中,具有尺寸最大的特定图像的候补区域所对应的方向存在多个时,按照上述优先级选择一个方向。如果这样设置2重、3重的判断基准,变形处理部就能可靠地只把特定图像的上下方向大致向着某一个方向的候补区域作为对象,进行变形处理。 [0023] 作为其他例子,排除判别部在候补区域的数量超过规定的阈值时,按照特定图像的尺寸,选择纳入该阈值的数量的候补区域,并且关于未选择的候补区域,从变形处理的对象中排除。 如果作为变形处理的对象的候补区域的数量增加,处理负担当然增大,所以作为变形处理的对象的候补区域的数量为规定数量(阈值)以内。 例如,如果按照特定图像的尺寸大的顺序选择纳入该阈值的数量的候补区域,在对象图像上能把假定为重要度更高的特定图像作为变形的对象。
[0024] 这里,候补区域设定部把对象图像上的面部图像作为上述特定图像进行检测,并且根据检测的面部图像设定各面部图像的候补区域。 如果这样,就把根据从对象图像检测的面部图像设定的候补区域中,按照上述的排除的条件排除的候补区域以外的候补区域作为对象,能进行变形处理。
[0025] 变形处理部在变形对象的候补区域内配置多个分割点,使用连接分割点彼此间的直线,把该区域分割为多个小区域,并且移动至少一个分割点的位置,使小区域变形,进行图像的变形。 在最终成为变形对象的候补区域内配置分割点,只通过移动配置的分割点,就能进行图像变形,所以能容易并且高效实现与多样的变形形式对应的图像变形的图像处理。
[0026] 并且,上述图像处理装置还可以具有打印进行上述图像的变形的对 象图像的打印部。 如果这样,就能容易并且高效实现与多样的变形形式对应的图像变形后的图像的打印。
[0027] 前面把本发明的技术思想作为图像处理装置进行了说明,但是,当然也能把握具有上述的图像处理装置具有的各部件所对应的步骤的图像处理方法的发明、使计算机执行上述的图像处理装置具有的各部件所对应的功能的图像处理程序的发明。 附图说明
[0028] 图1是概略地表示作为图像处理装置的打印机100的结构的说明图。 [0029] 图2是表示包含图像的列表显示的用户界面的一个例子的说明图。 [0030] 图3是表示打印机100的面部形状修正打印处理的流程的流程图。 [0031] 图4是表示面部形状修正处理的流程的流程图。
[0032] 图5是表示用于设定图像变形的类型和程度的用户界面的一个例子的说明图。 [0033] 图6是表示面部区域FA的检测结果的一个例子的说明图。
[0034] 图7是表示面部区域FA的高度方向的位置调整处理的流程的流程图。 [0035] 图8是表示特定区域SA的一个例子的说明图。
[0036] 图9是表示评价值的计算方法的一个例子的说明图。
[0037] 图10是表示评价对象像素TP的选择方法的一个例子的说明图。 [0038] 图11是表示高度基准点Rh的决定方法的一个例子的说明图。
[0039] 图12是表示概略倾斜角RI的计算方法的一个例子的说明图。
[0040] 图13是表示面部区域FA的高度方向的位置调整方法的一个例子的说明图。
[0041] 图14是表示面部区域FA的斜率调整处理的流程的流程图。
[0042] 图15是表示用于面部区域FA的斜率调整的评价值的计算方法的一个例子的说明图。
[0043] 图16是表示评价值关于各评价方向的分散的计算结果的一个例子的说明图。 [0044] 图17是表示面部区域FA的斜率调整方法的一个例子的说明图。 [0045] 图18是表示变形区域TA的设定方法的一个例子的说明图。
[0046] 图19是表示变形区域TA向小区域的分割方法的一个例子的说明图。 [0047] 图20是表示分割点移动表420的内容的一个例子的说明图。
[0048] 图21是表示按照分割点移动表420的分割点D的位置的移动的一个例子的说明图。
[0049] 图22是表示变形处理部260的图像的变形处理方法的概念的说明图。 [0050] 图23是表示三角形区域中的图像的变形处理方法的概念的说明图。 [0051] 图24是表示本实施例的面部形状修正的形式的说明图。
[0052] 图25是表示显示面部形状修正后的对象图像TI的显示部150的状态的一个例子的说明图。
[0053] 图26是表示修正图像打印处理的流程的流程图。
[0054] 图27是表示排除判别处理的内容的一个例子的流程图。
[0055] 图28是表示排除判别处理的一部分的详细内容的一个例子的流程图。 [0056] 图29是表示取得面部区域FA和垂直基准线Vs或水平基准线Hs所形成的角度的情况的说明图。
[0057] 图30是表示面部区域大小上限值表430的一个例子的图。
[0058] 图31是例示对象图像TI上的修正范围和变形区域TA之间的位置关系的说明图。
[0059] 图32是例示对象图像TI上的规定角度范围和变形区域TA的说明图。 [0060] 图33是表示排除判别处理的一部分的详细内容的一个例子的流程图。 [0061] 图34是例示在对象图像TI中设定不同方向的多个变形区域TA的状态的说明图。
[0062] 图35是例示在对象图像TI中设定不同方向的多个变形区域TA的状态的说明图。
[0063] 图36是例示在对象图像TI中设定不同方向的多个变形区域TA的状态的说明图。
[0064] 图37是表示排除判别处理的一部分的详细内容的一个例子的流程图。 [0065] 图38是例示在对象图像TI中设定彼此重叠的多个变形区域TA的状态的说明图。
[0066] 图39是例示变形区域TA的一部分范围的说明图。
[0067] 图中符号说明:100-打印机;110-CPU;120-内部存储器;140-操作部;150-显示部;160-打印机引擎;170-卡接口;172-卡插槽;200-面部形状修正部;
210-变形形式设定部;212-指定取得部;220-面部区域检测部;230-面部区域调整部;232-基准区域设定部;234-评价部;236-决定部;240-变形区域设定部;250-变形区域分割部;260-变形处理部;270-排除判别部;310-显示处理部;320-打印处理部;410-分割点配置图案表;420-分割点移动表;430-面部区域大小上限值表。

具体实施方式

[0068] 按照以下的顺序,说明本发明的实施例。
[0069] (1)图像处理装置的概略结构:
[0070] (2)面部形状修正打印处理:
[0071] (2-1)从对象图像的选择到变形区域的设定:
[0072] (2-2)变形区域的排除处理:
[0073] (2-3)从变形区域的分割到打印处理:
[0074] (3)补充说明和其他实施例
[0075] (1)图像处理装置的概略结构:
[0076] 图1是概略地表示作为本发明的图像处理装置的一个例子的打印机100的结构的说明图。 打印机100是根据从记录介质(例如存储卡MC等)取得的图像数据打印图像的、与所谓的直接打印对应的独立类型的彩色喷墨打印机。 此外,打印机100是除了打印功能以外,还具有复制功能(未图示)或扫描功能(未图示)等各种功能的装置。 在该意思上,打印机100也称作所谓的复合机。
[0077] 打印机100具有控制打印机100的各个部分的CPU110、由例如ROM或RAM构成的内部存储器120、由按钮或触摸屏构成的操作部140、由液晶显示器构成的显示部150、打印机引擎160、卡接口(卡I/F)170等。 打印机100也可以具有用于与其它机器(例如数字相机)进行数据通信的接口。 打印机100的各构成要素通过总线彼此连接。 [0078] 打印机引擎160是根据打印数据进行打印的打印机构。 卡接口170是与插入卡插槽172中的存储卡MC之间进行数据的交换的接口。 在本实施例中,在存储卡MC中存储作为RGB数据的图像数据,打印机100通过卡接口170取得存储卡MC中所存储的图像数据。
[0079] 在内部存储器120中存储有面部形状修正部200、显示处理部310、 打印处理部320。面部形状修正部200是用于在规定的操作系统下,执行后面描述的面部形状修正处理的计算机程序。显示处理部310是控制显示部150,在显示部150上显示处理菜单或信息的显示驱动程序。 打印处理部320是用于根据图像数据生成打印数据,控制打印机引擎160,执行基于打印数据的图像的打印的计算机程序。 CPU110从内部存储器120中读出这些程序并执行,实行这些各部分的功能。
[0080] 面部形状修正部200作为程序模块,包含变形形式设定部210、面部区域检测部220、面部区域调整部230、变形区域设定部240、排除判别部270、变形区域分割部250、变形处理部260。 变形形式设定部210包含指定取得部212。 面部区域调整部230包含基准区域设定部232、评价部234和决定部236。 关于这些各部分的功能,在后面描述的面部形状修正打印处理的说明中进行详细描述。
[0081] 在内部存储器120还存储面部区域大小上限值表430、分割点配置图案表410、分割点移动表420。 关于面部区域大小上限值表430、分割点配置图案表410、分割点移动表420的内容,在后面描述的面部形状修正打印处理的说明中进行详细描述。 [0082] (2)面部形状修正打印处理:
[0083] 打印机100根据存储卡MC中存储的图像数据,进行图像的打印。 如果在卡插槽172插入存储卡MC,就通过显示处理部310,在显示部150中显示包含存储卡MC中存储的图像的列表显示的用户界面。
[0084] 图2是表示包含图像的列表显示的用户界面的一个例子的说明图。 例如使用存储卡MC中存储的图像数据(图像文件)中包含的缩微图像,实现图像的列表显示。 打印机100在图2所示的用户界面中,如果由用户选择一个(或多个)图像,并且选择通常打印按钮,则执行把选择的图像按通常那样打印的通常打印处理。 而在该用户界面中,如果有用户选择一个(或多个)图像,并且选择面部形状修正打印按钮,打印机100就对选择的图像,执行修正图像中的面部的形状,打印修正后的图像的面部形状修正打印处理。
[0085] 图3是表示本实施例的打印机100的面部形状修正打印处理的流程 的流程图。 [0086] 在步骤S(以下,省略步骤的记录)100中,面部形状修正部200(图1)执行面部形状修正处理。 面部形状修正处理是在图像中存在面部时,根据规定的条件,判别对该面部是否进行修正,在判别为进行修正时,修正该面部的至少一部分形状(例如面部的轮廓形状或眼睛的形状)的处理。
[0087] (2-1)从对象图像的选择到变形区域的设定:
[0088] 图4是表示本实施例的面部形状修正处理的流程的流程图。
[0089] 在S110中,面部形状修正部200(图1)对成为面部形状修正处理的对象的对象图像TI进行设定。 面部形状修正部200把在图2所示的用户界面中由用户选择的图像设定为对象图像TI。从存储卡MC通过卡接口170由打印机100取得设定的对象图像TI的图像数据,存储到内部存储器120的规定区域。
[0090] 在S120中,变形形式设定部210(图1)设定用于面部形状修正的图像变形的类型和图像变形的程度。 变形形式设定部210指示显示处理部310在显示部150中显示用于设定图像变形的类型和程度的用户界面,通过该用户界面,选择由用户指定的图像变形的类型和程度,设定为处理中使用的图像变形的类型和程度。
[0091] 图5是表示用于设定图像变形的类型和程度的用户界面的一个例子的说明图。如图5所示,在该用户界面包含用于设定图像变形类型的界面。 在本实施例中,例如,把面部的形状变为清晰的变形类型“类型A”、眼睛的形状变大的变形类型“类型B”等预先设定为选择项。 用户通过该用户界面指定图像变形的类型。 变形形式设定部210把由用户指定的图像变形的类型设定为实际的处理中使用的图像变形类型。 [0092] 此外,在图5所示的用户界面包含用于设定图像变形的程度的界面。 如图5所示,在本实施例中,作为图像变形的程度,把强(S)、中(M)、弱(M)的3等级预先设定为选择项。用户通过该用户界面指定图像变形的程度。 变形形式设定部210把由用户指定的图像变形的程度设定为 实际的处理中使用的图像变形的程度。 [0093] 此外,在本实施例中,可以由用户详细指定变形形式。 在图5所示的用户界面中,由用户在希望详细指定的选择框输入选择标记时,由用户进行变形形式的详细指定。
[0094] 以下,作为图像变形的类型,设定用于把面部的形状变为清晰的变形类型“类型A”,作为图像变形的程度,设定程度“中”的程度,作为不希望基于用户的详细指定,进行说明。
[0095] 在S130中,面部区域检测部220(图1)进行对象图像TI的面部区域(面部图像)FA的检测。 这里,面部区域FA是对象图像TI上的图像区域,意味着至少包含面部的一部分的图像的区域。面部区域FA相当于权利要求书中记载的特定图像的一个例子。使用例如利用模板的图案匹配的方法(参照特开2004-318204)这样众所周知的面部检测方法,执行基于面部区域检测部220的面部区域FA的检测。
[0096] 图6是表示面部区域FA的检测结果的一个例子的说明图。如图6所示,如果根据本实施例中使用的面部检测方法,则把对象图像TI上的包含眼睛、鼻和口的图像的矩形的区域作为面部区域FA检测。 面部区域FA也可以是正方形。 图6所示的基准线RL是定义面部区域FA的高度方向(上下方向),并且表示面部区域FA的宽度方向(左右方向)的中心的线。 即基准线RL是通过矩形的面部区域FA的重心,与沿着面部的上下方向的矩形的边界线平行的直线。 在S130,未检测到面部区域FA时,把该情况通过显示部150通知用户。 这时,也可以进行不伴随着面部形状修正的通常打印,也可以进行使用其它面部检测方法的面部区域FA的再次检测处理。
[0097] 这里,一般的,利用模板的图案匹配的方法等众所周知的面部检测方法对面部全体或面部的部位(眼睛或口),不详细检测位置和斜率(角度),从对象图像TI中把认为大概包含面部的图像的区域设定为面部区域FA。而本实施例的打印机100如后上述,根据检测的面部区域FA,设定实施用于面部形状修正的图像变形处理的区域(后面描述的变形区域TA)。一般观察者对面部的图像的关注度高,所以根据设定的变形区 域TA和面部的图像的位置或角度的关系,面部形状修正后的图像有可能变得不自然。 因此,在本实施例中,为了实现更自然、理想的面部形状修正,对在S130中检测的面部区域FA,进行以下说明的位置调整和斜率调整。
[0098] 在S140中,面部区域调整部230(图1)进行在S130中检测的面部区域FA的上下方向的位置调整。 面部区域FA的上下方向的位置调整意味着调整面部区域FA沿着基准线RL(参照图6)的位置,再设定对象图像TI的面部区域FA。
[0099] 图7是表示本实施例的面部区域FA的上下方向的位置调整处理的流程的流程图。 在S141中,基准区域设定部232(图1)设定基准区域SA。 这里,基准区域SA是对象图像TI上的区域,即包含执行面部区域FA的上下方向的位置调整时参照的规定参照被拍摄体的图像的区域。 在本实施例中,参照被拍摄体设定为“眼睛”,基准区域SA设定为包含“眼睛”的图像的区域。
[0100] 图8是表示基准区域SA的一个例子的说明图。在本实施例中,基准区域设定部232根据与面部区域FA的关系,设定基准区域SA。具体而言,在与基准线RL正交的方向和与基准线RL平行的方向,以规定比率缩小(或放大)面部区域FA的尺寸的尺寸区域,与面部区域FA的位置具有规定位置关系的区域设定为基准区域SA。 即在本实施例中,如果根据由面部区域检测部220检测的与面部区域FA的关系,设定基准区域SA,基准区域SA就成为包含两只眼睛的图像的区域,依次预先设定上述规定比率或规定的位置关系。此外,基准区域SA尽可能不包含眼睛的图像和不易分辨的图像(例如,头发的图像),在包含两只眼睛的图像中,设定为尽可能小的区域。
[0101] 此外,如图8所示,设定为对于基准线RL为对称的矩形形状的区域。基准区域SA根据基准线RL,分为向左侧的区域(以下称作“左分割区域SA(l)”)、向右侧的区域(以下称作“右分割区域SA(r)”)。 基准区域SA设定为在左分割区域SA(l)和右分割区域SA(r)分别包含一只眼睛的图像。
[0102] 在S142中,评价部234(图1)计算用于检测基准区域SA的眼睛的图像位置的评价值。
[0103] 图9是表示评价值的计算方法的一个例子的说明图。 在本实施例中,作为RGB图像数据的对象图像TI的各像素的R值(R成分值)使用于评价值的计算。这是因为认为在皮肤的部分的图像和眼睛的部分的图像中,R值的差值大,通过在评价值的计算中使用R值,能提高眼睛的图像的检测精度的缘故。此外在本实施例中,对象图像TI的数据作为RGB数据取得,所以通过在评价值的计算中使用R值,能实现评价值的计算的高效率。 此外,如图9所示,关于2个分割区域(右分割区域SA(r)和左分割区域SA(l)),分别独立地进行评价值的计算。
[0104] 评价部234如图9所示,在各分割区域(右分割区域SA(r)和左分割区域SA(l))内,设定与基准线RL正交的n条直线(以下称作“对象像素确定线PL1~PLn”)。 对象像素确定线PL1~PLn是把分割区域的高度(沿着基准线RL的尺寸)进行(n+1)等分的直线。 即对象像素确定线PL彼此间的间隔都是等间隔s。 评价部234关于对象像素确定线PL1~PLn的每一个,根据构成对象图像TI的像素中选择在评价值的计算中使用的像素(以下称作“评价对象像素TP”)。
[0105] 图10是表示评价对象像素TP的选择方法的一个例子的说明图。 评价部234把构成对象图像TI的像素中与对象像素确定线PL重叠的像素作为评价对象像素TP选择。图10(a)表示对象像素确定线PL与对象图像TI的像素的行方向(图10的X方向)平行的情形。这时,与各对象像素确定线PL重叠的像素行上的像素(在图10(a)中,付与○标记的像素)作为关于各对象像素确定线PL的评价对象像素TP选择。
[0106] 而根据面部区域FA的检测方法或基准区域SA的设定方法,如图10(b)所示,产生对象像素确定线PL与对象图像TI的像素的行方向(X方向)为不平行的情形。 这时,这时,作为原则,与各对象像素确定线PL重叠的像素作为关于各对象像素确定线PL的评价对象像素TP选择。 可是,例如图10(b)的对象像素确定线PL1和像素PXa以及PXb之间的关系那样,某对象像素确定线PL与位于对象图像TI的像素矩阵的同一列(即Y坐标相同)的2个像素重叠时,把重叠部分的距 离更短一方的像素(例如像素PXb)从评价对象像素TP中排除。 即关于各对象像素确定线PL,从像素矩阵的一个列中只把一个像素作为评价对象像素TP选择。
[0107] 此外,对象像素确定线PL的斜率对于X方向,超过45度时,在上述说明中,像素矩阵的列和行的关系颠倒,从像素矩阵的一个行中只选择一个像素作为评价对象像素TP。此外,根据对象图像TI和基准区域SA的尺寸的关系,有时一个像素作为关于多个对象像素确定线PL的评价对象像素TP被选择。
[0108] 评价部234关于各对象像素确定线PL,计算评价对象像素TP的R值的平均值作为评价值。可是,在本实施例中,从评价值的计算对象中把关于各对象像素确定线PL,选择的多个评价对象像素TP中R值大的一部分像素排除。具体而言,关于某对象像素确定线PL,选择k个评价对象像素TP时,评价对象像素TP划分为由R值比较大的0.75k个像素构成的第一组、R值比较小的0.25k个像素构成的第二组这样的2个组,只由属于第二组的像素成为作为评价值的R值的平均值的计算对象。 后面描述从评价值的计算对象中把一部分评价对象像素TP排除的理由。
[0109] 如上所述,在本实施例中,由评价部234,计算关于各对象像素确定线PL的评价值。这里,对象像素确定线PL是与基准线RL正交的直线,所以评价值能表现为关于沿着基准线RL的多个位置(评价位置),计算。 此外,评价值能表现为关于各评价位置,表示沿着与基准线RL正交的方向的像素值的分布特征的值。
[0110] 在S143中,决定部236(图1)检测基准区域SA的眼睛的位置,根据检测结果,决定高度基准点Rh。 首先,决定部236如图9的右侧所示,关于各分割区域,生成表示沿着基准线RL的评价值(R值的平均值)的分布的曲线,把评价值取极小值的沿着基准线RL的位置作为眼睛的位置Eh进行检测。 此外,左分割区域SA(l)的眼睛的位置Eh表示为Eh(l),右分割区域SA(r)的眼睛的位置Eh表示为Eh(r)。
[0111] 考虑是黄色人种时,分割区域中的表示皮肤的图像的部分R值大, 而表示眼睛(更具体而言,眼睛的中央的黑眼珠部分)的图像的部分R值小。 因此,如上所述,能把评价值(R值的平均值)取极小值的沿着基准线RL的位置判断为眼睛的位置Eh。 此外,如图9所示,有时在分割区域,除了眼睛的图像以外,还包含R值小的其它图像(例如,眉毛或头发的图像)。 因此,决定部236在表示沿着基准线RL的评价值的分布的曲线取多个极小值时,根据规定的判断基准,把与一个极小值对应的位置判断为眼睛的位置Eh。 例如,与多个极小值对应的基准线RL上的各位置中最接近基准区域SA内的基准线RL的中心位置的位置作为眼睛的位置Eh。 这是因为如上所述,假定基准区域SA设定为包含眼睛的图像的尽可能小的区域,所以眼睛的位置接近基准区域SA内的基准线RL的中心位置,而眉毛或头发位于各分割区域的边界线附近。
[0112] 此外,上述曲线除了眼睛的图像的位置以外,评价值大,也有可能取极小值,所以可以忽略极小值内比规定阈值更大的极小值。 或者,也可以单纯把关于对象像素确定线PL计算的评价值中的最小值所对应的对象像素确定线PL的位置作为眼睛的位置Eh。
[0113] 此外,在本实施例中,把认为在面部上与周围的色差比较大的部位的眼睛(眼睛中央的黑眼珠部分)作为面部区域FA的位置调整的参照被拍摄体使用。可是,作为评价值的R值的评价值把对象像素确定线PL上的多个评价对象像素TP作为对象计算,所以例如由于黑眼珠的周围的白眼珠部分的图像的影响,黑眼珠部分的检测精度有可能下降。 在本实施例中,如上所述,参照被拍摄体认为色差大的一部分评价对象像素TP(例如属于上述的第一组的R值比较大的像素)从评价值的计算对象排除,进一步提高参照被拍摄体的检测精度。
[0114] 接着,决定部236根据检测的眼睛的位置Eh,决定高度基准点Rh。 [0115] 图11是表示高度基准点Rh的决定方法的一个例子的说明图。高度基准点Rh是面部区域FA的高度方向的位置调整时,作为基准使用的点。 在本实施例中,如图11所示,位于左右2个眼睛的位置Eh(l)和Eh(r)的中间的基准线RL上的点设定为高度基准点Rh。 即表示左眼睛的位置Eh(l)的直线EhL(l)和基准线RL的交点、表示右眼睛的位置Eh(r)的直线EhL(r)和基准线RL的交点的中点设定为高度 基准点Rh。 [0116] 在本实施例中,决定部236根据检测的眼睛的位置Eh,计算面部图像的概略的倾斜角(以下称作“概略倾斜角RI”)。 面部图像的概略倾斜角RI是推测对象图像TI中的面部的图像对于面部区域FA的基准线RL,大概倾斜多少的角度。
[0117] 图12是表示概略倾斜角RI的计算方法的一个例子的说明图。 如图12所示,决定部236首先决定把左分割区域SA(l)的宽度Ws(l)分割为一半的直线和直线EhL(l)之间的交点IP(l)、把右分割区域SA(r)的宽度Ws(r)分割为一半的直线和直线EhL(r)之间的交点IP(r)。 然后,把与连接交点IP(l)和交点IP(r)的直线正交的直线IL和基准线RL所成的角作为概略倾斜角RI计算。
[0118] 在S144中,面部区域调整部230(图1)进行面部区域FA的上下方向的位置调整。
[0119] 图13是表示面部区域FA的高度方向的位置调整方法的一个例子的说明图。通过使高度基准点Rh位于位置调整后的面部区域FA的规定位置的方式再设定面部区域FA,从而进行面部区域FA的高度方向的位置调整。 具体而言,如图13所示,按照高度基准点Rh位于以规定的比例r1对r2划分关于面部区域FA的上下方向的长度Hf的位置的方式,沿着基准线RL调整定义面部区域FA的矩形框的位置。 在图13的例子中,用虚线表示的调整前的面部区域FA在面部的上下方向移动,来再设定由实线表示的调整后的面部区域FA。
[0120] 面部区域FA的位置调整之后,在S150(图4)中,面部区域调整部230(图1)进行面部区域FA的斜率调整(角度调整)。 这里,面部区域FA的斜率调整意味着按照对象图像TI的面部区域FA的斜率符合于面部的图像的斜率的方式进行调整,再设定面部区域FA。 在本实施例中,执行面部区域FA的斜率调整时参照的规定的参照被拍摄体设定为“两只眼睛”。 在本实施例的面部区域FA的斜率调整中,设定表示斜率调整的调整角度的选择项的多个评价方向,与各评价方向对应的评价基准区域ESA设定为包含两只眼睛的图像的区域。然后,关于各评价 方向,根据评价基准区域ESA的图像的像素值,计算评价值,使用根据评价值决定的斜率调整的调整角度,调整面部区域FA的斜率。 [0121] 图14是表示本实施例的面部区域FA的斜率调整处理的流程的流程图。 [0122] 图15是表示用于面部区域FA的斜率调整的评价值的计算方法的一个例子的说明图。
[0123] 在S151中,基准区域设定部232(图1)设定初始评价基准区域ESA(0)。 初始评价基准区域ESA(0)是与平行于面部区域FA的位置调整后的基准线RL(参照图13)的方向(以下称作“初始评价方向”)建立关联的评价基准区域ESA。 在本实施例中,与位置调整后的面部区域FA对应的基准区域SA(参照图13)直接设定为初始评价基准区域ESA(0)。 此外,评价基准区域ESA与面部区域FA的位置调整时的基准区域SA不同,不分割为左右2个区域。 在图15的最上段表示设定的初始评价基准区域ESA(0)。 [0124] 在S152,基准区域设定部232(图1)设定多个评价方向和与各评价方向对应的评价基准区域ESA。 多个评价方向设定为表示斜率调整的调整角度的选择项的方向。在本实施例中,设定与基准线RL所成角为规定范围内的多个评价方向线EL,与评价方向线EL平行的方向设定为评价方向。 如图15所示,把基准线RL以初始评价基准区域ESA(0)的中心点(重心)CP为中心,逆时针和顺时针以规定角度α刻度旋转而决定的直线,设定为多个评价方向线EL。 此外,与基准线RL所成角为φ度的评价方向线EL表示为EL(φ)。
[0125] 在本实施例中,关于上述的各评价方向线EL与基准线RL之间所成角的规定范围设定为±20度。 在本说明书中,用负的值表示使基准线RL顺时针旋转时的旋转角,用正的值表示使基准线RL逆时针旋转时的旋转角。 基准区域设定部232在不超过20度的范围中,使基准线RL逆时针和顺时针旋转α度、2α度…,一边增加旋转角,一边旋转,设定多条评价方向线EL。 图15表示使基准线RL旋转α度、2α度、-α度,而分别决定的评价方向线EL(EL(α)、EL(2α)、EL(-α))。 此外, 基准线RL也能表现为评价方向线EL(0)。
[0126] 表示各评价方向的评价方向线EL所对应的评价基准区域ESA是以中心点CP为中心,以与评价方向线EL的设定时的旋转角相同的角度使初始评价基准区域ESA(0)旋转的区域。与评价方向线EL( )对应的评价基准区域ESA表示为评价基准区域ESA()。 图15表示与评价方向线EL(EL(α)、EL(2α)、EL(-α)分别对应的评价基准区域ESA(ESA(α)、ESA(2α)、ESA(-α))。 此外,初始评价基准区域ESA(0)也作为评价基准区域ESA的一个对待。
[0127] 在S153中,评价部234(图1)关于多个评价方向,根据评价基准区域ESA的图像的像素值,计算评价值。在本实施例中,作为面部区域FA的斜率调整的评价值,与上述的面部区域FA的位置调整的评价值同样,使用R值的平均值。 评价部234计算关于沿着评价方向的多个评价位置的评价值。
[0128] 评价值的计算方法与上述的面部区域FA的位置调整的评价值的计算方法同样。即评价部234如图15所示,在各评价基准区域ESA内设定与评价方向线EL正交的对象像素确定线PL1~PLn,关于各对象像素确定线PL1~PLn,选择评价对象像素TP,把选择的评价对象像素TP的R值的平均值作为评价值计算。
[0129] 评价基准区域ESA的对象像素确定线PL的设定方法或评价对象像素TP的选择方法,虽然存在是否将区域分割成左右的不同,但是与图9和图10所示的面部区域FA的位置调整的方法同样。此外,与面部区域FA的位置调整时同样,也可以把选择的评价对象像素TP内的一部分(例如k个评价对象像素TP内的R值比较大的0.75k个像素)从评价值的计算对象中排除。在图15的右侧表示关于各评价方向,计算的评价值的沿着评价方向线EL的分布。
[0130] 此外,对象像素确定线PL是与评价方向线EL正交的直线,所以评价值能表现为关于沿着线评价方向线EL的多个位置(评价位置)而计算出来。此外,评价值能表现为关于各评价位置,表示沿着与评价方向线EL正交的方向的像素值的分布特征的值。
[0131] 在S154中,决定部236(图1)决定面部区域FA的斜率调整中使用的调整角度。决定部236关于各评价方向,计算在S153中计算的评价值的沿着评价方向线EL的分散,选择分散的值成为最大的评价方向。然后,把与选择的评价方向对应的评价方向线EL和基准线RL所成角决定为斜率调整中使用的调整角度。
[0132] 图16是表示关于各评价方向的评价值的分散的计算结果的一个例子的说明图。在图16的例子中,在旋转角为α度的评价方向中,分散取最大值Vmax。因此,α度,即逆时针旋转α度的旋转角决定为面部区域FA的斜率调整中使用的调整角度。 [0133] 对评价值的分散的值成为最大时的评价方向所对应的角度决定为斜率调整中使用的调整角度的理由进行说明。从图15的上开始第2图所示,在旋转角为α度时的评价基准区域ESA(α)中,成为左右的眼睛的中央部(黑眼珠部分)的图像在大致与对象像素确定线PL平行的方向(即与评价方向线EL正交的方向)排列的配置。 此外,这时,左右眉毛的图像也同样成为大致在与评价方向线EL正交的方向上排列的配置。因此,认为与这时的评价方向线EL对应的评价方向是大致表示面部的图像的斜率的方向。这时,一般R值小的眼睛或眉毛的图像和一般R值大的皮肤的部分的图像的位置关系成为沿着对象像素确定线PL的方向,两者重叠的部分小的位置关系。因此,眼睛或眉毛的图像的位置的评价值比较小,皮肤的部分的图像的位置的评价值比较大。 因此,沿着评价方向线EL的评价值的分布如图15所示,成为偏差比较大(振幅大)的分布,分散的值增大。 [0134] 而如图15中的最上图、第三图和第四图所示,在旋转角为0度、2α度、-α度时的评价基准区域ESA(0)、ESA(2α)、ESA(-α)中,左右的眼睛的中央部或左右的眉毛的图像不在与评价方向线EL正交的方向排列,成为偏移的配置。因此,与这时的评价方向线EL对应的评价方向不表示面部的图像的斜率。 这时,眼睛或眉毛的图像和皮肤的部分的图像的位置关系成为沿着对象像素确定线PL的方向,两者重叠的部分大的位置关系。 因此,沿着评价方向线EL的评价值的分布如图15所示,成为偏差比较小(振幅小)的分布,分散的值减小。
[0135] 如上所述,在评价方向接近面部的图像的斜率的方向时,沿着评价方向线EL的评价值的分散的值增大,在评价方向远离面部的图像的斜率的方向时,沿着评价方向线EL的评价值的分散的值减小。因此,如果把评价值的分散的值成为最大时的评价方向所对应的角度决定为斜率调整中使用的调整角度,就能实现面部区域FA的斜率适合于面部的图像的斜率的面部区域FA的斜率调整。
[0136] 此外,在本实施例中,平均值的分散的计算结果对于角度的临界值即基准线RL在-20度或20度,取最大值的结果时,认为不能正确评价面部的斜率的可能性高,所以不进行面部区域FA的斜率调整。此外,在本实施例中,决定的调整角度与上述的面部区域FA的位置调整时计算的概略倾斜角RI比较。在调整角度和概略倾斜角RI的差比规定的阈值更大时,认为在面部区域FA的位置调整和斜率调整的评价或决定时发生某种的错误,所以不不进行面部区域FA的位置调整和斜率调整。
[0137] 在S155中,面部区域调整部230(图1)进行面部区域FA的斜率调整。 [0138] 图17是表示面部区域FA的斜率调整方法的一个例子的说明图。 以初始评价基准区域ESA(0)的中心点CP为中心,使面部区域FA只旋转在S154中决定的调整角度,进行面部区域FA的斜率调整。 在图17的例子中,通过把由虚线表示的调整前的面部区域FA逆时针旋转α度,设定由实线表示的调整后的面部区域FA。
[0139] 在面部区域FA的斜率调整后的S160中,变形区域设定部240(图1)设定变形区域TA。变形区域TA是对象图像TI上的区域,即成为用于面部形状修正的图像变形处理对象的候补的区域。 在该意思上,在S160中设定的变形区域TA相当于权利要求书中记载的候补区域的一个例子。
[0140] 图18是表示变形区域TA的设定方法的一个例子的说明图。 如图18所示,在本实施例中,变形区域TA设定为把面部区域FA在与基准线RL平行的方向(高度方向)和与基准线RL正交的方向(宽度方向)伸张后(或缩短)的区域。具体而言,如果面部区域FA的高度方向的 尺寸为Hf,宽度方向的尺寸为Wf,把面部区域FA的矩形在上方向只伸张k1·Hf,在下方向只伸张k2·Hf,并且在左右分别伸张k3·Wf的区域,设定为变形区域TA。 此外,k1、k2、k3是规定的系数。
[0141] 如果这样设定变形区域TA,与面部区域FA的高度方向的轮廓线平行的直线即基准线RL成为与变形区域TA的高度方向的轮廓线也平行的直线。 此外,基准线RL成为把变形区域TA的宽度分割为一半的直线。
[0142] 如图18所示,变形区域TA设定为关于面部的高度方向,包含大致从下巴到前额的图像,关于面部的宽度方向,包含左右的脸颊的图像的区域。 即在本实施例中,按照变形区域TA成为大致包含上述的范围的图像的区域的方式,根据与面部区域FA的尺寸的关系,预先设定上述的系数k1、k2、k3。 这里,变形区域设定部240可以说相当于权利要求书中记载的候补区域设定部。此外,也能把面部区域检测部220、面部区域调整部230、变形区域设定部240一起称作候补区域设定部。
[0143] 此外,在图6等中,例示在对象图像TI中只存在一个人的面部的情形,但是在对象图像TI中存在多个面部时,在上述S130~160中,检测多个面部,按每个面部,进行面部区域FA的设定、面部区域FA的位置调整和斜率调整、变形区域TA的设定。 [0144] (2-2)变形区域的排除处理:
[0145] 如果通过到上述S160的处理,进行对象图像TI上的变形区域TA的设定,在S170中,排除判别部270(图1)按照后面描述的各种排除的条件,按照每个变形区域TA进行是否作为变形处理的对象的判别,对于判别为不作为变形处理的对象的变形区域,从变形处理的对象中排除。即在本实施例中,通过到上述S160的处理设定的变形区域TA的全部并不一定成为后面描述的图像变形的对象,只把设定的变形区域TA中不符合各种排除条件的变形区域TA作为图像变形的对象。结果,能适当抑制进行图像变形引起的打印机100的处理负担量和内部存储器120等的存储器区域的消耗。
[0146] 图27是表示S170的处理内容的流程图的一个例子。
[0147] 在S171中,作为第一排除判别,排除判别部270对每个变形区域TA,按照与面部区域FA的斜率对应的尺寸限制,判别是否从变形处理的对象中排除。 [0148] 图28通过流程图表示S171的处理的细节。
[0149] 在S1711中,排除判别部270按照各变形区域TA取得面部区域FA的斜率和尺寸。 在该在S1711中取得的斜率是指向着对象图像TI的上下的垂直基准线Vs或者向着对象图像TI的水平方向的水平基准线Hs和面部区域FA的基准线RL所成角度的大小。 [0150] 图29例示在S1711中,把某一个变形区域TA作为对象,取得面部区域FA的斜率的情形。 这里,首先,决定成为取得斜率时的比较的基准的方向为垂直基准线Vs,还是水平基准线Hs。 这时,根据基准线RL向垂直基准线Vs和水平基准线Hs的哪一侧倾斜来决断。 即在对象图像TI上,面部的上方向向着对象图像TI的大致上侧或大致下侧时,垂直基准线Vs为取得斜率时的基准,面部的上方向向着对象图像TI的大致右侧或大致左侧时,水平基准线Hs为取得斜率时的基准。
[0151] 在图29所示的例子中,基准线RL与对象图像TI的水平基准线Hs相比,更向垂直基准线Vs一侧倾斜,所以在S1711中,垂直基准线Vs和基准线RL所成的角度β作为面部区域FA的斜率检测。 此外,该角度β是基准线RL和垂直基准线Vs(或者水平基准线Hs)所成的角度的大小,所以作为正的值取得。 在S1711中,也取得面部区域FA的尺寸。 作为面部区域FA的尺寸,能使用面部区域FA的面积等各种值。 在本实施例中,作为一个例子,面部区域FA的矩形的各边中高度方向的边的长度(上述Hf)为面部区域FA的尺寸。 这时,对象图像TI上的Hf的长度换算为对象图像TI上的像素数而取得。 可是,宽度方向的边的长度(上述Wf)也可以作为面部区域FA的尺寸取得,如上所述,如果面部区域FA为正方形,面部区域FA的4边中的任意1边的长度可以作为面部区域FA的尺寸而取得。
[0152] 在S1712中,排除判别部270通过参照面部区域大小上限值表430(图1),取得与上述取得的面部区域FA的斜率对应的面部区域FA的 尺寸的上限值。 [0153] 图30表示面部区域大小上限值表430的一个例子。 在面部区域大小上限值表430中,是针对如上述那样取得的面部区域FA的多个斜率,预先规定允许的面部区域FA的尺寸(在本实施例中,面部区域FA的高度方向的边的像素数)的上限值的表。在本实施例中,鉴于面部区域FA的上述斜率越接近某规定的上限角度(称作角度βL),包含该面部区域FA的变形区域TA的变形处理所需的存储器消耗量越增加的事实(后面描述该事实),采用表示面部区域FA的斜率的值越接近上述角度βL,尺寸的上限值规定为越小的值的面部区域大小上限值表430。
[0154] 如果在面部区域大小上限值表430中直接规定与上述S1711中取得的斜率(角度β)对应的尺寸上限值,排除判别部270就读出该直接规定的上限值。 而在面部区域大小上限值表430中未直接规定与上述取得的斜率(角度β)对应的尺寸上限值时,通过根据规定的其他上限值的插补计算等,取得与上述取得的斜率(角度β)对应的上限值即可。
[0155] 在S1713中,排除判别部270判断在S1711中取得的面部区域FA的尺寸是否为在S1712中取得的尺寸上限值内,超过上限值时,进行决定,把包含具有超过该上限值的尺寸的面部区域FA的变形区域TA从变形处理的对象中排除。其结果,能从变形处理的对象中把对象图像TI上的斜率(角度β)引起的变形处理所需的存储器消耗量多的变形区域TA排除。
[0156] 接着,在S172中,作为第二排除判别,排除判别部270判别从通过基于图像输出中使用的多个纵横比的各修正、与从对象图像TI切出的各修正图像中相同的图像范围中,变形区域TA的至少一部分是否露出,关于至少一部分露出的变形区域TA,进行从变形处理的对象中排除的处理。该判别按照在上述S171中未判别为从变形处理的对象中排除的各变形区域TA进行。
[0157] 在本实施例中,打印机100在进行面部形状修正的处理的过程中,把对象图像TI作为同一尺寸的图像数据对待。对象图像TI的图像数据例如是长边和短边为320×240像素(纵横比4:3)的QVGA(Quarter Video Graphics Array)尺寸的图像数据。 而在打印机100中,对象图像TI的打印中能使用的打印用纸的种类是A4尺寸、L版尺寸、激光打印机尺寸(letter size)等各种,根据打印用纸的种类,纵横比也各种各样。 因此,在打印对象图像TI时,根据选择为打印中使用的打印用纸的纵横比,适宜修正该图像数据。 [0158] 图31(a)例示根据某打印用纸的纵横比,修正对象图像TI的情形。 如果用与对象图像TI的纵横比不同的纵横比修正对象图像TI,就如该图所示,对象图像TI上设置的变形区域TA的一部分有可能在修正的范围外(画阴影的部分)露出。由于在修正的范围外露出的数据部分被放弃,所以这样为了对一部分从修正范围露出的变形区域TA中包含的面部进行变形处理,有必要再度设定(进行变形区域TA的矩形的移动或缩小)包含该面部的变形区域TA,以使其全部纳入修正的范围内。 可是,这样的变形区域TA的再设定处理引起打印机100的处理负担增加和存储器消耗量的增大。
[0159] 因此,排除判别部270如图31(b)所示,在对象图像TI上设定根据打印机100能够使用的全部打印用纸的纵横比分别修正时切出的各修正图像中,共同的共同图像范围CA。在图31(b)中,为了易于说明,打印机100能使用的全部打印用纸的纵横比,即与对象图像TI的纵横比不同的纵横比一共为2种,在根据该2个纵横比,分别进行修正时,在未切出而放弃的对象图像TI上的区域打上阴影。 即在该图中,不带阴影的对象图像TI上的区域成为共同图像范围CA。 排除判别部270按照成为判别的对象的每个各变形区域TA,判断是否从共同图像范围CA中露出,对于一部分从共同图像范围CA露出的变形区域TA,决定将其从变形处理的对象中排除。
[0160] 其结果,只有在共同图像范围CA中包含其全体的变形区域TA才能成为变形处理的对象,所以失去了进行上述的变形区域TA的再设定的必要性,能避免增加打印机100的处理负担和增大存储器消耗量。 此外,也没有根据打印中使用的打印用纸的种类的不同(打印用纸的纵横比的不同),对对象图像TI中的面部进行或不进行变形处理的状况,所以对用户不会带来不舒服感。
[0161] 接着,在S173中,作为第三排除判别,排除判别部270关于变形区域TA,判别对象图像TI上的斜率是否属于规定的角度范围,关于不属于该规定的角度范围的变形区域TA,进行从变形处理的对象中排除的处理。对在上述S171、172中未判别为从变形处理的对象排除的每个变形区域TA进行该判别。
[0162] 图32表示上述规定的角度范围的一个例子。 在本实施例中,以水平基准线Hs的正方向(对象图像TI的右方向,0度方向)、垂直基准线Vs的正方向(对象图像TI的上方向,90度方向)、水平基准线Hs的负方向(对象图像TI的左方向,180度方向)分别为中心,把±15度的范围决定为上述规定的角度范围。当然,上述规定的角度范围的设定并不局限于上述数值。
[0163] 在该S173中,排除判别部270对于成为判别对象的变形区域TA,判别该基准线RL的斜率是否属于上述规定的角度范围内。在该判别时,排除判别部270有必要识别基准线RL的上下即基准线RL的两端中的哪一侧指向面部的上方向。
[0164] 这里,根据众所周知的面部检测方法,进行面部区域FA的检测时,能取得关于面部区域FA的矩形的4个顶点的每一个,是表示面部的右上的点,或面部的左上的点,或面部的右下的点,或面部的左下的点的信息的顶点位置信息。 因此,例如面部区域检测部220参照顶点位置信息,确定面部区域FA的右上的点和右下的点(或者左上的点和左下的点),并且能把基准线RL的两端侧接近上述已确定的右上的点(左上的点)的一侧确定为基准线RL的上方向。
[0165] 基准线RL的两端中,哪一侧指向面部的上方向的确定也可以按以下进行。如使用图7所述,在上述S142中,评价部234计算用于检测基准区域SA中的眼睛的图像的位置的评价值。 有关的评价值如图9所示,在眼睛的位置Eh,取得一个极小值,并且在眼睛以外的R成分少的位置即眉毛或头发的图像中,取极小值。 而且,可以说在人面部上,眉毛或头发存在于比眼睛更上方。 因此,上述决定部236与决定上述高度基准点Rh的处理一起,进行如下处理:从高度基准点Rh的位置观察,把与目的位置所对应的极小值和另一极小值所对应的基准线RL上 的位置的一侧确定为面部的上方向。 其结果,确定基准线RL的两端中某一侧指向面部的上方向。
[0166] 这样确定变形区域TA的基准线RL的两端中某一侧指向面部的上方向,所以排除判别部270根据有关的确定结果,按成为判别对象的每一变形区域TA,判别对象图像TI的右方向(0度方向)和基准线RL的上方向逆时针旋转所成角度γ是否属于图32所示的规定的角度范围,对于角度γ不属于任意规定的角度范围的变形区域TA,决定将其从变形处理的对象中排除。
[0167] 根据对象图像TI上的面部的斜率,在某种程度上限制了成为变形处理的对象的面部,从而能避免增加打印机100中的处理负担和增大存储器消耗量。 [0168] 在S174中,作为第四排除判别,排除判别部270关于变形区域TA,根据对象图像TI上的面部的上下方向,进行是否作为变形处理的对象的判别,关于属于某一个方向以外的方向的变形区域TA,进行从变形处理的对象中排除的处理。 以在上述S171~S173中未判别为从变形处理的对象排除的变形区域TA为对象进行该判别。 [0169] 图33通过流程图表示S174的处理的细节。
[0170] 在S1741中,排除判别部270首先按照面部的上下方向的共同性,把对象图像TI上的变形区域TA分组。根据到上述S173为止的处理,在对象图像TI上能存在面部的上方向朝向对象图像TI的大致上侧的(上述角度γ属于对象图像TI的上方向±15度的范围)变形区域TA的组、面部的上方向朝向对象图像TI的大致右侧的(上述角度γ属于对象图像TI的右方向±15度的范围)变形区域TA的组、面部的上方向朝向对象图像TI的大致左侧的(上述角度γ属于对象图像TI的左方向±15度的范围)变形区域TA的组。 此外,按照S173的处理精度,也偶尔存在面部的上方向朝向对象图像TI的大致下侧(上述角度γ属于垂直基准线Vs的负方向±15度的范围)变形区域TA。 [0171] 排除判别部270按照这些基准线RL的上方向的角度γ,把对象图像TI上的变形区域TA划分为上述上下左右的各组。
[0172] 在S1742中,排除判别部270判断是否存在多个拥有的变形区域TA的数量为最大的组。在拥有的变形区域TA的数量为最大的组是一个时,进入S1743,对于属于拥有的变形区域TA的数量为最大的组的变形区域TA以外的变形区域TA,决定将其从变形处理的对象中排除。
[0173] 如图34所例示,在对象图像TI上设定多个变形区域TA时,面部朝着大致上侧的变形区域TA的数量是2,是最大的,并且不存在2个以上的面部共同朝向的另一方向(右、左或下侧)。 因此,在S1743中,针对朝着大致上侧以外的方向的变形区域TA,决定将其从变形处理的对象中排除。
[0174] 而在S1742中,判断为拥有的变形区域TA的数量为最大的组存在多个时,排除判别部270进入S1744,判断在拥有的变形区域TA的数量为最大的各组中是否具有多个包含面部区域FA的尺寸为最大的变形区域TA的组。 关于面部区域FA的尺寸,如上所述。 在包含面部区域FA的尺寸为最大的变形区域TA的组是一个时,进入S1745,针对属于包含拥有的变形区域TA的数量为最大并且面部区域FA的尺寸为最大的变形区域TA的组的变形区域TA,决定将该变形区域TA以外的变形区域TA,从变形处理的对象中排除。
[0175] 如图35所例示,在对象图像TI上设定多个变形区域TA时,面部向着大致上侧的变形区域TA的数量和面部向着大致右侧的变形区域TA的数量都是最大数(2),并且在面部向着大致上侧的变形区域TA的组中包含面部区域FA最大的变形区域TA。 因此,在上述S1745中,针对向着大致上侧以外的方向的变形区域TA,决定将其从变形处理的对象中排除。
[0176] 而在拥有的变形区域TA的数量为最大的各组中,在所包含面部区域FA的尺寸为最大的变形区域TA的组存在多个时,排除判别部270进入S1746,从多个组中按照规定的优先级选择与一个方向有关的组。 然后,对于属于该选择的组的变形区域TA以外的变形区域TA,决定将其从变形处理的对象中排除。这里所说的优先级是关于上下左右的顺序,至少把上侧最优先。 关于左、右、下的优先级没有特别的限定,但是例如下、左、右那样预先付与顺序。
[0177] 如图36所例示,在对象图像TI上设定多个变形区域TA时,面部朝着大致上侧的变形区域TA的数量、面部朝着大致右侧的变形区域TA的数量和面部向着大致左侧的变形区域TA的数量都相同,并且面部向着大致上侧的变形区域TA的数量、面部向着大致右侧的变形区域TA的数量和面部向着大致左侧的变形区域TA的各面部区域FA的尺寸也相同。 因此,在上述S1746中,按照上述优先级,对于向着大致上侧以外的方向的变形区域TA,决定将其从变形处理的对象中排除。
[0178] 根据S174的处理,即使在对象图像TI上设定的各变形区域TA的面部的上下方向如大致上侧、大致下侧、大致右侧、大致左侧那样是分散的方向,也按照各方向的变形区域TA的数量或尺寸、或者各方向之间的优先级,只选择一个成为变形处理的对象的变形区域TA的方向。 因此,能避免增加打印机100的处理负担和增大存储器消耗量。此外,图33所示的流程图只不过是一个例子,排除判别部270不一定按照如该流程图的步骤。 例如,在S1742中,进行“是”的判断后,也可以不进行S1744的判断,转移到S1746的判断。 如果采用有关的步骤,就能更简单地进行S174的处理。 [0179] 在S175中,作为第五排除判别,排除判别部270在变形区域TA之间产生重叠时,为了消除该重叠,进行从变形处理的对象中把一个以上的变形区域TA排除的处理。
将在上述S171~S174中未判别为从变形处理的对象排除的变形区域TA作为对象进行该判别。
[0180] 图37通过流程图表示S175的处理的细节。
[0181] 在S1751中,排除判别部270,在该时刻未判别为从变形处理的对象排除的变形区域TA中,选择一个面部区域FA的尺寸最大的变形区域TA。
[0182] 在S1752中,判断是否存在对于在最近的S1751中选择的变形区域TA重叠的、在该时刻未判别为从变形处理的对象中排除的其他变形区域TA。在存在上述重叠的其他变形区域TA时,排除判别部270进入S1753,对于上述重叠的其他变形区域TA的全部,决定将其从变形处理的对象中排除。
[0183] 在S1753后,或者在S1752中进行了“否”的判断时,进入S1754。 在S1754中,排除判别部270判断在过去的S1751中选择的变形区域TA以外,是否存在在该时刻未判别为从变形处理的对象排除的其他变形区域TA。 在判断为存在时,返回到S1751,排除判别部270重新选择在过去的S1751中选择的变形区域TA以外的变形区域TA,重复S1752以后的处理。而除了在过去的S1751中选择的变形区域TA以外,不存在在该时刻未判别为从变形处理的对象中排除的其他变形区域TA时,结束图37的处理。 [0184] 如图38所示,如果以在对象图像TI上重叠设定多个变形区域TA的情形为例,说明图37的处理,就变为如下那样。 在图38中,在变形区域TA1~TA6中,变形区域TA1的面部区域FA的尺寸最大,所以首先在S1751中选择该变形区域TA1。而且,变形区域TA5对于变形区域TA1重叠,所以把变形区域TA5从变形处理的对象中排除。在接着的S1751中,选择在过去的S1751中未选择的变形区域TA中面部区域FA的尺寸最大的变形区域TA2。 对于变形区域TA2,变形区域TA3和变形区域TA4重叠,所以把变形区域TA3、TA4从变形处理的对象中排除。 在接着的S1751中,选择变形区域TA6。 可是,在该时刻,不排除,与变形区域TA6重叠的变形区域TA不存在(S1752,否)。 此外,在变形区域TA1、TA2、TA6以外,在该时刻不存在未判别为从变形处理的对象中排除的变形区域TA(S1754,否),所以结束图37的处理。 在该图38的例子中,变形区域TA1、TA2、TA6不排除、保留,消除变形区域TA的重叠。
[0185] 这里,在对象图像TI中,为了对一部分重叠的两个变形区域TA分别进行变形处理时,先对一方的区域进行变形处理,然后对另一方的区域进行变形,因此需要将与上述一方的区域有关的变形后的图像数据在原图像(变形区域TA都未变形处理的状态的对象图像TI)之外另外保存。 因此,存储器的使用量变得很大。 在本实施例中,排除判别部270从多个变形区域TA中,按照面部区域FA的尺寸大小的顺序选择一个变形区域TA,并且重复进行处理,从而从变形处理的对象中排除对于该选择的变形区域TA重叠的其他变形区域TA,从而避免成为变形对象的变形区域TA的重叠。 因此,根据本实施例,把假定尺寸大、为对 用户重要的面部作为变形处理的对象保留,能消除变形区域TA的重叠引起的、如上所述的存储器的大量消耗。
[0186] 这里,消除变形区域TA的重叠的方法并不局限于上述的手法。例如排除判别部270为了消除变形区域TA的重叠,选择一个变形区域TA时,不是以面部区域FA的尺寸为基准进行选择,可以按照从外部输入的变形区域TA的选择指示进行选择。即排除判别部270受理基于用户的操作部140的操作的选择指示。 这时,排除判别部270指示显示处理部310,以在显示部150显示能任意选择对象图像TI上的变形区域TA的用户界面,通过该用户界面,按照用户输入的选择指示,选择变形区域TA。然后,存在对于该选择的变形区域TA重叠的其他变形区域TA时,针对该重叠的其他变形区域TA的全部,决定将其从变形处理的对象中排除。如果采用有关的结构,就能把用户选择的变形区域TA作为变形处理的对象保留,消除变形区域TA之间的重叠。
[0187] 在S176中,作为第六的排除判别,排除判别部270判断对象图像TI上的变形区域TA的数量是否超过预先决定的阈值(最大处理数),超过该阈值时,选择纳入该阈值的数量的变形区域TA,对于未选择的变形区域TA,决定将其从变形处理的对象中排除。该判别以在上述S171~S175中未判别为从变形处理的对象中排除的变形区域TA作为对象而进行。 作为上述的阈值,能使用各种数值,但是在本实施例中,考虑打印机100的处理能力,作为一个例子,上述阈值为“5个”。
[0188] 排除判别部270在对象图像TI上的变形区域TA的数量超过上述阈值时,例如按照面部区域FA的尺寸大小的顺序,选择阈值以内的数量的变形区域TA。 其结果,把假定尺寸大、对用户重要的面部作为变形处理的对象保留,能避免把超过打印机100的处理能力的数量的变形区域TA作为变形处理的对象。
[0189] 在S177中,作为第七排除判定,排除判别部270判别是否存在这样的变形区域TA,该变形区域TA的至少一部分露出在根据从外部输入的修正指示而切出的修正图像中,在存在时,对于至少一部分从该修正图像中露出的变形区域TA,决定将其从变形处理的对象中排除。 该判别按照在上述S171~S176中未判别为从变形处理的对象中排除的各 变形区域TA而进行。 在上述S172中,针对从根据打印机100能使用的全部打印用纸的纵横比分别修正对象图像TI时共同保留的共同图像范围CA中露出的变形区域TA进行排除,但是在S177中,关于从用户能任意设定的修正的范围中露出的变形区域TA,也从变形处理的对象中排除。
[0190] 在上述S177中,排除判别部270取得来自外部的修正的指示。 这时,根据用户通过操作部140的输入操作,进行对象图像TI的修正指示时,根据该指示在对象图像TI上设定由修正切出的图像范围。或者排除判别部270指示显示处理部310以使显示部150显示用于进行对于对象图像TI的修正的设定的用户界面,根据用户通过该用户界面输入的修正指示,在对象图像TI上设定修正的图像范围。 排除判别部270按照作为判别的对象的各变形区域TA,判断是否从上述设定的修正的图像范围中露出,针对一部分露出的变形区域TA,决定将其从变形处理的对象中排除。
[0191] 根据上述S177的处理,只有在由用户指示的修正切出的图像范围中包含全体的变形区域TA才能成为变形处理的对象,所以不必进行上述的变形区域TA的再设定,能避免打印机100的处理负担的增加和存储器消耗量的增大。 可是,在从外部未取得修正的指示时,不执行S177的处理。
[0192] 在本实施例中,根据上述顺序,进行上述的第一~第七的排除判别,将根据任意的排除判别均未排除并最终保留的变形区域TA作为对象,进行S180以后的处理。 可是,上述所示的第一~第七的排除判别的顺序只不过是一个例子,排除判别部270能以任意的顺序执行各排除判别的处理,也能只实施上述第一~第七的排除判别的一部分。 [0193] (2-3)从变形区域的分割到打印处理:
[0194] 在S180(图4)中,变形区域分割部250(图1)把变形区域TA分割为多个小区域。图19是表示变形区域TA分割成小区域的分割方法的一个例子的说明图。变形区域分割部250在变形区域TA中配置多个分割点D,使用连接分割点D的直线,把变形区域TA分割为多个小 区域。存在多个变形区域TA时,按照各变形区域TA分割成小区域。 [0195] 根据分割点配置图案表410(图1),与S120(图4)中设定的变形类型相关联地,定义分割点D的配置形式(分割点D的个数和位置)。 变形区域分割部250参照分割点配置图案表410,以与S120中设定的变形类型相关联的形式,配置分割点D。 在本实施例中,如上所述,作为变形类型,设定用于把面部变清晰的变形“类型A”(参照图5),所以用与该变形类型相关联的形式配置分割点D。
[0196] 如图19所示,在水平分割线Lh和垂直分割线Lv的交点、水平分割线Lh以及垂直分割线Lv和变形区域TA的外框的交点配置分割点D。 这里,水平分割线Lh和垂直分割线Lv是作为在变形区域TA内配置分割点D的基准的线。 如图19所示,在与用于把面部变清晰的变形类型关联的分割点D的配置中,设定与基准线RL正交的2条水平分割线Lh、与基准线RL平行的4条垂直分割线Lv。 2条水平分割线Lh从变形区域TA的下方按顺序称作Lh1、Lh2。此外,4条垂直分割线Lv从变形区域TA的左按顺序称作Lv1、Lv2、Lv3、Lv4。
[0197] 水平分割线Lh1在变形区域TA中,配置在比下巴的图像更下方,水平分割线Lh2配置在紧靠眼睛的图像的下面的附近。 此外,垂直分割线Lv1和Lv4配置在脸颊的线的图像的外侧,垂直分割线Lv2和Lv3配置在眼角的图像的外侧。 此外,按照水平分割线Lh以及垂直分割线Lv和图像的位置关系在结果上成为上述的位置关系,预先设定与变形区域TA的尺寸之间的对应关系,执行水平分割线Lh和垂直分割线Lv的配置。 [0198] 按照上述的水平分割线Lh和垂直分割线Lv的配置,在水平分割线Lh和垂直分割线Lv的交点、水平分割线Lh以及垂直分割线Lv和变形区域TA的外框的交点配置分割点D。 如图19所示,从左侧开始按顺序把位于水平分割线Lhi(i=1或2)上的分割点D称作D0i、D1i、D2i、D3i、D4i、D5i。 例如,位于水平分割线Lh1上的分割点D称作D01、D11、D21、D31、D41、D51。 同样,从下侧开始按顺序把位于垂直分割线Lvj(j=1、2、3、4中的任意一个)上的分割点D称作Dj0、Dj1、Dj2、Dj3。 例如,把位于垂直分割线Lv1上的分割点D称作D10、 D11、D12、D13。
[0199] 此外,如图19所示,本实施例的分割点D的配置成为对于基准线RL,对称的配置。
[0200] 变形区域分割部250通过连接已配置的分割点D的直线(即水平分割线Lh和垂直分割线Lv),把变形区域TA分割为多个小区域。 在本实施例中,如图19所示,变形区域TA分割为15个矩形的小区域。
[0201] 此外,在本实施例中,根据水平分割线Lh和垂直分割线Lv的条数和位置,决定分割点D的配置,所以分割点配置图案表410也可以说定义了水平分割线Lh和垂直分割线Lv的条数和位置。
[0202] 在S190(图4)中,变形处理部260(图1)把对象图像TI的变形区域TA作为对象进行图像的变形处理。移动在S180中在变形区域TA内配置的分割点D的位置,使小区域变形,从而进行基于变形处理部260的变形处理。 S190的处理在存在多个变形区域TA时,把各变形区域TA作为对象进行。
[0203] 根据分割点移动表420(图1),与在S120(图4)中设定的变形类型和变形的程度的组合相对应,预先决定用于变形处理的各分割点D的位置的移动形式(移动方向和移动距离)。 变形处理部260参照分割点移动表420,按照与在S120中设定的变形类型和变形的程度的组合相对应的移动方向和移动距离,移动分割点D的位置。 [0204] 在本实施例中,如上所述,作为变形类型,设定用于把面部变清晰的变形“类型A”(参照图5),作为变形程度,设定程度“中”的程度,所以按照与这些变形类型和变形的程度的组合相对应的移动方向和移动距离,移动分割点D的位置。 [0205] 图20是表示分割点移动表420的内容的一个例子的说明图。 此外,图21是表示按照分割点移动表420的分割点D的位置的移动的一个例子的说明图。 在图20中表示由分割点移动表420定义的分割点D的位置的移动形式中,与用于把面部变清晰的变形类型和程度“中”的变形程度的组合相对应的移动形式。 如图20所示,在分割点移动表420,关于 各分割点D,表示了沿着与基准线RL正交的方向(H方向)和与基准线RL平行的方向(V方向)的移动量。 此外,在本实施例中,在分割点移动表420中表示的移动量的单位是对象图像TI的像素间隔PP。 此外,关于H方向,向右侧的移动量表示为正的值,向左侧的移动量表示为负的值,关于V方向,向面部的上方的移动量表示为正的值,向面部的下方的移动量表示为负的值。例如,分割点D11沿着H方向,向右侧只移动像素间隔PP的7倍的距离,沿着V方向,向上方移动像素间隔PP的14倍的距离。 此外,例如分割点D22因为H方向和V方向的移动量都是0,所以不移动。 [0206] 此外,在本实施例中,为了消除变形区域TA的内外的图像间的边界的不自然,位于变形区域TA的外框上的分割点D(例如图21所示的分割点D10等)的位置不移动。因此,在图20所示的分割点移动表420中未定义关于位于变形区域TA的外框上的分割点D的移动形式。
[0207] 在图21中,移动前的分割点D用中间白的圆圈表示,移动后的分割点D或没有位置的移动的分割点D用黑圆圈表示。 此外,移动后的分割点D称作分割点D’。 例如分割点D1的位置在图21中在右上方向移动,成为分割点D’11。
[0208] 此外,在本实施例中,规定移动形式,从而对于基准线RL处于对称的位置关系的2个分割点D的组合(例如分割点D11和D41的组合)的全部,在分割点D的移动后也维持对于基准线RL对称的位置关系。
[0209] 变形处理部260对于构成变形区域TA的各小区域,按照分割点D的位置移动前的状态的小区域的图像成为由分割点D的位置移动重新定义的小区域的图像的方式进行图像的变形处理。 例如在图21中,以分割点D11、D21、D22、D12为顶点的小区域(付与阴影表示的小区域)的图像变为以D’11、D’21、D22、D’12为顶点的小区域的图像。
[0210] 图22是表示变形处理部260的图像的变形处理方法的概念的说明图。 在图22中,以黑圆圈表示分割点D。 在图22中,为了简化说明,关于4个小区域,在左侧表示分割点D的位置移动前的状态,在右侧表 示分割点D的位置移动后的状态。 在图22的例子中,中央的分割点Da移动到分割点Da’的位置,其他分割点D的位置不移动。 据此,例如以分割点D的移动前的分割点Da、Db、Dc、Dd为顶点的矩形的小区域(以下也称作“变形前关注小区域BSA”)的图像变形为以分割点Da’、Db、Dc、Dd为顶点的矩形的小区域(以下也称作“变形后关注小区域ASA”的图像。
[0211] 在本实施例中,使用小区域的重心CG将矩形的小区域分割为4个三角形区域,以三角形区域为单位进行图像的变形处理。 在图22的例子中,变形前关注小区域BSA分割为以变形前关注小区域BSA的重心CG为顶点之一的4个三角形区域。 同样,变形后关注小区域ASA分割为以变形后关注小区域ASA的重心CG’为顶点之一的4个三角形区域。然后,在分割点Da的移动前后各自的状态下,按照对应的各三角形区域进行图像的变形处理。 例如,变形前关注小区域BSA中的以分割点Da、Dd和重心CG为顶点的三角形区域的图像变形为变形后关注小区域ASA中的以分割点Da’、Dd和重心CG’为顶点的三角形区域的图像。
[0212] 图23是表示三角形区域的图像的变形处理方法的概念的说明图。 在图23的例子中,以点s、t、u为顶点的三角形区域stu的图像变形为以点s’、t’、u’为顶点的三角形区域s’t’u’的图像。 计算变形后的三角形区域s’t’u’的图像中的某像素的位置相当于变形前的三角形区域stu的图像中的哪个位置,通过将计算出的位置中的变形前的图像的像素值作为变形后的图像的像素值,而进行图像的变形。 [0213] 例如,在图23中,变形后的三角形区域s’t’u’的图像中的关注像素p’的位置相当于变形前的三角形区域stu的图像中的位置p。 位置p的计算按如下进行。 首先,如以下公式(1)那样,计算用矢量s’t’和矢量s’u’之和表现关注像素p’的位置的系数m1和m2。
[0214] [公式1]
[0215]
[0216] 接着,使用计算出的系数m1和m2,根据以下的公式(2),计算 变形前的三角形区域stu的矢量st和矢量su的和,从而求出位置p。
[0217] [公式2]
[0218]
[0219] 在变形前的三角形区域stu的位置p与变形前的图像的像素中心位置一致时,该像素的像素值为变形后的图像的像素值。而变形前的三角形区域stu的位置p成为从变形前的图像的像素中心位置偏移的位置时,通过使用位置p的周围像素的像素值的双三次等插补计算,计算位置p的像素值,计算的像素值作为变形后的图像的像素值。 [0220] 关于变形后的三角形区域s’t’u’的图像中的各像素,如上所述,通过计算像素值,从而能进行从三角形区域stu的图像向三角形区域s’t’u’的图像的图像变形处理。 变形处理部260关于构成图21所示的变形区域TA的各小区域,如上所述,定义三角形区域,进行变形处理,进行变形区域TA的图像变形处理。
[0221] 这里,更详细说明本实施例的面部形状修正的形式。图24是表示本实施例的面部形状修正的形式的说明图。 在本实施例中,如上所述,作为变形类型,设定用于把面部变清晰的变形“类型A”(参照图5),作为变形程度,设定程度“中”的程度。 在图24中,通过箭头,表示构成变形区域TA的各小区域的变形形式的图像。 [0222] 如图24所示,在本实施例的面部形状修正中,关于与基准线RL平行的方向(V方向),配置在水平分割线Lh1上的分割点D(D11、D21、D31、D41)的位置向上方移动,配置在水平分割线Lh2上的分割点D(D12、D22、D33、D43)的位置不移动(参照图20)。 因此,位于水平分割线Lh1和水平分割线Lh2之间的图像关于V方向,缩小。如上所述,水平分割线Lh1配置在比下巴更靠下方,水平分割线Lh2配置在眼睛的图像的下方附近,所以在本实施例的面部形状修正中,面部的图像中从下巴到眼睛的下方的部分的图像在V方向缩小。 其结果,图像中的下巴的线向上方移动。
[0223] 而关于与基准线RL正交的方向(H方向),配置在垂直分割线Lv1上的分割点D(D11、D12)的位置向右移动,配置在垂直分割线Lv4上的分割点D(D41、D42)的位置向左移动(参照图20)。 配置在垂直分割线Lv2上的2个分割点D中配置在水平分割线Lh1上的分割点D(D21)的位置向右移动,配置在垂直分割线Lv3上的2个分割点D中配置在水平分割线Lh1上的分割点D(D31)的位置向左移动(参照图20)。 因此,位于比垂直分割线Lv1更左侧的图像关于H方向向右侧扩大,位于比垂直分割线Lv4更右侧的图像向左侧扩大。 此外,位于垂直分割线Lv1和垂直分割线Lv2之间的图像关于H方向,缩小或向右侧移动,位于垂直分割线Lv3和垂直分割线Lv4之间的图像关于H方向,缩小或向左侧移动。 进而位于垂直分割线Lv2和垂直分割线Lv3之间的图像把水平分割线Lh1的位置作为中心,关于H方向缩小。
[0224] 如上所述,垂直分割线Lv1和Lv4配置在脸颊的线的图像的外侧,垂直分割线Lv2和Lv3配置在眼角的图像的外侧。 因此,在本实施例的面部形状修正中,面部的图像中比两个眼角更外侧的部分的图像全体上在H方向缩小。 特别在下巴附近,缩小率提高。 其结果,图像中的面部的形状全体上在宽度方向变细。
[0225] 如果综合上述的H方向和V方向的变形形式,根据本实施例的面部形状修正,对象图像TI中面部的形状变清晰。此外,面部的形状变清晰也能表现为变为所谓的“小面部”。
[0226] 此外,以图24所示的分割点D22、D32、D33、D23为顶点的小区域(带阴影的区域)如果根据上述的水平分割线Lh2或垂直分割线Lv2和Lv3的配置方法,就成为包含两只眼睛的图像的区域。 如图20所示,分割点D22和D32在H方向、V方向都不移动,所以包含两只眼睛的图像的区域不变形。 在本实施例中,优选关于包含两只眼睛的图像的区域不变形,面部形状修正后的图像更自然。
[0227] 在S200(图4)中,面部形状修正部200(图1)指示显示处理部310以使显示部150显示面部形状修正后的对象图像TI。图25是表示显示面部形状修正后的对象图像TI的显示部150的状态的一个例子的说明图。 通过显示面部形状修正后的对象图像TI的显示部150,用户 能识别修正结果。 在用户不满足修正结果,选择“返回”按钮时,例如在显示部150显示选择图5所示的变形类型和变形程度的画面,执行基于用户的变形类型和变形程度的再次设定。 在用户满足于修正结果,选择“打印”按钮时,开始以下的修正图像打印处理。
[0228] 在S300(图3)中,打印处理部320(图1)控制打印机引擎160,进行面部形状修正处理后的对象图像TI的打印。 图26是表示本实施例的修正图像打印处理的流程的流程图。打印处理部320把面部形状修正处理后的对象图像TI的图像数据的分辨率变换为适合于打印机引擎160的打印处理的分辨率(S310),把分辨率变换后的图像数据变换为可用打印机引擎160的打印中使用的多个墨色进行灰度表现的墨色图像数据(S320)。 此外,在本实施例中,打印机引擎160的打印中使用的多个墨色是青色(C)、洋红色(M)、黄色(Y)、黑色(K)等4种颜色。进而,打印处理部320根据墨色图像数据中的各墨色的灰度值,执行半色调处理,生成表示各打印像素的墨点的形成状态的墨点数据(S330),排列墨点数据,生成打印数据(S340)。 打印处理部320对打印机引擎160供给生成的打印数据,使打印机引擎160进行对象图像TI的打印(S350)。据此,面部形状修正后的对象图像TI的打印结束。
[0229] 如上所述,在本实施例的打印机100的面部形状修正打印处理中,在对象图像TI上设定的变形区域TA内配置多个分割点D,使用连接彼此分割点D之间的直线(水平分割线Lh和垂直分割线Lv),把变形区域TA分割为多个小区域。 此外,分割点D的位置移动,使小区域变形,执行变形区域TA内的图像的变形处理。这样,在本实施例的打印机100的面部形状修正打印处理中,在变形区域TA内配置分割点D,只移动配置的分割点D,就能进行图像变形,能容易并且高效实现与多种多样的变形形式对应的图像变形。
[0230] 此外,根据本实施例,根据面部区域的检测,在对象图像TI上设定的变形区域TA中,以由上述的各排除判别都未判别为从变形处理的对象中排除的变形区域TA作为对象,进行图像的变形处理。 因此,能适当抑制对于以往由于对根据面部区域的检测在对象图像TI上设定的变形区域TA的全部执行变形处理而产生的对打印机100的CPU110的过大的处理负担或存储器的大量消耗。 特别是打印机100是上述的复合 机时,为了面部形状修正打印处理能确保的资源也被限制,所以如本实施例那样,限定作为变形处理的对象的变形区域TA关系到打印机100实现稳定的工作。
[0231] (3)追加说明和其他实施例
[0232] 说明上述S171的说明时描述的面部区域FA的斜率(角度β)越接近某规定的上限角度(角度βL),变形区域TA的变形处理所需的存储器消耗量就越增加的事实。 [0233] 图39(a)表示垂直基准线Vs和基准线RL所成角度β为0度的变形区域TA的一部分,图39(b)表示垂直基准线Vs和基准线RL所成角度β为大于0度的规定角度(例如β2)的变形区域TA的一部分。
[0234] 这里,在上述S190的变形处理的过程中,变形处理部260以与垂直基准线Vs正交的行(像素行)为单位依次生成变形后的对象图像TI的数据。 即按照各像素行,依次进行从变形前的对象图像TI(原图像)取得与变形后的图像的各像素对应的像素值的处理,最终取得进行变形的一幅对象图像TI。 在进行各像素行的生成的过程中,打印机100在生成一个像素行的处理期间,将取得的与该一个像素行的各个像素对应的像素值所必要的原图像上的规定范围的数据,暂时保存在内部存储器200内的规定缓存区域中,在变形处理中使用。 因此,取得与变形后的一个像素行对应的像素值所必要的原图像上的范围越大,打印机100内的存储器消耗量越大。
[0235] 在图39(a)、(b)中,以包含分割点D11、D21的变形区域TA的左下的区域显示为中心。 分割点D11、D21(比基准线RL更右侧的分割点D31、41也同样)在本实施例的变形处理中是变形前后的移动距离d最长的分割点(参照分割点移动表420),所以以这样的移动距离长的分割点D的移动为例,说明变形处理所需的存储器量的不同。 [0236] 例如在S190的变形处理中,在生成包含图39(a)所示的分割点D’21的像素行L1时,至少需要与分割点D’21的移动前的分割点D21有关的原图像上的数据。此外,在生成像素行L1时,关于分割点D’21以外的像素行L1上的其它像素,也有必要从原图像中取得像素值,所以需 要原图像中的与像素行L1同位置的像素行的数据、和虽然没有分割点D21那么远离但是离像素行L1某种程度的位置的像素行的数据。 [0237] 因此,在像素行L1的生成时,原图像内的数据,即至少从与像素行L1同位置的像素行到包含分割点D21的像素行的宽度(Vband1)的图像数据如上所述暂时保持在缓存区域中,在变形处理中利用。 而如图39(b)那样,变形区域TA在对象图像TI上倾斜的状况下,在生成包含分割点D’21的像素行L2时,还需要与分割点D’21的移动前的分割点D21有关的原图像上的数据等。因此,在像素行L2的生成时,原图像内的数据,即至少从与像素行L2同位置的像素行到包含分割点D21的像素行的宽度(Vband2)的图像数据暂时保持在缓存区域中,在变形处理中使用。
[0238] 无论变形区域TA相对于垂直基准线Vs倾斜还是不倾斜,各分割点D的移动距离d不变。可是在本实施例的变形处理中,从图24等的说明可知,在变形前后移动的各点的大部分不是在平行于基准线RL的方向,在对于基准线RL倾斜的方向上移动。 分割点D21也不是在平行于基准线RL的方向上移动,而是在变形区域TA内向右上方向移动。因此,变形区域TA如图39(b)那样对于垂直基准线Vs倾斜,分割点D21的移动方向接近平行于垂直基准线Vs的状态,移动前后的分割点D21、D’21之间的平行于垂直基准线Vs的方向的距离变长。 即如图39(a)、(b)所示,变形区域TA对于垂直基准线Vs,斜率为0度时,包含分割点D’21的像素行L1的生成所需要的缓存区域是能存储原图像的Vband1的图像数据的容量就可以,但是变形区域TA相对于垂直基准线Vs,具有β2的斜率时,包含分割点D’21的像素行L2的生成所需要的缓存区域成为能存储比Vband1宽度更大的Vband2的图像数据的容量。
[0239] 此外,在本实施例中,夹着中央的基准线RL,左右对称地进行变形区域TA内的变形处理。 因此,如图39(b)所示,变形区域TA对于垂直基准线Vs倾斜时,关于夹着基准线RL处于对称关系的左右的分割点D(例如分割点D21和分割点D31的关系),一方的移动方向成为大致平行于垂直基准线Vs的状态,另一方的移动方向成为大致垂直于垂直基准线Vs的状态。 可是,为了图像变形处理而必须确保的缓 存区域的大小必须与需要的最大量对应,所以结果,与图39(a)的情形相比,在图39(b)的情形中进行变形处理时所需要的缓存区域的大小更大。 此外,在上述中,用基准线RL和垂直基准线Vs的关系进行说明,但是在基准线RL和水平基准线Hs的关系中,也能说同样的事。 即与基准线RL平行于水平基准线Hs的情形相比,在基准线RL和水平基准线Hs之间产生某角度β的时候,上述分割点D11、21(或者分割点D31、D42)等的移动方向接近平行于垂直基准线Vs的状态。
[0240] 如上所述在本实施例中,即使面部区域FA的大小相同,变形前后的分割点D的移动方向由于对象图像TI上的面部区域FA(变形区域TA)的倾斜,越与垂直基准线Vs或水平基准线Hs平行的状态,变形处理中需要越多的存储器。因此,在本实施例中,如上所述,面部区域FA的斜率(角度β)越接近上限角度βL,能作为变形处理的对象的面部区域FA的尺寸的上限值为越小的值,能抑制打印机100的存储器的消耗。 [0241] 此外,能根据关于变形前后的移动距离长的分割点D的变形区域TA内的移动方向,规定上限角度βL的值。 例如,根据分割点移动表420中规定的分割点D21在H方向(与基准线RL正交的方向)和V方向(平行于基准线RL的方向)的移动距离,确定分割点D21在变形区域TA内的移动方向,该分割点D21的移动方向和V方向所成角度为上限角度βL。 此外,变形区域TA内的分割点D的移动方向根据S120中设定的变形的程度等而不同,所以也可以按S120中设定的各变形的程度等,规定上限角度βL(规定上限角度βL等的面部区域大小上限值表430)。
[0242] 或者,也可以考虑在上述S171后进行的S173的处理(第三排除判别),设定上限角度βL的值。在本实施例中,经过第三排除判别之后,只把水平基准线Hs的正方向和基准线RL的上方向所成角度γ属于把水平基准线Hs的正方向、垂直基准线Vs的正方向、水平基准线Hs的负方向分别作为中心的±15度的范围的变形区域TA作为变形处理的对象保留。 因此,也可以把上述15度的数值作为上限角度βL。 此外,在上限角度βL设定为15度的状况下,在上述S1711(图28)中,作为角度β,检测到比15度更大的值时,关于检测到该角度β的变形区域TA, 除此之外没必要继续进行第一排除判别。 这时,关于检测到该角度β的变形区域TA,决定将其从变形对象中排除。 [0243] 此外,在对象图像TI上的面部的上下方向散乱时,取得变形后的像素行的各像素所对应的像素值所需要的原图像上的范围扩大,增加与变形处理有关的负担。 例如,假定在图39(a)所示的像素行L1上,在比该图所示的变形区域TA更右侧或者左侧的位置存在其它变形区域TA(未图示)的情形。该其它变形区域TA的上方向如果与图39(a)所示的变形区域TA的上方向相同(两个的变形区域TA的上方向向着对象图像TI的大致上侧),为了取得像素行L1的各像素的像素值所需要的原图像上的范围大致限定在像素行L1和比像素行L1更下方的多个像素行L1构成的像素行的束。 可是,如果该其它变形区域TA的上方向向着大致下侧或大致右侧或大致左侧,在各变形区域TA,区域内的像素的移动方向的倾向不同。因此,取得像素行L1的各像素的像素值所需要的原图像上的范围往往容易扩大到像素行L1的上方和下方,结果,需要很多的缓存器。因此,如本实施例中如上所述,作为变形处理的对象的变形区域TA的面部的方向大致统一(第四排除判别),防止对象图像TI上的面部的上下方向散乱引起的存储器消耗量的增大。 [0244] 作为其它实施例,排除判别部270在第一~第七排除判别的当中,逐一检测打印机100内的存储器的可使用的空容量。 然后,判断检测的空容量是关于在该时刻未从变形处理的对象中排除的全部的变形区域TA进行变形处理所需要的足够容量时,在途中中断S170的处理,把在该时刻未从变形处理的对象排除的全部的变形区域TA作为S180以后的处理对象。
[0245] 此外,本发明并不局限于上述实施例,在不脱离该要旨的范围中,可以以各种形式实施。
[0246] 在上述实施例中,对作为图像处理装置的打印机100的面部形状修正打印处理进行了说明,但是面部形状修正打印处理例如由个人电脑执行面部形状修正(S100),由打印机只执行打印处理(S300)。 此外,打印机100并不局限于喷墨打印机,也可以是其它方式的打印机,例如激光打印机或升华型打印机。