提问人:denizsincar29 提问时间:9/21/2023 最后编辑:Christoph Rackwitzdenizsincar29 更新时间:9/22/2023 访问量:57
OpenCV:有没有办法用二进制而不是字符串来解码二进制二进制代码?
OpenCV: Is there a way to decode qrcode in binary rather than string?
问:
我是一个实验者。我尝试使用“qrcode”库将一些二进制文件编码为 qrcode,然后使用 cv2 对其进行解码。 但是 cv2 解码的是字符串而不是字节中的二0x00码,所以一旦它看到一个字节,它就会认为它是空终止。因此,编码后的 b'meta\x00\x00\xf3\x43myfile.txt' 突然变成了字符串中的“meta”。 编码过程只是使用 qrcode.make 函数,使用 bytes 类型参数而不是字符串。解码过程如下:
from time import sleep, time
import cv2
# import chunker
cap = cv2.VideoCapture("chun/video.mp4") # just for debugging. after success we'll make webcam.
detector = cv2.QRCodeDetector()
c=0
a=b''
while c!=32:
_, img = cap.read()
data, bbox, _ = detector.detectAndDecode(img)
if a!=data:
print(data)
a=data
#cv2.imshow("QR file receiver", img)
#c=cv2.waitKey(1)
# if c>-1: print(c)
cap.release()
cv2.destroyAllWindows()
你能给我一个 qr.detectAndDecode 函数的替代方案,或者一个让它解码二进制的触发器吗? 谢谢。
答: 暂无答案
评论
std::string
bytes
str
bytes
opencv-python