python中掃描條形碼和二維碼的實(shí)現(xiàn)代碼
簡單說明,代碼太難懂,先做此記錄留待來日在看
步驟:
1,pip install pyzbar安裝好該模塊。pyzbar模塊是Python一個開源庫用于掃描和識別二維碼信息。

2,隨便在網(wǎng)上找好兩張截圖


3,
from pyzbar import pyzbar
import matplotlib.pyplot as plt
import cv2
#條形碼定位及識別
def decode(image,barcodes):
#循環(huán)監(jiān)測條形碼
for barcode in barcodes:
#提取條形碼邊界框位置
#畫出圖中條形碼的邊界框
(x,y,w,h)=barcode.rect#獲得這個圖嗎的x,y坐標(biāo)和寬和高區(qū)域
cv2.rectangle(image,(x,y),(x+w,y+h),(255,0,0),5)#把它框起來用藍(lán)色,線粗5
#條形碼數(shù)據(jù)為字節(jié)對象,所以如果想在輸出圖像上
#畫出來,就需要先將它裝換為字符串
barcodeData=barcode.data.decode("utf-8")#將barcode的數(shù)據(jù)識別出來
barcodeType=barcode.type#類型也直接識別出來了
#繪制出圖像上條形碼的數(shù)據(jù)和條形碼的類型
text="{} ({})".format(barcodeData , barcodeType)
cv2.putText(image,text,(x,y-10),cv2.FONT_HERSHEY_SCRIPT_SIMPLEX,8,(255,0,0),2) # cv2.putText(image,text,(x,y-10)
#像終端打印條形碼數(shù)據(jù)和條形碼類型
print("[INFO] Found {} barcode:{}".format(barcodeType,barcodeData))
plt.figure(figsize=(10,10))
plt.imshow(image)
plt.show()
#1,讀取條形碼圖片
image=cv2.imread('tiaoxin.png')
bacodes=pyzbar.decode(image)#找到圖片中的條形碼并進(jìn)行解碼
decode(image,bacodes)#識別條形碼
#二維碼
image=cv2.imread('erwei.png')
bacodes=pyzbar.decode(image)
decode(image,bacodes)
運(yùn)行效果:


到此這篇關(guān)于python中掃描條形碼和二維碼的文章就介紹到這了,更多相關(guān)python條形碼和二維碼內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
關(guān)于Python可視化Dash工具之plotly基本圖形示例詳解
這篇文章主要介紹了關(guān)于Python可視化Dash工具之plotly基本圖形示例詳解,需要的朋友可以參考下2021-03-03
python+pytest接口自動化之日志管理模塊loguru簡介
python中有一個用起來非常簡便的第三方日志管理模塊--loguru,不僅可以避免logging的繁瑣配置,而且可以很簡單地避免在logging中多進(jìn)程多線程記錄日志時出現(xiàn)的問題,甚至還可以自定義控制臺輸出的日志顏色,接下來我們來學(xué)習(xí)怎么使用loguru模塊進(jìn)行日志管理2022-05-05
淺談django框架集成swagger以及自定義參數(shù)問題
這篇文章主要介紹了淺談django框架集成swagger以及自定義參數(shù)問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-07-07
Python打包工具PyInstaller的安裝與pycharm配置支持PyInstaller詳細(xì)方法
這篇文章主要介紹了Python打包工具PyInstaller的安裝與pycharm配置支持PyInstaller詳細(xì)方法,需要的朋友可以參考下2020-02-02

