説明

画像処理装置および画像処理プログラム

【課題】外光の影響下であっても、画像から特徴点領域を検出する場合の検出精度の低下を防止することを課題とする。
【解決手段】画像処理装置300は、画像内に含まれる、第一の画素と、該第一の画素と互いに1画素以上離れた位置にある複数の画素との輝度値を、該第一の画素を前記画像内で走査させながらそれぞれ取得する。また、画像処理装置300は、走査させながら取得した第一の画素と複数の画素とのそれぞれの輝度値に基づいて画像内の特徴点を検出する。

【発明の詳細な説明】
【技術分野】
【0001】
本願の開示する技術は、画像処理装置および画像処理プログラムに関する。
【背景技術】
【0002】
従来、例えば、画像内に写っている顔について、画像上のエッジを抽出することにより顔の両端位置および中心位置を検出し、検出した顔の両端位置および中心位置から顔の向きを求める技術がある。
【0003】
また、顔の向きを求めるための情報として、鼻や目などの顔を構成する部品である顔部品の位置を検出する技術がある。例えば、顔画像からエッジを抽出することでエッジ画像を生成し、エッジ画像を所定の方向に投影して得られるヒストグラムの形状を分析することで顔部品の画像上の位置を検出する。また、画像のエッジ情報を用いる手法以外にも、Haar特徴量など、輝度をベースとした特徴量データに基づいて顔部品の顔画像上の位置を検出する技術もある。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2007−72628号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、画像からエッジを抽出する技術は、輝度値の変化をエッジとして捉える為、被写体に照射される光の変化に影響を受けやすく、画像コントラストの低下や画像ボケを原因として、顔部品の検出精度が低下する場合があるという問題がある。
【0006】
例えば、被写体である顔に照射されている光が一様ではない場合には、顔部品により顔画像内に形成されるエッジだけではなく、顔画像に形成される光と影の境界をエッジとして抽出してしまう。このため、顔部品の検出精度が低下する場合がある。
【0007】
また、被写体である顔に照射される光の強度や照射範囲の変化に伴って、顔画像のコントラストが変化する場合も考えられる。例えば、顔画像からエッジを抽出する場合には、輝度値の変化有無を判断するために任意の閾値が設定される。しかし、画像のコントラストの低下を予め想定し、顔部品により顔画像に形成されるエッジのみを精度よく抽出する閾値を設定することは事実上困難である。また、画像の部位ごとに異なる閾値を算出する手法も存在するが、閾値の算出のために、輝度値の変化モデルに基づくパラメータを設定しておく必要がある。このため、外光の変化に応じて閾値やパラメータを変化させないと、光の強度や照射範囲の変化に伴って顔部品の検出精度が低下する場合がある。
【0008】
また、被写体である顔を撮影する撮影装置のフォーカス性能の個体差やレンズの取り付け具合などによっては、画像ボケを起こした顔画像が撮影される場合も考えられる。しかしながら、撮影装置のフォーカス性能の個体差などを原因とする画像ボケを予め想定し、顔部品により顔画像に形成されるエッジのみを精度よく抽出する閾値を設定することは、撮影装置ごとに閾値を補正する必要が生じるため、事実上困難である。このため、閾値を変化させないと、撮影装置のフォーカス性能の個体差やレンズの取り付け具合などによって顔部品の検出精度が低下する場合がある。
【0009】
このように、エッジを抽出することにより顔画像から顔部品を検出する技術では、被写体に照射される光の変化、コントラストの低下あるいは画像ボケなどにより、その検出精度が低下してしまう。
【0010】
また、上述したHaar特徴量などを用いる技術も顔画像の輝度値を扱う技術である。このため、顔部品の検出精度は、エッジを抽出する技術と同様に、顔に照射される光の変化に影響を受けやすく、被写体に照射される光の変化、コントラストの低下あるいは画像ボケなどにより、顔部品の検出精度が低下する場合がある。Haar特徴量は画像の明暗パターンがテンプレートに一致するか否かで、検出対象を含んだ画像であるか否かを判断する技術である。画像上に現れる明暗パターンは外光変化により影響を受け易い。従って、同一の被写体であっても明暗パターンの現れ方が変化してしまうので、テンプレートと一致しているか否かの評価が困難になり、検出精度が低下する場合がある。
【0011】
開示の技術は、上記に鑑みてなされたものであって、外光の影響下であっても、画像から顔部品などの特徴点領域を検出する場合の検出精度の低下を防止することが可能な画像処理装置および画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0012】
本願の開示する画像処理装置は、一つの態様において、取得部と検出部を有する。取得部は、画像内に含まれる、第一の画素と、該第一の画素と互いに1画素以上離れた位置にある複数の画素との輝度値を、該第一の画素を前記画像内で走査させながらそれぞれ取得する。検出部は、走査させながら取得した前記第一の画素と前記複数の画素とのそれぞれの輝度値に基づいて、前記画像内の特徴点を検出する。
【発明の効果】
【0013】
本願の開示する技術の一つの態様によれば、外光の影響下であっても、画像から特徴点領域を検出する場合の検出精度の低下を防止できる。
【図面の簡単な説明】
【0014】
【図1】図1は、実施例1に係る画像処理装置の説明に用いる図である。
【図2】図2は、実施例1に係る画像処理装置の構成を示す機能ブロック図である。
【図3】図3は、実施例1に係る特徴量記憶部に記憶される情報の一例を示す図である。
【図4】図4は、実施例1に係る検出部の動作の説明に用いる図である。
【図5】図5は、実施例1に係る検出部の動作の説明に用いる補足図である。
【図6】図6は、実施例1に係る検出部の動作の説明に用いる補足図である。
【図7】図7は、実施例1に係る検出部の動作の説明に用いる補足図である。
【図8】図8は、実施例1に係る特徴量画像の一例を示す図である。
【図9】図9は、実施例1に係る画像処理装置による処理の全体的な流れを示す図である。
【図10】図10は、実施例1に係る画像処理装置による特徴点検出処理の流れを示す図である。
【図11】図11は、実施例1に係る画像処理装置の処理結果を説明するための図である。
【図12】図12は、実施例1に係るコントラストの低下した画像に対する画像処理装置による処理結果を説明するための図である。
【図13】図13は、実施例1に係る照射光の強度が変化した画像に対する画像処理装置による処理結果を説明するための図である。
【図14】図14は、画像処理プログラムを実行する電子機器の一例を示す図である。
【発明を実施するための形態】
【0015】
以下に、図面を参照しつつ、本願の開示する画像処理装置および画像処理プログラムの一実施形態について詳細に説明する。本願の開示する画像処理プログラムおよび画像処理装置の一実施形態として後述する実施例により、本願が開示する技術が限定されるものではない。なお、以下の実施例では、画像中に人の顔が写っている画像のことを顔画像と呼ぶ。そして、顔画像から、例えば、鼻の穴に相当する領域を示す特徴点を検出する場合の一実施形態について説明する。また、以下の実施例に開示する技術は、処理内容に矛盾を生じさせない範囲で適宜組み合わせることが可能である。
【実施例1】
【0016】
図1は、実施例1に係る画像処理装置の説明に用いる図である。図1に示す1Aは顔画像を表す。図1に示す1Bは、顔画像1Aが撮影されたときに顔に照射されていた光とは、強度や照射範囲などが異なる光が照射された場合に撮影された顔画像を表す。図1に示す1Cは、顔画像1A内の、ある部分領域に相当する輝度値の変化を表したグラフである。この1Cに示す部分領域は、各画素の輝度値が領域の内側から外側へ向かうに従って大きくなっている領域R1を含んでいる。図1に示す1Dは、顔画像1B内の、ある部分領域に相当する輝度値の変化を表したグラフである。この1Dに示す部分領域は、1Cに示す部分領域と同様に、各画素の輝度値が領域の内側から外側へ向かうに従って大きくなっている領域R2を含んでいる。ここで、画像のxy座標軸をそれぞれx軸、y軸とし、z軸に、xy座標で示される位置の画素の輝度値をとると、輝度値の変化の状態を、三次元上の曲面と見なすことができる。このような輝度曲面では、領域R1や領域R2は、領域の中ほどに凹んだ底を持つ穴のように表されることになる。
【0017】
人の顔をほぼ正面から撮影した場合に、顔画像内に映し出された鼻の穴に相当する領域は、鼻の穴が周囲よりもくぼんでいるので、意図的に光を顔の下から当てない限り、影になる。従って、鼻の穴に相当する領域は、領域R1や領域R2のように、各画素の輝度値が領域の内側から外側へ向かうに従って大きくなる、換言すれば、輝度値が領域の外側から内側へ向かうに従って小さくなることに発明者は気づいた。更に、発明者は、このような画像上の輝度値変化の特徴を利用すれば、画像からエッジを抽出することなく、顔部品の画像上の位置を特定できることに気づいた。実施例1に係る画像処理装置は、領域R1や領域R2のように、顔画像内の部分領域であって、各画素の輝度値が領域の内側から外側へ向い次第に大きくなっている領域は、顔に照射される光の変化に影響されずに、その輝度値変化の特徴を留めている点に着目する。つまり、図1に示す領域R1や領域R2が、その輝度値変化の特徴を留めるのは、顔に照射される光が変化する場合に限らず、顔画像全体のコントラストが低下した場合や、顔画像がボケた場合のいずれについても同様である。
【0018】
そこで、実施例1に係る画像処理装置は、顔画像上で顔部品の位置を検出する際に、鼻の穴のように、各画素の輝度値が領域の内側から外側へ向かうに従って大きくなっている領域内の画素位置を利用することで、顔部品の検出精度の低下を防止する。
【0019】
[画像処理装置の構成(実施例1)]
図2は、実施例1に係る画像処理装置の構成を示す機能ブロック図である。図2に示すように、実施例1に係る画像処理装置300は、例えば、車両1に実装される。そして、画像処理装置300は、車両1に搭載された1または複数の撮影装置100および出力装置200に接続される。なお、図2においては、撮影装置100が複数記載されているが、撮影装置100は1台であっても構わない。
【0020】
撮影装置100は、例えば、単眼カメラやステレオカメラなどに該当する。撮影装置100には、運転者の顔を正面やや下方から撮影した顔画像を撮影するために車室内のステアリングカラムや計器パネル内に備え付けられるものや、車両1の周囲を撮影するために車両の所定位置に設置されるものがある。出力装置200は、例えば、車室内に備え付けられたモニタやディスプレイに該当し、例えば、撮影装置100により撮影された画像を表示する。
【0021】
また、図2に示すように、画像処理装置300は、記憶部310および制御部320を有する。
【0022】
記憶部310は、図2に示すように、画像記憶部311および特徴量記憶部312を有する。なお、記憶部310は、例えば、RAM(Random Access Memory)やフラッシュメモリ(flash memory)などの半導体メモリ素子である。
【0023】
画像記憶部311は、例えば、運転者の顔を正面やや下方から撮影した顔画像を記憶する。運転者の顔画像は、上述した撮影装置100により取得される。特徴量記憶部312は、後述する検出部322により実行された特徴点検出処理の結果として、例えば、顔画像上の座標と所定の特徴量とを対応付けて記憶する。図3は、実施例1に係る特徴量記憶部に記憶される情報の一例を示す図である。図3に示すように、特徴量記憶部312は、座標(X1,Y1)と特徴量(V1)、座標(X2,Y2)と特徴量(V2)、座標(X3,Y3)と特徴量(V3)などをそれぞれ対応付けて記憶する。なお、特徴量記憶部312に記憶される座標や特徴量については、後述する検出部322の説明の中で明らかにする。
【0024】
図2に戻り、制御部320は、取得部321と、検出部322と、判定部323と、報知部324とを有する。なお、制御部320は、例えば、電子回路や集積回路に該当する。電子回路としては、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)がある。また、集積回路としては、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などがある。
【0025】
取得部321は、画像記憶部311から顔画像のデータを取得し、顔画像に含まれる各画素の輝度値を取得する。
【0026】
検出部322は、取得部321により取得された顔画像に含まれる各画素の輝度値に基づいて、顔画像から、例えば、鼻の穴のような特徴点を検出する特徴点検出処理を実行する。図2に示すように、検出部322は、抽出部322A、計算部322B、格納部322Cおよび決定部322Dを有する。
【0027】
抽出部322Aは、取得部321により取得された顔画像に含まれる各画素の輝度値を元に、各画素の輝度値が領域の内側から外側へ向かうに従って大きくなっている可能性がある領域を特定する処理対象となる画素を抽出する。以下、図4を参照しつつ、抽出部322Aについて説明する。図4は、実施例1に係る検出部の動作の説明に用いる図である。
【0028】
図4に示すP1は注目画素を表す。図4に示す4Aは顔画像のある一部の領域を表す。図4に示す領域4Bは、P1を注目画素とした場合に、計算部322Bが行う処理のイメージを分かり易くするためにハッチングされている。図4に示すP2およびP3は、注目画素P1を中心として左右方向、つまりX軸方向に左右に5ピクセルずつ離れた位置にある2つの近傍画素をそれぞれ表す。図4に示すP4およびP5は、注目画素P1を中心として上下方向、つまりY軸方向に上下に5ピクセルずつ離れた位置にある2つの近傍画素をそれぞれ表す。図4に示すC1はX軸方向に配列された3つの画素の輝度値から算出した近似2次関数を表す。図4に示すC2はY軸方向に配列された3つの画素の輝度値から算出した近似2次関数を表す。図4に示すB1は2次関数C1の底、すなわち最小値をとる位置に相当するY座標を示す線分を表す。図4に示すB2は2次関数C2の底、すなわち最小値をとる位置に相当するX座標を示す線分を表す。図4に示す4Cは、線分B1と線分B2とが交差する画素の位置を表す。ここで、図4に示す4Cは、近似式に基づいて、領域4Bに含まれる画素の中で輝度値が最も小さいと推定される画素に該当する。なお、以下では、注目画素P1に対する画素4Cのことを輝度最小点と記すものとする。
【0029】
図4に示すように、抽出部322Aは、顔画像4Aに含まれる画素の一つを注目画素P1として選択し、注目画素P1からX軸方向に両側5ピクセルの位置にある近傍画素P2およびP3を取得する。続いて、抽出部322Aは、注目画素P1からY軸方向に両側5ピクセルの位置にある近傍画素P4およびP5を取得する。続いて、抽出部322Aは、注目画素P1の輝度値と近傍画素P2およびP3の各輝度値とを比較するとともに、注目画素P1の輝度値と近傍画素P4およびP5の各輝度値とを比較する。比較の結果、注目画素P1の輝度値が近傍画素P2〜P5の輝度値よりも大きくなければ、注目画素P1および4個の近傍画素を計算部322Bの処理対象とする。注目画素P1が4個の近傍画素のいずれかよりも輝度値が大きければ、この注目画素P1は鼻の穴のように周囲よりも輝度値が暗い領域ではない位置であると見なすことができる。このように、注目画素P1が鼻の穴に相当する領域外であることが自明である場合は、そのP1を計算部322Bの処理対象にしないことで、計算量を少なくすることができる。なお、近傍画素は注目画素の上下左右の4個に限る必要は無く、注目画素を囲む位置にある複数の画素を利用することができる。
【0030】
なお、上述した注目画素から近傍画素までの距離(サイズ)は一例である。注目画素から何ピクセル離れた位置の画素を近傍画素とするか、言い換えれば、左右もしくは上下の近傍画素間の距離(サイズ)をどの程度とするか、は、5ピクセルに限るものではなく、以下のようなサイズを設定できる。例えば、撮影装置100で運転席に着いた運転者の顔を撮影した時に顔画像内に映し出される鼻の穴の領域の幅の一般値を予め決定しておく。そして、上述のサイズを、顔画像内で鼻の穴が有する領域の幅よりも狭く、かつ該幅の半分よりも大きな大きさに設定する。例えば、顔画像内に映し出された鼻の穴の領域の縦幅もしくは横幅の7割程度に相当するサイズが適当である。もちろん、本実施例に開示する技術では、鼻の穴以外であっても、各画素の輝度値が領域の内側から外側へ向かうに従って大きくなるような領域であれば検出できる。従って、検出したい領域の画像上での大きさに応じて、検出したい領域の一般値の縦幅もしくは横幅の7割程度に相当するサイズを用いればよい。
【0031】
計算部322Bは、抽出部322Aにより取得された注目画素P1および4個の近傍画素について、画素の輝度値の変動を近似する2次関数を算出する。以下、図4を参照しつつ、計算部322Bの動作を説明する。
【0032】
例えば、計算部322Bは、注目画素P1の輝度値と、注目画素P1を含むX軸方向上に配列された2つの近傍画素P2およびP3の輝度値をそれぞれ取得する。そして、計算部322Bは、注目画素P1の輝度値と、近傍画素P2の輝度値およびP3の輝度値とを用いて、2次関数C1を求める。二次関数C1は、画素P1と同じY座標をもつ、画素P2からP3までの間にある各画素の輝度値の変化の状態を近似していると見なすことができる。同様に、計算部322Bは、注目画素P1を含むY軸方向上に配列された2つの近傍画素P4およびP5の輝度値をそれぞれ取得する。そして、計算部322Bは、この注目画素P1の輝度値と、近傍画素P4の輝度値およびP5の輝度値とを用いて、2次関数C2を求める。二次関数C2は、画素P1と同じX座標をもつ、画素P4からP5までの間にある各画素の輝度値の変化の状態を近似していると見なすことができる。
【0033】
なお、計算部322Bは、2次関数を用いて、輝度の変化の状態を近似する場合に限られるものではなく、輝度の変化の状態が評価できる関数であればどのような関数を用いてもよい。例えば、三角関数などを用いることもできる。
【0034】
格納部322Cは、計算部322Bにより求められた二つの2次関数それぞれの底により特定される位置の座標に対応付けて所定の特徴量を格納する。以下、図4を参照しつつ、格納部322Cについて説明する。
【0035】
例えば、格納部322Cは、計算部322Bにより求められた2次関数C1および2次関数C2との底、すなわち最小値をとる位置のX座標とY座標とを求める。続いて、格納部322Cは、図4の4Cに示すように、2次関数C1が最小値をとる位置をY軸方向に延長した線分B1と2次関数C2が最小値をとる位置をX軸方向に延長した線分B2とが交差する位置4Cを検出する。つまり、格納部322Cは、2次関数C1が最小値をとる位置のX座標と、2次関数C2が最小値をとる位置のY座標を取得する。
【0036】
続いて、格納部322Cは、図4の4Cに示す位置の座標を注目画素P1に着目した処理における輝度最小点に決定する。続いて、格納部322Cは、2次関数C1の2次の項の係数値と2次関数C2の2次の項の係数値とを比較して小さい方の係数値を特徴量として取得する。続いて、格納部322Cは、決定した輝度最小点の座標に対応付けて、特徴量として取得した係数値を特徴量記憶部312に格納する。
【0037】
なお、抽出部322Aおよび計算部322Bによる、ある注目画素P1に対する処理が終わると、注目画素P1の位置を顔画像内で一つずらして、新たな注目画素P1に対して上述の抽出部322Aおよび計算部322Bによる処理を行う。即ち、注目画素P1をずらしながら、顔画像を走査する。ここで、処理簡略化のために、顔画像を間引いて処理することも考えられる。間引いて処理を行う場合には、注目画素P1を1つずつずらして走査するのではなく、所定個数おきにすらして走査しても良い。また、処理簡略化のために、顔画像から、顔が映っていそうな範囲を特定できるのであれば、そのような範囲のみを対象にして注目画素P1を走査させることも考えられる。例えば、撮影装置100の位置が、顔や鼻の穴などの検出対象に対して固定的であるならば、画像上における検出対象の写る領域を凡そ特定できる。また例えば、肌色の領域を特定し、肌色の領域内で注目画素P1を走査させることも考えられる。
【0038】
ここで例えば、一つ前に処理した注目画素P1に対して計算部322Bが算出した結果と、次に処理する注目画素P1に対して計算部322Bが算出した結果との間で輝度最小点の座標が同一座標になる場合がある。即ち、異なる注目画素に対してそれぞれ求めた輝度最小点の位置が重複する場合がある。特に、各画素の輝度値が顔画像内のある部分領域において内側から外側へ向かうに従って大きくなっている領域内に注目画素P1がある場合には、輝度最小点が重複することがある。このように、輝度最小点の座標が同一座標になる場合には、格納部322Cは、同一の座標に対応付けて、ある注目画素について格納済みの特徴量に対して他の注目画素に対して算出した特徴量を加算し、特徴量記憶部312に記憶されている特徴量を更新する。
【0039】
なお、格納部322Cが、2次関数の2次の項の係数値のうち小さい方の係数値を特徴量とするのは、最終的に特定したい領域とは異なる領域に関する特徴量を低く抑える趣旨である。例えば、顔画像中の鼻の穴に相当する図1に示す領域R1や領域R2のような領域では、X軸方向およびY軸方向の輝度の変化状態を近似した二次関数のカーブが双方同程度となり、各2次関数の2次の項の係数値に大きな差はないことが予想される。ここで、領域R1や領域R2のような領域とは異なり、X軸方向またはY軸方向のいずれか一方の二次関数のカーブが他方に比べて鋭い領域では、近似する2次関数の2次の項の一方の係数値が大きくなる。このように、X軸方向またはY軸方向のいずれか一方の二次関数のカーブが鋭い領域は、最終的に検出したい領域、例えば、図1に示す領域R1や領域R2に該当しないので、このような領域で特徴量が大きくならない方が処理上で都合が良い。そこで、2次関数の小さい方の係数値を特徴量として格納することにより、最終的に検出したい領域に該当しない領域に対する処理の結果、格納される特徴量をできるだけ抑える。
【0040】
ここで、図5〜図7を用いて、上述してきた検出部322により実行される特徴点検出処理について補足説明する。図5〜図7は、実施例1に係る検出部の動作の説明に用いる補足図である。
【0041】
図5に示す5Aは、各画素の輝度値が領域の内側から外側へ向かうに従って大きくなっている閉鎖領域(α)を有する顔画像の領域の一部を表す3次元モデルである。X軸およびY軸は、顔画像のX軸方向およびY軸方向の位置を示し、Z軸方向はXY座標で特定される位置の画素の輝度値を示す。例えば、顔画像の内、鼻の穴に相当する領域は、閉鎖領域(α)のような状態になる。なお、閉鎖領域(α)に含まれるX軸方向のある画素列の輝度変動を近似すると、例えば、上述した図4に示す2次関数C1のようになる。同様に、閉鎖領域(α)に含まれるY軸方向のある画素列の輝度変動を近似すると、例えば、上述した図4に示す2次関数C2のようになる。図5に示す5Bは、上述した抽出部322A、計算部322B、格納部322Cにより、5Aに示される範囲の顔画像内の各画素を注目画素P1として走査した場合に、特徴量記憶部312に格納される特徴量を立体的に表した3次元モデルである。X軸およびY軸は、図5AのX軸およびY軸に対応し、Z軸方向はXY座標で特定される位置の画素の特徴量を示す。5Bに示すように、5Aに示す閉鎖領域(α)のように、X軸方向Y軸方向とも同程度の二次関数のカーブであれば、複数の注目画素間で輝度最小点がある画素の位置におおよそ集中し、閉鎖領域(α)に関する特徴量が大きく現れる。
【0042】
続いて、図6に示す6Aは、各画素の輝度値が領域の内側から外側へ向かうに従って大きくなっている溝状の領域(β)を有する顔画像の領域の一部を表す3次元モデルである。X軸およびY軸は、顔画像のX軸方向およびY軸方向の位置を示し、Z軸方向はXY座標で特定される位置の画素の輝度値を示す。例えば、顔画像の内、顔の皺や、線状のくぼみに相当する領域は、閉鎖領域(β)のような状態になる。図6に示す6Bは、上述した抽出部322A、計算部322B、格納部322Cにより、6Aに示される範囲の顔画像内の各画素を注目画素P1として走査した場合に、特徴量記憶部312に格納される特徴量を立体的に表した3次元モデルである。X軸およびY軸は、図6AのX軸およびY軸に対応し、Z軸方向はXY座標で特定される位置の画素の特徴量を示す。6Bに示すように、6Aに示す溝状の領域(β)のように、X軸方向とY軸方向との二次関数のカーブが類似していなければ、即ち、二次関数の二次の項の係数値が大きく相違すれば、複数の注目画素間で輝度最小点が複数の画素の位置に分散し、溝状の領域(β)の特徴量が現れる。
【0043】
続いて、図7に示す7Aは、各画素の輝度値が領域の内側から外側へ向かうに従って大きくなっている局所的な閉鎖領域(γ)と、輝度が階段状に変化した領域とを有する顔画像の領域の一部を表す3次元モデルである。例えば、顔画像の内、鼻の穴に相当する領域である閉鎖領域(γ)にかかる位置に影が生じていると、図7Aのような状態になる。X軸およびY軸は、顔画像のX軸方向およびY軸方向の位置を示し、Z軸方向はXY座標で特定される位置の画素の輝度値を示す。図7に示す7Bは、上述した抽出部322A、計算部322B、格納部322Cにより、7Aに示される範囲の顔画像内の各画素を注注目画素P1として走査した場合に、特徴量記憶部312に格納される特徴量を立体的に表した3次元モデルである。X軸およびY軸は、図7AのX軸およびY軸に対応し、Z軸方向はXY座標で特定される位置の画素の特徴量を示す。7Bに示すように、輝度が階段状に変化した領域がある場合、つまり顔に光が一様に照射されておらず、影が生じている場合であっても、7Aに示す局所的な閉鎖領域(γ)のある画素の位置に、集中して特徴量が大きく現れる。
【0044】
図5および図7に示すように、各画素の輝度値が領域の内側から外側へ向かうに従って大きくなっている局所的な閉鎖領域では、該閉鎖領域内に注目画素が存在する間は輝度最小点の位置が集中したり重複したりすることが多い。従って、輝度最小点が特定の画素またはその周囲に集中し、その結果、特徴量が大きく現れる。この理由を説明する。まず、図4の4Bに示すサイズを、顔画像内で鼻の穴が有する面積よりも狭く、かつ顔画像内の鼻の穴の中心位置を常に含むような大きさに設定する。すると、鼻の穴の領域内に注目画素と近傍画素とが存在する場合に、輝度最小点が重複する可能性を高くできる。よって、鼻の穴の領域内の特定画素の座標に特徴量が加算される結果、例えば、図5および図7に示すように、特定の画素付近に集中して特徴量が大きく現れる。
【0045】
一方、図6に示すように、溝状の領域では、該領域内に注目画素や近傍画素が存在する場合でも、注目画素の位置が変わると、近似二次関数の底が重複せず、複数の画素の位置に分散して特徴量が現れていることが分かる。溝状の領域は、周囲と比べて輝度値が低い画素が、ある領域内に固まることがなく線上に続く為、注目画素の位置が変わるにつれて輝度最小点の位置も変化し、重複しにくい。このため、特徴量が分散して格納される結果、例えば、図6に示すように、複数の画素の位置に分散して特徴量が現れる。本発明では、鼻の穴領域の中央付近の輝度値は周辺画素より輝度値が低いことを利用して、特徴量の大きな画素を鼻の穴を検出する際の候補として検出する。従って、特徴量が大きく現れる画素の位置を特定することは、顔画像上で鼻の穴に相当する位置を特定することと同義と考えることができる。
【0046】
このように、上述した検出部322により実行される特徴点検出処理により、顔画像内で検出対象とする顔部品、例えば、鼻の穴である可能性が高い領域内の特定の画素に対応付けられる特徴量が大きくなる。このため、後述する決定部322Dは、この特徴量に基づいて、顔画像から鼻の穴の位置を決定することができる。
【0047】
決定部322Dは、特徴量記憶部312に記憶されている特徴量に基づいて、顔画像の鼻の位置を決定する。特徴量記憶部312から取得した特徴量を所定の閾値と比較して、特徴量が閾値よりも大きい画素の座標を特徴点の候補に決定する。そして、決定部322Dは、特徴点の候補に対応する画素を「白」で描画し、特徴点の候補以外の画素を「黒」で描画した特徴量画像を生成する。図8は、実施例1に係る特徴量画像の一例を示す図である。図8に示す8Aは顔画像を表し、図8に示す8Bは特徴量画像を表す。決定部322Dは、図8の8Aに示すような顔画像について、図8の8Bに示すような特徴量画像を生成する。
【0048】
続いて、決定部322Dは、特徴量画像内に含まれる複数の特徴点の候補の中から、特徴量が最も大きい特徴点の候補を取得する。ここで、特徴点の候補として、単一の画素を扱っても良いし、特徴量を有する画素同士の位置が接している場合にグルーピングし、グルーピングした後の画素群を特徴点の候補として扱っても良い。顔画像の中で、周囲よりも輝度が小さく、線状でもない領域は鼻の穴の他には存在しないことが多いので、特徴量が最も大きい特徴点の候補は、鼻の穴のいずれか一方の位置に該当するとみなすことができる。続いて、決定部322Dは、特徴量が最も大きい特徴点の候補を鼻の穴の一方とした場合に、他方の鼻の穴になり得る特徴点の候補を特徴量画像内に含まれる複数の特徴点の候補の中から取得し、特徴点の候補の組合せを決定する。例えば、決定部322Dは、予め記憶しておいた画像上の鼻の穴の平均的な広さや穴同士の間隔、鼻の穴の輝度パターンなどを用いることにより特徴点の候補の組合せを決定する。そして、決定部322Dは、決定した特徴点の候補の組合せに含まれる各特徴点の候補を特徴点とし、該特徴点の位置を鼻の穴の位置に決定する。
【0049】
あるいは、決定部322Dは、次のようにして鼻の位置を決定してもよい。例えば、決定部322Dは、特徴量記憶部312に記憶されている特徴量の中から、最も大きい特徴量に対応付けられた座標を取得する。続いて、決定部322Dは、取得した座標を一方の鼻の穴の位置とした場合に、他方の鼻の穴の位置になり得る座標に対応付けられた特徴量を特徴量記憶部312に記憶されている特徴量の中から1または複数取得し、取得した特徴量の中で最も大きい特徴量を特定する。このようにして、決定部322Dは、鼻の穴となる特徴点の組合せを決定し、各特徴点の座標を鼻の穴の位置に決定する。
【0050】
判定部323は、決定部322Dにより決定された鼻の穴の位置に基づいて顔の向きを検出し、運転中の顔の向きとして適正であるか否かを判定する。例えば、判定部323は、決定部322Dが決定した鼻の穴の位置及び、予め記憶されていた鼻の穴の位置に対する平均的な目の位置を用いて、顔画像内のおおよその目の位置を取得する。そして、おおよその目の位置付近で、予め記憶されていた目の形状パターン検出や、エッジ検出により目の位置を特定する。ここで、鼻の穴の位置に基づいて特定された凡その目の位置付近の輝度平均に基づいて、目を検出するためのエッジ検出の際の閾値を設定しても構わない。
【0051】
続いて、判定部323は、継時的に撮影装置100により撮影される顔画像内の鼻の穴の位置および目の位置を捕捉し、鼻の穴の位置および目の位置の移動量を取得する。続いて、鼻の穴の位置および目の位置の移動量から顔の形状を復元し、鼻の穴の位置、目の位置および顔の形状から顔の向きを検出する。続いて、判定部323は、顔の向きの追跡を開始し、運転中の顔の向きとして適正であるか否かの判定処理を実行する。例えば、顔の向きが正面から所定角度以上逸れた場合に、適正ではないと判定することが考えられる。ここで、判定部323は、鼻の穴の位置のみ、もしくは鼻の穴の位置と目の位置のみを継時的に捕捉し、その位置が著しく変化した場合や画像上の所定の範囲から外れた場合に、余所見をした、すなわち顔の向きが適正ではないと判定することもできる。判定の結果、適正である場合には、判定部323は、報知停止指示を報知部324に送る。その結果、報知部324により報知がなされた状態が継続していた場合には、報知が停止される。報知部324により報知がなされていなかった状態であれば、そのまま報知を行わない状態を継続する。一方、判定の結果、不適正である場合には、判定部323は、顔の向きが不適正である旨の警告の報知指示を報知部324に送る。
【0052】
報知部324は、上述した判定部323からの指示に従って、警告の報知および警告の報知停止を行う。報知部324は、判定部323から警告の報知指示があると、余所見を注意する警告を一定間隔で繰り返し報知する。また、報知部324は、判定部323から警告の報知停止指示があると、警告の報知を停止する。
【0053】
[画像処理装置による処理(実施例1)]
続いて、図9および図10を用いて、実施例1に係る画像処理装置による処理の流れを説明する。図9は、実施例1に係る画像処理装置による処理の全体的な流れを示す図である。図10は、実施例1に係る画像処理装置による特徴点検出処理の流れを示す図である。
【0054】
まず、図9を用いて、画像処理装置300による処理の全体的な流れを説明する。なお、画像処理装置300は、例えば、車両1が有する点火装置の作動に応じて図9の処理を開始する。制御部320による判定により、もしくは他の装置からの指示信号により、画像処理装置300にて処理を開始するものと判定された場合には(ステップS101,YES)、検出部322は特徴点検出処理を実行する(ステップS102)。なお、車両1が有する点火装置の作動していない場合には、画像処理装置300は、ステップS101の判定結果をNoとして、ステップS101の判定を繰り返す。もしくは、点火装置が作動していない場合には、画像処理装置3も起動していない場合もある。また、点火装置が作動しているだけでなく、車両1の走行速度が所定以上になったことを制御部320が検出した場合に、S101でYESと判定しても良い。
【0055】
続いて、決定部322Dは、ステップS102の特徴点検出処理の検出結果に基づいて特徴量画像を生成し(ステップS103)、生成した特徴量画像を元に、顔画像の鼻の穴の位置を検出する(ステップS104)。決定部322Dは、上述したようにステップS103を行わずに、ステップS104において、鼻の穴の位置に相当する特徴点の位置を特定しても良い。判定部323は、鼻の穴の位置から運転者の顔の向きを検出し(ステップS105)、顔の向きの追跡を開始し(ステップS106)、運転者の顔の向きが不適正であるか否かの判定処理を開始する(ステップS107)。判定の結果、運転者の顔の向きが不適正である場合には(ステップS107,YES)、判定部323は、警告の報知指示を報知部324に送出する(ステップS108)。続いて、制御部320は次の処理フレームが入力されたかどうかを判定する(ステップS109)。判定の結果、次の処理フレームが入力された場合には(ステップS109,YES)、制御部320は、処理の終了判定を実行する(ステップS110)。判定の結果、処理を終了する場合には(ステップS110,YES)、処理を終了する。一方、処理を終了しない場合には(ステップS110,NO)、上述したステップS102に戻り特徴点抽出処理を実行する。
【0056】
ここで、ステップS107の説明に戻る。判定の結果、運転者の顔の向きが不適正ではない場合には(ステップS107,NO)、判定部323は、警告報知指示を送出済みであるか否かを判定する(ステップS111)。判定の結果、送出済みである場合には(ステップS111,YES)、判定部323は、警告報知停止指示を報知部324に送出する(ステップS112)。続いて、制御部320は、上述したステップS109に戻り、次の画像フレームの入力を待機する。ここで、ステップS109の説明に戻る。制御部320は、判定の結果、次の処理フレームが入力されていない場合には(ステップS109,NO)、次の処理フレームの入力を待機する。なお、制御部320は、上述したステップS110にて、処理を終了すると判定するまで、入力される処理フレームについて上述したステップS101〜ステップS112までの処理を繰り返す。
【0057】
続いて、図10を用いて、画像処理装置300による特徴点検出処理の流れを説明する。図10に示すように、抽出部322Aは、画像記憶部311から顔画像を取得し、取得した顔画像に含まれる画素を一つ、注目画素として選択する(ステップS201)。続いて、抽出部322Aは、注目画素の輝度値が近傍画素の輝度値以下であるかを判定する(ステップS202)。判定の結果、注目画素の輝度値が近傍画素の輝度値以下である場合には(ステップS202,Yes)、抽出部322Aは、注目画素と近傍画素との輝度値と座標位置を顔画像から抽出する(ステップS203)。
【0058】
続いて、計算部322Bは、抽出部322Aにより抽出された注目画素および近傍画素に基づいてX軸方向の近似2次関数を求める(ステップS204)。続いて、計算部322Bは、抽出部322Aにより抽出された注目画素および近傍画素に基づいてY軸方向の近似2次関数を求める(ステップS205)。なお、ステップS204とS205とは、どちらを先に実行しても構わない。
【0059】
続いて、格納部322Cは、各2次関数が最小値をとる位置により特定される座標を取得し(ステップS206)、2次関数の2次の係数値を比較して小さい方の係数値を特徴量として取得する(ステップS207)。続いて、格納部322Cは、ステップS206で取得した座標に対応付けて、ステップS207で特徴量として取得した係数値を格納する(ステップS208)。続いて、格納部322Cは、顔画像内に含まれる処理対象とすべき全画素を注目画素として選択完了したか否かを判定する(ステップS209)。判定の結果、全画素を選択完了していない場合には(ステップS209,No)、格納部322Cは、注目画素として取得する画素の位置を更新して、上述したステップS201に処理を戻す。一方、判定の結果、全画素を選択完了している場合には(ステップS209,Yes)、格納部322Cは、特徴点検出処理を終了する。なお、上述したステップS208において、格納部322Cは、同一の輝度最小点の座標に対応付けて特徴量が格納済みである場合には、格納済みの特徴量に対して今回の特徴量を加算して更新する。
【0060】
ここで、ステップS202の説明に戻る。判定の結果、注目画素の輝度値が近傍画素の輝度値よりも大きい場合には、抽出部322Aは、ステップS202の判定結果をNoとして、注目画素として取得する画素の位置を更新して、ステップS201に処理を戻す。
【0061】
続いて、図11〜図13を参照して、実施例1に係る画像処理装置の処理結果を説明する。図11は、実施例1に係る画像処理装置の処理結果を説明するための図である。図12は、実施例1に係るコントラストの低下した画像に対する画像処理装置による処理結果を説明するための図である。図13は、実施例1に係る照射光の強度が変化した画像に対する画像処理装置による処理結果を説明するための図である。なお、図11〜図13には、画像処理装置300による処理結果として、顔画像と特徴量画像と特徴量との関係を示している。
【0062】
図11に示す11Aは顔画像を表す。図11に示す11Bは11Aに対応する特徴量画像を表す。図11に示す11Cは顔画像11Aと特徴量画像11Bと特徴量の格納結果とを重畳させた図を表す。図11に示す11DはY軸上に投影した特徴量の格納結果を表し、特徴量が大きいほどX軸方向の値が大きく示されている。説明の便宜上、特徴量をY軸上に投影しているので、同一のY座標をもつ複数の画素に対する特徴量が加算された状態を示している。11Cに示すように、顔画像11Aに対して特徴量画像11Bを重畳すると、顔画像11Aに映し出された鼻の穴の位置と、特徴量画像11B内に描画された特徴点の位置とが一致する。また、11Cに示すように、顔画像11Aに対して特徴量の格納結果11Dを重畳すると、鼻の穴の位置に対応する位置に特徴点のピークが現れている。11Bにおいては、例えば、鼻の穴に加えて、鼻翼の影や目尻、眉の影なども現れている。しかし、11Dに示されているように、鼻の穴以外の特徴は、特徴量が大きくないので、鼻の穴に相当する特徴とは区別されうる。
【0063】
図12に示す12Aは、例えば、図11に示す11Aよりもコントラストの低下した顔画像を表す。例えば、薄暗い環境下で顔画像を撮影した場合が相当する。図12に示す12Bは12Aに対応する特徴量画像を表す。図12に示す12Cは顔画像と特徴量画像と特徴量の格納結果とを重畳させた図を表す。図12に示す12DはY軸上に投影した特徴量の格納結果を表し、特徴量が大きいほどX軸方向の値が大きく示されている。説明の便宜上、特徴量をY軸上に投影しているので、同一のY座標をもつ複数の画素に対する特徴量が加算された状態を示している。12Cに示すように、顔画像12Aに対して特徴量画像12Bを重畳すると、顔画像12Aに映し出された鼻の穴の位置と、特徴量画像12B内に描画された特徴点の位置とが一致する。また、12Cに示すように、顔画像12Aに対して特徴量の格納結果12Dを重畳すると、鼻の穴の位置に対応する位置に特徴点のピークが現れている。顔画像の全体的なコントラストが低い場合でも、12Dに示されているように、鼻の穴に相当する特徴には、比較して大きな特徴量が対応付けられているので、鼻の穴に相当する特徴と他の特徴とは区別されうる。
【0064】
図13に示す13Aは、例えば、図11に示す11Aよりも照射光の強度が変化した顔画像を表す。例えば、顔の一部に影がかかっている状態で撮影した場合が相当する。図13に示す13Bは13Aに対応する特徴量画像を表す。図13に示す13Cは顔画像と特徴量画像と特徴量の格納結果とを重畳させた図を表す。図13に示す13DはY軸上に投影した特徴量の格納結果を表し、特徴量が大きいほどX軸方向の値が大きく示されている。説明の便宜上、特徴量をY軸上に投影しているので、同一のY座標をもつ複数の画素に対する特徴量が加算された状態を示している。13Cに示すように、顔画像13Aに対して特徴量画像13Bを重畳すると、顔画像13Aに映し出された鼻の穴の位置と、特徴量画像13B内に描画された特徴点の位置とが一致する。また、13Cに示すように、顔画像13Aに対して特徴量の格納結果13Dを重畳すると、鼻の穴の位置に対応する位置に特徴点のピークが現れている。顔画像の一部に影などの影響により部分的に輝度が低い領域がある場合でも、13Dに示されているように、鼻の穴に相当する特徴には、他の特徴と比較して大きな特徴量が対応付けられている、鼻の穴に相当する特徴と他の特徴とは区別されうる。
【0065】
[実施例1による効果]
上述してきたように、実施例1に係る画像処理装置300は、顔画像に含まれる各画素の輝度値に基づいて、各画素の輝度値が領域の内側から外側へ向かうに従って大きくなっている可能性が高い領域内に位置する注目画素およびその近傍画素を取得する。続いて、画像処理装置300は、近傍画素によって特定される範囲内で、輝度が最も小さい可能性がある画素の座標に対応付けて所定の特徴量を格納していく。そして、画像処理装置300は、最も高い特徴量に対応付けられた座標を、例えば、顔画像内に映し出された鼻の穴の領域に含まれる画素として検出する。従って、実施例1によれば、画像に含まれるエッジではなく、輝度の変化の状態に基づいて位置の検出を行うので、画像から検出対象を検出する場合の外光や撮影装置の特性の影響による検出精度の低下を防止できる。言い換えれば、上述した図11〜図13にも示すように、顔に照射される光の変化、画像コントラストの低下や画像ボケなどに対して頑健な顔部品の検出を実現できる。
【0066】
また、実施例1では、高速化のために、近傍画素よりも輝度値が大きくない画素に対してのみ、近似関数の算出を行う。このため、実施例1によれば、各画素の輝度値が領域の内側から外側へ向かうに従って大きくなっている可能性のある領域から効率的に処理を行うことができる。
【0067】
また、実施例1では、注目画素と近傍画素との間のサイズを、顔画像内で鼻の穴が有する幅よりも狭く、かつ該幅の半分よりも大きな大きさに設定する。これは、顔画像に映し出された鼻の穴の領域内に注目画素および近傍画素が含まれる場合には、顔画像内に映し出された鼻の穴の中心位置および中心位置の近傍に輝度最小点が決定されやすくなるように考慮したものである。このようにして、実施例1では、検出対象とすべき領域の内に注目画素および近傍画素が含まれる場合に、輝度最小点が重複する可能性を高める。このため、実施例1によれば、鼻の穴の領域内の特定画素に対応する座標の特徴量を大きくできる。
【0068】
また、実施例1では、近傍画素で挟まれるX軸方向およびY軸方向で、近傍画素と注目画素との輝度変動を近似する2次関数をそれぞれ求め、各2次関数が最小値をとる位置に基づいて、輝度値が最も小さいと推定される画素を求める。ここで、近傍画素よりも輝度値の低い注目画素のみを近似関数の算出対象とすれば、近傍画素で挟まれるX座標およびY座標の範囲で輝度値が最も小さいと推定される画素を求められることになる。このため、実施例1によれば、近傍画素で挟まれるX座標およびY座標の範囲内の輝度最小点を簡易に求めることができる。また、画素の輝度値が領域の内側から外側へ向かうに従って大きくなっている領域の範囲を特定せずに、即ち、エッジ抽出などの処理を行わずに、領域内の輝度最小点を求めることができる。
【0069】
また、実施例1では、輝度最小点に対応する画素の座標に対応付けて、2次関数の2次の項の係数値のうち小さい方の係数値を特徴量として格納する。このため、実施例1によれば、例えば、上述した図6に示す顔画像内の溝状の領域については、格納される特徴量を低く抑えることができる。なお、係数値を特徴量として格納する場合に限らず、輝度最小点ごとに所定の度数を1度数ずつ格納してもよい。
【0070】
また、実施例1では、エッジの抽出のように、決めうちの閾値による処理を行わないので、鼻の穴のように、検出対象となる顔部品の特徴点を画像のコントラストが低い場合でも顔画像内に埋もれさせてしまう恐れがなく、顔部品の検出精度を高くできる。
【0071】
なお、実施例1では、各画素の輝度値が領域の内側から外側へ向かうに従って大きくなっている領域内の画素位置を画像から検出することで、例えば、画像が人の顔を撮影したものであれば、鼻の穴を検出できる場合を説明した。これに限定されるものではなく、鼻の穴のような輝度曲面を有する顔部品、例えば、耳の穴などを検出することも可能である。当然ながら、顔部品でなくても、画像上で同様の輝度曲面を呈する領域であれば、検出することが可能である。
【0072】
なお、実施例1では、例えば、図4に示す2次関数C1が最小値をとる位置と、2次関数C2が最小値をとる位置とに基づいて、輝度値が最小となる画素の位置を推定する場合を説明したが、これに限定されるものではない。例えば、図4に示す注目画素P1に対して、近傍画素P2からP3の範囲にある画素列の中で輝度値が最小である画素を取得し、この画素のX座標を取得する。同様に、注目画素P1に対して、近傍画素P4からP5の範囲にある画素列の中で輝度値が最小である画素を取得し、この画素のY座標を取得する。そして、このX座標およびY座標で特定される画素を、4つの近傍画素で特定される領域内で輝度値が最小となる可能性のある画素としてもよい。
【0073】
また、実施例1では、各画素の輝度値が領域の内側から外側へ向かうに従って大きくなっている領域、言い換えれば輝度曲面において緩やかに窪んだ領域内の画素位置を検出する方法を説明した。当然ながら、顔画像における鼻の穴の検出に限らず、各画素の輝度値が領域の内側から外側へ向かうに従って大きくなっている領域であれば、顔以外のものを被写体とした画像であっても適用することができる。また、上述した実施例1と同様の方法で、例えば、各画素の輝度値が領域の内側から外側へ向かうに従って徐々に小さくなっている領域、言い換えれば、輝度曲面において盛り上がった領域内の画素位置を検出することもできる。例えば、カメラ画像内に映し出されたLED(Light Emitting Diode)の光の位置を検出する場合などに利用できる。各車載カメラで撮影された各カメラ画像内のLEDの光の位置を検出できれば、この位置を利用して、例えば、車載カメラのキャリブレーションを実行できる。
【0074】
また、実施例1において、輝度曲面において窪んだ領域内の画素位置を検出するとともに、輝度曲面において盛り上がった領域内の画素位置を合わせて検出するようにしてもよい。例えば、顔画像内に映し出された鼻の頭は、ある画素を中心に外側に向かうに従って輝度が徐々に小さくなっている領域である可能性が高い。よって、例えば、仮に、特徴量画像内の特徴点から鼻の穴の位置の候補となる組合せが複数検出された場合に、輝度が盛り上がった領域の一つを鼻の頭と仮定することで、鼻の穴の位置を特定できる場合がある。
【実施例2】
【0075】
以下、本願の開示する画像処理装置および画像処理プログラムの他の実施形態を説明する。
【0076】
(1)装置構成等
例えば、図2に示した画像処理装置300の機能ブロックの構成は概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。例えば、図2に示した検出部322の抽出部322A、計算部322Bおよび格納部322Cを機能的または物理的に統合してもよい。このように、画像処理装置300の機能ブロックの全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【0077】
(2)画像処理プログラム
また、上述の実施例1にて説明した画像処理装置300により実行される各種の処理は、例えば、車両1に搭載されるECU(Electronic Control Unit)に実装されたマイコンなどの電子機器で所定のプログラムを実行することによって実現することもできる。そこで、以下では、図14を用いて、実施例1にて説明した画像処理装置300により実行される処理と同様の機能を実現する画像処理プログラムを実行する電子機器の一例を説明する。図14は、画像処理プログラムを実行する電子機器の一例を示す図である。
【0078】
図14に示すように、画像処理装置300により実行される各種処理を実現する電子機器400は、各種演算処理を実行するCPU(Central Processing Unit)410を有する。また、図14に示すように、電子機器400は、カメラ画像を取得するためのカメラインターフェース420、ディスプレイとの間で各種データのやり取りを行うためのディスプレイインターフェース430を有する。また、図14に示すように、電子機器400は、ハードウェアアクセラレータとして機能するグラフィックエンジン440を有する。
【0079】
また、図14に示すように、電子機器400は、CPU410により各種処理を実現するためのプログラムやデータ等を記憶するハードディスク装置450と、各種情報を一時記憶するRAM(Random Access Memory)などのメモリ460とを有する。そして、各装置410〜460は、バス470に接続される。
【0080】
なお、CPU410の代わりに、例えば、MPU(Micro Processing Unit)などの電子回路、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの集積回路を用いることもできる。また、メモリ460の代わりに、フラッシュメモリ(flash memory)などの半導体メモリ素子を用いることもできる。
【0081】
ハードディスク装置450には、画像処理装置300の機能と同様の機能を発揮する画像処理プログラム451および画像処理用データ452が記憶されている。なお、この画像処理プログラム451を適宜分散させて、ネットワークを介して通信可能に接続された他のコンピュータの記憶部に記憶させておくこともできる。
【0082】
そして、CPU410が、画像処理プログラム451をハードディスク装置450から読み出してRAM460に展開することにより、図14に示すように、画像処理プログラム451は画像処理プロセス461として機能する。画像処理プロセス461は、ハードディスク装置450から読み出した画像処理用データ452等の各種データを適宜メモリ460上の自身に割当てられた領域に展開し、この展開した各種データに基づいて各種処理を実行する。
【0083】
なお、画像処理プロセス461は、例えば、図2に示した画像処理装置300の制御部320にて実行される処理、例えば、図10に示す処理を含む。
【0084】
なお、画像処理プログラム451については、必ずしも最初からハードディスク装置450に記憶させておく必要はない。例えば、電子機器400が実装されたECUへ対応ドライブを接続可能なフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、電子機器400がこれらから各プログラムを読み出して実行するようにしてもよい。
【0085】
さらには、公衆回線、インターネット、LAN、WANなどを介して、電子機器400が実装されたECUに接続される「他のコンピュータ(またはサーバ)」などに各プログラムを記憶させておく。そして、電子機器400がこれらから各プログラムを読み出して実行するようにしてもよい。
【0086】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【0087】
(付記1)画像内に含まれる、第一の画素と、該第一の画素と互いに1画素以上離れた位置にある複数の画素との輝度値を、該第一の画素を前記画像内で走査させながらそれぞれ取得する取得部と、
走査させながら取得した前記第一の画素と前記複数の画素とのそれぞれの輝度値に基づいて、前記画像内の特徴点を検出する検出部と
を有することを特徴とする画像処理装置。
【0088】
(付記2)前記検出部は、
前記第一の画素であって、前記複数の画素よりも輝度値が大きくない画素を複数抽出する抽出部と、
前記抽出部により抽出された前記複数の第一の画素それぞれについて、前記第一の画素と前記複数の画素との輝度値に基づき特定される画素の位置に、前記第一の画素と前記複数の画素との輝度値に基づき算出される値を対応付けて記憶部に格納する格納部と、
前記格納部により格納された値に基づいて前記特徴点を決定する決定部と
を有することを特徴とする付記1に記載の画像処理装置。
【0089】
(付記3)前記複数の画素のそれぞれは前記第一の画素から等しい画素数離れた位置の画素のうち、前記第一の画素を挟む位置に存在する第1の方向上に位置する2つの画素と、前記第一の画素を挟む位置に存在し、かつ、前記第1の方向と直交する第2の方向上に位置する2つの画素とであり、
前記検出部はさらに、前記第1の方向上に位置する2つの画素と前記第一の画素との輝度値から求められる第1の近似関数と、前記第2の方向上に位置する2つの画素と前記第一の画素との輝度値から求められる第2の近似関数とをそれぞれ計算する計算部を有し、
前記格納部は、前記第1の方向上に位置する2つの画素の位置間で前記第1の近似関数が極値をとる位置と、前記第2の方向上に位置する2つの画素の位置間で前記第2の近似関数が極値をとる位置とに基づいて特定される前記画素の位置に対応付けて、前記第1の近似関数の最大次数の項の係数値および前記第2の近似関数の最大次数の項の係数値のうち小さい方の係数値を前記記憶部に格納し、
前記決定部は、前記記憶部に格納された係数値のうち最も大きい値に対応付けられた前記画素の位置に基づいて、前記特徴点を決定することを特徴とする付記2に記載の画像処理装置。
【0090】
(付記4)前記画像は顔を含んだ画像であり、
前記特徴点に基づいて前記顔の向きを検出し、検出した該顔の向きが適正範囲にあるか否かを判定する判定部と、
前記判定の結果に応じた警告を報知する報知部と
をさらに有することを特徴とする付記1乃至3いずれか1項に記載の画像処理装置。
【0091】
(付記5)コンピュータに、
画像内に含まれる、第一の画素と、該第一の画素と互いに1画素以上離れた位置にある複数の画素との輝度値を、該第一の画素を前記画像内で走査させながらそれぞれ取得し、
前記走査させながら取得した前記第一の画素と前記複数の画素とのそれぞれの輝度値に基づいて、前記画像内の特徴点を検出する
処理を実行させることを特徴とする画像処理プログラム。
【0092】
(付記6)前記コンピュータに、
前記第一の画素であって、前記複数の画素よりも輝度値が大きくない画素を複数抽出し、
前記抽出された前記複数の第一の画素それぞれについて、前記第一の画素と前記複数の画素との輝度値に基づき特定される画素の位置に、前記第一の画素と前記複数の画素との輝度値に基づき算出される値を対応付けて記憶部に格納し、
前記格納部により格納された値に基づいて前記特徴点を決定する
処理をさらに実行させることを特徴とする付記5に記載の画像処理プログラム。
【0093】
(付記7)前記複数の画素のそれぞれは前記第一の画素から等しい画素数離れた位置の画素のうち、前記第一の画素を挟む位置に存在する第1の方向上に位置する2つの画素と、前記第一の画素を挟む位置に存在し、かつ、前記第1の方向と直交する第2の方向上に位置する2つの画素とであり、
前記コンピュータに、
前記第1の方向上に位置する2つの画素と前記第一の画素との輝度値から求められる第1の近似関数と、前記第2の方向上に位置する2つの画素と前記第一の画素との輝度値から求められる第2の近似関数とをそれぞれ計算する処理をさらに実行させ、
前記第1の方向上に位置する2つの画素の位置間で前記第1の近似関数が極値をとる位置と、前記第2の方向上に位置する2つの画素の位置間で前記第2の近似関数が極値をとる位置とに基づいて特定される前記画素の位置に対応付けて、前記第1の近似関数の最大次数の項の係数値および前記第2の近似関数の最大次数の項の係数値のうち小さい方の係数値を前記記憶部に格納し、
前記記憶部に格納された係数値のうち最も大きい値に対応付けられた前記画素の位置に基づいて、前記特徴点を決定する
処理を実行させることを特徴とする付記6に記載の画像処理プログラム。
【符号の説明】
【0094】
1 車両
100 撮影装置
200 出力装置
300 画像処理装置
310 記憶部
311 画像記憶部
312 特徴量記憶部
320 制御部
321 取得部
322 検出部
322A 抽出部
322B 計算部
322C 格納部
322D 決定部
323 判定部
324 報知部
400 電子機器
410 CPU
420 カメラインターフェース
430 ディスプレイインターフェース
440 グラフィックエンジン
450 ハードディスク装置
451 画像処理プログラム
452 画像処理用データ
460 RAM
461 画像処理プロセス

【特許請求の範囲】
【請求項1】
画像内に含まれる、第一の画素と、該第一の画素と互いに1画素以上離れた位置にある複数の画素との輝度値を、該第一の画素を前記画像内で走査させながらそれぞれ取得する取得部と、
走査させながら取得した前記第一の画素と前記複数の画素とのそれぞれの輝度値に基づいて、前記画像内の特徴点を検出する検出部と
を有することを特徴とする画像処理装置。
【請求項2】
前記検出部は、
前記第一の画素であって、前記複数の画素よりも輝度値が大きくない画素を複数抽出する抽出部と、
前記抽出部により抽出された前記複数の第一の画素それぞれについて、前記第一の画素と前記複数の画素との輝度値に基づき特定される画素の位置に、前記第一の画素と前記複数の画素との輝度値に基づき算出される値を対応付けて記憶部に格納する格納部と、
前記格納部により格納された値に基づいて前記特徴点を決定する決定部と
を有することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記複数の画素のそれぞれは前記第一の画素から等しい画素数離れた位置の画素のうち、前記第一の画素を挟む位置に存在する第1の方向上に位置する2つの画素と、前記第一の画素を挟む位置に存在し、かつ、前記第1の方向と直交する第2の方向上に位置する2つの画素とであり、
前記検出部はさらに、前記第1の方向上に位置する2つの画素と前記第一の画素との輝度値から求められる第1の近似関数と、前記第2の方向上に位置する2つの画素と前記第一の画素との輝度値から求められる第2の近似関数とをそれぞれ計算する計算部を有し、
前記格納部は、前記第1の方向上に位置する2つの画素の位置間で前記第1の近似関数が極値をとる位置と、前記第2の方向上に位置する2つの画素の位置間で前記第2の近似関数が極値をとる位置とに基づいて特定される前記画素の位置に対応付けて、前記第1の近似関数の最大次数の項の係数値および前記第2の近似関数の最大次数の項の係数値のうち小さい方の係数値を前記記憶部に格納し、
前記決定部は、前記記憶部に格納された係数値のうち最も大きい値に対応付けられた前記画素の位置に基づいて、前記特徴点を決定することを特徴とする請求項2に記載の画像処理装置。
【請求項4】
前記画像は顔を含んだ画像であり、
前記特徴点に基づいて前記顔の向きを検出し、検出した該顔の向きが適正範囲にあるか否かを判定する判定部と、
前記判定の結果に応じた警告を報知する報知部と
をさらに有することを特徴とする請求項1乃至3のいずれか1項に記載の画像処理装置。
【請求項5】
コンピュータに、
画像内に含まれる、第一の画素と、該第一の画素と互いに1画素以上離れた位置にある複数の画素との輝度値を、該第一の画素を前記画像内で走査させながらそれぞれ取得し、
前記走査させながら取得した前記第一の画素と前記複数の画素とのそれぞれの輝度値に基づいて、前記画像内の特徴点を検出する
処理を実行させることを特徴とする画像処理プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate


【公開番号】特開2012−59108(P2012−59108A)
【公開日】平成24年3月22日(2012.3.22)
【国際特許分類】
【出願番号】特願2010−202904(P2010−202904)
【出願日】平成22年9月10日(2010.9.10)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】