python3下使用pyzbar讀取條碼

2021-10-07 09:34:20 字數 1386 閱讀 2952

使用的mac系統。

第一步:先安裝zbar的共享庫,使用brew安裝,安裝時經常會出錯,多試幾次,到全部庫檔案都安裝好。

brew install zbar
第二步,安裝pyzbar

python -m pip install pyzbar
安裝好後就可以使用了,寫個用攝像頭讀取條碼都測試程式,使用了opencv呼叫攝像頭以及把識別結果疊加在影象上。

# coding=utf-8

import cv2

import pyzbar.pyzbar as pyzbar

def decode(image): #解碼

barcodes = pyzbar.decode(image)

for barcode in barcodes:

# 提取並繪製影象中條形碼的邊界框

(x, y, w, h) = barcode.rect

cv2.rectangle(image, (x, y), (x + w, y + h), (0, 0, 255), 2)

barcodedata = barcode.data.decode("utf-8")

barcodetype = barcode.type

# 繪出影象上條形碼的資料和條形碼型別

text = "text:" + barcodedata

text2 = "type:" + barcodetype

font=cv2.font_hershey_******x

cv2.puttext(image,text,(30,30), font, 0.8,(0,255,0),2)

cv2.puttext(image,text2,(30,80), font, 0.8,(0,255,0),2)

return image

def camera():

camera = cv2.videocapture(0)

while true:

# 讀取當前幀

ret, img = camera.read()

img=decode(img)

img = cv2.resize(img,none,fx=0.5,fy=0.5,interpolation=cv2.inter_cubic)

cv2.imshow("camera", img)

#按q鍵退出程式

if cv2.waitkey(1) & 0xff == ord('q'):

break

camera.release()

cv2.destroyallwindows()

if __name__ == '__main__':

camera()

python3使用 python3使用模組

python內建了很多非常有用的模組,只要安裝完畢,這些模組就可以立刻使用。我們以內建的sys模組為例,編寫乙個hello的模組 usr bin env python3 coding utf 8 a test module author michael liao import sys def tes...

mysqldb在python3下無法使用的解決方案

mysqldb 在python3下無法使用!你可以換乙個module,比如pymysql 當然這些是我gg到的答案,目前還沒有試過,等以後有空填坑。如果別人引用了mysqldb模組且沒有報錯,且沒有別的什麼問題,不想改 那麼解決方案如下 注意一下加乙個manage.py檔案,具體命名是否有要求我不清...

linux 下 使用 yum安裝python3

一 yum 源準備 1 先更新一下yum sudo yum y update 該 y 標誌用於提醒系統我們知道我們正在進行更改,免去終端提示我們要確認再繼續 2 安裝yum utils 一組擴充套件和補充yum的實用程式和外掛程式 sudo yum y install yum utils 3 安裝c...