JP2012175500A - 画像処理方法、制御プログラムおよび画像処理装置 - Google Patents
画像処理方法、制御プログラムおよび画像処理装置 Download PDFInfo
- Publication number
- JP2012175500A JP2012175500A JP2011036804A JP2011036804A JP2012175500A JP 2012175500 A JP2012175500 A JP 2012175500A JP 2011036804 A JP2011036804 A JP 2011036804A JP 2011036804 A JP2011036804 A JP 2011036804A JP 2012175500 A JP2012175500 A JP 2012175500A
- Authority
- JP
- Japan
- Prior art keywords
- face
- color
- area
- image
- correction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
- Color Image Communication Systems (AREA)
Abstract
【課題】画像データから人の顔に相当する領域を検出して画像補正処理を施す画像処理方法および装置において、補正処理をより効率よく行うとともに良好な画像品質を得る。
【解決手段】画像データが表す画像内における人の顔に相当する顔領域を特定するための情報として当該画像データに付加された顔情報を取得する顔情報取得工程と、顔情報により特定される顔領域の色に基づいて顔色補正の要否を判断する判断工程と、判断工程の結果に応じて、画像内の顔領域に対して顔色補正を行う補正工程とを備え、判断工程では、顔領域の色が、色空間において肌色に対応する領域として予め設定された第1肌色領域R1に属し、かつ第1肌色領域内に含まれ第1肌色領域よりも狭い第2肌色領域R2に属する場合には補正工程を不要と判断する一方、顔領域の色が、色空間において第1肌色領域に属し、かつ第2肌色領域に属さない場合には補正工程を必要と判断する。
【選択図】図6
【解決手段】画像データが表す画像内における人の顔に相当する顔領域を特定するための情報として当該画像データに付加された顔情報を取得する顔情報取得工程と、顔情報により特定される顔領域の色に基づいて顔色補正の要否を判断する判断工程と、判断工程の結果に応じて、画像内の顔領域に対して顔色補正を行う補正工程とを備え、判断工程では、顔領域の色が、色空間において肌色に対応する領域として予め設定された第1肌色領域R1に属し、かつ第1肌色領域内に含まれ第1肌色領域よりも狭い第2肌色領域R2に属する場合には補正工程を不要と判断する一方、顔領域の色が、色空間において第1肌色領域に属し、かつ第2肌色領域に属さない場合には補正工程を必要と判断する。
【選択図】図6
Description
この発明は、画像処理方法および画像処理装置に関するものであり、特に画像から人の顔に相当する領域を検出して画像補正処理を施す技術に関する。
被写体を撮影して画像データを生成するデジタルカメラや、該画像データを表示または印刷するプリンターなどの出力装置では、画像内に含まれる人の顔に相当する領域を検出し、該領域の画像に適宜の補正処理を行う機能を持つものが実用化されている。例えば、特許文献1に記載の技術においては、デジタルカメラ等の撮像装置側では撮影時に必要に応じて顔検出や赤目補正等の画像処理を実行し、どのような処理が実行されたかを示す情報を画像のExif(Exchangeable Image File Format)ファイルのタグに記録する。一方、当該画像ファイルを受け取って画像を印刷する印刷装置側では、補正処理が重複するのを避けるために、画像ファイルに付されたタグ情報を読み出して補正処理の要否判断を行い、必要と判断したときのみ画像に対する補正処理を実行するように構成されている。
デジタルカメラのような撮像装置においては、フォーカスや露出等の撮影条件を自動調整するために被撮影画像から顔認識を行う機能は既に広く普及しており、顔認識の結果としての画像内における顔領域を特定するための情報(ここでは「顔情報」と称する)を画像ファイルに付加することは技術的にさほど困難ではない。一方、上記した特許文献1に記載のシステムを構築するためには、画像ファイルに記録されている画像がどのような画像処理を施されたものであるかを明示するタグ情報が付されていなければならない。しかしながら、画像処理の内容としては種々のものがあり、これらをどのようにタグ情報で管理するのか、さらなる検討が必要である。
このように、上記従来技術は、例えば顔認識の結果としての顔情報のみが付された画像ファイルに対しては適用することができず、必要な補正を行えなかったり、補正が重複して実施されるなど、処理が非効率的となったり、所望の画像品質を得ることができなくなるなどの問題が残されている。
この発明にかかるいくつかの態様は、画像データから人の顔に相当する領域を検出して画像補正処理を施す画像処理方法および装置において、上記課題を解決し、補正処理をより効率よく行うとともに良好な画像品質を得ることのできる技術を提供するものである。
この発明の一の態様は、画像データが表す画像内における人の顔に相当する顔領域を特定するための情報として当該画像データに付加された顔情報を取得する顔情報取得工程と、前記顔情報により特定される前記顔領域の色に基づいて顔色補正の要否を判断する判断工程と、前記判断工程の結果に応じて、前記画像内の顔領域に対して顔色補正を行う補正工程とを備え、前記判断工程では、前記顔領域の色が、色空間において肌色に対応する領域として予め設定された第1肌色領域に属し、かつ、前記第1肌色領域内に含まれ前記第1肌色領域よりも狭い第2肌色領域に属する場合には前記補正工程を不要と判断する一方、前記顔領域の色が、色空間において前記第1肌色領域に属し、かつ、前記第2肌色領域に属さない場合には前記補正工程を必要と判断することを特徴とする画像処理方法である。
また、この発明の他の態様は、上記各工程をコンピューターに実行させることを特徴とする制御プログラムである。
これらの発明では、画像データに付加された顔情報により特定される顔領域の色によって顔色補正の要否を判断する。その判断基準は次の通りである。まず、色空間において肌色に対応する領域である第1肌色領域と、該第1肌色領域内に含まれ第1肌色領域よりも狭い第2肌色領域とが設定される。そして、当該顔領域の色が第2肌色領域に属する場合には顔色補正を行わず、当該顔領域の色が第1肌色領域に属し第2肌色領域には属さない場合には顔色補正を行う。その意味するところは以下の通りである。
第1肌色領域は、色空間において「肌色に対応する領域」であり、その意味するところは、該領域内の色であれば「肌色」と呼べる範疇にある、ということである。一方、第2肌色領域は、第1肌色領域内の限られた一部領域であり、この意味において、第1肌色領域に属する色を広義の肌色、そのうち第2肌色領域に属する色を狭義の肌色と考えることができる。
画像データに付加された顔情報から特定される顔領域が「肌色」の範疇にあるとき、当該領域が人の顔に相当するものである蓋然性が高いが、当該領域に対して既に何らかの補正がなされたか否かが不明な場合がある。本発明は、このような場合でも必要な補正処理を行い、かつ無用な補正処理を行うことを回避することができるように、色空間における肌色の範疇を補正が必要な領域と不要な領域とに区分している。
すなわち、この発明では、その色が広義の肌色と言える第1肌色領域に属する顔領域については原則として顔色補正を実行する一方、その中でも狭義の肌色と言える第2肌色領域に属するものについては、上記原則によらず顔色補正を行わない。このように、単に顔領域が肌色であるか否かで補正の要否を判断するのではなく、言わば「補正が必要な肌色」と「補正が不要な肌色」とを区別可能な判断基準を設け、顔領域の色に該判断基準を適用して補正の要否を判断する。そして、第1肌色領域および第2肌色領域を適宜に設定することにより、この発明では、必要な補正処理を漏れなく行い、かつ無用な補正処理が行われることを回避して、補正処理をより効率よく行うとともに良好な画像品質を得ることができる。
ここで、例えば、色空間のうち色相が予め定められた肌色範囲内である領域を第1肌色領域とする一方、第1肌色領域のうち明度が予め定められた適正範囲内にある領域を第2肌色領域とするようにしてもよい。顔色補正が必要となる代表的なケースとしては、逆光や露出不足等の原因により、被写体の顔色が暗く写ってしまったケースが挙げられる。このような場合、肌色であるが明度が十分でない顔領域があれば補正が必要となる一方、顔領域が肌色でしかも十分な明度があれば補正は不要である。色相が所定範囲にある領域を第1肌色領域とし、そのうち明度が適正とみなせる領域を第2肌色領域とすることで、このようなケースに好適に対応することが可能となる。
また、例えば、判断工程において顔領域の色が第1肌色領域外であったときには、人の顔に対応する所定の適合条件に適合する領域を画像内で検索し、該領域を顔領域として認識する顔認識処理工程を実行するようにしてもよい。顔情報で特定される顔領域が肌色でないケースとしては、撮像時の顔認識後に被写体またはカメラ等が動いたケースが考えられる。このような場合、画像データに付加された顔情報の信憑性は低いので、上記のように新たに顔認識処理を行うことが好ましい。また、例えば、画像データに顔情報が付加されていないときも同様であり、このような場合にも、新たに顔認識処理を行うことが好ましい。この場合において、顔認識処理工程において少なくとも一つの顔領域が認識された場合には顔色補正を実行するようにしてもよい。
なお、顔情報により特定される顔領域が画像内に複数あるときには、例えば、該複数の顔領域の色の平均値に基づき判断工程を実行するようにしてもよい。顔色補正が必要となる状況は当該画像に共通して生じるものであるから、個別の顔領域について補正の要否を判断するよりも、複数の顔領域について画像全体として補正を行うか否かを判断する方が良好な結果を得ることができ、処理に要する時間も短縮することができる。
また、この発明の他の態様は、画像データが表す画像内における人の顔に相当する顔領域を特定するための情報として当該画像データに付加された顔情報を取得する顔情報取得手段と、前記顔情報により特定される前記顔領域の色に基づいて顔色補正の要否を判断する判断手段と、前記判断手段の判断結果に応じて、前記画像内の顔領域に対して顔色補正を行う補正手段とを備え、前記判断手段は、前記顔領域の色が、色空間において肌色に対応する領域として予め設定された第1肌色領域に属し、かつ、前記第1肌色領域内に含まれ前記第1肌色領域よりも狭い第2肌色領域に属する場合には前記補正手段に顔色補正を実行させない一方、前記顔領域の色が、色空間において前記第1肌色領域に属し、かつ、前記第2肌色領域に属さない場合には前記補正手段に顔色補正を実行させることを特徴とする画像処理装置である。
このように構成された発明では、上記した画像処理方法の発明と同様に、顔情報から特定される顔領域の色に応じて補正の要否を判断し、必要な顔色補正を行うことができるので、必要な補正処理を漏れなく行い、かつ無用な補正処理が行われることを回避して、補正処理をより効率よく行うとともに良好な画像品質を得ることが可能である。
図1は、本発明にかかる画像処理装置の一実施形態を用いた印刷システムを示す図である。この印刷システムは、デジタルカメラ200の撮影により取得された画像データを、メモリカードM、USB(Universal Serial Bus)ケーブルや無線LAN(Local Area Network)等によって印刷装置100に転送し、印刷装置100で印刷するものである。すなわち、ここではユーザーがデジタルカメラ200で画像を撮影して画像データを生成し、その画像データをそのまま印刷装置100で読み込んで印刷する、いわゆるダイレクト印刷を想定しているが、本発明を適用可能な印刷システムはこれに限定されるものではない。つまり、デジタルカメラ200で生成した画像データをパーソナルコンピューターや携帯電話などに取り込み、パーソナルコンピューターから印刷装置100に画像データを送信して印刷する印刷システムにも本発明を適用することが可能である。さらに、このような印刷装置100を備えるシステムに限定されず、画像データに対して種々の処理を施す画像処理装置全般に対して、本発明を適用可能である。
デジタルカメラ200では、同図に示すように、CPU(Central Processing Unit)201、ROM(Read Only Memory)202、RAM(Random Access Memory)203、CCD(Charge Coupled Device)204、グラフィックプロセッサー(Graphic Processor;GP)205およびインターフェース(Interface;I/F)206がバス207を介して相互に接続され、これらの間で情報の授受が可能となっている。そして、CPU201はROM202に格納されているプログラムに応じて各種演算処理を実行しながらデジタルカメラ200の制御を行う。このとき一時的に必要となるデータはRAM203に格納される。また、CCD204は、光学系208によって集光された被写体からの光学像を電気信号に変換して出力する。この光学系208は、複数のレンズおよびアクチュエータによって構成されており、アクチュエータによってフォーカス等を調整しながら被写体の光学像を複数のレンズによってCCD204の受光面に結像する。さらに、GP205は、CPU201から供給される表示命令に基づいて表示用の画像処理を実行し、得られた表示用画像データを液晶ディスプレイ(Liquid Crystal Display;LCD)209に供給して表示させる。
I/F206はデジタルカメラ200の入出力機能を提供するものであり、操作ボタン210、ジャイロセンサー211およびカードI/F回路212の間で情報を授受する際に、データの表現形式を適宜変換する装置である。I/F206に接続される操作ボタン210には、電源、モード切替え、シャッターなどのボタンや、各種機能を設定できる入力手段があり、これらによってユーザーはデジタルカメラ200を任意に制御して動作させることが可能となっている。また、ジャイロセンサー211はデジタルカメラ200によって被写体を撮影した際のカメラ本体の角度(水平面に対する角度)を示す信号を生成して出力する。デジタルカメラ200は、上記したカメラ本体の角度を含め、撮影時における種々の情報(例えば、露光、被写体等に関する情報)を生成する。
なお、本実施形態では、デジタルカメラ200は、撮影情報をExif(Exchangeable Image File Format)情報に記載し、画像データに付加した画像ファイルを生成することができる構造となっている。このExif画像ファイルの構造は、基本的には通常のJPEG(Joint Photographic Experts Group)画像形式そのものであり、その中にサムネイル画像や撮影関連データ等のデータをJPEGの規約に準拠した形で埋め込んだものである。
また、カードI/F回路212はカードスロット213に挿入されたメモリカードMとの間で情報を読み書きするためのインタフェースである。さらに、I/F206は図示を省略するUSB、無線LANなどの外部機器との接続機能も有しており、有線または無線にて印刷装置100との間で画像ファイルの授受が可能となっている。なお、デジタルカメラ200で作成され、印刷装置100に与えられる画像ファイル(画像データ+Exif情報)については、後で詳述する。
印刷装置100はデジタルカメラ200で撮像された画像を印刷する装置であり、次のように構成されている。印刷装置100では、CPU101、ROM102、RAM103、EEPROM(Electrically Erasable and Programmable ROM)104、GP105およびI/F106がバス107を介して相互に接続され、これらの間で情報の授受が可能となっている。CPU101はROM102およびEEPROM104に格納されているプログラムに応じて各種演算処理を実行するとともに印刷装置100の各部を制御する。また、CPU101が実行対象とするプログラムやデータについてはRAM103に一時的に格納される一方、印刷装置の電源が切断された後も保持しておくデータ等についてはEEPROM104に格納される。さらに、CPU101は必要に応じてGP105に対して表示命令を与え、この表示命令に応じてGP105が表示用の画像処理を実行し、その処理結果をLCD108に供給して表示させる。
I/F106は、操作ボタン109、カードI/F回路110およびプリンターエンジンコントローラー111の間で情報を授受する際に、データの表現形式を適宜変換する装置である。印刷装置100では、操作ボタン109は印刷装置100のメニュー選択等を行う時に押されるように構成されている。また、カードI/F回路110は、カードスロット112と接続されており、このカードスロット112に挿入されたメモリカードMからデジタルカメラ200によって生成された画像ファイルを読み出す。なお、I/F106は、図示を省略するUSB、無線LANなどの外部機器との接続機能も有しており、有線通信または無線通信にてデジタルカメラ200との間で画像ファイルの授受が可能となっている。
そして、印刷装置100は、メモリカードMを介して、あるいはデータ通信により画像データを受け取ると、CPU101により種々の処理を行うとともにプリンターエンジンコントローラー111によりプリンターエンジン113を制御し、これによって画像データに対応する画像を印刷する。以下、図2ないし図4に基づき画像ファイルの構成を説明した上で、本実施形態における画像処理動作および印刷動作について詳述する。
図2は上記のように構成されたデジタルカメラで作成される画像ファイルの一例を示す図である。また、図3は図2の部分拡大図、図4は顔認識処理により認識された顔の一例を示す図である。この実施形態では、デジタルカメラ200はCCD204で撮像された画像データをRAM203に格納する。また、デジタルカメラ200は、被写体に人物が含まれているときには顔認識処理を行う(なお、顔認識方式については従来より数多く提案されており、それらのうちいずれの方式を採用してもよい)。なお、本実施形態では、顔認識結果は、図4に示すような座標情報が顔位置の情報、つまり顔情報として表現される。すなわち、同図に示すように、画像データは所定の画像幅(Width)と画像高さ(Height)の画素で構成されており、Xが横軸、Yが縦軸を表しており、左上が原点(0,0)である。そして、画像データから顔が検出されると、その顔領域FRを左上(LT)、左下(LB)、右上(RT)、右下(RB)の4点の座標で囲まれる領域で表し、顔領域FRを示す座標、つまり顔座標(顔位置)を、認識した顔の個数(つまり顔個数)NcとともにRAM203に格納する。本明細書では、後で説明するように、印刷装置100においてもデジタルカメラ200での顔認識と同様に顔認識を行って顔座標を求めるため、デジタルカメラ200での顔認識により得られる顔座標を「カメラ顔座標」と称し、左上(LTc)、左下(LBc)、右上(RBc)、右下(RBc)で示す。また、顔認識処理により複数個の顔が検出される場合もあるため、図3では、第n番目のカメラ顔座標を左上(LTnc)、左下(LBnc)、右上(RTnc)、右下(RBnc)で示す。
また、この実施形態では、上記のように画像データ、顔個数および顔座標などをRAM203に格納しているが、その記録方式としてディジタルスチルカメラ用画像ファイルフォーマット規格Exif Ver.2.2.1を使用している。このExif画像ファイルの構造は、基本的には通常のJPEG(Joint Photographic Experts Group)画像形式そのものであり、その中にサムネイル画像や撮影関連データ等のデータをJPEGの規約に準拠した形で埋め込んだものである。
本実施形態で使用する画像ファイルは、図2の左側部分に示すように、最初にSOI(Start of image)301がある。その後に、APP1(アプリケーション・マーカーセグメント)302、DQT(Define Quantization Table)303、DHT(Define Huffman Table)304の順となっている。さらにその後に、SOF(Start of Frame)305、SOS(Start of Stream)マーカー306、圧縮データ(Compress Data)307の順となっている。最後にEOI(End of Image)308がある。これらのうちAPP1はアプリケーションプログラムで使用するためのデータ領域として図2の中央部分に示す構造を有している。APP1の構造は、先頭にAPP1 Marker領域302aがある。そして、その次にLength領域302bがある。
Length領域302bに続くデータの最初の6バイトの領域302cでは、識別子としてASCII文字の“Exif"が、その次に2バイトの0x00が続く。そこからTIFF(Tagged Image File Format)形式でデータが格納されている。TIFF形式の最初の8バイトはTIFFヘッダー(Header)領域302dである。
また、TIFFヘッダー領域302dの次の0th IFD(IFD of main image)領域302eに、同図の右側部分に示すように、画像幅、画像高さ等の画像関連情報(あるいは、単に画像情報とも呼ぶ)が格納される。そして、0th IFDの次に0th IFD Value領域302fがある。さらに、その次にExif IFD領域302gが設けられ、露出時間、Fナンバー、撮影シーンタイプなどの撮影関連情報(あるいは、単に撮影情報とも呼ぶ)が格納される。また、Exif IFD領域302gにExif IFD Value領域302hがある。なお、現在のところ、顔認識処理が実行されたか否かや、それにより検出される顔個数NcとNc個の顔座標をExifタグに書き込む規格は規定されていないが、本実施形態では、デジタルカメラ200側で顔認識処理が実行されたか否かを示す顔検出実施状況、顔個数NcなどがExif IFD領域302gに書き込まれ、Nc個の顔座標がExif IFD Value領域302hに書き込まれるとともに該書込位置をポイントする情報がExif IFD領域302gに書き込まれると仮定して説明を続ける。もちろん、これらの情報をメーカーに依存する領域に書き込むように構成してもよい。このように、顔位置(顔座標)の情報である顔情報はExif情報に記載され、画像データに添付されている。
次に、上記のようなデータ構造(図2)を有する画像ファイルがメモリカードMに保存されており、そのメモリカードMから画像ファイルを読み出し、印刷装置100により画像ファイルに含まれる各種情報に基づき所定の画像処理を実行して印刷する動作の2つの実施形態について順に説明する。
図5は図1の印刷装置で実行される画像処理および印刷動作を示すフローチャートである。ユーザーが印刷装置100のカードスロット112にメモリカードMを挿入し、操作ボタン109を操作して印刷指令を与えると、CPU101がROM102に格納されているプログラムにしたがって装置各部を制御して以下の画像処理および印刷動作を実行する。
まず、CPU101は、印刷の対象となる画像ファイルをメモリカードMから取得し、ハフマン解凍処理を実行し、量子化DCT(Discrete Cosine Transform)係数を得る(ステップS10)。より具体的には、CPU101は、メモリカードMから取得した画像ファイルからエントロピー符号化テーブルを取得し、圧縮データに含まれているY(輝度)成分、Cr(色差成分)、および、Cb(色差成分)のそれぞれのブロックのDC係数と、AC係数とを復号する。なお、この際、最小符号化単位であるMCU(Minimum Coded Unit)単位で復号を行う。
また、CPU101は、ステップS10において得られた量子化DCT係数を逆量子化する(ステップS11)。具体的には、CPU101は、画像ファイルから量子化テーブルを取得し、ステップS10において得られた量子化DCT係数に乗じることにより(逆量子化することにより)、DCT係数を得る。
次に、CPU101は、画像を回転させるために必要な情報(ローテート情報)を、例えばRAM103にキャッシュする(ステップS12)。具体的には、JPEG方式によって圧縮された画像を回転させる場合、MCUのDC成分(直流成分)とAC成分(交流成分)のそれぞれを一度ハフマン展開しなければならない。ここで、DC成分については隣接するDC成分値の差分をハフマン符号化することから、隣接するMCUとの相関関係が問題となる。また、AC成分ではハフマン符号化処理によりそのデータ長が各MCUで一定にならず、JPEGデータのビットストリーム中のどのデータが求めるMCUのAC成分値であるかが不明となることが問題となる。そこで、ステップS12では、各MCUのDC成分値とAC成分のアドレスを求めてキャッシュしておくことにより、ローテート処理を可能とする。
そして、CPU101はステップS11で得られたDCT係数に対して逆DCT演算を施すことによりもとの画素値を得る(ステップS13)。また、CPU101は、ステップS13の処理によって得られたYCC空間の画像をRGB(Red Green Blue)空間の画像と、HSB(Hue Saturation Brightness)空間の画像に変換する(ステップS14)。
そして、CPU101はステップS13およびステップS14の処理において得られたYCC,RGB,HSBのそれぞれの画像をRAM103に格納して保持する。なお、このとき、データ量を削減するために画素を所定の割合で間引きし画像を縮小した後にRAM103に格納してもよい(ステップS15)。ここでは、元の画像サイズに関わらず、QVGA(Quarter Video Graphics Array)サイズに相当する(320×240)ピクセルの画像に正規化するものとする。
また、CPU101は、ステップS15においてRAM103に格納されたYCC,RGB,HSBそれぞれの画像の成分について、ヒストグラムを計算する(ステップS16)。具体的には、RGB画像については、R,G,Bそれぞれの画像についてヒストグラムを計算する。その結果、画像を構成する各成分の分布を得る。
上記したように、本実施形態では、ステップS10〜16の処理はMCU単位で行われており、CPU101は、全てのMCUについての処理が終了したことを確認するまで、ステップS10に戻って処理を繰り返して実行する。一方、全てのMCUについての処理が終了した場合には、次のステップS17に進み、顔認識処理の主要部に相当する処理を実行する。
ステップS17では、メモリカードMから取得した画像ファイルのExifタグからカメラ側での顔認識処理に関する情報を読み出す(ステップS17)。具体的には、顔検出状況を読み出してカメラ側で顔認識処理が実施されたかどうかを判断し(ステップS18)、未実施(ステップS18においてNO)の場合は後述する顔認識処理を印刷装置100側で実施する(ステップS30)。カメラ200側で顔認識処理が実施済みである場合には(ステップS18においてYES)、さらにExifタグから把握されるカメラ側での顔検出個数Ncが0より大きな値であるかどうかを判断する(ステップS19)。顔検出個数Ncが0であるとき(ステップS19においてNO)、カメラ側で顔認識処理は実施されたが顔領域が検出されなかったことを意味する。したがってこの場合も印刷装置100側で改めて顔認識処理(ステップS30)を実施する。
一方、ステップS19においてYES、つまりカメラ側での顔認識処理において少なくとも1つの顔領域(カメラ顔領域)が検出されている場合には、それらの顔領域を表す顔座標をQVGAサイズに正規化し、320×240ドットに縮小された画像内での座標に変換する(ステップS20)。そして、該座標で特定されるQVGAサイズ画像内の各顔領域の色の平均値、すなわち平均顔色を当該領域に対応する画像データに基づいて算出する(ステップS21)。
こうして求めた平均顔色に基づき、この実施形態では、顔色補正処理の要否判定を行う。この顔色補正処理は、例えば撮像時の逆光や露出不足に起因して画像に含まれる人の顔色が不自然に暗く写っている場合などに、これをより自然な顔色に補正するための処理である。このような補正処理はデジタルカメラなどの撮像装置または画像加工装置で実施されることも考えられ、そのような場合に印刷装置側で重複して補正を行ってしまうと却って不自然な結果となってしまう。したがって、カメラ側で補正済みの場合には印刷装置100側では補正を行わないようにする必要がある。
画像ファイルから取得したExifタグ情報で顔認識処理が実施済みであることが把握された場合にこのことが問題となる。そこで、この実施形態では、カメラ側で顔認識処理が実施され、しかもその結果として顔領域が少なくとも1つ検出されている場合には、当該顔領域の色に応じて顔色補正の要否を判断する。具体的には以下のようにする。
図6は顔領域の色に基づく顔色補正の要否判断の原理を示す図である。図6(a)に示すように、カメラ顔座標により四隅を特定される顔領域FRは、肌以外に例えば目や髪、影の部分を含み得るため、その全体が均一な肌色をしているというわけではない。そこで、顔領域FRを多数のブロック、例えば画素単位に細分化し、各ブロックごとにその色を画像データに基づいて算出し、全ブロックのうち「肌色」に属すると言えるブロックが占める比率が所定の閾値以上である場合に、当該顔領域を「肌色」であると言うことができる。そして、前記した平均顔色については、顔領域が1つだけである場合には、当該顔領域内の各ブロックの色を平均した色、または、当該顔領域内の各ブロックのうち肌色に属するブロックの色を平均した色とすることができる。また、顔領域が複数の場合には、各顔領域に含まれる全ブロックの色を平均した色、または、各顔領域内の各ブロックのうち肌色に属するブロックの色のみを抽出して平均した色とすることができる。
次に、こうして求めた平均顔色に基づいて、顔色補正の要否が判断される。図6(b)に示すように、平均顔色の色合いとその明るさとの組み合わせによって、顔色補正が必要か不要かが判断される。より具体的には、平均顔色がその色合いにおいて所定の「肌色」範囲にあり、かつその明るさが所定の「適正明るさ」範囲である、斜線を付した領域R1に属するとき、顔色補正が不要であると判断する。前記したように、顔色補正処理は、例えば撮像時の逆光や露出不足による不自然な顔色をより自然な顔色に補正するための処理である。したがって、顔領域が肌色でしかも既に適正な明るさであればさらなる補正は不要である。これにより、カメラ側での補正に重複して印刷装置側でも補正がなされることが回避される。
また、顔領域の平均顔色が、その色合いは「肌色」範囲にあるが明るさが「適正明るさ」範囲外である、ドットによるハッチングを付した領域R2に属するとき、顔色補正が必要であると判断される。さらに、そもそも色合いが「肌色」でない無地の領域R3に平均顔色が属する場合には、カメラ顔座標が顔の位置を正しく表していない可能性が高い。このような状況が生じるケースとしては、カメラでの顔認識処理が主としてフォーカスや露出調整などの撮影条件の調整に使われることから、該調整から撮影までの間にカメラまたは被写体が動いてしまったケースが考えられる。したがってこのような場合には、顔認識処理自体を印刷装置100側で改めて実行する。
ここで、色を定量的に表す表現方法としては種々のものが知られており、この実施形態における色判定も任意の色表現の下で行うことができるが、ここでは人間の色覚と関連付けて肌色を指定しやすいHSB色空間で判定を行う場合について説明する。
図7はHSB色空間による色表現の例を模式的に示す図である。図7(a)に示すように、H(Hue angle;色相)、S(Saturation;彩度)、B(Brightness;明度)の3種のパラメータで表されるHSB色空間では、H値において0°が赤色、60°が黄色に対応している。肌色に対応する色相は赤色と黄色との中間であり、例えば図7(b)に示すように、0°より大きく60°より小さい2つのH値H1およびH2(>H1)を予め定めておき、値H1およびH2をそれぞれ下限および上限とする角度範囲RH内の色相を「肌色」であるとすることができる。図7(b)の例では、HSB色空間においてドットによるハッチングを付した空間領域Z1内に属する色を「肌色」であるとみなす。
さらに、色の明るさを示す明度B値によって、「適正明るさ範囲」を指定する。すなわち、明るさが顔色として適正とみなせる明度の下限値B1および上限値B2(>B1)を設定し、前記した肌色に対応する空間領域Z1内で明度B値がこの範囲にある斜線で示す空間領域Z2内に属する色を、適正な明るさを有する肌色とすることができる。そして、平均顔色がHSB色空間において空間領域Z2に属する場合には顔色補正不要、空間領域Z1に属するが空間領域Z2に属さない場合には顔色補正不要、空間領域Z1にも属さない場合には顔認識処理が必要であると判断する。
また、図7(c)に斜線で示す領域Z3のように、H値、S値、B値の三者の組み合わせによって「肌色」および「明るさ」を定義してもよい。すなわち、平均顔色のH値、S値、B値の組み合わせが所定の条件を満たす色空間内の領域Z3に属するとき、平均顔色が補正不要な「適正な肌色」であると判断するようにしてもよい。肌色とみなす範囲および明るさが適正とみなす範囲については適宜定めることができる。他の色表現法を用いた場合においても同様にすることができる。
図5のフローチャートに即して説明すると、ステップS22において平均顔色の色合いが肌色であるか否かが判断され、肌色であるとき、さらにステップS23において適正な明るさを有しているか否かが判断される。これにより、顔色補正の要否が判断される。平均顔色が肌色かつ適正明るさ範囲内であれば(ステップS22、S23においてともにYES)、顔色補正が不要であるとして、後工程でのエンハンス処理を行わないこととする(ステップS24)。また、平均顔色が肌色であるが適正明るさ範囲内でなかった場合には(ステップS22においてYESかつステップS23においてNO)、顔色補正が必要であるとして、ステップS42に進む。平均顔色が肌色でなければ(ステップS22においてNO)、次の顔検出工程(ステップS30)に進む。
ステップS30では、QVGAサイズに縮小保持した画像データを用いて、当該画像内から所定の条件を満たす顔領域の検出を行う。画像から顔とみなせる領域を検出する技術としては種々のものが公知であり、ここでの顔検出にも任意の技術を適用することができるので、ここでは詳しい説明を省略する。画像内で顔領域が検出されると、当該顔領域の4つの頂点座標を例えばRAM103に設けた顔登録リストに登録する。
こうして、印刷装置100による顔検出が行われると、次のステップS40では、CPU101は顔登録リストに顔情報が登録されている否かを判別する。そして、顔情報が登録されている場合(ステップS40で「YES」)には、CPU101は、顔登録リストに登録された顔情報に基づいて全ての顔位置を計算し、さらに顔の平均顔色を取得した(ステップS41)後、顔色が最適になるようにエンハンスパラメータを計算する(ステップS42)。なお、エンハンスパラメータ計算の詳細については省略するが、RAM103に記憶したRGBヒストグラムに基づきコントラスト、明度、彩度、シャープネスなどの各画質パラメータの特徴量を抽出し、抽出した特徴量が所定の画質パラメータの特徴量に近づくようエンハンスのパラメータを設定する。
また、ステップS23においてNOと判断された場合、つまり、カメラ側で検出された顔領域の平均顔色が肌色であるが適正明るさでない場合にもステップS42を実行する。これは、ステップS21において顔領域の平均顔色が既に算出されており、ステップS41を実行する必要がないからである。
こうしてステップS42が実行されることにより、デジタルカメラ200で検出された顔領域、もしくは印刷装置100で検出された顔領域に対して、必要なエンハンスパラメータが算出される。このステップS42は、カメラ側で検出された顔領域が印刷装置100側で補正不要と判断された場合にはスキップされる。
一方、顔登録リストに顔情報が登録されていない場合(ステップS40で「NO」)、つまり当該画像内で人の顔が検出されなかった場合には、CPU101は画像全体が最適になるようにエンハンスパラメータを計算する(ステップS43)。
続いて、CPU101は、印刷対象となる画像ファイルにおいて、解凍処理の対象となる位置を示すファイルポインタをリセットし(ステップS44)、処理位置を画像ファイルの先頭に復元する。そして、CPU101は、以下のステップS45〜S52を繰り返して画像データに基づいて画像を印刷する。
CPU101は、RAM103にキャッシュされた1MCUライン分の画像データにハフマン解凍処理を施し、量子化DCT係数を得る(ステップS45)。ここで、1MCUラインとは、画像を回転させる場合には、画像を構成する列方向に1列のMCU群をいい、回転させない場合には、画像を構成する行方向に1列のMCU群をいう。そして、CPU101は、ステップS45の処理において得られた量子化DCT係数を逆量子化し(ステップS46)、さらにステップS45で得られたDCT係数に対して逆DCT演算を施すことによりもとのデータを得る(ステップS47)。
こうして得られたYCC空間の画像を、CPU101はRGB空間の画像に変換する(ステップS48)。そして、CPU101は、RGB空間の画像を構成する各画素に対してステップS42またはS43において算出したエンハンスパラメータを適用することにより、印刷される画像を最適な色合いに補正し(ステップS49)、次のステップS50に進む。補正不要と判断されている場合にはエンハンスパラメータが設定されておらず当然に補正は行われない。
CPU101は、こうして必要に応じ補正された画像データに対して、リサイズ、回転などのレイアウト処理を施し(ステップS50)、プリンターエンジンコントローラー111の図示せぬバンドバッファに供給する。これを受けたプリンターエンジンコントローラー111は、プリンターエンジン113の各部を制御して画像データに対応する画像を印刷する(ステップS51)。そして、印刷処理が完了すると、CPU101はRAM103のキャッシュ状態を更新する(ステップS52)。そして、全MCUライン分について上記ステップS45〜S52が完了すると、一連の処理を終了する。
以上のように、本実施形態によれば、デジタルカメラ200で顔認識処理が行われた場合には、その旨を示す情報がExif画像ファイルのタグ情報として記録される。そして、印刷装置100では、画像ファイルに付されたタグ情報からカメラ側で顔検出が行われたか否かを判断し、顔検出が行われていた場合には、カメラ側で検出された顔領域の色に基づいて顔色補正の要否を判断する。具体的には、顔領域の色が適正な明るさの肌色である場合には顔色補正を行わず、肌色であるが明るさが適正範囲にないときには顔色補正を実行する。こうすることで、カメラ側で顔色補正が実行された画像に対し二重に補正を実行してしまうことが回避され、二重の補正に起因する画像の仕上がりの不自然さや不必要な処理が実行される無駄を解消して、効率よくしかも画像品質の良好な補正処理を行うことができる。
さらに、カメラ側で顔検出が実施されていない、または、顔領域とされた領域が肌色でなかった場合には、印刷装置100側で顔検出を行い、顔領域が検出された場合には必要な顔色補正処理を実行する。こうすることで、カメラ側で顔検出がなされていない、もしくは顔領域が正しく特定されていなかった場合であっても、画像に対し適切な顔色補正を施すことができる。
以上説明したように、上記実施形態の印刷システムにおいては、印刷装置100が本発明の「画像処理装置」として機能しており、CPU101が所定の制御プログラムを実行することにより、本発明の「判断手段」および「補正手段」としての機能を果たしている。また、この実施形態の画像処理動作(図5)においては、ステップS17が本発明の「顔情報取得工程」に相当し、ステップS18〜S23が本発明の「判断工程」に相当している。また、ステップS42、S43、S49が本発明の「補正工程」に相当し、ステップS30が本発明の「顔認識処理工程」に相当している。
また、本実施形態では、図6(b)における領域R1および図7(b)における空間領域Z1が本発明の「第1肌色領域」に相当している一方、図6(b)における領域R2、図7(b)における空間領域Z2および図7(c)における空間領域Z3が、本発明の「第2肌色領域」に相当している。
なお、本発明は上記した実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて上述したもの以外に種々の変更を行うことが可能である。例えば、上記実施形態では、画像データに方向座標などを付加した画像ファイルをメモリカードMに記録し、当該メモリカードMを介して印刷装置100に供給して印刷しているが、有線または無線通信により画像ファイルが印刷装置100に供給される場合も、本発明を適用することで上記した実施形態と同様の作用効果が得られる。
また、上記実施形態では、顔領域の色を定量的に表し肌色か否かを判定するのにHSB色空間内の座標位置を用いているが、別の色表現法、例えばxy色度図上における座標位置やLab色空間内の座標位置によって色を表現し、それらの平面または空間において肌色を定義し色判定を行うようにしてもよい。
また、上記実施形態の印刷装置100では、画像ファイルに含まれたExifタグ情報のうちカメラ側での顔検出実施状況を示す情報に基づいて、印刷装置側での顔色補正や顔検出の要否を判断している。しかしながら、本発明を実施するに際して画像ファイルにカメラ側での顔検出実施状況を示す情報が含まれていることは必須ではなく、このような情報がなくても、例えば画像ファイルに有効なカメラ顔情報があるか否かで顔色補正や顔検出の要否を判断するようにしてもよい。また、画像ファイルはカメラで作成されたものに限定されず、例えばカメラで撮像された画像をパーソナルコンピューター等で編集してなる画像ファイルであってもよい。
また、上記実施形態では、本発明にかかる画像処理装置および方法を印刷装置100に適用しているが、複数の電子機器から構成される印刷システムにも、また印刷装置以外の1つの電子機器(例えば複合機、ファクシミリ装置など)にも適用可能である。
また、上記実施形態にかかる画像処理方法を実行する制御プログラムを、CD−ROM、光ディスク、光磁気ディスク、不揮発性メモリカードなどの記憶媒体に記憶させ、この記憶媒体からプログラムをコードとして読み出し、コンピューターにおいて実行してもよい。つまり、上記プログラムを記憶した記憶媒体、制御プログラム自体も本発明の一実施形態に含まれる。例えば、デジタルカメラで撮像された画像をパーソナルコンピューターもしくはワークステーション上で編集処理するためのアプリケーションソフトウェアにも、本発明を適用することが可能である。
100…印刷装置(画像処理装置)、 101…CPU(判断手段、補正手段)、 102…ROM、 103…RAM、 104…EEPROM、 106…インターフェース(顔情報取得手段)、 200…デジタルカメラ、 M…メモリカード
Claims (8)
- 画像データが表す画像内における人の顔に相当する顔領域を特定するための情報として当該画像データに付加された顔情報を取得する顔情報取得工程と、
前記顔情報により特定される前記顔領域の色に基づいて顔色補正の要否を判断する判断工程と、
前記判断工程の結果に応じて、前記画像内の顔領域に対して顔色補正を行う補正工程と
を備え、
前記判断工程では、
前記顔領域の色が、色空間において肌色に対応する領域として予め設定された第1肌色領域に属し、かつ、前記第1肌色領域内に含まれ前記第1肌色領域よりも狭い第2肌色領域に属する場合には前記補正工程を不要と判断する一方、
前記顔領域の色が、色空間において前記第1肌色領域に属し、かつ、前記第2肌色領域に属さない場合には前記補正工程を必要と判断する
ことを特徴とする画像処理方法。 - 色空間のうち色相が予め定められた肌色範囲内である領域を前記第1肌色領域とする一方、前記第1肌色領域のうち明度が予め定められた適正範囲内にある領域を前記第2肌色領域とする請求項1に記載の画像処理方法。
- 前記判断工程において前記顔領域の色が前記第1肌色領域外であったときには、人の顔に対応する所定の適合条件に適合する領域を前記画像内で検索し、該領域を顔領域として認識する顔認識処理工程を実行する請求項1または2に記載の画像処理方法。
- 前記画像データに前記顔情報が付加されていないときには、人の顔に対応する所定の適合条件に適合する領域を前記画像内で検索し、該領域を顔領域として認識する顔認識処理工程を実行する請求項1ないし3のいずれかに記載の画像処理方法。
- 前記顔認識処理工程において少なくとも一つの顔領域が認識されると、前記補正工程を実行する請求項3または4に記載の画像処理方法。
- 前記顔情報により特定される前記顔領域が前記画像内に複数あるとき、該複数の顔領域の色の平均値に基づき前記判断工程を実行する請求項1ないし5のいずれかに記載の画像処理方法。
- 画像データが表す画像内における人の顔に相当する顔領域を特定するための情報として当該画像データに付加された顔情報を取得する顔情報取得工程と、
前記顔情報により特定される前記顔領域の色に基づいて顔色補正の要否を判断する判断工程と、
前記判断工程の結果に応じて、前記画像内の顔領域に対して顔色補正を行う補正工程と
をコンピューターに実行させるとともに、
前記判断工程では、
前記顔領域の色が、色空間において肌色に対応する領域として予め設定された第1肌色領域に属し、かつ、前記第1肌色領域内に含まれ前記第1肌色領域よりも狭い第2肌色領域に属する場合には前記補正工程を不要と前記コンピュータに判断させる一方、
前記顔領域の色が、色空間において前記第1肌色領域に属し、かつ、前記第2肌色領域に属さない場合には前記補正工程を必要と前記コンピュータに判断させる
ことを特徴とする制御プログラム。 - 画像データが表す画像内における人の顔に相当する顔領域を特定するための情報として当該画像データに付加された顔情報を取得する顔情報取得手段と、
前記顔情報により特定される前記顔領域の色に基づいて顔色補正の要否を判断する判断手段と、
前記判断手段の判断結果に応じて、前記画像内の顔領域に対して顔色補正を行う補正手段と
を備え、
前記判断手段は、
前記顔領域の色が、色空間において肌色に対応する領域として予め設定された第1肌色領域に属し、かつ、前記第1肌色領域内に含まれ前記第1肌色領域よりも狭い第2肌色領域に属する場合には前記補正手段に顔色補正を実行させない一方、
前記顔領域の色が、色空間において前記第1肌色領域に属し、かつ、前記第2肌色領域に属さない場合には前記補正手段に顔色補正を実行させる
ことを特徴とする画像処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011036804A JP2012175500A (ja) | 2011-02-23 | 2011-02-23 | 画像処理方法、制御プログラムおよび画像処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011036804A JP2012175500A (ja) | 2011-02-23 | 2011-02-23 | 画像処理方法、制御プログラムおよび画像処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012175500A true JP2012175500A (ja) | 2012-09-10 |
Family
ID=46977951
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011036804A Withdrawn JP2012175500A (ja) | 2011-02-23 | 2011-02-23 | 画像処理方法、制御プログラムおよび画像処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2012175500A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017037615A (ja) * | 2015-08-13 | 2017-02-16 | 辰巳電子工業株式会社 | 遊戯用撮影装置、画像処理方法およびプログラム |
JP2018037041A (ja) * | 2016-09-02 | 2018-03-08 | 富士通株式会社 | 生体画像処理装置、生体画像処理方法、および生体画像処理プログラム |
CN111275725A (zh) * | 2020-03-18 | 2020-06-12 | 展讯通信(上海)有限公司 | 图像的色温与色调的确定方法及装置、存储介质、终端 |
-
2011
- 2011-02-23 JP JP2011036804A patent/JP2012175500A/ja not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017037615A (ja) * | 2015-08-13 | 2017-02-16 | 辰巳電子工業株式会社 | 遊戯用撮影装置、画像処理方法およびプログラム |
JP2018037041A (ja) * | 2016-09-02 | 2018-03-08 | 富士通株式会社 | 生体画像処理装置、生体画像処理方法、および生体画像処理プログラム |
CN111275725A (zh) * | 2020-03-18 | 2020-06-12 | 展讯通信(上海)有限公司 | 图像的色温与色调的确定方法及装置、存储介质、终端 |
CN111275725B (zh) * | 2020-03-18 | 2022-08-19 | 展讯通信(上海)有限公司 | 图像的色温与色调的确定方法及装置、存储介质、终端 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6987535B1 (en) | Image processing apparatus, image processing method, and storage medium | |
JP4487775B2 (ja) | 複数の画像データのパノラマ合成処理 | |
JP5886265B2 (ja) | 携帯端末装置、プログラム、及び記録媒体 | |
US20040041920A1 (en) | Image forming method, image processing apparatus, and image recording apparatus | |
JP2015076782A (ja) | 画像処理装置、その制御方法、および制御プログラム | |
JP2009027385A (ja) | 画像処理装置とその方法およびコンピュータプログラム | |
JP2012175500A (ja) | 画像処理方法、制御プログラムおよび画像処理装置 | |
JP5609555B2 (ja) | 画像処理装置、プログラムおよび画像処理方法 | |
JP2008061209A (ja) | 画像処理方法 | |
JP5830851B2 (ja) | 画像処理装置、画像処理プログラムおよび画像処理方法 | |
JP2001292449A (ja) | 画像処理装置、画像処理方法、及び記録媒体 | |
WO2022151054A1 (zh) | 图像处理方法及装置、存储介质 | |
US7609425B2 (en) | Image data processing apparatus, method, storage medium and program | |
JP5644578B2 (ja) | 画像処理装置、画像処理方法および画像処理のためのコンピュータープログラム | |
JP2006279460A (ja) | 画像処理装置、印刷装置、画像処理方法、および、画像処理プログラム | |
JP5500048B2 (ja) | 画像処理方法および画像処理装置 | |
JP4040528B2 (ja) | 画像処理装置、画像処理方法、画像処理プログラム、画像処理プログラムを記録した記録媒体、および画像処理装置を備えた画像形成装置 | |
JP2012146164A (ja) | 画像処理方法、制御プログラムおよび画像処理装置 | |
JP4235592B2 (ja) | 画像処理方法および画像処理装置 | |
JP5625832B2 (ja) | 画像処理装置および画像処理方法 | |
JP2004328534A (ja) | 画像形成方法、画像処理装置及び画像記録装置 | |
JP5195317B2 (ja) | カメラ装置、及び撮影方法、撮影制御プログラム | |
JP2012099897A (ja) | 画像処理方法および画像処理装置 | |
JP2008060623A (ja) | 電子カメラ | |
JP2012118896A (ja) | 画像処理方法、制御プログラムおよび画像処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20140513 |