研究開発テーマ:複数の3次元画像を使って上方からの2次元の見取り図を作成する

Opencvから距離測定技術の関数選択とStereoBMを用いてのコーディング

報告者  : 竹内文雄
報告日  :2017年7月29日

・Opencvから距離測定技術の関数選択
①まず、二次元画像を二次元画像に変換していくプログラムを組むことにした。リサーチをした結果二つに絞れた。いかに示していく。
これらのプログラムを実現するには写真の1枚目にあるようにカメラを2台用いて、右と左のそれぞれから撮った写真から距離を求めるのが主流であることがわかった。そこで同じようにカメラを二つ用意し研究を行った。

(1)三角測量(Triangulate)
昨日のリサーチより得た一つ目の測定技術である。三平方の定理のようにして二台のカメラの間の既知の距離と角度より、対象物までの距離を求めるものだ。しかし調べると誤差がかなり激しいことがわかった。

(2)ステレオブロックマッチング(StereoBM)
これは2台のカメラから撮られた写真を解析し、右からの写真からしか見えない箇所と左からの写真からしか見えない箇所を比較し、その対象物に対する見えない箇所が多いほど近いと算出する関数である。今回はこれを用いてプログラムを行った。

・StereoBMを用いてのコーディング
まずはカメラを起動しキャプチャ、保存するプログラムを作り、次に、その画像をStereoBMで解析するコードをしていたが、StereoBM特有の関数の"StereoBm.operator()"の箇所で正しい引数を与えていると思うのだが、そこでエラーが出てしまう。そこで詰まってしまい、リサーチしながら回答を探していた。
次回も行き続きStereoBMのプログラムを用いてコーディングしていく。

image1

image2