Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x Python-如何从图像中检测和解码多个Datamatrix_Python 3.x_Opencv_Qr Code_Barcode_Datamatrix - Fatal编程技术网

Python 3.x Python-如何从图像中检测和解码多个Datamatrix

Python 3.x Python-如何从图像中检测和解码多个Datamatrix,python-3.x,opencv,qr-code,barcode,datamatrix,Python 3.x,Opencv,Qr Code,Barcode,Datamatrix,我一直在尝试检测标签上的条形码、QR码和Datamatrix。 pyzbar库检测条形码和QR码,但无法检测datamatrix。 然后我尝试了pylibdmtx库,它只解码一个图像中的一个数据矩阵(有6个数据矩阵代码)。它也很慢!:( 是否有其他方法可以从图像中检测多个datamatrix 以下是我的datamatrix代码: from pylibdmtx.pylibdmtx import decode import cv2 import numpy as np def dataMat(i

我一直在尝试检测标签上的条形码、QR码和Datamatrix。 pyzbar库检测条形码和QR码,但无法检测datamatrix。 然后我尝试了pylibdmtx库,它只解码一个图像中的一个数据矩阵(有6个数据矩阵代码)。它也很慢!:(

是否有其他方法可以从图像中检测多个datamatrix

以下是我的datamatrix代码:

from pylibdmtx.pylibdmtx import decode
import cv2
import numpy as np


def dataMat(image, bgr):
    gray_img = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
    data = decode(gray_img)
    print(data)
    for decodedObject in data:
        points = decodedObject.rect

        pts = np.array(points, np.int32)
        pts = pts.reshape((-1, 1, 2))
        cv2.polylines(image, [pts], True, (0, 255, 0), 3)

        cv2.putText(frame, decodedObject.data.decode("utf-8") , (30, 30), cv2.FONT_HERSHEY_SIMPLEX, 1,
                    bgr, 2)

        print("Barcode: {} ".format(decodedObject.data.decode("utf-8")))

bgr = (8, 70, 208)

frame  = cv2.imread('datamat.png')
code = dataMat(frame, bgr)
print(code)
cv2.imshow('Data Matrix reader', frame)
code = cv2.waitKey(0)

你试过提供一个好的高分辨率图像吗?@ZdaR是的,我试过了!我试过很多样本,但它在每个样本中只检测到一个datamatrix在文档示例中,它检测到多个对象,你能试一下repo提供的测试图像吗?
pylibdmtx/tests/datamatrix.png
是的,我试过样本图像,我t有效。但我正在尝试处理真实图像,但效果不一样!我的代码比示例图像更密集。@Zdarhen可能需要对输入图像进行预处理,使其更清晰。尝试对图像进行二进制阈值处理,然后将其传递到库中。