我正在阅读图像,并通过传递矩形的左上角坐标和右下角坐标,然后旋转图像。一些客户机提供相同图像的100 dpi、200 dpi或400 dpi图像的示例。在这类图像中,当图像具有不同的dpi时,输入坐标位于其他位置。我正在做template matching任务,其中我给出了包含文本的小模板。找到匹配的文本框后,绘制出匹配的文本框。从那个边界框引用,我必须从图像中找到父矩形,然后保存到文件夹中。对于100 dpi的图像,它是工作的,但一旦我改变了不同dpi的图像矩形收缩。图像包括:
以下代码在模板匹配链接中更新:
startX = abs(startX - 113)
startY = abs(startY - 5)
endX = abs(endX + 117)
endY = abs(endY + 208)
cv2.rectangle(image, (startX, startY), (endX, endY), (0, 0, 255), 2)
下面的代码用于查找矩形和裁剪:
^{pr2}$如何解决一个问题,以找到不同dpi图像的实际感兴趣区域并找到准确的ROI?给出一些粗略的想法来解决它。在
OpenCV并不真正关心DPI,它只是使用Mat来包含图像。我不太确定我是否理解您要编译的内容,但如果您的坐标单位是英寸,并且知道源DPI,则可以按行和列进行转换:
x_px=x_英寸*DPI
y_px=y_英寸*DPI
否则,如果所有图像的比例相同,但分辨率不同,您可以简单地将它们缩放到一个参考大小(即正在工作的100dpi分辨率)。为此,可以在OpenCV中使用resize函数。在
相关问题 更多 >
编程相关推荐