JP2012073930A - 画像処理装置、画像処理方法及びプログラム - Google Patents
画像処理装置、画像処理方法及びプログラム Download PDFInfo
- Publication number
- JP2012073930A JP2012073930A JP2010219676A JP2010219676A JP2012073930A JP 2012073930 A JP2012073930 A JP 2012073930A JP 2010219676 A JP2010219676 A JP 2010219676A JP 2010219676 A JP2010219676 A JP 2010219676A JP 2012073930 A JP2012073930 A JP 2012073930A
- Authority
- JP
- Japan
- Prior art keywords
- feature point
- parallax
- candidates
- candidate
- points
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
【課題】複数の視差候補の中から最適な視差を精度よく選択することができる画像処理装置等を提供する。
【解決手段】画像取得部11は、同一被写体について視差のある2つの画像を取得する。特徴点候補取得部12は、画像取得部11により取得された一方の画像から特徴点候補を取得する。視差候補取得部13は、ステレオマッチングを行い、他方の画像から特徴点候補毎の視差候補をそれぞれ取得する。特徴点選択部14は、取得された特徴点候補の中から所定の条件を満たすものを特徴点として選択する。隣接点取得部15は、特徴点選択部14により選択された特徴点に隣接する隣接点を、特徴点毎にそれぞれ取得する。視差決定部16は、特徴点と、視差候補と、隣接点と、に基づいて、確率伝搬法によるアルゴリズムを用いた処理を実行し、各特徴点に対応する視差を決定する。
【選択図】図3
【解決手段】画像取得部11は、同一被写体について視差のある2つの画像を取得する。特徴点候補取得部12は、画像取得部11により取得された一方の画像から特徴点候補を取得する。視差候補取得部13は、ステレオマッチングを行い、他方の画像から特徴点候補毎の視差候補をそれぞれ取得する。特徴点選択部14は、取得された特徴点候補の中から所定の条件を満たすものを特徴点として選択する。隣接点取得部15は、特徴点選択部14により選択された特徴点に隣接する隣接点を、特徴点毎にそれぞれ取得する。視差決定部16は、特徴点と、視差候補と、隣接点と、に基づいて、確率伝搬法によるアルゴリズムを用いた処理を実行し、各特徴点に対応する視差を決定する。
【選択図】図3
Description
本発明は、被写体を適切に3次元モデリングするための技術に関する。
人間、動物、あるいは、美術品などの被写体を、右眼用撮像部と左目用撮像部とを備えるステレオカメラを用いて撮像し、撮像により得られた右眼用画像と左眼用画像とに基づいて、被写体の3次元モデルを構築する技術が知られている。
具体的には、右眼用画像と左眼用画像とに対してステレオマッチングが実施され、被写体上の同じ点を表している対応点が求められる。次に、求められた対応点と、右眼用撮像部と左眼用撮像部との間隔と、に基づいて、三角測量の要領で、ステレオカメラと対応点との距離(撮影距離)が求められる。そして、求められた撮影距離から対応点の3次元座標が求められることで、被写体の3次元モデルが構築される。このような技術は、例えば、特許文献1や非特許文献1に開示されている。
デジタル画像処理、2006年3月1日発行、CG−ARTS協会
従来、ステレオマッチングでは、テンプレートマッチングなどにより、類似度が最も高い(即ち、相違度が最も低い)対応点の位置を探索することで視差を求めている。そして、類似度が所定閾値より低い場合は、点対応が取れないものとして、当該特徴点を除外している。
ところで、ノイズやオクルージョンなどによって類似度の精度が低下することもあるが、そのような場合では、類似度の最も高い視差が正しい視差であるとは必ずしもいえない。しかし、類似度の最も高いものと近い類似度をもつ視差が複数ある場合に、どの視差が最も適切であるかを判定することは、従来においては困難であった。
そのため、従来では、類似度の最も高いものと二番目に高いものの差が、予め決められた閾値以上でない場合には、点対応が取れないものとして、当該特徴点を除外していた。つまり、他の視差に対して類似度が圧倒的に高い視差が選択されていた。
例えば、位置精度を高めることを目的として、上記条件を厳しくすると、特徴点の数が減ってしまい、被写体の形状情報が欠損してしまう。一方、上記条件を緩くすると、正しくない視差により位置精度が低下、つまりモデリング精度が悪化するおそれがある。
本発明は、上記問題に鑑みてなされたものであり、複数の視差候補の中から最適な視差を精度よく選択することができる画像処理装置、画像処理方法及びプログラムを提供することを目的とする。
本発明の第1の観点に係る画像処理装置は、
同一被写体について視差のある2以上の画像を取得する画像取得手段と、
該画像取得手段が取得した画像の一方から特徴点候補を取得する特徴点候補取得手段と、
該特徴点候補取得手段により取得された特徴点候補と、前記画像の他方と、に基づいて、ステレオマッチングを行い、前記画像の他方から前記特徴点候補毎の視差候補をそれぞれ取得する視差候補取得手段と、
前記特徴点候補の中から所定の条件を満たすものを特徴点として選択する特徴点選択手段と、
該特徴点選択手段により選択された前記特徴点に隣接する隣接点を、前記特徴点毎にそれぞれ取得する隣接点取得手段と、
前記特徴点と、前記視差候補と、前記隣接点と、に基づいて、確率伝搬法によるアルゴリズムを用いた処理を実行し、各特徴点に対応する視差を決定する視差決定手段と、を備える、ことを特徴とする。
同一被写体について視差のある2以上の画像を取得する画像取得手段と、
該画像取得手段が取得した画像の一方から特徴点候補を取得する特徴点候補取得手段と、
該特徴点候補取得手段により取得された特徴点候補と、前記画像の他方と、に基づいて、ステレオマッチングを行い、前記画像の他方から前記特徴点候補毎の視差候補をそれぞれ取得する視差候補取得手段と、
前記特徴点候補の中から所定の条件を満たすものを特徴点として選択する特徴点選択手段と、
該特徴点選択手段により選択された前記特徴点に隣接する隣接点を、前記特徴点毎にそれぞれ取得する隣接点取得手段と、
前記特徴点と、前記視差候補と、前記隣接点と、に基づいて、確率伝搬法によるアルゴリズムを用いた処理を実行し、各特徴点に対応する視差を決定する視差決定手段と、を備える、ことを特徴とする。
上記構成の画像処理装置において、
前記視差候補取得手段は、前記ステレオマッチングで得られた複数の対応点の中から、前記視差候補を、当該特徴点候補との相違度が予め設定した第1の閾値以下となるものの下位から予め設定した視差候補最大数を限度として選択するか、又は、当該特徴点候補との類似度が予め設定した第2の閾値以上となるものの上位から前記視差候補最大数を限度として選択する、ようにしてもよい。
前記視差候補取得手段は、前記ステレオマッチングで得られた複数の対応点の中から、前記視差候補を、当該特徴点候補との相違度が予め設定した第1の閾値以下となるものの下位から予め設定した視差候補最大数を限度として選択するか、又は、当該特徴点候補との類似度が予め設定した第2の閾値以上となるものの上位から前記視差候補最大数を限度として選択する、ようにしてもよい。
また、上記構成の画像処理装置において、
前記視差候補取得手段は、前記ステレオマッチングで得られた複数の対応点の中から、当該特徴点候補との相違度が極小値となる対応点、又は、当該特徴点候補との類似度が極大値となる対応点を視差候補として選択する、ようにしてもよい。
前記視差候補取得手段は、前記ステレオマッチングで得られた複数の対応点の中から、当該特徴点候補との相違度が極小値となる対応点、又は、当該特徴点候補との類似度が極大値となる対応点を視差候補として選択する、ようにしてもよい。
また、上記構成の画像処理装置において、
前記特徴点選択手段は、前記視差候補取得手段により取得された前記特徴点候補毎の各視差候補において、対応する特徴点候補との相違度が、前記第1の閾値より小さい第3の閾値を下回るものが存在しない場合、又は、当該特徴点候補との類似度が、前記第2の閾値より大きい第4の閾値を上回るものが存在しない場合には、当該特徴点候補を特徴点として選択しない、ようにしてもよい。
前記特徴点選択手段は、前記視差候補取得手段により取得された前記特徴点候補毎の各視差候補において、対応する特徴点候補との相違度が、前記第1の閾値より小さい第3の閾値を下回るものが存在しない場合、又は、当該特徴点候補との類似度が、前記第2の閾値より大きい第4の閾値を上回るものが存在しない場合には、当該特徴点候補を特徴点として選択しない、ようにしてもよい。
本発明の第2の観点に係る画像処理方法は、
同一被写体について視差のある2以上の画像を取得する画像取得ステップと、
該画像取得ステップで取得された画像の一方から特徴点候補を取得する特徴点候補取得ステップと、
該特徴点候補取得ステップで取得された特徴点候補と、前記画像の他方と、に基づいて、ステレオマッチングを行い、前記画像の他方から前記特徴点候補毎の視差候補をそれぞれ取得する視差候補取得ステップと、
前記特徴点候補の中から所定の条件を満たすものを特徴点として選択する特徴点選択ステップと、
該特徴点選択ステップで選択された前記特徴点に隣接する隣接点を、前記特徴点毎にそれぞれ取得する隣接点取得ステップと、
前記特徴点と、前記視差候補と、前記隣接点と、に基づいて、確率伝搬法によるアルゴリズムを用いた処理を実行し、各特徴点に対応する視差を決定する視差決定ステップと、を有する、ことを特徴とする。
同一被写体について視差のある2以上の画像を取得する画像取得ステップと、
該画像取得ステップで取得された画像の一方から特徴点候補を取得する特徴点候補取得ステップと、
該特徴点候補取得ステップで取得された特徴点候補と、前記画像の他方と、に基づいて、ステレオマッチングを行い、前記画像の他方から前記特徴点候補毎の視差候補をそれぞれ取得する視差候補取得ステップと、
前記特徴点候補の中から所定の条件を満たすものを特徴点として選択する特徴点選択ステップと、
該特徴点選択ステップで選択された前記特徴点に隣接する隣接点を、前記特徴点毎にそれぞれ取得する隣接点取得ステップと、
前記特徴点と、前記視差候補と、前記隣接点と、に基づいて、確率伝搬法によるアルゴリズムを用いた処理を実行し、各特徴点に対応する視差を決定する視差決定ステップと、を有する、ことを特徴とする。
本発明の第3の観点に係るプログラムは、
画像処理装置を制御するコンピュータに、
同一被写体について視差のある2以上の画像を取得する画像取得機能と、
該画像取得機能で取得された画像の一方から特徴点候補を取得する特徴点候補取得機能と、
該特徴点候補取得機能で取得された特徴点候補と、前記画像の他方と、に基づいて、ステレオマッチングを行い、前記画像の他方から前記特徴点候補毎の視差候補をそれぞれ取得する視差候補取得機能と、
前記特徴点候補の中から所定の条件を満たすものを特徴点として選択する特徴点選択機能と、
該特徴点選択機能で選択された前記特徴点に隣接する隣接点を、前記特徴点毎にそれぞれ取得する隣接点取得機能と、
前記特徴点と、前記視差候補と、前記隣接点と、に基づいて、確率伝搬法によるアルゴリズムを用いた処理を実行し、各特徴点に対応する視差を決定する視差決定機能と、を実現させる、ことを特徴とする。
画像処理装置を制御するコンピュータに、
同一被写体について視差のある2以上の画像を取得する画像取得機能と、
該画像取得機能で取得された画像の一方から特徴点候補を取得する特徴点候補取得機能と、
該特徴点候補取得機能で取得された特徴点候補と、前記画像の他方と、に基づいて、ステレオマッチングを行い、前記画像の他方から前記特徴点候補毎の視差候補をそれぞれ取得する視差候補取得機能と、
前記特徴点候補の中から所定の条件を満たすものを特徴点として選択する特徴点選択機能と、
該特徴点選択機能で選択された前記特徴点に隣接する隣接点を、前記特徴点毎にそれぞれ取得する隣接点取得機能と、
前記特徴点と、前記視差候補と、前記隣接点と、に基づいて、確率伝搬法によるアルゴリズムを用いた処理を実行し、各特徴点に対応する視差を決定する視差決定機能と、を実現させる、ことを特徴とする。
本発明によれば、複数の視差候補の中から最適な視差を精度よく選択することができる。
以下、本発明の一実施形態について、図面を参照して説明する。本実施形態では、本発明をデジタル式のステレオカメラに適用した例を示す。
図1(a)、(b)は、本実施形態に係るステレオカメラ1の外観図である。図1(a)に示すように、このステレオカメラ1の前面には、レンズ111Aと、レンズ111Bと、ストロボ発光部400と、が設けられ、上面には、シャッタボタン331が設けられている。レンズ111Aとレンズ111Bは、シャッタボタン331が上になる方向で、ステレオカメラ1を水平にした場合に、各々の中心位置が水平方向で同一線上となるように、所定の間隔を隔てて配置されている。ストロボ発光部400は、必要に応じて被写体に向けてストロボ光を照射する。シャッタボタン331は、ユーザからのシャッタ動作指示を受け付けるためのボタンである。
ステレオカメラ1の背面には、図1(b)に示すように、表示部310と、操作キー332と、電源ボタン333と、が設けられている。表示部310は、例えば、液晶表示装置等から構成され、ステレオカメラ1を操作するために必要な種々の画面や、撮影時のライブビュー画像、撮像画像等を表示するための電子ビューファインダとして機能する。
操作キー332は、十字キーや決定キー等を含み、モード切替や表示切替等、ユーザからの各種の操作を受け付ける。電源ボタン333は、ステレオカメラ1の電源のオン・オフをユーザから受け付けるためのボタンである。
図2は、ステレオカメラ1の電気的構成を示すブロック図である。図2に示すように、ステレオカメラ1は、第1撮像部100Aと、第2撮像部100Bと、データ処理部200と、I/F部300と、ストロボ発光部400と、を備える。
第1撮像部100A及び第2撮像部100Bは、それぞれ被写体を撮像する機能を担う部分である。ステレオカメラ1は、いわゆる複眼カメラであり、このように2つの撮像部を有する構成であるが、第1撮像部100Aと第2撮像部100Bは同一の構成である。以下、第1撮像部100Aについての構成には参照符号の末尾に「A」を付し、第2撮像部100Bについての構成には参照符号の末尾に「B」を付す。
図2に示すように、第1撮像部100A(第2撮像部100B)は、光学装置110A(110B)やイメージセンサ部120A(120B)等から構成されている。光学装置110A(110B)は、例えば、レンズ、絞り機構、シャッタ機構等を含み、撮像に係る光学的動作を行う。即ち、光学装置110A(110B)の動作により、入射光が集光されるとともに、焦点距離、絞り、シャッタスピード等といった、画角やピント、露出等にかかる光学的要素の調整がなされる。
なお、光学装置110A(110B)に含まれるシャッタ機構はいわゆるメカニカルシャッタであり、イメージセンサの動作のみでシャッタ動作をおこなう場合には、光学装置110A(110B)にシャッタ機構が含まれていなくてもよい。また、光学装置110A(110B)は、後述する制御部210による制御によって動作する。
イメージセンサ部120A(120B)は、光学装置110A(110B)によって集光された入射光に応じた電気信号を生成する。イメージセンサ部120A(120B)は、例えば、CCD(Charge Coupled Device)やCMOS(Complementally Metal Oxide Semiconductor)等のイメージセンサから構成され、光電変換を行うことで、受光した光の強度に応じた電気信号を生成し、生成した電気信号をデータ処理部200に出力する。
上述したように、第1撮像部100Aと第2撮像部100Bは同一の構成である。より詳細には、レンズの焦点距離fやF値、絞り機構の絞り範囲、イメージセンサのサイズや画素数、配列、画素面積等の各仕様が全て同一である。第1撮像部100Aと第2撮像部100Bとを同時に動作させた場合、同一被写体について2つの画像(ペア画像)が撮像されるが、光軸位置は横方向で異なっている。
データ処理部200は、第1撮像部100A及び第2撮像部100Bによる撮像動作によって生成された電気信号を処理し、撮像画像を示すデジタルデータを生成すると共に、撮像画像に対する画像処理等を行う。データ処理部200は、制御部210、画像処理部220、画像メモリ230、画像出力部240、記憶部250、外部記憶部260等から構成される。
制御部210は、例えば、CPU(Central Processing Unit)等のプロセッサや、RAM(Random Access Memory)等の主記憶装置等から構成され、記憶部250等に格納されているプログラムを実行することで、ステレオカメラ1の各部を制御する。また、本実施形態では、所定のプログラムを実行することで、後述する3次元モデリング処理等にかかる機能が制御部210によって実現する。
画像処理部220は、例えば、ADC(Analog-Digital Converter)、バッファメモリ、画像処理用のプロセッサ(いわゆる、画像処理エンジン)等から構成され、イメージセンサ部120A及び120Bによって生成された電気信号に基づいて、撮像画像を示すデジタルデータを生成する。即ち、イメージセンサ部120A(120B)から出力されたアナログ電気信号をADCがデジタル信号に変換して順次バッファメモリに格納すると、バッファされたデジタルデータに対し、画像処理エンジンが、いわゆる現像処理等を行うことで、画質の調整やデータ圧縮等を行う。
画像メモリ230は、例えば、RAMやフラッシュメモリ等の記憶装置から構成され、画像処理部220によって生成された撮像画像データや、制御部210によって処理される画像データ等を一時的に保存する。
画像出力部240は、例えば、RGB信号を生成する回路等から構成され、画像メモリ230に格納された画像データをRGB信号等に変換して表示画面(表示部310等)に出力する。
記憶部250は、例えば、ROM(Read Only Memory)やフラッシュメモリ等の記憶装置から構成され、ステレオカメラ1の動作に必要なプログラムやデータ等を格納する。本実施形態では、制御部210等が実行する動作プログラムや、その実行時に必要となるパラメータや演算式等のデータが記憶部250に格納されているものとする。
外部記憶部260は、例えば、メモリカード等といった、ステレオカメラ1に着脱可能な記憶装置から構成され、ステレオカメラ1で撮像した画像データ、3次元モデルデータ等を格納する。
I/F部300は、ステレオカメラ1と、ユーザあるいは外部装置との間のインタフェースに係る機能を担う処理部であり、表示部310、外部I/F部320、操作部330等から構成される。
表示部310は、上述したように、例えば、液晶表示装置等から構成され、ユーザがステレオカメラ1を操作するために必要な種々の画面や、撮影時のライブビュー画像、撮像画像等を表示出力する。本実施形態では、画像出力部240からの画像信号(RGB信号)等に基づいて撮像画像等の表示出力が行われる。
外部I/F部320は、例えば、USB(Universal Serial Bus)コネクタやビデオ出力端子等から構成され、外部のコンピュータ装置への画像データの出力や外部モニタ装置への撮像画像の表示出力等を行う。
操作部330は、ステレオカメラ1の外面上に設けられている各種ボタン等によって構成され、ユーザによる操作に応じた入力信号を生成して制御部210に送出する。操作部330を構成するボタンには、上述したように、シャッタボタン331、操作キー332、電源ボタン333等が含まれる。
ストロボ発光部400は、例えば、キセノンランプ(キセノンフラッシュ)により構成される。ストロボ発光部400は、制御部210の制御に従って被写体にストロボ光を照射する。
以上、本発明を実現するために必要となるステレオカメラ1の構成について説明したが、ステレオカメラ1は、このほかにも、一般的なステレオカメラの機能を実現するための構成を備えているものとする。
続いて、ステレオカメラ1の動作の内、ステレオ撮影モードに係る動作について説明する。
図3は、ステレオカメラ1における、ステレオ撮影モードに係る動作を実現するための主要な機能構成を示すブロック図である。この動作において、図3に示すように、ステレオカメラ1は、画像取得部11、特徴点候補取得部12、視差候補取得部13、特徴点選択部14、隣接点取得部15、視差決定部16と、を備える。
画像取得部11は、同一被写体について視差のある2つの画像(ペア画像)を取得する。特徴点候補取得部12は、画像取得部11により取得された一方の画像(例えば、第1撮像部100Aによる撮像の結果得られた画像)から特徴点の候補(特徴点候補)を取得する。視差候補取得部13は、ステレオマッチングを行い、他方の画像(例えば、第2撮像部100Bによる撮像の結果得られた画像)から特徴点候補毎の視差候補をそれぞれ取得する。
特徴点選択部14は、取得された特徴点候補の中から所定の条件を満たすものを特徴点として選択する。隣接点取得部15は、特徴点選択部14により選択された特徴点に隣接する特徴点(隣接点)を、特徴点毎にそれぞれ取得する。視差決定部16は、特徴点と、視差候補と、隣接点と、に基づいて、確率伝搬法によるアルゴリズムを用いた処理を実行し、各特徴点に対応する視差を決定する。
図4は、ステレオ撮影モードに係る動作時の処理(3次元モデリング処理)の手順を示すフローチャートである。この3次元モデリング処理は、ユーザが、操作キー332等の操作部330を操作することで、ステレオ撮影モードが選択されたことを契機に開始される。
ステップS101では、制御部210により、終了イベントの発生有無が判定される。終了イベントは、例えば、ユーザにより、再生モード等へのモード移行操作が行われた場合や、ステレオカメラ1の電源がオフされた場合等に発生する。
終了イベントが発生している場合(ステップS101;YES)、本処理は終了する。一方、終了イベントが発生していない場合(ステップS101;NO)、制御部210は、一方の撮像部(例えば、第1撮像部100A)を介して得られた画像データに基づく画像(いわゆる、ライブビュー画像)を表示部310に表示する(ステップS102)。
ステップS103では、制御部210は、シャッタボタン331が押下されているか否かを判定する。シャッタボタン331が押下されていない場合(ステップS103;NO)、制御部210は、再度、ステップS101の処理を実行する。一方、シャッタボタン331が押下されている場合(ステップS103;YES)、制御部210は、第1撮像部100A、第2撮像部100B、画像処理部220を制御して、被写体を撮像する(ステップS104)。その結果、2枚の平行同位画像(ペア画像)が得られる。取得されたペア画像は、例えば、画像メモリ230に保存される。なお、以降の説明において、ペア画像の内、第1撮像部100Aによる撮像の結果得られた画像を画像A、第2撮像部100Bによる撮像の結果得られた画像を画像Bとする。
制御部210は、画像メモリ230に保存されているペア画像に基づいて、3次元モデル生成処理を実行する(ステップS105)。
ここで、図5に示すフローチャートを参照して、3次元モデル生成処理について説明する。なお、3次元モデル生成処理は、一組のペア画像に基づいて3次元モデルを生成する処理である。つまり、3次元モデル生成処理は、一のカメラ位置から見た3次元モデルを生成する処理と考えることができる。
まず、制御部210は、特徴点候補を取得する(ステップS201)。特徴点候補は、一方の画像(例えば、画像A)から抽出して取得する。本実施形態では、特徴点候補は、コーナー点ではなく、画像上に敷き詰めた所定の大きさの正三角形の頂点など、機械的かつ均等に割り当てられるようにする。これは、コーナー点では、配置が偏るため、3次元モデルの品質(滑らかさ等)が低下する可能性が高くなるからである。また、均等に割り当てることで、処理時間の短縮化も図れる。
次に、制御部210は、ステレオマッチングを実行し(ステップS202)、画像Aの各特徴点候補に対応する点(対応点)を画像Bから探す。具体的には、制御部210は、ペア画像間でエピ線拘束を考慮した上で、テンプレートマッチングにより、当該特徴点候補から所定の視差範囲における対応点を検出し、検出した各対応点との相違度(あるいは類似度)を求める。テンプレートマッチングには、例えば残差絶対値和(SAD)、残差平方和(SSD)、正規化相関(NCCやZNCC)や方向符号相関等、様々な既知の技法が採用可能である。
制御部210は、特徴点候補毎に、上記検出した複数の対応点の中から、視差として採用する可能性のある候補(視差候補)を選択する(ステップS203)。従来のステレオマッチングでは、相違度が最も低い(あるいは類似度が最も高い)視差を選択していたが、本発明では、最適な視差を選択できるようにするため、複数の視差を視差候補として選択する。実際には、ステップS202で検出された複数の対応点の中から、当該特徴点候補との相違度が所定の閾値(第1の閾値)以下となるものの下位から予め設定した視差候補最大数を限度として選択する。あるいは、類似度が所定の閾値(第2の閾値)以上となるものの上位から視差候補最大数を限度として選択する。
また、制御部210は、上記の選択において、極値(相違度においては極小値、類似度においては極大値)となる視差候補を選択する。図6は、所定の視差範囲における、ある特徴点と各対応点との相違度を表したグラフである。図6において、黒丸は、視差候補を示している。ここで、図6(b)に示すように、極値のものに限定しない場合には、正しくない視差候補と、その視差候補に近似する視差候補で上記の視差候補最大数分の枠が占有されてしまい、最も適した視差が候補から漏れてしまう事態が発生する可能性がある。そうすると、モデリング精度が悪化してしまうおそれもある。特に、テクスチャがぼやけ気味な箇所でかかる現象が発生しやすいといえる。
本実施形態では、図6(a)に示すように、選択する視差候補を極値のものに限定するため、上記のような問題を回避することができる。
次に、制御部210は、ステップS201で取得した特徴点候補の中から特徴点の選択を行う(ステップS204)。ここでは、単純に、ステップS203の処理の結果、視差候補がない特徴点候補の削除を行う。つまり削除されなかったものが選択された特徴点となる。
次に、制御部210は、グラフの作成を行う(ステップS205)。ここでは、ステップS204で選択した各特徴点に対し、それぞれ隣接した辺を求めてグラフを作成する。制御部210は、例えば、ドロネー三角形分割を実行する。この際、辺の長さが所定値以上の場合には、対応する隣接点が存在しないとみなして、この辺を削除するようにするのが好ましい。
制御部210は、上記グラフを作成すると、評価関数の計算を行う(ステップS206)。ここでは、ステップS205で作成した各特徴点におけるグラフの各辺に対して、例えば、下記の式(1)のようなギブス分布による確率を与える式を計算する。式(1)において、Wは評価関数、iは特徴点、jは隣接点、dは視差、mは相違度、cは特徴点に接続される辺の数、waはマッチングの重み付け係数、wbは視差の差に対する重み付け係数である。式(1)は、iとjの視差候補の組み合わせ分計算する必要がある。つまりグラフの辺毎に評価関数行列Wi,jを持つ。
次に、制御部210は、確率伝搬法に基づく処理を実行する(ステップS207)。ここで、図7に示すフローチャートを参照して、確率伝搬法に基づく処理について説明する。各特徴点の各視差候補を与えた場合のグラフ全体の尤度(確率)は、辺毎に式(1)を計算したものを全て掛け合わせたものになる。グラフ全体の尤度が最大になる視差候補の組み合わせが求めるべき視差である。しかし、視差候補の組み合わせは膨大であり直接解を求めることが事実上不可能である。このため、本発明では、確率伝搬法によるアルゴリズムを用いて各特徴点の視差候補の周辺確率を計算することで解を求める。
確率伝搬法では、グラフの辺の頂点の一方から他方へと向かうメッセージというものを求める。そして、ある頂点の周辺確率はその頂点に向かうメッセージを掛け合わせることで計算することができる。メッセージの総数はグラフの辺の数の倍あり、各メッセージの要素数は向かう頂点の状態数に等しい。
先ず、制御部210は、メッセージの初期化を行う(ステップS301)。例えば、各メッセージの要素に状態数の逆数を設定する。次に、制御部210は、更新前のメッセージと、図5のステップS206にて計算した評価関数行列を使って、メッセージの更新を行う(ステップS302)。各々のメッセージの更新は独立しているので、処理の並列化が容易であり、処理の高速化がしやすい。これは確率伝搬法の利点である。
制御部210は、メッセージが収束したか否かの判定(ステップS303)と、所定回数メッセージを更新したか否かの判定(ステップS304)を行い、メッセージ更新を終了するか否かを判定する。一般的に、メッセージの更新を繰り返すと収束するが、極まれに一部のメッセージが収束しない場合があるので、本実施形態では、更新の上限回数を設けている。
メッセージ更新を終了しない場合(ステップS303でNOかつステップS304でNO)、制御部210は、ステップS302の処理に戻り、メッセージの更新を行う。
一方、メッセージが収束した場合(ステップS303でYES)や所定回数メッセージを更新した場合(ステップS304でYES)、制御部210は、メッセージの更新を終了し、各特徴点の周辺確率、つまり、視差候補の確率計算を行う(ステップS305)。
図5のフローに戻り、上記の確率伝搬法に基づく処理を終了すると、制御部210は、各特徴点における視差の決定を行う(ステップS208)。ここでは、制御部210は、上記の確率伝播法に基づく処理の結果に基づいて、各特徴点において周辺確率が最も高い視差候補を、当該特徴点に対応する視差として決定する。
制御部210は、上記決定した各特徴点毎の視差と、第1撮像部100A及び第2撮像部100Bの画角、基線長等と、に基づいて、各特徴点に対応する撮影距離を計算し、各特徴点の位置情報を取得する(ステップS209)。
そして、制御部210は、取得した各特徴点の位置情報に基づいて、ドロネー三角形分割を実行し、ポリゴン化処理を実行する(ステップS210)。この処理により生成されたポリゴン情報(3次元モデルデータ)は、例えば、記憶部250に保存される。制御部210は、ポリゴン化処理を完了すると、3次元モデル生成処理を終了する。
図4に戻り、制御部210は、上記の3次元モデル生成処理(ステップS105)を終了すると、生成した3次元モデルデータを表示する(ステップS106)。具体的には、制御部210は、生成した3次元モデルデータを確認用の2次元データに変換して表示部310に表示する。そして、制御部210は、3次元モデルデータを外部記憶部260等に保存し(ステップS107)、ステップS101の処理に戻る。
上記の3次元モデリング処理によって、正しい視差が選択されるケースの一例を、図8を参照して説明する。図8(a)は、所定の視差範囲における、ある特徴点と各対応点との相違度を表したグラフである。図8(b)は、上記と同一の視差範囲における、上記の特徴点の隣接点と各対応点との相違度を表したグラフである。
図8(a)において、最も相違度が低くなる視差は、P1で示される対応点との間の視差となるが、図8(b)及び(c)を見ると、当該視差は適切でないことが理解できる。本発明においては、複数の視差候補の中から、当該特徴点に隣接する特徴点の視差を考慮して、最も適切な視差(図8(a)のP2で示される対応点との間の視差)が選択される。即ち、本発明では、隣接した特徴点との視差の差がなるべく小さくなるように、加えて、各特徴点のマッチングがなるべく良好になるように視差候補から視差を選択する。このため、各特徴点に正しい視差を与えることが可能となり、密で滑らかな3次元モデルを生成することが可能になる。
なお、本発明は、上記実施形態に限定されず、本発明の要旨を逸脱しない範囲での種々の変更は勿論可能である。
例えば、上記実施形態では、3次元モデル生成処理における視差候補の選択(図5のステップS203)において、極値のものに限定していたが、かかる限定は必須ではない。但し、極値のものに限定することで、上述したような問題が回避できると共に、次のような効果も奏する。つまり、多くの特徴点において視差候補が減少するため、評価関数行列のサイズが小さくなり、その結果、確率伝搬法によるアルゴリズムの計算量が減少する。したがって、処理の高速化が図れる。
また、3次元モデル生成処理における特徴点の選択(図5のステップS204)の際、特徴点候補毎の各視差候補において、対応する特徴点候補との相違度が、上述した第1の閾値より小さい第3の閾値を下回るものが存在しない場合、又は、当該特徴点候補との類似度が、上述した第2の閾値より大きい第4の閾値を上回るものが存在しない場合には、当該特徴点候補を特徴点として選択しないようにしてもよい。一般的に、視差候補選択において、閾値条件をぎりぎり満たす視差候補が僅かばかり存在する場合には、この視差候補の中に正しい視差が含まれていない可能性が高く、ひいては、3次元モデリングの精度低下を招くおそれがある。したがって、上記のように特徴点選択用の閾値を設けることで、そのような場合の特徴点候補を除外することができる。
また、確率伝播法では、不正解のみが含まれる特徴点は、隣接点を通じて、周辺の特徴点に悪影響を与えると共に、メッセージの収束性を低下させるおそれがあるが、上記のように特徴点選択用の閾値を設けることで、かかる問題も回避でき、特徴点自体が減ることと、メッセージの収束性の向上により、処理の高速化が期待できる。
さらに、既存のステレオカメラ等を本発明に係る画像処理装置として機能させることも可能である。即ち、上述した制御部210が実行したようなプログラムを既存のステレオカメラ等に適用し、そのステレオカメラ等のCPU等が当該プログラムを実行することで、当該ステレオカメラ等を本発明に係る画像処理装置として機能させることができる。
このようなプログラムの配布方法は任意であり、例えば、CD−ROM(Compact Disk Read-Only Memory)、DVD(Digital Versatile Disk)、MO(Magneto Optical Disk)、メモリカードなどのコンピュータ読み取り可能な記録媒体に格納して配布してもよいし、インターネットなどの通信ネットワークを介して配布してもよい。
この場合、上述した本発明に係る機能を、OS(オペレーティングシステム)とアプリケーションプログラムの分担、またはOSとアプリケーションプログラムとの協働により実現する場合などでは、アプリケーションプログラム部分のみを記録媒体等に格納してもよい。
1…ステレオカメラ、11…画像取得部、12…特徴点候補取得部、13…視差候補取得部、14…特徴点選択部、15…隣接点取得部、16…視差決定部、100A…第1撮像部、100B…第2撮像部、110A,110B…光学装置、111A,111B…レンズ、120A,120B…イメージセンサ部、200…データ処理部、210…制御部、220…画像処理部、230…画像メモリ、240…画像出力部、250…記憶部、260…外部記憶部、300…I/F部、310…表示部、320…外部I/F部、330…操作部、331…シャッタボタン、332…操作キー、333…電源ボタン、400…ストロボ発光部
Claims (6)
- 同一被写体について視差のある2以上の画像を取得する画像取得手段と、
該画像取得手段が取得した画像の一方から特徴点候補を取得する特徴点候補取得手段と、
該特徴点候補取得手段により取得された特徴点候補と、前記画像の他方と、に基づいて、ステレオマッチングを行い、前記画像の他方から前記特徴点候補毎の視差候補をそれぞれ取得する視差候補取得手段と、
前記特徴点候補の中から所定の条件を満たすものを特徴点として選択する特徴点選択手段と、
該特徴点選択手段により選択された前記特徴点に隣接する隣接点を、前記特徴点毎にそれぞれ取得する隣接点取得手段と、
前記特徴点と、前記視差候補と、前記隣接点と、に基づいて、確率伝搬法によるアルゴリズムを用いた処理を実行し、各特徴点に対応する視差を決定する視差決定手段と、を備える、
ことを特徴とする画像処理装置。 - 前記視差候補取得手段は、前記ステレオマッチングで得られた複数の対応点の中から、前記視差候補を、当該特徴点候補との相違度が予め設定した第1の閾値以下となるものの下位から予め設定した視差候補最大数を限度として選択するか、又は、当該特徴点候補との類似度が予め設定した第2の閾値以上となるものの上位から前記視差候補最大数を限度として選択する、
ことを特徴とする請求項1に記載の画像処理装置。 - 前記視差候補取得手段は、前記ステレオマッチングで得られた複数の対応点の中から、当該特徴点候補との相違度が極小値となる対応点、又は、当該特徴点候補との類似度が極大値となる対応点を視差候補として選択する、
ことを特徴とする請求項1又は2に記載の画像処理装置。 - 前記特徴点選択手段は、前記視差候補取得手段により取得された前記特徴点候補毎の各視差候補において、対応する特徴点候補との相違度が、前記第1の閾値より小さい第3の閾値を下回るものが存在しない場合、又は、当該特徴点候補との類似度が、前記第2の閾値より大きい第4の閾値を上回るものが存在しない場合には、当該特徴点候補を特徴点として選択しない、
ことを特徴とする請求項1乃至3の何れか1項に記載の画像処理装置。 - 同一被写体について視差のある2以上の画像を取得する画像取得ステップと、
該画像取得ステップで取得された画像の一方から特徴点候補を取得する特徴点候補取得ステップと、
該特徴点候補取得ステップにより取得された特徴点候補と、前記画像の他方と、に基づいて、ステレオマッチングを行い、前記画像の他方から前記特徴点候補毎の視差候補をそれぞれ取得する視差候補取得ステップと、
前記特徴点候補の中から所定の条件を満たすものを特徴点として選択する特徴点選択ステップと、
該特徴点選択ステップで選択された前記特徴点に隣接する隣接点を、前記特徴点毎にそれぞれ取得する隣接点取得ステップと、
前記特徴点と、前記視差候補と、前記隣接点と、に基づいて、確率伝搬法によるアルゴリズムを用いた処理を実行し、各特徴点に対応する視差を決定する視差決定ステップと、を有する、
ことを特徴とする画像処理方法。 - 画像処理装置を制御するコンピュータに、
同一被写体について視差のある2以上の画像を取得する画像取得機能と、
該画像取得機能で取得された画像の一方から特徴点候補を取得する特徴点候補取得機能と、
該特徴点候補取得機能で取得された特徴点候補と、前記画像の他方と、に基づいて、ステレオマッチングを行い、前記画像の他方から前記特徴点候補毎の視差候補をそれぞれ取得する視差候補取得機能と、
前記特徴点候補の中から所定の条件を満たすものを特徴点として選択する特徴点選択機能と、
該特徴点選択機能で選択された前記特徴点に隣接する隣接点を、前記特徴点毎にそれぞれ取得する隣接点取得機能と、
前記特徴点と、前記視差候補と、前記隣接点と、に基づいて、確率伝搬法によるアルゴリズムを用いた処理を実行し、各特徴点に対応する視差を決定する視差決定機能と、を実現させる、
ことを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010219676A JP2012073930A (ja) | 2010-09-29 | 2010-09-29 | 画像処理装置、画像処理方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010219676A JP2012073930A (ja) | 2010-09-29 | 2010-09-29 | 画像処理装置、画像処理方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012073930A true JP2012073930A (ja) | 2012-04-12 |
Family
ID=46170015
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010219676A Pending JP2012073930A (ja) | 2010-09-29 | 2010-09-29 | 画像処理装置、画像処理方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2012073930A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015069568A (ja) * | 2013-09-30 | 2015-04-13 | 富士重工業株式会社 | フィルタリング装置 |
CN105509653A (zh) * | 2015-11-30 | 2016-04-20 | 广州超音速自动化科技股份有限公司 | 机械零件轮廓度视觉测量方法及系统 |
JP2017111561A (ja) * | 2015-12-15 | 2017-06-22 | キヤノン株式会社 | 情報処理装置、情報処理方法およびプログラム |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05122602A (ja) * | 1991-10-25 | 1993-05-18 | Nippon Telegr & Teleph Corp <Ntt> | 距離動画像入力処理方法 |
JPH0997334A (ja) * | 1995-07-24 | 1997-04-08 | Nec Corp | 3次元参照画像切り出し方法及び装置並びに物体判定装置 |
JP2003346130A (ja) * | 2002-05-22 | 2003-12-05 | Saibuaasu:Kk | 3次元情報処理装置および3次元情報処理方法 |
JP2006329684A (ja) * | 2005-05-23 | 2006-12-07 | Olympus Corp | 画像計測装置及び方法 |
JP2010531490A (ja) * | 2007-06-20 | 2010-09-24 | トムソン ライセンシング | 画像のステレオ・マッチングのためのシステム及び方法 |
-
2010
- 2010-09-29 JP JP2010219676A patent/JP2012073930A/ja active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05122602A (ja) * | 1991-10-25 | 1993-05-18 | Nippon Telegr & Teleph Corp <Ntt> | 距離動画像入力処理方法 |
JPH0997334A (ja) * | 1995-07-24 | 1997-04-08 | Nec Corp | 3次元参照画像切り出し方法及び装置並びに物体判定装置 |
JP2003346130A (ja) * | 2002-05-22 | 2003-12-05 | Saibuaasu:Kk | 3次元情報処理装置および3次元情報処理方法 |
JP2006329684A (ja) * | 2005-05-23 | 2006-12-07 | Olympus Corp | 画像計測装置及び方法 |
JP2010531490A (ja) * | 2007-06-20 | 2010-09-24 | トムソン ライセンシング | 画像のステレオ・マッチングのためのシステム及び方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015069568A (ja) * | 2013-09-30 | 2015-04-13 | 富士重工業株式会社 | フィルタリング装置 |
CN104512334A (zh) * | 2013-09-30 | 2015-04-15 | 富士重工业株式会社 | 滤波装置 |
CN104512334B (zh) * | 2013-09-30 | 2017-09-01 | 株式会社斯巴鲁 | 滤波装置 |
CN105509653A (zh) * | 2015-11-30 | 2016-04-20 | 广州超音速自动化科技股份有限公司 | 机械零件轮廓度视觉测量方法及系统 |
JP2017111561A (ja) * | 2015-12-15 | 2017-06-22 | キヤノン株式会社 | 情報処理装置、情報処理方法およびプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5035372B2 (ja) | 三次元モデリング装置、三次元モデリング方法、ならびに、プログラム | |
JP5024410B2 (ja) | 三次元モデリング装置、三次元モデリング方法、ならびに、プログラム | |
JP5158223B2 (ja) | 三次元モデリング装置、三次元モデリング方法、ならびに、プログラム | |
JP5110138B2 (ja) | Ar処理装置、ar処理方法及びプログラム | |
JP4983905B2 (ja) | 撮像装置、3dモデリングデータ生成方法、および、プログラム | |
JP5954668B2 (ja) | 画像処理装置、撮像装置および画像処理方法 | |
US8224069B2 (en) | Image processing apparatus, image matching method, and computer-readable recording medium | |
JP6011862B2 (ja) | 3次元画像撮影装置及び3次元画像撮影方法 | |
US8817075B2 (en) | Imaging apparatus capable of generating three-dimensional images, three-dimensional image generating method, and recording medium | |
JP6020471B2 (ja) | 画像処理方法、画像処理装置および画像処理プログラム | |
JP2015197745A (ja) | 画像処理装置、撮像装置、画像処理方法及びプログラム | |
JP5263437B2 (ja) | 三次元モデリング装置、三次元モデリング方法、ならびに、プログラム | |
JP2013141100A (ja) | 画像生成装置、デジタルカメラ、方法、及びプログラム | |
JP5900017B2 (ja) | 奥行き推定装置、再構成画像生成装置、奥行き推定方法、再構成画像生成方法及びプログラム | |
JP2012073930A (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP6039301B2 (ja) | 撮像装置、撮像システム、撮像装置の制御方法、プログラム、および、記憶媒体 | |
JP2017011653A (ja) | 画像処理装置、撮像装置、画像処理方法およびプログラム | |
JP5478533B2 (ja) | 全方位画像生成方法、画像生成装置およびプログラム | |
JP2015233270A (ja) | 撮像装置およびその制御方法 | |
JP2010154323A (ja) | 画像処理装置、画像抽出方法、および、プログラム | |
JP2013150071A (ja) | 符号化装置、符号化方法、プログラム及び記憶媒体 | |
JP2012248206A (ja) | Ar処理装置、ar処理方法及びプログラム | |
JP5126442B2 (ja) | 三次元モデル生成装置、及び三次元モデル生成方法 | |
JP2017215851A (ja) | 画像処理装置および画像処理方法、造形システム | |
JP2016115332A (ja) | 画像処理装置およびその制御方法ならびにプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130607 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140108 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140114 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20140610 |