这将是一个包含许多代码的麻烦问题,但是您需要上下文才能理解该问题。
因此,我开始学习OpenCV,并且在理解某些内容时遇到了问题。该代码可以正常工作,但我不知道它是如何工作的。
所以我关注this帖子,它非常好。帖子末尾只有一行使我感到困惑。这是行号62。我知道screenCnt为什么乘以ratio,但是那里的reshape函数的目的是什么。真正的作用是什么?我找不到我能理解的文档。
为了理解我的问题,也请查看this帖子。

最佳答案

他需要重塑,因为screenCnt是由np-array生成的approxPolyDP,因此它是four_point_transform函数接受为参数pts的不同矩阵的转置。本质上pts应该是4x2矩阵,而screenCnt是2x4,因此他必须重塑形状。

编辑:我在不同的图像上运行命令,看来screenCnt具有[[num1,num2]]类型的4个元素,而pts元素应该是[num1,num2]。这就是在特定情况下完成的重塑。我的答案对于reshape函数的一般用法是正确的。

10-08 05:41