3次元センサの計測方式:位相シフト
こんにちは~組み込みエンジニアの滝象540です。
数回にわたって、3次元センサ特にセンサから光を出して物の形状を計測するアクティブセンサ(能動センサ)の計測方式について少し詳しくまとめます。
色々な方式ありますよ〜。
主な、計測方式はTOF、LiDAR、ランダムドット、位相シフトなどです。今のところ群雄割拠な感じで、どの方式が優れているということはなく、計測方式毎にメリット、デメリットがあります。
どの方式も光が出る部分と計測対象で反射した光を受光するカメラから構成されますが、ランダムドット方式、位相シフト方式の場合は3次元センサメーカ毎にカメラが1台、2台、4台と構成の違いがあります。
今回は位相シフト方式についてまとめたいと思います。
ステレオビジョン
ステレオビジョンはランダムドット方式と位相シフト方式に共通の計測原理で、内蔵するカメラ2台で撮った画像から、対象物までの距離や形状を計測します。
それぞれのカメラから対象物への向き(視線)と、カメラ同士の間隔から、対象物までの距離を求める事ができます。
シンプルなステレオビジョンですが、視線を計算するためには、2つのカメラで撮像した2枚の画像の「どことどこが同じなのか」を対応付ける必要があります。
「対応付け」実はこれが大変です。
例えば、シーンに同じものが複数あるケースです。皆さん下の左右の画像でどの円柱が同じ円柱かわかりますか?私には無理です(笑)この様に人でも対応付けが難しい場合があります。
このままでは、シーンによってはどうやっても「対応付け」ができません。そこで、センサから模様を投影し円柱を区別できるようにします。
位相シフト方式って?
位相シフト方式は、縞模様を対象物に投影し、縞模様を動かしながら何度を画像を撮像し、物の形状を計測します。
縞模様を使った「対応付け」はちょっとややこしいです。
オレンジの縞が当たっている円柱に1の番号を、当たっていない円柱に0の番号を付けます。
次に、縞を右に動かし、オレンジ色の縞が当たっている円柱に1を、当たっていない円柱に0を追加します。例えば、1の円柱は10か11の番号が割り当てられます。
「縞を動かす、1か0を使いする」という作業を繰り返します。
最終的に、2枚の画像で同じ番号を持つ円柱が、対応する円柱です。
これ考えた人、頭いいですよね~
メリット
他方式と比べて、物形状を正確に計測できることです。縞を動かす量を小さくすれば、物の形状を細かく計測することができます。
デメリット
計測に時間が掛かることです。「縞を動かす番号を追加する」を10位行わないといけないので、処理に時間が掛かります。
イラストは
イラストは妻に描いてもらいました。良かったら妻のnoteも見に行ってください。
最後まで読んでいただきありがとうございます。