3次元情報復元装置
【課題】1台のカメラから得られた2次元の画像から、カメラの3次元運動と撮影対象上の空間的に密な3次元形状を求めることのできる3次元情報復元装置を提供する。
【解決手段】撮影対象を撮影したカメラの動き情報を動画像入力データに基づいて逐次推定する運動推定部100と、撮影対象までの距離情報を動画像入力データに基づいて逐次推定する距離推定部200とを備えた3次元情報復元装置であって、運動推定部100は、距離推定部200で推定された前回時刻の距離情報と、動画像入力データとに基づいて今回時刻の動き情報を推定し、距離推定部200は、運動推定部100で推定された今回時刻の動き情報と、動画像入力データとに基づいて今回時刻の距離情報を推定する。
【解決手段】撮影対象を撮影したカメラの動き情報を動画像入力データに基づいて逐次推定する運動推定部100と、撮影対象までの距離情報を動画像入力データに基づいて逐次推定する距離推定部200とを備えた3次元情報復元装置であって、運動推定部100は、距離推定部200で推定された前回時刻の距離情報と、動画像入力データとに基づいて今回時刻の動き情報を推定し、距離推定部200は、運動推定部100で推定された今回時刻の動き情報と、動画像入力データとに基づいて今回時刻の距離情報を推定する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、撮影対象までの距離、撮影対象の形状および撮影したカメラの動きを画像から推定する3次元情報復元装置に関するものである。
【背景技術】
【0002】
カメラで撮影した画像データから撮影対象の3次元形状を求める手法として、ステレオ視あるいは両眼立体視と呼ばれる手法がある。2台のカメラのレンズ中心を離して配置して同一の撮影対象を撮影し、視点の異なる画像から撮影対象の奥行きを3角測量の原理で求めて撮影対象の3次元形状を復元する。
【0003】
また、両眼立体視と同様の原理を用いて画像データから撮影対象の3次元形状を求める手法として運動立体視と呼ばれる手法がある。両眼立体視のように2台のカメラを配置するのではなく、運動立体視は、1台のカメラを移動させて視点の異なる画像を1台のカメラから得る。動画像データから時間差のある画像データを取り出せば、両眼立体視と同様に3角測量の原理により撮影対象の奥行きを求めることができる。
【0004】
さらに、画像データだけを用いてカメラの運動量と撮影対象の距離を求める手法として、8点アルゴリズムと呼ばれる手法がある(非特許文献1)。8点アルゴリズムは、撮影対象上の8点を観測してカメラの移動の前後の8点の対応からカメラの運動量と8点の距離を求める手法である。
【0005】
また、画像データだけを用いてカメラの運動量と撮影対象の距離を求める別の手法として、因子分解法と呼ばれる手法がある(非特許文献2)。カメラの移動の前後の画像の対応点の位置を成分に持つ計測行列を、カメラ又は撮影対象の運動を表現する行列と撮影対象の形状を表現する行列との積に分解することで動画像データから撮影対象の形状とカメラの視点の相対位置を同時に求める手法である。
【0006】
【非特許文献1】H.C.Longuet-Higgins,“Computer Algorithm for Reconstructing a Scene From Two Projections,”Nature, vol.293, pp.133-135, Sept 1981.
【非特許文献2】C. Tomasi and T. Kanade,“Shape and motion from image streams under orthography: A factorization method,”International Journal of Computer Vision, 9(2):pp.137-154, 1992.
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかしながら、従来技術には次のような課題がある。
従来の両眼立体視の技術を用いた3次元情報復元装置は、現実的なカメラの配置では遠距離にある撮影対象の距離を正確に求めることができず、また、カメラが2台必要であるという問題がある。
また、従来の運動立体視の技術を用いた3次元情報復元装置は、カメラの運動量を計測する手段が別に必要になるという難点がある。
また、従来の8点アルゴリズムや因子分解法の技術を用いた3次元情報復元装置は、撮影対象上の空間的に密な点の距離情報を求めることができないという問題がある。
【0008】
本発明は上述のような課題を解決するためになされたもので、1台のカメラから得られた2次元の画像から、カメラの3次元運動と撮影対象上の空間的に密な3次元形状を求めることのできる3次元情報復元装置を提供することを目的とする。
【課題を解決するための手段】
【0009】
本発明に係る3次元情報復元装置は、撮影対象を撮影したカメラの動き情報を動画像入力データに基づいて逐次推定する運動推定部と、撮影対象までの距離情報を動画像入力データに基づいて逐次推定する距離推定部とを備えた3次元情報復元装置であって、運動推定部は、距離推定部で推定された前回時刻の距離情報と、動画像入力データとに基づいて今回時刻の動き情報を推定し、距離推定部は、運動推定部で推定された今回時刻の動き情報と、動画像入力データとに基づいて今回時刻の距離情報を推定するものである。
【発明の効果】
【0010】
本発明によれば、距離推定部が出力する距離情報を運動推定部の入力とし、運動推定部が出力する動き情報を距離推定部の入力とし、運動推定部および距離推定部の演算結果を交互に利用することにより、入力画像の情報だけから、運動推定部により撮影したカメラの動きを推定することができるとともに、距離推定部により撮影対象までの距離情報を推定することができ、1台のカメラから得られた2次元の画像から、カメラの3次元運動と撮影対象上の空間的に密な3次元形状を求めることのできる3次元情報復元装置を得ることができる。
【発明を実施するための最良の形態】
【0011】
以下、本発明の3次元情報復元装置の好適な実施の形態につき図面を用いて説明する。
本発明の3次元情報復元装置は、運動推定部と距離推定部とを備え、互いの推定結果を交互に利用することにより、1台のカメラからの動画像入力データからカメラの3次元運動と撮影対象上の空間的に密な3次元形状を求めることができることを特徴とする。
【0012】
実施の形態1.
図1は、本発明の実施の形態1における3次元情報復元装置の構成図である。3次元情報復元装置は、運動推定部100と距離推定部200とで構成される。運動推定部100は、動画像入力データである動画像データI(x、y、t)と、距離推定部200が出力する前回時刻の距離情報D(x、y、t−δt)を受けて、カメラの3次元空間上の今回時刻の動き情報M(t)を推定する。
【0013】
ここでxおよびyは、画像平面上の座標を表す変数であり、tは時刻を表す。また、δtは、動画像における1フレーム〜数フレームに対応する僅かな時間を表す。以下の記載において、t−δtは、tを今回時刻とした場合の前回時刻に相当する。そして、今回時刻の動き情報M(t)とは、前回時刻t−δtから今回時刻tまでのカメラの動きに相当する。
【0014】
動画像データであるI(x、y、t)は、時刻tにおける点(x、y)上の画像の明度を表し、距離情報であるD(x、y、t−δt)は、カメラのレンズ中心から点(x、y)方向に直線を延ばしたとき、時刻t−δtにおけるカメラのレンズ中心から直線と撮影対象とが交わる交点までの距離を表す。
【0015】
カメラの動きは、カメラのレンズ中心の移動量T=(U、V、W)とカメラの回転量Ω=(A、B、C)とを用いて表すことができ、撮影装置の動き情報M(t)は、時刻tにおける(U、V、W、A、B、C)を成分に持つベクトルとして表すことができる。
【0016】
図2は、本発明の実施の形態1におけるカメラの動き量を表す成分(U、V、W、A、B、C)の座標軸上でのそれぞれの方向を説明する図である。図2において、xy座標系は、画像面を表す2次元の座標系である。画像面に垂直にZ軸をとり、画像面からカメラの焦点距離fだけ離れたZ軸上に原点Oをとる。この原点Oは、視点を表し、カメラのレンズの中心に対応する。この原点Oからx軸、y軸に平行にそれぞれX軸、Y軸をとる。
【0017】
XYZ座標系は、カメラに固定した座標系であり、カメラを中心とした3次元空間を表す。空間上の点P=(X、Y、Z)は、この点Pと原点Oとを結ぶ直線の画像面との交点pに投影されることを表している。撮影装置の動きを表すU、V、Wは、それぞれX軸、Y軸、Z軸方向の撮影装置の並進移動量を表し、撮影装置の動きを表すA、B、Cは、それぞれX軸、Y軸、Z軸まわりの右ねじ方向の回転量を表すものとする。
【0018】
距離推定部200は、動画像データI(x、y、t)と、運動推定部100が出力するカメラの今回時刻の動き情報M(t)を受けて、撮影対象までの今回時刻の距離情報D(x、y、t)を推定する。
【0019】
すなわち、ある時刻tを今回時刻とすると、まず始めに、運動推定部100は、今回時刻の動画像データI(x、y、t)と、距離推定部200で推定された前回時刻の距離情報D(x、y、t−δt)とに基づいて、今回時刻の動き情報M(t)を推定する。次に、距離推定部200は、今回時刻の動画像データI(x、y、t)と、運動推定部100で推定された今回時刻の動き情報M(t)に基づいて、今回時刻の距離情報D(x、y、t)を推定する。そして、これらの処理を交互に繰り返すことにより、本発明の3次元情報復元装置は、動き情報と距離情報を逐次推定することとなる。
【0020】
図3は、本発明の実施の形態1における3次元情報復元装置の構成図であり、運動推定部100と距離推定部200の詳細な構成を示している。図3において、運動推定部100は、第1の画像記憶部110、第1の座標変換部120、時空間微分処理部130、運動誤差推定部140、および運動誤差修正部150で構成される。一方、距離推定部200は、第2の画像記憶部210、第2の座標変換部220、マッチング処理部230、および対応点探索部240で構成される。
【0021】
始めに、運動推定部100の作動原理を説明する。第1の画像記憶部110は、動画像データI(x、y、t)を逐次記憶する記憶部であり、今回時刻tに対する前回時刻t−δtの動画像データI(x、y、t−δt)を常に記憶している。
【0022】
第1の座標変換部120は、前回時刻t−δtにおける距離情報D(x、y、t−δt)と、今回時刻の仮定したカメラの動き情報M’(t)を用いて、今回時刻の動画像データI(x、y、t)を座標変換し、今回時刻の動画像データI(x、y、t)を前回時刻t−δtにおけるカメラの位置から見た画像データに相当する第1変換後の動画像データIW(x、y、t)を生成する。
【0023】
また、今回時刻の仮定したカメラの動き情報M’(t)は、最終的に推定されるべき今回時刻のカメラの動き情報M(t)に対して誤差量を含んでいるものであり、この誤差量を繰り返し演算により最小化することにより、今回時刻のカメラの動き情報M(t)を求めることとなる。そこで、まず始めに、第1の座標変換部120による第1変換後の動画像データIW(x、y、t)の具体的な生成方法について、以下に説明する。
【0024】
仮定したカメラの動き情報をM’(t)=(U、V、W、A、B、C)とすると、撮影対象上の点がM’(t)により画面上で見かけ上、移動して見え、オプティカル・フロー(x(・)、y(・))が生じる。ここで、(・)は、その前の記号の上に・が付されていることを意味する。撮影対象の画面上の点pは、撮影対象上の点Pと撮影装置の焦点距離f、撮影対象のZ座標であるDを用いて下式(1)で表される。
【0025】
【数1】
【0026】
画面上での見かけの動きであるオプティカル・フローは、式(1)を微分することにより、下式(2)で表される。
【0027】
【数2】
【0028】
ここで、カメラに固定したXYZ座標系が移動することにより、撮影対象上の点の位置が移動することから、カメラのレンズ中心の移動量T=(U、V、W)およびカメラの回転量Ω=(A、B、C)による関係式P(・)=−T−Ω×Pを用いて式(2)を変形し、各成分に分解すると、下式(3)が得られる。ここで、P(・)は、Pの上に・が付されていることを意味する。
【0029】
【数3】
【0030】
第1の座標変換部120は、式(3)の(x(・)、y(・))を用いて下式(4)により座標変換を行う。
【0031】
【数4】
【0032】
時空間微分処理部130は、第1の画像記憶部110が出力する前回時刻t−δtにおける入力画像I(x、y、t−δt)および第1の座標変換部120が出力する第1変換後の画像IW(x、y、t)に対して下式(5)〜(7)の演算を行って3種類の画像を出力する。
【0033】
【数5】
【0034】
式(5)および式(6)は、それぞれx軸方向およびy軸方向の空間微分を表し、ディジタル画像処理で公知のPrewittオペレータやSobelオペレータにより実現することができる。式(7)は、時間方向の微分に関連した式であり、時間差のある2画面の差分を表している。
【0035】
運動誤差推定部140は、時空間微分処理部130が出力する3種類の微分画像Ix(x、y、t−δt)、Iy(x、y、t−δt)、It(x、y、t)を受けて、第1の座標変換部120の入力に使用した、仮定したカメラの動き情報M’(t)に含まれる誤差を推定する。
【0036】
ここで、運動誤差推定部140の作動原理を具体的に説明する。カメラが移動して視点が僅かに変化した場合にも、撮影対象上の移動前後の同じ点において、画面上での明度は、ほとんど変化しない。従って、下式(8)が成り立つ。
【0037】
【数6】
【0038】
ところが、仮定したカメラの動き情報M’(t)に誤差が含まれると、M’(t)の誤差が式(3)に従ってオプティカル・フロー(x(・)、y(・))の誤差(Δx(・)、Δy(・))となる。そして、画面上の対応点の誤差となって現れ、式(8)の明度に誤差が生じることになり、式(8)の右辺は、0にはならない。式(8)の左辺を2画面が重なる範囲R内で下式(9)のように加算すると、画面全体での明度の誤差の合計を表す式が得られる。
【0039】
【数7】
【0040】
x、y、tの変化が小さい場合、I(x、y、t)に対するテーラー展開から、式(9)は、下式(10)のように近似することができる。
【0041】
【数8】
【0042】
ここで、オプティカル・フローの誤差(Δx(・)、Δy(・))は、前述のように仮定したカメラの動き情報M’(t)の推定誤差に起因する。そこで、カメラの動きの各成分の誤差を(ΔU、ΔV、ΔW、ΔA、ΔB、ΔC)と表すと、仮定したカメラの動き情報M’(t)の推定誤差に起因する画面の明度誤差は、下式(11)で表すことができる。
【0043】
【数9】
【0044】
画面の明度誤差を最小にするような動きの各成分の誤差(ΔU、ΔV、ΔW、ΔA、ΔB、ΔC)は、明度誤差を最小化する動きの各成分の修正量と捉えることができる。この修正量を求めるために、ecをΔU、ΔV、ΔW、ΔA、ΔB、ΔCそれぞれで偏微分すると、ecの最小点では偏微分がそれぞれ0となる。したがって、偏微分が全て0とおいた連立方程式(12)を解くことにより、ecを最小にするΔU、ΔV、ΔW、ΔA、ΔB、ΔCを求めることができる。
【0045】
【数10】
【0046】
運動誤差推定部140は、式(12)を解く演算手段であり、仮定したカメラの動き情報M’(t)の推定誤差(ΔU、ΔV、ΔW、ΔA、ΔB、ΔC)を出力する。式(12)の第1式であるecのΔUによる偏微分は、展開すると下式(13)となる。
【0047】
【数11】
【0048】
式(12)の第2式から第6式も同様に展開することができ、展開した結果は、いずれも未知数(ΔU、ΔV、ΔW、ΔA、ΔB、ΔC)についての1次式となり、未知数に係る係数は、カメラの焦点距離fと、画面上の座標(x、y)と、時空間微分処理部130が出力する3種類の微分画像Ix、Iy、Itと、撮影対象上の点のZ座標Dを用いて表すことができる。加算演算Σの後に、係数は定数となるので、式(12)は、6元1次の連立方程式として簡単に解くことができる。
【0049】
運動誤差修正部150は、第1の座標変換部120に前述したような仮定したカメラの動き情報M’(t)=(U、V、W、A、B、C)を出力するとともに、運動誤差推定部140が求めた修正量(ΔU、ΔV、ΔW、ΔA、ΔB、ΔC)を下式(14)のように加算することによりカメラの誤差の少ない新たな仮定した動き情報M’(t)としてデータを更新する。
【0050】
【数12】
【0051】
運動誤差修正部150により更新された仮定したカメラの動き情報M’(t)は、再び第1の座標変換部120に対して出力される。そして、第1の座標変換部120、時空間微分処理部130、および運動誤差推定部140による上述した一連の処理により、更新された仮定したカメラの動き情報M’(t)に対応する新たな修正量(ΔU、ΔV、ΔW、ΔA、ΔB、ΔC)が算出される。
【0052】
運動誤差修正部150は、新たな修正量(ΔU、ΔV、ΔW、ΔA、ΔB、ΔC)を用いて再び仮定したカメラの動き情報M’(t)を更新する。このような処理を繰り返すことにより、仮定したカメラの動き情報M’(t)に含まれる誤差量を小さくしていくことができる。
【0053】
すなわち、運動推定部100は、今回時刻の動画像データI(x、y、t)、距離推定部200が出力する前回時刻の距離情報D(x、y、t−δt)、および仮定したカメラの動き情報M’(t)に基づいて、仮定したカメラの動き情報M’(t)に含まれている誤差量を算出して仮定したカメラの動き情報M’(t)を更新する処理を所定回数繰り返すことにより、仮定したカメラの動き情報M’(t)に含まれている誤差を減少させる。
【0054】
運動誤差修正部150は、所定回数の繰り返し演算処理が終了した後に、最終的に更新された仮定したカメラの動き情報M’(t)を、推定すべき今回時刻のカメラの動き情報M(t)として出力する。
【0055】
また、運動誤差修正部150が出力する仮定したカメラの動き情報M’(t)の初期値は、M’(t)=(0、0、0、0、0、0)から始めてもよいし、前回時刻t−δtにおいて最終的に推定されたカメラの動き情報M(t−δt)を初期値としてもよい。
【0056】
運動推定部100は、所定の回数だけ運動誤差推定と運動誤差修正を繰り返して、時刻tのカメラの動き情報M(t)の推定演算を確定する。M(t)の推定演算を確定した後、運動推定部100は、入力データの時刻をtからt+δtに進めて同様の演算を繰り返す。
【0057】
すなわち、運動推定部100は、次回時刻の動画像データI(x、y、t+δt)と、距離推定部200が出力する今回時刻の距離情報D(x、y、t)を受け、第1の画像記憶部110は、次回時刻t+δtにおける入力画像I(x、y、t+δt)を記憶し、事前に記憶していた今回時刻の入力画像I(x、y、t)を出力して、次回時刻のカメラの動き情報M(t+δt)を推定する上記演算を実行する。
【0058】
次に、距離推定部200の作動原理を説明する。距離推定部200は、今回時刻の動画像データI(x、y、t)と、運動推定部100が出力する今回時刻のカメラの動き情報M(t)を受けて、撮影対象までの今回時刻の距離情報D(x、y、t)を推定する。
【0059】
第2の画像記憶部210は、動画像データI(x、y、t)を逐次記憶する記憶部であり、今回時刻tに対する前回時刻t−δtの動画像データI(x、y、t−δt)を常に記憶している。
【0060】
第2の座標変換部220は、今回時刻のカメラの動き情報M(t)と、対応点探索部240が出力する、距離情報Dを求めるための仮定した今回時刻の距離情報D’(x、y)を用いて、第2の画像記憶部210に記憶された前回時刻の動画像データI(x、y、t−δt)を座標変換し、前回時刻の動画像データI(x、y、t−δt)を今回時刻tにおけるカメラの位置から見た画像データに相当する第2変換後の動画像データIWW(x、y、t−δt)を生成する。
【0061】
前回時刻t−δtから今回時刻tまでのカメラの動き情報であるM(t)が与えられると、時刻tから時刻t−δtまでの時間を遡ったカメラの逆の動き(U’、V’、W’、A’、B’、C’)は、(U、V、W、A、B、C)の符号を変える等、逆変換して簡単に求められる。カメラを時刻tの位置から時刻t−δtの位置に移動させた場合に生じる画面上での見かけの動きであるオプティカル・フロー(x’(・)、y’(・))は、式(3)と同様に下式(15)で表される。
【0062】
【数13】
【0063】
第2の座標変換部220は、式(15)の(x’(・)、y’(・))を用いて下式(16)により座標変換を行う。
【0064】
【数14】
【0065】
図4は、本発明の実施の形態1における仮定した距離情報D’(x、y)とカメラの動き情報M(t)とオプティカル・フロー(x’(・)、y’(・))の関係を図示したものである。時刻tの画像I(x、y、t)上で見ている点(x、y)が、実際の3次元空間上では、距離D’の位置にあると仮定すると、時刻t−δtの画像I(x、y、t−δt)上では、オプティカル・フロー(x’(・)、y’(・))分だけずれて見えることを表している。距離D’の仮定が正しければ、式(16)による座標変換の結果であるIWW(x、y、t−δt)は、I(x、y、t)と同じ撮影対象物上の点を見ているので、撮影対象物上の反射の影響が無視できる場合、画素の明度は一致する。
【0066】
マッチング処理部230は、対応点探索部240が出力した仮定した距離情報D’(x、y)が正しいかどうかを判定するために、第2の座標変換部220が出力する第2変換後の動画像データIWW(x、y、t−δt)と、今回時刻の動画像データI(x、y、t)とのそれぞれの画面上の点(x、y)における明度の一致度を計算する。明度が一致しているかどうかは、点(x、y)の近傍の画素、例えば、x方向に±4画素およびy方向に±4画素の範囲内にある画素の明度を使用して、正規化相互相関や各画素の明度差の絶対値の和を評価値として用いることができる。
【0067】
対応点探索部240は、仮定した距離情報D’(x、y)を適当な範囲内で変化させることにより、複数の仮定した距離情報D’(x、y)を出力する。第2の座標変換部220は、複数の仮定した距離情報D’(x、y)のそれぞれに対応した座標変換の結果IWW(x、y、t−δt)を出力する。
【0068】
マッチング処理部230は、複数の仮定した距離情報D’(x、y)のそれぞれに対応したIWW(x、y、t−δt)と今回時刻の動画像データI(x、y、t)との一致度を示す評価値V(x、y)を出力する。さらに、対応点探索部240は、複数の仮定した距離情報D’(x、y)に対応してマッチング処理部230が出力する複数の評価値V(D’、x、y)の各点(x、y)毎に最も評価値のよい仮定した距離を探索する。
【0069】
図5は、本発明の実施の形態1における対応点探索の様子の説明図である。複数の仮定した距離情報D’(x、y)として、D1、D2、D3の3つを仮定したときに、D2において明度の一致度を表す評価値V(D’、x、y)が最小値を示していることを表しており、D2を点(x、y)における今回時刻の距離情報D(x、y、t)とする。
【0070】
図5においては、評価値Vの数値が小さいほど明度がよく一致していることを表している。図5に示す対応点探索は、各点(x、y)毎に実施する。この結果、撮影対象上の空間的に密な3次元形状を求めることができる。以上の処理手順により、距離推定部200は、撮影対象までの今回時刻の距離情報D(x、y、t)を推定する。
【0071】
距離推定部200が出力する撮影対象までの今回時刻の距離情報D(x、y、t)は、次の時刻の運動推定部100の演算の入力となる。今回時刻tと次回時刻t+δtの表記をδtだけずらして表記して、今回時刻をt−δt、次回時刻をtと表記することにより、運動推定部100の作動原理と距離推定部200の作動原理で説明した演算を繰り返して実行する。
【0072】
これにより、実施の形態1による3次元情報復元装置は、動画像データI(x、y、t)を入力としてカメラの3次元空間上の動き情報M(t)および距離情報D(x、y、t)を推定することができる。
【0073】
運動推定部100の最初の演算を行う時は、距離推定部200の出力が得られていないが、このときは、前回時刻の距離情報D(x、y、t−δt)に基づいて撮影対象までの距離を仮定して適当な定数等の初期値を与えておけばよい。
【0074】
以上のように、実施の形態1によれば、運動推定部と距離推定部が互いの推定結果を交互に利用することにより、1台のカメラからの動画像入力データから動き情報と距離情報を精度よく推定でき、その結果としてカメラの3次元運動と撮影対象上の空間的に密な3次元形状を求めることができる。
【0075】
なお、実施の形態1の説明において、運動推定部100は、所定の回数だけ運動誤差推定と運動誤差修正を繰り返して、時刻tのカメラの動き情報M(t)の推定演算を確定する場合について説明したが、これに限定されるものではない。算出される修正量(ΔU、ΔV、ΔW、ΔA、ΔB、ΔC)の収束状況を所定値と比較することにより、時刻tのカメラの動き情報M(t)の推定演算を確定することも可能である。
【0076】
実施の形態2.
図6は、本発明の実施の形態2における3次元情報復元装置の構成図である。図6における運動推定部100の構成は、実施の形態1で示した図3における運動推定部100の構成と同様である。また、図6における距離推定部200の構成は、実施の形態1で示した図3における距離推定部200の構成と比較すると、画像更新判定部250を新たに備えている。
【0077】
実施の形態1の場合と同様に、運動推定部100は、今回時刻の動画像データI(x、y、t)と、距離推定部200が出力する前回時刻の距離情報D(x、y、t−δt)を受けて、カメラの3次元空間上の今回時刻の動き情報M(t)を推定する。また、距離推定部200は、今回時刻の動画像データI(x、y、t)と、運動推定部100が出力する今回時刻のカメラの動き情報M(t)を受けて、撮影対象までの今回時刻の距離情報D(x、y、t)を推定する。
【0078】
次に、実施の形態1と構成の異なる距離推定部200の動作を中心に説明する。画像更新判定部250は、運動推定部100が出力する撮影装置の今回時刻の動き情報M(t)に応じて第2の画像記憶部210および対応点探索部240の更新を制御し、第2の座標変換部220に入力する撮影装置の動き情報を制御する。
【0079】
仮定した距離情報D’(x、y)とカメラの動き情報M(t)とオプティカル・フロー(x’(・)、y’(・))の関係は、先の図4に示すとおりである。すなわち、視点の異なる方向から撮影対象物上の点を対応付けて、カメラの動き情報M(t)とカメラのレンズの中心と撮影対象物上の点から形成される三角形から距離情報Dを求めるので、カメラの動き情報M(t)の大きさが小さい場合、撮影対象物上の点を頂点とする角度が小さくなる。
【0080】
この場合、カメラのレンズの中心と撮影対象物上の点とを結ぶ方向に誤差が生じると、距離情報Dの誤差に大きく影響する。そこで、画像更新判定部250は、動き情報M(t)を逐次累積していき、その累積後の動き情報ΣM(t)の大きさ|ΣM(t)|が所定の大きさを超えたときに、第2の画像記憶部210に対して記憶する画像の更新指令を出力する。また、この更新指令は、対応点探索部240に対する演算指令にもなる。
【0081】
第2の画像記憶部210は、動画像データI(x、y、t)を入力して記憶するとともに、画像更新判定部250の指令を受けた時刻を今回時刻tとして、前回時刻t−δtに記憶した動画像データI(x、y、t−δt)を出力する。図7は、本発明の実施の形態2における累積後の動き情報ΣM(t)に関する累積の始点と、画像の更新指令、第2の画像記憶部210の出力の変化を説明する図である。
【0082】
図7において、画像更新判定部250は、累積動き情報の累積を時刻t1から始め、時刻t4のとき累積動き情報である下式(17)が所定の大きさを超えたことにより、更新指令を出力している例を示している。
【0083】
【数15】
【0084】
このとき、第2の画像記憶部210は、時刻t1からδtだけ前の画像を記憶して時刻t1から時刻t4まで繰り返し出力し、更新指令を受けた時刻t4の次の時刻t5において、時刻t5からδtだけ前の時刻(この例では時刻t4に相当)に記憶していた画像I(x、y、t4)を出力する。
【0085】
また、画像更新判定部250は、時刻t4において、時刻t1から累積を始めた累積動き情報を出力した後、時刻t5において累積動き情報の累積の始点を時刻t5に設定し直す。
【0086】
第2の座標変換部220は、画像更新判定部250が出力する累積動き情報と、対応点探索部240が出力する、距離情報Dを求めるための仮定した距離情報D’(x、y)を用いて、第2の画像記憶部210が出力する動画像データIを座標変換し、時刻tにおけるカメラの位置から見た第2変換後の動画像データIWWを生成する。座標変換の式は、実施の形態1の場合と同様に式(15)に基づいて実行する。
【0087】
マッチング処理部230の作動原理は、実施の形態1の場合と同様である。
【0088】
対応点探索部240の作動原理は、カメラの動き情報M(t)の大きさが小さい場合、距離情報Dの誤差が大きくなるので、累積後の動き情報ΣM(t)の大きさ|ΣM(t)|が所定の大きさを超えたとき、画像更新判定部250が出力する更新指令を受けて撮影対象までの距離情報D(x、y、t)を推定すること以外は、実施の形態1の場合と同様である。
【0089】
実施の形態2によれば、画像更新判定部を有することにより、動き情報の累積値が所定値を超えたタイミングで距離情報の推定を行うことができ、誤差要因を抑えた距離情報の推定を実現できる。さらに、誤差要因を抑えた距離情報に基づいて動き情報が推定されるため、動き情報の誤差要因も抑えることができる。
【0090】
実施の形態3.
図8は、本発明の実施の形態3における3次元情報復元装置の構成図である。図8における運動推定部100の構成は、実施の形態1で示した図3における運動推定部100の構成と比較すると、微分信頼度算出部160を新たに備えている。また、図8における距離推定部200の構成は、実施の形態1で示した図3における距離推定部200の構成と比較すると、距離信頼度算出部260を新たに備えている。
【0091】
実施の形態1の場合と同様に、運動推定部100は、今回時刻の動画像データI(x、y、t)と、距離推定部200が出力する前回時刻の距離情報D(x、y、t−δt)を受けて、カメラの3次元空間上の今回時刻の動き情報M(t)を推定する。また、距離推定部200は、今回時刻の動画像データI(x、y、t)と、運動推定部100が出力する今回時刻のカメラの動き情報M(t)を受けて、撮影対象までの今回時刻の距離情報D(x、y、t)を推定する。
【0092】
次に、実施の形態1と異なる構成を中心に、動作を説明する。運動誤差推定部140は、実施の形態1の場合と同様に、連立方程式(12)を解く演算手段であるが、偏微分の展開式(13)において、実施の形態1では、2画面が重なる範囲を示す領域をRとすると、領域R内の全ての画素について加算演算を実施している。
【0093】
これに対して、実施の形態3における運動誤差推定部140は、微分信頼度算出部160および距離信頼度算出部260が出力する信頼度に基づいて、時空間微分処理部130が出力する微分画像の信頼度、および対応点探索部240が出力する距離情報の信頼度が高い画素の情報のみを偏微分の展開式の加算演算に使用している。
【0094】
微分信頼度算出部160は、時空間微分処理部130が出力する微分画像を判定して、明度勾配が平坦な画素および明度勾配が極端に急峻な画素については、低い信頼度を出力する。この理由は、式(10)による微分画像Ix(x、y、t−δt)、Iy(x、y、t−δt)、It(x、y、t)とオプティカル・フロー(x(・)、y(・))の誤差(Δx(・)、Δy(・))との関係が、明度勾配が平坦な画素および明度勾配が極端に急峻な画素においては成立し難くなるためである。
【0095】
例えば、微分画像に対する適当な判定しきい値Tdev_minとTdev_maxを設定し、下式(18)としてCdev(x、y、t−δt)を微分信頼度として出力する。
【0096】
【数16】
【0097】
距離信頼度算出部260は、複数の仮定した距離情報D’(x、y)に対するそれぞれの評価値V(D’、x、y)、および評価値が最小値を示す距離情報D(x、y)を対応点探索部240から受け取り、距離情報D(x、y)の安定性を判定して、距離情報D(x、y)の距離信頼度Cdis(x、y、t)を出力する。
【0098】
図9は、本発明の実施の形態3における距離情報D(x、y)の距離信頼度に関する説明図である。この図9においては、先の図5と同様に、評価値Vが小さい方が第2の座標変換部220が出力する座標変換後の動画像データIWW(x、y、t−δt)と動画像データI(x、y、t)の画面上の点(x、y)との明度の一致度がよいことを表している。
【0099】
図9(a)において、評価値が最小値Vminを示す距離情報D(x、y)の近傍の評価値V(D’、x、y)の曲率半径raは小さく、その逆数である曲率Curv(x、y)は大きいこととなる。したがって、この場合には、先に対応点探索部240で探索された評価値が最小値Vminを示す距離情報D(x、y)は、他の距離情報と比較して明らかに小さい評価値を有しているものとして、安定していると見なすことができ、信頼度は高いと考えられる。
【0100】
一方、図9(b)において、評価値が最小値Vminを示す距離情報D(x、y)の近傍の評価値V(D’、x、y)の曲率半径rbは大きく、その逆数である曲率Curv(x、y)は小さいこととなる。したがって、この場合には、先に対応点探索部240で探索された評価値が最小値Vminを示す距離情報D(x、y)は、他の距離情報と比較して明らかに小さい評価値を有しているものとは必ずしもいえず、距離情報が前後することがあり、安定していないと見なすことができ、信頼度は低いと考えられる。
【0101】
距離信頼度算出部260は、例えば、評価値の最小値Vminおよび評価値が最小値を示す点における曲率Curvに対して適当な判定しきい値TvとTcurvを設定し、下式(19)としてCdis(x、y、t)を距離信頼度として出力する。
【0102】
【数17】
【0103】
なお、上述した曲率Curvは、評価値V(D’、x、y)を2次微分することにより得ることが可能である。
【0104】
運動誤差推定部140は、微分信頼度算出部160が出力する微分信頼度Cdev(x、y、t−δt)および距離信頼度算出部260が出力する時刻t−δtにおける距離信頼度Cdis(x、y、t−δt)を受けて、Cdev(x、y、t−δt)=1、かつCdis(x、y、t−δt)=1のとき、式(13)におけるx、y∈RのΣの加算を実行する。
【0105】
式(12)の第2式から第6式の展開式においても、式(13)と同様にx、y∈RのΣの加算が現れるが、同様にCdev(x、y、t−δt)=1、かつCdis(x、y、t−δt)=1のとき、x、y∈RのΣの加算を実行する。
【0106】
この結果、運動誤差推定部140は、信頼度の高い範囲のデータのみを採用して動き情報の誤差量を推定することができる。
【0107】
実施の形態3によれば、運動誤差推定部は、微分信頼度および距離信頼度に基づいて、微分信頼度が高く、かつ距離信頼度が高い画素の情報のみを偏微分の展開式の加算演算に使用することにより、動き情報および距離情報の推定誤差を抑えることができる。
【0108】
実施の形態4.
図10は、本発明の実施の形態4における3次元情報復元装置の構成図である。図10における運動推定部100の構成は、実施の形態1で示した図3における運動推定部100の構成と比較すると、第3の画像記憶部170を新たに備えている。また、図10における距離推定部200の構成は、実施の形態1で示した図3における距離推定部200の構成と比較すると、第4の画像記憶部270を新たに備えている。さらに、運動推定部100および距離推定部200の前段に、ピラミッド画像生成部300が新たに設けられている。
【0109】
実施の形態1の場合と同様に、運動推定部100は、今回時刻の動画像データI(x、y、t)と、距離推定部200が出力する前回時刻の距離情報D(x、y、t−δt)を受けて、カメラの3次元空間上の今回時刻の動き情報M(t)を推定する。また、距離推定部200は、今回時刻の動画像データI(x、y、t)と、運動推定部100が出力する今回時刻のカメラの動き情報M(t)を受けて、撮影対象までの今回時刻の距離情報D(x、y、t)を推定する。
【0110】
次に、実施の形態1と異なる構成を中心に、動作を説明する。まず、ピラミッド画像生成部300は、入力画像の解像度がレベル0からレベルL(Lは1以上の整数)に従って粗くなる1組のピラミッド画像を生成する。図11は、本発明の実施の形態4におけるピラミッド画像の説明図である。レベル0は、入力画像と同じ解像度を持ち、レベル数が大きくなるにつれて解像度が低くなる。解像度が低くなると画素数が少なくなるので、画像の大きさを小さくして解像度が低いことを表している。
【0111】
運動推定部100内の第3の画像記憶部170は、ピラミッド画像生成部300が出力する1組のピラミッド画像を一旦、記憶する記憶部であり、解像度の低いピラミッド画像から解像度の高いピラミッド画像の順に出力する。第1の画像記憶部110、第1の座標変換部120、時空間微分処理部130、運動誤差推定部140および運動誤差修正部150の作動原理は、実施の形態1の場合と同様である。
【0112】
運動推定部100は、まず始めに、解像度の最も低いレベルLのピラミッド画像に対して、実施の形態1の場合と同様に、所定の回数だけ運動誤差推定と運動誤差修正を繰り返して時刻tのカメラの動き情報M(t)を推定演算する。次に、第3の画像記憶部170は、1段階だけ解像度の高いレベル(L−1)のピラミッド画像を出力する。
【0113】
そして、運動推定部100は、レベルLのピラミッド画像を用いて求めた動き情報M(t)を運動誤差修正部150による新たな仮定した動き情報M’(t)の初期値として、時刻tのレベル(L−1)のピラミッド画像に対するカメラの動き情報M(t)を推定演算する。
【0114】
運動推定部100は、各解像度レベルで推定された動き情報M(t)を次に解像度が高いレベルでの仮定した動き情報M’(t)の初期値として使用し、第3の画像記憶部170が最も解像度の高いレベル0のピラミッド画像を出力するまで運動誤差推定と運動誤差修正を繰り返すことにより、最終的に、時刻tのカメラの動き情報M(t)の推定演算を確定する。
【0115】
一方、距離推定部200内の第4の画像記憶部270は、ピラミッド画像生成部300が出力する1組のピラミッド画像を一旦、記憶する記憶部であり、解像度の低いピラミッド画像から解像度の高いピラミッド画像の順に出力する。第2の画像記憶部210、第2の座標変換部220、マッチング処理部230および対応点探索部240の作動原理は、実施の形態1の場合と同様である。
【0116】
距離推定部200は、解像度の低いレベルLのピラミッド画像に対して、実施の形態1の場合と同様に、撮影対象までの距離情報D(x、y、t)を推定する。次に、第4の画像記憶部270は、1段階だけ解像度の高いレベル(L−1)のピラミッド画像を出力して、距離推定部200は、レベルLのピラミッド画像を用いて求めた距離情報D(x、y、t)を対応点探索部240の探索範囲を限定するために使用する。
【0117】
図12は、本発明の実施の形態4における対応点探索部240の探索範囲を限定する様子の説明図である。レベル(L−1)のピラミッド画像に対する複数の仮定した今回時刻の距離情報D’(x、y)としては、レベルLのピラミッド画像を用いて求めた距離情報D(x、y、t)を挟み、かつ、レベルLにおける探索範囲よりも狭い範囲を設定することにより、その中から最も評価値の高いものをレベル(L−1)における今回時刻の距離情報D(x、y)として探索する。
【0118】
このように、探索範囲を狭めることにより、対応点探索の処理時間を短縮し、レベルLのピラミッド画像を用いて求めた距離情報D(x、y、t)よりも解像度の高い距離情報を得ることができる。距離推定部200は、第4の画像記憶部270が最も解像度の高いレベル0のピラミッド画像を出力するまで距離情報の推定を繰り返して距離情報D(x、y、t)の推定演算を確定する。
【0119】
実施の形態4によれば、ピラミッド画像を用いて解像度の低い画像から動き情報および距離情報を推定しながら検索範囲を徐々に狭めることにより、最終的に解像度の高い画像の動き情報および距離情報を効率よく、かつ高精度で推定できる。
【0120】
実施の形態5.
図13は、本発明の実施の形態5における3次元情報復元装置の構成図である。図13における運動推定部100の構成は、実施の形態1で示した図3における運動推定部100の構成と比較すると、絶対運動量換算部180を新たに備えている。また、図13における距離推定部200の構成は、実施の形態1で示した図3における距離推定部200の構成と比較すると、絶対距離換算部280を新たに備えている。
【0121】
実施の形態1の場合と同様に、運動推定部100は、今回時刻の動画像データI(x、y、t)と、距離推定部200が出力する前回時刻の距離情報D(x、y、t−δt)を受けて、カメラの3次元空間上の今回時刻の動き情報M(t)を推定する。また、距離推定部200は、今回時刻の動画像データI(x、y、t)と、運動推定部100が出力する今回時刻のカメラの動き情報M(t)を受けて、撮影対象までの今回時刻の距離情報D(x、y、t)を推定する。
【0122】
次に、実施の形態1と異なる構成を中心に、動作を説明する。運動推定部100の最初の演算を行う時は、距離推定部200の出力が得られていないので、距離情報D(x、y、t−δt)として撮影対象までの距離を仮定して、適当な定数等の初期値を与えて、運動推定部100の演算を開始することとなる。
【0123】
したがって、運動推定部100が出力するカメラの動き情報、および距離推定部200が出力する撮影対象までの距離情報の相対値が得られても、実際のカメラの動き量および撮影対象までの絶対距離に対して誤差が含まれていることがある。
【0124】
そこで、本実施の形態5における絶対運動量換算部180は、外部からジャイロ等のモーションセンサにより計測したカメラの動き情報を受けて、外部から入力したカメラの移動量Ts=(Us、Vs、Ws)と、運動誤差修正部150が出力するカメラの移動量T=(U、V、W)との大きさとを定期的に比較する、あるいは1度だけ比較する。
【0125】
そして、絶対運動量換算部180は、運動誤差修正部150が出力するカメラの動き量を絶対動き量に換算する補正係数Kを求めて、外部からジャイロ等のモーションセンサの情報が得られない時間は、この補正係数Kを運動誤差修正部150が出力するカメラの移動量T=(U、V、W)に掛けて絶対運動量Ma(t)を出力する。
【0126】
補正係数Kの算出は、下式(20)による。絶対運動量の算出は、下式(21)による。式(20)において、||は、ベクトルの大きさを表す。また、絶対運動量換算部180は、補正係数Kを出力する。
【0127】
【数18】
【0128】
一方、絶対距離換算部280は、絶対運動量換算部180が出力する補正係数Kを受けて、対応点探索部240が出力する距離情報を絶対距離Da(x、y、t)に換算して出力する。絶対距離の算出は、下式(22)による。
【0129】
【数19】
【0130】
実施の形態5によれば、カメラの動き情報を外部センサから受け取り補正係数を算出することにより、動き情報および距離情報を絶対量に換算することができる。さらに、外部センサからの情報が得られない時間は、推定した動き情報と補正係数Kから絶対運動量を出力することができる。さらに、動画像入力データに基づいて、絶対運動量および絶対距離を推定演算の周期に応じて逐次出力することができる。
【0131】
実施の形態6.
図14は、本発明の実施の形態6における3次元情報復元装置の構成図である。図14における運動推定部100の構成は、実施の形態1で示した図3における運動推定部100の構成と比較すると、絶対運動量換算部180を新たに備えており、図13と同一の構成である。また、図14における距離推定部200の構成は、実施の形態1で示した図3における距離推定部200の構成と比較すると、絶対距離換算部280を新たに備えており、図13と同一の構成である。
【0132】
実施の形態1の場合と同様に、運動推定部100は、今回時刻の動画像データI(x、y、t)と、距離推定部200が出力する前回時刻の距離情報D(x、y、t−δt)を受けて、カメラの3次元空間上の今回時刻の動き情報M(t)を推定する。また、距離推定部200は、今回時刻の動画像データI(x、y、t)と、運動推定部100が出力する今回時刻のカメラの動き情報M(t)を受けて、撮影対象までの今回時刻の距離情報D(x、y、t)を推定する。
【0133】
次に、実施の形態1と異なる構成、および実施の形態5と異なる機能を中心に、動作を説明する。運動推定部100の最初の演算を行う時は、距離推定部200の出力が得られていないので、距離情報D(x、y、t−δt)として撮影対象までの距離を仮定して、適当な定数等の初期値を与えて、運動推定部100の演算を開始することとなる。
【0134】
したがって、運動推定部100が出力するカメラの動き情報、および距離推定部200が出力する撮影対象までの距離情報の相対値が得られても、実際のカメラの動き量および撮影対象までの絶対距離に対して誤差が含まれていることがある。
【0135】
そこで、本実施の形態6における絶対距離換算部280は、外部からレーザー測距器等の距離センサにより計測した撮影対象の距離情報を受けて、外部から入力した撮像対象上の1点(x1、y1)の距離Ds(x1、y1)と、対応点探索部240が出力する撮影対象の距離情報D(x1、y1、t)とを定期的に比較する、あるいは1度だけ比較する。
【0136】
そして、絶対距離換算部280は、対応点探索部240が出力する撮像対象の距離情報を絶対距離に換算する補正係数Kを求めて、外部からレーザー測距器等の距離センサの情報が得られない時間は、補正係数Kを対応点探索部240が出力する撮像対象の距離情報D(x、y、t)に掛けて絶対距離Da(x、y、t)を出力する。
【0137】
補正係数Kの算出は、下式(23)による。絶対距離の算出は、下式(24)による。また、絶対距離換算部280は、補正係数Kを出力する。
【0138】
【数20】
【0139】
補正係数Kを求めるのに、上記説明では、1点(x1、y1)距離Ds(x1、y1)を使用したが、撮像対象上の複数の点の距離情報から複数の補正係数を求めて、それらの平均値を補正係数Kとしてもよい。
【0140】
一方、絶対運動量換算部180は、絶対距離換算部280が出力する補正係数Kを受けて、運動誤差修正部150が出力する動き情報を絶対運動量Ma(t)に換算して出力する。絶対運動量の算出は、下式(25)による。
【0141】
【数21】
【0142】
実施の形態6によれば、距離情報を外部センサから受け取り補正係数を算出することにより、動き情報および距離情報を絶対量に換算することができる。さらに、外部センサからの情報が得られない時間は、推定した距離情報と補正係数Kから絶対距離を出力することができる。さらに、動画像入力データに基づいて、絶対運動量および絶対距離を推定演算の周期に応じて逐次出力することができる。
【図面の簡単な説明】
【0143】
【図1】本発明の実施の形態1における3次元情報復元装置の構成図である。
【図2】本発明の実施の形態1におけるカメラの動き量を表す成分の座標軸上でのそれぞれの方向を説明する図である。
【図3】本発明の実施の形態1における3次元情報復元装置の構成図である。
【図4】本発明の実施の形態1における仮定した距離情報D’(x、y)とカメラの動き情報M(t)とオプティカル・フロー(x’(・)、y’(・))の関係を図示したものである。
【図5】本発明の実施の形態1における対応点探索の様子の説明図である。
【図6】本発明の実施の形態2における3次元情報復元装置の構成図である。
【図7】本発明の実施の形態2における累積後の動き情報ΣM(t)に関する累積の始点と、画像の更新指令、第2の画像記憶部の出力の変化を説明する図である。
【図8】本発明の実施の形態3における3次元情報復元装置の構成図である。
【図9】本発明の実施の形態3における距離情報D(x、y)の距離信頼度に関する説明図である。
【図10】本発明の実施の形態4における3次元情報復元装置の構成図である。
【図11】本発明の実施の形態4におけるピラミッド画像の説明図である。
【図12】本発明の実施の形態4における対応点探索部の探索範囲を限定する様子の説明図である。
【図13】本発明の実施の形態5における3次元情報復元装置の構成図である。
【図14】本発明の実施の形態6における3次元情報復元装置の構成図である。
【符号の説明】
【0144】
100 運動推定部、110 第1の画像記憶部、120 第1の座標変換部、130 時空間微分処理部、140 運動誤差推定部、150 運動誤差修正部、160 微分信頼度算出部、170 第3の画像記憶部、180 絶対運動量換算部、200 距離推定部、210 第2の画像記憶部、220 第2の座標変換部、230 マッチング処理部、240 対応点探索部、250 画像更新判定部、260 距離信頼度算出部、270 第4の画像記憶部、280 絶対距離換算部。
【技術分野】
【0001】
本発明は、撮影対象までの距離、撮影対象の形状および撮影したカメラの動きを画像から推定する3次元情報復元装置に関するものである。
【背景技術】
【0002】
カメラで撮影した画像データから撮影対象の3次元形状を求める手法として、ステレオ視あるいは両眼立体視と呼ばれる手法がある。2台のカメラのレンズ中心を離して配置して同一の撮影対象を撮影し、視点の異なる画像から撮影対象の奥行きを3角測量の原理で求めて撮影対象の3次元形状を復元する。
【0003】
また、両眼立体視と同様の原理を用いて画像データから撮影対象の3次元形状を求める手法として運動立体視と呼ばれる手法がある。両眼立体視のように2台のカメラを配置するのではなく、運動立体視は、1台のカメラを移動させて視点の異なる画像を1台のカメラから得る。動画像データから時間差のある画像データを取り出せば、両眼立体視と同様に3角測量の原理により撮影対象の奥行きを求めることができる。
【0004】
さらに、画像データだけを用いてカメラの運動量と撮影対象の距離を求める手法として、8点アルゴリズムと呼ばれる手法がある(非特許文献1)。8点アルゴリズムは、撮影対象上の8点を観測してカメラの移動の前後の8点の対応からカメラの運動量と8点の距離を求める手法である。
【0005】
また、画像データだけを用いてカメラの運動量と撮影対象の距離を求める別の手法として、因子分解法と呼ばれる手法がある(非特許文献2)。カメラの移動の前後の画像の対応点の位置を成分に持つ計測行列を、カメラ又は撮影対象の運動を表現する行列と撮影対象の形状を表現する行列との積に分解することで動画像データから撮影対象の形状とカメラの視点の相対位置を同時に求める手法である。
【0006】
【非特許文献1】H.C.Longuet-Higgins,“Computer Algorithm for Reconstructing a Scene From Two Projections,”Nature, vol.293, pp.133-135, Sept 1981.
【非特許文献2】C. Tomasi and T. Kanade,“Shape and motion from image streams under orthography: A factorization method,”International Journal of Computer Vision, 9(2):pp.137-154, 1992.
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかしながら、従来技術には次のような課題がある。
従来の両眼立体視の技術を用いた3次元情報復元装置は、現実的なカメラの配置では遠距離にある撮影対象の距離を正確に求めることができず、また、カメラが2台必要であるという問題がある。
また、従来の運動立体視の技術を用いた3次元情報復元装置は、カメラの運動量を計測する手段が別に必要になるという難点がある。
また、従来の8点アルゴリズムや因子分解法の技術を用いた3次元情報復元装置は、撮影対象上の空間的に密な点の距離情報を求めることができないという問題がある。
【0008】
本発明は上述のような課題を解決するためになされたもので、1台のカメラから得られた2次元の画像から、カメラの3次元運動と撮影対象上の空間的に密な3次元形状を求めることのできる3次元情報復元装置を提供することを目的とする。
【課題を解決するための手段】
【0009】
本発明に係る3次元情報復元装置は、撮影対象を撮影したカメラの動き情報を動画像入力データに基づいて逐次推定する運動推定部と、撮影対象までの距離情報を動画像入力データに基づいて逐次推定する距離推定部とを備えた3次元情報復元装置であって、運動推定部は、距離推定部で推定された前回時刻の距離情報と、動画像入力データとに基づいて今回時刻の動き情報を推定し、距離推定部は、運動推定部で推定された今回時刻の動き情報と、動画像入力データとに基づいて今回時刻の距離情報を推定するものである。
【発明の効果】
【0010】
本発明によれば、距離推定部が出力する距離情報を運動推定部の入力とし、運動推定部が出力する動き情報を距離推定部の入力とし、運動推定部および距離推定部の演算結果を交互に利用することにより、入力画像の情報だけから、運動推定部により撮影したカメラの動きを推定することができるとともに、距離推定部により撮影対象までの距離情報を推定することができ、1台のカメラから得られた2次元の画像から、カメラの3次元運動と撮影対象上の空間的に密な3次元形状を求めることのできる3次元情報復元装置を得ることができる。
【発明を実施するための最良の形態】
【0011】
以下、本発明の3次元情報復元装置の好適な実施の形態につき図面を用いて説明する。
本発明の3次元情報復元装置は、運動推定部と距離推定部とを備え、互いの推定結果を交互に利用することにより、1台のカメラからの動画像入力データからカメラの3次元運動と撮影対象上の空間的に密な3次元形状を求めることができることを特徴とする。
【0012】
実施の形態1.
図1は、本発明の実施の形態1における3次元情報復元装置の構成図である。3次元情報復元装置は、運動推定部100と距離推定部200とで構成される。運動推定部100は、動画像入力データである動画像データI(x、y、t)と、距離推定部200が出力する前回時刻の距離情報D(x、y、t−δt)を受けて、カメラの3次元空間上の今回時刻の動き情報M(t)を推定する。
【0013】
ここでxおよびyは、画像平面上の座標を表す変数であり、tは時刻を表す。また、δtは、動画像における1フレーム〜数フレームに対応する僅かな時間を表す。以下の記載において、t−δtは、tを今回時刻とした場合の前回時刻に相当する。そして、今回時刻の動き情報M(t)とは、前回時刻t−δtから今回時刻tまでのカメラの動きに相当する。
【0014】
動画像データであるI(x、y、t)は、時刻tにおける点(x、y)上の画像の明度を表し、距離情報であるD(x、y、t−δt)は、カメラのレンズ中心から点(x、y)方向に直線を延ばしたとき、時刻t−δtにおけるカメラのレンズ中心から直線と撮影対象とが交わる交点までの距離を表す。
【0015】
カメラの動きは、カメラのレンズ中心の移動量T=(U、V、W)とカメラの回転量Ω=(A、B、C)とを用いて表すことができ、撮影装置の動き情報M(t)は、時刻tにおける(U、V、W、A、B、C)を成分に持つベクトルとして表すことができる。
【0016】
図2は、本発明の実施の形態1におけるカメラの動き量を表す成分(U、V、W、A、B、C)の座標軸上でのそれぞれの方向を説明する図である。図2において、xy座標系は、画像面を表す2次元の座標系である。画像面に垂直にZ軸をとり、画像面からカメラの焦点距離fだけ離れたZ軸上に原点Oをとる。この原点Oは、視点を表し、カメラのレンズの中心に対応する。この原点Oからx軸、y軸に平行にそれぞれX軸、Y軸をとる。
【0017】
XYZ座標系は、カメラに固定した座標系であり、カメラを中心とした3次元空間を表す。空間上の点P=(X、Y、Z)は、この点Pと原点Oとを結ぶ直線の画像面との交点pに投影されることを表している。撮影装置の動きを表すU、V、Wは、それぞれX軸、Y軸、Z軸方向の撮影装置の並進移動量を表し、撮影装置の動きを表すA、B、Cは、それぞれX軸、Y軸、Z軸まわりの右ねじ方向の回転量を表すものとする。
【0018】
距離推定部200は、動画像データI(x、y、t)と、運動推定部100が出力するカメラの今回時刻の動き情報M(t)を受けて、撮影対象までの今回時刻の距離情報D(x、y、t)を推定する。
【0019】
すなわち、ある時刻tを今回時刻とすると、まず始めに、運動推定部100は、今回時刻の動画像データI(x、y、t)と、距離推定部200で推定された前回時刻の距離情報D(x、y、t−δt)とに基づいて、今回時刻の動き情報M(t)を推定する。次に、距離推定部200は、今回時刻の動画像データI(x、y、t)と、運動推定部100で推定された今回時刻の動き情報M(t)に基づいて、今回時刻の距離情報D(x、y、t)を推定する。そして、これらの処理を交互に繰り返すことにより、本発明の3次元情報復元装置は、動き情報と距離情報を逐次推定することとなる。
【0020】
図3は、本発明の実施の形態1における3次元情報復元装置の構成図であり、運動推定部100と距離推定部200の詳細な構成を示している。図3において、運動推定部100は、第1の画像記憶部110、第1の座標変換部120、時空間微分処理部130、運動誤差推定部140、および運動誤差修正部150で構成される。一方、距離推定部200は、第2の画像記憶部210、第2の座標変換部220、マッチング処理部230、および対応点探索部240で構成される。
【0021】
始めに、運動推定部100の作動原理を説明する。第1の画像記憶部110は、動画像データI(x、y、t)を逐次記憶する記憶部であり、今回時刻tに対する前回時刻t−δtの動画像データI(x、y、t−δt)を常に記憶している。
【0022】
第1の座標変換部120は、前回時刻t−δtにおける距離情報D(x、y、t−δt)と、今回時刻の仮定したカメラの動き情報M’(t)を用いて、今回時刻の動画像データI(x、y、t)を座標変換し、今回時刻の動画像データI(x、y、t)を前回時刻t−δtにおけるカメラの位置から見た画像データに相当する第1変換後の動画像データIW(x、y、t)を生成する。
【0023】
また、今回時刻の仮定したカメラの動き情報M’(t)は、最終的に推定されるべき今回時刻のカメラの動き情報M(t)に対して誤差量を含んでいるものであり、この誤差量を繰り返し演算により最小化することにより、今回時刻のカメラの動き情報M(t)を求めることとなる。そこで、まず始めに、第1の座標変換部120による第1変換後の動画像データIW(x、y、t)の具体的な生成方法について、以下に説明する。
【0024】
仮定したカメラの動き情報をM’(t)=(U、V、W、A、B、C)とすると、撮影対象上の点がM’(t)により画面上で見かけ上、移動して見え、オプティカル・フロー(x(・)、y(・))が生じる。ここで、(・)は、その前の記号の上に・が付されていることを意味する。撮影対象の画面上の点pは、撮影対象上の点Pと撮影装置の焦点距離f、撮影対象のZ座標であるDを用いて下式(1)で表される。
【0025】
【数1】
【0026】
画面上での見かけの動きであるオプティカル・フローは、式(1)を微分することにより、下式(2)で表される。
【0027】
【数2】
【0028】
ここで、カメラに固定したXYZ座標系が移動することにより、撮影対象上の点の位置が移動することから、カメラのレンズ中心の移動量T=(U、V、W)およびカメラの回転量Ω=(A、B、C)による関係式P(・)=−T−Ω×Pを用いて式(2)を変形し、各成分に分解すると、下式(3)が得られる。ここで、P(・)は、Pの上に・が付されていることを意味する。
【0029】
【数3】
【0030】
第1の座標変換部120は、式(3)の(x(・)、y(・))を用いて下式(4)により座標変換を行う。
【0031】
【数4】
【0032】
時空間微分処理部130は、第1の画像記憶部110が出力する前回時刻t−δtにおける入力画像I(x、y、t−δt)および第1の座標変換部120が出力する第1変換後の画像IW(x、y、t)に対して下式(5)〜(7)の演算を行って3種類の画像を出力する。
【0033】
【数5】
【0034】
式(5)および式(6)は、それぞれx軸方向およびy軸方向の空間微分を表し、ディジタル画像処理で公知のPrewittオペレータやSobelオペレータにより実現することができる。式(7)は、時間方向の微分に関連した式であり、時間差のある2画面の差分を表している。
【0035】
運動誤差推定部140は、時空間微分処理部130が出力する3種類の微分画像Ix(x、y、t−δt)、Iy(x、y、t−δt)、It(x、y、t)を受けて、第1の座標変換部120の入力に使用した、仮定したカメラの動き情報M’(t)に含まれる誤差を推定する。
【0036】
ここで、運動誤差推定部140の作動原理を具体的に説明する。カメラが移動して視点が僅かに変化した場合にも、撮影対象上の移動前後の同じ点において、画面上での明度は、ほとんど変化しない。従って、下式(8)が成り立つ。
【0037】
【数6】
【0038】
ところが、仮定したカメラの動き情報M’(t)に誤差が含まれると、M’(t)の誤差が式(3)に従ってオプティカル・フロー(x(・)、y(・))の誤差(Δx(・)、Δy(・))となる。そして、画面上の対応点の誤差となって現れ、式(8)の明度に誤差が生じることになり、式(8)の右辺は、0にはならない。式(8)の左辺を2画面が重なる範囲R内で下式(9)のように加算すると、画面全体での明度の誤差の合計を表す式が得られる。
【0039】
【数7】
【0040】
x、y、tの変化が小さい場合、I(x、y、t)に対するテーラー展開から、式(9)は、下式(10)のように近似することができる。
【0041】
【数8】
【0042】
ここで、オプティカル・フローの誤差(Δx(・)、Δy(・))は、前述のように仮定したカメラの動き情報M’(t)の推定誤差に起因する。そこで、カメラの動きの各成分の誤差を(ΔU、ΔV、ΔW、ΔA、ΔB、ΔC)と表すと、仮定したカメラの動き情報M’(t)の推定誤差に起因する画面の明度誤差は、下式(11)で表すことができる。
【0043】
【数9】
【0044】
画面の明度誤差を最小にするような動きの各成分の誤差(ΔU、ΔV、ΔW、ΔA、ΔB、ΔC)は、明度誤差を最小化する動きの各成分の修正量と捉えることができる。この修正量を求めるために、ecをΔU、ΔV、ΔW、ΔA、ΔB、ΔCそれぞれで偏微分すると、ecの最小点では偏微分がそれぞれ0となる。したがって、偏微分が全て0とおいた連立方程式(12)を解くことにより、ecを最小にするΔU、ΔV、ΔW、ΔA、ΔB、ΔCを求めることができる。
【0045】
【数10】
【0046】
運動誤差推定部140は、式(12)を解く演算手段であり、仮定したカメラの動き情報M’(t)の推定誤差(ΔU、ΔV、ΔW、ΔA、ΔB、ΔC)を出力する。式(12)の第1式であるecのΔUによる偏微分は、展開すると下式(13)となる。
【0047】
【数11】
【0048】
式(12)の第2式から第6式も同様に展開することができ、展開した結果は、いずれも未知数(ΔU、ΔV、ΔW、ΔA、ΔB、ΔC)についての1次式となり、未知数に係る係数は、カメラの焦点距離fと、画面上の座標(x、y)と、時空間微分処理部130が出力する3種類の微分画像Ix、Iy、Itと、撮影対象上の点のZ座標Dを用いて表すことができる。加算演算Σの後に、係数は定数となるので、式(12)は、6元1次の連立方程式として簡単に解くことができる。
【0049】
運動誤差修正部150は、第1の座標変換部120に前述したような仮定したカメラの動き情報M’(t)=(U、V、W、A、B、C)を出力するとともに、運動誤差推定部140が求めた修正量(ΔU、ΔV、ΔW、ΔA、ΔB、ΔC)を下式(14)のように加算することによりカメラの誤差の少ない新たな仮定した動き情報M’(t)としてデータを更新する。
【0050】
【数12】
【0051】
運動誤差修正部150により更新された仮定したカメラの動き情報M’(t)は、再び第1の座標変換部120に対して出力される。そして、第1の座標変換部120、時空間微分処理部130、および運動誤差推定部140による上述した一連の処理により、更新された仮定したカメラの動き情報M’(t)に対応する新たな修正量(ΔU、ΔV、ΔW、ΔA、ΔB、ΔC)が算出される。
【0052】
運動誤差修正部150は、新たな修正量(ΔU、ΔV、ΔW、ΔA、ΔB、ΔC)を用いて再び仮定したカメラの動き情報M’(t)を更新する。このような処理を繰り返すことにより、仮定したカメラの動き情報M’(t)に含まれる誤差量を小さくしていくことができる。
【0053】
すなわち、運動推定部100は、今回時刻の動画像データI(x、y、t)、距離推定部200が出力する前回時刻の距離情報D(x、y、t−δt)、および仮定したカメラの動き情報M’(t)に基づいて、仮定したカメラの動き情報M’(t)に含まれている誤差量を算出して仮定したカメラの動き情報M’(t)を更新する処理を所定回数繰り返すことにより、仮定したカメラの動き情報M’(t)に含まれている誤差を減少させる。
【0054】
運動誤差修正部150は、所定回数の繰り返し演算処理が終了した後に、最終的に更新された仮定したカメラの動き情報M’(t)を、推定すべき今回時刻のカメラの動き情報M(t)として出力する。
【0055】
また、運動誤差修正部150が出力する仮定したカメラの動き情報M’(t)の初期値は、M’(t)=(0、0、0、0、0、0)から始めてもよいし、前回時刻t−δtにおいて最終的に推定されたカメラの動き情報M(t−δt)を初期値としてもよい。
【0056】
運動推定部100は、所定の回数だけ運動誤差推定と運動誤差修正を繰り返して、時刻tのカメラの動き情報M(t)の推定演算を確定する。M(t)の推定演算を確定した後、運動推定部100は、入力データの時刻をtからt+δtに進めて同様の演算を繰り返す。
【0057】
すなわち、運動推定部100は、次回時刻の動画像データI(x、y、t+δt)と、距離推定部200が出力する今回時刻の距離情報D(x、y、t)を受け、第1の画像記憶部110は、次回時刻t+δtにおける入力画像I(x、y、t+δt)を記憶し、事前に記憶していた今回時刻の入力画像I(x、y、t)を出力して、次回時刻のカメラの動き情報M(t+δt)を推定する上記演算を実行する。
【0058】
次に、距離推定部200の作動原理を説明する。距離推定部200は、今回時刻の動画像データI(x、y、t)と、運動推定部100が出力する今回時刻のカメラの動き情報M(t)を受けて、撮影対象までの今回時刻の距離情報D(x、y、t)を推定する。
【0059】
第2の画像記憶部210は、動画像データI(x、y、t)を逐次記憶する記憶部であり、今回時刻tに対する前回時刻t−δtの動画像データI(x、y、t−δt)を常に記憶している。
【0060】
第2の座標変換部220は、今回時刻のカメラの動き情報M(t)と、対応点探索部240が出力する、距離情報Dを求めるための仮定した今回時刻の距離情報D’(x、y)を用いて、第2の画像記憶部210に記憶された前回時刻の動画像データI(x、y、t−δt)を座標変換し、前回時刻の動画像データI(x、y、t−δt)を今回時刻tにおけるカメラの位置から見た画像データに相当する第2変換後の動画像データIWW(x、y、t−δt)を生成する。
【0061】
前回時刻t−δtから今回時刻tまでのカメラの動き情報であるM(t)が与えられると、時刻tから時刻t−δtまでの時間を遡ったカメラの逆の動き(U’、V’、W’、A’、B’、C’)は、(U、V、W、A、B、C)の符号を変える等、逆変換して簡単に求められる。カメラを時刻tの位置から時刻t−δtの位置に移動させた場合に生じる画面上での見かけの動きであるオプティカル・フロー(x’(・)、y’(・))は、式(3)と同様に下式(15)で表される。
【0062】
【数13】
【0063】
第2の座標変換部220は、式(15)の(x’(・)、y’(・))を用いて下式(16)により座標変換を行う。
【0064】
【数14】
【0065】
図4は、本発明の実施の形態1における仮定した距離情報D’(x、y)とカメラの動き情報M(t)とオプティカル・フロー(x’(・)、y’(・))の関係を図示したものである。時刻tの画像I(x、y、t)上で見ている点(x、y)が、実際の3次元空間上では、距離D’の位置にあると仮定すると、時刻t−δtの画像I(x、y、t−δt)上では、オプティカル・フロー(x’(・)、y’(・))分だけずれて見えることを表している。距離D’の仮定が正しければ、式(16)による座標変換の結果であるIWW(x、y、t−δt)は、I(x、y、t)と同じ撮影対象物上の点を見ているので、撮影対象物上の反射の影響が無視できる場合、画素の明度は一致する。
【0066】
マッチング処理部230は、対応点探索部240が出力した仮定した距離情報D’(x、y)が正しいかどうかを判定するために、第2の座標変換部220が出力する第2変換後の動画像データIWW(x、y、t−δt)と、今回時刻の動画像データI(x、y、t)とのそれぞれの画面上の点(x、y)における明度の一致度を計算する。明度が一致しているかどうかは、点(x、y)の近傍の画素、例えば、x方向に±4画素およびy方向に±4画素の範囲内にある画素の明度を使用して、正規化相互相関や各画素の明度差の絶対値の和を評価値として用いることができる。
【0067】
対応点探索部240は、仮定した距離情報D’(x、y)を適当な範囲内で変化させることにより、複数の仮定した距離情報D’(x、y)を出力する。第2の座標変換部220は、複数の仮定した距離情報D’(x、y)のそれぞれに対応した座標変換の結果IWW(x、y、t−δt)を出力する。
【0068】
マッチング処理部230は、複数の仮定した距離情報D’(x、y)のそれぞれに対応したIWW(x、y、t−δt)と今回時刻の動画像データI(x、y、t)との一致度を示す評価値V(x、y)を出力する。さらに、対応点探索部240は、複数の仮定した距離情報D’(x、y)に対応してマッチング処理部230が出力する複数の評価値V(D’、x、y)の各点(x、y)毎に最も評価値のよい仮定した距離を探索する。
【0069】
図5は、本発明の実施の形態1における対応点探索の様子の説明図である。複数の仮定した距離情報D’(x、y)として、D1、D2、D3の3つを仮定したときに、D2において明度の一致度を表す評価値V(D’、x、y)が最小値を示していることを表しており、D2を点(x、y)における今回時刻の距離情報D(x、y、t)とする。
【0070】
図5においては、評価値Vの数値が小さいほど明度がよく一致していることを表している。図5に示す対応点探索は、各点(x、y)毎に実施する。この結果、撮影対象上の空間的に密な3次元形状を求めることができる。以上の処理手順により、距離推定部200は、撮影対象までの今回時刻の距離情報D(x、y、t)を推定する。
【0071】
距離推定部200が出力する撮影対象までの今回時刻の距離情報D(x、y、t)は、次の時刻の運動推定部100の演算の入力となる。今回時刻tと次回時刻t+δtの表記をδtだけずらして表記して、今回時刻をt−δt、次回時刻をtと表記することにより、運動推定部100の作動原理と距離推定部200の作動原理で説明した演算を繰り返して実行する。
【0072】
これにより、実施の形態1による3次元情報復元装置は、動画像データI(x、y、t)を入力としてカメラの3次元空間上の動き情報M(t)および距離情報D(x、y、t)を推定することができる。
【0073】
運動推定部100の最初の演算を行う時は、距離推定部200の出力が得られていないが、このときは、前回時刻の距離情報D(x、y、t−δt)に基づいて撮影対象までの距離を仮定して適当な定数等の初期値を与えておけばよい。
【0074】
以上のように、実施の形態1によれば、運動推定部と距離推定部が互いの推定結果を交互に利用することにより、1台のカメラからの動画像入力データから動き情報と距離情報を精度よく推定でき、その結果としてカメラの3次元運動と撮影対象上の空間的に密な3次元形状を求めることができる。
【0075】
なお、実施の形態1の説明において、運動推定部100は、所定の回数だけ運動誤差推定と運動誤差修正を繰り返して、時刻tのカメラの動き情報M(t)の推定演算を確定する場合について説明したが、これに限定されるものではない。算出される修正量(ΔU、ΔV、ΔW、ΔA、ΔB、ΔC)の収束状況を所定値と比較することにより、時刻tのカメラの動き情報M(t)の推定演算を確定することも可能である。
【0076】
実施の形態2.
図6は、本発明の実施の形態2における3次元情報復元装置の構成図である。図6における運動推定部100の構成は、実施の形態1で示した図3における運動推定部100の構成と同様である。また、図6における距離推定部200の構成は、実施の形態1で示した図3における距離推定部200の構成と比較すると、画像更新判定部250を新たに備えている。
【0077】
実施の形態1の場合と同様に、運動推定部100は、今回時刻の動画像データI(x、y、t)と、距離推定部200が出力する前回時刻の距離情報D(x、y、t−δt)を受けて、カメラの3次元空間上の今回時刻の動き情報M(t)を推定する。また、距離推定部200は、今回時刻の動画像データI(x、y、t)と、運動推定部100が出力する今回時刻のカメラの動き情報M(t)を受けて、撮影対象までの今回時刻の距離情報D(x、y、t)を推定する。
【0078】
次に、実施の形態1と構成の異なる距離推定部200の動作を中心に説明する。画像更新判定部250は、運動推定部100が出力する撮影装置の今回時刻の動き情報M(t)に応じて第2の画像記憶部210および対応点探索部240の更新を制御し、第2の座標変換部220に入力する撮影装置の動き情報を制御する。
【0079】
仮定した距離情報D’(x、y)とカメラの動き情報M(t)とオプティカル・フロー(x’(・)、y’(・))の関係は、先の図4に示すとおりである。すなわち、視点の異なる方向から撮影対象物上の点を対応付けて、カメラの動き情報M(t)とカメラのレンズの中心と撮影対象物上の点から形成される三角形から距離情報Dを求めるので、カメラの動き情報M(t)の大きさが小さい場合、撮影対象物上の点を頂点とする角度が小さくなる。
【0080】
この場合、カメラのレンズの中心と撮影対象物上の点とを結ぶ方向に誤差が生じると、距離情報Dの誤差に大きく影響する。そこで、画像更新判定部250は、動き情報M(t)を逐次累積していき、その累積後の動き情報ΣM(t)の大きさ|ΣM(t)|が所定の大きさを超えたときに、第2の画像記憶部210に対して記憶する画像の更新指令を出力する。また、この更新指令は、対応点探索部240に対する演算指令にもなる。
【0081】
第2の画像記憶部210は、動画像データI(x、y、t)を入力して記憶するとともに、画像更新判定部250の指令を受けた時刻を今回時刻tとして、前回時刻t−δtに記憶した動画像データI(x、y、t−δt)を出力する。図7は、本発明の実施の形態2における累積後の動き情報ΣM(t)に関する累積の始点と、画像の更新指令、第2の画像記憶部210の出力の変化を説明する図である。
【0082】
図7において、画像更新判定部250は、累積動き情報の累積を時刻t1から始め、時刻t4のとき累積動き情報である下式(17)が所定の大きさを超えたことにより、更新指令を出力している例を示している。
【0083】
【数15】
【0084】
このとき、第2の画像記憶部210は、時刻t1からδtだけ前の画像を記憶して時刻t1から時刻t4まで繰り返し出力し、更新指令を受けた時刻t4の次の時刻t5において、時刻t5からδtだけ前の時刻(この例では時刻t4に相当)に記憶していた画像I(x、y、t4)を出力する。
【0085】
また、画像更新判定部250は、時刻t4において、時刻t1から累積を始めた累積動き情報を出力した後、時刻t5において累積動き情報の累積の始点を時刻t5に設定し直す。
【0086】
第2の座標変換部220は、画像更新判定部250が出力する累積動き情報と、対応点探索部240が出力する、距離情報Dを求めるための仮定した距離情報D’(x、y)を用いて、第2の画像記憶部210が出力する動画像データIを座標変換し、時刻tにおけるカメラの位置から見た第2変換後の動画像データIWWを生成する。座標変換の式は、実施の形態1の場合と同様に式(15)に基づいて実行する。
【0087】
マッチング処理部230の作動原理は、実施の形態1の場合と同様である。
【0088】
対応点探索部240の作動原理は、カメラの動き情報M(t)の大きさが小さい場合、距離情報Dの誤差が大きくなるので、累積後の動き情報ΣM(t)の大きさ|ΣM(t)|が所定の大きさを超えたとき、画像更新判定部250が出力する更新指令を受けて撮影対象までの距離情報D(x、y、t)を推定すること以外は、実施の形態1の場合と同様である。
【0089】
実施の形態2によれば、画像更新判定部を有することにより、動き情報の累積値が所定値を超えたタイミングで距離情報の推定を行うことができ、誤差要因を抑えた距離情報の推定を実現できる。さらに、誤差要因を抑えた距離情報に基づいて動き情報が推定されるため、動き情報の誤差要因も抑えることができる。
【0090】
実施の形態3.
図8は、本発明の実施の形態3における3次元情報復元装置の構成図である。図8における運動推定部100の構成は、実施の形態1で示した図3における運動推定部100の構成と比較すると、微分信頼度算出部160を新たに備えている。また、図8における距離推定部200の構成は、実施の形態1で示した図3における距離推定部200の構成と比較すると、距離信頼度算出部260を新たに備えている。
【0091】
実施の形態1の場合と同様に、運動推定部100は、今回時刻の動画像データI(x、y、t)と、距離推定部200が出力する前回時刻の距離情報D(x、y、t−δt)を受けて、カメラの3次元空間上の今回時刻の動き情報M(t)を推定する。また、距離推定部200は、今回時刻の動画像データI(x、y、t)と、運動推定部100が出力する今回時刻のカメラの動き情報M(t)を受けて、撮影対象までの今回時刻の距離情報D(x、y、t)を推定する。
【0092】
次に、実施の形態1と異なる構成を中心に、動作を説明する。運動誤差推定部140は、実施の形態1の場合と同様に、連立方程式(12)を解く演算手段であるが、偏微分の展開式(13)において、実施の形態1では、2画面が重なる範囲を示す領域をRとすると、領域R内の全ての画素について加算演算を実施している。
【0093】
これに対して、実施の形態3における運動誤差推定部140は、微分信頼度算出部160および距離信頼度算出部260が出力する信頼度に基づいて、時空間微分処理部130が出力する微分画像の信頼度、および対応点探索部240が出力する距離情報の信頼度が高い画素の情報のみを偏微分の展開式の加算演算に使用している。
【0094】
微分信頼度算出部160は、時空間微分処理部130が出力する微分画像を判定して、明度勾配が平坦な画素および明度勾配が極端に急峻な画素については、低い信頼度を出力する。この理由は、式(10)による微分画像Ix(x、y、t−δt)、Iy(x、y、t−δt)、It(x、y、t)とオプティカル・フロー(x(・)、y(・))の誤差(Δx(・)、Δy(・))との関係が、明度勾配が平坦な画素および明度勾配が極端に急峻な画素においては成立し難くなるためである。
【0095】
例えば、微分画像に対する適当な判定しきい値Tdev_minとTdev_maxを設定し、下式(18)としてCdev(x、y、t−δt)を微分信頼度として出力する。
【0096】
【数16】
【0097】
距離信頼度算出部260は、複数の仮定した距離情報D’(x、y)に対するそれぞれの評価値V(D’、x、y)、および評価値が最小値を示す距離情報D(x、y)を対応点探索部240から受け取り、距離情報D(x、y)の安定性を判定して、距離情報D(x、y)の距離信頼度Cdis(x、y、t)を出力する。
【0098】
図9は、本発明の実施の形態3における距離情報D(x、y)の距離信頼度に関する説明図である。この図9においては、先の図5と同様に、評価値Vが小さい方が第2の座標変換部220が出力する座標変換後の動画像データIWW(x、y、t−δt)と動画像データI(x、y、t)の画面上の点(x、y)との明度の一致度がよいことを表している。
【0099】
図9(a)において、評価値が最小値Vminを示す距離情報D(x、y)の近傍の評価値V(D’、x、y)の曲率半径raは小さく、その逆数である曲率Curv(x、y)は大きいこととなる。したがって、この場合には、先に対応点探索部240で探索された評価値が最小値Vminを示す距離情報D(x、y)は、他の距離情報と比較して明らかに小さい評価値を有しているものとして、安定していると見なすことができ、信頼度は高いと考えられる。
【0100】
一方、図9(b)において、評価値が最小値Vminを示す距離情報D(x、y)の近傍の評価値V(D’、x、y)の曲率半径rbは大きく、その逆数である曲率Curv(x、y)は小さいこととなる。したがって、この場合には、先に対応点探索部240で探索された評価値が最小値Vminを示す距離情報D(x、y)は、他の距離情報と比較して明らかに小さい評価値を有しているものとは必ずしもいえず、距離情報が前後することがあり、安定していないと見なすことができ、信頼度は低いと考えられる。
【0101】
距離信頼度算出部260は、例えば、評価値の最小値Vminおよび評価値が最小値を示す点における曲率Curvに対して適当な判定しきい値TvとTcurvを設定し、下式(19)としてCdis(x、y、t)を距離信頼度として出力する。
【0102】
【数17】
【0103】
なお、上述した曲率Curvは、評価値V(D’、x、y)を2次微分することにより得ることが可能である。
【0104】
運動誤差推定部140は、微分信頼度算出部160が出力する微分信頼度Cdev(x、y、t−δt)および距離信頼度算出部260が出力する時刻t−δtにおける距離信頼度Cdis(x、y、t−δt)を受けて、Cdev(x、y、t−δt)=1、かつCdis(x、y、t−δt)=1のとき、式(13)におけるx、y∈RのΣの加算を実行する。
【0105】
式(12)の第2式から第6式の展開式においても、式(13)と同様にx、y∈RのΣの加算が現れるが、同様にCdev(x、y、t−δt)=1、かつCdis(x、y、t−δt)=1のとき、x、y∈RのΣの加算を実行する。
【0106】
この結果、運動誤差推定部140は、信頼度の高い範囲のデータのみを採用して動き情報の誤差量を推定することができる。
【0107】
実施の形態3によれば、運動誤差推定部は、微分信頼度および距離信頼度に基づいて、微分信頼度が高く、かつ距離信頼度が高い画素の情報のみを偏微分の展開式の加算演算に使用することにより、動き情報および距離情報の推定誤差を抑えることができる。
【0108】
実施の形態4.
図10は、本発明の実施の形態4における3次元情報復元装置の構成図である。図10における運動推定部100の構成は、実施の形態1で示した図3における運動推定部100の構成と比較すると、第3の画像記憶部170を新たに備えている。また、図10における距離推定部200の構成は、実施の形態1で示した図3における距離推定部200の構成と比較すると、第4の画像記憶部270を新たに備えている。さらに、運動推定部100および距離推定部200の前段に、ピラミッド画像生成部300が新たに設けられている。
【0109】
実施の形態1の場合と同様に、運動推定部100は、今回時刻の動画像データI(x、y、t)と、距離推定部200が出力する前回時刻の距離情報D(x、y、t−δt)を受けて、カメラの3次元空間上の今回時刻の動き情報M(t)を推定する。また、距離推定部200は、今回時刻の動画像データI(x、y、t)と、運動推定部100が出力する今回時刻のカメラの動き情報M(t)を受けて、撮影対象までの今回時刻の距離情報D(x、y、t)を推定する。
【0110】
次に、実施の形態1と異なる構成を中心に、動作を説明する。まず、ピラミッド画像生成部300は、入力画像の解像度がレベル0からレベルL(Lは1以上の整数)に従って粗くなる1組のピラミッド画像を生成する。図11は、本発明の実施の形態4におけるピラミッド画像の説明図である。レベル0は、入力画像と同じ解像度を持ち、レベル数が大きくなるにつれて解像度が低くなる。解像度が低くなると画素数が少なくなるので、画像の大きさを小さくして解像度が低いことを表している。
【0111】
運動推定部100内の第3の画像記憶部170は、ピラミッド画像生成部300が出力する1組のピラミッド画像を一旦、記憶する記憶部であり、解像度の低いピラミッド画像から解像度の高いピラミッド画像の順に出力する。第1の画像記憶部110、第1の座標変換部120、時空間微分処理部130、運動誤差推定部140および運動誤差修正部150の作動原理は、実施の形態1の場合と同様である。
【0112】
運動推定部100は、まず始めに、解像度の最も低いレベルLのピラミッド画像に対して、実施の形態1の場合と同様に、所定の回数だけ運動誤差推定と運動誤差修正を繰り返して時刻tのカメラの動き情報M(t)を推定演算する。次に、第3の画像記憶部170は、1段階だけ解像度の高いレベル(L−1)のピラミッド画像を出力する。
【0113】
そして、運動推定部100は、レベルLのピラミッド画像を用いて求めた動き情報M(t)を運動誤差修正部150による新たな仮定した動き情報M’(t)の初期値として、時刻tのレベル(L−1)のピラミッド画像に対するカメラの動き情報M(t)を推定演算する。
【0114】
運動推定部100は、各解像度レベルで推定された動き情報M(t)を次に解像度が高いレベルでの仮定した動き情報M’(t)の初期値として使用し、第3の画像記憶部170が最も解像度の高いレベル0のピラミッド画像を出力するまで運動誤差推定と運動誤差修正を繰り返すことにより、最終的に、時刻tのカメラの動き情報M(t)の推定演算を確定する。
【0115】
一方、距離推定部200内の第4の画像記憶部270は、ピラミッド画像生成部300が出力する1組のピラミッド画像を一旦、記憶する記憶部であり、解像度の低いピラミッド画像から解像度の高いピラミッド画像の順に出力する。第2の画像記憶部210、第2の座標変換部220、マッチング処理部230および対応点探索部240の作動原理は、実施の形態1の場合と同様である。
【0116】
距離推定部200は、解像度の低いレベルLのピラミッド画像に対して、実施の形態1の場合と同様に、撮影対象までの距離情報D(x、y、t)を推定する。次に、第4の画像記憶部270は、1段階だけ解像度の高いレベル(L−1)のピラミッド画像を出力して、距離推定部200は、レベルLのピラミッド画像を用いて求めた距離情報D(x、y、t)を対応点探索部240の探索範囲を限定するために使用する。
【0117】
図12は、本発明の実施の形態4における対応点探索部240の探索範囲を限定する様子の説明図である。レベル(L−1)のピラミッド画像に対する複数の仮定した今回時刻の距離情報D’(x、y)としては、レベルLのピラミッド画像を用いて求めた距離情報D(x、y、t)を挟み、かつ、レベルLにおける探索範囲よりも狭い範囲を設定することにより、その中から最も評価値の高いものをレベル(L−1)における今回時刻の距離情報D(x、y)として探索する。
【0118】
このように、探索範囲を狭めることにより、対応点探索の処理時間を短縮し、レベルLのピラミッド画像を用いて求めた距離情報D(x、y、t)よりも解像度の高い距離情報を得ることができる。距離推定部200は、第4の画像記憶部270が最も解像度の高いレベル0のピラミッド画像を出力するまで距離情報の推定を繰り返して距離情報D(x、y、t)の推定演算を確定する。
【0119】
実施の形態4によれば、ピラミッド画像を用いて解像度の低い画像から動き情報および距離情報を推定しながら検索範囲を徐々に狭めることにより、最終的に解像度の高い画像の動き情報および距離情報を効率よく、かつ高精度で推定できる。
【0120】
実施の形態5.
図13は、本発明の実施の形態5における3次元情報復元装置の構成図である。図13における運動推定部100の構成は、実施の形態1で示した図3における運動推定部100の構成と比較すると、絶対運動量換算部180を新たに備えている。また、図13における距離推定部200の構成は、実施の形態1で示した図3における距離推定部200の構成と比較すると、絶対距離換算部280を新たに備えている。
【0121】
実施の形態1の場合と同様に、運動推定部100は、今回時刻の動画像データI(x、y、t)と、距離推定部200が出力する前回時刻の距離情報D(x、y、t−δt)を受けて、カメラの3次元空間上の今回時刻の動き情報M(t)を推定する。また、距離推定部200は、今回時刻の動画像データI(x、y、t)と、運動推定部100が出力する今回時刻のカメラの動き情報M(t)を受けて、撮影対象までの今回時刻の距離情報D(x、y、t)を推定する。
【0122】
次に、実施の形態1と異なる構成を中心に、動作を説明する。運動推定部100の最初の演算を行う時は、距離推定部200の出力が得られていないので、距離情報D(x、y、t−δt)として撮影対象までの距離を仮定して、適当な定数等の初期値を与えて、運動推定部100の演算を開始することとなる。
【0123】
したがって、運動推定部100が出力するカメラの動き情報、および距離推定部200が出力する撮影対象までの距離情報の相対値が得られても、実際のカメラの動き量および撮影対象までの絶対距離に対して誤差が含まれていることがある。
【0124】
そこで、本実施の形態5における絶対運動量換算部180は、外部からジャイロ等のモーションセンサにより計測したカメラの動き情報を受けて、外部から入力したカメラの移動量Ts=(Us、Vs、Ws)と、運動誤差修正部150が出力するカメラの移動量T=(U、V、W)との大きさとを定期的に比較する、あるいは1度だけ比較する。
【0125】
そして、絶対運動量換算部180は、運動誤差修正部150が出力するカメラの動き量を絶対動き量に換算する補正係数Kを求めて、外部からジャイロ等のモーションセンサの情報が得られない時間は、この補正係数Kを運動誤差修正部150が出力するカメラの移動量T=(U、V、W)に掛けて絶対運動量Ma(t)を出力する。
【0126】
補正係数Kの算出は、下式(20)による。絶対運動量の算出は、下式(21)による。式(20)において、||は、ベクトルの大きさを表す。また、絶対運動量換算部180は、補正係数Kを出力する。
【0127】
【数18】
【0128】
一方、絶対距離換算部280は、絶対運動量換算部180が出力する補正係数Kを受けて、対応点探索部240が出力する距離情報を絶対距離Da(x、y、t)に換算して出力する。絶対距離の算出は、下式(22)による。
【0129】
【数19】
【0130】
実施の形態5によれば、カメラの動き情報を外部センサから受け取り補正係数を算出することにより、動き情報および距離情報を絶対量に換算することができる。さらに、外部センサからの情報が得られない時間は、推定した動き情報と補正係数Kから絶対運動量を出力することができる。さらに、動画像入力データに基づいて、絶対運動量および絶対距離を推定演算の周期に応じて逐次出力することができる。
【0131】
実施の形態6.
図14は、本発明の実施の形態6における3次元情報復元装置の構成図である。図14における運動推定部100の構成は、実施の形態1で示した図3における運動推定部100の構成と比較すると、絶対運動量換算部180を新たに備えており、図13と同一の構成である。また、図14における距離推定部200の構成は、実施の形態1で示した図3における距離推定部200の構成と比較すると、絶対距離換算部280を新たに備えており、図13と同一の構成である。
【0132】
実施の形態1の場合と同様に、運動推定部100は、今回時刻の動画像データI(x、y、t)と、距離推定部200が出力する前回時刻の距離情報D(x、y、t−δt)を受けて、カメラの3次元空間上の今回時刻の動き情報M(t)を推定する。また、距離推定部200は、今回時刻の動画像データI(x、y、t)と、運動推定部100が出力する今回時刻のカメラの動き情報M(t)を受けて、撮影対象までの今回時刻の距離情報D(x、y、t)を推定する。
【0133】
次に、実施の形態1と異なる構成、および実施の形態5と異なる機能を中心に、動作を説明する。運動推定部100の最初の演算を行う時は、距離推定部200の出力が得られていないので、距離情報D(x、y、t−δt)として撮影対象までの距離を仮定して、適当な定数等の初期値を与えて、運動推定部100の演算を開始することとなる。
【0134】
したがって、運動推定部100が出力するカメラの動き情報、および距離推定部200が出力する撮影対象までの距離情報の相対値が得られても、実際のカメラの動き量および撮影対象までの絶対距離に対して誤差が含まれていることがある。
【0135】
そこで、本実施の形態6における絶対距離換算部280は、外部からレーザー測距器等の距離センサにより計測した撮影対象の距離情報を受けて、外部から入力した撮像対象上の1点(x1、y1)の距離Ds(x1、y1)と、対応点探索部240が出力する撮影対象の距離情報D(x1、y1、t)とを定期的に比較する、あるいは1度だけ比較する。
【0136】
そして、絶対距離換算部280は、対応点探索部240が出力する撮像対象の距離情報を絶対距離に換算する補正係数Kを求めて、外部からレーザー測距器等の距離センサの情報が得られない時間は、補正係数Kを対応点探索部240が出力する撮像対象の距離情報D(x、y、t)に掛けて絶対距離Da(x、y、t)を出力する。
【0137】
補正係数Kの算出は、下式(23)による。絶対距離の算出は、下式(24)による。また、絶対距離換算部280は、補正係数Kを出力する。
【0138】
【数20】
【0139】
補正係数Kを求めるのに、上記説明では、1点(x1、y1)距離Ds(x1、y1)を使用したが、撮像対象上の複数の点の距離情報から複数の補正係数を求めて、それらの平均値を補正係数Kとしてもよい。
【0140】
一方、絶対運動量換算部180は、絶対距離換算部280が出力する補正係数Kを受けて、運動誤差修正部150が出力する動き情報を絶対運動量Ma(t)に換算して出力する。絶対運動量の算出は、下式(25)による。
【0141】
【数21】
【0142】
実施の形態6によれば、距離情報を外部センサから受け取り補正係数を算出することにより、動き情報および距離情報を絶対量に換算することができる。さらに、外部センサからの情報が得られない時間は、推定した距離情報と補正係数Kから絶対距離を出力することができる。さらに、動画像入力データに基づいて、絶対運動量および絶対距離を推定演算の周期に応じて逐次出力することができる。
【図面の簡単な説明】
【0143】
【図1】本発明の実施の形態1における3次元情報復元装置の構成図である。
【図2】本発明の実施の形態1におけるカメラの動き量を表す成分の座標軸上でのそれぞれの方向を説明する図である。
【図3】本発明の実施の形態1における3次元情報復元装置の構成図である。
【図4】本発明の実施の形態1における仮定した距離情報D’(x、y)とカメラの動き情報M(t)とオプティカル・フロー(x’(・)、y’(・))の関係を図示したものである。
【図5】本発明の実施の形態1における対応点探索の様子の説明図である。
【図6】本発明の実施の形態2における3次元情報復元装置の構成図である。
【図7】本発明の実施の形態2における累積後の動き情報ΣM(t)に関する累積の始点と、画像の更新指令、第2の画像記憶部の出力の変化を説明する図である。
【図8】本発明の実施の形態3における3次元情報復元装置の構成図である。
【図9】本発明の実施の形態3における距離情報D(x、y)の距離信頼度に関する説明図である。
【図10】本発明の実施の形態4における3次元情報復元装置の構成図である。
【図11】本発明の実施の形態4におけるピラミッド画像の説明図である。
【図12】本発明の実施の形態4における対応点探索部の探索範囲を限定する様子の説明図である。
【図13】本発明の実施の形態5における3次元情報復元装置の構成図である。
【図14】本発明の実施の形態6における3次元情報復元装置の構成図である。
【符号の説明】
【0144】
100 運動推定部、110 第1の画像記憶部、120 第1の座標変換部、130 時空間微分処理部、140 運動誤差推定部、150 運動誤差修正部、160 微分信頼度算出部、170 第3の画像記憶部、180 絶対運動量換算部、200 距離推定部、210 第2の画像記憶部、220 第2の座標変換部、230 マッチング処理部、240 対応点探索部、250 画像更新判定部、260 距離信頼度算出部、270 第4の画像記憶部、280 絶対距離換算部。
【特許請求の範囲】
【請求項1】
撮影対象を撮影したカメラの動き情報を動画像入力データに基づいて逐次推定する運動推定部と、
撮影対象までの距離情報を動画像入力データに基づいて逐次推定する距離推定部と
を備えた3次元情報復元装置であって、
前記運動推定部は、前記距離推定部で推定された前回時刻の距離情報と、前記動画像入力データとに基づいて今回時刻の動き情報を推定し、
前記距離推定部は、前記運動推定部で推定された前記今回時刻の動き情報と、前記動画像入力データとに基づいて今回時刻の距離情報を推定する
ことを特徴とする3次元情報復元装置。
【請求項2】
請求項1に記載の3次元情報復元装置において、
前記運動推定部は、前記動画像入力データが逐次記憶される第1の画像記憶部を有し、今回時刻の動画像入力データと、今回時刻の仮定した動き情報と、前記距離推定部で推定された前回時刻の距離情報とに基づいて前回時刻のカメラ位置から見た動画像入力データを第1変換後の動画像入力データとして生成し、前記第1変換後の動画像入力データと前記第1の画像記憶部に記憶された前回時刻の動画像入力データとの明度誤差が最小となるように前記今回時刻の仮定した動き情報を逐次修正することにより今回時刻の動き情報を推定し、
前記距離推定部は、前記動画像入力データが逐次記憶された第2の画像記憶部を有し、複数の今回時刻の仮定した距離情報のそれぞれに対して、前記第2の画像記憶部に記憶された前回時刻の動画像入力データと、前記運動推定部で推定された前記今回時刻の動き情報とに基づいて複数の第2変換後の動画像入力データを生成し、前記複数の第2変換後の動画像入力データの中から、今回時刻の動画像入力データとの明度の一致度が最大となる第2変換後の動画像入力データを特定し、特定した第2変換後の動画像入力データに対応する今回時刻の仮定した距離情報を今回時刻の距離情報として推定する
ことを特徴とする3次元情報復元装置。
【請求項3】
請求項2に記載の3次元情報復元装置において、
前記運動推定部は、
前記今回時刻の仮定した動き情報を出力する運動誤差修正部と、
前記今回時刻の動画像入力データと、前記今回時刻の仮定した動き情報と、前記距離推定部で推定された前回時刻の距離情報とに基づいて前記第1変換後の動画像入力データを生成する第1の座標変換部と、
前記第1の画像記憶部に記憶された前回時刻の動画像入力データに基づいて前記前回時刻の動画像入力データの空間微分による微分画像を算出するとともに、前記第1変換後の動画像入力データと前記第1の画像記憶部に記憶された前回時刻の動画像入力データとの差分に基づいて、時間微分による微分画像を算出する時空間微分処理部と、
時空間微分されたそれぞれの前記微分画像と前記前回時刻の距離情報とに基づいて、前記第1変換後の動画像入力データと前記前回時刻の動画像入力データとの明度誤差が最小となる値を動き情報誤差量として算出する運動誤差推定部と
を備え、
前記運動誤差修正部は、前記運動誤差推定部で算出された前記動き情報誤差量を加算することにより前記今回時刻の仮定した動き情報を更新して前記第1の変換部に出力し、その後、更新した今回時刻の仮定した動き情報に対応して前記運動誤差推定部で算出された新たな動き情報誤差量を受信することにより、前記更新した今回時刻の仮定した動き情報をさらに更新する処理を所定回数繰り返すことにより最終的に更新した今回時刻の仮定した動き情報を今回時刻の動き情報として推定し、
前記距離推定部は、
前記複数の今回時刻の仮定した距離情報を出力する対応点探索部と、
前記複数の今回時刻の仮定した距離情報のそれぞれに対して、前記第2の画像記憶部に記憶された前記前回時刻の動画像入力データと、前記運動推定部で推定された前記今回時刻の動き情報とに基づいて前記複数の第2変換後の動画像入力データを生成する第2の座標変換部と、
前記複数の第2変換後の動画像入力データのそれぞれに対して、前記今回時刻の動画像入力データとの明度の一致度に基づく複数の評価値を算出するマッチング処理部と
を備え、
前記対応点探索部は、前記マッチング処理部で算出された前記複数の評価値の中から最も一致度の高い評価値に対応する今回時刻の仮定した距離情報を今回時刻の距離情報として推定する
ことを特徴とする3次元情報復元装置。
【請求項4】
請求項3に記載の3次元情報復元装置において、
前記距離推定部は、
前記運動推定部から出力される各時刻における動き情報を累積し、累積結果が所定値を超えるごとに、画像更新指令を出力する画像更新判定部をさらに備え、
前記画像更新判定部から前記画像更新指令が出力されるごとに今回時刻の距離情報を推定する
ことを特徴とする3次元情報復元装置。
【請求項5】
請求項3に記載の3次元情報復元装置において、
前記距離推定部は、
前記対応点探索部からの前記複数の仮定した距離情報に対応するそれぞれの評価値に基づいて、最も一致度の高い評価値に対応する距離情報の近傍における評価値の曲率から距離信頼度を判定する距離信頼度算出部をさらに備え、
前記運動推定部は、
前記時空間微分処理部が出力する空間微分による前記微分画像を所定値と比較することにより前記微分画像の微分信頼度を算出する微分信頼度算出部をさらに備え、
前記運動誤差推定部は、前記微分信頼度算出部が出力する前記微分信頼度および前記距離信頼度算出部が出力する前記距離信頼度を受けて、時空間微分されたそれぞれの前記微分画像において、前記微分信頼度が高く、かつ前記距離信頼度が高い領域を特定して前記動き情報誤差量を算出する
ことを特徴とする3次元情報復元装置。
【請求項6】
請求項3に記載の3次元情報復元装置において、
動画像入力データに基づいて複数の解像度レベルを有する1組のピラミッド画像データを生成するピラミッド画像生成部をさらに備え、
前記運動推定部は、
前記ピラミッド画像生成部からの前記1組のピラミッド画像が記憶される第3の画像記憶部をさらに備え、
前記1組のピラミッド画像の解像度レベルの最も低い画像データに対する動き情報を推定し、その後、前記動き情報を今回時刻の仮定した動き情報の初期値として、次に解像度レベルの低い画像データに対する動き情報を推定する処理を繰り返すことにより解像度レベルの最も高い画像データに対する動き情報を推定し、
前記距離推定部は、
前記ピラミッド画像生成部からの前記1組のピラミッド画像が記憶される第4の画像記憶部をさらに備え、
前記1組のピラミッド画像の解像度レベルの最も低い画像データに対する距離情報を推定し、その後、前記距離情報の近傍範囲を前記複数の今回時刻の仮定した距離情報の初期値として、次に解像度レベルの低い画像データに対する距離情報を推定する処理を繰り返すことにより解像度レベルの最も高い画像データに対する距離情報を推定する
ことを特徴とする3次元情報復元装置。
【請求項7】
請求項3に記載の3次元情報復元装置において、
前記運動推定部は、
外部の動きセンサにより計測されたカメラの動き情報と、前記運動誤差修正部で推定された前記動き情報とに基づいて絶対運動量に換算する補正係数を算出し、逐次推定される前記動き情報に前記補正係数を掛け合わせることにより絶対運動量を逐次算出する絶対運動量換算部をさらに備え、
前記距離推定部は、
前記絶対運動量換算部から前記補正係数を受けて、前記対応点探索部により逐次推定される距離情報に前記補正係数を掛け合わせることにより絶対距離を逐次算出する絶対距離換算部をさらに備える
ことを特徴とする3次元情報復元装置。
【請求項8】
請求項3に記載の3次元情報復元装置において、
前記距離推定部は、
外部の距離センサにより計測された撮影対象の距離情報と、前記対応点探索部で推定された前記距離情報とに基づいて絶対距離に換算する補正係数を算出し、逐次推定される前記距離情報に前記補正係数を掛け合わせることにより絶対距離を逐次算出する絶対距離換算部をさらに備え、
前記運動推定部は、
前記絶対距離換算部から前記補正係数を受けて、前記運動誤差修正部により逐次推定される動き情報に前記補正係数を掛け合わせることにより絶対運動量を逐次算出する絶対運動量換算部をさらに備える
ことを特徴とする3次元情報復元装置。
【請求項1】
撮影対象を撮影したカメラの動き情報を動画像入力データに基づいて逐次推定する運動推定部と、
撮影対象までの距離情報を動画像入力データに基づいて逐次推定する距離推定部と
を備えた3次元情報復元装置であって、
前記運動推定部は、前記距離推定部で推定された前回時刻の距離情報と、前記動画像入力データとに基づいて今回時刻の動き情報を推定し、
前記距離推定部は、前記運動推定部で推定された前記今回時刻の動き情報と、前記動画像入力データとに基づいて今回時刻の距離情報を推定する
ことを特徴とする3次元情報復元装置。
【請求項2】
請求項1に記載の3次元情報復元装置において、
前記運動推定部は、前記動画像入力データが逐次記憶される第1の画像記憶部を有し、今回時刻の動画像入力データと、今回時刻の仮定した動き情報と、前記距離推定部で推定された前回時刻の距離情報とに基づいて前回時刻のカメラ位置から見た動画像入力データを第1変換後の動画像入力データとして生成し、前記第1変換後の動画像入力データと前記第1の画像記憶部に記憶された前回時刻の動画像入力データとの明度誤差が最小となるように前記今回時刻の仮定した動き情報を逐次修正することにより今回時刻の動き情報を推定し、
前記距離推定部は、前記動画像入力データが逐次記憶された第2の画像記憶部を有し、複数の今回時刻の仮定した距離情報のそれぞれに対して、前記第2の画像記憶部に記憶された前回時刻の動画像入力データと、前記運動推定部で推定された前記今回時刻の動き情報とに基づいて複数の第2変換後の動画像入力データを生成し、前記複数の第2変換後の動画像入力データの中から、今回時刻の動画像入力データとの明度の一致度が最大となる第2変換後の動画像入力データを特定し、特定した第2変換後の動画像入力データに対応する今回時刻の仮定した距離情報を今回時刻の距離情報として推定する
ことを特徴とする3次元情報復元装置。
【請求項3】
請求項2に記載の3次元情報復元装置において、
前記運動推定部は、
前記今回時刻の仮定した動き情報を出力する運動誤差修正部と、
前記今回時刻の動画像入力データと、前記今回時刻の仮定した動き情報と、前記距離推定部で推定された前回時刻の距離情報とに基づいて前記第1変換後の動画像入力データを生成する第1の座標変換部と、
前記第1の画像記憶部に記憶された前回時刻の動画像入力データに基づいて前記前回時刻の動画像入力データの空間微分による微分画像を算出するとともに、前記第1変換後の動画像入力データと前記第1の画像記憶部に記憶された前回時刻の動画像入力データとの差分に基づいて、時間微分による微分画像を算出する時空間微分処理部と、
時空間微分されたそれぞれの前記微分画像と前記前回時刻の距離情報とに基づいて、前記第1変換後の動画像入力データと前記前回時刻の動画像入力データとの明度誤差が最小となる値を動き情報誤差量として算出する運動誤差推定部と
を備え、
前記運動誤差修正部は、前記運動誤差推定部で算出された前記動き情報誤差量を加算することにより前記今回時刻の仮定した動き情報を更新して前記第1の変換部に出力し、その後、更新した今回時刻の仮定した動き情報に対応して前記運動誤差推定部で算出された新たな動き情報誤差量を受信することにより、前記更新した今回時刻の仮定した動き情報をさらに更新する処理を所定回数繰り返すことにより最終的に更新した今回時刻の仮定した動き情報を今回時刻の動き情報として推定し、
前記距離推定部は、
前記複数の今回時刻の仮定した距離情報を出力する対応点探索部と、
前記複数の今回時刻の仮定した距離情報のそれぞれに対して、前記第2の画像記憶部に記憶された前記前回時刻の動画像入力データと、前記運動推定部で推定された前記今回時刻の動き情報とに基づいて前記複数の第2変換後の動画像入力データを生成する第2の座標変換部と、
前記複数の第2変換後の動画像入力データのそれぞれに対して、前記今回時刻の動画像入力データとの明度の一致度に基づく複数の評価値を算出するマッチング処理部と
を備え、
前記対応点探索部は、前記マッチング処理部で算出された前記複数の評価値の中から最も一致度の高い評価値に対応する今回時刻の仮定した距離情報を今回時刻の距離情報として推定する
ことを特徴とする3次元情報復元装置。
【請求項4】
請求項3に記載の3次元情報復元装置において、
前記距離推定部は、
前記運動推定部から出力される各時刻における動き情報を累積し、累積結果が所定値を超えるごとに、画像更新指令を出力する画像更新判定部をさらに備え、
前記画像更新判定部から前記画像更新指令が出力されるごとに今回時刻の距離情報を推定する
ことを特徴とする3次元情報復元装置。
【請求項5】
請求項3に記載の3次元情報復元装置において、
前記距離推定部は、
前記対応点探索部からの前記複数の仮定した距離情報に対応するそれぞれの評価値に基づいて、最も一致度の高い評価値に対応する距離情報の近傍における評価値の曲率から距離信頼度を判定する距離信頼度算出部をさらに備え、
前記運動推定部は、
前記時空間微分処理部が出力する空間微分による前記微分画像を所定値と比較することにより前記微分画像の微分信頼度を算出する微分信頼度算出部をさらに備え、
前記運動誤差推定部は、前記微分信頼度算出部が出力する前記微分信頼度および前記距離信頼度算出部が出力する前記距離信頼度を受けて、時空間微分されたそれぞれの前記微分画像において、前記微分信頼度が高く、かつ前記距離信頼度が高い領域を特定して前記動き情報誤差量を算出する
ことを特徴とする3次元情報復元装置。
【請求項6】
請求項3に記載の3次元情報復元装置において、
動画像入力データに基づいて複数の解像度レベルを有する1組のピラミッド画像データを生成するピラミッド画像生成部をさらに備え、
前記運動推定部は、
前記ピラミッド画像生成部からの前記1組のピラミッド画像が記憶される第3の画像記憶部をさらに備え、
前記1組のピラミッド画像の解像度レベルの最も低い画像データに対する動き情報を推定し、その後、前記動き情報を今回時刻の仮定した動き情報の初期値として、次に解像度レベルの低い画像データに対する動き情報を推定する処理を繰り返すことにより解像度レベルの最も高い画像データに対する動き情報を推定し、
前記距離推定部は、
前記ピラミッド画像生成部からの前記1組のピラミッド画像が記憶される第4の画像記憶部をさらに備え、
前記1組のピラミッド画像の解像度レベルの最も低い画像データに対する距離情報を推定し、その後、前記距離情報の近傍範囲を前記複数の今回時刻の仮定した距離情報の初期値として、次に解像度レベルの低い画像データに対する距離情報を推定する処理を繰り返すことにより解像度レベルの最も高い画像データに対する距離情報を推定する
ことを特徴とする3次元情報復元装置。
【請求項7】
請求項3に記載の3次元情報復元装置において、
前記運動推定部は、
外部の動きセンサにより計測されたカメラの動き情報と、前記運動誤差修正部で推定された前記動き情報とに基づいて絶対運動量に換算する補正係数を算出し、逐次推定される前記動き情報に前記補正係数を掛け合わせることにより絶対運動量を逐次算出する絶対運動量換算部をさらに備え、
前記距離推定部は、
前記絶対運動量換算部から前記補正係数を受けて、前記対応点探索部により逐次推定される距離情報に前記補正係数を掛け合わせることにより絶対距離を逐次算出する絶対距離換算部をさらに備える
ことを特徴とする3次元情報復元装置。
【請求項8】
請求項3に記載の3次元情報復元装置において、
前記距離推定部は、
外部の距離センサにより計測された撮影対象の距離情報と、前記対応点探索部で推定された前記距離情報とに基づいて絶対距離に換算する補正係数を算出し、逐次推定される前記距離情報に前記補正係数を掛け合わせることにより絶対距離を逐次算出する絶対距離換算部をさらに備え、
前記運動推定部は、
前記絶対距離換算部から前記補正係数を受けて、前記運動誤差修正部により逐次推定される動き情報に前記補正係数を掛け合わせることにより絶対運動量を逐次算出する絶対運動量換算部をさらに備える
ことを特徴とする3次元情報復元装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2006−337075(P2006−337075A)
【公開日】平成18年12月14日(2006.12.14)
【国際特許分類】
【出願番号】特願2005−159249(P2005−159249)
【出願日】平成17年5月31日(2005.5.31)
【出願人】(000006013)三菱電機株式会社 (33,312)
【出願人】(390014306)防衛庁技術研究本部長 (169)
【Fターム(参考)】
【公開日】平成18年12月14日(2006.12.14)
【国際特許分類】
【出願日】平成17年5月31日(2005.5.31)
【出願人】(000006013)三菱電機株式会社 (33,312)
【出願人】(390014306)防衛庁技術研究本部長 (169)
【Fターム(参考)】
[ Back to top ]