画像情報取得装置、画像情報取得方法およびプログラム
【課題】複数の要因により生ずる反射光画像の歪みを容易に補正することができる画像取得方法及び装置を提供する。
【解決手段】撮像対象に光を照射する発光手段と、撮像対象からの反射光を受光する受光手段と、受光手段で受光された反射光の強度分布から撮像対象の3次元形状を表す反射光画像を生成する画像生成手段を含む画像取得装置で、反射光画像を得、撮像対象の理想的な3次元形状を示す理想画像に対する反射光画像の歪みを補正するための変換行列を用いて、得られた反射光画像の各画素値を補正する。画像取得装置で得られた反射光画像の各画素値が各行列要素に対応する行列の逆行列と、理想画像の各画素値が各行列要素に対応する行列とを乗算することにより変換行列を生成し、反射光画像の各画素が各行列要素に対応する行列と変換行列とを乗算して、当該反射光画像の各画素値を補正する。
【解決手段】撮像対象に光を照射する発光手段と、撮像対象からの反射光を受光する受光手段と、受光手段で受光された反射光の強度分布から撮像対象の3次元形状を表す反射光画像を生成する画像生成手段を含む画像取得装置で、反射光画像を得、撮像対象の理想的な3次元形状を示す理想画像に対する反射光画像の歪みを補正するための変換行列を用いて、得られた反射光画像の各画素値を補正する。画像取得装置で得られた反射光画像の各画素値が各行列要素に対応する行列の逆行列と、理想画像の各画素値が各行列要素に対応する行列とを乗算することにより変換行列を生成し、反射光画像の各画素が各行列要素に対応する行列と変換行列とを乗算して、当該反射光画像の各画素値を補正する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、反射光画像を撮影し、当該撮像した反射光画像を利用することで撮影対象までの距離の情報を取得する装置にかかり、特に、得られた反射光画像の輝度値に含まれる歪みを、包括的に修正することで、得られる凹凸情報の大局的な整合性を向上させた画像情報取得装置および画像情報取得方法、画像情報操作方法に関する。
【背景技術】
【0002】
従来から、コンピュータをはじめとする各種情報機器において、空間内の3次元情報を正確に効率良く入力できる手段を実現することは、有意義だが困難な目標とされてきた。
【0003】
既に考案、開発されている3次元情報の取得装置、取得方法は、それぞれが立脚する原理によって、様々な長所および短所が存在する。
【0004】
例えば、対象をニードルでなぞり、そのニードルの先端の位置を記録してゆく機械的な計測方法がある。この技術は、対象の正確な3次元情報が獲得出来るという長所がある一方で、直接干渉することが可能な物体に利用が限られるという欠点がある。また、逐次的に情報を蓄積するため、ある特定の範囲全体の3次元情報を獲得するには時間が掛かるという問題点もある。
【0005】
また別の例として、レーザー光を照射して対象までの距離を計測するレーザーレンジカメラ等の測量的な計測方法がある。この技術で使用する装置はレーザー光を使用した特殊な機器であるため、高価であり、操作が難しいという欠点がある。また、レーザー光による走査時間が必要なため、動画のように連続して3次元情報を獲得することは出来ない。
【0006】
また別の例として、ステレオ画像処理やパターン光投影法等の画像認識技術を利用して画像から3次元情報を獲得する方法がある。画像自体は動画として撮影可能であるため、後段の情報処理を高速化することで、連続して高速に3次元情報を獲得できる余地があるが、画像の内容(見え方)のみが手掛かりである為、適用条件が制限されたり、得られる結果が不安定になりやすいという問題点がある。
【0007】
次に、本発明における画像情報取得装置および方法が基礎と置いている技術に付いて述べる。
【0008】
反射光が距離の2乗に反比例するという性質、すなわち、V=n/D2 (V:反射光の強さ、n:係数、D:物体との距離)を利用して、カメラ側で発した照射光による反射光の輝度を参照することで、間接的に奥行き情報を得る手法が開示されている(例えば、特許文献1参照)。特許文献1記載の技術によれば、距離情報を算出する根拠となる反射光画像は、依然として画像の一種であるため、既存の動画撮影技術の応用により毎秒10〜30枚程度のフレームレートで距離情報を取得することが可能である。
【0009】
しかし、反射光画像における反射光の強度は、対象との距離以外の、例えば対象の表面の反射係数などといった条件によって変動し、必ずしも実際の距離を反映していない場合がある。よって、反射光画像が真の距離情報を反映したものに近づくように、何らかの手段で反射光画像の輝度を補正しなければ、距離情報を取得する手段としては不十分である。
【0010】
この問題に対して、反射光画像と共に一般の自然光画像を取得する手段を設けることで、対象の表面の色情報から対象の反射係数を推定し、補正する手法が開示されている(例えば、特許文献2参照)。
【0011】
また、撮影対象物の表面が傾くことで反射光画像の輝度値が低下する現象に注目し、2種類の拘束条件を導入することで、輝度低下による誤差を補正する方法も開示されている(例えば、特許文献3)。
【0012】
しかしながら、実際に撮影される反射光画像の輝度値は様々な要因によって構成されており、複数の要因の相互交絡による成分も含まれる。このため、前記の文献が言及している歪みの成分だけを除去しても、理論値と同じ値を示さない場合があるなど、反射光画像の輝度値から正確な距離の情報を得ることは依然として困難な問題である。
【0013】
また、いくつかの要因は、結果から原因を求めることが不可能な不良設定問題となるため、反射光画像の輝度値から距離の情報だけを抽出することは極めて困難である。
【特許文献1】特開平10−177449号公報
【特許文献2】P2001−383893
【特許文献3】P2004−10910(←出願番号)
【発明の開示】
【発明が解決しようとする課題】
【0014】
このように、従来は、撮像対象表面の反射率の違いや、撮像対象の傾きなどの複数の要因により、反射光画像から撮像対象の奥行き方向の正確な距離情報を得ることは困難であるという問題点があった。
【0015】
そこで、本発明は、上記問題点に鑑み、複数の要因により生ずる反射光画像の歪みを容易に補正することができる画像取得方法及び装置を提供することを目的とする。
【課題を解決するための手段】
【0016】
本発明は、撮像対象に光を照射する発光手段と、前記撮像対象からの反射光を受光する受光手段と、前記受光手段で受光された反射光の強度分布から前記撮像対象の3次元形状を表す反射光画像を生成する画像生成手段を含む画像取得装置で、前記反射光画像を得、前記撮像対象の理想的な3次元形状を示す理想画像に対する前記反射光画像の歪みを補正するための変換行列を用いて、得られた反射光画像の各画素値を補正する。
【0017】
好ましくは、前記画像取得装置で得られた反射光画像から前記撮像対象の概略形状を示す直流成分を削除した後の各画素値を各行列要素とする行列の逆行列と、前記理想画像から前記直流成分を削除した後の各画素値を各行列要素とする行列とを乗算することにより前記変換行列を生成し、取得された反射光画像から前記直流成分を削除した後の各画素値を各行列要素とする行列と前記変換行列とを乗算して、当該各画素値を補正した後、前記直流成分を加算する。
【発明の効果】
【0018】
本発明によれば、複数の要因により生ずる反射光画像の歪みを容易に補正することができ、その結果、高精度の(奥行き方向の)距離情報を含む反射光画像を得ることができる。
【発明を実施するための最良の形態】
【0019】
以下、本発明の実施形態について図面を参照して説明する。
【0020】
(第1の実施例)
図1は本発明の第1の実施形態における画像情報取得装置の構成例を示すブロック図である。図2は、図1の画像取得部11及び画像情報処理部22の構成例を示すブロック図である。図3は画像情報取得装置の外観図である。
【0021】
図1の画像情報取得装置10は、対象物1に光を照射し、その照射光による反射光を受光することにより、各画素値が反射光の強度を示し、各画素値が示す反射光の強度により対象物1までの距離情報及び対象物1の3次元形状を表す反射光画像を取得する。反射光画像を撮影することで対象物1の各部までの距離情報が得られる原理については後述する。
【0022】
図1の画像情報取得装置10は、対象物1の自然光画像、もしくは反射光画像を撮影する画像取得部11と、画像取得部11で取得された反射光画像に対し、画像処理を行う画像情報処理部22と、画像情報取得装置10のユーザ2が操作を行うための操作入力部13および操作入力制御部12と、ユーザ2に情報の呈示を行うための表示部14および表示制御部15と、ユーザ2に音声の呈示を行うための音声出力部16と、ユーザ2が音声の入力を行うための音声入力部17と、音声出力部16および音声入力部17を制御するための音声入出力制御部18と、画像情報取得装置10が、外部システム3と通信を行う為の通信入出力部19と、画像情報取得装置10の各構成部を制御するための情報処理部20と、情報処理部20が情報処理を行う際に情報を記憶する情報記憶部21を含む。
【0023】
このような構成により、画像情報取得装置10はユーザ2の音声と画像の両方による通信を実現するテレビ電話装置として機能する。また、画像情報取得装置10は、反射光画像を利用して獲得した三次元の形状情報による通信も実現する立体テレビ電話としても機能する。
【0024】
次に、対象物の自然光画像、反射光画像を撮影する画像取得部11及び画像情報処理部22の詳細について、図2を参照して説明する。
【0025】
画像取得部11は、対象物1に照射する光を発光する発光部114と、対象物1の画像を光学的に結像させる撮像光学系111と、結像した反射光画像を光電変換し、電気信号として出力する撮像センサー112と、撮像センサー112の光電変換動作を制御する撮像回路113と、発光部114が発光している間に撮像センサー112内で発生した電荷を蓄積する第1の電荷蓄積部117と、発光部114が発光していない間に撮像センサー112内で発生した電荷を蓄積する第2の電荷蓄積部118と、第1の電荷蓄積部117の各セルの蓄積量から、第2の電荷蓄積量118の各セルの蓄電量を差し引いて、発光部114からの照射光のみによる反射光成分を取り出し、反射光画像を生成する反射光成分抽出部116と、上記各部を制御する制御部115を含む。反射光成分抽出部116からは生成された反射光画像が画像情報処理部22へ出力される。
【0026】
画像情報処理部22は、画像取得部11から出力された反射光画像を入力したり、演算部220での演算処理の結果得られる反射光画像を情報処理部20へ出力する入出力部210と、入力された反射光画像に対する演算処理を行う演算部220と、演算部220で演算処理を行う際に参照するデータや、処理結果などを記憶する記憶部23からなる。
【0027】
次に、反射光画像を撮影することで距離情報が得られる原理について説明する。
【0028】
一般に、反射光の強度は光源から対象物までの距離の二乗に反比例するという性質を持つ。これにより、撮影位置から発した照射光のみによって照らされた対象物の反射光画像を撮影することで、撮影位置から対象物1の各部までの距離情報を得ることが可能となる。
【0029】
本実施形態においては、発光部114が画像取得部11内に存在し、発光部114が発する照射光のみに照らされた反射光画像を撮影することで、対象物1の画像取得部11からの距離情報を得ることが可能となる。
【0030】
次に、画像情報取得装置10が反射光画像を撮影する際の基本動作について説明する。
【0031】
まず、発光部114が制御部115からの制御に従って照射光を発光する。撮像センサ112は、例えば256×256のマトリックス状に配列された複数のセンサからなり、マトリックス中の各センサにて受光された反射光の強度がそれぞれ画素値となる。第1及び第2の電荷蓄積部117、118は、撮像センサ112のマトリックス状の複数のセンサのそれぞれに対応し、各センサで発生した電荷を蓄積するための複数のセルをそれぞれ有する。発光している間に撮像センサー112内の各センサで発生した電荷は、第1の電荷蓄積部117に蓄積される。また、発光していない間に撮像センサー112内で発生した電荷は第2の電荷蓄積部118に蓄積される。
【0032】
これにより、第1の電荷蓄積部117には発光部114が発した照射光と、最初から対象物1を照らしていた太陽光や照明光などの自然光の両方による反射光による電荷が蓄積される。また、第2の電荷蓄積部118には自然光のみによる反射光の電荷が蓄積される。
【0033】
反射光成分抽出部116は、第1の電荷蓄積部117の各セルの蓄積量から、第2の電荷蓄積量118の各セルの蓄積量を差し引き、各セルについて、発光部114が発した照射光のみによる反射光成分の電荷量を抽出する。各セルの反射光成分の電荷量は各画素値に対応する。この結果、各画素値が発光部114の照射光のみによって照らされた対象物1からの反射光の強度を示す反射光画像が得られる。
【0034】
図3は、簡単のため、256×256画素の反射光画像の一部である8×8画素の反射光画像の場合について示している。
【0035】
物体からの反射光は、物体の距離が大きくなるにつれ大幅に減少する。物体の表面が一様に光を散乱する場合、反射光画像1画素あたりの受光量は物体までの距離の2乗に反比例して小さくなる。
【0036】
反射光画像の各画素値は、その画素に対応する単位受光部(マトリックス状に配置された各センサ)で受光した反射光の量を表す。反射光は、物体の性質(光を鏡面反射する、散乱する、吸収する、など)、物体の向き、物体の距離などに影響されるが、物体全体が一様に光を散乱する物体である場合、その反射光量は物体までの距離と密接な関係を持つ。手などは、このような性質をもつため、手の反射光画像は、手までの距離、手の傾き(部分的に距離が異なる)などを反映する図5に示したような3次元的なイメージを得ることができる。
【0037】
図6は、例えば、特願平9−299648号に記載されているような画像取得部11を構成する発光部101と、撮像光学系111及び撮像センサ112を含む受光部120の外観の一例を示したもので、中央部には円形レンズ(撮像光学系111)とその後部にある撮像センサ112(図示せず)から構成される受光部1120が配置され、円形レンズの周囲にはその輪郭に沿って、赤外線などの光を照射するLEDから構成される発光部114が複数(例えばここでは6個)等間隔に配置されている。
【0038】
発光部114から照射された光が物体に反射され、受光部120のレンズにより集光され、レンズの後部にある撮像センサ112で受光される。撮像センサ112は、例えば256×256のマトリックス状に配列されたセンサで、マトリックス中の各センサにて受光された反射光の強度がそれぞれ画素値となる。このようにして取得された画像が、図4に示すような反射光の強度分布としての反射光画像である。
【0039】
図4は、反射光画像データの一部(256×256画素の一部の8×8画素)を示したものである。この例では、行列中のセルの値(画素値)は、取得した反射光の強さを256ビットで示したものである。例えば、「255」の値があるセルは、画像取得部11に最も接近した状態、「0」の値があるセルは、画像取得部11から遠くにあり、反射光が画像取得部11にまで到達しないことを示している。
【0040】
図5は、図4に示したようなマトリックス形式の反射光画像データ全体を3次元的に示したものである。この例では、(発光部114が発した照射光のみによる反射光成分で表された)人間の手の反射光画像データの場合を示している。
【0041】
図7に、画像取得部11により取得・生成された、(発光部114が発した照射光のみによる反射光成分で表された)手の反射光画像の例を示す。反射光画像は、奥行き情報を有する3次元画像で、例えば、x軸(横)方向64画素、y軸(縦)方向64画素、z軸(奥行き)方向256階調の画像になっている。図6は、反射光画像の距離値、すなわちz軸方向の階調をグレースケールで表現したもので、この場合、色が黒に近いほど画像取得部11からの距離が近く、白に近くなるほど距離が遠いことを示している。また、色が完全に白のところは、画像がない、あるいはあっても遠方でないのと同じであることを示している。
【0042】
物体からの反射光の強さは当該物体までの距離の2乗に反比例して小さくなる。すなわち、距離画像中の各画素(i、j)の画素値をQ(i、j)とすると、
Q(i、j)=K/d2 …(1)
と表すことができる。
【0043】
ここで、Kは、例えば、d=0.5mのときに、R(i、j)の値が「255」になるように調整された係数である。上式をdについて解くことで、距離値を求めることができる。
【0044】
このように、画像取得部11で生成される、反射光の強度分布を示す反射光画像の各画素値(輝度値)は、撮像対象の凹凸形状を表す距離情報を示している。また、各画素に対応する実際の距離値(距離情報)は、上記(1)式から算出することができる。
【0045】
次に、反射光画像から対象物1の形状(奥行き値)を求める手順について説明する。本実施形態では、画像情報取得装置10を立体テレビ電話装置として使用するため、ユーザ2の顔が図1の対象物1となる。従って、ここでは、図8(a)に示すようなユーザ2の顔面411の反射光画像410を撮影し、顔面の3次元形状を獲得する場合を例にとり説明する。
【0046】
図8(a)に示すように、撮像される反射光画像410は縦40×横30画素で構成され、画面中央に人物の顔面を写している。基本的には、反射光画像410の輝度の濃淡を距離情報に読み替えることで、対象物である顔面411の3次元形状データが得られる仕組みとなる。
【0047】
次に、図8(b)(c)を参照して、反射光画像410中の奥行き値について説明する。図8(b)および図8(c)は、顔面411の線412の位置における断面形状を示したもので、図8(b)は顔面411の真値による断面形状を示したもので、反射光画像によって取得される奥行き値の理想的な状況を示している。一方、図8(c)は顔面411の反射光画像の輝度値をそのまま奥行き値に読み替えた場合に得られる断面形状の一例を示しており、図8(b)に示す真値と比較して、鼻の頂点が低い、両頬が盛り上がっている、鼻の両側面がへこんでいる、等の誤差(歪み)の発生が認められる。なお、反射光画像によって得られる奥行き値は画像に撮影される部分、つまり表側に限られるので、得られる断面形状は奥行き(Z軸)方向に対する一価の凸形状となる。
【0048】
反射光画像から得られる、上記のような誤差(歪み)は、撮像対象の表面に鏡面反射の性質があることや、対象の表面が傾いていることなどの複数の歪み要因と、それぞれの効果の交絡によってもたらされる。
【0049】
従来は、逆算可能ないくつかの誤差要因に注目して、その要因による誤差だけを補正していた。しかし、既に述べたように画素値の歪みは複数の要因によってもたらされている為、一部の要因による歪みの成分だけを除去しても、図8(b)に示すような良好な形状への補正は困難である。
【0050】
そこで、画像情報処理部22は、このような複数の要因の交絡により生じた誤差(歪み)を包括的に修正し、反射光画像から良好な形状情報を獲得するようになっている。
【0051】
次に、画像情報処理部22の処理動作について説明する。
【0052】
以後、(画像取得部11から出力された)各画素値が撮像対象からの反射光の強度(輝度値)を示し、これにより撮像対象の3次元形状を表す反射光画像を処理対象として説明する。なお、本実施形態は、この場合に限らず、各画素値が実際の距離値を示し、これにより撮像対象の3次元形状を表す反射光画像を処理対象として用いてもよい。この場合、画像情報処理部22は、まず、画像取得部11から出力された反射光画像の各画素値(輝度値)を前述の(1)式を用いて、反射光画像の奥行き方向の距離情報に変換する。すなわち、画像取得部11から出力された反射光画像の各画素値(輝度値)を前述の(1)式のQとすることにより、実際の距離情報dが算出される。
【0053】
画像情報処理部22は、例えば、図8(c)に示すような反射光画像の歪みを取り除いくために、補正処理用の変換行列(ここでは、変換カーネルと呼ぶ)を用いた畳み込み演算を行い、反射光画像の輝度値の分布を、望ましい輝度値の分布に変換する。
【0054】
図9、図10は、画像情報処理部22の処理動作を説明するためのフローチャートである。以下、図9及び図10に示すフローチャートに従って、説明する。
【0055】
最初に、補正処理用の変換カーネルを新たに生成するか、もしくは予め準備されている既定の変換カーネルをロードする(ステップS1〜ステップS2)。変換カーネルの構成と生成手順(ステップS21〜ステップS28)については、後で詳述する。
【0056】
次に、画像取得部11が対象物1の反射光画像を撮影して、画像情報処理部22の入出力部210内の入力バッファ(図示せず)に取り込む(ステップS3〜ステップS4)。演算部220は、まず、取り込まれた反射光画像中に補正処理の対象となる輝度パターンが存在するかどうかの検出処理を行う(ステップS5〜ステップS6)。本実施形態では、ユーザ2の顔を撮影して形状を獲得することが目的であるから、反射光画像中から顔の画像領域を示す輝度パターンの検出を行う。顔の画像領域を示す輝度パターン(各画素値が実際の距離値を示し、これにより撮像対象の3次元形状を表す反射光画像を処理対象として用いる場合には、上記輝度パターンの各輝度値を距離値に変換することにより得られる顔の画像領域を示す距離値パターン)が見つかった場合、後段の処理で参照する大きさや縦横比などの特徴パラメータを計測する(ステップS7)。もし、得られた特徴パラメータが対応可能な範囲であれば、当該顔の画像領域、すなわち、処理対象の画素数を決定し、変換カーネルサイズとローパスフィルタのサイズに反映する(ステップS8〜ステップS11)。もし、得られた特徴パラメータが対応可能な範囲を超えていたらエラー処理を行う(ステップS31、ステップS32)。
【0057】
次に、大きさ以外の特徴パラメータを参照して変換カーネルの種類を選択する(ステップS10)。適切な変換カーネルが選択出来ない場合は、変換カーネルを再構成するか、もしくはエラー処理をするかの判断を行う(ステップS11、ステップS41)。
【0058】
変換カーネルの選択が完了すると、この変換カーネルを用いて入力データ(入力バッファ内の反射光画像)の補正を行うが、実際の演算は、まず、入力データから直流成分を除いた差分データ(入力差分データ)に対して行う。このために、入力データに対し前処理を行う(図9のステップS12〜ステップS14)。また、補正後のデータ(補正差分データ)に関しても同様に直流成分が除かれているため、補正後のデータに直流成分を加えて補正後画像を生成する後処理を行う(ステップS16)。これは、生の画素値をそのまま利用して変換カーネルによる畳み込み演算を行うと、画素値配列に含まれる直流成分が同時に畳み込まれて大きな値となり、処理が安定しなくなるという問題が発生するためである。これら、直流成分の具体的な取り扱いについては後で詳述する。
【0059】
ステップS15では、変換カーネルを用いて入力差分データを、歪みを取り除いた補正差分データに変換するための変換処理を行う。すなわち、この変換処理によって、歪んだ位相の凹凸を含む反射光画像が正しい凹凸に基づく反射光画像に変換されるが、実際には変換カーネルが想定している入力画像と実際の入力画像が完全に一致するわけではないので、部分的に突起ノイズが発生したり、補正対象である顔の画像の外側に畳み込み処理の副作用による擬輪郭が出現することがある。これらのノイズを除去する為、補正後の反射光画像(補正後画像)に対してスムージングやマスキング等の整形処理を行い、最終結果が出力される(ステップS17〜ステップS18)。
【0060】
次に、図10のステップS12〜ステップS16の処理について、より具体的に説明する。入力バッファ内の処理対象の反射光画像は、2次元の画像データであるが、ここでは、反射光画像のある断面形状を示す画素列、すなわち、一次元の画像データを例にとり説明する。
【0061】
図11(a)は、入力バッファ内の補正対象の反射光画像のある断面形状を示す、一次元の画像データ、すなわち、入力データを示したものである。この入力データは、例えば、図8(c)の顔面411の線412の位置における断面形状を示す画像データである。前述したように、各画素値は、輝度値を示している。輝度「160」の画素を中心に、左右に10画素ずつ、合計21画素の幅で顔面が撮影されていて、大局的には3つの凸形状を持つ、ちょうど図8(c)に示した形状が表されている。
【0062】
図8(c)に示した形状を示す入力データを、図8(b)に示したような、大局的には半円状の中央に一つの凸形状を持つ理想的な形状を示す理想データに変換することが、補正処理の目的である。
【0063】
ステップS14では、図11(a)の入力データから直流成分(図11(b)のローパスデータ)を除去した入力差分データ(図11(c))を求め、ステップS15で、入力差分データを変換カーネル(図11(f))を用いて補正差分データ(図11(e))に変換し、ステップS16では、補正差分データに直流成分(図11(b)のローパスデータ)を加えて、補正後データ(図11(d))を生成する。この補正後データが目標とする理想データに近似するように、変換カーネルが生成される。
【0064】
図12は、図11の入力データ、補正後データ、および変換カーネルの関係を行列演算式の形式で模式的に示したものである。実際の行列演算で用いられる入力データ511および出力データ513は、既に述べたように生の画素値によって構成される図11(a)の入力データおよび図11(d)の補正後データではなく、これらの値から直流成分を除去した入力差分データ(図11(c))および補正差分データ(図11(e))である。よって、変換カーネルによる畳み込み演算を行う前に、処理対象の画素値配列に含まれる直流成分を除去した図11(c)の入力差分データを求めておく。これがステップS12〜ステップS14の処理である。
【0065】
一般的に、数列データの直流成分は各数値の平均値と考えられるが、本実施形態では直流成分の意味を、補正処理の前後でも変化が無い程度の大局的な特徴成分と考えることとする。例えば、本実施形態では人物の顔面を撮影対象としているが、人物の顔面の形状は非常に大雑把に表現すると縦長の楕円球形状(の表側)であり、この程度の特徴は補正前の反射光画像にも、補正後の反射光画像にも大差なく含まれる。よって、人物の顔面を撮影対象とした場合は、平均的、典型的な輝度値により表された、縦長の楕円球(の表側)の形状的特徴、すなわち、概略形状を示す成分を直流成分と解釈し、この直流成分に対する変動成分を補正処理の対象とする。これにより、反射光画像における距離の歪みの成分に絞った効率的な補正処理が可能となる。
【0066】
撮像対象(例えば、本実施形態では人物の顔面)の3次元的な概略形状が直流成分であり、この直流成分を示す画像を、ここではローパス画像と呼ぶ。人物の顔面が撮像対象である場合には、例えば、多くの人物の顔面の反射光画像から平均的、典型的な反射光画像を求めて、それをローパス画像として用いることもできるが、本実施形態では、補正対象の各反射光画像から、当該反射光画像に対応するローパス画像を生成する。
【0067】
ローパス画像の生成方法(ステップS12、ステップS13)について説明する。
【0068】
ステップS12では、まず、補正対象の反射光画像に適用するローパスフィルタとして所定の大きさの半径のローパスフィルタを選択する。ここでは、半径3画素(直径7画素)のローパスフィルタを選択するものとする。そして、ステップS13では、このローパスフィルタを用いて補正対象の反射光画像の情報量の低減化を行い、上記ローパス画像を生成する。
【0069】
すなわち、上記半径3画素のローパスフィルタを用いる場合、ローパス画像の任意の画素について、補正対象の反射光画像の当該任意の画素に対応する画素の前後3画素(当該任意の画素に対応する画素を含めて全部で7画素)の画素値の平均値を算出する。この値を当該任意の画素の画素値とするローパス画像を生成する。
【0070】
図11(b)は、上記ローパス画像の生成方法を用いて、図11(a)の入力データから生成されたローパスデータである。
【0071】
図11(c)の入力差分データは、図11(a)の入力データから、直流成分にあたる図11(b)のローパスデータを引いたものであり、変換カーネルによる畳み込み処理は、図11(c)の入力差分データに対して行われる。また、畳み込み処理によって得られる補正処理後のデータが図11(e)の補正差分データであるが、この補正差分データも同様に直流成分を含まないので、直流成分である図11(b)のローパスデータを加算して正しい構成に戻したものが、図11(d)の補正後データとなる。
【0072】
次に、畳み込み演算で使用する変換カーネル(変換行列)を求める具体的な方法(ステップS21〜ステップS28)について説明する。
【0073】
本実施形態において、変換カーネルは事前に準備されていて、画像の撮影中は適切な変換カーネルを選択することで補正処理を行うが、事前に変換カーネルを構築する際や、処理ループの途中で動的に変換カーネルを変更する必要がある場合には変換カーネル自体を求める計算が必要となる。
【0074】
図13は、変換カーネル512を求める行列演算を模式的に示したものである。図13の行列演算は、図12の畳み込みによる補正処理の行列演算と対になっており、図12の行列演算式の左右両辺に、図11(a)の1次元の入力データを示す行列(ここでは、正方行列で表している)511の逆行列514を掛けることで、変換カーネル512が得られる。よって、変換カーネル512を求めるためには、入力データ511と目標とする理想データを予め定めておく。そして、この理想データを、変換カーネル512を求める際の補正後データ513として用いる。以後、変換カーネル512を求める際の補正後データ513を理想データ513と読み替える。
【0075】
本実施形態では人物の顔面を撮影対象としているので、例えば、入力データ511には本実施形態における画像取得部11が撮影した反射光画像の(平均的な)データを用い、理想データ513には、理想的な平均顔の形状データを用いる。この場合、理想データは、撮像対象の3次元形状(表面に凸部、凹部を含む)を示す距離情報を正確に表すものであることが望ましい。従って、多くの人物の顔面の3次元形状の奥行き情報(距離情報)から、平均的、典型的な顔面の3次元形状の奥行き情報(距離情報)を示す画像データ(各画素値が奥行き方向の実際の距離値dを示す場合には、前述の(1)式を用いて、各画素値dを光りの強さQに直し、反射光画像と同様、光の強度(輝度値)分布により3次元形状を示す画像データに変換したもの)を予め作成しておき、これを撮像対象の理想データ513として用いる。
【0076】
また、特定の人物に特化してチューニングされた変換カーネルを得たい場合には、入力データ511に本実施形態における画像取得部11で当該人物の顔を撮影して得られる反射光画像のデータを導入し、理想データ513には、当該人物の顔をレーザーレンジカメラなどの正確な距離情報が得られる手段で計測した形状データを用いる。この場合、各画素値は、当該人物の奥行き方向の正確な距離値を示すため、前述の(1)式を用いて、各画素値dを光りの強さQに直し、反射光画像と同様、光の強度分布により3次元形状を示す画像データに変換して、それを理想データ513として用いる。
【0077】
変換カーネルは、撮像対象全体の理想データから生成することが望ましいが、この場合に限らず、撮像対象の3次元形状のうち、凹凸が最も激しい部分の断面形状、例えば、撮像対象が人物の顔面である場合には、図8(a)の顔面411の線412の位置のように、鼻の頂点、両頬を含む部分についての図8(b)に示すような断面形状を示す理想データのみから生成される変換カーネルを用いても、同様な効果が得られる。そこで、ここでは、図8(b)に示すような断面形状を示す理想データ(図11(d))のみから変換カーネルを生成する場合について説明する。
【0078】
変換カーネルを生成する際に用いる理想データは、画像情報処理部22の記憶部230に予め記憶されている。演算部220は、記憶部230から理想データ(図11(d))を読み出し(ステップS21)、さらに、変換カーネルを生成する際に用いる入力データ(図11(a))を読み出す(ステップS22)。画像取得部11で予め取得しておいた入力データを記憶部230に予め記憶しておき、これを用いる場合には、記憶部230から当該入力データを読み出す。あるいは、ステップS3で取得した入力データ(入力バッファに一時記憶されている)を用いるのであれば、これを入力バッファから読み出す。読み出された理想データのサイズに合わせてカーネルサイズ(行の数及び列の数)を決定する(ステップS23)。例えば、理想データがn×1画素であれば、n行×1列とする。なお、理想データが撮像対象全体のn×n画素の理想画像であれば、カーネルサイズもn行×n列となる。
【0079】
次に、前述のステップS12及びステップS13と同様にして、当該入力データ(図11(a))からローパスデータ(図11(b))を生成し(ステップS24、ステップS25)、理想データから当該ローパスデータを差し引いて、理想差分データ(図11(e))を生成する(ステップS26)。また、入力データからも当該ローパスデータを差し引いて、入力差分データ(図11(c))を生成する(ステップS27)。そして、入力差分データを表した行列(ここでは、入力差分データの各画素値を各行列要素とするn行1列の行列をn行n列の行列に展開して正方行列で表している)の逆行列514を算出する。図13に示すように、逆行列514と理想差分データとを乗算することで、変換カーネル512が求まる(ステップS28)。
【0080】
図11(f)の変換カーネルは、図11(d)を理想データ、図11(a)を入力データとし、図11(e)に示すような理想差分データ、及び図11(c)に示すような入力差分データから図13に示す行列演算を行った結果得られる変換カーネルである。
【0081】
人物の顔面の反射光画像を撮影して得られる断面形状は図8(c)に示すような形状ばかりではない。しかし、変換カーネルによる畳み込み処理では、複数の値の重畳によって1つの出力が決まるため、多少の誤差は吸収し、大局的な位相を安定して変換できるという性質がある。この性質により、上記ステップS12〜ステップS16の補正処理では、変換カーネルを生成する際に用いた反射光画像(入力データ)と、実際の補正対象の入力データに差違があっても安定した出力が得られる点が長所である。もちろん、入力データが示す形状は様々に変化する可能性がある為、入力データによっては変換カーネルが突起ノイズ等を出力する場合も有り得る。この様な場合を想定して、図10の最終結果を出力するステップS18の1つ前のステップS17では、生成した補正後画像に対してノイズ除去などの整形処理を施し、万全を期している。
【0082】
しかし、上記n行1列の列ベクトルの変換カーネルを用いた補正処理は、特徴的な1つの断面についての変換カーネルを全画面に適用することとなる為、演算量が少なくて済むという長所がある一方、大局的な特徴以外の詳細な形状情報が正確に補正されなかったり、情報がなまってしまったりという短所も存在する。よって、真に精度良く補正処理を行う為には、入力画像、理想画像ともにn行n列の正方行列を使用し、n行n列の正方行列で構成される変換カーネルによって補正処理を実行する必要がある。n行n列の正方行列を利用した補正処理については、第2の実施形態で説明する。
【0083】
(第2の実施形態)
第2の実施形態における画像情報取得装置の構成は図1と同様であり、また、第2の実施形態における画像取得部11及び画像情報処理部22の詳細な構成は図2と同様である。また、第2の実施形態において、照射光による反射光の画像を撮影して、三次元の形状情報を取得する原理についても第1の実施形態と同様である。
【0084】
第2の実施形態において、第1の実施形態と異なる点は、入力画像を理想画像に変換する際の変換カーネルによる畳み込み演算の内容である。第1の実施形態では、入力画像を理想画像に変換する演算に用いられる変換カーネルは、n行1列の列ベクトルであったが、第2の実施形態ではn行n列の正方行列となる。
【0085】
図14は、n行n列の正方行列の変換カーネルによる畳み込み計算の概念を示したもので、図12と同様に、入力データ、補正後データ、および変換カーネルの関係を行列演算式の形式で模式的に示している。なお、図14では、入力データ及び補正後データがともに2次元の画像データであり、その各画素値が各行列エレメントとなるn行n列の正方行列で表している。また、変換カーネルも入力データ及び補正後データと同様、n行n列の正方行列である。これ以外は、図12の説明がそのまま当てはまる。
【0086】
図15は、図14の入力データと理想データの関係から変換カーネルを求める計算の概念を行列演算式の形式で示したものである。なお、図14では、入力データ及び理想データがともに2次元の画像データであり、その各画素値が各行列エレメントとなるn行n列の正方行列で表している。また、変換カーネルも入力データ及び補正後データと同様、n行n列の正方行列である。これ以外は、図14の説明がそのまま当てはまる。
【0087】
第2の実施形態における、画像情報処理部22の処理動作も図9及び図10に示すフローチャートと同様であるが、図9のステップS21〜ステップS28の変換カーネル生成処理において、図15に示すn行n列の正方行列による行列演算となり、図10のステップS15の変換カーネルを用いた変換処理において、図14に示すn行n列の正方行列による行列演算となる。これ以外は、図9及び図10の説明がそのまま当てはまる。
【0088】
以上説明したように、上記第1及び第2の実施形態によれば、撮像対象に発光部114等を含む発光手段により光を照射し、撮像対象からの反射光を撮像光学系111,撮像センサー112等を含む受光手段で受光することにより、画像取得部11は、受光された反射光の強度分布から撮像対象の3次元形状を表す反射光画像を生成する。さらに、画像情報処理部22で、各画素値を距離情報そのものに変換してもよい。(画像取得部11及び画像情報処理部22を含むものが画像取得装置(図1には図示せず)に相当する。)取得された反射光画像から撮像対象の概略形状を示す直流成分を削除した後の各画素値を各行列要素とする行列の逆行列と、当該理想画像から直流成分を削除した後の各画素値を各行列要素とする行列とを乗算することにより、撮像対象の理想的な3次元形状を示す理想画像に対する反射光画像の歪みを補正するための変換行列を生成する。そして、当該変換行列を用いて、画像取得部11で取得された補正対象の反射光画像の各画素値を補正することにより、撮像対象表面の反射率の違いや、撮像対象の傾きなどの複数の要因により生ずる反射光画像の歪みを容易に補正することができ、その結果、高精度の(奥行き方向の)距離情報を含む反射光画像を得ることができる。
【0089】
すなわち、複数の要因の交絡によって歪められた反射光画像の各画素値(輝度値)を、個別の要因毎に補正するのではなく、歪みを含む見かけの輝度分布と、対象物の真の形状から導出される理想的な反射光画像(理想画像)の輝度分布との対応関係に注目し、畳み込み演算によって、特定の輝度値分布を別の特定の輝度値分布に変換する画像情報処理の手法を利用して、上記歪みを含む輝度値の分布を、望ましい輝度値の分布に包括的に変換することで、奥行き情報における立体の位相(凹凸関係)の精度を向上させることができる。
【0090】
なお、以上の図1の各構成部は、画像取得部11を除いて、ソフトウェアとしても実現可能である。特に、図9及ぶ図10のフローチャートに示した画像情報処理部22の処理手順は、コンピュータに実行させることのできるプログラムとして機械読みとり可能な記録媒体に記録して頒布することができる。
【0091】
また、上記第1及び第2の実施形態では、変換カーネルを生成する際に、反射光画像に合わせて、光の強度分布により撮像対象の3次元形状を示す理想データを用いて、輝度値を各行列要素とする行列演算を行う場合について説明したが、反射光画像の各画素値(Q)を前述の(1)式を用いて距離情報dに直し、各画素値が撮像対象の奥行き方向の実際の距離値を示すデータに変換し、当該データと、各画素値が撮像対象の奥行き方向の距離値を示す理想データ(例えば、レーザーレンジカメラで取得された形状データ)とを用いて、距離値を各行列要素とする、図13、図15に示すような行列演算を行い、変換カーネルを生成しても全く同様の効果が得られる。
【0092】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【0093】
【図1】本発明の実施形態にかかる画像情報取得装置の構成例を示した図。
【図2】図1の画像取得部及び画像情報処理部の構成例を示した図。
【図3】図1の画像情報取得装置の外観図。
【図4】反射光画像をマトリックス状に示した図。
【図5】反射光画像を3次元的に示した図。
【図6】画像取得部を構成する発光部と受光部の外観の一例を示した図。
【図7】反射光画像の一具体例を示した図。
【図8】人物の画面の反射光画像について説明するための図。
【図9】画像情報処理部の処理動作を説明するためのフローチャート。
【図10】画像情報処理部の処理動作を説明するためのフローチャート。
【図11】画像情報処理部の処理動作を説明するための図。
【図12】畳み込みによる補正処理(変換処理)を説明するための図。
【図13】変換カーネルの生成方法を説明するための図。
【図14】畳み込みによる補正処理(変換処理)を説明するための図。
【図15】変換カーネルの生成方法を説明するための図。
【符号の説明】
【0094】
10…画像情報取得装置、11…画像取得部、12…操作入力制御部、13…操作入力部、14…表示部、15…表示制御部、16…音声出力部、17…音声入力部、18…音声入出力制御部、19…通信入出力部、20…情報処理部、21…情報記憶部、22…画像情報処理部。
【技術分野】
【0001】
本発明は、反射光画像を撮影し、当該撮像した反射光画像を利用することで撮影対象までの距離の情報を取得する装置にかかり、特に、得られた反射光画像の輝度値に含まれる歪みを、包括的に修正することで、得られる凹凸情報の大局的な整合性を向上させた画像情報取得装置および画像情報取得方法、画像情報操作方法に関する。
【背景技術】
【0002】
従来から、コンピュータをはじめとする各種情報機器において、空間内の3次元情報を正確に効率良く入力できる手段を実現することは、有意義だが困難な目標とされてきた。
【0003】
既に考案、開発されている3次元情報の取得装置、取得方法は、それぞれが立脚する原理によって、様々な長所および短所が存在する。
【0004】
例えば、対象をニードルでなぞり、そのニードルの先端の位置を記録してゆく機械的な計測方法がある。この技術は、対象の正確な3次元情報が獲得出来るという長所がある一方で、直接干渉することが可能な物体に利用が限られるという欠点がある。また、逐次的に情報を蓄積するため、ある特定の範囲全体の3次元情報を獲得するには時間が掛かるという問題点もある。
【0005】
また別の例として、レーザー光を照射して対象までの距離を計測するレーザーレンジカメラ等の測量的な計測方法がある。この技術で使用する装置はレーザー光を使用した特殊な機器であるため、高価であり、操作が難しいという欠点がある。また、レーザー光による走査時間が必要なため、動画のように連続して3次元情報を獲得することは出来ない。
【0006】
また別の例として、ステレオ画像処理やパターン光投影法等の画像認識技術を利用して画像から3次元情報を獲得する方法がある。画像自体は動画として撮影可能であるため、後段の情報処理を高速化することで、連続して高速に3次元情報を獲得できる余地があるが、画像の内容(見え方)のみが手掛かりである為、適用条件が制限されたり、得られる結果が不安定になりやすいという問題点がある。
【0007】
次に、本発明における画像情報取得装置および方法が基礎と置いている技術に付いて述べる。
【0008】
反射光が距離の2乗に反比例するという性質、すなわち、V=n/D2 (V:反射光の強さ、n:係数、D:物体との距離)を利用して、カメラ側で発した照射光による反射光の輝度を参照することで、間接的に奥行き情報を得る手法が開示されている(例えば、特許文献1参照)。特許文献1記載の技術によれば、距離情報を算出する根拠となる反射光画像は、依然として画像の一種であるため、既存の動画撮影技術の応用により毎秒10〜30枚程度のフレームレートで距離情報を取得することが可能である。
【0009】
しかし、反射光画像における反射光の強度は、対象との距離以外の、例えば対象の表面の反射係数などといった条件によって変動し、必ずしも実際の距離を反映していない場合がある。よって、反射光画像が真の距離情報を反映したものに近づくように、何らかの手段で反射光画像の輝度を補正しなければ、距離情報を取得する手段としては不十分である。
【0010】
この問題に対して、反射光画像と共に一般の自然光画像を取得する手段を設けることで、対象の表面の色情報から対象の反射係数を推定し、補正する手法が開示されている(例えば、特許文献2参照)。
【0011】
また、撮影対象物の表面が傾くことで反射光画像の輝度値が低下する現象に注目し、2種類の拘束条件を導入することで、輝度低下による誤差を補正する方法も開示されている(例えば、特許文献3)。
【0012】
しかしながら、実際に撮影される反射光画像の輝度値は様々な要因によって構成されており、複数の要因の相互交絡による成分も含まれる。このため、前記の文献が言及している歪みの成分だけを除去しても、理論値と同じ値を示さない場合があるなど、反射光画像の輝度値から正確な距離の情報を得ることは依然として困難な問題である。
【0013】
また、いくつかの要因は、結果から原因を求めることが不可能な不良設定問題となるため、反射光画像の輝度値から距離の情報だけを抽出することは極めて困難である。
【特許文献1】特開平10−177449号公報
【特許文献2】P2001−383893
【特許文献3】P2004−10910(←出願番号)
【発明の開示】
【発明が解決しようとする課題】
【0014】
このように、従来は、撮像対象表面の反射率の違いや、撮像対象の傾きなどの複数の要因により、反射光画像から撮像対象の奥行き方向の正確な距離情報を得ることは困難であるという問題点があった。
【0015】
そこで、本発明は、上記問題点に鑑み、複数の要因により生ずる反射光画像の歪みを容易に補正することができる画像取得方法及び装置を提供することを目的とする。
【課題を解決するための手段】
【0016】
本発明は、撮像対象に光を照射する発光手段と、前記撮像対象からの反射光を受光する受光手段と、前記受光手段で受光された反射光の強度分布から前記撮像対象の3次元形状を表す反射光画像を生成する画像生成手段を含む画像取得装置で、前記反射光画像を得、前記撮像対象の理想的な3次元形状を示す理想画像に対する前記反射光画像の歪みを補正するための変換行列を用いて、得られた反射光画像の各画素値を補正する。
【0017】
好ましくは、前記画像取得装置で得られた反射光画像から前記撮像対象の概略形状を示す直流成分を削除した後の各画素値を各行列要素とする行列の逆行列と、前記理想画像から前記直流成分を削除した後の各画素値を各行列要素とする行列とを乗算することにより前記変換行列を生成し、取得された反射光画像から前記直流成分を削除した後の各画素値を各行列要素とする行列と前記変換行列とを乗算して、当該各画素値を補正した後、前記直流成分を加算する。
【発明の効果】
【0018】
本発明によれば、複数の要因により生ずる反射光画像の歪みを容易に補正することができ、その結果、高精度の(奥行き方向の)距離情報を含む反射光画像を得ることができる。
【発明を実施するための最良の形態】
【0019】
以下、本発明の実施形態について図面を参照して説明する。
【0020】
(第1の実施例)
図1は本発明の第1の実施形態における画像情報取得装置の構成例を示すブロック図である。図2は、図1の画像取得部11及び画像情報処理部22の構成例を示すブロック図である。図3は画像情報取得装置の外観図である。
【0021】
図1の画像情報取得装置10は、対象物1に光を照射し、その照射光による反射光を受光することにより、各画素値が反射光の強度を示し、各画素値が示す反射光の強度により対象物1までの距離情報及び対象物1の3次元形状を表す反射光画像を取得する。反射光画像を撮影することで対象物1の各部までの距離情報が得られる原理については後述する。
【0022】
図1の画像情報取得装置10は、対象物1の自然光画像、もしくは反射光画像を撮影する画像取得部11と、画像取得部11で取得された反射光画像に対し、画像処理を行う画像情報処理部22と、画像情報取得装置10のユーザ2が操作を行うための操作入力部13および操作入力制御部12と、ユーザ2に情報の呈示を行うための表示部14および表示制御部15と、ユーザ2に音声の呈示を行うための音声出力部16と、ユーザ2が音声の入力を行うための音声入力部17と、音声出力部16および音声入力部17を制御するための音声入出力制御部18と、画像情報取得装置10が、外部システム3と通信を行う為の通信入出力部19と、画像情報取得装置10の各構成部を制御するための情報処理部20と、情報処理部20が情報処理を行う際に情報を記憶する情報記憶部21を含む。
【0023】
このような構成により、画像情報取得装置10はユーザ2の音声と画像の両方による通信を実現するテレビ電話装置として機能する。また、画像情報取得装置10は、反射光画像を利用して獲得した三次元の形状情報による通信も実現する立体テレビ電話としても機能する。
【0024】
次に、対象物の自然光画像、反射光画像を撮影する画像取得部11及び画像情報処理部22の詳細について、図2を参照して説明する。
【0025】
画像取得部11は、対象物1に照射する光を発光する発光部114と、対象物1の画像を光学的に結像させる撮像光学系111と、結像した反射光画像を光電変換し、電気信号として出力する撮像センサー112と、撮像センサー112の光電変換動作を制御する撮像回路113と、発光部114が発光している間に撮像センサー112内で発生した電荷を蓄積する第1の電荷蓄積部117と、発光部114が発光していない間に撮像センサー112内で発生した電荷を蓄積する第2の電荷蓄積部118と、第1の電荷蓄積部117の各セルの蓄積量から、第2の電荷蓄積量118の各セルの蓄電量を差し引いて、発光部114からの照射光のみによる反射光成分を取り出し、反射光画像を生成する反射光成分抽出部116と、上記各部を制御する制御部115を含む。反射光成分抽出部116からは生成された反射光画像が画像情報処理部22へ出力される。
【0026】
画像情報処理部22は、画像取得部11から出力された反射光画像を入力したり、演算部220での演算処理の結果得られる反射光画像を情報処理部20へ出力する入出力部210と、入力された反射光画像に対する演算処理を行う演算部220と、演算部220で演算処理を行う際に参照するデータや、処理結果などを記憶する記憶部23からなる。
【0027】
次に、反射光画像を撮影することで距離情報が得られる原理について説明する。
【0028】
一般に、反射光の強度は光源から対象物までの距離の二乗に反比例するという性質を持つ。これにより、撮影位置から発した照射光のみによって照らされた対象物の反射光画像を撮影することで、撮影位置から対象物1の各部までの距離情報を得ることが可能となる。
【0029】
本実施形態においては、発光部114が画像取得部11内に存在し、発光部114が発する照射光のみに照らされた反射光画像を撮影することで、対象物1の画像取得部11からの距離情報を得ることが可能となる。
【0030】
次に、画像情報取得装置10が反射光画像を撮影する際の基本動作について説明する。
【0031】
まず、発光部114が制御部115からの制御に従って照射光を発光する。撮像センサ112は、例えば256×256のマトリックス状に配列された複数のセンサからなり、マトリックス中の各センサにて受光された反射光の強度がそれぞれ画素値となる。第1及び第2の電荷蓄積部117、118は、撮像センサ112のマトリックス状の複数のセンサのそれぞれに対応し、各センサで発生した電荷を蓄積するための複数のセルをそれぞれ有する。発光している間に撮像センサー112内の各センサで発生した電荷は、第1の電荷蓄積部117に蓄積される。また、発光していない間に撮像センサー112内で発生した電荷は第2の電荷蓄積部118に蓄積される。
【0032】
これにより、第1の電荷蓄積部117には発光部114が発した照射光と、最初から対象物1を照らしていた太陽光や照明光などの自然光の両方による反射光による電荷が蓄積される。また、第2の電荷蓄積部118には自然光のみによる反射光の電荷が蓄積される。
【0033】
反射光成分抽出部116は、第1の電荷蓄積部117の各セルの蓄積量から、第2の電荷蓄積量118の各セルの蓄積量を差し引き、各セルについて、発光部114が発した照射光のみによる反射光成分の電荷量を抽出する。各セルの反射光成分の電荷量は各画素値に対応する。この結果、各画素値が発光部114の照射光のみによって照らされた対象物1からの反射光の強度を示す反射光画像が得られる。
【0034】
図3は、簡単のため、256×256画素の反射光画像の一部である8×8画素の反射光画像の場合について示している。
【0035】
物体からの反射光は、物体の距離が大きくなるにつれ大幅に減少する。物体の表面が一様に光を散乱する場合、反射光画像1画素あたりの受光量は物体までの距離の2乗に反比例して小さくなる。
【0036】
反射光画像の各画素値は、その画素に対応する単位受光部(マトリックス状に配置された各センサ)で受光した反射光の量を表す。反射光は、物体の性質(光を鏡面反射する、散乱する、吸収する、など)、物体の向き、物体の距離などに影響されるが、物体全体が一様に光を散乱する物体である場合、その反射光量は物体までの距離と密接な関係を持つ。手などは、このような性質をもつため、手の反射光画像は、手までの距離、手の傾き(部分的に距離が異なる)などを反映する図5に示したような3次元的なイメージを得ることができる。
【0037】
図6は、例えば、特願平9−299648号に記載されているような画像取得部11を構成する発光部101と、撮像光学系111及び撮像センサ112を含む受光部120の外観の一例を示したもので、中央部には円形レンズ(撮像光学系111)とその後部にある撮像センサ112(図示せず)から構成される受光部1120が配置され、円形レンズの周囲にはその輪郭に沿って、赤外線などの光を照射するLEDから構成される発光部114が複数(例えばここでは6個)等間隔に配置されている。
【0038】
発光部114から照射された光が物体に反射され、受光部120のレンズにより集光され、レンズの後部にある撮像センサ112で受光される。撮像センサ112は、例えば256×256のマトリックス状に配列されたセンサで、マトリックス中の各センサにて受光された反射光の強度がそれぞれ画素値となる。このようにして取得された画像が、図4に示すような反射光の強度分布としての反射光画像である。
【0039】
図4は、反射光画像データの一部(256×256画素の一部の8×8画素)を示したものである。この例では、行列中のセルの値(画素値)は、取得した反射光の強さを256ビットで示したものである。例えば、「255」の値があるセルは、画像取得部11に最も接近した状態、「0」の値があるセルは、画像取得部11から遠くにあり、反射光が画像取得部11にまで到達しないことを示している。
【0040】
図5は、図4に示したようなマトリックス形式の反射光画像データ全体を3次元的に示したものである。この例では、(発光部114が発した照射光のみによる反射光成分で表された)人間の手の反射光画像データの場合を示している。
【0041】
図7に、画像取得部11により取得・生成された、(発光部114が発した照射光のみによる反射光成分で表された)手の反射光画像の例を示す。反射光画像は、奥行き情報を有する3次元画像で、例えば、x軸(横)方向64画素、y軸(縦)方向64画素、z軸(奥行き)方向256階調の画像になっている。図6は、反射光画像の距離値、すなわちz軸方向の階調をグレースケールで表現したもので、この場合、色が黒に近いほど画像取得部11からの距離が近く、白に近くなるほど距離が遠いことを示している。また、色が完全に白のところは、画像がない、あるいはあっても遠方でないのと同じであることを示している。
【0042】
物体からの反射光の強さは当該物体までの距離の2乗に反比例して小さくなる。すなわち、距離画像中の各画素(i、j)の画素値をQ(i、j)とすると、
Q(i、j)=K/d2 …(1)
と表すことができる。
【0043】
ここで、Kは、例えば、d=0.5mのときに、R(i、j)の値が「255」になるように調整された係数である。上式をdについて解くことで、距離値を求めることができる。
【0044】
このように、画像取得部11で生成される、反射光の強度分布を示す反射光画像の各画素値(輝度値)は、撮像対象の凹凸形状を表す距離情報を示している。また、各画素に対応する実際の距離値(距離情報)は、上記(1)式から算出することができる。
【0045】
次に、反射光画像から対象物1の形状(奥行き値)を求める手順について説明する。本実施形態では、画像情報取得装置10を立体テレビ電話装置として使用するため、ユーザ2の顔が図1の対象物1となる。従って、ここでは、図8(a)に示すようなユーザ2の顔面411の反射光画像410を撮影し、顔面の3次元形状を獲得する場合を例にとり説明する。
【0046】
図8(a)に示すように、撮像される反射光画像410は縦40×横30画素で構成され、画面中央に人物の顔面を写している。基本的には、反射光画像410の輝度の濃淡を距離情報に読み替えることで、対象物である顔面411の3次元形状データが得られる仕組みとなる。
【0047】
次に、図8(b)(c)を参照して、反射光画像410中の奥行き値について説明する。図8(b)および図8(c)は、顔面411の線412の位置における断面形状を示したもので、図8(b)は顔面411の真値による断面形状を示したもので、反射光画像によって取得される奥行き値の理想的な状況を示している。一方、図8(c)は顔面411の反射光画像の輝度値をそのまま奥行き値に読み替えた場合に得られる断面形状の一例を示しており、図8(b)に示す真値と比較して、鼻の頂点が低い、両頬が盛り上がっている、鼻の両側面がへこんでいる、等の誤差(歪み)の発生が認められる。なお、反射光画像によって得られる奥行き値は画像に撮影される部分、つまり表側に限られるので、得られる断面形状は奥行き(Z軸)方向に対する一価の凸形状となる。
【0048】
反射光画像から得られる、上記のような誤差(歪み)は、撮像対象の表面に鏡面反射の性質があることや、対象の表面が傾いていることなどの複数の歪み要因と、それぞれの効果の交絡によってもたらされる。
【0049】
従来は、逆算可能ないくつかの誤差要因に注目して、その要因による誤差だけを補正していた。しかし、既に述べたように画素値の歪みは複数の要因によってもたらされている為、一部の要因による歪みの成分だけを除去しても、図8(b)に示すような良好な形状への補正は困難である。
【0050】
そこで、画像情報処理部22は、このような複数の要因の交絡により生じた誤差(歪み)を包括的に修正し、反射光画像から良好な形状情報を獲得するようになっている。
【0051】
次に、画像情報処理部22の処理動作について説明する。
【0052】
以後、(画像取得部11から出力された)各画素値が撮像対象からの反射光の強度(輝度値)を示し、これにより撮像対象の3次元形状を表す反射光画像を処理対象として説明する。なお、本実施形態は、この場合に限らず、各画素値が実際の距離値を示し、これにより撮像対象の3次元形状を表す反射光画像を処理対象として用いてもよい。この場合、画像情報処理部22は、まず、画像取得部11から出力された反射光画像の各画素値(輝度値)を前述の(1)式を用いて、反射光画像の奥行き方向の距離情報に変換する。すなわち、画像取得部11から出力された反射光画像の各画素値(輝度値)を前述の(1)式のQとすることにより、実際の距離情報dが算出される。
【0053】
画像情報処理部22は、例えば、図8(c)に示すような反射光画像の歪みを取り除いくために、補正処理用の変換行列(ここでは、変換カーネルと呼ぶ)を用いた畳み込み演算を行い、反射光画像の輝度値の分布を、望ましい輝度値の分布に変換する。
【0054】
図9、図10は、画像情報処理部22の処理動作を説明するためのフローチャートである。以下、図9及び図10に示すフローチャートに従って、説明する。
【0055】
最初に、補正処理用の変換カーネルを新たに生成するか、もしくは予め準備されている既定の変換カーネルをロードする(ステップS1〜ステップS2)。変換カーネルの構成と生成手順(ステップS21〜ステップS28)については、後で詳述する。
【0056】
次に、画像取得部11が対象物1の反射光画像を撮影して、画像情報処理部22の入出力部210内の入力バッファ(図示せず)に取り込む(ステップS3〜ステップS4)。演算部220は、まず、取り込まれた反射光画像中に補正処理の対象となる輝度パターンが存在するかどうかの検出処理を行う(ステップS5〜ステップS6)。本実施形態では、ユーザ2の顔を撮影して形状を獲得することが目的であるから、反射光画像中から顔の画像領域を示す輝度パターンの検出を行う。顔の画像領域を示す輝度パターン(各画素値が実際の距離値を示し、これにより撮像対象の3次元形状を表す反射光画像を処理対象として用いる場合には、上記輝度パターンの各輝度値を距離値に変換することにより得られる顔の画像領域を示す距離値パターン)が見つかった場合、後段の処理で参照する大きさや縦横比などの特徴パラメータを計測する(ステップS7)。もし、得られた特徴パラメータが対応可能な範囲であれば、当該顔の画像領域、すなわち、処理対象の画素数を決定し、変換カーネルサイズとローパスフィルタのサイズに反映する(ステップS8〜ステップS11)。もし、得られた特徴パラメータが対応可能な範囲を超えていたらエラー処理を行う(ステップS31、ステップS32)。
【0057】
次に、大きさ以外の特徴パラメータを参照して変換カーネルの種類を選択する(ステップS10)。適切な変換カーネルが選択出来ない場合は、変換カーネルを再構成するか、もしくはエラー処理をするかの判断を行う(ステップS11、ステップS41)。
【0058】
変換カーネルの選択が完了すると、この変換カーネルを用いて入力データ(入力バッファ内の反射光画像)の補正を行うが、実際の演算は、まず、入力データから直流成分を除いた差分データ(入力差分データ)に対して行う。このために、入力データに対し前処理を行う(図9のステップS12〜ステップS14)。また、補正後のデータ(補正差分データ)に関しても同様に直流成分が除かれているため、補正後のデータに直流成分を加えて補正後画像を生成する後処理を行う(ステップS16)。これは、生の画素値をそのまま利用して変換カーネルによる畳み込み演算を行うと、画素値配列に含まれる直流成分が同時に畳み込まれて大きな値となり、処理が安定しなくなるという問題が発生するためである。これら、直流成分の具体的な取り扱いについては後で詳述する。
【0059】
ステップS15では、変換カーネルを用いて入力差分データを、歪みを取り除いた補正差分データに変換するための変換処理を行う。すなわち、この変換処理によって、歪んだ位相の凹凸を含む反射光画像が正しい凹凸に基づく反射光画像に変換されるが、実際には変換カーネルが想定している入力画像と実際の入力画像が完全に一致するわけではないので、部分的に突起ノイズが発生したり、補正対象である顔の画像の外側に畳み込み処理の副作用による擬輪郭が出現することがある。これらのノイズを除去する為、補正後の反射光画像(補正後画像)に対してスムージングやマスキング等の整形処理を行い、最終結果が出力される(ステップS17〜ステップS18)。
【0060】
次に、図10のステップS12〜ステップS16の処理について、より具体的に説明する。入力バッファ内の処理対象の反射光画像は、2次元の画像データであるが、ここでは、反射光画像のある断面形状を示す画素列、すなわち、一次元の画像データを例にとり説明する。
【0061】
図11(a)は、入力バッファ内の補正対象の反射光画像のある断面形状を示す、一次元の画像データ、すなわち、入力データを示したものである。この入力データは、例えば、図8(c)の顔面411の線412の位置における断面形状を示す画像データである。前述したように、各画素値は、輝度値を示している。輝度「160」の画素を中心に、左右に10画素ずつ、合計21画素の幅で顔面が撮影されていて、大局的には3つの凸形状を持つ、ちょうど図8(c)に示した形状が表されている。
【0062】
図8(c)に示した形状を示す入力データを、図8(b)に示したような、大局的には半円状の中央に一つの凸形状を持つ理想的な形状を示す理想データに変換することが、補正処理の目的である。
【0063】
ステップS14では、図11(a)の入力データから直流成分(図11(b)のローパスデータ)を除去した入力差分データ(図11(c))を求め、ステップS15で、入力差分データを変換カーネル(図11(f))を用いて補正差分データ(図11(e))に変換し、ステップS16では、補正差分データに直流成分(図11(b)のローパスデータ)を加えて、補正後データ(図11(d))を生成する。この補正後データが目標とする理想データに近似するように、変換カーネルが生成される。
【0064】
図12は、図11の入力データ、補正後データ、および変換カーネルの関係を行列演算式の形式で模式的に示したものである。実際の行列演算で用いられる入力データ511および出力データ513は、既に述べたように生の画素値によって構成される図11(a)の入力データおよび図11(d)の補正後データではなく、これらの値から直流成分を除去した入力差分データ(図11(c))および補正差分データ(図11(e))である。よって、変換カーネルによる畳み込み演算を行う前に、処理対象の画素値配列に含まれる直流成分を除去した図11(c)の入力差分データを求めておく。これがステップS12〜ステップS14の処理である。
【0065】
一般的に、数列データの直流成分は各数値の平均値と考えられるが、本実施形態では直流成分の意味を、補正処理の前後でも変化が無い程度の大局的な特徴成分と考えることとする。例えば、本実施形態では人物の顔面を撮影対象としているが、人物の顔面の形状は非常に大雑把に表現すると縦長の楕円球形状(の表側)であり、この程度の特徴は補正前の反射光画像にも、補正後の反射光画像にも大差なく含まれる。よって、人物の顔面を撮影対象とした場合は、平均的、典型的な輝度値により表された、縦長の楕円球(の表側)の形状的特徴、すなわち、概略形状を示す成分を直流成分と解釈し、この直流成分に対する変動成分を補正処理の対象とする。これにより、反射光画像における距離の歪みの成分に絞った効率的な補正処理が可能となる。
【0066】
撮像対象(例えば、本実施形態では人物の顔面)の3次元的な概略形状が直流成分であり、この直流成分を示す画像を、ここではローパス画像と呼ぶ。人物の顔面が撮像対象である場合には、例えば、多くの人物の顔面の反射光画像から平均的、典型的な反射光画像を求めて、それをローパス画像として用いることもできるが、本実施形態では、補正対象の各反射光画像から、当該反射光画像に対応するローパス画像を生成する。
【0067】
ローパス画像の生成方法(ステップS12、ステップS13)について説明する。
【0068】
ステップS12では、まず、補正対象の反射光画像に適用するローパスフィルタとして所定の大きさの半径のローパスフィルタを選択する。ここでは、半径3画素(直径7画素)のローパスフィルタを選択するものとする。そして、ステップS13では、このローパスフィルタを用いて補正対象の反射光画像の情報量の低減化を行い、上記ローパス画像を生成する。
【0069】
すなわち、上記半径3画素のローパスフィルタを用いる場合、ローパス画像の任意の画素について、補正対象の反射光画像の当該任意の画素に対応する画素の前後3画素(当該任意の画素に対応する画素を含めて全部で7画素)の画素値の平均値を算出する。この値を当該任意の画素の画素値とするローパス画像を生成する。
【0070】
図11(b)は、上記ローパス画像の生成方法を用いて、図11(a)の入力データから生成されたローパスデータである。
【0071】
図11(c)の入力差分データは、図11(a)の入力データから、直流成分にあたる図11(b)のローパスデータを引いたものであり、変換カーネルによる畳み込み処理は、図11(c)の入力差分データに対して行われる。また、畳み込み処理によって得られる補正処理後のデータが図11(e)の補正差分データであるが、この補正差分データも同様に直流成分を含まないので、直流成分である図11(b)のローパスデータを加算して正しい構成に戻したものが、図11(d)の補正後データとなる。
【0072】
次に、畳み込み演算で使用する変換カーネル(変換行列)を求める具体的な方法(ステップS21〜ステップS28)について説明する。
【0073】
本実施形態において、変換カーネルは事前に準備されていて、画像の撮影中は適切な変換カーネルを選択することで補正処理を行うが、事前に変換カーネルを構築する際や、処理ループの途中で動的に変換カーネルを変更する必要がある場合には変換カーネル自体を求める計算が必要となる。
【0074】
図13は、変換カーネル512を求める行列演算を模式的に示したものである。図13の行列演算は、図12の畳み込みによる補正処理の行列演算と対になっており、図12の行列演算式の左右両辺に、図11(a)の1次元の入力データを示す行列(ここでは、正方行列で表している)511の逆行列514を掛けることで、変換カーネル512が得られる。よって、変換カーネル512を求めるためには、入力データ511と目標とする理想データを予め定めておく。そして、この理想データを、変換カーネル512を求める際の補正後データ513として用いる。以後、変換カーネル512を求める際の補正後データ513を理想データ513と読み替える。
【0075】
本実施形態では人物の顔面を撮影対象としているので、例えば、入力データ511には本実施形態における画像取得部11が撮影した反射光画像の(平均的な)データを用い、理想データ513には、理想的な平均顔の形状データを用いる。この場合、理想データは、撮像対象の3次元形状(表面に凸部、凹部を含む)を示す距離情報を正確に表すものであることが望ましい。従って、多くの人物の顔面の3次元形状の奥行き情報(距離情報)から、平均的、典型的な顔面の3次元形状の奥行き情報(距離情報)を示す画像データ(各画素値が奥行き方向の実際の距離値dを示す場合には、前述の(1)式を用いて、各画素値dを光りの強さQに直し、反射光画像と同様、光の強度(輝度値)分布により3次元形状を示す画像データに変換したもの)を予め作成しておき、これを撮像対象の理想データ513として用いる。
【0076】
また、特定の人物に特化してチューニングされた変換カーネルを得たい場合には、入力データ511に本実施形態における画像取得部11で当該人物の顔を撮影して得られる反射光画像のデータを導入し、理想データ513には、当該人物の顔をレーザーレンジカメラなどの正確な距離情報が得られる手段で計測した形状データを用いる。この場合、各画素値は、当該人物の奥行き方向の正確な距離値を示すため、前述の(1)式を用いて、各画素値dを光りの強さQに直し、反射光画像と同様、光の強度分布により3次元形状を示す画像データに変換して、それを理想データ513として用いる。
【0077】
変換カーネルは、撮像対象全体の理想データから生成することが望ましいが、この場合に限らず、撮像対象の3次元形状のうち、凹凸が最も激しい部分の断面形状、例えば、撮像対象が人物の顔面である場合には、図8(a)の顔面411の線412の位置のように、鼻の頂点、両頬を含む部分についての図8(b)に示すような断面形状を示す理想データのみから生成される変換カーネルを用いても、同様な効果が得られる。そこで、ここでは、図8(b)に示すような断面形状を示す理想データ(図11(d))のみから変換カーネルを生成する場合について説明する。
【0078】
変換カーネルを生成する際に用いる理想データは、画像情報処理部22の記憶部230に予め記憶されている。演算部220は、記憶部230から理想データ(図11(d))を読み出し(ステップS21)、さらに、変換カーネルを生成する際に用いる入力データ(図11(a))を読み出す(ステップS22)。画像取得部11で予め取得しておいた入力データを記憶部230に予め記憶しておき、これを用いる場合には、記憶部230から当該入力データを読み出す。あるいは、ステップS3で取得した入力データ(入力バッファに一時記憶されている)を用いるのであれば、これを入力バッファから読み出す。読み出された理想データのサイズに合わせてカーネルサイズ(行の数及び列の数)を決定する(ステップS23)。例えば、理想データがn×1画素であれば、n行×1列とする。なお、理想データが撮像対象全体のn×n画素の理想画像であれば、カーネルサイズもn行×n列となる。
【0079】
次に、前述のステップS12及びステップS13と同様にして、当該入力データ(図11(a))からローパスデータ(図11(b))を生成し(ステップS24、ステップS25)、理想データから当該ローパスデータを差し引いて、理想差分データ(図11(e))を生成する(ステップS26)。また、入力データからも当該ローパスデータを差し引いて、入力差分データ(図11(c))を生成する(ステップS27)。そして、入力差分データを表した行列(ここでは、入力差分データの各画素値を各行列要素とするn行1列の行列をn行n列の行列に展開して正方行列で表している)の逆行列514を算出する。図13に示すように、逆行列514と理想差分データとを乗算することで、変換カーネル512が求まる(ステップS28)。
【0080】
図11(f)の変換カーネルは、図11(d)を理想データ、図11(a)を入力データとし、図11(e)に示すような理想差分データ、及び図11(c)に示すような入力差分データから図13に示す行列演算を行った結果得られる変換カーネルである。
【0081】
人物の顔面の反射光画像を撮影して得られる断面形状は図8(c)に示すような形状ばかりではない。しかし、変換カーネルによる畳み込み処理では、複数の値の重畳によって1つの出力が決まるため、多少の誤差は吸収し、大局的な位相を安定して変換できるという性質がある。この性質により、上記ステップS12〜ステップS16の補正処理では、変換カーネルを生成する際に用いた反射光画像(入力データ)と、実際の補正対象の入力データに差違があっても安定した出力が得られる点が長所である。もちろん、入力データが示す形状は様々に変化する可能性がある為、入力データによっては変換カーネルが突起ノイズ等を出力する場合も有り得る。この様な場合を想定して、図10の最終結果を出力するステップS18の1つ前のステップS17では、生成した補正後画像に対してノイズ除去などの整形処理を施し、万全を期している。
【0082】
しかし、上記n行1列の列ベクトルの変換カーネルを用いた補正処理は、特徴的な1つの断面についての変換カーネルを全画面に適用することとなる為、演算量が少なくて済むという長所がある一方、大局的な特徴以外の詳細な形状情報が正確に補正されなかったり、情報がなまってしまったりという短所も存在する。よって、真に精度良く補正処理を行う為には、入力画像、理想画像ともにn行n列の正方行列を使用し、n行n列の正方行列で構成される変換カーネルによって補正処理を実行する必要がある。n行n列の正方行列を利用した補正処理については、第2の実施形態で説明する。
【0083】
(第2の実施形態)
第2の実施形態における画像情報取得装置の構成は図1と同様であり、また、第2の実施形態における画像取得部11及び画像情報処理部22の詳細な構成は図2と同様である。また、第2の実施形態において、照射光による反射光の画像を撮影して、三次元の形状情報を取得する原理についても第1の実施形態と同様である。
【0084】
第2の実施形態において、第1の実施形態と異なる点は、入力画像を理想画像に変換する際の変換カーネルによる畳み込み演算の内容である。第1の実施形態では、入力画像を理想画像に変換する演算に用いられる変換カーネルは、n行1列の列ベクトルであったが、第2の実施形態ではn行n列の正方行列となる。
【0085】
図14は、n行n列の正方行列の変換カーネルによる畳み込み計算の概念を示したもので、図12と同様に、入力データ、補正後データ、および変換カーネルの関係を行列演算式の形式で模式的に示している。なお、図14では、入力データ及び補正後データがともに2次元の画像データであり、その各画素値が各行列エレメントとなるn行n列の正方行列で表している。また、変換カーネルも入力データ及び補正後データと同様、n行n列の正方行列である。これ以外は、図12の説明がそのまま当てはまる。
【0086】
図15は、図14の入力データと理想データの関係から変換カーネルを求める計算の概念を行列演算式の形式で示したものである。なお、図14では、入力データ及び理想データがともに2次元の画像データであり、その各画素値が各行列エレメントとなるn行n列の正方行列で表している。また、変換カーネルも入力データ及び補正後データと同様、n行n列の正方行列である。これ以外は、図14の説明がそのまま当てはまる。
【0087】
第2の実施形態における、画像情報処理部22の処理動作も図9及び図10に示すフローチャートと同様であるが、図9のステップS21〜ステップS28の変換カーネル生成処理において、図15に示すn行n列の正方行列による行列演算となり、図10のステップS15の変換カーネルを用いた変換処理において、図14に示すn行n列の正方行列による行列演算となる。これ以外は、図9及び図10の説明がそのまま当てはまる。
【0088】
以上説明したように、上記第1及び第2の実施形態によれば、撮像対象に発光部114等を含む発光手段により光を照射し、撮像対象からの反射光を撮像光学系111,撮像センサー112等を含む受光手段で受光することにより、画像取得部11は、受光された反射光の強度分布から撮像対象の3次元形状を表す反射光画像を生成する。さらに、画像情報処理部22で、各画素値を距離情報そのものに変換してもよい。(画像取得部11及び画像情報処理部22を含むものが画像取得装置(図1には図示せず)に相当する。)取得された反射光画像から撮像対象の概略形状を示す直流成分を削除した後の各画素値を各行列要素とする行列の逆行列と、当該理想画像から直流成分を削除した後の各画素値を各行列要素とする行列とを乗算することにより、撮像対象の理想的な3次元形状を示す理想画像に対する反射光画像の歪みを補正するための変換行列を生成する。そして、当該変換行列を用いて、画像取得部11で取得された補正対象の反射光画像の各画素値を補正することにより、撮像対象表面の反射率の違いや、撮像対象の傾きなどの複数の要因により生ずる反射光画像の歪みを容易に補正することができ、その結果、高精度の(奥行き方向の)距離情報を含む反射光画像を得ることができる。
【0089】
すなわち、複数の要因の交絡によって歪められた反射光画像の各画素値(輝度値)を、個別の要因毎に補正するのではなく、歪みを含む見かけの輝度分布と、対象物の真の形状から導出される理想的な反射光画像(理想画像)の輝度分布との対応関係に注目し、畳み込み演算によって、特定の輝度値分布を別の特定の輝度値分布に変換する画像情報処理の手法を利用して、上記歪みを含む輝度値の分布を、望ましい輝度値の分布に包括的に変換することで、奥行き情報における立体の位相(凹凸関係)の精度を向上させることができる。
【0090】
なお、以上の図1の各構成部は、画像取得部11を除いて、ソフトウェアとしても実現可能である。特に、図9及ぶ図10のフローチャートに示した画像情報処理部22の処理手順は、コンピュータに実行させることのできるプログラムとして機械読みとり可能な記録媒体に記録して頒布することができる。
【0091】
また、上記第1及び第2の実施形態では、変換カーネルを生成する際に、反射光画像に合わせて、光の強度分布により撮像対象の3次元形状を示す理想データを用いて、輝度値を各行列要素とする行列演算を行う場合について説明したが、反射光画像の各画素値(Q)を前述の(1)式を用いて距離情報dに直し、各画素値が撮像対象の奥行き方向の実際の距離値を示すデータに変換し、当該データと、各画素値が撮像対象の奥行き方向の距離値を示す理想データ(例えば、レーザーレンジカメラで取得された形状データ)とを用いて、距離値を各行列要素とする、図13、図15に示すような行列演算を行い、変換カーネルを生成しても全く同様の効果が得られる。
【0092】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【0093】
【図1】本発明の実施形態にかかる画像情報取得装置の構成例を示した図。
【図2】図1の画像取得部及び画像情報処理部の構成例を示した図。
【図3】図1の画像情報取得装置の外観図。
【図4】反射光画像をマトリックス状に示した図。
【図5】反射光画像を3次元的に示した図。
【図6】画像取得部を構成する発光部と受光部の外観の一例を示した図。
【図7】反射光画像の一具体例を示した図。
【図8】人物の画面の反射光画像について説明するための図。
【図9】画像情報処理部の処理動作を説明するためのフローチャート。
【図10】画像情報処理部の処理動作を説明するためのフローチャート。
【図11】画像情報処理部の処理動作を説明するための図。
【図12】畳み込みによる補正処理(変換処理)を説明するための図。
【図13】変換カーネルの生成方法を説明するための図。
【図14】畳み込みによる補正処理(変換処理)を説明するための図。
【図15】変換カーネルの生成方法を説明するための図。
【符号の説明】
【0094】
10…画像情報取得装置、11…画像取得部、12…操作入力制御部、13…操作入力部、14…表示部、15…表示制御部、16…音声出力部、17…音声入力部、18…音声入出力制御部、19…通信入出力部、20…情報処理部、21…情報記憶部、22…画像情報処理部。
【特許請求の範囲】
【請求項1】
撮像対象に光を照射する発光手段と、
前記撮像対象からの反射光を受光する受光手段と、
前記受光手段で受光された反射光の強度分布から、前記撮像対象の3次元形状を表す反射光画像を生成する画像生成手段と、
前記撮像対象の理想的な3次元形状を示す理想画像に対する前記反射光画像の歪みを補正するための変換行列を用いて、前記変換手段で得られた反射光画像の各画素値を補正する補正手段と、
を具備したことを特徴とする画像情報取得装置。
【請求項2】
前記補正手段は、
前記画像生成手段で得られた反射光画像から前記撮像対象の概略形状を示す直流成分を削除した後の各画素値を前記変換行列を用いて補正した後、前記直流成分を加算することを特徴とする請求項1記載の画像情報取得装置。
【請求項3】
前記画像生成手段で得られた反射光画像の各画素値が各行列要素に対応する行列の逆行列と、前記理想画像の各画素値が各行列要素に対応する行列とを乗算することにより前記変換行列を生成する手段をさらに具備し、
前記補正手段は、前記反射光画像の各画素値が各行列要素に対応する行列と前記変換行列とを乗算して、当該各画素値を補正することを特徴とする請求項1記載の画像情報取得装置。
【請求項4】
前記画像生成手段で得られた反射光画像から前記撮像対象の概略形状を示す直流成分を削除した後の各画素を各行列要素とする行列の逆行列と、前記理想画像から前記直流成分を削除した後の各画素を各行列要素とする行列とを乗算することにより前記変換行列を生成する手段をさらに具備し、
前記補正手段は、前記画像生成手段で得られた反射光画像から前記直流成分を削除した後の各画素値を各行列要素とする行列と前記変換行列とを乗算して、当該各画素値を補正した後、前記直流成分を加算することを特徴とする請求項1記載の画像情報取得装置。
【請求項5】
撮像対象に光を照射する発光手段と、前記撮像対象からの反射光を受光する受光手段と、前記受光手段で受光された反射光の強度分布から前記撮像対象の3次元形状を表す反射光画像を生成する画像生成手段とを含む画像取得装置で、前記反射光画像を取得する第1のステップと、
前記撮像対象の理想的な3次元形状を示す理想画像に対する前記反射光画像の歪みを補正するための変換行列を用いて、前記第1のステップで得られた反射光画像の各画素値を補正する第2のステップと、
を有することを特徴とする画像情報取得方法。
【請求項6】
前記第2のステップは、
前記第1のステップで得られた反射光画像から前記撮像対象の概略形状を示す直流成分を削除した後の各画素値を前記変換行列を用いて補正した後、前記直流成分を加算することを特徴とする請求項5記載の画像情報取得方法。
【請求項7】
前記画像取得装置で得られた反射光画像の各画素値が各行列要素に対応する行列の逆行列と、前記理想画像の各画素値が各行列要素に対応する行列とを乗算することにより前記変換行列を生成する第3のステップをさらに有し、
前記第2のステップは、前記反射光画像の各画素値が各行列要素に対応する行列と前記変換行列とを乗算して、当該各画素値を補正することを特徴とする請求項5記載の画像情報取得方法。
【請求項8】
前記画像取得装置で得られた反射光画像から前記撮像対象の概略形状を示す直流成分を削除した後の各画素値を各行列要素とする行列の逆行列と、前記理想画像から前記直流成分を削除した後の各画素値を各行列要素とする行列とを乗算することにより前記変換行列を生成する第3のステップをさらに有し、
前記第2のステップは、前記第1のステップで得られた反射光画像から前記直流成分を削除した後の各画素値を各行列要素とする行列と前記変換行列とを乗算して、当該各画素値を補正した後、前記直流成分を加算することを特徴とする請求項5記載の画像情報取得方法。
【請求項9】
撮像対象に光を照射する発光手段と、前記撮像対象からの反射光を受光する受光手段と、前記受光手段で受光された反射光の強度分布から前記撮像対象の3次元形状を表す反射光画像を生成する画像生成手段を備えるコンピュータに、
前記画像生成手段で前記反射光画像を得る第1のステップと、
前記撮像対象の理想的な3次元形状を示す理想画像に対する前記反射光画像の歪みを補正するための変換行列を用いて、前記第1のステップで得られた反射光画像の各画素値を補正する第2のステップと、
を実行させるプログラム。
【請求項10】
前記画像生成手段で得られた反射光画像から前記撮像対象の概略形状を示す直流成分を削除した後の各画素値を各行列要素とする行列の逆行列と、前記理想画像から前記直流成分を削除した後の各画素値を各行列要素とする行列とを乗算することにより前記変換行列を生成する第3のステップをさらに有し、
前記第2のステップは、前記第1のステップで得られた反射光画像から前記直流成分を削除した後の各画素値を各行列要素とする行列と前記変換行列とを乗算して、当該各画素値を補正した後、前記直流成分を加算することを特徴とする請求項9記載のプログラム。
【請求項1】
撮像対象に光を照射する発光手段と、
前記撮像対象からの反射光を受光する受光手段と、
前記受光手段で受光された反射光の強度分布から、前記撮像対象の3次元形状を表す反射光画像を生成する画像生成手段と、
前記撮像対象の理想的な3次元形状を示す理想画像に対する前記反射光画像の歪みを補正するための変換行列を用いて、前記変換手段で得られた反射光画像の各画素値を補正する補正手段と、
を具備したことを特徴とする画像情報取得装置。
【請求項2】
前記補正手段は、
前記画像生成手段で得られた反射光画像から前記撮像対象の概略形状を示す直流成分を削除した後の各画素値を前記変換行列を用いて補正した後、前記直流成分を加算することを特徴とする請求項1記載の画像情報取得装置。
【請求項3】
前記画像生成手段で得られた反射光画像の各画素値が各行列要素に対応する行列の逆行列と、前記理想画像の各画素値が各行列要素に対応する行列とを乗算することにより前記変換行列を生成する手段をさらに具備し、
前記補正手段は、前記反射光画像の各画素値が各行列要素に対応する行列と前記変換行列とを乗算して、当該各画素値を補正することを特徴とする請求項1記載の画像情報取得装置。
【請求項4】
前記画像生成手段で得られた反射光画像から前記撮像対象の概略形状を示す直流成分を削除した後の各画素を各行列要素とする行列の逆行列と、前記理想画像から前記直流成分を削除した後の各画素を各行列要素とする行列とを乗算することにより前記変換行列を生成する手段をさらに具備し、
前記補正手段は、前記画像生成手段で得られた反射光画像から前記直流成分を削除した後の各画素値を各行列要素とする行列と前記変換行列とを乗算して、当該各画素値を補正した後、前記直流成分を加算することを特徴とする請求項1記載の画像情報取得装置。
【請求項5】
撮像対象に光を照射する発光手段と、前記撮像対象からの反射光を受光する受光手段と、前記受光手段で受光された反射光の強度分布から前記撮像対象の3次元形状を表す反射光画像を生成する画像生成手段とを含む画像取得装置で、前記反射光画像を取得する第1のステップと、
前記撮像対象の理想的な3次元形状を示す理想画像に対する前記反射光画像の歪みを補正するための変換行列を用いて、前記第1のステップで得られた反射光画像の各画素値を補正する第2のステップと、
を有することを特徴とする画像情報取得方法。
【請求項6】
前記第2のステップは、
前記第1のステップで得られた反射光画像から前記撮像対象の概略形状を示す直流成分を削除した後の各画素値を前記変換行列を用いて補正した後、前記直流成分を加算することを特徴とする請求項5記載の画像情報取得方法。
【請求項7】
前記画像取得装置で得られた反射光画像の各画素値が各行列要素に対応する行列の逆行列と、前記理想画像の各画素値が各行列要素に対応する行列とを乗算することにより前記変換行列を生成する第3のステップをさらに有し、
前記第2のステップは、前記反射光画像の各画素値が各行列要素に対応する行列と前記変換行列とを乗算して、当該各画素値を補正することを特徴とする請求項5記載の画像情報取得方法。
【請求項8】
前記画像取得装置で得られた反射光画像から前記撮像対象の概略形状を示す直流成分を削除した後の各画素値を各行列要素とする行列の逆行列と、前記理想画像から前記直流成分を削除した後の各画素値を各行列要素とする行列とを乗算することにより前記変換行列を生成する第3のステップをさらに有し、
前記第2のステップは、前記第1のステップで得られた反射光画像から前記直流成分を削除した後の各画素値を各行列要素とする行列と前記変換行列とを乗算して、当該各画素値を補正した後、前記直流成分を加算することを特徴とする請求項5記載の画像情報取得方法。
【請求項9】
撮像対象に光を照射する発光手段と、前記撮像対象からの反射光を受光する受光手段と、前記受光手段で受光された反射光の強度分布から前記撮像対象の3次元形状を表す反射光画像を生成する画像生成手段を備えるコンピュータに、
前記画像生成手段で前記反射光画像を得る第1のステップと、
前記撮像対象の理想的な3次元形状を示す理想画像に対する前記反射光画像の歪みを補正するための変換行列を用いて、前記第1のステップで得られた反射光画像の各画素値を補正する第2のステップと、
を実行させるプログラム。
【請求項10】
前記画像生成手段で得られた反射光画像から前記撮像対象の概略形状を示す直流成分を削除した後の各画素値を各行列要素とする行列の逆行列と、前記理想画像から前記直流成分を削除した後の各画素値を各行列要素とする行列とを乗算することにより前記変換行列を生成する第3のステップをさらに有し、
前記第2のステップは、前記第1のステップで得られた反射光画像から前記直流成分を削除した後の各画素値を各行列要素とする行列と前記変換行列とを乗算して、当該各画素値を補正した後、前記直流成分を加算することを特徴とする請求項9記載のプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【公開番号】特開2006−189381(P2006−189381A)
【公開日】平成18年7月20日(2006.7.20)
【国際特許分類】
【出願番号】特願2005−2776(P2005−2776)
【出願日】平成17年1月7日(2005.1.7)
【国等の委託研究の成果に係る記載事項】(出願人による申告)「国などの委託研究の成果に係る特許出願(平成15年度新エネルギー・産業技術総合開発機構「3次元画像一体型リアルタイム入力技術の研究開発」委託研究、産業活力再生特別措置法第30条の適用を受けるもの)」
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
【公開日】平成18年7月20日(2006.7.20)
【国際特許分類】
【出願日】平成17年1月7日(2005.1.7)
【国等の委託研究の成果に係る記載事項】(出願人による申告)「国などの委託研究の成果に係る特許出願(平成15年度新エネルギー・産業技術総合開発機構「3次元画像一体型リアルタイム入力技術の研究開発」委託研究、産業活力再生特別措置法第30条の適用を受けるもの)」
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
[ Back to top ]