Brūkšniniai kodai yra įprastas vaizdas mūsų kasdieniame gyvenime. Atlikę vos kelis paprastus veiksmus, galite be vargo generuoti ir nuskaityti brūkšninius kodus naudodami Python.

Kai perkate prekę parduotuvėje, lygiagrečios juodos skirtingo pločio juostelės ant įsigytos prekės vadinamos brūkšniniu kodu. Brūkšniniai kodai yra duomenų pateikimo vaizdiniu, mašininio skaitomu formatu metodas. Brūkšniniai kodai naudojami informacijai apie produktus saugoti, kad būtų lengviau identifikuoti ir sekti. Įvairios pramonės šakos naudoja brūkšninius kodus atsargų valdymui.

Naudodami Python galite generuoti brūkšninius kodus, nuskaityti ir nuskaityti brūkšninio kodo turinį.

Kaip generuoti ir pritaikyti brūkšninius kodus

Šie veiksmai parodo, kaip generuoti brūkšninius kodus naudojant python brūkšninis kodas biblioteka.

1. Įdiekite reikiamą biblioteką

Atidarykite savo terminalą arba komandų eilutę ir paleiskite šią pip komandą, kad įdiegtumėte reikiamą biblioteką. Įsitikinkite, kad jūsų kompiuteryje įdiegtas pip.

instagram viewer
pip install python-barcode

2. Importuokite reikalingus modulius

Į savo scenarijų įtraukite šiuos importavimo teiginius, kad importuotumėte modulius, reikalingus brūkšninio kodo generavimui.

import barcode
from the barcode.writer import ImageWriter

Rašytojai tvarkyti brūkšninio kodo vaizdų generavimą ir išsaugojimą įvairiais formatais. The python brūkšninis kodas biblioteka siūlo skirtingus brūkšninių kodų rašymo įrenginius. Čia jūs ketinate naudoti ImageWriter klasė, kuri pateikia brūkšninius kodus kaip vaizdus.

3. Kodas brūkšniniam kodui generuoti

The python brūkšninis kodas biblioteka siūlo įvairius brūkšninių kodų formatus, tokius kaip Code39, Code128, EAN13 ir ISBN-10 brūkšniniams kodams generuoti.

defgenerate_barcode(data, barcode_format, options=None):
# Get the barcode class corresponding to the specified format
barcode_class = barcode.get_barcode_class(barcode_format)
# Create a barcode image using the provided data and format
barcode_image = barcode_class(data, writer=ImageWriter())
# Save the barcode image to a file named "barcode" with the specified options
barcode_image.save("barcode", options=options)

The generuoti_brūkšninį kodą funkcija generuoja brūkšninį kodą pagal pateiktą duomenis ir formatas (brūkšninio kodo_formatas) ir išsaugo brūkšninio kodo vaizdą faile, brūkšninis kodas.png. Failo plėtinys priklauso nuo naudojamos rašytojų klasės.

4. Generuokite ir tinkinkite brūkšninį kodą

Norėdami sugeneruoti brūkšninį kodą, skambinkite generuoti_brūkšninį kodą funkcija ir perduoti reikiamus parametrus.

generate_barcode("MakeUseOf", "code128")

Rašytojai pasirenka keletą parinkčių, leidžiančių tinkinti brūkšninius kodus. Tinkinimo parinktys apima brūkšninio kodo dydžio, šrifto, spalvos ir pan. keitimą. Galite kreiptis į python brūkšninis kodas dokumentus, kad pasiektumėte visą įprastų rašymo parinkčių sąrašą.


generate_barcode("MakeUseOf", "code128", options={"foreground":"red",
"center_text": False,
"module_width":0.4,
"module_height":20})

Kaip nuskaityti ir iššifruoti brūkšninius kodus

Šie veiksmai parodo, kaip nuskaityti ir iššifruoti brūkšninius kodus naudojant Python pyzbar biblioteka.

1. Įdiekite reikalingas bibliotekas

Norėdami nuskaityti ir iššifruoti brūkšninius kodus, turite įdiegti šias bibliotekas:

brew install zbar # Mac OS X
sudo apt-get install libzbar0 # Linux OS
pip install pyzbar opencv-python

2. Importuokite reikalingus modulius

Įdiegę bibliotekas, pridėkite šiuos importavimo teiginius prie scenarijaus, kad importuotumėte reikiamus modulius.

import cv2
from pyzbar import pyzbar

3. Nuskaitykite brūkšninius kodus iš vaizdų

Norėdami nuskaityti brūkšninius kodus iš vaizdo failų:

  1. Įkelkite vaizdą naudodami OpenCV perskaitytas funkcija. Tai grąžina egzempliorių numpy.ndarray.
  2. Perduokite išvesties masyvą į pyzbar.decode aptikimui ir dekodavimui. Taip pat galite perduoti atvejus PIL.Vaizdas.
defscan_barcode_from_image(image_path):
# Read the image from the provided file path
image = cv2.imread(image_path)
# Decode barcodes from the image using pyzbar
barcodes = pyzbar.decode(image)
# Iterate through detected barcodes and extract data from the barcode
for barcode in barcodes:
# uses UTF-8 encoding
barcode_data = barcode.data.decode("utf-8")
barcode_type = barcode.type
print("Barcode Data:", barcode_data)
print("Barcode Type:", barcode_type)

Funkcija užima an vaizdo_kelias parametrą, nuskaito vaizdą, iškoduoja visus vaizde esančius brūkšninius kodus ir išspausdina kiekvieno aptikto brūkšninio kodo iššifruotus duomenis ir brūkšninio kodo tipą.

scan_barcode_from_image("barcode.png")
> Barcode Data: MakeUseOf
> Barcode Type: CODE128

4. Nuskaitykite brūkšninius kodus iš internetinės kameros srauto

Taip pat galite nuskaityti ir nuskaityti brūkšninius kodus realiuoju laiku iš internetinės kameros srauto, naudodami Python OpenCV biblioteką.

defscan_barcode_from_webcam():
# Initialize video capture from the default webcam (index 0)
video_capture = cv2.VideoCapture(0)

whileTrue:
# Get a frame from the webcam stream
_, frame = video_capture.read()

# Decode barcodes in the frame
barcodes = pyzbar.decode(frame)

# Process detected barcodes
for barcode in barcodes:
# Extract barcode data and type and print them
barcode_data = barcode.data.decode("utf-8")
barcode_type = barcode.type
print("Barcode Data:", barcode_data)
print("Barcode Type:", barcode_type)

# Check for exit condition: Press 'q' to quit the loop
if cv2.waitKey(1) & 0xFF == ord("q"):
break

# Release video capture and close OpenCV windows
video_capture.release()
cv2.destroyAllWindows()

scan_barcode_from_webcam()

The scan_barcode_from_webcam funkcija nuolat fiksuoja kadrus iš internetinės kameros, dekoduoja visus kadre esančius brūkšninius kodus, išgauna informaciją apie brūkšninį kodą ir spausdina informaciją. Norėdami baigti, paspauskite klaviatūros raidę q.

Brūkšninių ir QR kodų generavimas Python

Naudojant Python, brūkšninių kodų generavimas ir skaitymas tampa prieinamas ir efektyvus. Vykdydami nurodytus veiksmus, galite sugeneruoti įvairius brūkšninius kodus pagal savo poreikius.

QR kodai (Quick Response Codes) – tai dvimačiai brūkšniniai kodai, kuriuos galima nuskaityti ir nuskaityti išmaniaisiais telefonais, planšetiniais kompiuteriais ar kitais įrenginiais, kuriuose yra kamera ir QR kodo skaitymo programa. Naudodami Python qrcode biblioteką galite efektyviai generuoti, nuskaityti ir skaityti QR kodus.