Python ve OpenCV ile WebCam Kullanarak Barkod Okuyucu Uygulaması

1 1.198

Bu yazımızda Python ve OpenCV ile webcam’den gelen görüntüyü işleyerek barkod okuma uygulaması geliştireceğiz.

Bir önceki yazımızda bir resim dosyası üzerindeki barkodu algılayıp, tanımlayan uygulamanın nasıl yapılacağını anlatmış ve kodlarını paylaşmıştık. Bu yazımızda da benzer biçimde pyzbar kütüphanesini kullanarak barkod okuma ve tanımlama uygulaması geliştireceğiz. Farklı olarak resim dosyasından değil webcam’dan gelen görüntüyü işleyerek barkod algılama ve tanımlama uygulaması geliştireceğiz.

Bu uygulamayı çok fazla anlatmayacağız. Uygulamamız bir önceki makalemize benzer fakat sadece webcamden gelen görüntüyü algılayıp ekranda tanımlanan barkod değerini göstermeyi sağlıyor.

Kodlarımız

import cv2
from pyzbar.pyzbar import decode

capture = cv2.VideoCapture(1)
while(True):
    ret, image = capture.read()
    detectedBarcodes = decode(image)
    for barcode in detectedBarcodes:
        (x, y, w, h) = barcode.rect
        cv2.rectangle(image, (x, y), (x + w, y + h), (255, 0, 0), 5)
        cv2.putText(image, "Barkod Data: " + str(barcode.data), (0, image.shape[0] - 10),
                    cv2.FONT_HERSHEY_TRIPLEX, 0.5, (0, 0, 0), 1)
        #print(barcode.data)
        #print(barcode.type)
    cv2.imshow('Image with faces', image)
    if (cv2.waitKey(1) == 27):
        break

capture.release()
cv2.destroyAllWindows()

 

Kodu çalıştırdığımızda alttaki gibi bir pencere açılacak ve ekranda bir barkod algıladığında tanımlayıp içerdiği veriyi ekrana yazdıracaktır. Siz isterseniz barkod.data verisini kullanarak farklı uygulamalar geliştirebilirsiniz.

opencv barkod okuma

Sitemizde benzer olarak QRCode (karekod) oluşturma ve karekod okuma uygulamaları nasıl yapılacağını anlatan yazılarımızı da okuyabilirsiniz.

Yorumlarınızı bekliyoruz.

1 yorum
  1. Hasan Hüseyin diyor

    Çok iyi bir uygulama olmuş. Güzel yazı için teşekkür ederim.

Cevap bırakın

E-posta hesabınız yayımlanmayacak.

Bu web sitesi deneyiminizi geliştirmek için çerezleri kullanır. Bununla iyi olduğunuzu varsayacağız, ancak isterseniz vazgeçebilirsiniz. Kabul etmek Mesajları Oku