(57)【特許請求の範囲】
【請求項１】
被写体の画像を複数のブロックに区分する分割部と、
ブロック毎に、被写体の３次元データに基づいて、基準位置からブロックに対応する被写体上の領域までの距離および傾きを求める測定部と、
ブロック毎に、前記距離および傾きに応じてブロックの重みを設定する設定部と、
ブロック毎に、前記重みによりブロックに投影される被写体上の領域の大きさの情報を補正する補正部と、
ブロック毎に補正されたそれぞれの大きさの情報に基づいて、前記被写体に関する統計量を演算する演算部と、
を有することを特徴とする画像処理装置。
【請求項２】
前記ブロックはピクセルである
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記演算部は、前記統計量として重心を求める
ことを特徴とする請求項１または請求項２に記載の画像処理装置。
【請求項４】
前記演算部は、前記被写体の画像を２次曲面にフィッティングさせる
ことを特徴とする請求項１から請求項３のいずれか１つに記載の画像処理装置。
【請求項５】
前記被写体はヒトの手のひらであることを特徴とする請求項１から請求項４のいずれか１つに記載の画像処理装置。
【請求項６】
前記分割部は、前記被写体を画像素子に投影した画像を複数のブロックに区分する
ことを特徴とする請求項１から請求項５のいずれか１つに記載の画像処理装置。
【請求項７】
コンピュータに、
被写体の画像を複数のブロックに区分し、
ブロック毎に、被写体の３次元データに基づいて、基準位置からブロックに対応する被写体上の領域までの距離および傾きを求め、
ブロック毎に、前記距離および傾きに応じてブロックの重みを設定し、
ブロック毎に、前記重みによりブロックに投影される被写体上の領域の大きさの情報を補正し、
ブロック毎に補正されたそれぞれの大きさの情報に基づいて、前記被写体に関する統計量を演算する、
処理を実行させることを特徴とする画像処理プログラム。
【請求項８】
コンピュータが、
被写体の画像を複数のブロックに区分し、
ブロック毎に、被写体の３次元データに基づいて、基準位置からブロックに対応する被写体上の領域までの距離および傾きを求め、
ブロック毎に、前記距離および傾きに応じてブロックの重みを設定し、
ブロック毎に、前記重みによりブロックに投影される被写体上の領域の大きさの情報を補正し、
ブロック毎に補正されたそれぞれの大きさの情報に基づいて、前記被写体に関する統計量を演算する、
処理を実行することを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置などに関する。
【背景技術】
【０００２】
画像処理では、被写体の重心などを求める際に、被写体領域に対する平均値演算処理など統計的な演算を行うことがある。例えば、手のひら静脈認証の場合、手のひら静脈認証を行う画像処理装置は、被写体である手のひらの各点の座標の平均値を算出し、重心を特定する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−２３８２０５号公報
【特許文献２】特開２００７−２３３９８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、画像処理における被写体が傾いた場合に、被写体領域に対する統計的な演算を正確に行うことができないという問題がある。例えば、手のひら静脈認証の場合を例にすると、認証特徴である被写体領域に対する画像を処理する際に、統計的な演算を正確に行うことができないという問題について説明する。
【０００５】
図１１は、被写体が傾いた場合の影響を説明する図である。図１１に示すように、カメラが、被写体を撮像素子に投影する。被写体が傾いている場合、撮像素子の１ピクセルに投影される被写体の撮影面積は均一ではない。すなわち、ピクセルＰＢに投影される被写体の領域Ｂは、ピクセルＰＡに投影される被写体の領域Ａより撮影面積が大きい。つまり、ピクセルＰＢには、領域Ａよりも長い領域Ｂが投影されている。ピクセルＰＢの情報量は、ピクセルＰＡの情報量より過小に評価されているともいえる。
【０００６】
このような場合に、例えば、画像処理装置が、以下の式（１）を用いて、重心座標ＸＧを計算する。なお、Ｎはピクセルの総数であり、ｘｉはｉ番目のピクセルの座標である。つまり、重心演算においては、全てのピクセルが均等な重み１．０で演算されている。
【数１】
0006699136.tif 000002
【０００７】
すると、領域Ｂの情報量が領域Ａの情報量より過小に評価されることになる。逆に領域Ａの情報量が領域Ｂの情報量より過大に評価されることになる。この結果、重心座標ＸＧは、領域Ａの方向に引きずられ、正確に算出されない。
【０００８】
なお、上記課題は、画像処理における被写体が傾いた場合に限定されず、被写体が曲がる場合にも同様に生じる課題である。
【０００９】
本発明は、１つの側面では、画像処理における被写体領域に対する統計的な演算を正確に行うことを目的とする。
【課題を解決するための手段】
【００１０】
１つの態様では、画像処理装置は、被写体の画像を複数のブロックに区分する分割部と、基準位置から各ブロックに対応する被写体までの距離を求める測定部と、前記距離に応じて各ブロックの重みを設定する設定部と、前記重みにより各ブロックに投影される被写体の大きさに関する情報を補正する補正部と、前記補正された被写体の大きさに関する情報に基づいて、前記被写体の姿勢を演算する演算部と、を有する。
【発明の効果】
【００１１】
１実施態様によれば、画像処理における被写体領域に対する統計的な演算を正確に行うことができる。
【図面の簡単な説明】
【００１２】
【図１】図１は、実施例１に係る画像処理装置の構成を示す機能ブロック図である。
【図２】図２は、実施例１に係る重心座標の第１の計算処理を説明する図である。
【図３】図３は、実施例１に係る重心座標の第２の計算処理を説明する図である。
【図４】図４は、実施例１に係る重み付きの２次曲面フィッティング処理を説明する図である。
【図５】図５は、実施例１に係る重心計算処理のフローチャートを示す図である。
【図６】図６は、実施例２に係る画像処理装置の構成を示す機能ブロック図である。
【図７】図７は、ジェスチャ認証で用いられる重心座標の計算処理を説明する図である。
【図８】図８は、実施例３に係る画像処理装置の構成を示す機能ブロック図である。
【図９】図９は、実施例３に係る手のひら静脈認証処理のフローチャートを示す図である。
【図１０】図１０は、画像処理プログラムを実行するコンピュータの一例を示す図である。
【図１１】図１１は、被写体が傾いた場合の影響を説明する図である。
【発明を実施するための形態】
【００１３】
以下に、本願の開示する画像処理装置、画像処理プログラムおよび画像処理方法の実施例を図面に基づいて詳細に説明する。なお、本発明は、実施例により限定されるものではない。
【実施例１】
【００１４】
図１は、実施例１に係る画像処理装置の構成を示す機能ブロック図である。図１に示す画像処理装置１は、被写体を撮影した画像から重心を求める際に、画像処理の単位（例えばピクセル）に投影される情報量を基準として重み付け処理を適用することにより重心の計算精度を高める。
【００１５】
画像処理装置１は、全体制御部１１、撮影部１２、記憶部１３、３次元形状取得部１４および画像演算部１５を有する。
【００１６】
全体制御部１１は、画像処理装置１の全体を制御する。
【００１７】
撮影部１２は、被写体における画像の撮影処理を実行する。撮影部１２は、光源１２１および撮像素子１２２を含む。光源１２１は、光を照射し、その結果、照射した光は、被写体に当たる。撮像素子１２２は、レンズから入ってきた光を電気信号として蓄える素子であり、複数のピクセルで表わされる。すなわち、撮像素子１２２は、被写体を撮影した画像を複数のピクセルに区分する。なお、撮影部１２は、一例として、カメラが挙げられる。撮像素子１２２には、一例として、ＣＣＤ（Charge-Coupled  Device）素子やＣＭＯＳ（Complementary  Metal  Oxide  Semiconductor）素子が挙げられる。
【００１８】
記憶部１３は、例えば、ＲＡＭ、フラッシュメモリ（Flash  Memory）などの半導体メモリ素子、または、ハードディスク、光ディスクなどの記憶装置である。記憶部１３は、例えば、画像データを記憶する。
【００１９】
３次元形状取得部１４は、被写体の３次元形状データを取得する。例えば、３次元形状取得部１４は、ＳＦＳ（Shape  From  Shading）技術を適用することで３次元形状データであるＳＦＳデータを取得する。ＳＦＳ技術とは、被写体に光を当てて撮影した画像の輝度値から物体の３次元形状を推定する技術である。推定された３次元形状データは、ＳＦＳデータと呼ばれる。一例として、手のひら静脈センサでは、近赤外照明の反射光に対してＳＦＳ技術が適用される。なお、３次元形状取得部１４は、ＳＦＳ技術を適用することで３次元形状データを取得すると説明したが、ＳＦＳ技術以外の技術であっても３次元形状データを取得できれば、これに限定されない。
【００２０】
画像演算部１５は、３次元形状取得部１４によって取得された３次元形状データを用いて演算処理を実行する。画像演算部１５は、２次曲面フィッティング部１５１、重み計算部１５２および重心計算部１５３を有する。
【００２１】
２次曲面フィッティング部１５１は、被写体の３次元形状データから被写体を２次曲面へフィッティングする。例えば、２次曲面フィッティング部１５１は、３次元形状取得部１４によって取得された３次元形状データから被写体の高さを取得する。そして、２次曲面フィッティング部１５１は、被写体の高さに基づいて、被写体を２次曲面にフィッティングする。
【００２２】
重み計算部１５２は、被写体の３次元形状データを用いて、画像上の１ピクセルに対応する被写体上の面積を計算し、計算した面積に応じた重みを計算する。重み計算部１５２は、以下の式（２）を用いて、面積に応じた重みを計算する。なお、Ｎはピクセルの総数であり、Ｓｉはｉ番目のピクセルに対応する被写体上の面積である。ｓｉはｉ番目のピクセルに対応する被写体上の面積に応じた重みであり、Ｓｉを正規化した値である。
【数２】
0006699136.tif 000003
【００２３】
重心計算部１５３は、被写体上の面積に応じた重みを用いて、被写体の重心座標を計算する。重心計算部１５３は、以下の式（３）を用いて、重心座標ＸＧを計算する。すなわち、重心計算部１５３は、重みにより各ピクセルに投影される被写体の大きさに関する情報を補正する。なお、Ｎはピクセルの総数であり、ｘｉはｉ番目のピクセルの座標である。ｓｉはｉ番目のピクセルに対応する被写体上の面積に応じた重みであり、式（２）によって求められた値である。
【数３】
0006699136.tif 000004
このように被写体上の面積に応じた重みを用いた重心座標の計算方法を、説明の便宜上、重心座標の第１の計算方法という。
【００２４】
ここで、実施例１に係る重心座標の第１の計算処理を、図２を参照して説明する。図２は、実施例１に係る重心座標の第１の計算処理を説明する図である。図２に示すように、被写体が傾いている場合、撮像素子１２２の１ピクセルに投影される被写体の撮影面積は均一ではない。すなわち、ピクセルＰＢに投影される被写体の領域Ｂは、ピクセルＰＡに投影される被写体の領域Ａより撮影面積が大きい。つまり、ピクセルＰＢには、領域Ａよりも長い領域Ｂが投影されている。言い換えれば、ピクセルＰＢの情報量は、ピクセルＰＡの情報量より過小に評価されている。
【００２５】
そこで、重み計算部１５２は、被写体の３次元形状データを用いて、画像上の１ピクセルに対応する被写体上の面積を計算する。ここでは、ピクセルＰＡに対応する被写体上の面積はＳｉである。ピクセルＰＢに対応する被写体上の面積はＳｊである。Ｓｉは、Ｓｊより小さい。重み計算部１５２は、式（２）を用いて、面積に応じた重みを計算する。ここでは、Ｓｉを正規化した重みはｓｉである。Ｓｊを正規化した重みはｓｊである。
【００２６】
そして、重心計算部１５３は、ピクセルの座標に当該ピクセルに対応する被写体上の面積に応じた重みを乗じた値を用いて、被写体の重心座標を計算する。これは、領域Ｂの面積Ｓｊに対応するピクセルＰＢの情報量を領域Ａの面積Ｓｉに対応するピクセルＰＡの情報量と均一にしたうえで、被写体の重心座標を計算するためである。これにより、重心計算部１５３は、被写体領域に対する重心座標を正確に演算することができる。
【００２７】
図１に戻って、重み計算部１５２は、１ピクセルに投影される被写体の撮影面積に応じた重みを計算すると説明したが、これに限定されない。重み計算部１５２は、基準位置から１ピクセルに投影される被写体までの距離および傾きに応じた重みを計算しても良い。すなわち、重み計算部１５２は、被写体の３次元形状データを用いて、基準位置から各ピクセルに対応する被写体までの距離および傾きを計算する。重み計算部１５２は、以下の式（４）および式（５）を用いて、距離および傾きに応じた重みを計算する。なお、基準位置とは、例えば撮影部１２に含まれるレンズであるが、これに限定されない。Ｎはピクセルの総数であり、Ｚｉはｉ番目のピクセルに対応する被写体上の点の高さである。ｎｉはｉ番目のピクセルに対応する被写体上の点における単位法線ベクトルである。ｅｚはＺ軸方向の単位法線ベクトルである。Ｗｉはｉ番目のピクセルに対応する被写体上の点の高さおよび傾きから決定される値である。ｗｉはｉ番目のピクセルに対応する被写体上の高さおよび傾きに応じた重みであり、Ｗｉを正規化した値である。
【数４】
0006699136.tif 000005
【数５】
0006699136.tif 000006
【００２８】
重み計算部１５２によって距離および傾きに応じた重みが計算される場合には、重心計算部１５３は、距離および傾きに応じた重みを用いて、被写体の重心座標を計算する。重心計算部１５３は、以下の式（６）を用いて、重心座標ＸＧを計算する。すなわち、重心計算部１５３は、重みにより各ピクセルに投影される被写体の大きさに関する情報を補正する。なお、Ｎはピクセルの総数であり、ｘｉはｉ番目のピクセルの座標である。ｗｉはｉ番目のピクセルに対応する被写体上の高さおよび傾きに応じた重みであり、式（５）によって求められた値である。
【数６】
0006699136.tif 000007
このように距離に応じた重みを用いた重心座標の計算方法を、説明の便宜上、重心座標の第２の計算方法という。
【００２９】
ここで、実施例１に係る重心座標の第２の計算処理を、図３を参照して説明する。図３は、実施例１に係る重心座標の第２の計算処理を説明する図である。図３に示すように、被写体が傾いている場合、基準位置（例えばレンズ）から１ピクセルに投影される被写体までの高さは均一ではない。このため、領域の高さが高い程、ピクセルに投影される撮影面積が大きくなる。ここでは、被写体の領域Ｂが被写体の領域Ａより高い位置にあるが、ピクセルＰＢに投影される被写体の領域ＢはピクセルＰＡに投影される被写体の領域Ａより撮影面積が大きくなる。つまり、ピクセルＰＢには、領域Ａよりも長い領域Ｂが投影されることとなる。言い換えれば、ピクセルＰＢに含まれる領域Ｂの情報量は、ピクセルＰＡに含まれる領域Ａの情報量より過小に評価されている。そこで、重み計算部１５２は、式（４）に基づいて、１ピクセルに投影される領域の高さＺｉが高い程Ｗｉを大きくするべく補完する。
【００３０】
加えて、傾きの影響は、Ｚ軸方向の単位法線ベクトルｅｚと注目点における単位法線ベクトルとの内積から計算される（式（４）参照）。ここでは、領域Ａにおける単位法線ベクトルはｎｉであり、領域Ｂにおける単位法線ベクトルはｎｊである。かかる内積は、注目点が真下を向いている場合は１．０であるが、被写体が傾く程小さくなる。被写体が傾いている場合、カメラ上では該当領域が小さく撮影されてしまう。つまり、被写体が傾いている場合に、注目点を含む所定の領域は、被写体が傾いていない場合と比べて、１ピクセルに投影される面積が大きくなり、ピクセル単位で演算を行うと結果として過小評価されてしまう。そこで、重み計算部１５２は、式（４）に基づいて、被写体が傾く程Ｗｉを大きくするべく補完する。
【００３１】
そして、重み計算部１５２は、式（５）に補完したＷｉを用いて、距離および傾きに応じた重みを計算する。そして、重心計算部１５３は、ピクセルの座標に、当該ピクセルに対応する重みを乗じた値を用いて、被写体の重心座標を計算する。これは、領域Ｂの距離および傾きに対応するピクセルＰＢの情報量を領域Ａの距離および傾きに対応するピクセルＰＡの情報量と均一にしたうえで、被写体の重心座標を計算するためである。これにより、重心計算部１５３は、被写体領域に対する重心演算を正確に行うことができる。
【００３２】
なお、２次曲面フィッティング部１５１は、被写体の３次元形状データから被写体を２次曲面へフィッティングすると説明した。しかしながら、２次曲面フィッティング部１５１は、これに限定されず、フィッティングする際、第２の計算処理と同様な処理で被写体の物理的な長さに応じた重み付けを行っても良い。この際、２次曲面フィッティング部１５１は、被写体の傾きの項目、すなわち、式（４）の傾きの項目ｎｉ・ｅｚを無視することができる。これは、被写体が略平面に近い場合に適用可能である。かかる場合には、２次曲面フィッティング部１５１は、式（４）の代わりに被写体上の点の高さＺｉをＷｉとし、式（５）を用いて各点ｘｉの重みを計算する。２次曲面フィッティング部１５１は、以下の一例のように、各点ｘｉの重みを用いて、２次曲面フィッティングする。なお、重みづけとして、Ｗｉ´=Ｗｉ×Ｗｉという係数を用いる構成としても良い。式（４）は物理的な長さに応じた重み補正であるが、Ｗｉ´は面積に応じた重みづけである。
【００３３】
一例として、２次曲面フィッティング部１５１は、２次曲面の方程式を式（７）のように定義する。
【数７】
0006699136.tif 000008
【００３４】
２次曲面フィッティング部１５１は、定義した２次曲面の方程式と、３次元形状データからフィッティングされた２次曲面の測定データｚと、の二乗誤差を最小にする係数Ａを求める。求める係数Ａは、（ａ，ｂ，ｃ，ｄ，ｅ，ｆ）Ｔである。すなわち、２次曲面フィッティング部１５１は、以下の式（８）で示される係数Ａを求める。なお、Ｎはピクセルの総数であり、ｗｋはｋ番目のピクセルに対応する被写体上の高さに応じた重みである。
【数８】
0006699136.tif 000009
【００３５】
係数Ａのベクトルは、以下の式（９）のように求められる。なお、行列Ｚは、測定データ（ｚ１，ｚ２，・・・，ｚＮ）Ｔである。行列Ｗは、各点の重みを対角に設定した対角行列であり、式（１０）で示される。行列Ｘは、式（１１）で示され、Ｎ個のピクセルの座標で表わされる。
【数９】
0006699136.tif 000010
【００３６】
【数１０】
0006699136.tif 000011
【００３７】
【数１１】
0006699136.tif 000012
【００３８】
２次曲面フィッティング部１５１は、求められた係数Ａの各項目の値を式（７）の対応する各項目に代入して、重み付きの２次曲面を計算する。ここで、実施例１に係る重み付きの２次曲面フィッティング処理を、図４を参照して説明する。図４は、実施例１に係る重み付きの２次曲面フィッティング処理を説明する図である。図４に示すように、２次曲面フィッティング部１５１は、被写体のＳＦＳデータから被写体の高さＺｉ（ｉは、ピクセル）を取得する。２次曲面フィッティング部１５１は、被写体の高さＺｉに基づいて、被写体を２次曲面へフィッティングする。２次曲面フィッティング部１５１は、フィッティングする際に、高さＺｉに応じた重みを用いて、被写体を重み付きの２次曲面へフィッティングする。これにより、２次曲面フィッティング部１５１は、被写体領域に対する２次曲面を正確に求めることができる。
【００３９】
［重心計算処理のフローチャート］
図５は、実施例１に係る重心計算処理のフローチャートを示す図である。なお、図５では、３次元形状取得部１４は、被写体の３次元形状データとしてＳＦＳデータを取得するものとする。また、重み計算部１５２および重心計算部１５３は、第２の計算処理を用いて重心座標を計算するものとする。また、Ｎは、ピクセルの総数であるものとする。
【００４０】
図５に示すように、２次曲面フィッティング部１５１は、３次元形状取得部１４によって取得されたＳＦＳデータから被写体の高さ（距離）Ｚｉ（ｉ＝１〜Ｎ）を取得する（ステップＳ１１）。例えば、２次曲面フィッティング部１５１は、被写体のＳＦＳを用いて、基準位置から各ピクセルに対応する被写体までの高さＺｉを計算する。
【００４１】
２次曲面フィッティング部１５１は、取得されたＳＦＳデータを２次曲面にフィッティングする（ステップＳ１２）。
【００４２】
重み計算部１５２は、フィッティングされた２次曲面の方程式から、ｉ番目の点に対応する被写体上の点における単位法線ベクトルｎｉを計算する（ステップＳ１３）。なお、Ｚ軸方向の単位法線ベクトルｅｚは、（０，０，１）である。
【００４３】
そして、重み計算部１５２は、各点の重みｗｉを計算する（ステップＳ１４）。例えば、重み計算部１５２は、各ピクセルに対応する被写体の高さおよび傾きに応じた重みを計算する。重み計算部１５２は、式（４）および式（５）を用いて各ピクセルに対応する重みを計算する。
【００４４】
そして、重心計算部１５３は、重みｗｉを用いて重心座標を計算する（ステップＳ１５）。例えば、重心計算部１５３は、式（６）を用いて被写体の重心座標を計算する。なお、この後、重心計算部１５３は、計算された重心座標が撮影領域の中心から大きくずれている場合には、被写体の位置を誘導するようにしても良い。
【００４５】
このようにして、上記実施例１によれば、画像処理装置１は、被写体の画像を複数のピクセルに区分する。画像処理装置１は、基準位置から各ピクセルに対応する被写体までの距離を求める。画像処理装置１は、距離に応じて各ピクセルの重みを設定する。画像処理装置１は、重みにより各ピクセルに投影される被写体の大きさに関する情報を補正する。画像処理装置１は、補正された被写体の大きさに関する情報に基づいて、被写体の姿勢を演算する。かかる構成によれば、画像処理装置１は、被写体の姿勢を正確に把握することができる。
【００４６】
また、上記実施例１によれば、画像処理装置１は、補正された被写体の大きさに関する情報に基づいて、被写体の重心を演算する。かかる構成によれば、画像処理装置１は、被写体の重心を正確に演算することができる。
【００４７】
また、上記実施例１によれば、画像処理装置１は、補正された被写体の大きさに関する情報に基づいて、被写体の画像を２次曲面にフィッティングさせる。かかる構成によれば、画像処理装置１は、被写体の画像を２次曲面に正確にフィッティングさせることができる。
【実施例２】
【００４８】
ところで、実施例１の画像処理装置１は、被写体の３次元形状データを用いて、画像上の１ピクセルに対応する被写体上の面積を計算し、計算した面積に応じた重みを計算する。そして、画像処理装置１は、面積に応じた重みを用いて、被写体の重心座標を計算する。すなわち、画像処理装置１は、重心座標の第１の計算方法を用いて、重心座標を計算することについて説明した。また、画像処理装置１は、基準位置から１ピクセルに投影される被写体までの距離および傾きを計算し、計算した距離および傾きに応じた重みを計算する。そして、画像処理装置１は、距離および傾きに応じた重みを用いて、被写体の重心座標を計算する。すなわち、画像処理装置１は、重心座標の第２の計算方法を用いて、重心座標を計算することについて説明した。実施例２では、かかる重心座標の計算方法を、画像処理装置１がジェスチャ認証に用いる場合について説明する。
【００４９】
［実施例２に係る画像処理装置の構成］
図６は、実施例２に係る画像処理装置の構成を示す機能ブロック図である。なお、図１に示す画像処理装置１と同一の構成については同一符号を付すことで、その重複する構成および動作の説明については省略する。実施例１と実施例２とが異なるところは、ジェスチャ認証部２１を追加した点にある。
【００５０】
ジェスチャ認証部２１は、画像演算部１５によって算出された被写体の重心座標を用いて、ジェスチャを認証する。
【００５１】
［重心座標の計算処理の用途］
ここで、ジェスチャ認証で用いられる重心座標の計算処理を、図７を参照して説明する。図７は、ジェスチャ認証で用いられる重心座標の計算処理を説明する図である。なお、図７では、重心座標を第１の計算方法を用いて計算する場合を説明する。
【００５２】
図７に示すように、撮影部１２で撮影する撮影領域が示されている。撮影領域内の中央の領域が被写体である。ここでは、被写体は指であるとする。
【００５３】
画像演算部１５は、被写体の重心座標を以下のように計算する。ここでは、撮像素子１２２のピクセルＰＣおよびピクセルＰＤを例にとって説明する。ピクセルＰＣには、指の中央に近く、カメラに正対している領域が投影されている。ピクセルＰＤには、指の側面であって斜めの領域が投影されている。このため、ピクセルＰＤに投影される領域は、ピクセルＰＣに投影される領域より撮影面積が大きい。つまり、ピクセルＰＤの情報量は、ピクセルＰＣの情報量より過小に評価されている。そこで、重み計算部１５２は、指の３次元形状データを用いて、画像上の１ピクセルに対応する指上の面積を計算し、式（２）を用いて、面積に応じた重みを計算する。そして、重心計算部１５３は、式（３）を用いて、面積に応じた重みと、ピクセルの座標とを式（３）に代入して、被写体の重心座標を計算する。
【００５４】
なお、重み計算部１５２が、被写体の３次元形状データを用いて、１ピクセルに対応する被写体上の面積を計算すると説明した。しかしながら、３次元形状取得部１４が、３次元形状から、１ピクセルに対応する被写体上の面積を計測しても良い。また、３次元形状取得部１４は、画像処理装置１に内蔵または外付けされた３次元形状計測装置であっても良い。３次元形状取得部１４が３次元形状計測装置である場合には、３次元形状取得部１４は、１ピクセルに対応する被写体上の面積を高速に算出することが可能となる。
【実施例３】
【００５５】
ところで、実施例１の画像処理装置１は、被写体の３次元形状データを用いて、画像上の１ピクセルに対応する被写体上の面積を計算し、計算した面積に応じた重みを計算する。そして、画像処理装置１は、面積に応じた重みを用いて、被写体の重心座標を計算する。すなわち、画像処理装置１は、重心座標の第１の計算方法を用いて、重心座標を計算することについて説明した。また、画像処理装置１は、基準位置から１ピクセルに投影される被写体までの距離および傾きを計算し、計算した距離および傾きに応じた重みを計算する。そして、画像処理装置１は、距離および傾きに応じた重みを用いて、被写体の重心座標を計算する。すなわち、画像処理装置１は、重心座標の第２の計算方法を用いて、重心座標を計算することについて説明した。実施例３は、かかる重心座標の第２の計算方法を、画像処理装置１が手のひら静脈認証に用いる場合について説明する。
【００５６】
［実施例３に係る画像処理装置の構成］
図８は、実施例３に係る画像処理装置の構成を示す機能ブロック図である。なお、図１に示す画像処理装置１と同一の構成については同一符号を付すことで、その重複する構成および動作の説明については省略する。実施例１と実施例３とが異なるところは、データベース部３１、特徴抽出部３２および照合処理部３３を追加した点にある。また、実施例１と実施例３とが異なるところは、画像演算部１５に曲率計算部１５４を追加した点にある。実施例１と実施例３とが異なるところは、重み計算部１５２を重み計算部１５２Ａに変更した点にある。なお、２次曲面フィッティング部１５１は、重み付けの２次曲面フィッティングであっても、重み付けでない２次曲面フィッティングであっても良いが、重み付けの２次曲面フィッティングである場合を説明する。
【００５７】
データベース部３１は、手のひら認証に用いられるデータを記憶する。一例として、データベース部３１は、登録テンプレートを記憶する。登録テンプレートには、ユーザごとの手のひらの特徴データが登録されている。
【００５８】
特徴抽出部３２は、撮影画像から手のひら認証に用いられる手のひらの特徴データを抽出する。
【００５９】
照合処理部３３は、特徴抽出部３２によって抽出された特徴データと、登録テンプレートに登録された特徴データとを照合し、類似度を出力する。
【００６０】
重み計算部１５２Ａは、２次曲面フィッティング部１５１によってフィッティングされた２次曲面の方程式から被写体上における法線ベクトルを計算する。すなわち、重み計算部１５２Ａは、式（４）のｎｉを計算する。ｎｉは、ｉ番目のピクセルに対応する被写体上の点における単位法線ベクトルである。
【００６１】
一例として、フィッティングされた２次曲面の方程式を式（１２）で表す。
【数１２】
0006699136.tif 000013
【００６２】
そして、２次曲面上の点Ｐを２変数ｕ，ｖで表すとすると、点Ｐにおける法線ベクトルｎは、式（１３）のように求められる。なお、Ｐｕは変数ｕによる偏微分であり、Ｐｖは変数ｖによる偏微分である。
【数１３】
0006699136.tif 000014
【００６３】
ここで、２変数ｕ，ｖを曲面上のＸ座標、Ｙ座標とする。すると、（Ｘ，Ｙ，Ｚ）は、２次曲面上の点であり、Ｚは式（１２）で表されているので、以下の式（１４）で表わされる。
【数１４】
0006699136.tif 000015
【００６４】
点（Ｘ，Ｙ，Ｚ）におけるＰｕ，Ｐｖは、式（１５）のように求められる。
【数１５】
0006699136.tif 000016
【００６５】
重み計算部１５２Ａは、式（１３）および式（１５）を用いると、２次曲面上の各点Ｐ（Ｘ，Ｙ，Ｚ）上の法線ベクトルｎを式（１６）のように計算する。
【数１６】
0006699136.tif 000017
【００６６】
そして、重み計算部１５２Ａは、求められた各点Ｐ上の法線ベクトルおよび予め定められたＺ軸方向の単位法線ベクトルについて、式（４）および式（５）を用いて、距離および傾きに応じた重みを計算する。
【００６７】
図８に戻って、曲率計算部１５４は、２次曲面フィッティング部１５１によってフィッティングされた２次曲面の方程式から被写体上における曲率を計算する。
【００６８】
一例として、２次曲面の方程式を式（１２）で表すとする。ここで、２変数ｕ，ｖを曲面上のＸ座標、Ｙ座標とする。すると、（Ｘ，Ｙ，Ｚ）は、２次曲面上の点であることから、式（１４）で表わされる。そして、３次元曲面において、点Ｐにごく近い点Ｑとの距離は、以下の式（１７）で表わされる。なお、式（１７）のＥ，Ｆ，Ｇは、以下の式（１８）で表わされる。
【数１７】
0006699136.tif 000018
【数１８】
0006699136.tif 000019
【００６９】
２次元曲面近似においては、Ｅ，Ｆ，Ｇは、それぞれ以下の式（１９）で表わされる。
【数１９】
0006699136.tif 000020
【００７０】
このような前提の下、曲率計算部１５４は、２次曲面上のガウス曲率および平均曲率を求めることとする。まず、曲率計算部１５４は、式（２０）で示される値Ｌ，Ｍ，Ｎを求める。
【数２０】
0006699136.tif 000021
【００７１】
さらに、２次曲面上では、Ｐｕｕ，Ｐｕｖ，Ｐｖｖは、以下の式（２１）で求められる。
【数２１】
0006699136.tif 000022
【００７２】
そこで、曲率計算部１５４は、求められたＰｕｕ，Ｐｕｖ，Ｐｖｖを式（２０）に代入して、Ｌ，Ｍ，Ｎを以下の式（２２）のように求める。
【数２２】
0006699136.tif 000023
【００７３】
曲率計算部１５４は、式（２２）のＬ，Ｍ，Ｎを用いて、ガウス曲率Ｋ（＝ｋ１・ｋ２）および平均曲率Ｈ（＝（ｋ１＋ｋ２）／２）を、以下の式（２３）のように求める。なお、ｋ１、ｋ２は、主曲率を示す。
【数２３】
0006699136.tif 000024
【００７４】
すなわち、曲率計算部１５４は、各点におけるガウス曲率Ｋｉを求めて、以下の式（２４）のようにガウス曲率の平均値ＸＫを求める。なお、重みｗｉは、重み計算部１５２Ａによって求められる重みであっても良い。
【数２４】
0006699136.tif 000025
【００７５】
加えて、曲率計算部１５４は、ガウス曲率の平均値ＸＫが所定の閾値よりも大きい場合には、誘導処理を行う。これは、手のひらが丸まっていると推定されるからである。なお、所定の閾値は、手のひらが丸まっていると推定される値であれば良い。かかる場合には、曲率計算部１５４は、手のひらを開くように誘導する。例えば、曲率計算部１５４は、「手のひらを開いてかざしてください」というメッセージを出力する。なお、曲率計算部１５４は、ガウス曲率の平均値ＸＫが所定の閾値よりも小さい場合には、認証処理を行う。これは、手のひらが開いていると推定されるからである。
【００７６】
［手のひら静脈認証処理のフローチャート］
図９は、実施例３に係る手のひら静脈認証処理のフローチャートを示す図である。なお、図９では、３次元形状取得部１４は、被写体の３次元形状データとしてＳＦＳデータを取得するものとする。また、Ｎは、ピクセルの総数であるものとする。
【００７７】
図９に示すように、２次曲面フィッティング部１５１は、３次元形状取得部１４によって取得されたＳＦＳデータから被写体の高さ（距離）Ｚｉ（ｉ＝１〜Ｎ）を取得する（ステップＳ３１）。例えば、２次曲面フィッティング部１５１は、被写体のＳＦＳを用いて、基準位置から各ピクセルに対応する被写体までの高さＺｉを計算する。
【００７８】
２次曲面フィッティング部１５１は、取得されたＳＦＳデータを２次曲面にフィッティングする（ステップＳ３２）。例えば、２次曲面フィッティング部１５１は、被写体の高さを重みとした重み付けの２次曲面フィッティングを行う。
【００７９】
続いて、曲率計算部１５４は、２次曲面フィッティング部１５１によってフィッティングされた２次曲面の方程式から、ピクセルのｉ番目の点に対応する被写体上の各点における曲率Ｋｉを計算する（ステップＳ３３）。
【００８０】
重み計算部１５２Ａは、各点における重みｗｉを計算する（ステップＳ３４）。例えば、重み計算部１５２Ａは、２次曲面フィッティング部１５１によってフィッティングされた２次曲面から２次曲面上の各点の法線ベクトルを算出する。重み計算部１５２Ａは、算出された各点の法線ベクトルおよび予め定められたＺ軸方向の単位法線ベクトルについて、式（４）および式（５）を用いて重みを計算する。
【００８１】
そして、重心計算部１５３は、各点における重みｗｉを用いて重心座標を計算する（ステップＳ３５）。例えば、重心計算部１５３は、式（６）を用いて被写体の重心座標を計算する。
【００８２】
続いて、曲率計算部１５４は、ｗｉを重みとして各点の曲率Ｋｉから曲率平均Ｋを計算する（ステップＳ３６）。例えば、曲率計算部１５４は、ｗｉおよび曲率Ｋｉについて、式（２４）を用いて、曲率平均Ｋを計算する。
【００８３】
続いて、重心計算部１５３は、計算された重心座標が撮影画像の中心から閾値αの範囲外であるか否かを判定する（ステップＳ３７）。重心座標が撮影画像の中心から閾値αの範囲外であると判定した場合には（ステップＳ３７；Ｙｅｓ）、重心計算部１５３は、誘導処理を行うべく、ステップＳ３９に移行する。これは、撮影領域の中心から大きくずれていると判断したためである。なお、閾値αは、所定の座標と近似した座標であると推定される値であれば良い。
【００８４】
一方、重心座標が撮影画像の中心から閾値αの範囲内であると判定した場合には（ステップＳ３７；Ｎｏ）、曲率計算部１５４は、曲率平均Ｋが閾値Ｔｈより大きいか否かを判定する（ステップＳ３８）。曲率平均Ｋが閾値Ｔｈより大きいと判定した場合には（ステップＳ３８；Ｙｅｓ）、曲率計算部１５４は、誘導処理を行うべく、ステップＳ３９に移行する。これは、手のひらが丸まっていると判断したためである。
【００８５】
ステップＳ３９において、重心計算部１５３または曲率計算部１５４は、誘導処理を行う（ステップＳ３９）。そして、一旦、手のひら静脈認証処理は終了する。
【００８６】
一方、曲率平均Ｋが閾値Ｔｈより大きくないと判定した場合には（ステップＳ３８；Ｎｏ）、曲率計算部１５４は、特徴抽出部３２および照合処理部３３に認証処理を開始させる（ステップＳ４０）。そして認証処理が終了すると、手のひら静脈認証処理は終了する。
【００８７】
このようにして、上記実施例３によれば、画像処理装置１Ｂは、基準位置から各ピクセルに対応する手のひらまでの距離および傾きを求める。画像処理装置１Ｂは、距離および傾きに応じて各ピクセルの重みを設定する。さらに、画像処理装置１Ｂは、手のひらの３次元形状をもとに、各ピクセルに対応する手のひらの各曲率を演算する。画像処理装置１Ｂは、重みを用いて曲率の平均値を演算する。画像処理装置１は、重みを用いて重心座標を演算する。かかる構成によれば、画像処理装置１Ｂは、演算された重心座標を用いることで、手のひらを認証に適した位置に誘導することができ、手のひら静脈認証を正確に行うことができる。画像処理装置１Ｂは、演算された曲率の平均値を用いることで、手のひらを認証に適した姿勢に誘導することができ、さらに、手のひら静脈認証を正確に行うことができる。特に、手のひら静脈認証の場合には、撮影部１２と手のひらとの間の距離が例えば５ｃｍ程度と近いので、手のひらの傾きの影響が大きくなる。すなわち、手のひらの傾きに応じて、ピクセルに撮影される手のひらの情報量に不均衡が生じる。したがって、画像処理装置１Ｂは、このような不均衡を補正することで、手のひら静脈認証を正確に行うことが可能となる。
【００８８】
なお、画像処理装置１Ｂは、手のひら静脈認証を用途の一例としたが、これに限定されない。画像処理装置１Ｂは、手のひら静脈認証以外にも虹彩認証などの生体認証を用途に適用可能である。
【００８９】
［その他］
なお、図示した画像処理装置１の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、画像処理装置１の分散・統合の具体的態様は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、重み計算部１５２と重心計算部１５３とを１つの部として統合しても良い。また、２次曲面フィッティング部１５１を、被写体を２次曲面にフィッティングする機能部と、フィッティングした２次曲面から高さを計算する機能部とに分離しても良い。また、記憶部１３を画像処理装置１の外部装置としてネットワーク経由で接続するようにしても良い。
【００９０】
また、上記実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図１に示した画像処理装置１と同様の機能を実現する画像処理プログラムを実行するコンピュータの一例を説明する。図１０は、画像処理プログラムを実行するコンピュータの一例を示す図である。
【００９１】
図１０に示すように、コンピュータ２００は、各種演算処理を実行するＣＰＵ２０３と、ユーザからのデータの入力を受け付ける入力装置２１５と、表示装置２０９を制御する表示制御部２０７とを有する。また、コンピュータ２００は、記憶媒体からプログラムなどを読取るドライブ装置２１３と、ネットワークを介して他のコンピュータとの間でデータの授受を行う通信制御部２１７とを有する。また、コンピュータ２００は、各種情報を一時記憶するメモリ２０１と、ＨＤＤ２０５を有する。そして、メモリ２０１、ＣＰＵ２０３、ＨＤＤ２０５、表示制御部２０７、ドライブ装置２１３、入力装置２１５、通信制御部２１７は、バス２１９で接続されている。
【００９２】
ドライブ装置２１３は、例えばリムーバブルディスク２１１用の装置である。ＨＤＤ２０５は、画像処理プログラム２０５ａおよび画像処理関連情報２０５ｂを記憶する。
【００９３】
ＣＰＵ２０３は、画像処理プログラム２０５ａを読み出して、メモリ２０１に展開し、プロセスとして実行する。かかるプロセスは、画像処理装置１の各機能部に対応する。画像処理関連情報２０５ｂは、記憶部１３に対応する。そして、例えばリムーバブルディスク２１１が、画像処理プログラム２０５ａなどの各情報を記憶する。
【００９４】
なお、画像処理プログラム２０５ａについては、必ずしも最初からＨＤＤ２０５に記憶させておかなくても良い。例えば、コンピュータ２００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に当該プログラムを記憶させておく。そして、コンピュータ２００がこれらから画像処理プログラム２０５ａを読み出して実行するようにしても良い。
【００９５】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【００９６】
（付記１）被写体の画像を複数のブロックに区分する分割部と、
基準位置から各ブロックに対応する被写体までの距離を求める測定部と、
前記距離に応じて各ブロックの重みを設定する設定部と、
前記重みにより各ブロックに投影される被写体の大きさに関する情報を補正する補正部と、
前記補正された被写体の大きさに関する情報に基づいて、前記被写体に関する統計量を演算する演算部と、
を有することを特徴とする画像処理装置。
【００９７】
（付記２）前記ブロックはピクセルである
ことを特徴とする付記１に記載の画像処理装置。
【００９８】
（付記３）前記演算部は、前記統計量として重心を求める
ことを特徴とする付記１または付記２に記載の画像処理装置。
【００９９】
（付記４）前記演算部は、前記被写体の画像を２次曲面にフィッティングさせる
ことを特徴とする付記１から付記３のいずれか１つに記載の画像処理装置。
【０１００】
（付記５）前記演算部は、前記統計量として前記フィッティングされた２次曲面上の曲率平均を求める
ことを特徴とする付記４に記載の画像処理装置。
【０１０１】
（付記６）前記被写体はヒトの手のひらであることを特徴とする付記１から付記５のいずれか１つに記載の画像処理装置。
【０１０２】
（付記７）コンピュータに、
被写体の画像を複数のブロックに区分し、
基準位置から各ブロックに対応する被写体までの距離を求め、
前記距離に応じて各ブロックの重みを設定し、
前記重みにより各ブロックに投影される被写体の大きさに関する情報を補正し、
前記補正された被写体の大きさに関する情報に基づいて、前記被写体に関する統計量を演算する、
処理を実行させることを特徴とする画像処理プログラム。
【０１０３】
（付記８）コンピュータが、
被写体の画像を複数のブロックに区分し、
基準位置から各ブロックに対応する被写体までの距離を求め、
前記距離に応じて各ブロックの重みを設定し、
前記重みにより各ブロックに投影される被写体の大きさに関する情報を補正し、
前記補正された被写体の大きさに関する情報に基づいて、前記被写体に関する統計量を演算する、
処理を実行することを特徴とする画像処理方法。
【符号の説明】
【０１０４】
１  画像処理装置
１１  全体制御部
１２  撮影部
１２１  光源
１２２  撮像素子
１３  記憶部
１４  ３次元形状取得部
１５  画像演算部
１５１  ２次曲面フィッティング部
１５２，１５２Ａ  重み計算部
１５３  重心計算部
１５４  曲率計算部
２１  ジェスチャ認証部
３１  データベース部
３２  特徴抽出部
３３  照合処理部
【図１】
0006699136.tif 000026
【図２】
0006699136.tif 000027
【図３】
0006699136.tif 000028
【図４】
0006699136.tif 000029
【図５】
0006699136.tif 000030
【図６】
0006699136.tif 000031
【図７】
0006699136.tif 000032
【図８】
0006699136.tif 000033
【図９】
0006699136.tif 000034
【図１０】
0006699136.tif 000035
【図１１】
0006699136.tif 000036