3

(など)dewarpを使った画像をお願いします。平面上で長方形を形成する必要があることがわかっている4つの点があります。pythonopencv/PIL

gimpでは、dewarpを使用して手動で画像を作成できますbackwards-correctionが、 に依存しないプログラムを書きたいと思いgimpます。

私が見つけたすべての関数は変換に依存しているmatrixため、正しい を計算する方法についていくつかの指針を示すだけで十分だと思いますmatrix

ご挨拶とご協力ありがとうございます

4

2 に答える 2

3

この行列を計算するには、次を使用します。

cv2.getPerspectiveTransform(src, dst)

src は 4 点を含むリストで、dst は新しい画像の角を含むリストです。注意してください、それらは正しい順序でなければなりません

于 2013-08-01T13:08:54.993 に答える
1

私はpythonを使用しませんが、これはc ++でのあなたの答えです。同じはずです:

transformationMatrix= cv::getPerspectiveTransform(source , dst_pnt);  // getting the transformation matrix 

cv::warpPerspective(src, quad, transformationMatrix,perspectiveSize,1); // warping


.........................
unwarping 

cv::Matx33f unwarp = transformMatrix;
    cv::Point3f homogeneous = unwarp.inv() *pTmp; // pTmp is a point in your transformaed frame 

cv::Mat unwarpFrame =  unwarp.inv() * srcFrame;   // in case of a frame 
enter code here
于 2013-08-01T13:39:03.200 に答える