我试图在OpenCV的相机方法中提取的图像上使用Zbar库的QR码检测方法。通常情况下,QR码检测方法可以在我的计算机上处理图像(jpg,png等),但我猜OpenCV的捕获帧是不同的。
有没有一种方法可以将拍摄到的帧变成PIL图像?将openCV图像转换为Python中的PIL图像(用于Zbar库)
谢谢。
from PIL import Image
import zbar
import cv2.cv as cv
capture = cv.CaptureFromCAM(1)
imgSize = cv.GetSize(cv.QueryFrame(capture))
img = cv.QueryFrame(capture)
#SOMETHING GOES HERE TO TURN FRAME INTO IMAGE
img = img.convert('L')
width, height = img.size
scanner = zbar.ImageScanner()
scanner.parse_config('enable')
zbar_img = zbar.Image(width, height, 'Y800', img.tostring())
# scan the image for barcodes
scanner.scan(zbar_img)
for symbol in zbar_img:
print symbol.data
到目前为止,我遇到了一些麻烦,其中转换图像是不是真的我拍摄的图像。 – QuantumRich
嘿,我有和你一样的问题,这个工作,但实际接受的答案没有。您应该将其标记为已接受 –