如何在Python和pyzbar中检测QR码的顶部边缘

时间:2018-10-06 11:01:40

标签: python opencv qr-code

我正在使用pyzbar + opencv来检测QR码。我需要在QR码的顶部边缘上画一些东西以进行打印。我知道pyzbar可以检测QR码的边界框,但是很难知道哪个边缘在顶部。

有什么建议吗?

需要像以下示例一样检测顶部边缘: Need to detect top edge like these examples

2 个答案:

答案 0 :(得分:0)

如果顶部边缘的边缘始终以regtangle开始和结束,则可以尝试使用cv2.contour来检测图像中的两个矩形,然后使用cv2.line来绘制两条边缘之间的线

Use this great tutorial来检测边缘的正方形,然后获取每个点的起始x,y点

如果您遇到困难,希望我能帮助您,请告诉我,我会尽力帮助您

答案 1 :(得分:0)

  

如果要正确识别,旋转和缩放QR图片,则需要执行以下任务:

(您需要两种技术的结合)

  • 第一步:检测每个QR码四个角的x,y坐标。 Python库zbar对此非常有用:

print(symbol.location)给出坐标。

  • 第二步:现在需要进行偏斜校正/透视校正/“单应性”。这是使用Python + OpenCV的方法。