首页 > 解决方案 > OpenCV Python对齐元素的4个角

问题描述

我有元素 4 个角的位置,但我想拉直它 我的图像看起来像这样:

从未对齐到对齐的元素

所述元素在图像中,因此我想将对齐应用于整个图像。

标签: pythonopencvimage-processing

解决方案


您正在搜索的是单应性转换。

首先,您需要图像的 4 个角点的位置,然后您必须定义这 4 个点的目的地。在您的情况下,它将是图像边界。如果您有目标点,则可以调用该函数H, mask = cv.findHomography(srcPoints, dstPoints)(请参阅calib3d 模块中的文档)。

矩阵 H 描述了从源图像到目标图像的转换。接下来,您需要在图像上应用矩阵 H,这可以通过该功能完成 (请参阅此处dst = cv.warpPerspective(srcImage, destImage,H)的此功能的文档)。

如果您想对单应矩阵做更多的事情,请参阅带有示例代码的 OpenCv 单应矩阵教程


推荐阅读