(57)【要約】【課題】画像データから人の顔に相当する領域を検出する顔認識処理を行う画像処理方法および装置において、ユーザーの属性や嗜好に即した顔認識技術を提供する。【解決手段】ユーザーインターフェース用の言語を設定する言語設定工程と、言語設定工程において設定された設定言語に基づいて顔認識処理に用いる認識パラメータの値を設定するパラメータ設定工程と、パラメータ設定工程において設定された認識パラメータに基づいて顔認識処理を実行する顔認識処理工程と、を備える。【選択図】図２
2012108763.tif 000002
【特許請求の範囲】
【請求項１】
画像データから人の顔に相当する領域を検出する顔認識処理を実行する画像処理方法において、
ユーザーインターフェース用の言語を設定する言語設定工程と、
前記言語設定工程において設定された設定言語に基づいて、前記顔認識処理に用いる認識パラメータの値を設定するパラメータ設定工程と、
前記パラメータ設定工程において設定された前記認識パラメータに基づいて、前記顔認識処理を実行する顔認識処理工程と
を備えることを特徴とする画像処理方法。
【請求項２】
前記パラメータ設定工程では、前記画像データ内で検索する顔のサイズである検索サイズに関する前記認識パラメータの値を、前記設定言語が日本語であるときと前記設定言語が日本語以外であるときとで異ならせ、しかも、前記設定言語が日本語であるときには前記設定言語が日本語以外であるときよりも前記検索サイズを小さくする請求項１に記載の画像処理方法。
【請求項３】
前記パラメータ設定工程では、前記画像データから検出すべき顔の数に関する前記認識パラメータの値を、前記設定言語が日本語であるときと前記設定言語が日本語以外であるときとで異ならせ、しかも、前記設定言語が日本語であるときには前記設定言語が日本語以外であるときよりも検出すべき顔の数を多くする請求項１または２に記載の画像処理方法。
【請求項４】
前記言語設定工程では、ユーザーからの前記ユーザーインターフェース用の言語についての設定入力を受け付けて、該設定入力に応じて前記設定言語を設定する請求項１ないし３のいずれかに記載の画像処理方法。
【請求項５】
前記顔認識処理工程における処理結果に応じた態様で、前記画像データを補正する補正工程を備える請求項１ないし４のいずれかに記載の画像処理方法。
【請求項６】
ユーザーインターフェース用の言語設定を受け付ける受付手段と、
画像データから人の顔に相当する領域を検出する顔認識処理を実行する処理手段と
を備え、
前記処理手段は、前記言語設定において設定される設定言語に応じて、前記顔認識処理に用いる認識パラメータの値を異ならせる
ことを特徴とする画像処理装置。
【請求項７】
前記設定言語で表記された所定のメッセージを表示する表示手段を備える請求項６に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像処理方法および画像処理装置に関するものであり、特に画像データから人の顔に相当する領域を検出する顔認識技術に関する。
【背景技術】
【０００２】
被写体を撮影して画像データを生成するデジタルカメラや、該画像データを表示または印刷するプリンターなどの出力装置では、画像内に含まれる人の顔に相当する領域を検出する顔認識機能を持つものが実用化されている。例えば、特許文献１に記載の技術においては、デジタルカメラ等で撮影された画像のＥｘｉｆ（Exchangeable Image File Format）ファイルから当該画像が縦長か横長かを判定し、その判定結果に基づき顔認識に用いる認識パラメータを設定する。より具体的には、横長画像では複数の人物が含まれるケースが多いことから顔の検索サイズを小さく、認識する顔の数を多くする一方、縦長画像では被写体が１人であるケースが多いことから顔の検索サイズを大きく、認識数を少なくするように、認識パラメータを設定している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−０９０３９９号公報（例えば、図２）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、本願発明者の調査によれば、一般的に撮影者がどのような構図を好むかについては万国共通というわけではなく、国や地域によって異なる傾向があることがわかってきた。より具体的には、撮影者が人物を含む写真を撮影しようとするとき、被写体人物をどのような配置で画像に収めようとするかについては、撮影者の属性、特に当該撮影者を取り巻く文化的環境の影響が見られる。しかしながら、このような知見をユーザーの利便性向上のために利用した技術や製品はこれまで実用化されるに至っていない。すなわち、従来の技術においては、どのようなユーザーに対しても画一的な顔認識技術が提供されており、顔認識処理の内容および結果は必ずしもそのユーザーの属性に対して好適なものとはなっていない場合があった。
【０００５】
この発明にかかるいくつかの態様は、画像データから人の顔に相当する領域を検出する顔認識処理を行う画像処理方法および装置において、上記課題を解決し、よりユーザーの嗜好に即した顔認識技術を提供するものである。
【課題を解決するための手段】
【０００６】
この発明にかかる画像処理方法の一の態様は、画像データから人の顔に相当する領域を検出する顔認識処理を実行する画像処理方法において、上記課題を解決するため、ユーザーインターフェース用の言語を設定する言語設定工程と、前記言語設定工程において設定された設定言語に基づいて、前記顔認識処理に用いる認識パラメータの値を設定するパラメータ設定工程と、前記パラメータ設定工程において設定された前記認識パラメータに基づいて、前記顔認識処理を実行する顔認識処理工程とを備えることを特徴としている。
【０００７】
また、この発明にかかる画像処理装置の一の態様は、上記課題を解決するため、ユーザーインターフェース用の言語設定を受け付ける受付手段と、画像データから人の顔に相当する領域を検出する顔認識処理を実行する処理手段とを備え、前記処理手段は、前記言語設定において設定される設定言語に応じて、前記顔認識処理に用いる認識パラメータの値を異ならせることを特徴としている。
【０００８】
これらの発明では、ユーザーインターフェース用に設定された設定言語に応じて、顔認識処理における認識パラメータの値を異ならせている。国または地域ごとの文化の違いに対応するために、当該技術を搭載した製品の仕向け地ごとに認識パラメータの設定を変えることも考えられるが、それがユーザーの属性と合致する可能性は必ずしも高くない。これに対して、ユーザーインターフェース用の言語設定における設定内容は、ユーザーの属性により密接に関係するものである。上記発明では、ユーザーインターフェース用の設定言語に応じて設定した認識パラメータを用いて顔認識処理を行うことにより、よりユーザーの属性や嗜好に即した顔認識処理技術を提供することが可能となっている。なお、一般的にはユーザーインターフェース用の言語設定は頻繁に変更されるものではないので、言語設定工程およびパラメータ設定工程については、いったん設定されれば顔認識処理を実行する都度実行される必要はない。
【０００９】
その一例として、本願発明者は、カメラやプリンターなどの画像処理装置の使用実態について日本および世界各国で種々の調査を行い、その結果として次のような知見を得た。すなわち、人物を被写体として写真を撮影するとき、日本では、周りの風景を含みなるべく人物の全身が入るような構図が好まれ、また１枚の写真に多数の人物が写り込んだ集合写真が多くなる傾向がある。このため、１人の人物の顔のサイズは小さくなる一方、より多くの人物を画像に収めることが可能である。一方、日本以外の地域では、人物のみをクローズアップした写真が好まれ、被写体もより少人数となる傾向が強い。このため、１人の人物の顔のサイズは大きくなるが、１つの画像に含まれる人数は少ない。
【００１０】
このことから、例えば、画像データ内で検索する顔のサイズである検索サイズに関する認識パラメータの値を、設定言語が日本語であるときと日本語以外であるときとで異ならせ、設定言語が日本語であるときには他の言語であるときよりも検索サイズを小さくするようにしてもよい。また、例えば、画像データから検出すべき顔の数に関する認識パラメータの値を、設定言語が日本語であるときと日本語以外であるときとで異ならせ、設定言語が日本語であるときには他の言語であるときよりも検出すべき顔の数を多くするようにしてもよい。こうすることにより、日本や他の国・地域のユーザーに対して、それぞれの好みに応じた顔認識処理を提供することが可能となる。
【００１１】
この発明においては、例えば、ユーザーからのユーザーインターフェース用の言語についての設定入力を受け付けて、該設定入力に応じて設定言語を設定するようにしてもよい。このようにユーザー自身により設定された言語に応じて認識パラメータを設定することにより、さらに確実に、その好みに即した顔認識処理技術を各ユーザーに提供することができる。
【００１２】
また、例えば、顔認識処理の処理結果に応じた態様で画像データを補正するようにしてもよい。このようにすることで、ユーザーに対してより利便性に優れた画像処理技術を提供することが可能となる。
【００１３】
また、この発明にかかる画像処理装置においては、例えば、設定言語で表記された所定のメッセージを表示する表示手段を備えるようにしてもよい。このような表示手段を備える装置では、ユーザーに応じた表示言語でメッセージを表示させることができ、しかも当該ユーザーに好適な顔認識処理を提供することが可能である。
【図面の簡単な説明】
【００１４】
【図１】本発明にかかる画像処理装置の一実施形態を用いた印刷システムを示す図。
【図２】図１の印刷装置で実行される画像処理動作を示すフローチャート。
【図３】図１の印刷装置で実行される印刷動作を示すフローチャート。
【図４】印刷装置に表示される設定画面の一例を示す図。
【図５】モード設定処理の一例を示すフローチャート。
【図６】人物を含む写真の構図の典型例を示す図。
【図７】顔認識用のテンプレートを模式的に示す図。
【発明を実施するための形態】
【００１５】
図１は、本発明にかかる画像処理装置の一実施形態を用いた印刷システムを示す図である。この印刷システムは、デジタルカメラ２００の撮影により取得された画像データを、メモリカードＭ、ＵＳＢ（Universal Serial Bus）ケーブルや無線ＬＡＮ（Local Area Network）等によって印刷装置１００に転送し、印刷装置１００で印刷するものである。すなわち、ここではユーザーがデジタルカメラ２００で画像を撮影して画像データを生成し、その画像データをそのまま印刷装置１００で読み込んで印刷する、いわゆるダイレクト印刷を想定しているが、本発明を適用可能な印刷システムはこれに限定されるものではない。つまり、デジタルカメラ２００で生成した画像データをパーソナルコンピューターや携帯電話などに取り込み、パーソナルコンピューターから印刷装置１００に画像データを送信して印刷する印刷システムにも本発明を適用することが可能である。さらに、このような印刷装置１００を備えるシステムに限定されず、画像データに対して種々の処理を施す画像処理装置全般に対して、本発明を適用可能である。
【００１６】
デジタルカメラ２００では、同図に示すように、ＣＰＵ（Central Processing Unit）２０１、ＲＯＭ（Read Only Memory）２０２、ＲＡＭ（Random Access Memory）２０３、ＣＣＤ（Charge Coupled Device）２０４、グラフィックプロセッサー（Graphic Processor；ＧＰ）２０５およびインターフェース（Interface；Ｉ／Ｆ）２０６がバス２０７を介して相互に接続され、これらの間で情報の授受が可能となっている。そして、ＣＰＵ２０１はＲＯＭ２０２に格納されているプログラムに応じて各種演算処理を実行しながらデジタルカメラ２００の制御を行う。このとき一時的に必要となるデータはＲＡＭ２０３に格納される。また、ＣＣＤ２０４は、光学系２０８によって集光された被写体からの光学像を電気信号に変換して出力する。この光学系２０８は、複数のレンズおよびアクチュエータによって構成されており、アクチュエータによってフォーカス等を調整しながら被写体の光学像を複数のレンズによってＣＣＤ２０４の受光面に結像する。さらに、ＧＰ２０５は、ＣＰＵ２０１から供給される表示命令に基づいて表示用の画像処理を実行し、得られた表示用画像データを液晶ディスプレイ（Liquid Crystal Display；ＬＣＤ）２０９に供給して表示させる。
【００１７】
Ｉ／Ｆ２０６はデジタルカメラ２００の入出力機能を提供するものであり、操作ボタン２１０、ジャイロセンサー２１１およびカードＩ／Ｆ回路２１２の間で情報を授受する際に、データの表現形式を適宜変換する装置である。Ｉ／Ｆ２０６に接続される操作ボタン２１０には、電源、モード切替え、シャッターなどのボタンや、各種機能を設定できる入力手段があり、これらによってユーザーはデジタルカメラ２００を任意に制御して動作させることが可能となっている。また、ジャイロセンサー２１１はデジタルカメラ２００によって被写体を撮影した際のカメラ本体の角度（水平面に対する角度）を示す信号を生成して出力する。デジタルカメラ２００は、上記したカメラ本体の角度を含め、撮影時における種々の情報（例えば、露光、被写体等に関する情報）を生成する。
【００１８】
なお、本実施形態では、デジタルカメラ２００は、撮影情報をＥｘｉｆ（Exchangeable Image File Format）情報に記載し、画像データに付加した画像ファイルを生成することができる構造となっている。このＥｘｉｆ画像ファイルの構造は、基本的には通常のＪＰＥＧ（Joint Photographic Experts Group）画像形式そのものであり、その中にサムネイル画像や撮影関連データ等のデータをＪＰＥＧの規約に準拠した形で埋め込んだものである。これらのデータ規格はいずれも公開されたものであるので、ここでは詳しい説明を省略する。
【００１９】
また、カードＩ／Ｆ回路２１２はカードスロット２１３に挿入されたメモリカードＭとの間で情報を読み書きするためのインタフェースである。さらに、Ｉ／Ｆ２０６は図示を省略するＵＳＢ、無線ＬＡＮなどの外部機器との接続機能も有しており、有線または無線にて印刷装置１００との間で画像ファイルの授受が可能となっている。
【００２０】
印刷装置１００はデジタルカメラ２００で撮像された画像を印刷する装置であり、次のように構成されている。印刷装置１００では、ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、ＥＥＰＲＯＭ（Electrically Erasable and Programmable ROM）１０４、ＧＰ１０５およびＩ／Ｆ１０６がバス１０７を介して相互に接続され、これらの間で情報の授受が可能となっている。ＣＰＵ１０１はＲＯＭ１０２およびＥＥＰＲＯＭ１０４に格納されているプログラムに応じて各種演算処理を実行するとともに印刷装置１００の各部を制御する。また、ＣＰＵ１０１が実行対象とするプログラムやデータについてはＲＡＭ１０３に一時的に格納される一方、印刷装置の電源が切断された後も保持しておくデータ等についてはＥＥＰＲＯＭ１０４に格納される。さらに、ＣＰＵ１０１は必要に応じてＧＰ１０５に対して表示命令を与え、この表示命令に応じてＧＰ１０５が表示用の画像処理を実行し、その処理結果をＬＣＤ１０８に供給して表示させる。
【００２１】
Ｉ／Ｆ１０６は、操作ボタン１０９、カードＩ／Ｆ回路１１０およびプリンターエンジンコントローラー１１１の間で情報を授受する際に、データの表現形式を適宜変換する装置である。印刷装置１００では、操作ボタン１０９は印刷装置１００のメニュー選択等を行う時に押されるように構成されている。また、カードＩ／Ｆ回路１１０は、カードスロット１１２と接続されており、このカードスロット１１２に挿入されたメモリカードＭからデジタルカメラ２００によって生成された画像ファイルを読み出す。なお、Ｉ／Ｆ１０６は、図示を省略するＵＳＢ、無線ＬＡＮなどの外部機器との接続機能も有しており、有線通信または無線通信にてデジタルカメラ２００との間で画像ファイルの授受が可能となっている。
【００２２】
そして、印刷装置１００は、メモリカードＭを介して、あるいはデータ通信により画像データを受け取ると、ＣＰＵ１０１により種々の処理を行うとともにプリンターエンジンコントローラー１１１によりプリンターエンジン１１３を制御し、これによって画像データに対応する画像を印刷する。以下、本実施形態における画像処理動作および印刷動作について、図２ないし図７を参照しつつ詳述する。
【００２３】
図２および図３は図１の印刷装置で実行される画像処理および印刷動作を示すフローチャートである。ユーザーが印刷装置１００のカードスロット１１２にメモリカードＭを挿入し、操作ボタン１０９を操作して印刷指令を与えると、ＣＰＵ１０１がＲＯＭ１０２に格納されているプログラムにしたがって装置各部を制御して以下の画像処理および印刷動作を実行する。
【００２４】
まず、ＣＰＵ１０１は、印刷の対象となる画像ファイルをメモリカードＭから取得し、ハフマン解凍処理を実行し、量子化ＤＣＴ（Discrete Cosine Transform）係数を得る（ステップＳ１０）。より具体的には、ＣＰＵ１０１は、メモリカードＭから取得した画像ファイルからエントロピー符号化テーブルを取得し、圧縮データに含まれているＹ（輝度）成分、Ｃｒ（色差成分）、および、Ｃｂ（色差成分）のそれぞれのブロックのＤＣ係数と、ＡＣ係数とを復号する。なお、この際、最小符号化単位であるＭＣＵ（Minimum Coded Unit）単位で復号を行う。
【００２５】
また、ＣＰＵ１０１は、ステップＳ１０において得られた量子化ＤＣＴ係数を逆量子化する（ステップＳ１１）。具体的には、ＣＰＵ１０１は、画像ファイルから量子化テーブルを取得し、ステップＳ１０において得られた量子化ＤＣＴ係数に乗じることにより（逆量子化することにより）、ＤＣＴ係数を得る。
【００２６】
次に、ＣＰＵ１０１は、画像を回転させるために必要な情報（ローテート情報）を、例えばＲＡＭ１０３にキャッシュする（ステップＳ１２）。具体的には、ＪＰＥＧ方式によって圧縮された画像を回転させる場合、ＭＣＵのＤＣ成分（直流成分）とＡＣ成分（交流成分）のそれぞれを一度ハフマン展開しなければならない。ここで、ＤＣ成分については隣接するＤＣ成分値の差分をハフマン符号化することから、隣接するＭＣＵとの相関関係が問題となる。また、ＡＣ成分ではハフマン符号化処理によりそのデータ長が各ＭＣＵで一定にならず、ＪＰＥＧデータのビットストリーム中のどのデータが求めるＭＣＵのＡＣ成分値であるかが不明となることが問題となる。そこで、ステップＳ１２では、各ＭＣＵのＤＣ成分値とＡＣ成分のアドレスを求めてキャッシュしておくことにより、ローテート処理を可能とする。
【００２７】
そして、ＣＰＵ１０１はステップＳ１１で得られたＤＣＴ係数に対して逆ＤＣＴ演算を施すことによりもとの画素値を得る（ステップＳ１３）。また、ＣＰＵ１０１は、ステップＳ１３の処理によって得られたＹＣＣ空間の画像をＲＧＢ（Red Green Blue）空間の画像と、ＨＳＢ（Hue Saturation Brightness）空間の画像に変換する（ステップＳ１４）。
【００２８】
そして、ＣＰＵ１０１はステップＳ１３およびステップＳ１４の処理において得られたＹＣＣ，ＲＧＢ，ＨＳＢのそれぞれの画像をＲＡＭ１０３に格納して保持する。なお、このとき、データ量を削減するために画素を所定の割合で間引きし画像を縮小した後にＲＡＭ１０３に格納してもよい（ステップＳ１５）。ここでは、元の画像サイズに関わらず、ＱＶＧＡ（Quarter Video Graphics Array）サイズに相当する（３２０×２４０）ピクセルの画像に正規化するものとする。
【００２９】
また、ＣＰＵ１０１は、ステップＳ１５においてＲＡＭ１０３に格納されたＹＣＣ，ＲＧＢ，ＨＳＢそれぞれの画像の成分について、ヒストグラムを計算する（ステップＳ１６）。具体的には、ＲＧＢ画像については、Ｒ，Ｇ，Ｂそれぞれの画像についてヒストグラムを計算する。その結果、画像を構成する各成分の分布を得る。
【００３０】
上記したように、本実施形態では、ステップＳ１０〜１６の処理はＭＣＵ単位で行われており、ＣＰＵ１０１は、全てのＭＣＵについての処理が終了したことを確認するまで、ステップＳ１０に戻って処理を繰り返して実行する。一方、全てのＭＣＵについての処理が終了した場合には、次のステップＳ１７に進み、顔認識処理の主要部に相当する処理を実行する。
【００３１】
この実施形態の印刷装置１００では、装置の稼動状況や操作方法の説明など、必要に応じてユーザー向けの種々のメッセージをＬＣＤ１０８に表示させるユーザーインターフェース機能を有しており、次に説明するように、これらのメッセージをどの言語で表示させるかについて、ユーザー自身が選択することができるように構成されている。
【００３２】
図４は印刷装置に表示される設定画面の一例を示す図であり、図５はモード設定処理の一例を示すフローチャートである。この印刷装置１００では、通常の使用状態では所定のメニュー画面がユーザーインターフェースとしてのＬＣＤ１０８に表示されており、ユーザーは操作ボタン１０９を操作することで該メニュー画面に表示されたメニューから希望のものを選択し印刷装置１００に実行させることができる。このようなメニューの中には印刷装置１００の動作モードをユーザーの好みに応じて設定するためのモード設定に関するものがある。
【００３３】
図４はこのようなモード設定画面の一例としての言語設定メニュー画面を示しており、同図に示されるように、ユーザーは当該装置がどの地域で使用されているのか、またメッセージの表示言語をどの言語にするかについて、表示されたプルダウンメニューから選択することができるようになっている。このようにすることで、周辺機器に関する各種の規格等が国・地域によって異なっていたとしても、同一の装置をそれらの地域での使用に対応させることが可能となる。また、ユーザーが選択した言語によってメッセージを表示することにより、ユーザーにとってより使いやすい装置とすることができる。
【００３４】
図５のフローチャートはモード設定処理の一部を示しており、同図に示されるように、モード設定処理の中では、図４に示すような言語設定メニュー画面が表示される（ステップＳ０１）。そして、ユーザーにより地域および言語が設定され、「ＯＫ」または「Ｃａｎｃｅｌ」が選択されるまで待つ（ステップＳ０２、Ｓ０３）。「ＯＫ」が選択されると、選択された使用地域および表示言語をＲＡＭ１０３に記憶させる（ステップＳ０４、Ｓ０５）。一方、「Ｃａｎｃｅｌ」が選択された場合にはこれらの記憶処理をスキップする。以後のメッセージは選択された表示言語を用いてＬＣＤ１０８に表示される。
【００３５】
ところで、本願発明者の知見によれば、写真撮影時に好まれる構図には撮影者の文化的背景の影響が強く反映されることがわかっている。例えば日本人は、他の地域の出身者に比べて集合写真、すなわち複数の人物が１枚の画像に写り込んだ構図を好む傾向が強い。
【００３６】
図６は人物を含む写真の構図の典型例を示す図である。風景と共に人物を含めた写真を撮影するとき、図６（ａ）に示すように、日本人の撮影者では、風景および被写体人物の全身を１枚の画像に収めようとする傾向がある。また、被写体人物の数も多い。このため、１枚の画像に含まれる顔の１つ１つが小さい一方、その数が多いケースが多い。一方、他の地域の出身者では、図６（ｂ）に示すように、比較的人物を主体として撮影するケースが多く、１枚の画像に含まれる顔の数が少なく、ただし１つ１つの顔が大きくなる傾向が見られる。このような傾向を顔認識処理に反映させることができれば、よりユーザーの嗜好に即した顔認識処理の結果をユーザーに提供することができる。
【００３７】
そこで、この実施形態では、ユーザーインターフェース用の表示言語の設定内容と、顔認識処理における認識パラメータとを連動させることで、上記知見を顔認識処理の結果に反映させるようにしている。ここで、例えば製品の仕向け地やユーザにより設定された「使用地域」ではなく、「表示言語」の設定内容に認識パラメータを連動させているのは、ユーザーが自国以外で装置を使用するケースがあることに対応するためである。すなわち、ここで必要な情報は、装置が「どのような状況で使用されるか」ではなく「どのようなユーザーにより使用されるか」、つまりユーザー自身の属性に関する情報であり、このような情報を用いることで、ユーザーの嗜好により即した顔認識結果を提供することが可能となる。
【００３８】
図２に戻って、このような機能を付加した顔認識処理の具体的内容について説明する。ステップＳ１６までの処理によって１つの画像について画像データの復元が終了すると、ユーザーにより設定されている、ユーザーインターフェース（ＵＩ）用表示言語に関する情報をＲＡＭ１０３から取得し（ステップＳ１７）、該表示言語が日本語であるか、それ以外であるかを判定する（ステップＳ１８）。
【００３９】
顔認識処理に用いる認識パラメータのうち、この実施形態において表示言語に応じて変更するのは、当該画像において人の顔として取り得ると考えられる最も小さいサイズに対応するパラメータである最小顔サイズＳmin、当該画像において人の顔として取り得ると考えられる最も大きいサイズに対応するパラメータである最大顔サイズＳmax、および、当該画像から検出すべき顔の最大数に対応するパラメータの最大顔個数Ｎmaxの３種類である。以下において最小および最大顔サイズの数値は画素数で表されている。
【００４０】
表示言語が日本語であったときには、最小および最大顔サイズを小さくする一方、最大顔個数を大きくする。具体的には、
最小顔サイズＳmin＝２０、
最大顔サイズＳmax＝１００、
最大顔個数Ｎmax＝１０、
とする（ステップＳ１９）。この場合の顔認識処理は、「比較的小さな顔を数多く検索する」という動作となる。
【００４１】
一方、表示言語が日本語以外であった場合には、最小および最大顔サイズを大きくする一方、最大顔個数を小さくする。具体的には、
最小顔サイズＳmin＝３０、
最大顔サイズＳmax＝２００、
最大顔個数Ｎmax＝５、
とする（ステップＳ２０）。この場合の顔認識処理は、「比較的大きな顔を少ない数で検索する」という動作となる。このような動作の差異は上記した撮影者の属性に沿ったものであり、このようにすることで、画像の中から検出対象となる顔を効率よく、短時間で検出することが可能となる。
【００４２】
続いて、ＣＰＵ１０１は、検出された顔の個数に関する内部パラメータＮを０にリセットし（ステップＳ２１）、顔認識に用いるテンプレートの顔サイズＳを最大顔サイズＳmaxに設定して（ステップＳ２２）、そのテンプレートをＱＶＧＡサイズに縮小された処理対象画像の原点（Ｘ＝０，Ｙ＝０）に位置させる（ステップＳ２３、Ｓ２４）。
【００４３】
図７は顔認識用のテンプレートを模式的に示す図である。図７に示すように、画像の横方向の座標軸をＸ座標、縦方向の座標軸をＹ座標としたとき、この実施形態では、画像幅が３２０ピクセル、画像高さが２４０ピクセルのＱＶＧＡサイズに縮小された画像内において、ＣＰＵ１０１が、所定の顔サイズを有する顔認識用のテンプレートＴＰを適用し、テンプレートＴＰのサイズと画像内での位置とにより定まる検索領域を画像内で適宜に移動設定しながら当該検索領域内の画像が人の顔としての特徴を備えるか否かを判定することにより顔認識を行う。なお、顔認識アルゴリズムとしては公知のものを適用可能であるので、ここでは詳しい説明を省略する。
【００４４】
具体的には、まず当該検索領域内に、既に印刷装置１００による顔認識の結果として登録された顔情報があるか否かを判別する（ステップＳ２５）。当該検索領域で既に顔情報が登録されている場合（ステップＳ２５において「ＹＥＳ」）には、顔認識処理（Ｓ２６〜Ｓ３２）をパスする。このように、無駄となる顔認識処理を実行しないことで印刷装置１００での顔認識に要する時間の短縮を図っている。
【００４５】
一方、テンプレートが位置する検索領域に登録された顔情報が存在しない場合（ステップＳ２５で「ＮＯ」）、ＣＰＵ１０１はステップＳ１５で保持した画像データに対してテンプレートを適用して顔認識処理を行い（ステップＳ２６〜Ｓ２９）、顔を発見した場合には（ステップＳ３０）、当該領域の位置とサイズに関する情報、例えば矩形領域の４つの頂点座標を顔情報として、例えばＲＡＭ１０３に設けた顔登録リストに追加登録する（ステップＳ３１）。このとき、登録済みの顔個数に関するパラメータＮをインクリメントする。
【００４６】
ここで、ＣＰＵ１０１は、保持した画像データを９０゜、１８０゜および２７０゜回転させて顔認識処理を行う（ステップＳ３４〜Ｓ３６）。顔認識アルゴリズムにおいて、テンプレートに対して回転角度±４５°の範囲で顔認識を行えるようにしておけば、このように９０度ずつ画像を回転させてその都度テンプレートとのマッチングによる顔認識を行うことで、任意の角度を向いた顔を検出することが可能となる。顔を検出した場合には、その顔領域の位置とサイズを示す顔情報を顔登録リストに順次追加登録する。なお、本実施形態では画像データを回転させて顔認識を行っているが、テンプレートを回転させて顔認識を行ってもよい。
【００４７】
検出された顔の個数Ｎが先に設定された最大顔個数Ｎmaxに達していた場合には（ステップＳ３２）、顔認識処理を終了する。一方、検出された顔の個数Ｎが最大顔個数Ｎmaxに達していなければ、テンプレートＴＰをＸ方向に所定量ΔＸだけ移動させて（ステップＳ３３）、テンプレートがＸ方向における画像の端部に到達するまで（ステップＳ３４）、上記したステップＳ２５〜Ｓ３３の処理を繰り返す。
【００４８】
Ｘ方向の１ラインの顔認識が完了すると、ＣＰＵ１０１はテンプレートＴＰをＹ方向にΔＹだけ移動させる（ステップＳ３５）。そして、テンプレートＴＰがＹ方向の端部まで移動するまでの間（ステップＳ３６）、上記したステップＳ２３〜Ｓ３５の処理を繰り返して行う。これにより、処理対象画像の全体について、顔サイズＳのテンプレートＴＰを用いた顔認識処理が実行される。
【００４９】
なお、ＣＰＵ１０１は、上記した一連の顔認識処理（ステップＳ２３〜Ｓ３６）が完了する毎にテンプレートＴＰの顔サイズＳをΔＳだけ小さくし（ステップＳ３７）、顔サイズＳが最小顔サイズＳminを下回るまでステップＳ２３に戻って上記した一連の顔認識処理を繰り返して行う（ステップＳ３８）。こうすることで、画像内の種々のサイズの顔を検出することが可能となる。このとき、顔として認識される領域の最小・最大サイズＳmin・Ｓmaxおよび最大顔個数Ｎmaxをユーザーインターフェース用の表示言語に対応させて設定しているので、ユーザーの嗜好を加味した顔認識処理を実行することができる。
【００５０】
こうして、印刷装置１００による顔認識処理が行われると、次のステップＳ４０（図３）では、ＣＰＵ１０１は顔登録リストに顔情報が登録されている否かを判別する。そして、顔情報が登録されている場合（ステップＳ４０で「ＹＥＳ」）には、ＣＰＵ１０１は、顔登録リストに登録された顔情報に基づいて全ての顔位置を計算し、さらに顔の平均顔色を取得した（ステップＳ４１）後、顔色が最適になるようにエンハンスパラメータを計算する（ステップＳ４２）。なお、エンハンスパラメータ計算の詳細については省略するが、ＲＡＭ１０３に記憶したＲＧＢヒストグラムに基づきコントラスト、明度、彩度、シャープネスなどの各画質パラメータの特徴量を抽出し、抽出した特徴量が所定の画質パラメータの特徴量に近づくようエンハンスのパラメータを設定する。
【００５１】
一方、顔登録リストに顔情報が登録されていない場合（ステップＳ４０で「ＮＯ」）、つまり当該画像内で人の顔が検出されなかった場合には、ＣＰＵ１０１は画像全体が最適になるようにエンハンスパラメータを計算する（ステップＳ４３）。
【００５２】
続いて、ＣＰＵ１０１は、印刷対象となる画像ファイルにおいて、解凍処理の対象となる位置を示すファイルポインタをリセットし（ステップＳ４４）、処理位置を画像ファイルの先頭に復元する。そして、ＣＰＵ１０１は、以下のステップＳ４５〜Ｓ５２を繰り返して画像データに基づいて画像を印刷する。
【００５３】
ＣＰＵ１０１は、ＲＡＭ１０３にキャッシュされた１ＭＣＵライン分の画像データにハフマン解凍処理を施し、量子化ＤＣＴ係数を得る（ステップＳ４５）。ここで、１ＭＣＵラインとは、画像を回転させる場合には、画像を構成する列方向に１列のＭＣＵ群をいい、回転させない場合には、画像を構成する行方向に１列のＭＣＵ群をいう。そして、ＣＰＵ１０１は、ステップＳ４５の処理において得られた量子化ＤＣＴ係数を逆量子化し（ステップＳ４６）、さらにステップＳ４５で得られたＤＣＴ係数に対して逆ＤＣＴ演算を施すことによりもとのデータを得る（ステップＳ４７）。
【００５４】
こうして得られたＹＣＣ空間の画像を、ＣＰＵ１０１はＲＧＢ空間の画像に変換する（ステップＳ４８）。そして、ＣＰＵ１０１は、ＲＧＢ空間の画像を構成する各画素に対してステップＳ４２またはＳ４３において算出したエンハンスパラメータを適用することにより、印刷される画像を最適な色合いに補正し（ステップＳ４９）、次のステップＳ５０に進む。
【００５５】
ＣＰＵ１０１は、こうして補正された画像データに対して、リサイズ、回転などのレイアウト処理を施し（ステップＳ５０）、プリンターエンジンコントローラー１１１の図示せぬバンドバッファに供給する。これを受けたプリンターエンジンコントローラー１１１は、プリンターエンジン１１３の各部を制御して画像データに対応する画像を印刷する（ステップＳ５１）。そして、印刷処理が完了すると、ＣＰＵ１０１はＲＡＭ１０３のキャッシュ状態を更新する（ステップＳ５２）。そして、全ＭＣＵライン分について上記ステップＳ４５〜Ｓ５２が完了すると、一連の処理を終了する。
【００５６】
以上のように、本実施形態によれば、画像内において人の顔に相当する領域を検索する顔認識処理を行うのに際して、顔認識用の認識パラメータの値を、ユーザーインターフェース用の表示言語の設定内容に関連付けて設定するようにしている。こうすることで、国・地域ごとの文化の違いに起因して好まれる構図が異なるという知見を処理に反映させて、よりユーザーの嗜好に即した顔認識技術をユーザーに提供することができる。
【００５７】
より具体的には、日本人が他の地域の出身者に比べて集合写真を好むという調査結果に基づき、印刷装置１００における表示言語として日本語が設定されているときには、それ以外の言語が設定されている場合に対して、認識すべき顔のサイズを小さく、数を多くするようにしている。こうすることで、表示言語として日本語が設定された状態では集合写真に適した顔認識処理が、他の言語が設定された状態ではポートレート写真に適した顔認識処理が実行されることになり、それぞれのユーザーの嗜好に応じた顔認識結果を得ることができる。
【００５８】
ここで、装置の仕向け地や使用場所ではなく、ユーザー自身により選択されたユーザーインターフェース用の言語設定の内容に基づいて認識パラメータを設定することにより、よりユーザーの属性に即した顔認識結果を提供することが可能となる。
【００５９】
以上説明したように、上記実施形態の印刷システムにおいては、印刷装置１００が本発明の「画像処理装置」として機能しており、ＣＰＵ１０１が本発明の「処理手段」に相当している。また、操作ボタン１０９が本発明の「受付手段」として機能する一方、ＬＣＤ１０８が本発明の「表示手段」として機能している。
【００６０】
また、上記実施形態の処理動作においては、図５に示す言語設定処理が本発明の「言語設定工程」に相当している。また、図２の画像処理動作におけるステップＳ１８〜Ｓ２０が本発明の「パラメータ設定工程」に相当しており、最小顔サイズＳminおよび最大顔サイズＳmaxが本発明の「検索サイズに関する認識パラメータ」に相当するとともに、最大顔個数Ｎmaxが本発明の「検出すべき顔の数に関する認識パラメータ」に相当している。また、ステップＳ２１〜Ｓ３８が本発明の「顔認識処理工程」に相当している。さらに、図３の処理におけるステップＳ４０〜Ｓ４３が本発明の「補正工程」に相当している。
【００６１】
なお、本発明は上記した実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて上述したもの以外に種々の変更を行うことが可能である。例えば、上記実施形態では、印刷システムの構成要素である印刷装置１００におけるユーザーインターフェース言語設定の設定内容に基づいて顔認識処理時の認識パラメータを設定しているが、デジタルカメラ２００側において撮影者の属性に関する情報を登録する機能を持たせ、印刷装置１００がデジタルカメラ２００から与えられた撮影者の属性に関する情報に基づいて認識パラメータの設定を行うようにしてもよい。このようにすると、印刷装置１００のユーザーではなく当該画像の撮影者の属性に即した顔認識処理結果が提供されることとなる。この場合には、デジタルカメラ２００からのデータを受け取る印刷装置１００のインターフェース１０６が本発明の「受付手段」として機能することになる。
【００６２】
また、上記実施形態では、表示言語の設定が日本語である場合とそれ以外の言語である場合とで認識パラメータの設定を変えているが、これは一例を示したものに過ぎず、例えば選択可能な表示言語ごとに認識パラメータが異なるようにしてもよい。また、表示言語と認識パラメータとの組み合わせについては固定的なものとせず、例えばファームウェアのアップデートにより随時変更・追加が可能となるようにしてもよい。
【００６３】
また、上記実施形態では、表示言語の設定に応じて、認識パラメータのうち検索サイズと検出すべき顔の数とを共に異ならせているが、いずれか一方のみでもよい。また、上記実施形態では検索サイズに関する認識パラメータとして最小顔サイズＳminおよび最大顔サイズＳmaxを用い、これらの両方を表示言語の設定に応じて変更しているが、いずれか一方のみを変更するようにしてもよい。また、表示言語の設定に応じて変更される認識パラメータの種類はこれらに限定されるものではなく、例えば画像内における顔の検索範囲や開始位置などを変更するようにしてもよい。
【００６４】
また、上記実施形態では、ユーザー設定によって表示言語の設定が行われるが、これに限定されず、製品の出荷時に仕向け値に応じて予め表示言語がプリセットされるようにしてもよく、この場合には、当該プリセット作業時に本発明の「言語設定工程」が実行されることになるが、このような態様も本発明に包含される。この場合においても、ユーザーが事後的に言語設定を変更できるようにするのが好ましく、該変更に対しても本発明を適用して、認識パラメータの変更設定を行うことが好ましい。
【００６５】
また、上記実施形態では、ユーザーインターフェース用の言語設定の内容のみに基づいて認識パラメータの設定を行っているが、これに限定されず、例えばユーザーインターフェース用の言語設定と、使用地域の設定との組み合わせに応じて認識パラメータを設定するようにしてもよい。
【００６６】
また、上記実施形態では、本発明にかかる画像処理装置および方法を印刷装置１００に適用しているが、複数の電子機器から構成される印刷システムにも、また印刷装置以外の１つの電子機器（例えば複合機、ファクシミリ装置など）にも適用可能である。またデジタルカメラ２００に上記のような画像処理機能を設けるようにしてもよい。
【００６７】
また、上記実施形態にかかる画像処理方法を実行する制御プログラムを、ＣＤ−ＲＯＭ、光ディスク、光磁気ディスク、不揮発性メモリカードなどの記憶媒体に記憶させ、この記憶媒体からプログラムをコードとして読み出し、コンピューターにおいて実行してもよい。つまり、上記プログラムを記憶した記憶媒体、制御プログラム自体も本発明の一実施形態に含まれる。
【符号の説明】
【００６８】
１００…印刷装置（画像処理装置）、  １０１…ＣＰＵ（処理手段）、  １０２…ＲＯＭ、  １０３…ＲＡＭ、  １０４…ＥＥＰＲＯＭ、  １０８…ＬＣＤ（表示手段）、  １０９…操作ボタン（受付手段）、  ２００…デジタルカメラ、  Ｍ…メモリカード
【図１】
2012108763.tif 000003
【図２】
2012108763.tif 000004
【図３】
2012108763.tif 000005
【図４】
2012108763.tif 000006
【図５】
2012108763.tif 000007
【図６】
2012108763.tif 000008
【図７】
2012108763.tif 000009