So generieren Sie QR-Code und Barcode in Python und lesen ihn normal oder in Echtzeit mit OpenCV

0. Zuerst

Wenn Sie sehen möchten, wie die Dinge, die Sie diesmal machen, funktionieren, lesen Sie bitte hier (Youtube-Video).

Installieren Sie zunächst sofort das, was Sie benötigen.

pip install pyqrcode
pip install pypng
pip install python_barcode
pip install pyzbar

1. Generierung des QR-Codes

Generieren Sie hier zunächst einen QR-Code, der Zeicheninformationen enthält.

qrcode_barcode.py


import pyqrcode

a = pyqrcode.create(content="Hello From Jetsonnano",error='H') 

a.png(file='test.png',scale=6) 

Wenn Sie dies ausführen, wird der folgende QR-Code erstellt. test.png Generieren Sie als Nächstes einen QR-Code mit den URL-Informationen. Dies ist der QR-Code, der üblicherweise an Bücher angehängt wird.

qrcode_barcode.py


import pyqrcode

b = pyqrcode.QRCode('https://www.youtube.com/channel/UCDYbu9aViDvkubFcwgbbKDA',error='M')

b.png('test2.png',scale=6)

Wenn Sie dies tun, wird der folgende QR-Code generiert. test2.png

Sie können die Farbe und Größe dieser QR-Codes ändern. Wenn Sie interessiert sind, lesen Sie bitte Youtube.

2. Barcode-Generierung

Dann generieren Sie einen Barcode. Es gibt viele andere Arten von Barcode, die in Python verwendet werden können, außer dem, den ich diesmal verwende. Wenn Sie interessiert sind, überprüfen Sie es bitte.

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') 

Dadurch wird ein Barcode generiert, der dem folgenden ähnlich ist. Der Barcode kann auch Buchstaben enthalten. barcode.png

3. Lesen Sie den QR-Code und den Barcode

Hier werden der QR-Code und der Barcode gelesen. Beide werden gleich gelesen.

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'))

4. Lesen mit OpenCV

Wenn hier mit OpenCV ein QR-Code oder Barcode erkannt wird, werden diese Informationen auf dem Bildschirm angezeigt.

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()

Wenn Sie dies tun, werden Informationen wie der von der Kamera gelesene Barcode auf dem Bildschirm angezeigt. Diese Methode ist jedoch nicht sehr cool, daher werde ich als nächstes eine coolere Methode vorstellen.

5. Lesen mit OpenCV (cool)

Wenn ein Barcode usw. erkannt wird, schließt er ihn in ein rotes Quadrat ein und zeigt die Informationen darauf an.

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()

Ich konnte den von mir erstellten Barcode und QR-Code lesen, aber den dem Buch beigefügten nicht.

Schließlich

Youtube erklärt auch, wie diese einfache Überwachungskamera hergestellt wird. Schauen Sie also bitte nach, wenn es Ihnen gefällt. Wenn Sie Fragen haben, verwenden Sie bitte den Kommentarbereich des Videos oder den Kommentarbereich dieses Artikels. Wenn es Ihnen gefällt, abonnieren Sie den Kanal.

Recommended Posts

So generieren Sie QR-Code und Barcode in Python und lesen ihn normal oder in Echtzeit mit OpenCV
So installieren Sie OpenCV in Cloud9 und führen es in Python aus
So erstellen Sie eine Überwachungskamera (Überwachungskamera) mit Opencv und Python
So ermitteln Sie mit Python den Unterschied zwischen Datum und Uhrzeit in Sekunden
So stoppen Sie das Programm bis zu einem bestimmten Datum und einer bestimmten Uhrzeit in Python
Lesen einer CSV-Datei mit Python 2/3
So generieren Sie eine Sequenz in Python und C ++
So geben Sie eine Zeichenfolge in Python ein und geben sie unverändert oder in die entgegengesetzte Richtung aus.
So lesen Sie Seriennummerndateien in einer Schleife, verarbeiten sie und zeichnen sie grafisch auf
So konvertieren / wiederherstellen Sie einen String mit [] in Python
So messen Sie die Verarbeitungszeit mit Python oder Java
Sie können es in 3 Minuten tun! So erstellen Sie einen funktionierenden QR-Code (GIF)!
Generieren Sie QR-Code in Python
So melden Sie sich mit Python bei AtCoder an und senden automatisch
So zeichnen Sie interaktiv eine Pipeline für maschinelles Lernen mit scikit-learn und speichern sie in HTML
Rufen Sie die Excel-Liste rekursiv in einem bestimmten Ordner mit Python ab und schreiben Sie sie in Excel.
[Python / Ruby] Mit Code verstehen Wie man Daten aus dem Internet abruft und in CSV schreibt
[Python] Was ist ein Tupel? Erklärt, wie man es benutzt und wie man es benutzt, ohne zu tippen.
Eine einfache Möglichkeit, die in Python benötigte Zeit anzuzeigen und sie intelligenter zu verbessern
[Python] Generiert QR-Code im Speicher
So machen Sie einen String in Python zu einem Array oder ein Array zu einem String
Lesen Sie die Big-Endian-Binärdatei in Python und konvertieren Sie sie in ndarray
So schreiben Sie offline in Echtzeit Lösen von E04-Problemen mit Python
Zeichnen Sie eine Aquarellillusion mit Kantenerkennung in Python3 und openCV3
So schreiben Sie offline in Echtzeit Lösen von F01-Problemen mit Python
So erstellen Sie eine Python- und Jupyter-Ausführungsumgebung mit VSCode
So berechnen Sie "xx time" in einem Schuss mit Python timedelta
Beachten Sie die Installation von Modulen wie pytorch und opencv mit pip in Blender Python (2.82a oder höher).
So generieren Sie eine neue Protokollgruppe in CloudWatch mit Python in Lambda
Debuggen eines Python-Programms durch Remoteverbindung mit einem Docker-Container in einer WSL2-Umgebung mit VS-Code
Wie man offline in Echtzeit schreibt Ich habe versucht, E11 mit Python zu lösen
[AWS lambda] Stellen Sie mit lambda verschiedene Bibliotheken bereit (generieren Sie eine Zip-Datei mit einem Kennwort und laden Sie sie auf s3 hoch) @ Python
So arbeiten Sie mit BigQuery in Python
Wie bekomme ich Stacktrace in Python?
So fügen Sie OpenCV in Raspberry Pi ein und sammeln mit Python ganz einfach Bilder von Gesichtserkennungsergebnissen
So setzen Sie in Python ein Leerzeichen mit halber Breite vor Buchstaben und Zahlen.
So überprüfen Sie die Version von opencv mit Python
So machen Sie den Containernamen in Docker als Subdomain zugänglich
Lesen Sie die CSV-Datei mit Python und konvertieren Sie sie unverändert in DataFrame
So formatieren Sie eine Liste von Wörterbüchern (oder Instanzen) in Python
Lesen von Standardeingabe- oder Variablendateien gleichzeitig wie der Befehl Einfügen in Python
Verwendung ist und == in Python
Wie man offline in Echtzeit schreibt Ich habe versucht, E12 mit Python zu lösen
Ein Befehl zum Angeben einer Datei mit einem bestimmten Namen in einem Verzeichnis mit find und mv, cp oder gzip (Linux)
Generieren Sie eine SSID und ein Passwort, konvertieren Sie es in einen QR-Code und werfen Sie es in Slack.
[Python] So benennen Sie Tabellendaten und geben sie mit csv aus (to_csv-Methode)
So legen Sie Google Text & Tabellen in einem Ordner zusammen in einer TXT-Datei mit Python ab
Versuchen Sie, Yuma mit Brainf * ck 512-Zeilen zu implementieren (Code mit Python generieren und ausführen)
Das Herunterfahren von CentOS 7 mit LVM-Konfiguration dauert lange.
Unterschiede beim Schreiben von externem Quellcode zwischen Ruby und Python
So erhalten Sie mit Python eine Liste der Dateien im selben Verzeichnis
[Python] So erstellen Sie eine lokale Webserverumgebung mit SimpleHTTPServer und CGIHTTPServer
[REAPER] Wie man Reascript mit Python spielt
So löschen Sie einen Taple in einer Liste (Python)
Einbetten von Variablen in Python-Strings
So erstellen Sie eine JSON-Datei in Python