首页 > 编程知识 正文

python动态二维码制作,python 二维码识别

时间:2023-05-04 14:04:41 阅读:164962 作者:2669

原理很简单。 用OpenCV处理图像的pyzbar识别条形码。 一些python具有可以使用识别二维码和条形码的软件包pyzbar。 结合OpenCV处理图像的功能,可以标记二维码位置的内容

我们生活中常见的带有二维码和条形码的照片如下图

需要引线的包呢

importpyzbar.pyzbaraspyzbarimportnumpyfrompilimportimage、ImageDraw和ImageFontimport cv2首先用OpenCV导入图像处理图像

frame=cv2.imread (示例图表. jpg )转换为灰度图像gray=cv2.cvtcolor (frame,cv2.COLOR_BGR2GRAY )

灰度图像可以解码为pyzbar

barcodes=pyzbar.decode(gray )试着打印一下

[ decoded=b ' http://Weibo.com/u/3225432640 ',type='QRCODE ',rect=rect(left=451,top=246,width ) point ] decoded ) data=b'692530373999 height=134 ),polygon=[point(x=70,y=313 ) ],point ) x=70,y=345,point point(x=72,y=215 ),point(x=72,y=247 ) ]可以看出,barcodes将所有识别的信息存储在列表中,并循环读取,以获取我们想要的信息

for barcode in barcodes: #提取条形码边界框的位置#图像中的条形码边界框(x,y,w,h )=barcode.rect cv2.rectangle () rectcv2.rectangle ) ) frame 2)条形码数据是字节对象,所以在想在输出图像上进行#描绘情况下,首先是字符串barcode data=barcode.data.decode (utf-8 ) ) #将图像上的条形码数据和条形码类型barcodeType=barcode.type # cv2格式的图像转换为PIL格式的图像,在上面输入二维码和条形码的内容img _ pil=image.from array (cv2.cv2.cvvcve ) cv2.COLOR_BGR2RGB ) )参数)标记字体,默认大小(font=image font.truetype (stfangso.TTF ),25 ) #字体颜色fing颜色输出内容strl=barcodeData #需要将输出的中文字符转换为Unicode编码格式(str.decode ) utf-8 ) )。 创建画笔draw=imagedraw.draw(img_pil ) font=font,fill=fillcolor(#pil )使用本地img_PIL.save方法将图像映射到

打印结果

扫描结果==”类别:二维码内容: http://weibo.com/u/3225432640扫描结果==类别: EAN13内容: 6925303773908

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。