Si vous souhaitez voir comment fonctionne le produit que vous fabriquez cette fois-ci, veuillez consulter ici (vidéo youtube).
Tout d'abord, installez immédiatement ce dont vous avez besoin.
pip install pyqrcode
pip install pypng
pip install python_barcode
pip install pyzbar
Ici, commencez par générer un code QR contenant des informations sur les caractères.
qrcode_barcode.py
import pyqrcode
a = pyqrcode.create(content="Hello From Jetsonnano",error='H')
a.png(file='test.png',scale=6)
Lorsque vous exécutez cela, le code QR suivant sera créé. Ensuite, générez un code QR contenant les informations d'url. Il s'agit du code QR généralement associé aux livres.
qrcode_barcode.py
import pyqrcode
b = pyqrcode.QRCode('https://www.youtube.com/channel/UCDYbu9aViDvkubFcwgbbKDA',error='M')
b.png('test2.png',scale=6)
Lorsque vous faites cela, le code QR suivant sera généré.
Vous pouvez changer la couleur et la taille de ces codes QR, donc si vous êtes intéressé, veuillez consulter Youtube.
Générez ensuite un code-barres. Il existe de nombreux autres types de codes à barres qui peuvent être utilisés en Python en plus de celui que j'utilise cette fois. Si vous êtes intéressé, veuillez le vérifier.
qrcode_barcode.py
import barcode
from barcode.writer import ImageWriter
d = '938469387183'
a = barcode.get_barcode_class('ean13')
b = a(d,writer=ImageWriter())
c = b.save('barcode')
Cela générera un code à barres similaire à celui ci-dessous. Le code à barres peut également contenir des lettres.
Ici, le code QR et le code à barres sont lus. Les deux sont lus de la même manière.
qrcode_barcode.py
from pyzbar.pyzbar import decode
from PIL import Image
d = decode(Image.open('qrcode.png'))
print(d[0].data.decode("utf-8"))
#e = decode(Image.open('barcode.png'))
#print(e[0].data.decode('utf-8'))
Ici, lorsqu'un code QR ou un code à barres est détecté à l'aide d'OpenCV, ces informations sont affichées à l'écran.
qrcode_barcode.py
from pyzbar.pyzbar import decode
import cv2
cap = cv2.VideoCapture(0)
font = cv2.FONT_HERSHEY_SIMPLEX
while cap.isOpened():
ret,frame = cap.read()
if ret == True:
d = decode(frame)
if d:
frame = cv2.putText(frame,d[0].data.decode('utf-8'),(10,50),font,1,(0,255,255),2,cv2.LINE_AA)
cv2.imshow('frame',frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
Lorsque vous faites cela, des informations telles que le code-barres lu par l'appareil photo seront affichées à l'écran. Cependant, cette méthode n'est pas très cool, je vais donc vous présenter une méthode plus cool ensuite.
Lorsqu'il détecte un code à barres, etc., il l'enferme dans un carré rouge et affiche les informations dessus.
qrcode_barcode.py
from pyzbar.pyzbar import decode
import cv2
cap = cv2.VideoCapture(0)
font = cv2.FONT_HERSHEY_SIMPLEX
while cap.isOpened():
ret,frame = cap.read()
if ret == True:
d = decode(frame)
if d:
for barcode in d:
x,y,w,h = barcode.rect
cv2.rectangle(frame,(x,y),(x+w,y+h),(0,0,255),2)
barcodeData = barcode.data.decode('utf-8')
frame = cv2.putText(frame,barcodeData,(x,y-10),font,.5,(0,0,255),2,cv2.LINE_AA)
cv2.imshow('frame',frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
Je pouvais lire le code à barres et le code QR que j'avais créés, mais je ne pouvais pas lire celui joint au livre.
Youtube explique également comment faire cette simple caméra de surveillance, alors jetez un œil si vous l'aimez. Si vous avez des questions, veuillez utiliser la section commentaires de la vidéo ou la section commentaires de cet article. De plus, si vous l'aimez, veuillez vous abonner à la chaîne.
Recommended Posts