QR -koodi (Quick Response code) on eräänlainen matriisiviivakoodi, joka tallentaa koodatut tiedot. Se sai nimen Quick Response Code, koska se pystyy tallentamaan ja käyttämään suuria tietoja hetkessä. Löydät nämä QR -koodit kaikkialta: julisteita, lehtiä, elokuvateattereita, verkkosivustoja, kuntosaleja, mainoksia jne.
Pythonin avulla voit luoda oman QR -koodisi, muokata sitä ja purkaa tietoja QR -koodista.
Määritä Python -ympäristö
On suositeltavaa luoda eristetty ympäristö Python -projekteille. Kun teet tämän, voit ymmärtää enemmän projektin riippuvuuksista.
Virtuaalisen ympäristön luominen
Sinä pystyt Luo virtuaalinen ympäristö Pythoniin useilla tavoilla: virtualenv, virtualenvwrapper tai Anaconda. Tässä käytämme virtualenv virtuaalisen ympäristön luomiseksi.
- Luo kansio käyttämällä mkdir [kansio] komento, johon haluat luoda tämän projektin.
- Tyyppi cd [kansio] komentokehotteessa siirtyäksesi uuteen hakemistoon.
- Tyyppi virtualenv [Ympäristönimi] virtuaalisen ympäristön luomiseksi.
- Aktivoi virtuaalinen ympäristö kirjoittamalla [Ympäristönimi] Skriptit aktivoi
Asenna tarvittavat paketit
Asenna tarvittavat Python -paketit pip -komennolla. Varmista, että sinulla on pip asennettu järjestelmään .
Suorita seuraava komento komentoriviltä.
pip3 install opencv-python qrcode numpy Image
Jos et halua asentaa kaikkia paketteja kerralla, voit asentaa ne yksitellen seuraavasti:
pip3 install opencv-python
Tämä asentaa opencv-python-paketin, jota käytetään pääasiassa tietokoneen näkemiseen, koneoppimiseen ja kuvankäsittelyyn.
pip3 install qrcode
Tämä asentaa qrcode python -paketin, jota käytetään QR -koodien luomiseen ja lukemiseen.
pip3 install numpy
Tämä asentaa numpy python -paketin, jota käytetään matriisien kanssa työskentelyyn.
pip3 install Image
Tämä asentaa Image python -paketin, joka tarjoaa useita toimintoja kuvien lataamiseen tiedostoista ja uusien kuvien luomiseen.
Luo QR -koodi
Luo koodi luomalla uusi tiedosto, jossa on .py laajennus, jolla on koodi QR -koodin luomiseksi.
Liitä seuraava koodi Python -tiedostoosi ja suorita ohjelma.
kuinka katsella televisiota kannettavalla tietokoneella Internetin kanssa
import qrcode
# Data for which you want to make QR code
# Here we are using the URL of the MakeUseOf website
data = 'https://www.makeuseof.com/'
# File name of the QR code Image
# Change it with your desired file name
QRCodefile = 'MUOQRCode.png'
# Generating the QR code
QRimage = qrcode.make(data)
# Saving image into a file
QRimage.save(QRCodefile)
Tämä luo QR -koodikuvan (MUOQRCode.png) annetuille tiedoille (tässä tapauksessa www.makeuseof.com ). Luotu QR -koodi näyttää tältä:
Luo mukautettu QR -koodi
Voit muokata QR -koodia qrcode -kirjaston hämmästyttävillä ominaisuuksilla. Voit muuttaa QR -koodin täyttöväriä, taustaväriä, kuvan kokoa, laatikon kokoa ja reunan paksuutta.
Kuvan ja laatikon koon muuttaminen
Voit muuttaa QR -koodin kuvan kokoa versio parametri QRCode -luokassa. Se hyväksyy kokonaisluvun 1 ja 40 välillä, missä 1 vastaa 21x21 -matriisia ja 40 vastaa 185x185 -matriisia. Huomaa, että tiedot eivät sovi määritettyyn kokoon, vaan versio skaalautuu automaattisesti.
Voit myös muuttaa laatikon kokoa näppäimellä box_size parametri QRCode -luokassa. Se määrittää jokaisen QR -koodin ruudun pikselit.
# Importing libraries
import qrcode
import numpy as np
# Data which for you want to make QR code
# Here we are using URL of MakeUseOf website
data = 'https://www.makeuseof.com/'
# Name of the QR code Image file
QRCodefile = 'CustomisedImgBoxQRCode.png'
# instantiate QRCode object
qrObject = qrcode.QRCode(version=1, box_size=12)
# add data to the QR code
qrObject.add_data(data)
# compile the data into a QR code array
qrObject.make()
image = qrObject.make_image()
image.save(QRCodefile)
# print the image size (version)
print('Size of the QR image(Version):')
print(np.array(qrObject.get_matrix()).shape)
Seuraava QR -koodikuvatiedosto luodaan:
Myös seuraava lähtö näytetään-
Size of the QR image(Version):
(33, 33)
Huomaa, että versio skaalataan automaattisesti datan koon mukaan.
Täyttövärin vaihtaminen
Voit muuttaa QR -koodin täyttöväriä käyttämällä täyttöväri parametri.
# Importing library
import qrcode
# Data for which you want to make QR Code
# Here we are using URL of MakeUseOf website
data = 'https://www.makeuseof.com/'
# Name of the QR Code Image file
QRCodefile = 'CustomisedFillColorQRCode.png'
# instantiate QRCode object
qrObject = qrcode.QRCode()
# add data to the QR code
qrObject.add_data(data)
# compile the data into a QR code array
qrObject.make()
image = qrObject.make_image(fill_color='red')
# Saving image into a file
image.save(QRCodefile)
Seuraava QR -koodikuvatiedosto luodaan:
Taustan värin vaihtaminen
Voit muuttaa QR -koodin taustaväriä käyttämällä back_color parametri.
# Importing library
import qrcode
# Data for which you want to make QR Code
# Here we are using URL of MakeUseOf website
data = 'https://www.makeuseof.com/'
# Name of the QR Code Image file
QRCodefile = 'CustomisedBGColorQRCode.png'
# instantiate QRCode object
qrObject = qrcode.QRCode()
# add data to the QR code
qrObject.add_data(data)
# compile the data into a QR code array
qrObject.make()
image = qrObject.make_image(back_color='blue')
# Saving image into a file
image.save(QRCodefile)
Seuraava QR -koodikuvatiedosto luodaan:
Reunan paksuuden muuttaminen
Voit muuttaa QR -koodin reunan paksuutta käyttämällä raja parametri QRCode -luokassa.
# Importing libraries
import qrcode
# Data for which you want to make QR Code
# Here we are using URL of MakeUseOf website
data = 'https://www.makeuseof.com/'
# Name of the QR Code Image file
QRCodefile = 'CustomisedBorderQRCode.png'
# instantiate QRCode object
qrObject = qrcode.QRCode(border=10)
# add data to the QR code
qrObject.add_data(data)
# compile the data into a QR code array
qrObject.make()
image = qrObject.make_image()
image.save(QRCodefile)
Seuraava QR -koodikuvatiedosto luodaan:
Pura QR -koodi käyttämällä QR -koodikuvaa
Voit purkaa tiedot QR -koodikuvasta Pythonin OpenCV -kirjaston avulla. OpenCV: ssä on sisäänrakennettu QR -koodinilmaisin. Ilmaisimen avulla voit purkaa tiedot QR -koodista.
# Import Library
import cv2
# Name of the QR Code Image file
filename = 'MUOQRCode.png'
# read the QRCODE image
image = cv2.imread(filename)
# initialize the cv2 QRCode detector
detector = cv2.QRCodeDetector()
# detect and decode
data, vertices_array, binary_qrcode = detector.detectAndDecode(image)
# if there is a QR code
# print the data
if vertices_array is not None:
print('QRCode data:')
print(data)
else:
print('There was some error')
Jos annettu kuva on kelvollinen QR -koodi, dekoodatut tiedot näytetään. Tässä tapauksessa syntyy seuraava lähtö-
QRCode data:
https://www.makeuseof.com/
Dekoodaa QR -koodi reaaliaikaisesti verkkokameran avulla
Useimmiten ihmiset käyttävät yleensä verkkokameraa QR -koodien skannaamiseen. Käyttämällä Python- ja OpenCV -kirjaston mahdollisuuksia voit purkaa tiedot helposti QR -koodista.
import cv2
# initalize the camera
cap = cv2.VideoCapture(0)
# initialize the OpenCV QRCode detector
detector = cv2.QRCodeDetector()
while True:
_, img = cap.read()
# detect and decode
data, vertices_array, _ = detector.detectAndDecode(img)
# check if there is a QRCode in the image
if vertices_array is not None:
if data:
print('QR Code detected, data:', data)
# display the result
cv2.imshow('img', img)
# Enter q to Quit
if cv2.waitKey(1) == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
Kun suoritat tämän koodin, verkkokamerasi avautuu automaattisesti. Pidä vain QR -koodia verkkokameran edessä, niin tiedot dekoodataan ja näytetään komentoriviltä.
QR -koodin koodaus ja dekoodaus tehty helpoksi
Tämän artikkelin avulla voit helposti koodata, purkaa ja muokata QR -koodeja haluamallasi tavalla. Voit jopa luoda täydellisen QR-koodiskanneri-generaattorisovelluksen annetulla koodilla.
QR -koodeja voi käyttää useilla luovilla tavoilla. Ole luova ja käytä QR -koodeja haluamallasi tavalla.
Jaa Jaa Tweet Sähköposti Kuinka skannata QR -koodi Androidissa ja iPhonessaSekä Android- että iPhone-laitteisiin on esiasennettu QR-koodiskanneri. Näin käytät sitä.
Lue seuraava Liittyvät aiheet- Ohjelmointi
- QR koodi
- Python
Yuvraj on tietojenkäsittelytieteen perusopiskelija Delhin yliopistossa Intiassa. Hän on intohimoinen Full Stack Web -kehityksestä. Kun hän ei kirjoita, hän tutkii eri tekniikoiden syvyyttä.
kuinka muuttaa ps4 -nimesiLisää Yuvraj Chandralta
tilaa uutiskirjeemme
Liity uutiskirjeeseemme saadaksesi teknisiä vinkkejä, arvosteluja, ilmaisia e -kirjoja ja ainutlaatuisia tarjouksia!
Klikkaa tästä tilataksesi