カメラキャリブレーション 呉海元 @ 和歌山大学 2010 年 6 月 21 日
カメラキャリブレーション ( 校正 ) 実世界のカメラとカメラモデルとの対応付け 2
カメラキャリブレーション項目 幾何学的キャリブレーション - 外部パラメータ : 6 世界座標系におけるレンズの中心座標 (t) レンズ光軸の方向 (R) - 内部パラメータ : 5 焦点距離 画像中心 画像像 ( 画素 ) サイズ 歪収差係数 カメラの外部変数 (extrinsic parameters): 6 個 (world coordinate system) 3
カメラキャリブレーション手順 1. 幾何学的 光学的特性が既知の対象物を撮影 2. 対象物固有の特徴 ( 特徴点の世界座標など ) とその画像特徴 ( その特徴点の画像座標 ) を対応付け ~ エピポーラ幾何 知識 ヒューリスティクス 3. カメラモデルに基づき モデルパラメータを推定モデルパラメ ~ 射影幾何 線形代数 数値解析 統計 4
キャリブレーションデータと安定性 ワールド座標と画像座標の対応点標 3 次元位置既知の特徴点 透視投影行列 P 安定性 既知の形状の特徴 平面上の特徴点 円 矩形など ホモグラフィ H レンズ歪み k, 画像座標同士の対応付け 3 次元位置未知の特徴点 軌跡など 基礎行列 FE F,E 簡便さ
Single Camera Calibration Extrinsic Parameters R : rotation matrix t : translation vector Intrinsic Parameters a f : focal length k : scale of the pixel coordinate axis u,v : image principal point 0 0 Camera Coordinate System Tsai s Method World Coordinate System Projective Camera Matrix Image Coordinate System
Example Calibration Pattern 非平面パターン平面パターン Calibration Pattern: Object with features of known size/geometry
Harris or Canny Corner Detector 手動か自動か入力画像からキャリブレーションパターンの特徴点を探し出す
カメラの内部パラメータ x f X Z x f X s x Z o x y f Y Z y f Y s Z y o y pixel size s, s x y X O image center o, o x y lens distortion k1, k 2 Z f focal length f Calibration = Determine the intrinsic parameters of a camera
キャリブレーション ( 内部パラメータ ) 幾何変換のパラメータ推定 透視投影 内部パラメータ X Uimage fkx 0 ox 0 Y Vimage 0 fk y oy 0 Z S 0 0 1 0 1 画像上の点や 3 次元空間中の点の座標を与えて パラメータを求める 最適化問題として定式化される
キャリブレーション ( 外部パラメータ ) ワールド座標系とカメラ座標系の下 t x, t y, t z と r 1,1 r 3,3 はカメラ外部パラメータ x y z 1,1 3,3 外部パラメータ
キャリブレーション ( 全パラメータ ) ワールド座標系と画像座標系の下で U V S image image P(3 4) X Y Z 1 world world world
透視投影モデルのキャリブレーション U V S image image P(3 4) X Y Z 1 world world world 行列 P 自由度 11 rank 3 画像上の点 三次元空間中の点 対応点 1 個 拘束 2 x PX 対応点 6 点以上の対応付けから求められる
Pの推定の線形解法 (6 points algorithm) 6 点以上の対応点から P を推定 線形最適化
行列で書くと n (n 6) 個の対応点から 2n の方程式 を最小にする P を求める は 2n 12 行列 ただしp=0 0 を除く とする (11 自由度 ) 最小二乗
通常の最小二乗法で微分 =0 とすると 明らかな解 p=0 しか求まらない ラグランジェの未定乗数法を使う ラグランジェ乗数 pはwの最小固有値に対応する固有ベクトル 固有方程式 pがwの固有ベクトルのとき成立
6 points algorithm の利点 欠点 利点 計算コストが小さい 数値計算的に安定 欠点 最小化の目的関数が 幾何学的にな意味を持たない 非線形解法 幾何学的に意味を持つ数値を最小化する
非線形解法 幾何学的に意味のある誤差を最小化 画像上の観測点と投影点の誤差を最小化 ( ) T T T T T 非線形最適化 ニュートン法 マーカート法など 精度は高いが 計算コストが高い 局所解が存在する 線形解を初期値にする
透視投影行列の分解 P を内部パラメータ K 回転 R 並進 t に分解 P= = 画像座標の傾き M=KR K: 上三角行列 Pの3 3の部分を M とするとM=KR K 上三角行列 R 正規直交行列よって QR 分解でK とRに分解できる また K が求まれば
透視投影行列 P の推定まとめ 3 次元座標が既知の点が必要が ワールド座標に対するカメラの位置ルド座標に対するカメラの位置 姿勢が求まる カメ台数を増やしも同じド座標 カメラの台数を増やしても 同じワールド座標に対する P を求めればよい
出席チェック 単眼カメラの幾何学的キャリブレーションについて 1) 透視投影行列 Pの自由度? ランク? 何点以上あれば求めることが可能ですか? 2) 紹介した透視投影行列 Pを求める方法 ( 線形 非線形 ) の利点 欠点をそれぞれ述べなさい
Two-view geometry 複数カメラ間のキャリブレーション 3D reconstruction Epipolar geometry E-matrix comp. F-matrix comp. H-matrix comp. Structure comp.
基礎行列 Fのキャリブレーション エピボラ平面 左カメラの画像点 右カメラの画像点 baseline from Hartley & Zisserman 画像間の対応点集合から基礎行列 F を推定 x T Fx=0 x x エピポーラ方程式
x T Fx=0 Fの推定 : 線形解法 ただし P 行列と同様に最小固有値に対応する固有ベクトルとして推定
非線形解法 線形解法の目的関数は幾何学的に無意味 非線形解法 目的関数 エピポーララインと対応点の距離 ステレオ復元後の再投影誤差 ニュートン法 マーカート法など 線形解を初期値とする
基礎行列の分解 内部パラメータ K が既知の場合 基礎行列 F から基本行列 E に変換 エピポール e e はどんな点にも対応するので eは O の最小値と対応する固有ベクトル O エピポール e は並進 t と同じ方向 ( スケールは不定 )
基礎行列の分解 また より の最小化によって R を求められる
エピポールを用いた平行化 epipolar pencil エピポーラペンシール H from Hartley & Zisserman エピポーラ線が平行になる変換
基礎行列から平行ステレオへ変換 corner 視差 (disparity) 姿勢や B の長さが分からなくても 形状を復元できる 長 エピポールさえ分かれば 形状復元ができる
基礎行列 F の推定まとめ 基礎行列は画像間の対応付けだけ ( 未知の点 ) 基礎行列からカメラ間の相対位置 姿勢の復元や 平行ステレオへの変換が可能 未校正の 2 枚の画像から カメラの姿勢の復元とシーンの形状復元が可能 ( ただしスケール不定 ) 自較正 uncalibrated stereo などと呼ばれる
内部パラメータのキャリブレーション Tsaiのアルゴリズム 3 次元座標既知の点から レンズ歪みを含む内部パラメータを推定 初期からソースコードが公開されていたため多 初期からソスコドが公開されていたため 多くの人たちが利用
Tsai のモデル カメラ座標 ワールド座標 投影面座標 焦点距離 回転 並進
Tsai のモデル 歪み座標 画像座標 スケール因子 ( 縦横比 ) 画像中心 歪み係数 サンプリング間隔 (CCD の幅 )
Tsai のモデル 回転 R 並進 T 6 パラメータ 焦点距離 f 1 パラメータ ひずみ係数 k 1 パラメータ 画像中心 1パラメータスケール因子 1パラメータサンプリング間隔 2パラメータ 12 パラメータの非線形最適化
例 入力画像 キャリブレーション後歪みを補正
Tsai の方法まとめ 3 次元位置既知の点から内部パラメータを推定 高次元 (12 パラメータ ) の非線形最適化 あまり安定ではないが ソースが公開されていたためよく使われた 最近は Zhang らの EasyCalib がよく使われる 平面上の座標既知の格子点 ( 平面の状態は未知 ) 数枚の平面から 歪みを含む内部 外部パラメータを推定 安定 精度は Tsai よりはいい OpenCV に含まれる
EasyCalib State-of-the-art calibration Z. Zhang: Flexible Camera Calibration By Viewing a Plane From Unknown Orientations (1999) Solves correspondence problem Works with planar calibration pad Works well in practice
格子点が直線になるように歪み補正 Homography の推定
Calibration Software: OpenCV
Calibration Software: Matlab
内部パラメータのキャリブレーションまとめ 昔はTsaiのアルゴリズムがよく使われた ソースが公開 不安定 3 次元位置既知の点が必要 最近はEasyCalib がよく使われる 安定 使い勝手がいい 平面上の格子点 平面の位置は未知でいい 格子点は自動検出しやすい 格子点検出も含めてソースが公開されている (OpenCV)
出席チェック 複数カメラの幾何学的キャリブレーションについて 透視投影行列 Pを求める場合と基礎行列 Fを求める場合の利点 欠点を述べなさい