如何检测扫描纸上的图案(例如二维码),以便正确旋转/缩放/识别?

Bas*_*asj 5 python opencv qr-code image-processing image-scanner

我有需要打印的 PDF 文件或 JPG 图像(这些是手动填写的公式),我需要:

  • 扫描后,应使用 Python 完美旋转/缩放图像,以便我可以使用 x、y 坐标访问公式的某些部分

  • 应使用数字 ID 识别扫描的图像。

我应该在公式纸上添加什么样的模式,以便 Python 库(哪个?)能够裁剪/旋转它/用 ID 识别它?

我正在考虑在纸的左上角添加一个二维码(包含一个数字 ID),在纸的右下角添加一个二维码,或者也可能是“hirondelles”符号:

二维码将使用qrcode库生成:

import qrcode
img = qrcode.make('ID1138934')
Run Code Online (Sandbox Code Playgroud)

并使用此方法添加到 PDF 之上。


笔记:

在此处输入图片说明

Bas*_*asj 1

这项任务需要结合两种技术:

  • 第一步:检测每个二维码4个角的x、y坐标。Python 库zbar对此很有用。这个问题+答案中的代码显示了如何做到这一点。

  • 第二步:现在需要去歪斜/透视校正/“单应性”。以下是如何使用 Python + OpenCV 来完成此操作。