Satura rādītājs:

QR koda skeneris, izmantojot OpenCV programmā Python: 7 soļi
QR koda skeneris, izmantojot OpenCV programmā Python: 7 soļi

Video: QR koda skeneris, izmantojot OpenCV programmā Python: 7 soļi

Video: QR koda skeneris, izmantojot OpenCV programmā Python: 7 soļi
Video: Как отсканировать QR код с экрана Android 2024, Decembris
Anonim

Mūsdienu pasaulē mēs redzam, ka QR kods un svītru kods tiek izmantoti gandrīz visur, sākot no produktu iesaiņojuma līdz tiešsaistes maksājumiem, un mūsdienās mēs redzam QR kodus pat restorānā, lai redzētu izvēlni.

Tāpēc nav šaubu, ka tagad tā ir lielā doma. Bet vai esat kādreiz domājuši, kā darbojas šis QR kods vai kā tas tiek skenēts, un mēs iegūstam nepieciešamo informāciju? Ja jūs nezināt, tad esat īstajā vietā, lai saņemtu atbildi.

Šajā pamācībā jūs uzzināsit, kā izveidot savu uzvarēto QR koda skeneri, izmantojot Python un OpenCV

Piegādes:

  1. Python (ieteicams 3,6, 3,7, 3,8)
  2. OpenCV bibliotēka
  3. Pyzbar bibliotēka

1. darbība: 1. darbība: bibliotēku importēšana

1. darbība: bibliotēku importēšana
1. darbība: bibliotēku importēšana

Sāksim ar nepieciešamo bibliotēku importēšanu, Tātad mēs izmantosim 3 bibliotēkas

1. OpenCV

2. Rupjš

3. Pyzbar

2. darbība: 2. darbība: piekļūstiet tīmekļa kamerai

2. darbība: piekļūstiet tīmekļa kamerai
2. darbība: piekļūstiet tīmekļa kamerai

Šeit mēs piekļūsim savai tīmekļa kamerai, izmantojot OpenCV funkciju VideoCapture, kā arī iestatīsim izvades loga platumu un augstumu.

Šeit svarīgs ir tas, ka, ja jūs izmantojat savu iekšējo tīmekļa kameru, tad VideoCapture funkcijā nokārtojiet 0 un ja izmantojat ārējo tīmekļa kameru 1.

Tagad 6. rindā mēs definējam izvades loga augstumu kā 640 (3 izmanto augstumam)

7. rindā mēs definējam izvades loga augstumu kā 480 (4 tiek izmantots augstumam)

3. darbība: 3. darbība: rāmju lasīšana

3. darbība: rāmju lasīšana
3. darbība: rāmju lasīšana

Rāmju lasīšana no tīmekļa kameras ir ļoti vienkārša. Jums vienkārši jāpievieno cikla cilpa un iekšpusē, kamēr cilpa izveido divus mainīgos, ti, ret un frame nolasa rāmjus, izmantojot "cap.read ()".

Tagad visi jūsu kadri tiks saglabāti mainīgā "rāmī"

4. darbība: 4. darbība: datu nolasīšana no svītrkoda

4. darbība: datu nolasīšana no svītrkoda
4. darbība: datu nolasīšana no svītrkoda

Tagad mēs izveidosim for cilpu, kurā mēs lasīsim svītrkoda datus.

Tātad mēs izmantosim “atšifrēt”, ko esam importējuši, lai atšifrētu QR koda datus

un mēs to saglabāsim mainīgajā "myData" un izdrukāsim, lai pārbaudītu, vai dati ir pareizi vai nē

5. darbība: 5. darbība: taisnstūra zīmēšana ap QR kodu un datu parādīšana

5. darbība. Taisnstūra zīmēšana ap QR kodu un datu parādīšana
5. darbība. Taisnstūra zīmēšana ap QR kodu un datu parādīšana

Tātad vispirms mēs izveidosim mainīgā nosaukumu pts, kas ir punkti, kas mums piešķirs 4 mūsu QR koda stūra punktus

Tagad, izmantojot šos punktus, mēs izveidosim taisnstūri ap mūsu QR kodu, kā parādīts 16.-18

Lai parādītu tekstu, tiks izmantots mainīgais myData, kurā tiek glabāti mūsu dati

6. darbība

Attēls
Attēls

Visbeidzot, mēs parādām savu rāmi, izmantojot OpenCV funkciju "imshow"

22.-23. Rindā mēs esam ieprogrammējuši, ka, nospiežot "q", programma tiks pārtraukta

Ieteicams: