python 实现二维码识别ScanQRcode.py

"""
生成二维码保存及对二维码解码输出
运行需要安装相应库
"""
import os
import qrcode
from PIL import Image
from pyzbar import pyzbardef createQRCode1(content, save_path=None):"""创建二维码图片,并保存:param content:二维码文本信息:param save_path:二维码保存地址:return:"""qr = qrcode.QRCode(version=5, error_correction=qrcode.constants.ERROR_CORRECT_M, box_size=8, border=4)qr.add_data(data=content)qr.make(fit=True)img = qr.make_image(fill_color="black", back_color="white")if save_path:img.save(save_path)else:img.show()def createQRCode2(content, icon_path, save_path=None):"""创建带中心图片的二维码,并保存:param content: 二维码文本信息:param icon_path: 中心图片地址:param save_path: 二维码保存地址:return: 无返回值"""# 判断中心图片是否存在if not os.path.exists(icon_path):raise FileExistsError(icon_path)# 创建二维码图片qr = qrcode.QRCode(version=5, error_correction=qrcode.constants.ERROR_CORRECT_H, box_size=8, border=4)qr.add_data(data=content)qr.make(fit=True)img = qr.make_image(fill_color="black", back_color="white").convert('RGBA')# 调整二维码图片icon_img = Image.open(icon_path)code_width, code_height = img.sizeicon_img = icon_img.resize((code_width // 4, code_height // 4), Image.ANTIALIAS)img.paste(icon_img, (code_width * 3 // 8, code_width * 3 // 8))if save_path:img.save(save_path)  # 保存二维码图片img.show()  # 显示二维码图片else:print("save error!")def decode_qr_code(code_img_path):"""识别二维码,对二维码进行编译,返回值:param code_img_path: 二维码的保存地址:return: 二维码的编译结果"""if not os.path.exists(code_img_path):raise FileExistsError(code_img_path)return pyzbar.decode(Image.open(code_img_path), symbols=[pyzbar.ZBarSymbol.QRCODE])if __name__ == "__main__":print("============QRcodetest===============")print("         1、Make a QRcode            ")print("         2、Scan a QRcode            ")print("=====================================")print("1、请输入二维码存储信息:")code_Data = input('>>:').strip()print("正在编码·······")# createQRCode2(code_Data, "img/QRcenter.jpg", "qrcode.png")  # 内容,center图片,生成二维码图片createQRCode1(code_Data, "qrcode.png")print("图片已保存,名称为:qrcode.png")results = decode_qr_code("qrcode.png")print("2、正在解码:")if len(results):print("解码结果是:")print(results[0].data.decode("utf-8"))else:print("无法识别")

通过摄像头进行二维码识别ScanQRbyVedio

'''
================================
test4:识别摄像头中的条形码或二维码
(ps.仅识别二维码码成功)
================================
'''
import cv2
import pyzbar.pyzbar as pyzbardef decodeDisplay(image):barcodes = pyzbar.decode(image)for barcode in barcodes:# 提取二维码的边界框的位置# 画出图像中条形码的边界框(x, y, w, h) = barcode.rectcv2.rectangle(image, (x, y), (x + w, y + h), (225, 225, 225), 2)# 提取二维码数据为字节对象,所以如果我们想在输出图像上# 画出来,就需要先将它转换成字符串barcodeData = barcode.data.decode("utf-8")barcodeType = barcode.type# 绘出图像上条形码的数据和条形码类型text = "{} ({})".format(barcodeData, barcodeType)cv2.putText(image, text, (x, y - 10), cv2.FONT_HERSHEY_SIMPLEX,.5, (225, 225, 225), 2)# 向终端打印条形码数据和条形码类型print("[INFO] Found {} barcode: {}".format(barcodeType, barcodeData))return imagedef detect():camera = cv2.VideoCapture(0)while True:# 读取当前帧ret, frame = camera.read()# 转为灰度图像gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)im = decodeDisplay(gray)cv2.waitKey(5)cv2.imshow("camera", im)# 如果按键q则跳出本次循环if cv2.waitKey(10) & 0xFF == ord('q'):breakcamera.release()cv2.destroyAllWindows()if __name__ == '__main__':detect()

python 调用qrcode库实现二维码识别相关推荐

  1. 巧用Python的Qrcode库生成二维码大全

    二维码介绍 QR 码是二维条码的一种,QR来自英文 "Quick Response" 的缩写,即快速反应的意思,源自发明者希望 QR 码可让其内容快速被解码. QR 码 比普通条码 ...

  2. python qrcode库生成二维码的代码

    如下内容内容是关于python qrcode库生成二维码的内容,希望能对各位有所用. import qrcode img = qrcode.make('Some data here')高级用法impo ...

  3. python利用myqr库生成二维码

    1.今天,来学习一下利用myqr库来生成二维码,首先,先执行命令安装myqr这个库,输入以下命令: pip install myqr 2.安装成功后,在本地的磁盘底下建一个目录,这里我存放的目录为:E ...

  4. [Python]使用QRCode生成彩色二维码

    一. 安装QRCode模块 QRCode模块依赖于Pillow模块,在安装QRCode模块前需要先安装Pillow模块.可使用如下命令安装: pip install Pillow QRCode模块安装 ...

  5. 【毕业设计】python+opencv+深度学习实现二维码识别

    文章目录 0 前言 2 二维码基础概念 2.1 二维码介绍 2.2 QRCode 2.3 QRCode 特点 3 机器视觉二维码识别技术 3.1 二维码的识别流程 3.2 二维码定位 3.3 常用的扫 ...

  6. python中使用qrcode库生成二维码时,填充logo变成黑白色的解决方法。

    python如何生成qrcode的教程已经有很多了,我这里仅仅排一下坑. import qrcode from PIL import Imageqr = qrcode.QRCode(version=1 ...

  7. python之qrcode模块生成二维码

    用Python的qrcode包来生成二维码很简单 一.前期准备: pip install qrcode qrcode 依赖 Image 这个包: pip install Image 二.安装好之后就可 ...

  8. Python使用QRCode模块生成二维码

    简介 python-qrcode是个用来生成二维码图片的第三方模块,依赖于 PIL 模块和 qrcode 库. 简单用法 import qrcode img = qrcode.make('hello, ...

  9. 第47章 QR-Decoder-OV5640二维码识别—零死角玩转STM32-F429系列

    第47章     QR-Decoder-OV5640二维码识别 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.y ...

最新文章

  1. MySQL重置root用户密码的方法
  2. 员工拒绝加班,被判赔公司1.8万!网友炸锅
  3. 洛谷P2518 [HAOI2010]计数
  4. docker 无法正常启动或版本信息会报错 Cannot connect to the Docker daemon at
  5. c++ 之动态数组简单介绍
  6. springboot介绍_Spring Boot 主类及目录结构介绍!
  7. Mac与Phy组成原理的简单分析
  8. 前端学习(1551):补充cloak
  9. BootStrap笔记-Model(模式对话框)样式修改
  10. 关于android的tabhost中进行参数传递的问题
  11. VOS中历史话单显示通话会话超时中断详解
  12. 关于目标文件系统,文件过大的解决方法
  13. 网络资源大搜索(转)
  14. org.springframework.beans.factory.BeanDefinitionStoreException: Failed to process import candidates
  15. 制造业数字化转型存在哪些问题
  16. k线符号图解大全_股市k线图各种符号意义?k线符号图解大全!
  17. 解决桌面图标左下角蓝色问号问题
  18. java输入长和宽输出面积_用Java实现计算矩形的面积与周长
  19. error: 'FILE' undeclared (first use in this function)
  20. 服务器配置(测试服务器)

热门文章

  1. java跨境电商ERP系统源码 亚马逊跨境电商全套源码SaaS系统
  2. DHCP,DNS,以及网关的意思和存在意义
  3. 这是我裸辞接单第一个月的收入
  4. 原来PWM这么简单!通过锯齿波作为载波和调制波经过比较,产生相应的PWM输出波形
  5. 第四次的面试 C++ 面试 (迷茫) + (复习知识点)
  6. 宇视网络视频录像机国标对接配置指导
  7. 小蚁摄像机存储到计算机,小蚁摄像机电脑客户端
  8. flink maven依赖自用(项目用)
  9. 每日一道Leetcode - 剑指 Offer 14- I. 剪绳子【动态规划】
  10. 实现C#和Python高效率混合编程