歪みなしカメラ画像の座標変換
OpenCV: Camera Calibration and 3D Reconstruction カメラ行列(内部パラメータ / intrinsic parameters) $$ A = \left( \begin{array}{ccc} f_x & 0 & c_x \ 0 & f_y & c_y \ 0 & 0 & 1 \end{array} \right) $$ 焦点距離 ( f_x, f_y ) 単位は画素(pixels) 2つの役割をもつ ピンホールカメラモデルにおける焦点距離(tex: f )(参考:ピンホールカメラモデル) 任意の単位で表される変換前の座標からコンピュータ上の画素の単位であるピクセル単位に変換する ピンホールカメラモデルでは1つの焦点距離(tex: f )しかなかったのに、なぜ(tex: f_x, f_y )と2つ含まれているのか 2つ目の役割(撮像素子の位置=実世界の距離からピクセル単位に変換)のため、撮像素子の特性(px/mm)がx、y方向で異なる場合を想定している(( f_x, f_y )はレンズの物理的な焦点距離 ( tex: f )(mm)と撮像素子の特性( c_x, c_y)の積。また、カメラ画像からそれぞれを独立に求めることはできない) 参考:computer vision - Why does the focal length in the camera intrinsics matrix have two dimensions? - Stack Overflow, Learning OpenCV 画像の中心 (c_x, c_y) 単位は画素(pixels) 射影変換行列(Perspective transform matrix, 外部パラメータ/ extrinsic parameters) 参考:2次元の射影変換行列 $$ [R|t] = \left( \begin{array}{cccc} r_{11} & r_{12} & r_{13} & t_x \ r_{21} & r_{22} & r_{23} & t_y \ \end{array} \right) $$ ...