python实现树莓派生成并识别二维码
python实现树莓派生成并识别二维码
参考来源:http://blog.csdn.net/Burgess_Liu/article/details/40397803
设备及环境
- 树莓派2代
- 官方系统Raspbian
- 官方树莓派摄像头模块
设备连接
摄像头模块插入到距离网卡口最近的那个接口,板上有Camera的字样,看清楚正反面。
启用摄像头
sudo raspi-config
- 选项:Camera
- 选项:Enable
- 选项:Finish
- 选项:Reboot
关键代码
安装依赖环境:
sudo apt-get install python-imaging
sudo apt-get install zbar-tools
sudo apt-get install qrencode
sudo apt-get install python-pygame
python代码:
qrcode.py
#!/usr/bin/env python
#-*- coding: UTF-8 -*-
import os, signal, subprocess
strfile1 = "qrcode"
def erzeugen():
text=raw_input(u"enter text QRCode: ")
os.system("qrencode -o "+strfile1+".png '"+text+"'")
print u"QRCode in: "+strfile1+".png"
def lesen():
os.system("raspistill -w 320 -h 240 -o /home/pi/cameraqr/image.jpg")
print u"raspistill finished"
#zbarcam=subprocess.Popen("zbarcam --raw --nodisplay /dev/video0", stdout=subprocess.PIPE, shell=True, preexec_fn=os.setsid)
#print u"zbarcam started successfully..."
#qrcodetext=zbarcam.stdout.readline()
zbarcam=subprocess.Popen("zbarimg --raw /home/pi/cameraqr/image.jpg", stdout=subprocess.PIPE, shell=True, preexec_fn=os.setsid)
qrcodetext=zbarcam.stdout.readline()
if qrcodetext!="":
print qrcodetext
else:
print u"qrcodetext is empty"
#os.killpg(zbarcam.pid, signal.SIGTERM)
print u"zbarcam stopped successfully..."
return u"QRCode: "+qrcodetext
main.py
#!/usr/bin/env python
#-*- coding: UTF-8 -*-
import qrcode
while (True):
print u"1: qrcode create"
print u"2: qrcode identify"
print u"3: exit"
select=int(raw_input(u"please choose: "))
if select == 1:
qrcode.erzeugen()
elif select == 2:
result=qrcode.lesen().strip()
print result
elif select == 3:
print u"programme completed..."
break
使用方法
选项1:生成文本二维码,输入文本回车即可,路径在当前路径,文件名: qrcode.png
选项2:识别二维码:摄像头对准二维码即可(无法识别的提示,请摆准摄像头再次运行选项2)
python实现树莓派生成并识别二维码的更多相关文章
- 使用ZXing.Net生成与识别二维码(QR Code)
Google ZXing是目前一个常用的基于Java实现的多种格式的1D/2D条码图像处理库,出于其开源的特性其现在已有多平台版本.比如今天要用到的ZXing.Net就是针对微软.Net平台的版本.使 ...
- 在Windows IoT上生成和识别二维码
在Windows IoT生成和识别二维码,实际上由于是UWP上实现,所以,理论上,这些生成和识别二维码的方法也可以在其它平台上运行. 关于二维码的生成有很多库可以实现,比如QRCoder,这个库可以在 ...
- Python3+qrcode+zxing生成和识别二维码教程
一.安装依赖库 pip install qrcode pillow image zxing pillow是python3中PIL的代替库,image是生成图版需要用到的库 安装image时报错“Cou ...
- C#生成和识别二维码
用到外部一个DLL文件(ThoughtWorks.QRCode.dll),看效果 生成截图 识别截图 生成二维码后右键菜单可以保存二维码图片,然后可以到识别模式下进行识别,当然生成后可以用手机扫描识别 ...
- PHP 生成、识别二维码及安装相关扩展/工具
2018-02-20 00:30:26 更新:推荐新扩展(极力推荐) 这篇文章里用的两个二维码扩展都有些问题和麻烦:phpqrcode(生成二维码)的源码有点小 bug: 而 php-zbarcod ...
- Python用MyQR生成自定义个性二维码
MyQR是一个能够生成自定义二维码的python第三方库,根据需要能够生成普通二维码.带背景图片的艺术二维码.动态二维码. 1.MyQR安装 安装非常简单,直接用pip install MyQR,需要 ...
- 利用ZXing.Net生成和识别二维码
ZXing.Net:ZXing是一个开放源码的,用Java实现的多种格式的1D/2D条码图像处理库. github:https://github.com/micjahn/ZXing.Net 直接将字符 ...
- ZXing 生成、读取二维码(带logo)
前言 ZXing,一个支持在图像中解码和生成条形码(如二维码.PDF 417.EAN.UPC.Aztec.Data Matrix.Codabar)的库.ZXing(“zebra crossing”)是 ...
- Pyqt+QRcode 生成 识别 二维码
1.生成二维码 python生成二维码是件很简单的事,使用第三方库Python QRCode就可生成二维码,我用Pyqt给QRcode打个壳 一.python-qrcode介绍 python-qrco ...
随机推荐
- Json.net实现方便的Json转C#(dynamic动态类型)对象
以前需要将一段json字符串转换为C#对象时,一般都是定义一个与之对应的实体类来接收.这样做有一个很大的缺点,就是当字符串特别长,属性特别多,又有嵌套时,手敲这个实体类就非常痛苦. 比如之前做的一个接 ...
- PowerDesigner之PDM(物理概念模型)
一.PDM概述 PDM(物理数据模型),通俗地理解,就是在PowerDesigner中以图形化的方式展示和设计数据库. PDM中涉及到的基本概念包括: 表: 列: 视图: 主键: 候选键: 外键: 存 ...
- jQ复制按钮的插件zclip
zclip官网:http://www.steamdev.com/zclip/ swf文件国内下载:ZeroClipboard.swf jQuery-zclip是一个复制内容到剪贴板的jQuery插件, ...
- 【转】DDR3详解(以Micron MT41J128M8 1Gb DDR3 SDRAM为例)
这两天正在学习FPGA如何控制DDR3的读写,找到一篇个人感觉比较有意义的文章,可以对DDR的内部结构有一个初步的了解.原文出处:http://blog.chinaunix.net/uid-28458 ...
- 【Framework】深入研究Asp.net页面的生命周期
介绍 Asp.net是微软.Net战略的一个组成部分.它相对以前的Asp有了很大的发展,引入了许多的新机制.本文就Asp.net页面的生命周期向大家做一个初步的介绍,以期能起到指导大家更好.更灵活地操 ...
- Arrays.asList(数组) 解说
最近在用Arrays的asList()生成的List时,List元素的个数时而不正确. Java代码 一:Arrays.asList(数组)该方法是将数组转化为集合(该方法主要用于Object对象数组 ...
- 装逼利器之DLog -DEBUG
#ifdef DEBUG #define DLog(fmt, ...) NSLog((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __L ...
- Windows2003屏蔽IP
1.打开本地安全策略 2.创建新的IP策略 去掉勾选向导 我们编辑 直接右键指派 指派可以看出来生效...网络已经不通了
- HTML 5 Canvas
HTML 5 Canvas HTML5 的 canvas 元素使用 JavaScript 在网页上绘制图像. <canvas id="myCanvas" width=&q ...
- [Redis] RDB & AOF
http://my.oschina.net/davehe/blog/174662 rdb - 存在dump.rdb 的二进制文件中 dump 整个db, 数据多的时候,不合适频繁保存,保存的时间间隔应 ...