(57)【特許請求の範囲】
【請求項１】
被写体の画像に基づいて、前記被写体の形状を推定する形状推定部と、
前記被写体の形状を記憶する記憶部と、
前記被写体の形状に基づいて、前記被写体上の複数点の各々を結ぶ二次曲面を生成し、前記二次曲面に基づいて、前記複数点の各々を前記二次曲面に接する平面上に展開し、前記平面上に展開された各点の位置に基づいて前記画像を補正する補正部と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記形状推定部は、前記画像の輝度分布に基づいて、前記被写体の形状を推定することを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記補正部は、前記二次曲面上の基準点と前記複数点の各々との距離に基づいて、前記複数点の各々を前記平面上に展開することを特徴とする請求項１又は２記載の画像処理装置。
【請求項４】
前記補正部は、被写体の画像を撮影した撮像素子部と前記二次曲面との距離と、前記撮像素子部と前記平面との距離とに基づいて、前記平面上に展開された各点の画素値を補正することを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
誘導部をさらに備え、前記被写体は手のひらであり、前記誘導部は、前記二次曲面の曲率に基づいて、前記手のひらを開くように誘導することを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
被写体の画像に基づいて、前記被写体の形状を推定し、
前記被写体の形状に基づいて、前記被写体上の複数点の各々を結ぶ二次曲面を生成し、
前記二次曲面に基づいて、前記複数点の各々を前記二次曲面に接する平面上に展開し、
前記平面上に展開された各点の位置に基づいて前記画像を補正する、
処理をコンピュータに実行させる画像処理プログラム。
【請求項７】
被写体を撮影し、
前記被写体の画像に基づいて、前記被写体の形状を推定し、
前記被写体の形状に基づいて、前記被写体上の複数点の各々を結ぶ二次曲面を生成し、
前記二次曲面に基づいて、前記複数点の各々を前記二次曲面に接する平面上に展開し、
前記平面上に展開された各点の位置に基づいて前記画像を補正する、
ことを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理プログラム、及び画像処理方法に関する。
【背景技術】
【０００２】
手のひら静脈認証は、近赤外線を用いて手のひら内の静脈パターンを撮影し、静脈パターンに基づいて個人を非接触で認証する生体認証技術である。静脈パターンの登録時には、被写体である手の姿勢をガイドにより矯正することができるが、静脈パターンの照合時には、ガイドが設けられていないことが多い。この場合、登録時と照合時との間における手の姿勢のずれにより、登録データと照合データとの相違が大きくなり、本人認証の成功率が低下する。
【０００３】
そこで、手のひらの傾き、回転等の手の姿勢を測定し、登録時と照合時との間における手の姿勢のずれを打ち消すように、照合時に撮影した手のひらの画像を補正することが考えられる。この方法で画像を正規化することで、本人認証の成功率が向上する。
【０００４】
照明光を照射して撮影した被写体の画像の輝度分布に基づいて、被写体の３次元形状を推定するShape From Shading（ＳＦＳ）技術も知られている（例えば、非特許文献１〜非特許文献３を参照）。
【０００５】
基本模様を有する２次元のテクスチャを、３次元曲面からなる自由曲面にマッピングして自由曲面上に基本模様を繰り返し生成する基本模様マッピング方法も知られている（例えば、特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平４−９６１８６号公報
【非特許文献】
【０００７】
【非特許文献１】R. Kimmel et al., "Global Shape from Shading", CVGIP: Image Understanding, pp.120-125, 1995
【非特許文献２】R. Zhang et al., "Shape from Shading: A Survey", IEEE PAMI(Transactions on Pattern Analysis and Machine Intelligence), Vol.21, No.8, pp.690-706, August 1999
【非特許文献３】E. Prados et al., "Shape from Shading: a well-posed problem?", INRIA, No.5297, pp.1-55, August 2004
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上述した従来の手のひら静脈認証には、以下のような問題がある。
静脈パターンの登録時又は照合時において、手のひらがすぼまっていたり、あるいは過剰に開いていたりする場合、手のひらの３次元形状の歪みによる静脈パターンの相違が残るため、本人認証が困難になることがある。
【０００９】
なお、かかる問題は、手のひら静脈認証を行う場合に限らず、近赤外線以外の照明光を用いて他の被写体を撮影した画像を補正する場合においても生ずるものである。
【００１０】
１つの側面において、本発明は、形状が歪んだ被写体の画像を正確に正規化することを目的とする。
【課題を解決するための手段】
【００１１】
１つの案では、画像処理装置は、形状推定部、記憶部、及び補正部を含む。
形状推定部は、被写体の画像に基づいて被写体の形状を推定し、記憶部は、被写体の形状を記憶する。補正部は、被写体の形状に基づいて、被写体上の複数点の各々を結ぶ二次曲面を生成し、複数点の各々を二次曲面に接する平面上に展開する。そして、補正部は、平面上に展開された各点の位置に基づいて、被写体の画像を補正する。
【発明の効果】
【００１２】
１つの実施形態によれば、形状が歪んだ被写体の画像を正確に正規化することができる。
【図面の簡単な説明】
【００１３】
【図１】静脈センサを示す図である。
【図２】すぼまった手のひらを示す図である。
【図３】画像処理装置の機能的構成図である。
【図４】画像処理のフローチャートである。
【図５】画像処理装置の具体例を示す機能的構成図である。
【図６】生体認証処理のフローチャートである。
【図７】正規化処理のフローチャートである。
【図８】二次曲面を示す図である。
【図９】展開平面を示す図である。
【図１０】最終平面を示す図である。
【図１１】３次元平面を示す図である。
【図１２】３次元曲面を示す図である。
【図１３】展開平面上の点と二次曲面上の点の対応関係を示す図である。
【図１４】断面平面を示す図である。
【図１５】楕円を示す図である。
【図１６】楕円の周長を示す図である。
【図１７】楕円上の点を求める処理を示す図である。
【図１８】双曲線を示す図である。
【図１９】放物線を示す図である。
【図２０】撮像素子部から展開平面及び二次曲面までの距離を示す図である。
【図２１】誘導を行う画像処理装置の機能的構成図である。
【図２２】曲率に基づいて誘導を行う生体認証処理のフローチャートである。
【図２３】曲率及び傾きに基づいて誘導を行う生体認証処理のフローチャートである。
【図２４】展開情報を用いた生体認証処理を示す図である。
【図２５】展開情報を用いない生体認証処理を示す図である。
【図２６】情報処理装置の構成図である。
【発明を実施するための形態】
【００１４】
以下、図面を参照しながら、実施形態を詳細に説明する。
図１は、手のひら内の静脈パターンを撮影する静脈センサの例を示している。静脈パターンを適切に撮影するためには、被写体である手のひら１０１が静脈センサ１０２に対して平行になっていることが望ましい。手のひら１０１が静脈センサ１０２に対して傾いている場合、例えば、近赤外照明の反射光に対してＳＦＳ技術を適用することで手のひら１０１の傾きを測定し、傾きによる静脈パターンの相違を補正することができる。
【００１５】
ところが、静脈パターンの登録時又は照合時において、図２に示すように手のひらがすぼまっていたり、あるいは過剰に開いていたりする場合、手のひらの３次元形状の歪みによる静脈パターンの相違が残ると考えられる。このため、本人認証が困難になることがある。そこで、手のひらを平面ではなく、曲面とみなすことで、静脈パターンの相違を高い精度で補正することが望まれる。
【００１６】
図３は、実施形態の画像処理装置の機能的構成例を示している。画像処理装置３０１は、形状推定部３１１、記憶部３１２、及び補正部３１３を含む。
【００１７】
図４は、図３の画像処理装置３０１が行う画像処理の例を示すフローチャートである。形状推定部３１１は、被写体の画像に基づいて被写体の形状３２１を推定し、記憶部３１２は、被写体の形状３２１を記憶する（ステップ４０１）。
【００１８】
補正部３１３は、被写体の形状３２１に基づいて、被写体上の複数点の各々を結ぶ二次曲面を生成し（ステップ４０２）、複数点の各々を二次曲面に接する平面上に展開する（ステップ４０３）。そして、補正部３１３は、平面上に展開された各点の位置に基づいて、被写体の画像を補正する（ステップ４０４）。
【００１９】
図３の画像処理装置３０１によれば、形状が歪んだ被写体の画像を正確に正規化することができる。
【００２０】
図５は、手のひら静脈認証を行う画像処理装置３０１の具体例を示している。図５の画像処理装置３０１は、形状推定部３１１、記憶部３１２、補正部３１３、撮影部５０１、特徴抽出部５０２、及び照合部５０３を含む。記憶部３１２は、認証に使用する静脈パターンを、登録特徴情報５１１として記憶している。登録特徴情報５１１は、登録テンプレートと呼ばれることもある。
【００２１】
撮影部５０１は、静脈センサに対応し、照明部及び撮像素子部を含む。照明部は、近赤外線の照明光を被写体である生体に照射し、撮像素子部は、生体からの反射光を検出して生体の撮影画像５１２を生成する。
【００２２】
形状推定部３１１は、撮影画像５１２に対してＳＦＳ技術を適用し、生体の３次元形状５１３を推定する。３次元形状５１３は、図３の形状３２１に対応する。補正部３１３は、撮影画像５１２に対して正規化処理を行って補正画像５１４を生成する。
【００２３】
特徴抽出部５０２は、補正画像５１４から、静脈パターンを特徴情報５１５として抽出する。照合部５０３は、抽出された特徴情報５１５と登録特徴情報５１１とを比較し、特徴情報５１５と登録特徴情報５１１との間の類似度を計算する。そして、照合部５０３は、類似度を閾値と比較して生体の認証を行う。例えば、類似度が閾値よりも大きい場合、生体は認証され、類似度が閾値以下である場合、生体は認証されない。
【００２４】
図６は、図５の画像処理装置３０１が行う生体認証処理の例を示すフローチャートである。まず、撮影部５０１は、認証対象者の手のひらを撮影して撮影画像５１２を生成し、撮影画像５１２を記憶部３１２に格納する（ステップ６０１）。
【００２５】
次に、形状推定部３１１は、撮影画像５１２から手のひらの３次元形状５１３を推定して、記憶部３１２に格納する（ステップ６０２）。そして、補正部３１３は、撮影画像５１２に対して正規化処理を行って補正画像５１４を生成し、記憶部３１２に格納する（ステップ６０３）。
【００２６】
次に、特徴抽出部５０２は、補正画像５１４から特徴情報５１５を抽出して、記憶部３１２に格納する（ステップ６０４）。そして、照合部５０３は、特徴情報５１５と登録特徴情報５１１とを比較して、生体の認証を行う（ステップ６０５）。
【００２７】
図７は、図６のステップ６０３における正規化処理の例を示すフローチャートである。まず、補正部３１３は、３次元形状５１３上の複数点を結ぶ二次曲面を生成し、その二次曲面により３次元形状５１３を近似する（ステップ７０１）。そして、補正部３１３は、二次曲面上に接する展開平面を生成し（ステップ７０２）、展開平面を回転させて、撮影部５０１の撮像面に平行な最終平面を生成する（ステップ７０３）。
【００２８】
図８は、二次曲面の例を示している。レンズ８０１及び撮像素子部８０２は、撮影部５０１に含まれており、実際の手のひらの形状８１１には、細かい凹凸が存在する。手のひらの形状８１１を二次曲面８１２により近似することで、二次曲面８１２が撮像素子部８０２上に投影された画像を撮影画像５１２とみなすことができる。
【００２９】
図９は、展開平面の例を示している。二次曲面８１２を平面に展開することで展開平面９０１が生成される。展開平面９０１は、撮像素子部８０２の撮像面に対して、手のひらの形状８１１の傾きに応じた傾きを有する。
【００３０】
図１０は、最終平面の例を示している。展開平面９０１を撮像素子部８０２の撮像面と平行になるように回転させることで、最終平面１００１が生成される。補正画像５１４は、最終平面１００１上の画像に対応する。
【００３１】
次に、補正部３１３は、ステップ７０４〜ステップ７１０の展開処理を行って、３次元座標変換により二次曲面上の各点を展開平面上に展開し、展開された各点の位置に基づいて撮影画像５１２を補正する。この３次元座標変換において、補正部３１３は、撮影画像５１２上の点Ｑに対応する二次曲面上の点Ｘ２を求め、点Ｘ２に対応する展開平面上の点Ｘ１を求め、点Ｘ１に対応する補正画像５１４上の点Ｑ’を求める。そして、補正部３１３は、点Ｑの画素値を点Ｑ’の画素値として設定する。静脈画像の画素値としては、例えば、輝度値が用いられる。
【００３２】
しかし、画像変換処理では、画像上の点の座標が整数であることから、変換後の点Ｑ’を処理対象として、変換前の点Ｑを求める処理を行うことが多い。仮に、変換前の点Ｑの座標（ｘ，ｙ）（ｘ及びｙは整数）を処理対象とすると、変換後の点Ｑ’の座標（ｘ’，ｙ’）は実数になってしまい、補正画像５１４上に存在しない位置を表す。
【００３３】
そこで、ステップ７０４〜ステップ７１０の処理において、補正部３１３は、変換後の点Ｑ’の座標（ｘ’，ｙ’）（ｘ’及びｙ’は整数）を処理対象として、変換前の点Ｑの座標（ｘ，ｙ）を求める。この場合、（ｘ，ｙ）は実数になるが、（ｘ，ｙ）の位置における画素値は、周辺の画素値を用いた補間処理により計算することが可能である。補間処理としては、バイリニア補間、バイキュービック補間等を用いることができる。
【００３４】
まず、補正部３１３は、補正画像５１４上の点Ｑ’を処理対象として設定し（ステップ７０４）、点Ｑ’に対応する最終平面上の点Ｘｆを求め（ステップ７０５）、さらに点Ｘｆに対応する展開平面上の点Ｘ１を求める（ステップ７０６）。次に、補正部３１３は、点Ｘ１に対応する二次曲面上の点Ｘ２を求め（ステップ７０７）、点Ｘ２に対応する撮影画像５１２上の点Ｑを求める（ステップ７０８）。そして、補正部３１３は、撮影画像５１２の画素値を用いて点Ｑに対応する画素値を計算し、点Ｑ’の画素値として設定する（ステップ７０９）。
【００３５】
次に、補正部３１３は、補正画像５１４上のすべての点を処理したか否かをチェックし（ステップ７１０）、未処理の点が残っている場合（ステップ７１０，ＹＥＳ）、次の点についてステップ７０４以降の処理を繰り返す。そして、すべての点を処理した場合（ステップ７１０，ＮＯ）、補正部３１３は、処理を終了する。こうして、撮影画像５１２から補正画像５１４が生成される。
【００３６】
図７の正規化処理によれば、手のひらがすぼまっていたり、あるいは過剰に開いていたりする場合でも、手のひらの３次元形状の歪みの影響を低減した補正画像５１４を生成することができる。登録特徴情報５１１の登録時においても、撮影画像に対して同様の正規化処理を行うことで、照合処理の精度が向上し、正しい認証結果が得られるようになる。
【００３７】
次に、図１１から図１９までを参照しながら、図７のステップ７０１〜ステップ７０８の処理の具体例について説明する。
【００３８】
図１１は、３次元平面の例を示している。画像処理において３次元の位置情報を利用する場合、撮像素子部８０２により撮影される撮影画像５１２上の点、又は補正画像５１４上の点と、３次元空間内の点とが対応付けられる。そこで、画像上の点Ｑ（ｕ，ｖ）と３次元平面１１０１上の点Ｐ（Ｘ，Ｙ，Ｚ）との対応関係について考察する。
【００３９】
ピンホールカメラモデルを用いた場合、点１１０２が光源及びレンズ中心に対応する。レンズの焦点距離をｆ０とし、点Ｑ（ｕ，ｖ）に対応するＺ座標の値をｔ（ｔ＞０）とすると、点Ｑ（ｕ，ｖ）の３次元座標Ｑ（ｔ）は、次式のように表される。
【００４０】
【数１】
0006604008.tif 000002
【００４１】
３次元平面１１０１の方程式は、パラメータａ〜パラメータｃを用いて次式のように表される。
【００４２】
【数２】
0006604008.tif 000003
【００４３】
点Ｑ（ｔ）が３次元平面１１０１上に存在するという条件を設定すると、ｔに関する次のような方程式が得られる。
【００４４】
【数３】
0006604008.tif 000004
【００４５】
式（３）をｔについて解くと、次式の解ｔ０が求められる。
【００４６】
【数４】
0006604008.tif 000005
【００４７】
画像上の点Ｑ（ｕ，ｖ）に対応する３次元平面１１０１上の点Ｐ（Ｘ，Ｙ，Ｚ）は、式（４）のｔ０を用いて、次式のように表される。
【００４８】
【数５】
0006604008.tif 000006
【００４９】
式（４）及び式（５）により、画像上の点Ｑ（ｕ，ｖ）と３次元平面１１０１上の点Ｐ（Ｘ，Ｙ，Ｚ）とを対応付けることができる。
【００５０】
図１２は、３次元曲面の例を示している。画像上の点Ｑ（ｕ，ｖ）と３次元曲面１２０１上の点Ｐ（Ｘ，Ｙ，Ｚ）との対応関係について考察する。
【００５１】
図１１の場合と同様に、ピンホールカメラモデルを用いた場合、点Ｑ（ｕ，ｖ）の３次元座標Ｑ（ｔ）は、式（１）のように表すことができる。３次元曲面１２０１が二次曲面である場合、３次元曲面１２０１の方程式は、パラメータａ〜パラメータｆを用いて次式のように表される。
【００５２】
【数６】
0006604008.tif 000007
【００５３】
点Ｑ（ｔ）が３次元曲面１２０１上に存在するという条件を設定すると、ｔに関する次のような方程式が得られる。
【００５４】
【数７】
0006604008.tif 000008
【００５５】
式（７）をｔに関して整理すると、次式のような２次方程式が得られる。
【００５６】
【数８】
0006604008.tif 000009
【００５７】
式（８）をｔについて解くと、次式の解ｔ０が求められる。
【００５８】
【数９】
0006604008.tif 000010
【００５９】
ｔ０として２つの解が存在するが、ｔ＞０という条件からｔ０を一意に決定することができる。画像上の点Ｑ（ｕ，ｖ）に対応する３次元曲面１２０１上の点Ｐ（Ｘ，Ｙ，Ｚ）は、決定されたｔ０を用いて、式（５）のように表される。そして、式（５）及び式（９）〜式（１１）により、点Ｑ（ｕ，ｖ）と点Ｐ（Ｘ，Ｙ，Ｚ）とを対応付けることができる。
【００６０】
ステップ７０１において、補正部３１３は、二次曲面により３次元形状５１３を近似する。３次元形状５１３を二次曲面で近似することで、二次曲面上の法線ベクトル等を解析的に求めることが可能になり、３次元形状５１３上の点を展開平面上に展開する処理を効率良く行うことができる。
【００６１】
図１２の場合と同様に、ピンホールカメラモデルを用いて、３次元形状５１３上の点Ｐ（Ｘ，Ｙ，Ｚ）のＺ座標の値をＺ（ｕ，ｖ）と表すと、点Ｐ（Ｘ，Ｙ，Ｚ）は、次式のように表される。
【００６２】
【数１０】
0006604008.tif 000011
【００６３】
３次元形状５１３上の各点をＰ（Ｘｉ，Ｙｉ，Ｚｉ）（ｉ＝０，１，２，．．．）と表すと、点Ｐ（Ｘｉ，Ｙｉ，Ｚｉ）が式（６）の二次曲面上に存在するという条件は、行列形式を用いて次式のように表される。
【００６４】
【数１１】
0006604008.tif 000012
【００６５】
ここで、行列Ａの疑似逆行列Ａ＋を求める。
【００６６】
【数１２】
0006604008.tif 000013
【００６７】
二次曲面のパラメータは、式（２７）の疑似逆行列Ａ＋を用いて次式のように表される。
【００６８】
【数１３】
0006604008.tif 000014
【００６９】
式（２７）の疑似逆行列Ａ＋を用いることで、最小二乗近似を適用することができる。このとき、３次元形状５１３上の点Ｐ（Ｘｉ，Ｙｉ，Ｚｉ）を適当に間引いて個数を減らすことで、最小二乗近似の演算量を削減することができる。
【００７０】
ステップ７０２において、補正部３１３は、二次曲面に接する展開平面を生成する。このとき、補正部３１３は、３次元形状５１３を平面により近似することで、二次曲面に接する展開平面を生成することができる。生成された展開平面の傾きは、手のひら全体の傾きを表している。
【００７１】
ステップ７０３において、補正部３１３は、手のひらの傾きを補正するために、展開平面を回転させて最終平面を生成する。具体的には、補正部３１３は、展開平面の法線ベクトルｎが撮像素子部８０２の撮像面に垂直な方向の単位ベクトルに重なるように、展開平面を回転させる。このような回転処理の具体的な方法として、後述するロドリグの公式を適用することができる。
【００７２】
手のひらの位置が撮像素子部８０２の真上の位置から水平方向（撮像面に平行な方向）にシフトしている場合、手のひらと撮像素子部８０２とを結ぶ直線と最終平面とが直交するように、最終平面を傾けてもよい。水平方向のシフト量に応じて最終平面を傾けることで、手のひらのシフトに起因する撮影画像５１２の歪みを補正することができる。
【００７３】
ステップ７０４において、補正部３１３は、補正画像５１４上の点Ｑ’を処理対象として設定し、ステップ７０５において、点Ｑ’に対応する最終平面上の点Ｘｆを、式（４）及び式（５）を用いて求める。次に、ステップ７０６において、補正部３１３は、点Ｘｆに対応する展開平面上の点Ｘ１を求め、ステップ７０７において、点Ｘ１に対応する二次曲面上の点Ｘ２を求める。
【００７４】
点Ｘ１と点Ｘ２とを対応付ける方法として、手のひらがすぼまっている場合でも、手のひらが開いている場合でも、手のひらの表面上における２点の距離は変わらないという仮定を適用することができる。そこで、補正部３１３は、展開平面上における基準点から点Ｘ１までの距離と、二次曲面上における基準点から点Ｘ２までの距離とが同一になるという条件を用いて、点Ｘ２を求める。
【００７５】
図１３は、点Ｘ１と点Ｘ２の対応関係の例を示している。この例では、二次曲面８１２と展開平面９０１との接点が基準点ＰＣとして設定されており、二次曲面８１２上における基準点ＰＣから点Ｘ２までの距離は、展開平面９０１上における基準点ＰＣから点Ｘ１までの距離Ｌと一致する。基準点ＰＣは、展開中心とも呼ばれ、二次曲面８１２上の点を展開平面９０１上に展開する際に基準となる点である。
【００７６】
ただし、二次曲面上において、基準点ＰＣから距離Ｌだけ離れた点は複数存在する。そこで、補正部３１３は、次元を落とす処理として、展開平面及び二次曲面を切断する断面平面を生成し、断面平面上の点のみを対象として点Ｘ２を求める。
【００７７】
このとき、補正部３１３は、点Ｘ２から距離Ｌを求めるのではなく、距離Ｌから点Ｘ２を求める処理を行う。点から距離を求める処理は、楕円積分等により比較的簡単に実行できるが、距離から点を求める逆方向の処理は簡単ではない。そこで、距離Ｌから点Ｘ２を求める処理では、数値計算が用いられる。
【００７８】
ここで、二次曲面の方程式は、式（６）のように表すことができ、展開平面の方程式は、次式のように表すことができる。
【００７９】
【数１４】
0006604008.tif 000015
【００８０】
基準点ＰＣの３次元座標を（ＸＣ，ＹＣ，ＺＣ）とすると、基準点ＰＣが展開平面上に存在するとともに二次曲面上にも存在することから、次式が成り立つ。
【００８１】
【数１５】
0006604008.tif 000016
【００８２】
展開平面上の点Ｘ１（Ｘ１，Ｙ１，Ｚ１）から対応する二次曲面上の点Ｘ２（Ｘ２，Ｙ２，Ｚ２）を求めるために、３つの条件が用いられる。第１の条件は、点Ｘ２が二次曲面上に存在することである。
【００８３】
【数１６】
0006604008.tif 000017
【００８４】
第２の条件は、二次曲面上における基準点ＰＣから点Ｘ２までの距離ＰＣＸ２が、展開平面上における基準点ＰＣから点Ｘ１までの距離ＰＣＸ１と一致することである。
【００８５】
ＰＣＸ２＝ＰＣＸ１＝Ｌ      （３５）
【００８６】
第３の条件は、点Ｘ２が展開平面及び二次曲面を切断する断面平面上に存在することである。図１４は、断面平面の例を示している。この例では、断面平面１４０１は、基準点ＰＣ及び点Ｘ１を通り、展開平面９０１に垂直な平面である。図１３は、断面平面１４０１上の展開平面９０１及び二次曲面８１２を表している。
【００８７】
以下では、第１〜第３の条件を満たす点Ｘ２の計算方法について説明する。断面平面の法線ベクトルｎＲは、展開平面の法線ベクトル（−ｐ，−ｑ，１）と、基準点ＰＣから点Ｘ１へ向かうベクトルＰＣＸ１の両方に対して直交するベクトルである。したがって、法線ベクトルｎＲは、法線ベクトル（−ｐ，−ｑ，１）とベクトルＰＣＸ１の外積から求めることができる。
【００８８】
ここで、ベクトル
0006604008.tif 000018
（以下では、ベクトルａと記す）とベクトル
0006604008.tif 000019
（以下では、ベクトルｂと記す）の外積は、次式により定義される。
【００８９】
【数１７】
0006604008.tif 000020
【００９０】
式（３６）において、ａＸ、ａＹ、及びａＺは、それぞれ、ベクトルａのＸ成分、Ｙ成分、及びＺ成分を表し、ｂＸ、ｂＹ、及びｂＺは、それぞれ、ベクトルｂのＸ成分、Ｙ成分、及びＺ成分を表す。式（３６）の外積の定義を用いると、法線ベクトルｎＲは、次式のように表される。
【００９１】
【数１８】
0006604008.tif 000021
【００９２】
断面平面が点Ｘ１（Ｘ１，Ｙ１，Ｚ１）を通ることから、断面平面の方程式の定数項Ｃは、次式により求めることができる。
【００９３】
【数１９】
0006604008.tif 000022
【００９４】
式（３７）の法線ベクトルｎＲと式（３９）の定数Ｃとを用いて、断面平面の方程式は、次式のように表される。
【００９５】
【数２０】
0006604008.tif 000023
【００９６】
ここで、次式により定数ｐ’、ｑ’、及びｒ’を定義する。
【００９７】
【数２１】
0006604008.tif 000024
【００９８】
定数ｐ’、ｑ’、及びｒ’を用いると、断面平面の方程式は、次式のように表される。
【００９９】
【数２２】
0006604008.tif 000025
【０１００】
点Ｘ２（Ｘ２，Ｙ２，Ｚ２）が式（４４）の断面平面上に存在することから、第３の条件は次式のように表される。
【０１０１】
【数２３】
0006604008.tif 000026
【０１０２】
したがって、点Ｘ２（Ｘ２，Ｙ２，Ｚ２）が満たすべき３つの条件は、式（３４）、式（３５）、及び式（４５）により表される。このうち、式（３４）及び式（４５）を組み合わせると、点Ｘ２は二次曲線上を動くことが分かる。式（３５）は、２次曲線上における基準点ＰＣから点Ｘ２までの距離を規定している。
【０１０３】
二次曲面と断面平面との交点が描く二次曲線は、式（６）及び式（４４）の連立方程式から求めることができる。この二次曲線上の線分の長さに対して距離Ｌを対応付けることで、点Ｘ２を求めることができる。
【０１０４】
まず、二次曲面及び断面平面を扱い易くするため、断面平面の法線ベクトルがＺ軸方向を向くように、断面平面を回転させる。これにより、断面平面のＺ座標が定数になり、断面平面上の距離計算が簡単化される。
【０１０５】
ここで、表記を平易にするために、式（４４）のｐ’、ｑ’、及びｒ’をｐ、ｑ、及びｒに置き換えると、断面平面の法線ベクトルは（−ｐ，−ｑ，１）と表すことができる。このとき、断面平面の回転処理は、次式の単位法線ベクトル
0006604008.tif 000027
（以下では、単位法線ベクトルｎ０と記す）を、Ｚ軸方向の単位ベクトル
0006604008.tif 000028
（以下では、単位ベクトルｎ１と記す）に一致させる処理となる。
【０１０６】
【数２４】
0006604008.tif 000029
【０１０７】
この回転処理には、以下のようなロドリグの公式を適用することができる。
【０１０８】
【数２５】
0006604008.tif 000030
【０１０９】
式（５３）のベクトル
0006604008.tif 000031
（以下では、ベクトルＸと記す）は、回転前の３次元ベクトルを表し、ベクトル
0006604008.tif 000032
（以下では、ベクトルＸ’と記す）は、回転後の３次元ベクトルを表す。ベクトル
0006604008.tif 000033
（以下では、ベクトルｎと記す）は、回転軸の方向の単位ベクトルを表し、φは回転角を表す。したがって、ベクトルｎを回転軸としてベクトルＸを角度φだけ回転させると、ベクトルＸ’が得られる。
【０１１０】
ベクトルｎは、単位法線ベクトルｎ０と単位ベクトルｎ１の両方に垂直な方向に設定される。したがって、ベクトルｎは、単位法線ベクトルｎ０と単位ベクトルｎ１の外積から求めることができる。
【０１１１】
【数２６】
0006604008.tif 000034
【０１１２】
角度φの余弦は、単位法線ベクトルｎ０と単位ベクトルｎ１の内積から求めることができる。
【０１１３】
【数２７】
0006604008.tif 000035
【０１１４】
ベクトルＸの成分を（Ｘ，Ｙ，Ｚ）とし、ベクトルＸ’の成分を（Ｘ’，Ｙ’，Ｚ’）として、式（５５）〜式（５７）を式（５３）に適用すると、次式が得られる。
【０１１５】
【数２８】
0006604008.tif 000036
【０１１６】
回転後の断面平面は、次式のように、Ｚ’が定数の平面となる。
【０１１７】
【数２９】
0006604008.tif 000037
【０１１８】
二次曲面に対しても、断面平面と同様の回転処理が適用される。回転後のベクトルＸ’＝（Ｘ’，Ｙ’，Ｚ’）が与えられたとき、回転前のベクトルＸ＝（Ｘ，Ｙ，Ｚ）を表す変換式は、次式のように表される。
【０１１９】
【数３０】
0006604008.tif 000038
【０１２０】
ここで、式（６０）の右辺の回転を表す行列の係数を、次式のように定義する。
【０１２１】
【数３１】
0006604008.tif 000039
【０１２２】
回転前の二次曲面を表す式（６）に式（６１）の（Ｘ，Ｙ，Ｚ）を代入すると、回転後の断面平面上における二次曲線の方程式として、次式が得られる。
【０１２３】
【数３２】
0006604008.tif 000040
【０１２４】
式（６２）をＸ’、Ｙ’、及びＺ’について整理すると、次式が得られる。
【０１２５】
【数３３】
0006604008.tif 000041
【０１２６】
式（６３）をさらに整理すると、次式が得られる。
【０１２７】
【数３４】
0006604008.tif 000042
【０１２８】
ここで、次式により定数Ａ〜定数Ｆを定義する。
【０１２９】
【数３５】
0006604008.tif 000043
【０１３０】
式（６８）〜式（７０）のＺ’は、式（５９）により表される定数である。式（６５）〜式（７０）の定数Ａ〜定数Ｆを用いて、式（６４）の２次曲線の方程式は、次式のように表される。
【０１３１】
【数３６】
0006604008.tif 000044
【０１３２】
このとき、断面平面上の基準点ＰＣの座標（ＸＣ，ＹＣ，ＺＣ）も、回転処理によって、次式の座標（ＸＣ’，ＹＣ’，ＺＣ’）に移動する。
【０１３３】
【数３７】
0006604008.tif 000045
【０１３４】
次に、式（７１）の二次曲線上における距離の計算方法について説明する。二次曲面上の基準点ＰＣと点Ｘ２との距離を求める処理は、式（７１）の二次曲線上の長さを求める処理に置き換えられる。二次曲線には、楕円、双曲線、及び放物線の３つのパターンがあり得るため、それぞれのパターンに対して二次曲線上の長さを求める計算方法を検討する。
【０１３５】
まず、二次曲線が楕円の場合について説明する。楕円の方程式は、次式のように表される。
【０１３６】
【数３８】
0006604008.tif 000046
【０１３７】
式（７１）に対して回転及び平行移動を含む座標変換を適用することで、式（７１）を式（８１）の形式に変形することができる。手のひらの形状を近似する二次曲面の場合、式（７１）の二次曲線が楕円になることが多い。
【０１３８】
図１５は、式（８１）の楕円の例を示している。この楕円上の点Ｐ１と点Ｐ２との距離を求める処理について検討する。この場合、点Ｐ１は基準点ＰＣに対応し、点Ｐ２は点Ｘ２に対応する。楕円の周長は、第二種不完全楕円積分から求めることができる。第二種不完全楕円積分は、角度φが０から所定値θまでの楕円の周長を表す積分である。以下では第二種不完全楕円積分を単純に楕円積分と呼ぶ。
【０１３９】
楕円積分を表す楕円関数は第１象限でのみ定義されているため、第２象限〜第４象限に点Ｐ１又は点Ｐ２が存在する場合は、個別に、楕円の１／４周分の周長を適宜加算又は減算する処理が行われる。また、楕円積分により周長を計算する方向としては、角度φの正の方向と負の方向との２方向が存在する。このため、楕円上の点Ｐ１から距離Ｌだけ離れた点Ｐ２を求める場合、２方向について距離計算が行われる。
【０１４０】
まず、図１６に示す楕円上において、楕円とＹ軸の交点１６０１から点Ｐまでの周長Ｌ（θ）は、楕円積分を用いて次式のように表される。
【０１４１】
【数３９】
0006604008.tif 000047
【０１４２】
式（８２）のＥ（θ，ｋ２）は、第２種不完全楕円積分関数であり、ｋは、楕円を表す定数である。点Ｐの座標（Ｘ，Ｙ）と角度θとの間には、次式のような関係がある。
【０１４３】
【数４０】
0006604008.tif 000048
【０１４４】
式（８３）及び式（８４）より、図１７において点Ｐ１（ＸＰ１，ＹＰ１）に対応する角度θＰ１は、次式のように表される。
【０１４５】
【数４１】
0006604008.tif 000049
【０１４６】
点Ｐ２は、点Ｐ１に対して角度φの正の方向又は負の方向のいずれかの方向に距離Ｌだけ離れた点である。そこで、点Ｐ２に対応する角度をθとすると、点Ｐ２を求める処理は、次式を満たす角度θを求める処理に置き換えられる。
【０１４７】
【数４２】
0006604008.tif 000050
【０１４８】
式（８７）を満たす角度θを求める方法として、数値計算を用いることができる。数値計算としてニュートン法を用いた場合、次式の関数ｆ（θ）を定義して、ｆ（θ）＝０となる角度θを数値的に求めることができる。
【０１４９】
【数４３】
0006604008.tif 000051
【０１５０】
このとき、角度θに対する漸化式として、次式が繰り返し適用される。
【０１５１】
【数４４】
0006604008.tif 000052
【０１５２】
ここで、ｆ（θ）＝０の解として得られる２つの角度θに対応する２点のうち、断面平面上で点Ｘ１に近い方の点が点Ｐ２（点Ｘ２）として採用される。
【０１５３】
第２種不完全楕円積分関数の数値解を得るための計算式として、Carlson symmetric形式を利用することができる。この場合、第２種不完全楕円積分関数は、次式のように表される。
【０１５４】
【数４５】
0006604008.tif 000053
【０１５５】
式（９１）のＲＦ及びＲＤは、Carlson symmetric formulaと呼ばれる関数である。ここで、ＲＦ及びＲＤの入力係数を、次式のようにＸ、Ｙ、及びＺで表す。
【０１５６】
【数４６】
0006604008.tif 000054
【０１５７】
このとき、式（９１）は次式のように表される。
【０１５８】
【数４７】
0006604008.tif 000055
【０１５９】
次に、二次曲線が双曲線の場合について説明する。双曲線の方程式は、次式のように表される。
【０１６０】
【数４８】
0006604008.tif 000056
【０１６１】
双曲線の形状としては、式（１０１）と式（１０２）の２つのパターンが存在し、式（１０１）の形状は、East-West opening hyperbolaと呼ばれ、式（１０２）の形状は、North-South opening hyperbolaと呼ばれる。式（７１）に対して回転及び平行移動を含む座標変換を適用することで、式（７１）を式（１０１）又は式（１０２）の形式に変形することができる。
【０１６２】
図１８は、式（１０２）の形状の双曲線の例を示している。ただし、この例では、双曲線に含まれる２本の曲線のうち１本が示されている。式（１０２）の形状の双曲線は、楕円の特殊な形式として扱うことができる。
【０１６３】
まず、式（１０２）のａをａｒに置き換えると、次式が得られる。
【０１６４】
【数４９】
0006604008.tif 000057
【０１６５】
ここで、実数ａｒを用いて純虚数ａを定義する。
ａ＝ｉａｒ      （１０４）
【０１６６】
式（１０４）の純虚数ａを用いて、式（１０３）は式（８１）の形式に書き換えられる。このように、式（１０２）の形状の双曲線は、定数ａを複素数（厳密には、純虚数）に設定した楕円として扱うことができる。
【０１６７】
双曲線は、媒介変数θを用いて、次式のように表すことができる。
【０１６８】
【数５０】
0006604008.tif 000058
【０１６９】
双曲線は、定数ａが純虚数であると同時に角度θも純虚数である場合の楕円とみなすことができる。そこで、式（８３）及び式（８４）において、定数ａを純虚数ｉａに設定し、角度θを純虚数ｉθに設定すると、次式が得られる。
【０１７０】
【数５１】
0006604008.tif 000059
【０１７１】
ｃｏｓθ及びｓｉｎθとｃｏｓｈθ及びｓｉｎｓｈθとの間には、次式のような関係が存在する。
【０１７２】
【数５２】
0006604008.tif 000060
【０１７３】
式（１０９）及び式（１１０）を用いると、式（１０７）及び式（１０８）は、次式のように変形できる。
【０１７４】
【数５３】
0006604008.tif 000061
【０１７５】
式（１１１）及び式（１１２）は、双曲線を表している。このように、楕円の方程式において定数ａ及び角度θを純虚数に設定すると、双曲線の方程式が得られる。楕円の周長を求める楕円積分に対しても、同様の変形を適用することができる。この場合、楕円積分における角度を純虚数に設定すればよい。
【０１７６】
例えば、式（９２）及び式（９３）の角度φを純虚数ｉφｒに設定すると、次式が得られる。
【０１７７】
【数５４】
0006604008.tif 000062
【０１７８】
このとき、Ｘ及びＹはともに実数になる。したがって、式（９５）のＲＦ及びＲＤは、楕円の場合と同様に実数になり、ＲＦ及びＲＤの実装としては、実数の入力係数のみに対応すれば十分である。
【０１７９】
次に、二次曲線が放物線の場合について説明する。放物線の方程式は、次式のように表される。
【０１８０】
【数５５】
0006604008.tif 000063
【０１８１】
式（７１）に対して回転及び平行移動を含む座標変換を適用することで、式（７１）を式（１２１）の形式に変形することができる。
【０１８２】
図１９は、式（１２１）の放物線の例を示している。Ｘがｘ０からｘ１までの範囲における放物線の弧長は、次式の積分により求められる。
【０１８３】
【数５６】
0006604008.tif 000064
【０１８４】
ここで、式（１２１）の積分変数を次式の変数ｔに変換する。
【０１８５】
【数５７】
0006604008.tif 000065
【０１８６】
Ｘは、式（１２３）のｔを用いて、次式のように表される。
【０１８７】
【数５８】
0006604008.tif 000066
【０１８８】
ｄＸを求めるために、式（１２３）の両辺をＸで微分すると、次式が得られる。
【０１８９】
【数５９】
0006604008.tif 000067
【０１９０】
式（１２６）より、ｄＸは、次式のように表される。
【０１９１】
【数６０】
0006604008.tif 000068
【０１９２】
式（１２１）及び式（１２７）より、式（１２２）の弧長Ｌ（ｘ０，ｘ１）は、次式のＬ（ｔ０，ｔ１）に置き換えられる。
【０１９３】
【数６１】
0006604008.tif 000069
【０１９４】
式（１２８）のｔ０及びｔ１は、次式のように表される。
【０１９５】
【数６２】
0006604008.tif 000070
【０１９６】
放物線上で基準点ＰＣから距離Ｌだけ離れた点Ｘ２を求める場合、式（１２８）〜式（１３０）を用いて数値計算が行われる。
【０１９７】
まず、式（１２２）においてｘ０＝０、ｘ１＝ｘと置くと、弧長Ｌ（ｘ０，ｘ１）は、次式のＬ（ｘ）に置き換えられる。
【０１９８】
【数６３】
0006604008.tif 000071
【０１９９】
式（１３１）のＬ（ｘ）は、原点から点Ｐ（ｘ，ｙ）までの弧長を表す関数であり、式（１２８）〜式（１３０）から解析的に求めることができる。ここで、Ｌ（ｘ）は、ｘ＞０のとき正の値を取り、ｘ＜０のとき負の値を取ると定義する。基準点ＰＣのＸ座標がＸＣであり、点Ｐ（ｘ，ｙ）が点Ｘ２に対応する場合、次式が成り立つ。
【０２００】
Ｌ（ｘ）＝Ｌ（ＸＣ）＋Ｌ＝Ｌ０      （１３２）
【０２０１】
式（１３２）のＬ（ＸＣ）は、ＸＣ＞０のとき正の値を取り、ＸＣ＜０のとき負の値を取る。数値計算としてニュートン法を用いた場合、式（１３２）を満たすｘを求めるために、次式の関数ｆ（ｘ）が定義される。
【０２０２】
ｆ（ｘ）＝Ｌ（ｘ）−Ｌ０      （１３３）
【０２０３】
式（１３２）を満たすｘは、ｆ（ｘ）＝０を満たすｘである。ｆ（ｘ）の微分は、次式のように表される。
【０２０４】
【数６４】
0006604008.tif 000072
【０２０５】
このとき、ｘに対する漸化式として、次式が適用される。
【０２０６】
【数６５】
0006604008.tif 000073
【０２０７】
ステップ７０７において二次曲面上の点Ｘ２が求められると、補正部３１３は、ステップ７０８において、式（５）及び式（９）〜式（１１）の関係に基づいて、点Ｘ２に対応する撮影画像５１２上の点Ｑを求める。
【０２０８】
以上説明したように、３次元形状５１３を二次曲面で近似することで、３次元形状５１３上の距離を楕円等の二次曲線上の距離に置き換えることができ、手のひら上の距離計算を比較的容易に実装することが可能になる。これにより、点Ｘ１に対応する点Ｘ２を３次元形状５１３上で探索する必要がなくなり、処理が高速化される。
【０２０９】
なお、補正画像５１４上のすべての画素に対して図７の正規化処理を適用する代わりに、画素を適当に間引いて処理対象の画素の個数を削減し、残りの画素の画素値を線形補間等により求めてもよい。二次曲面は滑らかな変化を持つ曲面であるため、間引き処理を行っても、補正画像５１４の精度に対してほとんど影響を与えない。
【０２１０】
また、図７の正規化処理では、撮影画像５１２上の画素の位置を補正することで補正画像５１４を生成しているが、画素の位置に加えて画素値も補正することで、補正画像５１４の精度をさらに高めることが可能である。
【０２１１】
撮影画像５１２上の各点の輝度値は、撮像部５０１から被写体までの距離と、被写体の局所的な傾きとから計算することができる。具体的には、撮影画像５１２上の点Ｑ（ｕ，ｖ）の輝度値Ｉ（ｕ，ｖ）は、次式により計算される。
【０２１２】
【数６６】
0006604008.tif 000074
【０２１３】
式（１４１）のＲは、撮像素子部と被写体上の点との距離を表し、θは、撮像素子部から被写体上の点へ向かうベクトルと、被写体上の点における接平面の法線ベクトルとが成す角度を表す。Ｉ０は定数である。式（１４１）より、輝度値Ｉ（ｕ，ｖ）は、距離Ｒの二乗に反比例し、ｃｏｓθに比例することが分かる。式（１４１）の関係を用いれば、展開平面及び二次曲面の方程式に基づいて、二次曲面上の点Ｘ２に対応する輝度値から、展開平面上の点Ｘ１に対応する輝度値を推定することができる。
【０２１４】
図２０は、撮像素子部から展開平面及び二次曲面までの距離の例を示している。この例では、撮像素子部８０２から二次曲面８１２上の点Ｘ２までの距離はＲであり、撮像素子部８０２から展開平面９０１上の点Ｘ１までの距離はＲ’である。補正部３１３は、図７のステップ７０９において輝度値補正処理を行い、点Ｘ２に対応する輝度値Ｉ（ｕ，ｖ）から、次式により、点Ｘ１に対応する輝度値Ｉ’（ｕ，ｖ）を求める。
【０２１５】
【数６７】
0006604008.tif 000075
【０２１６】
式（１４２）のθは、撮像素子部８０２から点Ｘ２へ向かうベクトル２０１１と、点Ｘ２において二次曲面８１２に接する接平面２００１の法線ベクトルとが成す角度を表す。θ’は、撮像素子部８０２から点Ｘ１へ向かうベクトル２０１２と、展開平面９０１の法線ベクトルとが成す角度を表す。
【０２１７】
そして、補正部３１３は、点Ｘ２に対応する輝度値の代わりに、点Ｘ１に対応する輝度値を点Ｑ’の画素値として設定する。
【０２１８】
式（１４２）の右辺において、静脈センサ固有の輝度分布に基づく係数を追加してもよい。この場合、記憶部３１２は、静脈センサの３次元輝度分布の情報を記憶し、補正部３１３は、３次元輝度分布に基づいて点Ｘ１に対応する輝度値を求める。これにより、輝度値補正処理の精度がさらに向上する。
【０２１９】
式（１４１）では、理想的な点光源のモデルを想定しているが、実際の静脈センサでは、必ずしも輝度値Ｉ（ｕ，ｖ）が距離Ｒの二乗に反比例するとは限らない。そこで、式（１４１）の代わりに、輝度値Ｉ（ｕ，ｖ）が距離Ｒのα乗に反比例する計算式を用いてもよい。この場合、式（１４２）の代わりに、次式が用いられる。
【０２２０】
【数６８】
0006604008.tif 000076
【０２２１】
ここで、二次曲面に接する接平面の法線ベクトルを求める処理について説明する。二次曲面上の点Ｐを変数ｕ及び変数ｖを用いてＰ（ｕ，ｖ）と表すと、点Ｐにおける接平面の法線ベクトル
0006604008.tif 000077
（以下では、法線ベクトルｎと記す）は、点Ｐの位置ベクトル
0006604008.tif 000078
（以下では、位置ベクトルｐと記す）を用いて次式のように表される。
【０２２２】
【数６９】
0006604008.tif 000079
【０２２３】
式（１５１）において、位置ベクトルｐの添え字ｕ及び添え字ｖは、それぞれ、変数ｕ及び変数ｖによる偏微分を表している。ここで、変数ｕ及び変数ｖが３次元空間における点ＰのＸ座標及びＹ座標を表すものとすると、点Ｐ（Ｘ，Ｙ，Ｚ）は、二次曲面上の点であることから、次式のように表される。
【０２２４】
【数７０】
0006604008.tif 000080
【０２２５】
このとき、式（１５１）における位置ベクトルｐの偏微分は、次式のように表される。
【０２２６】
【数７１】
0006604008.tif 000081
【０２２７】
式（１５３）及び式（１５４）より、式（１５１）の右辺における分子及び分母は、次式のように求められる。
【０２２８】
【数７２】
0006604008.tif 000082
【０２２９】
式（１５６）及び式（１５７）より、式（１５１）の法線ベクトルｎは、次式のように求められる。
【０２３０】
【数７３】
0006604008.tif 000083
【０２３１】
輝度値補正処理を行うことで、手のひらが平らにかざされていた場合に見えるはずの画像を生成することができ、正規化処理の精度が向上する。これにより、特徴抽出処理を安定して行うことが可能になり、照合処理の精度がさらに改善される。
【０２３２】
ところで、手のひらの形状を近似した二次曲面は、手のひらのすぼみの度合いを表しているため、二次曲面から検出したすぼみに基づいて認証対象者を誘導することで、特徴抽出処理に適した姿勢の手のひらを撮影することが可能になる。誘導とは、認証対象者の手のひらが正しくかざされているか否かを判定し、認証対象者に対して判定結果をフィードバックする処理である。
【０２３３】
図２１は、このような誘導を行う画像処理装置３０１の具体例を示している。図２１の画像処理装置３０１は、図５の画像処理装置３０１に誘導部２１０１を追加した構成を有する。誘導部２１０１は、二次曲面上の複数点における曲率を計算し、曲率に基づいて誘導を行う。
【０２３４】
３次元形状の場合、ある点において無数の曲率が存在し得るため、２次元形状とは異なり、ある点における曲率として、ガウス曲率、平均曲率等の様々な曲率を定義し得る。誘導部２１０１は、それらの様々な曲率のうち所定の曲率を計算する。
【０２３５】
補正部３１３が行う正規化処理は演算量が大きいため、誘導を行う場合は、正規化処理のうち二次曲面による近似のみを行い、誘導により曲率が所定の範囲内に収まった時点で二次曲面上の点を展開平面上に展開することが望ましい。これにより、認証対象者に対するフィードバックを迅速に行いながら、正規化処理の精度を高めることができる。
【０２３６】
図２２は、図２１の画像処理装置３０１が行う生体認証処理の例を示すフローチャートである。図２２のステップ２２０１、ステップ２２０２、ステップ２２０７、及びステップ２２０８の処理は、図６のステップ６０１、ステップ６０２、ステップ６０４、及びステップ６０５の処理と同様である。また、図２２のステップ２２０３の処理は、図７のステップ７０１の処理と同様である。
【０２３７】
ステップ２２０４において、誘導部２１０１は、補正部３１３が生成した二次曲面上の複数点における曲率を計算し、複数点の曲率の統計値を求める。曲率の統計値としては、平均値、中央値、最大値、最小値等を用いることができる。
【０２３８】
次に、誘導部２１０１は、曲率の統計値を閾値Ｔと比較し（ステップ２２０５）、曲率の統計値が閾値Ｔよりも大きい場合（ステップ２２０５，ＮＯ）、手を開くように指示する誘導メッセージを出力する（ステップ２２０９）。そして、画像処理装置３０１は、ステップ２２０１以降の処理を繰り返す。
【０２３９】
一方、曲率の統計値が閾値Ｔ以下である場合（ステップ２２０５，ＹＥＳ）、補正部３１３は、正規化処理を行う（ステップ２２０６）。ステップ２２０６の正規化処理は、図７のステップ７０２〜ステップ７１０の処理に対応する。
【０２４０】
ここで、二次曲面上の曲率を計算する処理について説明する。二次曲面上の点Ｐから点Ｐに極近い点までの距離ｄｓは、次式のように表される。
【０２４１】
【数７４】
0006604008.tif 000084
【０２４２】
式（１６１）のＥ、Ｆ、及びＧは、点Ｐの位置ベクトルｐの偏微分を用いて次式のように表される。
【０２４３】
【数７５】
0006604008.tif 000085
【０２４４】
式（１５３）及び式（１５４）を用いると、式（１６２）〜式（１６４）のＥ、Ｆ、及びＧは、次式のように表される。
【０２４５】
【数７６】
0006604008.tif 000086
【０２４６】
点Ｐにおけるガウス曲率Ｋ及び平均曲率Ｈを求めるために、まず、次式のＬ、Ｍ、及びＮを求める。
【０２４７】
【数７７】
0006604008.tif 000087
【０２４８】
式（１５３）及び式（１５４）より、式（１６８）〜式（１７０）の位置ベクトルｐの２回偏微分は、次式のように表される。
【０２４９】
【数７８】
0006604008.tif 000088
【０２５０】
式（１７１）〜式（１７３）を用いると、式（１６８）〜式（１７０）のＬ、Ｍ、及びＮは、次式のように表される。
【０２５１】
【数７９】
0006604008.tif 000089
【０２５２】
点Ｐにおけるガウス曲率Ｋは、式（１６５）〜式（１６７）のＥ、Ｆ、及びＧと式（１７４）〜式（１７６）のＬ、Ｍ、及びＮとを用いて、次式のように表される。
【０２５３】
【数８０】
0006604008.tif 000090
【０２５４】
また、点Ｐにおける平均曲率Ｈは、次式のように表される。
【０２５５】
【数８１】
0006604008.tif 000091
【０２５６】
ステップ２２０５において、誘導部２１０１は、曲率の統計値と閾値Ｔとの比較に加えて、手のひらの傾きが所定範囲内であるか否かを判定してもよい。図２３は、手のひらの傾きの判定を追加した生体認証処理の例を示すフローチャートである。
【０２５７】
図２３のステップ２３０１〜ステップ２３０３、ステップ２３０５、ステップ２３０７、及びステップ２３１０〜ステップ２３１２の処理は、図２２のステップ２２０１〜ステップ２２０５及びステップ２２０７〜ステップ２２０９の処理と同様である。
【０２５８】
ステップ２３０４において、補正部３１３は、図７のステップ７０２と同様にして展開平面を生成し、ステップ２３０６において、誘導部２１０１は、展開平面の法線ベクトルに基づいて展開平面の傾きを計算する。展開平面の傾きとしては、例えば、撮像素子部の撮像面と展開平面とが成す角度を用いることができる。
【０２５９】
そして、曲率の統計値が閾値Ｔ以下である場合（ステップ２３０７，ＹＥＳ）、誘導部２１０１は、展開平面の傾きを閾値Ｔ’と比較する（ステップ２３０８）。傾きが閾値Ｔ’よりも大きい場合（ステップ２３０８，ＮＯ）、誘導部２１０１は、手のひらを撮像面と平行にかざすように指示する誘導メッセージを出力する（ステップ２３１３）。そして、画像処理装置３０１は、ステップ２３０１以降の処理を繰り返す。
【０２６０】
一方、傾きが閾値Ｔ’以下である場合（ステップ２３０８，ＹＥＳ）、画像処理装置３０１は、正規化処理を行う（ステップ２３０９）。２３０９の正規化処理は、図７のステップ７０３〜ステップ７１０の処理に対応する。
【０２６１】
図６、図２２、及び図２３の生体認証処理は、手のひら静脈認証以外の生体認証にも適用可能である。例えば、手のひらを対象とする手相認証又は掌紋認証において、正規化処理を適用してもよい。
【０２６２】
ところで、図６、図２２、及び図２３の生体認証処理では、補正部３１３は、撮影画像５１２全体に対してステップ７０４〜ステップ７１０の展開処理を適用することで、補正画像５１４を生成している。これにより、特徴抽出処理が安定し、照合処理の精度が向上する。
【０２６３】
しかし、撮影画像５１２全体ではなく、撮影画像５１２の一部の点に対して展開処理を適用することも可能である。例えば、特徴情報５１５は、静脈パターン、手相、掌紋等のパターンを表す情報であり、これらのパターン上の点は、撮影画像５１２の一部の点に対応する。そこで、撮影画像５１２の代わりに、特徴情報５１５に対して展開処理を適用することが考えられる。
【０２６４】
この場合、特徴抽出部５０２は、撮影画像５１２から特徴情報５１５を抽出して、記憶部３１２に格納し、補正部３１３は、特徴情報５１５が表すパターン上の点に対して展開処理を行って、補正パターンを生成し、記憶部３１２に格納する。そして、照合部５０３は、補正パターンと登録特徴情報５１１とを比較して、生体の認証を行う。特徴情報５１５に対して展開処理を適用する利点として、次の２点が考えられる。
【０２６５】
第１の利点は、演算量の削減である。撮影画像５１２全体に対して展開処理を適用する場合、撮影画像５１２のすべての点（全画素）が処理対象になる。一方、特徴情報５１５に対して展開処理を適用する場合、特徴情報５１５が表すパターン上の点のみが処理対象になるため、展開処理の演算量が削減される。
【０２６６】
第２の利点は、互換性の向上である。展開処理が適用されていない撮影画像から登録特徴情報５１１が生成されている場合、認証対象者の撮影画像のみに対して展開処理を適用すると、照合処理の精度が低下することがある。その理由は、登録者と認証対象者とが同一人物であり、登録時及び照合時の手のひらの形状が同じであっても、一方の撮影画像のみに対して展開処理を適用すると、２つの特徴情報が類似しないことがあるからである。
【０２６７】
そこで、展開処理が適用されている特徴情報と、展開処理が適用されていない特徴情報との間の互換性を高めるために、展開処理が適用されていない特徴情報を、登録特徴情報５１１として登録する方法が考えられる。この場合、生体認証処理を行う際に、登録特徴情報５１１と認証対象者の特徴情報５１５の両方に対して、展開処理が適用される。
【０２６８】
図２４は、このような生体認証処理の例を示している。登録情報２４０１は、展開処理が適用されていない登録特徴情報２４１１と展開情報２４１２とを含み、認証用情報２４０２は、展開処理が適用されていない特徴情報２４２１と展開情報２４２２とを含む。
【０２６９】
展開情報２４１２は、登録特徴情報２４１１に対して展開処理を行うための情報であり、展開情報２４２２は、特徴情報２４２１に対して展開処理を行うための情報である。展開情報２４１２及び展開情報２４２２は、手のひらに対応する３次元形状５１３、二次曲面を表す方程式、撮像素子部の焦点距離、撮像素子部の画素サイズ等の情報を含む。登録時及び認証時の撮像素子部が同一である場合は、撮像素子部の画素サイズを省略してもよい。
【０２７０】
生体認証処理において、補正部３１３は、展開情報２４１２を用いて、登録特徴情報２４１１に対して展開処理を行い、補正パターン２４０３を生成する。また、補正部３１３は、展開情報２４２２を用いて、特徴情報２４２１に対して展開処理を行い、補正パターン２４０４を生成する。そして、照合部５０３は、補正パターン２４０３と補正パターン２４０４とを比較する照合処理を行う。
【０２７１】
図２５は、登録情報２４０１が展開情報２４１２を含まない場合の生体認証処理の例を示している。登録情報２４０１は、登録特徴情報２４１１のみを含み、展開情報２４１２が欠落している。この場合、補正部３１３は、登録特徴情報２４１１及び特徴情報２４２１に対して展開処理を行わず、照合部５０３は、登録特徴情報２４１１と特徴情報２４２１とを直接比較する照合処理を行う。登録情報２４０１が展開情報２４１２を含み、登録情報２４０２が展開情報２４２２を含まない場合も、図２５と同様の照合処理が行われる。
【０２７２】
このように、登録特徴情報と展開情報とを別々に登録することで、特徴情報の互換性を維持しながら、照合処理の精度を向上させることができる。
【０２７３】
図３、図５、及び図２１の画像処理装置３０１の構成は一例に過ぎず、画像処理装置３０１の用途や条件に応じて、一部の構成要素を省略又は変更してもよい。例えば、記憶部３１２があらかじめ撮影画像５１２を記憶している場合は、図５の撮影部５０１を省略することができる。また、画像処理装置３０１が生体認証処理を行わない場合は、図５の特徴抽出部５０２及び照合部５０３を省略することができる。
【０２７４】
図４、図６、図７、図２２、及び図２３のフローチャートは一例に過ぎず、画像処理装置３０１の構成や条件に応じて一部の処理を省略又は変更してもよい。例えば、記憶部３１２があらかじめ撮影画像５１２を記憶している場合は、図６のステップ６０１、図２２のステップ２２０１、及び図２３のステップ２３０１の処理を省略することができる。また、画像処理装置３０１が生体認証処理を行わない場合は、図６のステップ６０４、ステップ６０５、図２２のステップ２２０７、ステップ２２０８、及び図２３のステップ２３１０、ステップ２３１１の処理を省略することができる。
【０２７５】
図６のステップ６０１、図２２のステップ２２０１、及び図２３のステップ２３０１において、撮影部５０１は、近赤外線以外の照明光により撮影画像５１２を生成してもよい。被写体として、手のひら以外の物体を用いることも可能である。
【０２７６】
図６のステップ６０２、図２２のステップ２２０２、及び図２３のステップ２３０２において、形状推定部３１１は、ＳＦＳ技術以外の方法により被写体の形状を推定してもよい。
【０２７７】
図７の正規化処理において、手のひらの傾きを補正する必要がない場合は、ステップ７０３の処理を省略することができる。この場合、補正部３１３は、展開平面を最終平面として用いる。図７のステップ７０４〜ステップ７１０において、補正部３１３は、変換後の点Ｑ’を処理対象として変換前の点Ｑを求める代わりに、変換前の点Ｑを処理対象として変換後の点Ｑ’を求めてもよい。
【０２７８】
図２３のステップ２３０５とステップ２３０６の処理の順序を入れ替えてもよく、ステップ２３０７とステップ２３０８の処理の順序を入れ替えてもよい。
【０２７９】
図８〜図１０、図１３、図１４、及び図２０の手のひらの形状８１１、二次曲面８１２、展開平面９０１、最終平面１００１、及び断面平面１４０１は一例に過ぎず、手のひらの形状、二次曲面、展開平面、最終平面、及び断面平面は、別の形状であってもよい。
【０２８０】
式（１）〜式（１７８）は一例に過ぎず、別の計算式又は座標系を用いて、正規化処理、輝度値補正処理、又は曲率計算を行ってもよい。例えば、補正部３１３は、３次元形状５１３を平面により近似する代わりに、別の方法で展開平面を生成してもよく、二次曲面と展開平面との接点の代わりに、３次元空間内の別の点を基準点ＰＣとして設定してもよい。
【０２８１】
また、補正部３１３は、二次曲面上における基準点ＰＣから点Ｘ２までの距離が、展開平面上における基準点ＰＣから点Ｘ１までの距離と一致するという条件の代わりに、別の条件を用いて点Ｘ２を求めてもよい。補正部３１３は、点Ｘ２が展開平面及び二次曲面を切断する断面平面上に存在するという条件の代わりに、別の条件を用いて点Ｘ２を求めてもよい。
【０２８２】
図２６は、図３、図５、及び図２１の画像処理装置３０１を実現するための情報処理装置の構成例を示している。図２６の情報処理装置は、ＣＰＵ２６０１、メモリ２６０２、入力装置２６０３、出力装置２６０４、補助記憶装置２６０５、媒体駆動装置２６０６、及びネットワーク接続装置２６０７を備える。これらの構成要素はバス２６０８により互いに接続されている。バス２６０８には、図５及び図２１の撮影部５０１が接続されていてもよい。
【０２８３】
メモリ２６０２は、例えば、Read Only Memory（ＲＯＭ）、Random Access Memory（ＲＡＭ）、フラッシュメモリ等の半導体メモリであり、画像処理又は生体認証処理に用いられるプログラム及びデータを格納する。メモリ２６０２は、図３、図５、及び図２１の記憶部３１２として用いることができる。
【０２８４】
ＣＰＵ２６０１（プロセッサ）は、例えば、メモリ２６０２を利用してプログラムを実行することにより、図３、図５、及び図２１の形状推定部３１１、補正部３１３、特徴抽出部５０２、照合部５０３、及び誘導部２１０１として動作する。
【０２８５】
入力装置２６０３は、例えば、キーボード、ポインティングデバイス等であり、オペレータ又はユーザからの指示や情報の入力に用いられる。出力装置２６０４は、例えば、表示装置、プリンタ、スピーカ等であり、オペレータ又はユーザへの問い合わせ又は指示、及び処理結果の出力に用いられる。処理結果は、補正画像５１４であってもよく、生体認証処理の認証結果であってもよい。
【０２８６】
補助記憶装置２６０５は、例えば、磁気ディスク装置、光ディスク装置、光磁気ディスク装置、テープ装置等である。補助記憶装置２６０５は、ハードディスクドライブ又はフラッシュメモリであってもよい。情報処理装置は、補助記憶装置２６０５にプログラム及びデータを格納しておき、それらをメモリ２６０２にロードして使用することができる。補助記憶装置２６０５は、図３、図５、及び図２１の記憶部３１２として用いることができる。
【０２８７】
媒体駆動装置２６０６は、可搬型記録媒体２６０９を駆動し、その記録内容にアクセスする。可搬型記録媒体２６０９は、メモリデバイス、フレキシブルディスク、光ディスク、光磁気ディスク等である。可搬型記録媒体２６０９は、Compact Disk Read Only Memory（ＣＤ−ＲＯＭ）、Digital Versatile Disk（ＤＶＤ）、Universal Serial Bus（ＵＳＢ）メモリ等であってもよい。オペレータ又はユーザは、この可搬型記録媒体２６０９にプログラム及びデータを格納しておき、それらをメモリ２６０２にロードして使用することができる。
【０２８８】
このように、画像処理又は生体認証処理に用いられるプログラム及びデータを格納するコンピュータ読み取り可能な記録媒体は、メモリ２６０２、補助記憶装置２６０５、又は可搬型記録媒体２６０９のような、物理的な（非一時的な）記録媒体である。
【０２８９】
ネットワーク接続装置２６０７は、Local Area Network、Wide Area Network等の通信ネットワークに接続され、通信に伴うデータ変換を行う通信インタフェースである。情報処理装置は、プログラム及びデータを外部の装置からネットワーク接続装置２６０７を介して受け取り、それらをメモリ２６０２にロードして使用することができる。
【０２９０】
情報処理装置は、ネットワーク接続装置２６０７を介して、ユーザ端末から処理要求を受信し、画像処理又は生体認証処理を行って処理結果をユーザ端末へ送信することもできる。
【０２９１】
なお、情報処理装置が図２６のすべての構成要素を含む必要はなく、用途や条件に応じて一部の構成要素を省略することも可能である。例えば、情報処理装置がユーザ端末から通信ネットワーク経由で処理要求を受信する場合は、入力装置２６０３及び出力装置２６０４を省略してもよい。また、可搬型記録媒体２６０９又は通信ネットワークを利用しない場合は、媒体駆動装置２６０６又はネットワーク接続装置２６０７を省略してもよい。
【０２９２】
情報処理装置がスマートフォンのような通話機能を有する携帯端末である場合、マイク及びスピーカのような通話用の装置を含んでいてもよく、カメラのような撮像装置を含んでいてもよい。
【０２９３】
開示の実施形態とその利点について詳しく説明したが、当業者は、特許請求の範囲に明確に記載した本発明の範囲から逸脱することなく、様々な変更、追加、省略をすることができるであろう。
【０２９４】
図１乃至図２６を参照しながら説明した実施形態に関し、さらに以下の付記を開示する。
（付記１）
被写体の画像に基づいて、前記被写体の形状を推定する形状推定部と、
前記被写体の形状を記憶する記憶部と、
前記被写体の形状に基づいて、前記被写体上の複数点の各々を結ぶ二次曲面を生成し、前記二次曲面に基づいて、前記複数点の各々を前記二次曲面に接する平面上に展開し、前記平面上に展開された各点の位置に基づいて前記画像を補正する補正部と、
を備えることを特徴とする画像処理装置。
（付記２）
前記形状推定部は、前記画像の輝度分布に基づいて、前記被写体の形状を推定することを特徴とする付記１記載の画像処理装置。
（付記３）
前記補正部は、前記二次曲面上の基準点と前記複数点の各々との距離に基づいて、前記複数点の各々を前記平面上に展開することを特徴とする付記１又は２記載の画像処理装置。
（付記４）
前記基準点は、前記二次曲面と前記平面との接点であり、前記補正部は、前記基準点と前記複数点の各々との前記距離と、前記基準点と前記平面上に展開された各点との距離とが一致するように、前記複数点の各々を前記平面上に展開することを特徴とする付記３記載の画像処理装置。
（付記５）
前記補正部は、被写体の画像を撮影した撮像素子部と前記二次曲面との距離と、前記撮像素子部と前記平面との距離とに基づいて、前記平面上に展開された各点の画素値を補正することを特徴とする付記１乃至４のいずれか１項に記載の画像処理装置。
（付記６）
誘導部をさらに備え、前記被写体は手のひらであり、前記誘導部は、前記二次曲面の曲率に基づいて、前記手のひらを開くように誘導することを特徴とする付記１乃至５のいずれか１項に記載の画像処理装置。
（付記７）
被写体の画像に基づいて、前記被写体の形状を推定し、
前記被写体の形状に基づいて、前記被写体上の複数点の各々を結ぶ二次曲面を生成し、
前記二次曲面に基づいて、前記複数点の各々を前記二次曲面に接する平面上に展開し、
前記平面上に展開された各点の位置に基づいて前記画像を補正する、
処理をコンピュータに実行させる画像処理プログラム。
（付記８）
前記コンピュータは、前記画像の輝度分布に基づいて、前記被写体の形状を推定することを特徴とする付記７記載の画像処理プログラム。
（付記９）
前記コンピュータは、前記二次曲面上の基準点と前記複数点の各々との距離に基づいて、前記複数点の各々を前記平面上に展開することを特徴とする付記７又は８記載の画像処理プログラム。
（付記１０）
前記コンピュータは、被写体の画像を撮影した撮像素子部と前記二次曲面との距離と、前記撮像素子部と前記平面との距離とに基づいて、前記平面上に展開された各点の画素値を補正することを特徴とする付記７乃至９のいずれか１項に記載の画像処理プログラム。
（付記１１）
被写体を撮影し、
前記被写体の画像に基づいて、前記被写体の形状を推定し、
前記被写体の形状に基づいて、前記被写体上の複数点の各々を結ぶ二次曲面を生成し、
前記二次曲面に基づいて、前記複数点の各々を前記二次曲面に接する平面上に展開し、
前記平面上に展開された各点の位置に基づいて前記画像を補正する、
ことを特徴とする画像処理方法。
（付記１２）
前記画像の輝度分布に基づいて、前記被写体の形状を推定することを特徴とする付記１１記載の画像処理方法。
（付記１３）
前記二次曲面上の基準点と前記複数点の各々との距離に基づいて、前記複数点の各々を前記平面上に展開することを特徴とする付記１１又は１２記載の画像処理方法。
（付記１４）
被写体の画像を撮影した撮像素子部と前記二次曲面との距離と、前記撮像素子部と前記平面との距離とに基づいて、前記平面上に展開された各点の画素値を補正することを特徴とする付記１１乃至１３のいずれか１項に記載の画像処理方法。
【符号の説明】
【０２９５】
１０１  手のひら
１０２  静脈センサ
３０１  画像処理装置
３１１  形状推定部
３１２  記憶部
３１３  補正部
３２１  形状
５０１  撮影部
５０２  特徴抽出部
５０３  照合部
５１１、２４１１  登録特徴情報
５１２  撮影画像
５１３  ３次元形状
５１４  補正画像
５１５、２４２１  特徴情報
８０１  レンズ
８０２  撮像素子部
８１１  手のひらの形状
８１２  二次曲面
９０１  展開平面
１００１  最終平面
１１０１  ３次元平面
１１０２  点
１２０１  ３次元曲面
１４０１  断面平面
１６０１  交点
２００１  接平面
２０１１、２０１２  ベクトル
２１０１  誘導部
２４０１  登録情報
２４０２  認証用情報
２４１２、２４２２  展開情報
２４０３、２４０４  補正パターン
２６０１  ＣＰＵ
２６０２  メモリ
２６０３  入力装置
２６０４  出力装置
２６０５  補助記憶装置
２６０６  媒体駆動装置
２６０７  ネットワーク接続装置
２６０８  バス
２６０９  可搬型記録媒体
【図１】
0006604008.tif 000092
【図２】
0006604008.tif 000093
【図３】
0006604008.tif 000094
【図４】
0006604008.tif 000095
【図５】
0006604008.tif 000096
【図６】
0006604008.tif 000097
【図７】
0006604008.tif 000098
【図８】
0006604008.tif 000099
【図９】
0006604008.tif 000100
【図１０】
0006604008.tif 000101
【図１１】
0006604008.tif 000102
【図１２】
0006604008.tif 000103
【図１３】
0006604008.tif 000104
【図１４】
0006604008.tif 000105
【図１５】
0006604008.tif 000106
【図１６】
0006604008.tif 000107
【図１７】
0006604008.tif 000108
【図１８】
0006604008.tif 000109
【図１９】
0006604008.tif 000110
【図２０】
0006604008.tif 000111
【図２１】
0006604008.tif 000112
【図２２】
0006604008.tif 000113
【図２３】
0006604008.tif 000114
【図２４】
0006604008.tif 000115
【図２５】
0006604008.tif 000116
【図２６】
0006604008.tif 000117