21 Ekim 2017 Cumartesi

Raspberry'de Python ile Tesseract OCR Kullanarak Plaka Okuma

OCR (Optical Character Recognition - Optik Karakter Tanıma),  bize grafiksel dosyalardaki yazıları yakalama imkanı veren teknolojidir. Örneğin, kameraya yakalanan kırmızı ışıkta geçen araçların plakaları bu teknoloji ile tespit edilebilmektedir. Bu yazımızda Raspberry Pi 3 cihazımıza tesseract-ocr programını kurarak, Python ile etkileşime geçip, örnek bir resim dosyasındaki plakayı okuyacağız.

Tesseract komut satırından kullanılabilen OCR aracıdır. Paket yöneticimizi güncelleyerek tesseract-ocr paketini yükleyelim.

sudo apt-get update



sudo apt-get install tesseract-ocr



Doğru kurulduğundan emin olmak için şu komutu çalıştırabiliriz.

tesseract -v


Şimdi örnek bir plaka resmi indirip tesseract programını komut satırından deneyelim. Aşağıdaki dosyayı plaka.jpg olarak kaydedelim.


Komut satırından tesseract programını örnek dosyamızı parametre vererek çağıralım. Sonucu komut satırına basması için stdout parametresini ekleyelim.

tesseract plaka.jpg stdout


Aslında baştaki TR kısmını okumaması işimize gelse de işimizi şansa bırakmamalıyız. tesseract'a resimleri vermeden önce image processing tekniklerini kullanarak işlemden geçirip, okunması gereken yazıyı daha belirgin hale getirmemiz gerektiğini not olarak düşelim.

Şimdi de Python ile tesseract'a resim okutalım. Resim işlemleri için Pillow, tesseract ile etkileşime geçmek için pytesseract kütüphanesini kurmamız gerekmektedir.

sudo pip install pillow
sudo pip install pytesseract


"plaka.jpg" isimli dosyayı okuyup içerisindeki yazıyı ekrana basan aşağıdaki Python kodunu "simple_ocr_plaka.py" isimli bir dosyaya kaydedelim.


Kodu çalıştırıp çıktısına bakalım:

python simple_ocr_plaka.py


Böylece, OCR teknolojisine temel bir giriş yapmış olduk. Gerçek hayat senaryolarında okunacak görüntü dosyaları bu kadar açık net ve basit olmayacaktır. Başarılı sonuç alabilmek için OpenCV kütüphanesi kullanarak, araçların plakaları tespit edilip, netlik ayarlamaları yapılmalı, görüntüdeki pürüzler giderilmelidir.





Hiç yorum yok:

Yorum Gönder

SSHJ ile Raspberry'de Uzaktan Python Çalıştırmak

Merhabalar, Bu yazımızda, Java ile uzaktaki bir makineye programatik olarak SSH ile bağlanıp Python kod çalıştırmayı göreceğiz. Örnek olarak...