2017-10-17 6 views
0

現在、私は2台のカメラを持ち、内在および外因性パラメータを取得するためのステレオ較正手順を完了します。私は、左のカメラに特徴的な点をほとんど抽出せず、正しい画像にそれらをマッピングする方法を不思議に思っています。誰でも助けてくれますか?ステレオビジョンで1つの画像から他の画像にピクセルをマッピングする

このような各カメラの回転と平行移動行列で計算しようとしました。

SolvePnPの機能はopenCVで、左のカメラはR1 T1、右のカメラはR2のT2を取得しました。同じ世界の点[X、Y、Z]に

、私はカメラが独自の座標系における座標

[x1,y1,z1] = R1[X,Y,Z]+T1 

[x2,y2,z2] = R2[X,Y,Z]+T2 

を得ることができます。

私はこのような結果を得た[X1、Y1、Z1]と[X2、Y2、Z2]

R2*inv(R1)[x1,x2,x3]+(T2-R2*inv(R1)*T1) = [x2,y2,z2] 

でマップしよう

左のイメージは、上記の方法で左のイメージからチェスボードコーナーをマッピングした結果です。右の画像はfindChessBoardCorner右画像・コンピューティングのコーナーです: image on left is result of mapping chessboard corner from left image by method above; image on right is corners of right image computing by findChessBoardCorner

+0

[here](http://mccormickml.com/2014/01/10/stereo-vision-tutorial-part-i/) –

答えて

0

回転と平行移動行列は3Dの世界でローカル3Dは、私はあなたを示唆2D-2D変換を見つけるためにを調整し、カメラへの座標系の座標にマッピングホモグラフィを使用します。

https://docs.opencv.org/2.4/modules/calib3d/doc/camera_calibration_and_3d_reconstruction.html?highlight=findhomography#findhomography

+0

ありがとう、私は試してみます:) – EdwardLye

+0

それはうまく動作し、歓声 – EdwardLye

0

Results From function "findHomography"

コンピューティング・ポイント"findHomography"によるマッピング関係は、チェス盤(私はボード上のコーナーからの関係を持っています)の面でのみうまく動作します。しかし、前景/背景の点をHで計算すると、上記の結果が示されます。

問題は "行列Hは2次元座標系(または上のチェス盤のような平面上のオブジェクト、それはなぜ私が他のイメージのチェス盤ポイントを反映するかということです)の仕事です。 /背景彼らの座標は3次元座標系上の画像にマッピングされています。つまり、行列が機能しなくなったことを意味します(実際には失敗したとは思いませんが、それはチェス盤の位置を拡張したものです)。上記の問題は、私が思うのは、 "ToPカメラや他の方法の助けを借りて、おそらく3次元座標系への再投影画像ポイントです。左と右のカメラ上の世界点の間の姿勢関係R、Tを得るために 'solvePnP'関数を呼び出します。左の画像上の任意の点を選択し、3D座標系に再投影し、右の画像に逆投影するby R、T "

関連する問題