Sadržaj:
- Korak 1: Korak 1: Uvoz biblioteka
- Korak 2: Korak 2: Pristupite web kameri
- Korak 3: Korak 3: Čitanje okvira
- Korak 4: Korak 4: Čitanje podataka sa bar koda
- Korak 5: Korak 5: Crtanje pravokutnika oko QR koda i prikaz podataka
- Korak 6:
Video: Skener QR koda pomoću OpenCV -a u Pythonu: 7 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:04
U današnjem svijetu vidimo da se QR kod i bar kod koriste gotovo svugdje, od ambalaže proizvoda do plaćanja putem Interneta, a danas čak i u restoranima vidimo QR kodove da biste vidjeli jelovnik.
Tako da nema sumnje da je to sada velika misao. No, jeste li se ikada zapitali kako ovaj QR kôd funkcionira ili kako se skenira i dobivamo potrebne informacije? Ako ne znate, na pravom ste mjestu za odgovor.
U ovom Instructable -u ćete naučiti kako napraviti osvojeni skener QR koda pomoću Pythona i OpenCV -a
Potrošni materijal:
- Python (preporučeno 3.6, 3.7, 3.8)
- Biblioteka OpenCV
- Pyzbar biblioteka
Korak 1: Korak 1: Uvoz biblioteka
Počnimo s uvozom naših potrebnih biblioteka, Tako ćemo koristiti 3 biblioteke
1. OpenCV
2. Numpy
3. Pyzbar
Korak 2: Korak 2: Pristupite web kameri
Ovdje ćemo pristupiti našoj web kameri pomoću funkcije VideoCapture iz OpenCV -a i također postaviti širinu i visinu izlaznog prozora.
Ovdje je važno napomenuti da ako koristite svoju internu kameru, proslijedite 0 u funkciji VideoCapture, a ako koristite proširenu web kameru prođite 1
Sada u retku 6 definiramo visinu našeg izlaznog prozora kao 640 (3 se koristi za visinu)
U retku 7 definiramo visinu našeg izlaznog prozora kao 480 (4 se koristi za visinu)
Korak 3: Korak 3: Čitanje okvira
Čitanje okvira s web kamere je vrlo jednostavno. Samo trebate dodati while petlju i unutra, dok loop stvara dvije varijable, tj. Ret i frame čitaju okvire koristeći "cap.read ()".
Sada bi svi vaši okviri bili pohranjeni u promjenjivom "okviru"
Korak 4: Korak 4: Čitanje podataka sa bar koda
Sada ćemo stvoriti for petlju u kojoj ćemo čitati podatke iz bar koda.
Zato ćemo koristiti "dekodiranje" koje smo uvezli za dekodiranje podataka QR koda
i pohranit ćemo ga u varijablu "myData" i ispisati da provjerimo jesu li podaci točni ili ne
Korak 5: Korak 5: Crtanje pravokutnika oko QR koda i prikaz podataka
Dakle, prvo ćemo stvoriti varijabilni naziv pts koji je bod koji će nam dati 4 kutne točke našeg QR koda
Sada ćemo pomoću ovih točaka stvoriti pravokutnik oko našeg QR koda kao što je prikazano u retku 16-18
Za prikaz teksta koristit će se varijabla myData u kojoj su pohranjeni naši podaci
Korak 6:
I na kraju prikazujemo naš okvir pomoću funkcije "imshow" u OpenCV -u
Na liniji 22-23 programirali smo da ako pritisnemo "q" program će se prekinuti
Preporučuje se:
Otkrivanje boja u Pythonu pomoću OpenCV -a: 8 koraka
Otkrivanje boja u Pythonu pomoću OpenCV -a: Zdravo! Ova instrukcija se koristi za vodiče o tome kako izdvojiti određenu boju iz slike u pythonu pomoću biblioteke openCV. Ako ste tek počeli koristiti ovu tehniku, ne brinite, na kraju ovog vodiča moći ćete programirati svoju boju
Skener XYZ tačaka pomoću spašenih rotacionih davača: 5 koraka
XYZ skener tačaka pomoću spašenih rotacionih davača mogao bi to pohvaliti bolje od 3D -a
USB skener bar koda (Raspberry Pi): 4 koraka
USB skener bar koda (Raspberry Pi): Osnovni vodič o postavljanju USB skenera bar koda s Raspberry Pi
3D skener tijela pomoću Raspberry Pi kamera: 8 koraka (sa slikama)
3D skener tijela pomoću Raspberry Pi kamera: Ovaj 3D skener je zajednički projekt u BuildBrighton Makerspaceu s ciljem da digitalnu tehnologiju učini pristupačnom za grupe u zajednici. Skeneri se koriste u modnoj industriji, za prilagođavanje dizajna odjeće, u industriji igara za
WiFi skener za velike udaljenosti pomoću ESP8266: 6 koraka (sa slikama)
WiFi skener za velike udaljenosti pomoću ESP8266: U ovom uputstvu izrađujem prijenosni prijenosni uređaj za skeniranje na daljinu od 2,5 opsega koji se koristi za utvrđivanje koji je kanal najbolji za moju kućnu mrežu. Također se može koristiti za pronalaženje otvorenih WiFi pristupnih točaka u pokretu. Cijena izrade: oko 25 dolara