【文献】
田中 友,ステレオ計測を用いた見開き書籍画像の歪み補正,映像情報メディア学会技術報告 Vol.30 No.36,(社)映像情報メディア学会,2006年,Vol.30 No.36,31〜36
(58)【調査した分野】(Int.Cl.,DB名)
前記補正部は、前記二次曲面上の基準点と前記複数点の各々との距離に基づいて、前記複数点の各々を前記平面上に展開することを特徴とする請求項1又は2記載の画像処理装置。
前記補正部は、被写体の画像を撮影した撮像素子部と前記二次曲面との距離と、前記撮像素子部と前記平面との距離とに基づいて、前記平面上に展開された各点の画素値を補正することを特徴とする請求項1乃至3のいずれか1項に記載の画像処理装置。
誘導部をさらに備え、前記被写体は手のひらであり、前記誘導部は、前記二次曲面の曲率に基づいて、前記手のひらを開くように誘導することを特徴とする請求項1乃至4のいずれか1項に記載の画像処理装置。
【発明を実施するための形態】
【0014】
以下、図面を参照しながら、実施形態を詳細に説明する。
図1は、手のひら内の静脈パターンを撮影する静脈センサの例を示している。静脈パターンを適切に撮影するためには、被写体である手のひら101が静脈センサ102に対して平行になっていることが望ましい。手のひら101が静脈センサ102に対して傾いている場合、例えば、近赤外照明の反射光に対してSFS技術を適用することで手のひら101の傾きを測定し、傾きによる静脈パターンの相違を補正することができる。
【0015】
ところが、静脈パターンの登録時又は照合時において、
図2に示すように手のひらがすぼまっていたり、あるいは過剰に開いていたりする場合、手のひらの3次元形状の歪みによる静脈パターンの相違が残ると考えられる。このため、本人認証が困難になることがある。そこで、手のひらを平面ではなく、曲面とみなすことで、静脈パターンの相違を高い精度で補正することが望まれる。
【0016】
図3は、実施形態の画像処理装置の機能的構成例を示している。画像処理装置301は、形状推定部311、記憶部312、及び補正部313を含む。
【0017】
図4は、
図3の画像処理装置301が行う画像処理の例を示すフローチャートである。形状推定部311は、被写体の画像に基づいて被写体の形状321を推定し、記憶部312は、被写体の形状321を記憶する(ステップ401)。
【0018】
補正部313は、被写体の形状321に基づいて、被写体上の複数点の各々を結ぶ二次曲面を生成し(ステップ402)、複数点の各々を二次曲面に接する平面上に展開する(ステップ403)。そして、補正部313は、平面上に展開された各点の位置に基づいて、被写体の画像を補正する(ステップ404)。
【0019】
図3の画像処理装置301によれば、形状が歪んだ被写体の画像を正確に正規化することができる。
【0020】
図5は、手のひら静脈認証を行う画像処理装置301の具体例を示している。
図5の画像処理装置301は、形状推定部311、記憶部312、補正部313、撮影部501、特徴抽出部502、及び照合部503を含む。記憶部312は、認証に使用する静脈パターンを、登録特徴情報511として記憶している。登録特徴情報511は、登録テンプレートと呼ばれることもある。
【0021】
撮影部501は、静脈センサに対応し、照明部及び撮像素子部を含む。照明部は、近赤外線の照明光を被写体である生体に照射し、撮像素子部は、生体からの反射光を検出して生体の撮影画像512を生成する。
【0022】
形状推定部311は、撮影画像512に対してSFS技術を適用し、生体の3次元形状513を推定する。3次元形状513は、
図3の形状321に対応する。補正部313は、撮影画像512に対して正規化処理を行って補正画像514を生成する。
【0023】
特徴抽出部502は、補正画像514から、静脈パターンを特徴情報515として抽出する。照合部503は、抽出された特徴情報515と登録特徴情報511とを比較し、特徴情報515と登録特徴情報511との間の類似度を計算する。そして、照合部503は、類似度を閾値と比較して生体の認証を行う。例えば、類似度が閾値よりも大きい場合、生体は認証され、類似度が閾値以下である場合、生体は認証されない。
【0024】
図6は、
図5の画像処理装置301が行う生体認証処理の例を示すフローチャートである。まず、撮影部501は、認証対象者の手のひらを撮影して撮影画像512を生成し、撮影画像512を記憶部312に格納する(ステップ601)。
【0025】
次に、形状推定部311は、撮影画像512から手のひらの3次元形状513を推定して、記憶部312に格納する(ステップ602)。そして、補正部313は、撮影画像512に対して正規化処理を行って補正画像514を生成し、記憶部312に格納する(ステップ603)。
【0026】
次に、特徴抽出部502は、補正画像514から特徴情報515を抽出して、記憶部312に格納する(ステップ604)。そして、照合部503は、特徴情報515と登録特徴情報511とを比較して、生体の認証を行う(ステップ605)。
【0027】
図7は、
図6のステップ603における正規化処理の例を示すフローチャートである。まず、補正部313は、3次元形状513上の複数点を結ぶ二次曲面を生成し、その二次曲面により3次元形状513を近似する(ステップ701)。そして、補正部313は、二次曲面上に接する展開平面を生成し(ステップ702)、展開平面を回転させて、撮影部501の撮像面に平行な最終平面を生成する(ステップ703)。
【0028】
図8は、二次曲面の例を示している。レンズ801及び撮像素子部802は、撮影部501に含まれており、実際の手のひらの形状811には、細かい凹凸が存在する。手のひらの形状811を二次曲面812により近似することで、二次曲面812が撮像素子部802上に投影された画像を撮影画像512とみなすことができる。
【0029】
図9は、展開平面の例を示している。二次曲面812を平面に展開することで展開平面901が生成される。展開平面901は、撮像素子部802の撮像面に対して、手のひらの形状811の傾きに応じた傾きを有する。
【0030】
図10は、最終平面の例を示している。展開平面901を撮像素子部802の撮像面と平行になるように回転させることで、最終平面1001が生成される。補正画像514は、最終平面1001上の画像に対応する。
【0031】
次に、補正部313は、ステップ704〜ステップ710の展開処理を行って、3次元座標変換により二次曲面上の各点を展開平面上に展開し、展開された各点の位置に基づいて撮影画像512を補正する。この3次元座標変換において、補正部313は、撮影画像512上の点Qに対応する二次曲面上の点X2を求め、点X2に対応する展開平面上の点X1を求め、点X1に対応する補正画像514上の点Q’を求める。そして、補正部313は、点Qの画素値を点Q’の画素値として設定する。静脈画像の画素値としては、例えば、輝度値が用いられる。
【0032】
しかし、画像変換処理では、画像上の点の座標が整数であることから、変換後の点Q’を処理対象として、変換前の点Qを求める処理を行うことが多い。仮に、変換前の点Qの座標(x,y)(x及びyは整数)を処理対象とすると、変換後の点Q’の座標(x’,y’)は実数になってしまい、補正画像514上に存在しない位置を表す。
【0033】
そこで、ステップ704〜ステップ710の処理において、補正部313は、変換後の点Q’の座標(x’,y’)(x’及びy’は整数)を処理対象として、変換前の点Qの座標(x,y)を求める。この場合、(x,y)は実数になるが、(x,y)の位置における画素値は、周辺の画素値を用いた補間処理により計算することが可能である。補間処理としては、バイリニア補間、バイキュービック補間等を用いることができる。
【0034】
まず、補正部313は、補正画像514上の点Q’を処理対象として設定し(ステップ704)、点Q’に対応する最終平面上の点Xfを求め(ステップ705)、さらに点Xfに対応する展開平面上の点X1を求める(ステップ706)。次に、補正部313は、点X1に対応する二次曲面上の点X2を求め(ステップ707)、点X2に対応する撮影画像512上の点Qを求める(ステップ708)。そして、補正部313は、撮影画像512の画素値を用いて点Qに対応する画素値を計算し、点Q’の画素値として設定する(ステップ709)。
【0035】
次に、補正部313は、補正画像514上のすべての点を処理したか否かをチェックし(ステップ710)、未処理の点が残っている場合(ステップ710,YES)、次の点についてステップ704以降の処理を繰り返す。そして、すべての点を処理した場合(ステップ710,NO)、補正部313は、処理を終了する。こうして、撮影画像512から補正画像514が生成される。
【0036】
図7の正規化処理によれば、手のひらがすぼまっていたり、あるいは過剰に開いていたりする場合でも、手のひらの3次元形状の歪みの影響を低減した補正画像514を生成することができる。登録特徴情報511の登録時においても、撮影画像に対して同様の正規化処理を行うことで、照合処理の精度が向上し、正しい認証結果が得られるようになる。
【0037】
次に、
図11から
図19までを参照しながら、
図7のステップ701〜ステップ708の処理の具体例について説明する。
【0038】
図11は、3次元平面の例を示している。画像処理において3次元の位置情報を利用する場合、撮像素子部802により撮影される撮影画像512上の点、又は補正画像514上の点と、3次元空間内の点とが対応付けられる。そこで、画像上の点Q(u,v)と3次元平面1101上の点P(X,Y,Z)との対応関係について考察する。
【0039】
ピンホールカメラモデルを用いた場合、点1102が光源及びレンズ中心に対応する。レンズの焦点距離をf0とし、点Q(u,v)に対応するZ座標の値をt(t>0)とすると、点Q(u,v)の3次元座標Q(t)は、次式のように表される。
【0041】
3次元平面1101の方程式は、パラメータa〜パラメータcを用いて次式のように表される。
【0043】
点Q(t)が3次元平面1101上に存在するという条件を設定すると、tに関する次のような方程式が得られる。
【0045】
式(3)をtについて解くと、次式の解t
0が求められる。
【0047】
画像上の点Q(u,v)に対応する3次元平面1101上の点P(X,Y,Z)は、式(4)のt
0を用いて、次式のように表される。
【0049】
式(4)及び式(5)により、画像上の点Q(u,v)と3次元平面1101上の点P(X,Y,Z)とを対応付けることができる。
【0050】
図12は、3次元曲面の例を示している。画像上の点Q(u,v)と3次元曲面1201上の点P(X,Y,Z)との対応関係について考察する。
【0051】
図11の場合と同様に、ピンホールカメラモデルを用いた場合、点Q(u,v)の3次元座標Q(t)は、式(1)のように表すことができる。3次元曲面1201が二次曲面である場合、3次元曲面1201の方程式は、パラメータa〜パラメータfを用いて次式のように表される。
【0053】
点Q(t)が3次元曲面1201上に存在するという条件を設定すると、tに関する次のような方程式が得られる。
【0055】
式(7)をtに関して整理すると、次式のような2次方程式が得られる。
【0057】
式(8)をtについて解くと、次式の解t
0が求められる。
【0059】
t
0として2つの解が存在するが、t>0という条件からt
0を一意に決定することができる。画像上の点Q(u,v)に対応する3次元曲面1201上の点P(X,Y,Z)は、決定されたt
0を用いて、式(5)のように表される。そして、式(5)及び式(9)〜式(11)により、点Q(u,v)と点P(X,Y,Z)とを対応付けることができる。
【0060】
ステップ701において、補正部313は、二次曲面により3次元形状513を近似する。3次元形状513を二次曲面で近似することで、二次曲面上の法線ベクトル等を解析的に求めることが可能になり、3次元形状513上の点を展開平面上に展開する処理を効率良く行うことができる。
【0061】
図12の場合と同様に、ピンホールカメラモデルを用いて、3次元形状513上の点P(X,Y,Z)のZ座標の値をZ(u,v)と表すと、点P(X,Y,Z)は、次式のように表される。
【0063】
3次元形状513上の各点をP(X
i,Y
i,Z
i)(i=0,1,2,...)と表すと、点P(X
i,Y
i,Z
i)が式(6)の二次曲面上に存在するという条件は、行列形式を用いて次式のように表される。
【0065】
ここで、行列Aの疑似逆行列A
+を求める。
【0067】
二次曲面のパラメータは、式(27)の疑似逆行列A
+を用いて次式のように表される。
【0069】
式(27)の疑似逆行列A
+を用いることで、最小二乗近似を適用することができる。このとき、3次元形状513上の点P(X
i,Y
i,Z
i)を適当に間引いて個数を減らすことで、最小二乗近似の演算量を削減することができる。
【0070】
ステップ702において、補正部313は、二次曲面に接する展開平面を生成する。このとき、補正部313は、3次元形状513を平面により近似することで、二次曲面に接する展開平面を生成することができる。生成された展開平面の傾きは、手のひら全体の傾きを表している。
【0071】
ステップ703において、補正部313は、手のひらの傾きを補正するために、展開平面を回転させて最終平面を生成する。具体的には、補正部313は、展開平面の法線ベクトルnが撮像素子部802の撮像面に垂直な方向の単位ベクトルに重なるように、展開平面を回転させる。このような回転処理の具体的な方法として、後述するロドリグの公式を適用することができる。
【0072】
手のひらの位置が撮像素子部802の真上の位置から水平方向(撮像面に平行な方向)にシフトしている場合、手のひらと撮像素子部802とを結ぶ直線と最終平面とが直交するように、最終平面を傾けてもよい。水平方向のシフト量に応じて最終平面を傾けることで、手のひらのシフトに起因する撮影画像512の歪みを補正することができる。
【0073】
ステップ704において、補正部313は、補正画像514上の点Q’を処理対象として設定し、ステップ705において、点Q’に対応する最終平面上の点Xfを、式(4)及び式(5)を用いて求める。次に、ステップ706において、補正部313は、点Xfに対応する展開平面上の点X1を求め、ステップ707において、点X1に対応する二次曲面上の点X2を求める。
【0074】
点X1と点X2とを対応付ける方法として、手のひらがすぼまっている場合でも、手のひらが開いている場合でも、手のひらの表面上における2点の距離は変わらないという仮定を適用することができる。そこで、補正部313は、展開平面上における基準点から点X1までの距離と、二次曲面上における基準点から点X2までの距離とが同一になるという条件を用いて、点X2を求める。
【0075】
図13は、点X1と点X2の対応関係の例を示している。この例では、二次曲面812と展開平面901との接点が基準点P
Cとして設定されており、二次曲面812上における基準点P
Cから点X2までの距離は、展開平面901上における基準点P
Cから点X1までの距離Lと一致する。基準点P
Cは、展開中心とも呼ばれ、二次曲面812上の点を展開平面901上に展開する際に基準となる点である。
【0076】
ただし、二次曲面上において、基準点P
Cから距離Lだけ離れた点は複数存在する。そこで、補正部313は、次元を落とす処理として、展開平面及び二次曲面を切断する断面平面を生成し、断面平面上の点のみを対象として点X2を求める。
【0077】
このとき、補正部313は、点X2から距離Lを求めるのではなく、距離Lから点X2を求める処理を行う。点から距離を求める処理は、楕円積分等により比較的簡単に実行できるが、距離から点を求める逆方向の処理は簡単ではない。そこで、距離Lから点X2を求める処理では、数値計算が用いられる。
【0078】
ここで、二次曲面の方程式は、式(6)のように表すことができ、展開平面の方程式は、次式のように表すことができる。
【0080】
基準点P
Cの3次元座標を(X
C,Y
C,Z
C)とすると、基準点P
Cが展開平面上に存在するとともに二次曲面上にも存在することから、次式が成り立つ。
【0082】
展開平面上の点X1(X
1,Y
1,Z
1)から対応する二次曲面上の点X2(X
2,Y
2,Z
2)を求めるために、3つの条件が用いられる。第1の条件は、点X2が二次曲面上に存在することである。
【0084】
第2の条件は、二次曲面上における基準点P
Cから点X2までの距離P
CX2が、展開平面上における基準点P
Cから点X1までの距離P
CX1と一致することである。
【0086】
第3の条件は、点X2が展開平面及び二次曲面を切断する断面平面上に存在することである。
図14は、断面平面の例を示している。この例では、断面平面1401は、基準点P
C及び点X1を通り、展開平面901に垂直な平面である。
図13は、断面平面1401上の展開平面901及び二次曲面812を表している。
【0087】
以下では、第1〜第3の条件を満たす点X2の計算方法について説明する。断面平面の法線ベクトルn
Rは、展開平面の法線ベクトル(−p,−q,1)と、基準点P
Cから点X1へ向かうベクトルP
CX1の両方に対して直交するベクトルである。したがって、法線ベクトルn
Rは、法線ベクトル(−p,−q,1)とベクトルP
CX1の外積から求めることができる。
【0088】
ここで、ベクトル
(以下では、ベクトルaと記す)とベクトル
(以下では、ベクトルbと記す)の外積は、次式により定義される。
【0090】
式(36)において、a
X、a
Y、及びa
Zは、それぞれ、ベクトルaのX成分、Y成分、及びZ成分を表し、b
X、b
Y、及びb
Zは、それぞれ、ベクトルbのX成分、Y成分、及びZ成分を表す。式(36)の外積の定義を用いると、法線ベクトルn
Rは、次式のように表される。
【0092】
断面平面が点X1(X
1,Y
1,Z
1)を通ることから、断面平面の方程式の定数項Cは、次式により求めることができる。
【0094】
式(37)の法線ベクトルn
Rと式(39)の定数Cとを用いて、断面平面の方程式は、次式のように表される。
【0096】
ここで、次式により定数p’、q’、及びr’を定義する。
【0098】
定数p’、q’、及びr’を用いると、断面平面の方程式は、次式のように表される。
【0100】
点X2(X
2,Y
2,Z
2)が式(44)の断面平面上に存在することから、第3の条件は次式のように表される。
【0102】
したがって、点X2(X
2,Y
2,Z
2)が満たすべき3つの条件は、式(34)、式(35)、及び式(45)により表される。このうち、式(34)及び式(45)を組み合わせると、点X2は二次曲線上を動くことが分かる。式(35)は、2次曲線上における基準点P
Cから点X2までの距離を規定している。
【0103】
二次曲面と断面平面との交点が描く二次曲線は、式(6)及び式(44)の連立方程式から求めることができる。この二次曲線上の線分の長さに対して距離Lを対応付けることで、点X2を求めることができる。
【0104】
まず、二次曲面及び断面平面を扱い易くするため、断面平面の法線ベクトルがZ軸方向を向くように、断面平面を回転させる。これにより、断面平面のZ座標が定数になり、断面平面上の距離計算が簡単化される。
【0105】
ここで、表記を平易にするために、式(44)のp’、q’、及びr’をp、q、及びrに置き換えると、断面平面の法線ベクトルは(−p,−q,1)と表すことができる。このとき、断面平面の回転処理は、次式の単位法線ベクトル
(以下では、単位法線ベクトルn
0と記す)を、Z軸方向の単位ベクトル
(以下では、単位ベクトルn
1と記す)に一致させる処理となる。
【0107】
この回転処理には、以下のようなロドリグの公式を適用することができる。
【0109】
式(53)のベクトル
(以下では、ベクトルXと記す)は、回転前の3次元ベクトルを表し、ベクトル
(以下では、ベクトルX’と記す)は、回転後の3次元ベクトルを表す。ベクトル
(以下では、ベクトルnと記す)は、回転軸の方向の単位ベクトルを表し、φは回転角を表す。したがって、ベクトルnを回転軸としてベクトルXを角度φだけ回転させると、ベクトルX’が得られる。
【0110】
ベクトルnは、単位法線ベクトルn
0と単位ベクトルn
1の両方に垂直な方向に設定される。したがって、ベクトルnは、単位法線ベクトルn
0と単位ベクトルn
1の外積から求めることができる。
【0112】
角度φの余弦は、単位法線ベクトルn
0と単位ベクトルn
1の内積から求めることができる。
【0114】
ベクトルXの成分を(X,Y,Z)とし、ベクトルX’の成分を(X’,Y’,Z’)として、式(55)〜式(57)を式(53)に適用すると、次式が得られる。
【0116】
回転後の断面平面は、次式のように、Z’が定数の平面となる。
【0118】
二次曲面に対しても、断面平面と同様の回転処理が適用される。回転後のベクトルX’=(X’,Y’,Z’)が与えられたとき、回転前のベクトルX=(X,Y,Z)を表す変換式は、次式のように表される。
【0120】
ここで、式(60)の右辺の回転を表す行列の係数を、次式のように定義する。
【0122】
回転前の二次曲面を表す式(6)に式(61)の(X,Y,Z)を代入すると、回転後の断面平面上における二次曲線の方程式として、次式が得られる。
【0124】
式(62)をX’、Y’、及びZ’について整理すると、次式が得られる。
【0126】
式(63)をさらに整理すると、次式が得られる。
【0128】
ここで、次式により定数A〜定数Fを定義する。
【0130】
式(68)〜式(70)のZ’は、式(59)により表される定数である。式(65)〜式(70)の定数A〜定数Fを用いて、式(64)の2次曲線の方程式は、次式のように表される。
【0132】
このとき、断面平面上の基準点P
Cの座標(X
C,Y
C,Z
C)も、回転処理によって、次式の座標(X
C’,Y
C’,Z
C’)に移動する。
【0134】
次に、式(71)の二次曲線上における距離の計算方法について説明する。二次曲面上の基準点P
Cと点X2との距離を求める処理は、式(71)の二次曲線上の長さを求める処理に置き換えられる。二次曲線には、楕円、双曲線、及び放物線の3つのパターンがあり得るため、それぞれのパターンに対して二次曲線上の長さを求める計算方法を検討する。
【0135】
まず、二次曲線が楕円の場合について説明する。楕円の方程式は、次式のように表される。
【0137】
式(71)に対して回転及び平行移動を含む座標変換を適用することで、式(71)を式(81)の形式に変形することができる。手のひらの形状を近似する二次曲面の場合、式(71)の二次曲線が楕円になることが多い。
【0138】
図15は、式(81)の楕円の例を示している。この楕円上の点P1と点P2との距離を求める処理について検討する。この場合、点P1は基準点P
Cに対応し、点P2は点X2に対応する。楕円の周長は、第二種不完全楕円積分から求めることができる。第二種不完全楕円積分は、角度φが0から所定値θまでの楕円の周長を表す積分である。以下では第二種不完全楕円積分を単純に楕円積分と呼ぶ。
【0139】
楕円積分を表す楕円関数は第1象限でのみ定義されているため、第2象限〜第4象限に点P1又は点P2が存在する場合は、個別に、楕円の1/4周分の周長を適宜加算又は減算する処理が行われる。また、楕円積分により周長を計算する方向としては、角度φの正の方向と負の方向との2方向が存在する。このため、楕円上の点P1から距離Lだけ離れた点P2を求める場合、2方向について距離計算が行われる。
【0140】
まず、
図16に示す楕円上において、楕円とY軸の交点1601から点Pまでの周長L(θ)は、楕円積分を用いて次式のように表される。
【0142】
式(82)のE(θ,k
2)は、第2種不完全楕円積分関数であり、kは、楕円を表す定数である。点Pの座標(X,Y)と角度θとの間には、次式のような関係がある。
【0144】
式(83)及び式(84)より、
図17において点P1(X
P1,Y
P1)に対応する角度θ
P1は、次式のように表される。
【0146】
点P2は、点P1に対して角度φの正の方向又は負の方向のいずれかの方向に距離Lだけ離れた点である。そこで、点P2に対応する角度をθとすると、点P2を求める処理は、次式を満たす角度θを求める処理に置き換えられる。
【0148】
式(87)を満たす角度θを求める方法として、数値計算を用いることができる。数値計算としてニュートン法を用いた場合、次式の関数f(θ)を定義して、f(θ)=0となる角度θを数値的に求めることができる。
【0150】
このとき、角度θに対する漸化式として、次式が繰り返し適用される。
【0152】
ここで、f(θ)=0の解として得られる2つの角度θに対応する2点のうち、断面平面上で点X1に近い方の点が点P2(点X2)として採用される。
【0153】
第2種不完全楕円積分関数の数値解を得るための計算式として、Carlson symmetric形式を利用することができる。この場合、第2種不完全楕円積分関数は、次式のように表される。
【0155】
式(91)のR
F及びR
Dは、Carlson symmetric formulaと呼ばれる関数である。ここで、R
F及びR
Dの入力係数を、次式のようにX、Y、及びZで表す。
【0157】
このとき、式(91)は次式のように表される。
【0159】
次に、二次曲線が双曲線の場合について説明する。双曲線の方程式は、次式のように表される。
【0161】
双曲線の形状としては、式(101)と式(102)の2つのパターンが存在し、式(101)の形状は、East-West opening hyperbolaと呼ばれ、式(102)の形状は、North-South opening hyperbolaと呼ばれる。式(71)に対して回転及び平行移動を含む座標変換を適用することで、式(71)を式(101)又は式(102)の形式に変形することができる。
【0162】
図18は、式(102)の形状の双曲線の例を示している。ただし、この例では、双曲線に含まれる2本の曲線のうち1本が示されている。式(102)の形状の双曲線は、楕円の特殊な形式として扱うことができる。
【0163】
まず、式(102)のaをa
rに置き換えると、次式が得られる。
【0165】
ここで、実数a
rを用いて純虚数aを定義する。
a=ia
r (104)
【0166】
式(104)の純虚数aを用いて、式(103)は式(81)の形式に書き換えられる。このように、式(102)の形状の双曲線は、定数aを複素数(厳密には、純虚数)に設定した楕円として扱うことができる。
【0167】
双曲線は、媒介変数θを用いて、次式のように表すことができる。
【0169】
双曲線は、定数aが純虚数であると同時に角度θも純虚数である場合の楕円とみなすことができる。そこで、式(83)及び式(84)において、定数aを純虚数iaに設定し、角度θを純虚数iθに設定すると、次式が得られる。
【0171】
cosθ及びsinθとcoshθ及びsinshθとの間には、次式のような関係が存在する。
【0173】
式(109)及び式(110)を用いると、式(107)及び式(108)は、次式のように変形できる。
【0175】
式(111)及び式(112)は、双曲線を表している。このように、楕円の方程式において定数a及び角度θを純虚数に設定すると、双曲線の方程式が得られる。楕円の周長を求める楕円積分に対しても、同様の変形を適用することができる。この場合、楕円積分における角度を純虚数に設定すればよい。
【0176】
例えば、式(92)及び式(93)の角度φを純虚数iφ
rに設定すると、次式が得られる。
【0178】
このとき、X及びYはともに実数になる。したがって、式(95)のR
F及びR
Dは、楕円の場合と同様に実数になり、R
F及びR
Dの実装としては、実数の入力係数のみに対応すれば十分である。
【0179】
次に、二次曲線が放物線の場合について説明する。放物線の方程式は、次式のように表される。
【0181】
式(71)に対して回転及び平行移動を含む座標変換を適用することで、式(71)を式(121)の形式に変形することができる。
【0182】
図19は、式(121)の放物線の例を示している。Xがx0からx1までの範囲における放物線の弧長は、次式の積分により求められる。
【0184】
ここで、式(121)の積分変数を次式の変数tに変換する。
【0186】
Xは、式(123)のtを用いて、次式のように表される。
【0188】
dXを求めるために、式(123)の両辺をXで微分すると、次式が得られる。
【0190】
式(126)より、dXは、次式のように表される。
【0192】
式(121)及び式(127)より、式(122)の弧長L(x0,x1)は、次式のL(t0,t1)に置き換えられる。
【0194】
式(128)のt0及びt1は、次式のように表される。
【0196】
放物線上で基準点P
Cから距離Lだけ離れた点X2を求める場合、式(128)〜式(130)を用いて数値計算が行われる。
【0197】
まず、式(122)においてx0=0、x1=xと置くと、弧長L(x0,x1)は、次式のL(x)に置き換えられる。
【0199】
式(131)のL(x)は、原点から点P(x,y)までの弧長を表す関数であり、式(128)〜式(130)から解析的に求めることができる。ここで、L(x)は、x>0のとき正の値を取り、x<0のとき負の値を取ると定義する。基準点P
CのX座標がX
Cであり、点P(x,y)が点X2に対応する場合、次式が成り立つ。
【0200】
L(x)=L(X
C)+L=L0 (132)
【0201】
式(132)のL(X
C)は、X
C>0のとき正の値を取り、X
C<0のとき負の値を取る。数値計算としてニュートン法を用いた場合、式(132)を満たすxを求めるために、次式の関数f(x)が定義される。
【0202】
f(x)=L(x)−L0 (133)
【0203】
式(132)を満たすxは、f(x)=0を満たすxである。f(x)の微分は、次式のように表される。
【0205】
このとき、xに対する漸化式として、次式が適用される。
【0207】
ステップ707において二次曲面上の点X2が求められると、補正部313は、ステップ708において、式(5)及び式(9)〜式(11)の関係に基づいて、点X2に対応する撮影画像512上の点Qを求める。
【0208】
以上説明したように、3次元形状513を二次曲面で近似することで、3次元形状513上の距離を楕円等の二次曲線上の距離に置き換えることができ、手のひら上の距離計算を比較的容易に実装することが可能になる。これにより、点X1に対応する点X2を3次元形状513上で探索する必要がなくなり、処理が高速化される。
【0209】
なお、補正画像514上のすべての画素に対して
図7の正規化処理を適用する代わりに、画素を適当に間引いて処理対象の画素の個数を削減し、残りの画素の画素値を線形補間等により求めてもよい。二次曲面は滑らかな変化を持つ曲面であるため、間引き処理を行っても、補正画像514の精度に対してほとんど影響を与えない。
【0210】
また、
図7の正規化処理では、撮影画像512上の画素の位置を補正することで補正画像514を生成しているが、画素の位置に加えて画素値も補正することで、補正画像514の精度をさらに高めることが可能である。
【0211】
撮影画像512上の各点の輝度値は、撮像部501から被写体までの距離と、被写体の局所的な傾きとから計算することができる。具体的には、撮影画像512上の点Q(u,v)の輝度値I(u,v)は、次式により計算される。
【0213】
式(141)のRは、撮像素子部と被写体上の点との距離を表し、θは、撮像素子部から被写体上の点へ向かうベクトルと、被写体上の点における接平面の法線ベクトルとが成す角度を表す。I
0は定数である。式(141)より、輝度値I(u,v)は、距離Rの二乗に反比例し、cosθに比例することが分かる。式(141)の関係を用いれば、展開平面及び二次曲面の方程式に基づいて、二次曲面上の点X2に対応する輝度値から、展開平面上の点X1に対応する輝度値を推定することができる。
【0214】
図20は、撮像素子部から展開平面及び二次曲面までの距離の例を示している。この例では、撮像素子部802から二次曲面812上の点X2までの距離はRであり、撮像素子部802から展開平面901上の点X1までの距離はR’である。補正部313は、
図7のステップ709において輝度値補正処理を行い、点X2に対応する輝度値I(u,v)から、次式により、点X1に対応する輝度値I’(u,v)を求める。
【0216】
式(142)のθは、撮像素子部802から点X2へ向かうベクトル2011と、点X2において二次曲面812に接する接平面2001の法線ベクトルとが成す角度を表す。θ’は、撮像素子部802から点X1へ向かうベクトル2012と、展開平面901の法線ベクトルとが成す角度を表す。
【0217】
そして、補正部313は、点X2に対応する輝度値の代わりに、点X1に対応する輝度値を点Q’の画素値として設定する。
【0218】
式(142)の右辺において、静脈センサ固有の輝度分布に基づく係数を追加してもよい。この場合、記憶部312は、静脈センサの3次元輝度分布の情報を記憶し、補正部313は、3次元輝度分布に基づいて点X1に対応する輝度値を求める。これにより、輝度値補正処理の精度がさらに向上する。
【0219】
式(141)では、理想的な点光源のモデルを想定しているが、実際の静脈センサでは、必ずしも輝度値I(u,v)が距離Rの二乗に反比例するとは限らない。そこで、式(141)の代わりに、輝度値I(u,v)が距離Rのα乗に反比例する計算式を用いてもよい。この場合、式(142)の代わりに、次式が用いられる。
【0221】
ここで、二次曲面に接する接平面の法線ベクトルを求める処理について説明する。二次曲面上の点Pを変数u及び変数vを用いてP(u,v)と表すと、点Pにおける接平面の法線ベクトル
(以下では、法線ベクトルnと記す)は、点Pの位置ベクトル
(以下では、位置ベクトルpと記す)を用いて次式のように表される。
【0223】
式(151)において、位置ベクトルpの添え字u及び添え字vは、それぞれ、変数u及び変数vによる偏微分を表している。ここで、変数u及び変数vが3次元空間における点PのX座標及びY座標を表すものとすると、点P(X,Y,Z)は、二次曲面上の点であることから、次式のように表される。
【0225】
このとき、式(151)における位置ベクトルpの偏微分は、次式のように表される。
【0227】
式(153)及び式(154)より、式(151)の右辺における分子及び分母は、次式のように求められる。
【0229】
式(156)及び式(157)より、式(151)の法線ベクトルnは、次式のように求められる。
【0231】
輝度値補正処理を行うことで、手のひらが平らにかざされていた場合に見えるはずの画像を生成することができ、正規化処理の精度が向上する。これにより、特徴抽出処理を安定して行うことが可能になり、照合処理の精度がさらに改善される。
【0232】
ところで、手のひらの形状を近似した二次曲面は、手のひらのすぼみの度合いを表しているため、二次曲面から検出したすぼみに基づいて認証対象者を誘導することで、特徴抽出処理に適した姿勢の手のひらを撮影することが可能になる。誘導とは、認証対象者の手のひらが正しくかざされているか否かを判定し、認証対象者に対して判定結果をフィードバックする処理である。
【0233】
図21は、このような誘導を行う画像処理装置301の具体例を示している。
図21の画像処理装置301は、
図5の画像処理装置301に誘導部2101を追加した構成を有する。誘導部2101は、二次曲面上の複数点における曲率を計算し、曲率に基づいて誘導を行う。
【0234】
3次元形状の場合、ある点において無数の曲率が存在し得るため、2次元形状とは異なり、ある点における曲率として、ガウス曲率、平均曲率等の様々な曲率を定義し得る。誘導部2101は、それらの様々な曲率のうち所定の曲率を計算する。
【0235】
補正部313が行う正規化処理は演算量が大きいため、誘導を行う場合は、正規化処理のうち二次曲面による近似のみを行い、誘導により曲率が所定の範囲内に収まった時点で二次曲面上の点を展開平面上に展開することが望ましい。これにより、認証対象者に対するフィードバックを迅速に行いながら、正規化処理の精度を高めることができる。
【0236】
図22は、
図21の画像処理装置301が行う生体認証処理の例を示すフローチャートである。
図22のステップ2201、ステップ2202、ステップ2207、及びステップ2208の処理は、
図6のステップ601、ステップ602、ステップ604、及びステップ605の処理と同様である。また、
図22のステップ2203の処理は、
図7のステップ701の処理と同様である。
【0237】
ステップ2204において、誘導部2101は、補正部313が生成した二次曲面上の複数点における曲率を計算し、複数点の曲率の統計値を求める。曲率の統計値としては、平均値、中央値、最大値、最小値等を用いることができる。
【0238】
次に、誘導部2101は、曲率の統計値を閾値Tと比較し(ステップ2205)、曲率の統計値が閾値Tよりも大きい場合(ステップ2205,NO)、手を開くように指示する誘導メッセージを出力する(ステップ2209)。そして、画像処理装置301は、ステップ2201以降の処理を繰り返す。
【0239】
一方、曲率の統計値が閾値T以下である場合(ステップ2205,YES)、補正部313は、正規化処理を行う(ステップ2206)。ステップ2206の正規化処理は、
図7のステップ702〜ステップ710の処理に対応する。
【0240】
ここで、二次曲面上の曲率を計算する処理について説明する。二次曲面上の点Pから点Pに極近い点までの距離dsは、次式のように表される。
【0242】
式(161)のE、F、及びGは、点Pの位置ベクトルpの偏微分を用いて次式のように表される。
【0244】
式(153)及び式(154)を用いると、式(162)〜式(164)のE、F、及びGは、次式のように表される。
【0246】
点Pにおけるガウス曲率K及び平均曲率Hを求めるために、まず、次式のL、M、及びNを求める。
【0248】
式(153)及び式(154)より、式(168)〜式(170)の位置ベクトルpの2回偏微分は、次式のように表される。
【0250】
式(171)〜式(173)を用いると、式(168)〜式(170)のL、M、及びNは、次式のように表される。
【0252】
点Pにおけるガウス曲率Kは、式(165)〜式(167)のE、F、及びGと式(174)〜式(176)のL、M、及びNとを用いて、次式のように表される。
【0254】
また、点Pにおける平均曲率Hは、次式のように表される。
【0256】
ステップ2205において、誘導部2101は、曲率の統計値と閾値Tとの比較に加えて、手のひらの傾きが所定範囲内であるか否かを判定してもよい。
図23は、手のひらの傾きの判定を追加した生体認証処理の例を示すフローチャートである。
【0257】
図23のステップ2301〜ステップ2303、ステップ2305、ステップ2307、及びステップ2310〜ステップ2312の処理は、
図22のステップ2201〜ステップ2205及びステップ2207〜ステップ2209の処理と同様である。
【0258】
ステップ2304において、補正部313は、
図7のステップ702と同様にして展開平面を生成し、ステップ2306において、誘導部2101は、展開平面の法線ベクトルに基づいて展開平面の傾きを計算する。展開平面の傾きとしては、例えば、撮像素子部の撮像面と展開平面とが成す角度を用いることができる。
【0259】
そして、曲率の統計値が閾値T以下である場合(ステップ2307,YES)、誘導部2101は、展開平面の傾きを閾値T’と比較する(ステップ2308)。傾きが閾値T’よりも大きい場合(ステップ2308,NO)、誘導部2101は、手のひらを撮像面と平行にかざすように指示する誘導メッセージを出力する(ステップ2313)。そして、画像処理装置301は、ステップ2301以降の処理を繰り返す。
【0260】
一方、傾きが閾値T’以下である場合(ステップ2308,YES)、画像処理装置301は、正規化処理を行う(ステップ2309)。2309の正規化処理は、
図7のステップ703〜ステップ710の処理に対応する。
【0261】
図6、
図22、及び
図23の生体認証処理は、手のひら静脈認証以外の生体認証にも適用可能である。例えば、手のひらを対象とする手相認証又は掌紋認証において、正規化処理を適用してもよい。
【0262】
ところで、
図6、
図22、及び
図23の生体認証処理では、補正部313は、撮影画像512全体に対してステップ704〜ステップ710の展開処理を適用することで、補正画像514を生成している。これにより、特徴抽出処理が安定し、照合処理の精度が向上する。
【0263】
しかし、撮影画像512全体ではなく、撮影画像512の一部の点に対して展開処理を適用することも可能である。例えば、特徴情報515は、静脈パターン、手相、掌紋等のパターンを表す情報であり、これらのパターン上の点は、撮影画像512の一部の点に対応する。そこで、撮影画像512の代わりに、特徴情報515に対して展開処理を適用することが考えられる。
【0264】
この場合、特徴抽出部502は、撮影画像512から特徴情報515を抽出して、記憶部312に格納し、補正部313は、特徴情報515が表すパターン上の点に対して展開処理を行って、補正パターンを生成し、記憶部312に格納する。そして、照合部503は、補正パターンと登録特徴情報511とを比較して、生体の認証を行う。特徴情報515に対して展開処理を適用する利点として、次の2点が考えられる。
【0265】
第1の利点は、演算量の削減である。撮影画像512全体に対して展開処理を適用する場合、撮影画像512のすべての点(全画素)が処理対象になる。一方、特徴情報515に対して展開処理を適用する場合、特徴情報515が表すパターン上の点のみが処理対象になるため、展開処理の演算量が削減される。
【0266】
第2の利点は、互換性の向上である。展開処理が適用されていない撮影画像から登録特徴情報511が生成されている場合、認証対象者の撮影画像のみに対して展開処理を適用すると、照合処理の精度が低下することがある。その理由は、登録者と認証対象者とが同一人物であり、登録時及び照合時の手のひらの形状が同じであっても、一方の撮影画像のみに対して展開処理を適用すると、2つの特徴情報が類似しないことがあるからである。
【0267】
そこで、展開処理が適用されている特徴情報と、展開処理が適用されていない特徴情報との間の互換性を高めるために、展開処理が適用されていない特徴情報を、登録特徴情報511として登録する方法が考えられる。この場合、生体認証処理を行う際に、登録特徴情報511と認証対象者の特徴情報515の両方に対して、展開処理が適用される。
【0268】
図24は、このような生体認証処理の例を示している。登録情報2401は、展開処理が適用されていない登録特徴情報2411と展開情報2412とを含み、認証用情報2402は、展開処理が適用されていない特徴情報2421と展開情報2422とを含む。
【0269】
展開情報2412は、登録特徴情報2411に対して展開処理を行うための情報であり、展開情報2422は、特徴情報2421に対して展開処理を行うための情報である。展開情報2412及び展開情報2422は、手のひらに対応する3次元形状513、二次曲面を表す方程式、撮像素子部の焦点距離、撮像素子部の画素サイズ等の情報を含む。登録時及び認証時の撮像素子部が同一である場合は、撮像素子部の画素サイズを省略してもよい。
【0270】
生体認証処理において、補正部313は、展開情報2412を用いて、登録特徴情報2411に対して展開処理を行い、補正パターン2403を生成する。また、補正部313は、展開情報2422を用いて、特徴情報2421に対して展開処理を行い、補正パターン2404を生成する。そして、照合部503は、補正パターン2403と補正パターン2404とを比較する照合処理を行う。
【0271】
図25は、登録情報2401が展開情報2412を含まない場合の生体認証処理の例を示している。登録情報2401は、登録特徴情報2411のみを含み、展開情報2412が欠落している。この場合、補正部313は、登録特徴情報2411及び特徴情報2421に対して展開処理を行わず、照合部503は、登録特徴情報2411と特徴情報2421とを直接比較する照合処理を行う。登録情報2401が展開情報2412を含み、登録情報2402が展開情報2422を含まない場合も、
図25と同様の照合処理が行われる。
【0272】
このように、登録特徴情報と展開情報とを別々に登録することで、特徴情報の互換性を維持しながら、照合処理の精度を向上させることができる。
【0273】
図3、
図5、及び
図21の画像処理装置301の構成は一例に過ぎず、画像処理装置301の用途や条件に応じて、一部の構成要素を省略又は変更してもよい。例えば、記憶部312があらかじめ撮影画像512を記憶している場合は、
図5の撮影部501を省略することができる。また、画像処理装置301が生体認証処理を行わない場合は、
図5の特徴抽出部502及び照合部503を省略することができる。
【0274】
図4、
図6、
図7、
図22、及び
図23のフローチャートは一例に過ぎず、画像処理装置301の構成や条件に応じて一部の処理を省略又は変更してもよい。例えば、記憶部312があらかじめ撮影画像512を記憶している場合は、
図6のステップ601、
図22のステップ2201、及び
図23のステップ2301の処理を省略することができる。また、画像処理装置301が生体認証処理を行わない場合は、
図6のステップ604、ステップ605、
図22のステップ2207、ステップ2208、及び
図23のステップ2310、ステップ2311の処理を省略することができる。
【0275】
図6のステップ601、
図22のステップ2201、及び
図23のステップ2301において、撮影部501は、近赤外線以外の照明光により撮影画像512を生成してもよい。被写体として、手のひら以外の物体を用いることも可能である。
【0276】
図6のステップ602、
図22のステップ2202、及び
図23のステップ2302において、形状推定部311は、SFS技術以外の方法により被写体の形状を推定してもよい。
【0277】
図7の正規化処理において、手のひらの傾きを補正する必要がない場合は、ステップ703の処理を省略することができる。この場合、補正部313は、展開平面を最終平面として用いる。
図7のステップ704〜ステップ710において、補正部313は、変換後の点Q’を処理対象として変換前の点Qを求める代わりに、変換前の点Qを処理対象として変換後の点Q’を求めてもよい。
【0278】
図23のステップ2305とステップ2306の処理の順序を入れ替えてもよく、ステップ2307とステップ2308の処理の順序を入れ替えてもよい。
【0279】
図8〜
図10、
図13、
図14、及び
図20の手のひらの形状811、二次曲面812、展開平面901、最終平面1001、及び断面平面1401は一例に過ぎず、手のひらの形状、二次曲面、展開平面、最終平面、及び断面平面は、別の形状であってもよい。
【0280】
式(1)〜式(178)は一例に過ぎず、別の計算式又は座標系を用いて、正規化処理、輝度値補正処理、又は曲率計算を行ってもよい。例えば、補正部313は、3次元形状513を平面により近似する代わりに、別の方法で展開平面を生成してもよく、二次曲面と展開平面との接点の代わりに、3次元空間内の別の点を基準点P
Cとして設定してもよい。
【0281】
また、補正部313は、二次曲面上における基準点P
Cから点X2までの距離が、展開平面上における基準点P
Cから点X1までの距離と一致するという条件の代わりに、別の条件を用いて点X2を求めてもよい。補正部313は、点X2が展開平面及び二次曲面を切断する断面平面上に存在するという条件の代わりに、別の条件を用いて点X2を求めてもよい。
【0282】
図26は、
図3、
図5、及び
図21の画像処理装置301を実現するための情報処理装置の構成例を示している。
図26の情報処理装置は、CPU2601、メモリ2602、入力装置2603、出力装置2604、補助記憶装置2605、媒体駆動装置2606、及びネットワーク接続装置2607を備える。これらの構成要素はバス2608により互いに接続されている。バス2608には、
図5及び
図21の撮影部501が接続されていてもよい。
【0283】
メモリ2602は、例えば、Read Only Memory(ROM)、Random Access Memory(RAM)、フラッシュメモリ等の半導体メモリであり、画像処理又は生体認証処理に用いられるプログラム及びデータを格納する。メモリ2602は、
図3、
図5、及び
図21の記憶部312として用いることができる。
【0284】
CPU2601(プロセッサ)は、例えば、メモリ2602を利用してプログラムを実行することにより、
図3、
図5、及び
図21の形状推定部311、補正部313、特徴抽出部502、照合部503、及び誘導部2101として動作する。
【0285】
入力装置2603は、例えば、キーボード、ポインティングデバイス等であり、オペレータ又はユーザからの指示や情報の入力に用いられる。出力装置2604は、例えば、表示装置、プリンタ、スピーカ等であり、オペレータ又はユーザへの問い合わせ又は指示、及び処理結果の出力に用いられる。処理結果は、補正画像514であってもよく、生体認証処理の認証結果であってもよい。
【0286】
補助記憶装置2605は、例えば、磁気ディスク装置、光ディスク装置、光磁気ディスク装置、テープ装置等である。補助記憶装置2605は、ハードディスクドライブ又はフラッシュメモリであってもよい。情報処理装置は、補助記憶装置2605にプログラム及びデータを格納しておき、それらをメモリ2602にロードして使用することができる。補助記憶装置2605は、
図3、
図5、及び
図21の記憶部312として用いることができる。
【0287】
媒体駆動装置2606は、可搬型記録媒体2609を駆動し、その記録内容にアクセスする。可搬型記録媒体2609は、メモリデバイス、フレキシブルディスク、光ディスク、光磁気ディスク等である。可搬型記録媒体2609は、Compact Disk Read Only Memory(CD−ROM)、Digital Versatile Disk(DVD)、Universal Serial Bus(USB)メモリ等であってもよい。オペレータ又はユーザは、この可搬型記録媒体2609にプログラム及びデータを格納しておき、それらをメモリ2602にロードして使用することができる。
【0288】
このように、画像処理又は生体認証処理に用いられるプログラム及びデータを格納するコンピュータ読み取り可能な記録媒体は、メモリ2602、補助記憶装置2605、又は可搬型記録媒体2609のような、物理的な(非一時的な)記録媒体である。
【0289】
ネットワーク接続装置2607は、Local Area Network、Wide Area Network等の通信ネットワークに接続され、通信に伴うデータ変換を行う通信インタフェースである。情報処理装置は、プログラム及びデータを外部の装置からネットワーク接続装置2607を介して受け取り、それらをメモリ2602にロードして使用することができる。
【0290】
情報処理装置は、ネットワーク接続装置2607を介して、ユーザ端末から処理要求を受信し、画像処理又は生体認証処理を行って処理結果をユーザ端末へ送信することもできる。
【0291】
なお、情報処理装置が
図26のすべての構成要素を含む必要はなく、用途や条件に応じて一部の構成要素を省略することも可能である。例えば、情報処理装置がユーザ端末から通信ネットワーク経由で処理要求を受信する場合は、入力装置2603及び出力装置2604を省略してもよい。また、可搬型記録媒体2609又は通信ネットワークを利用しない場合は、媒体駆動装置2606又はネットワーク接続装置2607を省略してもよい。
【0292】
情報処理装置がスマートフォンのような通話機能を有する携帯端末である場合、マイク及びスピーカのような通話用の装置を含んでいてもよく、カメラのような撮像装置を含んでいてもよい。
【0293】
開示の実施形態とその利点について詳しく説明したが、当業者は、特許請求の範囲に明確に記載した本発明の範囲から逸脱することなく、様々な変更、追加、省略をすることができるであろう。
【0294】
図1乃至
図26を参照しながら説明した実施形態に関し、さらに以下の付記を開示する。
(付記1)
被写体の画像に基づいて、前記被写体の形状を推定する形状推定部と、
前記被写体の形状を記憶する記憶部と、
前記被写体の形状に基づいて、前記被写体上の複数点の各々を結ぶ二次曲面を生成し、前記二次曲面に基づいて、前記複数点の各々を前記二次曲面に接する平面上に展開し、前記平面上に展開された各点の位置に基づいて前記画像を補正する補正部と、
を備えることを特徴とする画像処理装置。
(付記2)
前記形状推定部は、前記画像の輝度分布に基づいて、前記被写体の形状を推定することを特徴とする付記1記載の画像処理装置。
(付記3)
前記補正部は、前記二次曲面上の基準点と前記複数点の各々との距離に基づいて、前記複数点の各々を前記平面上に展開することを特徴とする付記1又は2記載の画像処理装置。
(付記4)
前記基準点は、前記二次曲面と前記平面との接点であり、前記補正部は、前記基準点と前記複数点の各々との前記距離と、前記基準点と前記平面上に展開された各点との距離とが一致するように、前記複数点の各々を前記平面上に展開することを特徴とする付記3記載の画像処理装置。
(付記5)
前記補正部は、被写体の画像を撮影した撮像素子部と前記二次曲面との距離と、前記撮像素子部と前記平面との距離とに基づいて、前記平面上に展開された各点の画素値を補正することを特徴とする付記1乃至4のいずれか1項に記載の画像処理装置。
(付記6)
誘導部をさらに備え、前記被写体は手のひらであり、前記誘導部は、前記二次曲面の曲率に基づいて、前記手のひらを開くように誘導することを特徴とする付記1乃至5のいずれか1項に記載の画像処理装置。
(付記7)
被写体の画像に基づいて、前記被写体の形状を推定し、
前記被写体の形状に基づいて、前記被写体上の複数点の各々を結ぶ二次曲面を生成し、
前記二次曲面に基づいて、前記複数点の各々を前記二次曲面に接する平面上に展開し、
前記平面上に展開された各点の位置に基づいて前記画像を補正する、
処理をコンピュータに実行させる画像処理プログラム。
(付記8)
前記コンピュータは、前記画像の輝度分布に基づいて、前記被写体の形状を推定することを特徴とする付記7記載の画像処理プログラム。
(付記9)
前記コンピュータは、前記二次曲面上の基準点と前記複数点の各々との距離に基づいて、前記複数点の各々を前記平面上に展開することを特徴とする付記7又は8記載の画像処理プログラム。
(付記10)
前記コンピュータは、被写体の画像を撮影した撮像素子部と前記二次曲面との距離と、前記撮像素子部と前記平面との距離とに基づいて、前記平面上に展開された各点の画素値を補正することを特徴とする付記7乃至9のいずれか1項に記載の画像処理プログラム。
(付記11)
被写体を撮影し、
前記被写体の画像に基づいて、前記被写体の形状を推定し、
前記被写体の形状に基づいて、前記被写体上の複数点の各々を結ぶ二次曲面を生成し、
前記二次曲面に基づいて、前記複数点の各々を前記二次曲面に接する平面上に展開し、
前記平面上に展開された各点の位置に基づいて前記画像を補正する、
ことを特徴とする画像処理方法。
(付記12)
前記画像の輝度分布に基づいて、前記被写体の形状を推定することを特徴とする付記11記載の画像処理方法。
(付記13)
前記二次曲面上の基準点と前記複数点の各々との距離に基づいて、前記複数点の各々を前記平面上に展開することを特徴とする付記11又は12記載の画像処理方法。
(付記14)
被写体の画像を撮影した撮像素子部と前記二次曲面との距離と、前記撮像素子部と前記平面との距離とに基づいて、前記平面上に展開された各点の画素値を補正することを特徴とする付記11乃至13のいずれか1項に記載の画像処理方法。