2016年2月9日 11:00
機械の目が見たセカイ -コンピュータビジョンがつくるミライ (8) カメラを用いた3次元計測(2) - ステレオカメラ
の入力として、2台のカメラの内部パラメータ、歪係数、カメラ間の外部パラメータを求めることができます。そして、画像を平行化するレクティフィケーション処理は、cv::StereoRectify(魚眼レンズの場合はcv::fisheye::StereoRectify、全方位カメラの場合はcv::omnidir::StereoRectify)で平行化するためのパラメータを求め、cv::initUndistortRectifyMap(魚眼レンズの場合はcv::fisheye::initUndistortRectifyMap、全方位カメラの場合はcv::omnidir::initUndistortRectifyMap)を用いて画素毎の変換テーブルを作成し、cv::remapで画像を補正します。図3は、ステレオカメラの処理フローと処理結果です。Disparity Map(視差マップ)は、近くを白、遠くを黒として可視化したものです(テンプレートマッチングによる手法で求めた結果)。レクティフィケーションにより、2台のカメラにより撮像した画像を平行化できていることがおわかりいただけるかと思います。
著者プロフィール
樋口未来(ひぐち・みらい)