(57)【要約】【課題】本発明によれば、人手に頼ることなく画像の向きを精度良く判定できる画像処理方法、画像処理装置、及びそれらを実行もしくは動作させるためのプログラム並びにかかるプログラムを記憶した記憶媒体を提供する。【解決手段】１画面内に人物画像が含まれていないと判断した場合には、１画面に相当する画像信号より１画面の１つの領域から抽出した特徴量と、他の領域から抽出した特徴量とを対比することで得られる背景特徴量に基づいて、１画面の画像の向きを判定するので、前記１画面に人物画像が含まれていない場合でも、前記背景特徴量から画像の向きを精度良く判定できる。【選択図】    図２
2004252627.tif 000002
【特許請求の範囲】
【請求項１】
１画面に相当する画像信号に基づいて、前記１画面内に人物画像が含まれているか否かを判断するステップと、
前記１画面内に人物画像が含まれていると判断した場合には、前記人物画像を構成する要素に関する要素特徴量に基づいて、前記１画面の画像の向きを判定し、
前記１画面内に人物画像が含まれていないと判断した場合には、前記１画面に相当する画像信号より前記１画面の１つの領域から抽出した特徴量と、他の領域から抽出した特徴量とを対比することで得られる背景特徴量に基づいて、前記１画面の画像の向きを判定することを特徴とする画像処理方法。
【請求項２】
前記１画面内に人物画像が含まれていると判断した場合には、前記要素特徴量に加え、更に前記背景特徴量に基づいて、前記１画面の画像の向きを判定することを特徴とする請求項１に記載の画像処理方法。
【請求項３】
前記要素特徴量と前記背景特徴量とに基づいて前記１画面の画像の向きを判定する場合、前記要素特徴量の重み付けを、前記背景特徴量の重み付けより重くすることを特徴とする請求項２に記載の画像処理方法。
【請求項４】
前記１つの領域と前記他の領域は、それぞれ前記１画面の周辺に位置することを特徴とする請求項１乃至３のいずれかに記載の画像処理方法。
【請求項５】
前記１画面に相当する画像信号が複数あり、その少なくとも一部が関連している場合には、１つの画面の画像の向きを判定する際に、それに関連する他の画面に相当する画像信号から抽出された前記要素特徴量及び／又は前記背景特徴量を用いることを特徴とする請求項１乃至４のいずれかに記載の画像処理方法。
【請求項６】
１つの画面の画像の向きを判定する際に、それに関連する他の画面に相当する画像信号から抽出された前記要素特徴量及び／又は前記背景特徴量を用いる場合、前記１つの画面に相当する画像信号から抽出された前記要素特徴量及び／又は前記背景特徴量の重み付けを、前記他の画面に相当する画像信号から抽出された前記要素特徴量及び／又は前記背景特徴量の重み付けより重くすることを特徴とする請求項５に記載の画像処理方法。
【請求項７】
前記１画面の画像を縮小した画像から前記要素特徴量及び／又は前記背景特徴量を抽出して、前記１画面の画像の向きを判定することを特徴とする請求項１乃至６のいずれかに記載の画像処理方法。
【請求項８】
判定された前記１画面の画像の向きが０度以外であった場合、前記１画面の画像を０度に回転させた画像に対応する変換画像信号と、前記１画面の画像を０度に回転させ更に縮小した画像に対応する変換縮小画像信号とを、記憶媒体に記憶することを特徴とする請求項１乃至７のいずれかに記載の画像処理方法。
【請求項９】
請求項１乃至８の画像処理方法を実行することを特徴とする画像処理装置。
【請求項１０】
コンピュータに請求項１乃至８のいずれかに記載の画像処理方法を実行させることを特徴とするプログラム。
【請求項１１】
請求項１０に記載のプログラムが記憶されていることを特徴とする記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像処理方法、画像処理装置及びそれらを実行もしくは動作させるためのプログラム並びにかかるプログラムを記憶した記憶媒体に関する。
【０００２】
【従来の技術】
近年、デジタル画像信号の処理技術が向上し、銀塩フィルムやプリントなどからスキャナーを用いて取り込んだ画像信号を、ＣＤ等の記憶媒体に記憶し保存するサービスが行われている。かかるサービスによれば、ユーザーが手持ちの銀塩フィルムやプリントをラボ等に持参すれば、その画像に対応する画像信号が記憶されたＣＤ等を提供されるため、ユーザーは、銀塩フィルムの保存管理に気を遣う必要がなく、自己のパソコン等を用いて、適宜画像を鑑賞したり、コピーを配布することができるというメリットがある。
【０００３】
ここで、ユーザーは被写体に応じて銀塩カメラを横位置又は縦位置にして撮影するため、それに応じて銀塩フィルムに撮影された画像の向きが変わる。従って、その銀塩フィルムやプリントなどからスキャナーを用いて取り込んだ画像信号を、そのままＣＤ等に記憶すると、例えば縦位置で撮影した画像について、ユーザーがモニタ上に表示させたときに、その画像の縦方向がモニタの水平方向に一致してしまい、視認しにくいという問題がある。かかる場合、パソコンに画像処理ソフトがインストールされていれば、それを用いて、モニタ上の画像を回転させることはできるが、そのような画像処理ソフトがインストールされていない場合、或いはパソコンの操作に不慣れなユーザーの場合、画像の回転を容易に行えないという問題がある。そこで、上述のサービスにおいては、銀塩フィルムやプリントなどからスキャナーを用いて取り込んだ画像信号に基づいて、実際に表示させた画像から、作業者が画像の向きを逐一判断し、例えば全ての画像の縦方向がモニタの上下方向に一致するように画像処理を行ってから、ＣＤ等の記憶媒体に記憶し保存することが行われている。しかしながら、膨大な画像の全てについて、この作業を行うと時間がかかるため、機械化できないかという要請がある。
【０００４】
同様の問題は、デジタルスチルカメラで撮影を行った後、ＣＤ等の記憶媒体に一連の画像信号を記憶する際にも生じる。
【０００５】
ところで、以下の特許文献１において、画像における顔の部品（目、口、髪等）の位置関係、体の構成部分（手、足等）の位置関係により、その画像の向きを自動的に判定する方法が開示されている。かかる方法を用いれば、ある程度の確度で、画像の向きを求めることができる。
【特許文献１】
特開平８−１３８０２４号公報
【０００６】
【発明が解決しようとする課題】
ところが、特許文献１の技術によれば、画像に顔が含まれていない場合、画像の向きを判定できないという問題がある。又、画像に顔が含まれていた場合でも、それを人物の顔として正しく認識することは、現状では必ずしも容易でなく、また顔の部品等の位置関係を求めることは更に困難である。従って、誤った認識に基づいて、画像の向きを不正確に判定してしまうおそれがある。
【０００７】
本発明は、かかる従来技術の問題点に鑑みてなされたものであり、人手に頼ることなく画像の向きを精度良く判定できる画像処理方法、画像処理装置、及びそれらを実行もしくは動作させるためのプログラム並びにかかるプログラムを記憶した記憶媒体を提供することを目的とする。
【０００８】
【課題を解決するための手段】
本発明の画像処理方法は、１画面に相当する画像信号に基づいて、前記１画面内に人物画像が含まれているか否かを判断するステップと、前記１画面内に人物画像が含まれていると判断した場合には、前記人物画像を構成する要素に関する要素特徴量に基づいて、前記１画面の画像の向きを判定し、前記１画面内に人物画像が含まれていないと判断した場合には、前記１画面に相当する画像信号より前記１画面の１つの領域から抽出した特徴量と、他の領域から抽出した特徴量とを対比することで得られる背景特徴量に基づいて、前記１画面の画像の向きを判定するので、前記１画面に人物画像が含まれていない場合でも、前記背景特徴量から画像の向きを精度良く判定できる。ここで、「領域から抽出される特徴量」とは、例えば色情報（色差）、エッジ情報、輝度情報等をいうが、これに限られることはない。
【０００９】
更に、前記１画面内に人物画像が含まれていると判断した場合には、前記要素特徴量に加え、更に前記背景特徴量に基づいて、前記１画面の画像の向きを判定するので、より高精度に画像の向きを判定できる。
【００１０】
又、前記要素特徴量と前記背景特徴量とに基づいて前記１画面の画像の向きを判定する場合、前記要素特徴量の重み付けを、前記背景特徴量の重み付けより重くすることで、より高精度に画像の向きを判定できる。
【００１１】
更に、前記１つの領域と前記他の領域は、それぞれ前記１画面の周辺に位置すると、より高精度に画像の向きを判定できる。
【００１２】
又、前記１画面に相当する画像信号が複数あり、その少なくとも一部が関連している場合には、１つの画面の画像の向きを判定する際に、それに関連する他の画面に相当する画像信号から抽出された前記要素特徴量及び／又は前記背景特徴量を用いると、例えば関連している例として銀塩フィルム１本（１ロット）分の画像のように、各画像の向きがおおむね一致していると思われる複数の画面がある場合、それに対応する複数の画像信号を関連づけて画像の向きを判定することで、判定の効率を向上させることができる。
【００１３】
更に、１つの画面の画像の向きを判定する際に、それに関連する他の画面に相当する画像信号から抽出された前記要素特徴量及び／又は前記背景特徴量を用いる場合、前記１つの画面に相当する画像信号から抽出された前記要素特徴量及び／又は前記背景特徴量の重み付けを、前記他の画面に相当する画像信号から抽出された前記要素特徴量及び／又は前記背景特徴量の重み付けより重くすると、より高精度に画像の向きを判定することができる。
【００１４】
又、前記１画面の画像を縮小した画像から前記要素特徴量及び／又は前記背景特徴量を抽出して、前記１画面の画像の向きを判定すると処理時間を短縮できる。
【００１５】
更に、判定された前記１画面の画像の向きが０度以外であった場合、前記１画面の画像を０度に回転させた画像に対応する変換画像信号と、前記１画面の画像を０度に回転させ更に縮小した画像に対応する変換縮小画像信号とを、記憶媒体に記憶すると、よりユーザーフレンドリーである。
【００１６】
上述した画像処理方法を実行する画像処理装置は、例えばコンピュータが考えられるが、それに限られることはない。
【００１７】
【発明の実施の形態】
以下、本発明の実施の形態につき、図面を参照して説明する。図１１は、本実施の形態にかかる画像処理方法を実行できる画像処理装置を示す概略図である。図１１において、フィルムスキャナ１は撮像素子を備えており、銀塩フィルムＦの画像を読み取って電気信号に変換する。フィルムスキャナ１から出力された電気信号は、増幅器２により増幅され、Ａ／Ｄ変換器３によりデジタルの画像信号に変換され、ＣＰＵ４により画像処理を施された後、記憶装置５に記憶されるようになっている。尚、ＣＰＵ４，記憶装置５はパーソナルコンピュータであってもよい。
【００１８】
次に、本実施の形態の画像処理方法について説明する。本実施の形態では、ＣＰＵ４が、画像の向きが０度、９０度、１８０度、２７０度のいずれであるかを判定するものである。０度、９０度、１８０度、２７０度については、図１（ａ）〜（ｄ）に示す画像（人物の顔）の向きとする。最初に画像の向きが０度もしくは１８０度か、９０度もしくは２７０度かのいずれかを判定する。次に０度もしくは１８０度と判定された場合は、０度か１８０度かの判定を行い、９０度もしくは２７０度と判定された場合は、９０度か２７０度かの判定を行う。
【００１９】
画像の向きの判定は、１画面に被写体として人物が存在するか否か判定するステップ（図２のステップＳ１０２）と、人物が存在した場合、その人物を構成する部品（要素ともいう）に関する要素特徴量を抽出するステップ（図２のステップＳ１０３）と、人物以外の背景に関する背景特徴量を抽出するステップ（図２のステップＳ１０４）と、これらの特徴量から画像の向きを判定するステップ（図２のステップＳ１０６〜Ｓ１０８）とからなる。図２に示す画像の向きを判定する処理フローに基づいて、それぞれの処理内容を示す。
【００２０】
まず、図２のステップＳ１０１で、ＣＰＵ４は１画面に相当する画像信号を読み込んだ後、ステップＳ１０２で１画面の画像中に人物が写っているかどうか（人物画像が含まれているか否か）を判定する。これについては、様々な手法が提案されているが、例えば特開平８−６３５９７号公報に記載されている方法により判定できるので、本明細書中では、かかる方法を利用するものとする。
【００２１】
ステップＳ１０２で、人物が写っていると判断した場合、ＣＰＵ４は、ステップＳ１０３で、人物の部品（目、鼻、口、耳、髪の毛、手足等）に関する要素特徴量を抽出する。画像の向きを判定するのに必要な要素特徴量の例として、顔の形状に関する特徴量、両目の位置関係に関する特徴量、顔と髪の位置関係に関する特徴量、顔と手又は顔と足との位置関係に基づく特徴量等が考えられる。それぞれの求め方について説明する。
【００２２】
（ａ）顔の形状に関する要素特徴量ＥＦａ
まず、特開平８−６３５９７号公報に記載されている方法により顔領域を抽出し、顔に外接する矩形のアスペクトレシオ（矩形の高さ／幅）を求め、これを１から引いた値を特徴量とする。この値が正であれば、画像の向きは０／１８０度である可能性が高い。また、負の数であれば、画像の向きは９０／２７０度である可能性が高い。０に近ければ、この特徴量では判定しにくいことがわかるので、その値を０とするか、重み付けを下げるとよい。顔領域が抽出されないときは、この要素特徴量をゼロとする。
顔形状に関する要素特徴量ＥＦａ＝１−アスペクトレシオ
【００２３】
（ｂ）両目の位置関係に関する要素特徴量ＥＦｂ
ここでは、両目の位置に基づいて、画像の角度を求め要素特徴量を得る。
▲１▼  目領域を抽出する。抽出方法は、例えば特開平８−６３５９７号公報に記載されている方法を用いる。ここで、両目が検出されない場合は、その要素特徴量を０にする。
▲２▼  両方の目領域が抽出されたら、顔領域の中心から両方の目領域の中心を通過する直線をひき、それと画像の水平方向との角度θを求める。
【００２４】
角度θより、以下のようにして両目の位置関係に関する要素特徴量ＥＦｂを求める。その値が正で大きいほど、画像の向きは０／１８０度である可能牲が高い。また、負の数で大きいほど、画像の向きは９０／２７０度である可能性が高い。
０≦θ＜９０度の場合、両目の位置関係に関する要素特徴量ＥＦｂ＝θ−４５
９０≦θ＜１８０度の場合、両目の位置関係に関する要素特徴量ＥＦｂ＝１３５−θ
１８０≦θ＜２７０度の場合、両目の位置関係に関する要素特徴量ＥＦｂ＝θ−２２５
２７０≦θ＜３６０度の場合、両目の位置関係に関する要素特徴量ＥＦｂ＝３１５−θ
【００２５】
（ｃ）顔と髪の位置関係に関する要素特徴量ＥＦｃ
顔と髪の位置関係から、画像の角度を求め要素特徴量を得る。
▲１▼  髪領域及び顔領域を抽出する。抽出方法は、例えば特開平８−６３５９７１号公報に記載されている方法を用いる。ここで、髪領域及び顔領域が検出されない場合は、その要素特徴量を０にする。
▲２▼  髪領域及び顔領域が抽出されたら、顔領域の中心から髪領域の中心へ結ぶ直線の水平方向からの角度θを求める。次に以下のようにして顔と髪の位置関係に関する要素特徴量を求める。この値が正で大きいほど、画像の向きは０／１８０度である可能性が高い。また、負の数で大きいほど、画像の向きは９０／２７０度である可能性が高い。
０≦θ＜９０度の場合、顔と髪の位置関係に関する要素特徴量ＥＦｃ＝θ−４５
９０≦θ＜１８０度の場合、顔と髪の位置関係に関する要素特徴量ＥＦｃ＝０−１３５
１８０≦θ＜２７０度の場合、顔と髪の位置関係に関する要素特徴量ＥＦｃ＝θ−２２５
２７０≦θ＜３６０度の場合、顔と髪の位置関係に関する要素特徴量ＥＦｃ＝θ−３１５
【００２６】
（ｄ）顔と手又は顔と足との位置関係に基づく要素特徴量ＥＦｄ
顔と手又は顔と足との位置関係に基づいて、画像の角度を求め要素特徴量を得る。
▲１▼  顔領域及び手領域又は足領域を抽出する。抽出方法は、例えば特開平８−１３８０２４号公報に記載されている方法を用いる。ここで、顔領域及び手領域又は足領域が検出されない場合は、その要素特徴量を０にする。
▲２▼  顔領域及び手領域又は足領域が抽出されたら、手領域又は足領域の中心から顔領域の中心へ結ぶ直線の水平方向からの角度θを求める。次に以下のようにして顔と手又は足の位置関係に関する要素特徴量を求める。この値が正で大きいほど、画像の向きは０／１８０度である可能性が高い。また、負の数で大きいほど、画像の向きは９０／２７０度である可能性が高い。
０≦θ＜９０度の場合、顔と手又は顔と足との位置関係に基づく要素特徴量ＥＦｄ＝θ−４５
９０≦θ＜１８０度の場合、顔と手又は顔と足との位置関係に基づく要素特徴量ＥＦｄ＝０−１３５
１８０≦θ＜２７０度の場合、顔と手又は顔と足との位置関係に基づく要素特徴量ＥＦｄ＝θ−２２５
２７０≦θ＜３６０度の場合、顔と手又は顔と足との位置関係に基づく要素特徴量ＥＦｄ＝θ−３１５
【００２７】
続いて、ＣＰＵ４は、ステップＳ１０４において背景特徴量を求める。尚、ステップＳ１０２で人物が写っていないと判断した場合、ＣＰＵ４は、ステップ１０３を実行せず、ステップＳ１０４において背景特徴量を求める。
【００２８】
人物以外の被写体（背景）に関する背景特徴量
画像の全体的な構図（背景という用語を用いるが、人物が含まれていてもよい）に関する特徴量の例としては、対称性、明るさの勾配、各辺に接する領域の均一度等が上げられる。それぞれの求め方について説明する。
【００２９】
（ａ）対称性に関する背景特徴量
特に屋外の撮影では、図３に示すような構図の画像が得られることが多い。このような画像では、左右の対称性は上下の対称性より高いので、この対称性を示す背景特徴量を用いて画像の向きを判定することができる。また、屋内の撮影でも同様に、背景が壁で中央に人が写っている構図の画像が得られることが多く、かかる場合に同様の手法で画像の向きを判定できる。
【００３０】
（Ｉ）色情報を利用した対称性に関する背景特徴量ＢＦａ
▲１▼  １画面を模式的に示す図４において、画面の周辺部８つの領域（左上、左中、左下、中上、中下、右上、右中、右下と略す）中の色情報（例えばＬ＊ｕ＊ｖ＊）の平均値を求める。尚、ここでは、色情報はＬ＊ｕ＊ｖ＊を用い、色の差を表すのに色差を用いたが、これに限らず、例えば色情報はＬ＊ａ＊ｂ＊、ＨＳＶ、ＨＩＱ等であり、それに対応する色の差を表す尺度であってもかまわない。
▲２▼  色情報に基づいて、画像の水平方向の対称性を求める。具体的には、左上と右上、左中と右中、左下と右下の領域間の色差を計算し、その平均値ａｖｅｈ（色）を求める。尚、ここでは平均値用いることとするが、最小値、最大値、分散であってもかまわない）。
左上と右上の色差＝（Ｌ＊（左上）−Ｌ＊（右上））２＋（ｕ＊（左上）−ｕ＊（右上））２＋（ｖ＊（左上）−ｖ＊（右上））２
左中と右中の色差＝（Ｌ＊（左中）−Ｌ＊（右中））２＋（ｕ＊（左中）−ｕ＊（右中））２＋（ｖ＊（左中）ｖ＊（右中））２
左下と右下の色差＝（Ｌ＊（左下）−Ｌ＊（右下））２＋（ｕ＊（左下）−ｕ＊（右下））２＋（ｖ＊（左下）−ｖ＊（右下））２
ａｖｅｈ（色）＝（左上と右上の色差＋左中と右中の色差＋左下と右下の色差）／３
尚、例えばＬ＊（左上）とは、左上領域のＬ＊値を意味するものとする。
▲３▼  色情報に基づいて、垂直方向の対称性を求める。具体的には左上と左下、中上と中下、右上と右下の領域間の色差を求める。
左上と左下の色差＝（Ｌ＊（左上）−Ｌ＊（左下））２＋（ｕ＊（左上）−ｕ＊（左下））２＋（ｖ＊（左上）−ｖ＊（左下））２
中上と中下の色差＝（Ｌ＊（中上）−Ｌ＊（中下））２＋（ｕ＊（中上）−ｕ＊（中下））２＋（ｖ＊（中上）ｖ＊（中下））２
右上と右下の色差＝（Ｌ＊（右上）−Ｌ＊（右下））２＋（ｕ＊（右上）−ｕ＊（右下））２＋（ｖ＊（右上）−ｖ＊（右下））２
ａｖｅｖ（色）＝（左上と左下の色差＋中上と中下の色差＋右上と右下の色差）／３
▲４▼  ａｖｅｈ（色）とａｖｅｖ（色）の差を、色情報を利用した対称性に関する背景特徴量ＢＦａとする（以下の式参照）。
色情報を利用した対称性に関する背景特徴量ＢＦａ＝ａｖｅｖ（色）−ａｖｅｈ（色）
この値が正の数で大きいほど画像の向きは０／１８０度である可能性高い。また、負の数で大きいほど、画像の向きは９０／２７０度である可能性高い。また、０に近いほど、この特量量では判定しにくいことを示している。
【００３１】
以上の処理をＣＰＵ４で行う場合の具体的な処理フローを図５に示す。図５のステップＳ２０１で、ＣＰＵ４は、画像周辺８領域におけるＲＧＢデータを、Ｌ＊ｕ＊ｖ＊データに変換する。更に、ステップＳ２０２で、ＣＰＵ４は、画像周辺８領域におけるＬ＊ｕ＊ｖ＊データの平均値を求める。続いてステップＳ２０３で、ＣＰＵ４は、かかるＬ＊ｕ＊ｖ＊データの平均値に基づいて画面の横方向の色差を求め、その横平均値（＝ａｖｅｈ）を演算する。又ステップＳ２０４で、ＣＰＵ４は、かかるＬ＊ｕ＊ｖ＊データの平均値に基づいて画面の縦方向の色差を求め、その縦平均値（＝ａｖｅｖ）を演算する。最後にステップＳ２０５で、ＣＰＵ４は、横平均値と縦平均値とに基づいて背景特徴量ＢＦａを求める。
【００３２】
（ＩＩ）エッジ情報を利用した対称性に関する背景特徴量ＢＦｂ
色情報の代わりにエッジ情報を用いる以外は、上記と同じ手法を用いることができる。エッジ情報は、この例では対称画素の４近傍の周囲画素とＢ＋Ｇ＋Ｒ差の絶対値を求め、これを足し合わせた値をエッジ量として計算する。尚、これ以外に例えばラプラシアンフィルタ、Ｓｏｂｅｌフィルタをかけた値でもかまわない。
▲１▼  ａｖｅｈ（エッジ）＝（左上と右上のエッジ量の差＋左中と右中のエッジ量の差＋左下と右下のエッジ量の差）／３を求める。
▲２▼  ａｖｅｖ（エッジ）（左上と左下のエッジ量の差＋中上と中下のエッジ量の差＋左下と右下のエッジ量の差）／３を求める。
▲３▼  エッジ情報を利用した対称性に関する背景特徴量ＢＦｂ＝｜ａｖｅｖ（エッジ）｜−｜ａｖｅｈ（エッジ）｜を求める。
この値が正の数で大きいほど画像の向きは０／１８０度である可能性が高い。また、負の数で大きほはど、画像の向きは９０／２７０度である可能性が高い。また、０に近いほど、この特徴量では判定しにくいことを示している。
【００３３】
（ＩＩＩ）明るさの傾きに関する背景特徴量ＢＦｃ
図７に示すような屋外のシーンでも屋内のシーンでも太陽もしくは室内の電灯等の光源の影響で垂直方向に明るさの傾きが生じている場合が多い。つまり画像の上部で明るく、下にいくにしたがって暗くなる傾向がある。この傾向を、背景特徴量とすることで画像の向きを判定することができる。
▲１▼  左上の輝度−右上の輝度、左中の輝度−右中の輝度、左下の輝度−右下の輝度を計算し、その平均値ａｖｅｈ（輝度）を求める。輝度としてはＬ＊値を用いてもよいし、Ｒ＋Ｇ＋Ｂの値を用いてもよい。
▲２▼  左上の輝度−左下の輝度、中上の輝度−中下の輝度、右上の輝度−右下の輝度を計算しその平均値ａｖｅｖ（輝度）を求める。
▲３▼  明るさの傾きに関する背景特徴量として、ａｖｅｈ（輝度）の絶対値と、ａｖｅｖ（輝度）の絶対値の差を求める（以下の式参照）。
明るさの傾きに関する背景特徴量ＢＦｃ＝｜ａｖｅｖ（輝度）｜−｜ａｖｅｈ（輝度）｜
この値が正の数で大きいほど、画像の向きは０／１８０度である可能性が高い。また、負の数で大きいほど、画像の向きは９０／２７０度である可能性が高い。
【００３４】
以上の処理をＣＰＵ４で行う場合の具体的な処理フローを図６に示す。図６のステップＳ３０１で、ＣＰＵ４は、画面横方向の輝度差を求め、その横平均値（輝度）を演算する。又ステップＳ３０２で、ＣＰＵ４は、画面縦方向の輝度差を求め、その縦平均値（輝度）を演算する。最後にステップＳ３０３で、ＣＰＵ４は、横平均値（輝度）と縦平均値（輝度）とに基づいて、明るさの傾きに関する背景特徴量を求める。
【００３５】
（ＩＶ）画面各辺に接する領域の均一度に関する背景特徴量ＢＦｄ
屋外のシーンでも屋内のシーンでも画像の上部は、空、壁、天井であることが多く、画像の下部は地面、床であることが多い。この傾向を特徴量とすることで画像の向きを判定することができる。具体的には例えば図８のような構図では、画像の上端辺は全て空に接しているため、色情報やエッジ情報等の均一性が高くなる。
▲１▼  周辺４辺各辺にそって、色の均一性を求める。色の均一性の求め方は多数あるが、ここでは、Ｌ＊、ｕ＊、ｖ＊の標準偏差を求め、これを重み付けて足し合わせた数値で示す。重みについての一例として特開平９−２８４４２９号公報に記載されているように、均一性＝（Ｌ＊の標準偏差）＋０．８５２×（ｕ＊の標準偏差）＋０．３２３×（ｖ＊の標準偏差）で求められる。
▲２▼  画面各辺に接する領域の均一度に関する背景特徴量として、左辺の均一性と右辺の均一性のうちの小さい方の値と、上辺の均一性と下辺の均一性のうち小さい方の値との差を求める（以下の式参照）。
画面各辺に接する領域の均一度に関する背景特徴量ＢＦｄ＝ｍｉｎ（均一性（左辺）、均一性（右辺））−ｍｉｎ（均一性（上辺）、均一性（下辺））。
この値が正で大きいほど、画像の向きは０／１８０度である可能性が高い。また、負の数で大きいほど、画像の向きは９０／２７０度である可能性が高い。
【００３６】
以上の処理をＣＰＵ４で行う場合の具体的な処理フローを図９に示す。図９のステップＳ４０１で、ＣＰＵ４は、画面周囲４辺に沿ってＬ＊、ｕ＊、ｖ＊の標準偏差を求める（図の式中、ｓｄは標準偏差）。続くステップＳ４０２で、ＣＰＵ４は、画面各辺に接する領域の均一度に関する背景特徴量を求める。
【００３７】
以上のごとく背景特徴量を求めた後、図２のステップＳ１０５で、ＣＰＵ４は、画像の向きが、０度もしくは１８０度か否かを判定する。ここでは、人物画像が１画面に存在するか否かの判定の結果により判定方法が異なる。人物画像が存在すると判定された場合は、要素特徴量と背景特徴量とを利用して判定を行う。この場合は、人物の部品に関する要素特徴量の重みが大きくなるようにする。人物画像が存在しないと判定された場合は、背景特徴量のみを利用して判定を行う。具体的な方法例を示す。
【００３８】
（人物画像が存在すると判定された場合）
各要素特徴量、各背景特徴量にそれぞれ重みをかけたものを足し合わせた値により判定する。具体的には、
評価尺度（顔有り）＝Ｗ１・ＥＦａ＋Ｗ２・ＥＦｂ＋Ｗ３・ＥＦｃ＋Ｗ４・ＥＦｄ＋Ｗ５・ＢＦａ＋Ｗ６・ＢＦｂ＋Ｗ７・ＢＦｃ＋Ｗ８・ＢＦｄ    （１）
の計算を行う。ここで、Ｗ１〜Ｗ８は、それぞれの特徴量に対する重み係数である。
【００３９】
画像の向きの判定は、１画面に人物画像が含まれている場合には、人物以外から判断するよりも、人物の要素に基づいて判断する方が確度が高いので、人物の部品に関する要素特徴量の重み（Ｗ１、Ｗ２、Ｗ３、Ｗ４）を、背景特徴量の重み（Ｗ５、Ｗ６、Ｗ７、Ｗ８）より重くなるように設定することが好ましい。
【００４０】
この評価尺度の値により０度もしくは１８０度か、９０度もしくは２７０度かの判定を行う。この他に、ニューラルネットを用いて判定する手法でもよい。その場合は、ニューラルネットの入力層に上記特徴量を入力して判定する。
【００４１】
（人物画像が存在しないと判定された場合）
この場合は、画像の全体的な構図に関する背景特徴量のみを用いて判定する。この場合、Ｗ１〜Ｗ４は０になるので、
評価尺度（顔なし）＝Ｗ５・ＢＦａ＋Ｗ６・ＢＦｂ＋Ｗ７・ＢＦｃ＋Ｗ８・ＢＦｄ                                                                                                                        （２）
の計算を行い、計算値より画像の向きを判定する。人物画像があると判定された場合と同様に、ニューラルネットを用いて判定する手法でもよい。
【００４２】
ＣＰＵ４は、図２のステップＳ１０７で、画像の向きが０度か１８０度かの判定を行う。例えばネガフィルムをフィルムスキャナでデジタイズする場合、ネガ１本単位（以後、ロットと記述）で向きが１８０度回転している場合がある。この場合には１枚の画像のみで判定するのではなく、同一ロットの複数の画像の向きの傾向を利用する。ここでは、前述した人物の部品に関する要素特徴量と背景特徴量を利用して判定することができる。以下に具体例を示す。
【００４３】
（背景特徴量を利用した例）。
▲１▼  明るさの傾きに関する背景特徴量ＢＦｃを求めるときに計算したａｖｅｖ（輝度）を利用する。同一ロットのａｖｅｖ（輝度）の値の平均値を取り、その値が正の値であれば同一ロットのすべての画像の向きが０度、負であれば１８０度と判定する、
▲２▼  画面各辺に接する領域の均一度に関する背景特徴量ＢＦｄを求めるときに計算した各辺に接する領域のＬ＊、ｕ＊、ｖ＊の平均値から、平均値が空の色を示すときは、その辺が画像の上であると判定する。平均値が地面の色を示すときは、その辺が画像の下であると判定する。尚、１画面に人物画像が存在すると判定された場合は、以下のようにして要素特徴量から判定することができる。
【００４４】
（要素特徴量を利用した例）
▲１▼  両目の位置関係に関する要素特徴量ＥＦｂを求めるときに計算したθが４５度≦θ＜１３５度の場合は、画像の向きは０度と判定し、２２５度≦θ＜３１５度の場合は１８０度と判定する。
▲２▼  顔と髪の位置関係に関する要素特徴量ＥＦｃを求めるときに計算したθが４５度≦θ＜１３５度の場合は、画像の向きは０度と判定し、２２５度≦θ＜３１５度の場合は１８０度と判定する。
【００４５】
これらの判定手法のどれか一つ実行してもよいし、組み合わせてもかまわない。処理速度を要求される場合はどれか一つを実行し、確度を要求される場合は、組み合わせることが好ましい。その際、１画面に人物画像がある場合は、前述したように、人物の部品の位置関係に関する要素特徴量の重み付けを重くすることが好ましい。
【００４６】
一方、ＣＰＵ４は、図２のステップＳ１０８で、画像の向きが９０度か２７０度かの判定を行う。この具体例を示す。
【００４７】
（背景特徴量を利用した例）
▲１▼  明るさの傾きに関する背景特徴量ＢＦｃを求めるときに計算したａｖｅｈ（輝度）を利用する。これが正の値であれば画像の向きが２７０度、負であれば９０度と判定する。
▲２▼  画面各辺に接する領域の均一度に関する背景特徴量ＢＦｄを求めるときに計算した各辺に接する領域のＬ＊、ｕ＊、ｖ＊の平均値から、平均値が空の色を示す時は、その辺が画像の上であると判定する。平均値が地面の色を示す時はその辺が画像の下であると判定する。尚、１画面に人物画像が存在すると判定された場合は、以下のようにして要素特徴量から判定することができる。
【００４８】
（要素特徴量を利用した例）
▲１▼  両目の位置関係に関する要素特徴量ＥＦｂを求めるときに計算したθが−４５度≦θ＜４５度の場合は、画像の向きは９０度と判定し、１３５度≦θ＜２２５度の場合は２７０度と判定する。
▲２▼  顔と髪の位置関係に関する要素特徴量ＥＦｃを求めるときに計算したθが−４５度≦θ＜４５度の場合は、画像の向きは９０度と判定し、１３５度≦θ＜２２５度の場合は２７０度と判定する。
【００４９】
これらの判定手法のどれか一つ実行してもよいし、組み合わせてもかまわない。処理速度を要求される場合はどれか一つを実行し、確度を要求される場合は、組み合わせることが好ましい。その際、１画面に人物画像がある場合は、前述したように、人物の部品の位置関係に関する要素特徴量の重み付けを重くすることが好ましい。
【００５０】
また、同一ロット内では撮影者が同一人物である場合が多いので、９０度か２７０度については、どちらかに集中する傾向を持つことが多い。この傾向を利用する方法として、例えば、ロット中で９０度もしくは２７０度と判定された画像が３枚あり、その内、２枚が９０度と判定された場合、３枚目の画像が９０度になる可能性が高くなるよう評価尺度を調整することができる。本実施の形態によれば、１画面に顔が写っていない場合や、たとえ顔が写っていても正確に目、髪等を抽出できない場合でも、上記方法を用いることで画像の向きを正確に判定することができる。この場合、判定対象となる画像の評価尺度（（１）、（２）式）に加え、その前後の画像の評価尺度を用いて判定を行うこともできるが、この場合は、判定対象となる画像の評価尺度の重み付けを、その前後の画像の評価尺度の重み付けより高くすることが望ましい。
【００５１】
尚、上記処理は本画像（例えばスキャナから取り込んだ生データの画像）の縮小画像で行うことができる。画像の向きを判定するには解像度の高い画像は必要なく、ＶＧＡ（Ｖｉｄｅｏ  Ｇｒａｐｈｉｃｓ  Ａｒｒａｙ）の１／４程度（３２０×２４０画素）の画像であれば正確に判定できる。これより大きい画像の場合は、間引いた画像を作製し上記処理を行う。これにより、精度を下げずに処理速度を向上させることができる。
【００５２】
上述の手法による画像の向きの判定を、デジタルカメラ、フィルムスキャナ等の入力機器で行い、画像を回転させる必要のある場合（０度以外の場合）は、元画像を回転させた画像、更にその縮小両像を作製して元画像とは別に所定の記録媒体に記憶保存することもできる。このとき、元の画像を保存しないかどうかユーザーに確認する機能を、デジタルカメラ、フィルムスキャナ等に持たせると好ましい。
【００５３】
更に、画像フォーマットがＥｘｉｆ場合は、元画像を回転させた画像を作製するかわりに、画像の属性を示すメタデータとして画像の向きをヘッダ中の所定の場所に書き込んでもかまわない。以上によれば、入力機器内で、画像の向きが判定され、画像が回転させる必要のある場合は、回転させた画像が保存されるので、画像を表示する際に正立像が表示されることになるので、ユーザーにとって画像をみやすいという効果がある。以上の手法による画像の向きの判定にかかる画像処理方法を実行するプログラムは、ＣＤやハードディスク等の記憶媒体に保存され、パソコン等で実行されることが可能である。
【００５４】
以上、本発明を実施の形態を参照して説明してきたが、本発明は上記実施の形態に限定して解釈されるべきではなく、適宜変更・改良が可能であることはもちろんである。
【００５５】
【発明の効果】
本発明によれば、人手に頼ることなく画像の向きを精度良く判定できる画像処理方法、画像処理装置、及びそれらを実行もしくは動作させるためのプログラム並びにかかるプログラムを記憶した記憶媒体を提供することができる。
【図面の簡単な説明】
【図１】画像の角度の例を示す図である。
【図２】画像の向きを判定する処理フローを示す図である。
【図３】１画面の画像の例である。
【図４】１画面を模式的に示した図である。
【図５】色情報を利用した対称性に関する背景特徴量を求めるための処理フローを示す図である。
【図６】明るさの傾きに関する背景特徴量を求めるための処理フローを示す図である。
【図７】１画面の画像の例である。
【図８】１画面の画像の例である。
【図９】画面各辺に接する領域の均一度に関する背景特徴量を求めるための処理フローを示す図である。
【図１０】１画面の画像の例である。
【図１１】本実施の形態にかかる画像処理方法を実行できる画像処理装置を示す概略図である。
【符号の説明】
１  フィルムスキャナ
２  増幅器
３  Ａ／Ｄ変換器
４  ＣＰＵ
５  記憶装置
【図１】
2004252627.tif 000003
【図２】
2004252627.tif 000004
【図３】
2004252627.tif 000005
【図４】
2004252627.tif 000006
【図５】
2004252627.tif 000007
【図６】
2004252627.tif 000008
【図７】
2004252627.tif 000009
【図８】
2004252627.tif 000010
【図９】
2004252627.tif 000011
【図１０】
2004252627.tif 000012
【図１１】
2004252627.tif 000013