【发布时间】:2017-04-05 09:09:09
【问题描述】:
我想使用 opencv 执行 图像变形。
我已经检测到图像的 4 个角((ex)4000x4000),并在 opencv 中使用getPerspectiveTransform 得到了变换矩阵。
现在,我想在图像中心扭曲图像。
所以我使用了warpPerspective。
我输入的源图像的大小是 450x450,我使用了我为整个图像计算的变换矩阵。
但是屏幕上什么也没有显示。 任何帮助表示赞赏。
这里是示例代码和示例图片。
这是我想要的图像变形区域。(代码中的 src_crop)
这是结果。
source[0] = Point2f(lt.x, lt.y);
source[1] = Point2f(rt.x, rt.y);
source[2] = Point2f(rb.x, rb.y);
source[3] = Point2f(lb.x, lb.y);
dst[0] = Point2f(6, 10);
dst[1] = Point2f(3899, 7);
dst[2] = Point2f(3901, 3899);
dst[3] = Point2f(9, 3902);
Mat transformMatrix ;
transformMatrix = getPerspectiveTransform(source, dst);
Mat dstFrame ;
warpPerspective(src_crop, dstFrame, transformMatrix, Size(450, 450));
【问题讨论】:
标签: opencv image-processing warp