OpenCV中点(Point)利用变换矩阵进行坐标变换

参考:
https://www.p-chao.com/2016-12-01/opencv%e8%bf%9b%e8%a1%8c%e5%90%84%e7%a7%8d%e7%9f%a9%e9%98%b5%e5%8f%98%e6%8d%a2%e5%8f%8a%e5%8f%98%e6%8d%a2%e5%8f%82%e6%95%b0%e6%b1%82%e8%a7%a3/

在opencv中,在利用 getAffineTransform 等函数得到了变换矩阵后,假如需要进行图像的变换,可以通过 warpAffine进行。
但是假如只是想对Point的坐标进行变换,就需要用transform来进行了。


        ...
        Mat warp_mat = getAffineTransform(srcTri, dstTri);
        ...
        vector<Point2f> srcVec;
        vector<Point2f> dstVec;

        srcVec.push_back(Point2f(1, 2));
        srcVec.push_back(Point2f(3 ,4));

        cv::transform(srcVec, dstVec, warp_mat);

        mLine = QLineF(QPointF(dstVec[0].x, dstVec[0].y), QPointF(dstVec[1].x, dstVec[1].y));

你可能感兴趣的:(opencv,opencv)