Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Camera calibration

1,261 views

Published on

第1回 3D勉強会@関東 チュートリアル「カメラキャリブレーションとSLAM」の発表資料です.

Published in: Science
  • 80% Win Rate? It's Not a BUG? [Proof Inside] ◆◆◆ http://ishbv.com/zcodesys/pdf
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Camera calibration

  1. 1. カメラキャリブレーションとSLAM id:q_tarou
  2. 2. 今回の発表内容 1. カメラキャリブレーションとは 2. カメラキャリブレーションの手順 3. カメラキャリブレーションとSLAM 4. 様々な系におけるカメラキャリブレーション
  3. 3. 今回の発表内容 1. カメラキャリブレーションとは 2. カメラキャリブレーションの手順 3. カメラキャリブレーションとSLAM 4. 様々な系におけるカメラキャリブレーション
  4. 4. カメラキャリブレーションとは オブジェクト カメラモデル パラメータ 1 パラメータ 2 パラメータ N… 位置(X,Y,Z) 輝度 (R,G,B) 画像 輝度(r,g,b)位置:(x,y) カメラキャリブレーション 画像の生成過程を把握するため,適切なカメラモデルを定め, そのカメラモデルが持つパラメータを推定すること.
  5. 5. カメラキャリブレーションの種類 カメラキャリブレーション 幾何学的キャリブレーション 「どこに」 光学的キャリブレーション 「どういう輝度で」 オブジェクト 位置(X,Y,Z) 輝度 (R,G,B) … パラメータ 1 パラメータ 2 パラメータ N カメラモデル 画像 輝度(r,g,b)位置:(x,y) …
  6. 6. 幾何学的カメラキャリブレーション 幾何学的カメラキャリブレーション 内部キャリブレーション カメラ依存のパラメータを推定 ex. 焦点距離,レンズ歪みなど 外部キャリブレーション カメラ非依存のパラメータを推定 ex. 位置,姿勢など パラメータ 1 パラメータ 2 パラメータ N カメラモデル …
  7. 7. カメラモデル • ピンホール • 魚眼レンズ • 全天球カメラ • 厚凸レンズ • 薄凸レンズ ︙ カメラ構造 投影方法 • 透視投影 • 正射影 • 弱透視投影 • 平行透視投影 • 正距円筒図法 ︙ カメラモデル • 解析したい対象,内容に応じてカメラ構造および投影方法を定める. • 一般的なカメラを用いて3次元空間と2次元画像平面の幾何学的関係を 解析する場合は,「ピンホールカメラ」x 「透視投影」の組み合わせが よく用いられる.
  8. 8. ピンホールカメラ 参考:凸レンズ 焦点 凸レンズ 画像平面 画像平面 = 撮像素子が置かれる面 ピンホール 特徴 ・レンズに依る効果(ぼけ,歪み)が無い. 焦点距離 f
  9. 9. 透視投影 光学中心 =全ての光が通過する点 焦点距離 f 仮想画像平面 特徴 • 対象物を目で見た時と同じような表現が可能. ⇒ 一般的なカメラの投影に近い. x y z
  10. 10. ピンホールカメラ x 透視投影 光学中心 =全ての光が通過する点 焦点距離 f 仮想画像平面 x y z 特徴 • レンズに依る効果(ぼけ,歪み)が無い. • 対象物を目で見た時と同じような表現が可能. ⇒ 一般的なカメラの投影に近い. 仮定 • Z軸と光軸が一致 • 原点が光学中心に一致
  11. 11. 世界座標系での座標値 投影過程 0 : 世界座標系 画像座標系 世界座標系 W カメラ座標系 C 投影行列:Projection matrix 画像座標系 I画像座標系での座標値
  12. 12. 世界座標系での座標値 投影過程 1:世界座標系 カメラ座標系 世界座標系 W カメラ座標系 C カメラ座標系での座標値 3x3の回転行列 3x1の並進ベクトル 外部パラメー タ (世界座標系 カメラ座標系)
  13. 13. 投影過程 2:カメラ座標系 正規化画像座標系 世界座標系 W カメラ座標系 C 正規化画像座標系 N カメラ座標系での座標値 正規化画像座標系での座標値 の平面
  14. 14. 投影過程 3:正規化画像座標系 画像座標系 世界座標系 W カメラ座標系 C 正規化画像座標系での座標値 の平面 正規化画像座標系 N 画像座標系 I 内部パラメータ(行列) 単位はピクセル 単位は三次元座標系のもの (mm, cmなど)
  15. 15. 投影過程 まとめ 世界座標系 W カメラ座標系 C の平面 正規化画像座標系 N 画像座標系 I 世界座標系での座標値 画像座標系での座標値 内部キャリブレーション:内部パラメータ の推定 外部キャリブレーション:外部パラメータ の推定
  16. 16. 投影過程 レンズ歪み (正規化画像座標系) 世界座標系 W カメラ座標系 C の平面 正規化画像座標系 N 画像座標系 I 注:OpenCVで利用されている歪みモデル 歪み無し 歪み有り 歪み係数 カメラ固有なので内部パラメータに含まれる 半径方向の歪み 円周方向の歪み
  17. 17. 今回の発表内容 1. カメラキャリブレーションとは 2. カメラキャリブレーションの手順 3. カメラキャリブレーションとSLAM 4. 様々な系におけるカメラキャリブレーション
  18. 18. 幾何学的カメラキャリブレーションの手順 1. 幾何学的特性が既知の物体(参照物体)を撮影する. 2. 参照物体の特徴と,その像の特徴を対応付ける. 3. カメラモデルに基づき,特徴の対応関係から各パラメータを 求める.
  19. 19. 幾何学的カメラキャリブレーションの手順 (Zhangの手法[4] の場合) 1. 幾何学的特性が既知の物体(参照物体)を撮影する. 1. 参照物体の特徴と,その像の特徴を対応付ける. 2. カメラモデルに基づき,特徴の対応関係から各パラメータを 求める. 参照物体としてチェスボードを利用 特徴としてチェスコーナーの座標値を利用 チェスコーナーの 三次元座標値 チェスコーナーの投影像の 二次元座標値 世界座標系 カメラ座標系[4] Z. Zhang. A flexible new technique for camera calibration, TPAMI, 2000
  20. 20. Zhangの手法:内部キャリブレーション 参照物体をカメラの視野の様々な位置に設置し(3箇所以上), その投影像から内部パラメータを推定. チェスコーナーの 三次元座標値チェスコーナーの投影像の 二次元座標値 … 共通の内部パラメータ 用いる関数:cvCalibrateCamera (OpenCV) など.
  21. 21. Zhangの手法:外部キャリブレーション(マルチカメラ) 参照物体をマルチカメラの共有視野に設置し,その投影像から外 部パラメータを推定. 世界座標系 カメラ1 カメラ2 世界座標系-カメラ1 世界座標系-カメラ2 各カメラの外部パラメータ 用いる関数:solvePnP (OpenCV) など.
  22. 22. Zhangの手法:高精度な推定に関するTips • 観測対象が存在する領域に参照物体を置く • 参照物体の検出点を利用して各パラメータを最適 化しているので,参照物体を設置した領域で最も 精度が良くなる. 観測対象が存在する領域 • 限りなく平面な参照物体を利用する. • 参照物体は空間の定規のようなもの. • 身近で簡単に手に入る平面な物体はPCディスプレイ.
  23. 23. アプリケーション:3次元再構成 世界座標系 カメラ1 カメラ2 被写体 世界座標系 カメラ座標系 正規化画像座標系 画像座標系 投影の過程 3次元再構成 内部パラメータの逆行列をかける 外部パラメータを利用する
  24. 24. 今回の発表内容 1. カメラキャリブレーションとは 2. カメラキャリブレーションの手順 3. カメラキャリブレーションとSLAM 4. 様々な系におけるカメラキャリブレーション
  25. 25. 外部パラメータ = 位置姿勢?(1/2) 世界座標系 W カメラ座標系 C を代入すると• 世界座標系の原 点 として,世界座標系の各軸方向の単位ベクトルから 成る行列 は となる. • 外部パラメータ はカメラ座標系における世界座標系の位置, は姿勢とみなせる.
  26. 26. 外部パラメータ = 位置姿勢?(2/2) 世界座標系 W カメラ座標系 C 外部パラメータ は世界座標系におけるカメラ座標系の位置, は姿勢とみなせる.(カメラの位置姿勢)
  27. 27. SLAMにおける外部パラメータ カメラ1-カメラ2:対応点から求めたF(E)行列を分解して を得る. カメラ3以降:復元した三次元点と対応点からPnP問題を解いて を得る. シーン カメラ1 カメラ2 カメラ3 カメラN … カメラ1->カメラ2? or カメラ2->カメラ1? 世界->カメラN? or カメラN->世界?,世界座標系はどこに定められている?
  28. 28. 外部パラメータ Tips • 変換の方向を意識する. • どの座標系からどの座標系への変換か. (世界->カメラ?,カメラ0->カメラ1?) • パラメータに変換の方向を添字として書く. (ex. 世界->カメラの場合, など.) • 可視化してみる. • もはや言うまでもないですが. • 何はともあれまずは可視化のプログラムを書く.
  29. 29. 今回の発表内容 1. カメラキャリブレーションとは 2. カメラキャリブレーションの手順 3. カメラキャリブレーションとSLAM 4. 様々な系におけるカメラキャリブレーション
  30. 30. 様々なカメラ構成における カメラキャリブレーション 例1:大規模環境下での カメラキャリブレーション[5][6] 例2:視野外に存在する参照物 体とのキャリブレーション[7] [5]Y. Ohta+ Live 3D video in soccer stadium, IJCV, 2007 [6] Homayounfar, N+ Sports Field Localization via Deep Structured Models, CVPR2017 [7] K.Takahashi+, A new mirror-based extrinsic camera calibration using an orthogonality constraint, CVPR2012
  31. 31. 様々なデバイスとの カメラキャリブレーション 例1:プロジェクタ-カメラのキャリ ブレーション[8] 例2:深度センサ-カメラのキャリブ レーション[9] [8] Daniel Moreno+, Simple, Accurate, and Robust Projector-Camera Calibration, 3DIMPVT, 2012. [9] Weimin Wang+, Reflectance Intensity Assisted Automatic and Accurate Extrinsic Calibration of 3D LiDAR and Panoramic Camera Using a Printed Chessboard, Remote Sensing, 2017
  32. 32. ピンホール以外のカメラ構造を持つカメラの カメラキャリブレーション 例1:ローリングシャッター[10] 読み込み開始 読み込み終了 第1行 第2行 第3行 第4行 第5行 第6行 第N-2行 第N-1行 第N行 M列 時間 ・・・ ・・・ 読み込み開始 読み込み終了 第1行 第2行 第3行 第4行 第5行 第6行 第N-2行 第N-1行 第N行 M列 時間 ・・・ ・・・ (a) グローバルシャッター (b) ローリングシャッター 例2:魚眼レンズ[11] [10] Oth, L+, Rolling shutter camera calibration, CVPR, 2013. [11] Kannala, J+, A generic camera model and calibration method for conventional, wide-angle, and sh-eye lenses, 2006
  33. 33. ツール,ライブラリ • ど定番 • OpenCV • Camera Calibration Toolbox for Matlab • バンドルアジャストメント • Ceres Solver • http://ceres-solver.org/ • 魚眼 • OCamCalib(Matlab) • https://sites.google.com/site/scarabotix/ocamcalib-toolbox • New arrivals • Surround 360 Calibration • https://github.com/facebook/Surround360/blob/master/surround360_render /CALIBRATION.md

×