derin Öğrenme yöntemleri ile türk araç plakalarının...

1
Derin Öğrenme Yöntemleri ile Türk Araç Plakalarının Tanınması İrfan Kılıç, Doç. Dr. Galip Aydın Fırat Üniversitesi Mühendislik Fakültesi, Bilgisayar Mühendisliği ÖZET Otomatik Plaka Tespit ve Tanıma Sistemleri (ALPR) ülkemizde son yıllarda çok sık kullanılmaya başlamıştır. Bu sistemler için kamera görüntüleri ve RFID kart okuma sistemleri kullanılmaktadır. Kamera görüntüleri üzerinde çeşitli görüntü işleme yöntemleri kullanılarak plaka yerinin tespiti ve plakanın tanınması sağlanmaktadır . Fakat iklim şartları, ışık, görüntü işlemenin yetersizlikleri nedeniyle tam doğrulukta tespit ve tanıma işlemi olmamaktadır. Bu nedenle RFID ve benzeri kartlı çözümlere gidilmiştir . Kartlı çözümlerde tanınmak istenen araç önceden sisteme tanıtılmak zorundadır . Bu işlem belli bir işgücü gerektirmektedir. Bu çalışmada görüntü işlemenin bir sonraki adımı olan derin öğrenme yöntemleri kullanılmıştır . Derin öğrenme yöntemlerini uygulamak için Türk araç görüntüleri kullanılarak veri seti hazırlanmıştır . Bu çalışmada plaka tanıma için Smearing algoritması yardımıyla bir veri seti hazırlanmıştır. Hazırlanan veri seti kullanılarak OpenCV görüntü işleme kütüphanesi , Keras ve TensorFlow derin öğrenme kütüphaneleri yardımıyla plakanın tanınması için bir model oluşturulmuştur. Oluşturulan model Python ortamında çalıştırılılmıştır. Sonuç olarak bu çalışmada plaka tanıma için Türk araç plakaları kullanılarak veri seti hazırlanmış ve oluşturulan model kullanılarak derin öğrenme yöntemlerinin çok yüksek doğrulukta sonuçlar verdiği gösterilmiştir. Anahtar Kelimeler: Araç plakası, Plaka tanıma, Derin öğrenme, Veri seti, Derin sinir ağları, Büyük veri, Keras GİRİŞ Araç Plakası , her varlığın veya canlının özel bir işareti ve kendine has görünümü vardır . Bu işaret ve görünüme göre bunları tanırız . Bunun gibi trafikteki motorlu araçların tanınması için bir sembole ihtiyaç vardır . Buna araç plakası denilmektedir. Trafiğe çıkacak her motorlu aracın trafik denetimi hem hukuki hem de cezai sorumluluğudur [2]. Trafik yönetmeliğinde araç plakalarına tescil plakası denilmektedir [3]. Plaka Boyutları Avrupa ülkeleri ve eski denizaşırı topraklarının yanı sıra Kuzey Kore ve Güney Kore 'nin çoğunda 520x110 mm veya 520x120 mm Kuzey Amerika ve Orta Amerika'nın çoğunluğunda ve Güney Amerika'nın bazı kısımlarında; bazen İsviçre ve Lihtenştayn da ; ve birçok Basra Körfezi ülkesinde 305x152 mm veya 305x160 mm Avustralya ve diğer bazı Pasifik Kıyı ülkelerinde, diğer iki standardın boyutları arasında yaklaşık yarısı, Batı Yarımküre plakalarından daha uzun ama Avrupalılardan daha geniş, 372x135 mm Türkiyede plaka boyutları (11x52 cm) 1. standarda uymaktadır [2]. Plakanın Tanınması Plaka tanınması , görüntü üzerinde plaka yerinin tespitinden sonra elde edilen plaka yeri bölgesinin segmentasyon, optik karakter tanıma (OCR) ve derin öğrenme teknikleri ile karakterlerin ve rakamların tanınması işlemidir . Bu işlem sonunda harf ve rakamlardan oluşan en az 6, en fazla 8 uzunluğunda bir karakter dizisi elde edilmesi beklenmektedir . Araç Plaka Tespiti ve Tanıma Şekil 1. Örnek görüntü üzerinde plaka yeri Şekil 2. Plaka tanıma ve beklenen sonuç VERİ SETİ HAZIRLAMA Araç plaka tanıma ve araç plakası tespiti için Türk araç plakalarının bulunduğu araç geçiş görüntüleri kullanılarak bir veri seti hazırlanmıştır. Plaka tanıma için hazırlanan veri seti için Smearing algoritması kullanılmış ve etiketleme işlemi elle yapılmıştır. Veri setlerini oluştururken Microsoft Office Excel programından da faydalanılmıştır . Plaka Tanıma Veri Setinin Hazırlanması Şekil 3. Uygulama Adımları Kullanılan yöntem ve araçlar OpenCV Kütüphanesi Derin Öğrenme TensorFlow kütüphanesi Keras kütüphanesi Konvolüsyonel sinir ağları (CNN) Tekrarlayan sinir ağları (RNN) Şekil 5. Smearing uygulanması Şekil 4. Otsu ve morfoloji işlemi Plaka Tanıma Veri Setinin Hazırlanması Bu aşamada 34.580 görüntüden plaka bölgesi ve yakın çevresini bulunduran kırpılmış 10.374 adet görüntüden tekrar eden plakalar ayıklandıktan sonra etiketleme işlemine geçilmiştir. Kırpılan görüntüler başka bir klasöre alındıktan sonra tek tek elle etiketlenmiştir. Etiketleme olarak her kırpılmış görüntü araç plaka numara adıyla adlandırılmıştır. Örneğin 1 (23).jpgdosyası 99ABC123.jpgşeklinde adlandırılmıştır. Bu işlemle toplan 4693 plaka etiketlenmiştir. Etiketleme bittikten sonra veri seti oluşturmak için plakaların yaklaşık %75i eğitim, %20si test, %5i doğrulama olmak üzere plakalar 3 kısma ayrılmıştır. Her 3 kısımdaki plakalar için Microsoft Office Excel üzerinde VBA kodu yardımıyla aynı adla her plaka için plaka bilgilerini üzerinde tutan jsondosyası hazırlanmıştır. Şekil 6. Veri seti klasör yapısı PLAKA TANIMA UYGULAMASI Uygulamamız için Python 3.5 [81] kullanıldı. Uygulama Ubuntu 16.04 üzerinde Nvidia GTX 1080 8 GB GPU kartlı bir sunucu üzerinde çalıştırıldı . Şekil 7. Görüntü ön işleme adımları Şekil 8. Ön işleme sonrası plaka görüntüsü Şekil 9. Veri setimizde plakalarda kullanılan harf ve rakamlar Şekil 10. Genel model görünümü Şekil 12. Kod çözme algoritması Şekil 11. Detaylı model görünümü Şekil 13. Derin sinir ağı mimarisi Modelin Eğitilmesi ve Sonuçlar Şekil 14. Test görüntüsü ve olasılık dağılım matrisi Tablo 1. Kayıp ve Doğruluk değerleri Kayıp (Loss) Doğruluk (Accuracy) Test görüntüleri 1.0833 %88.76 Doğrulama görüntüleri 1.1562 %90.21 Tablo 2. Plaka ve karakter bazlı test sonuçları Doğruluk oranı Plakaya göre % 96.36 Rakama göre % 99.43 Harfe göre % 99.05 Tüm karakterlere göre % 99.31 SONUÇLAR Bu çalışmada, plaka tanıma için derin öğrenme tekniklerinin nasıl uygulanabileceği gösterilmiştir . Türk araç görüntüleri kullanılarak Türkiyeye özgü 1 adet veri seti hazırlanmıştır . Bu veri seti bu konuda çalışmak isteyenlere önemli bir başlangıç noktası olacaktır . Plaka tanıma için hazırlanan veri seti kullanılarak bir derin öğrenme modeli oluşturulmuş ve model eğitilerek istenilen sonuca ulaşılmıştır. Eğitim sonuçları incelendiğinde kayıp (loss) ve doğruluk (accuracy) sonuçları iyi olmasına rağmen eğitim verisinin kısmen azlığından dolayı istenilen seviyede değildir . Plaka bazında model değerlendirildiğinde gayet iyi sonuçlar alınmıştır . Gelecek çalışmalarda veri setinin genişletilmesiyle sonuçların daha iyi olacağı beklentisi yüksektir . Eğitim Modelinin Oluşturulması 1 1 1

Upload: others

Post on 02-Nov-2019

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Derin Öğrenme Yöntemleri ile Türk Araç Plakalarının Tanınmasıbyoyo.cmpe.boun.edu.tr/posterler/irfan_kilic-byoyo18.pdf · Derin Öğrenme Yöntemleri ile Türk Araç Plakalarının

Derin Öğrenme Yöntemleri ile Türk Araç Plakalarının Tanınmasıİrfan Kılıç, Doç. Dr. Galip Aydın

Fırat Üniversitesi Mühendislik Fakültesi, Bilgisayar Mühendisliği

ÖZET

Otomatik Plaka Tespit ve Tanıma Sistemleri (ALPR) ülkemizde son yıllarda çok sık

kullanılmaya başlamıştır. Bu sistemler için kamera görüntüleri ve RFID kart okuma

sistemleri kullanılmaktadır. Kamera görüntüleri üzerinde çeşitli görüntü işleme yöntemleri

kullanılarak plaka yerinin tespiti ve plakanın tanınması sağlanmaktadır. Fakat iklim şartları,

ışık, görüntü işlemenin yetersizlikleri nedeniyle tam doğrulukta tespit ve tanıma işlemi

olmamaktadır. Bu nedenle RFID ve benzeri kartlı çözümlere gidilmiştir. Kartlı çözümlerde

tanınmak istenen araç önceden sisteme tanıtılmak zorundadır. Bu işlem belli bir işgücü

gerektirmektedir. Bu çalışmada görüntü işlemenin bir sonraki adımı olan derin öğrenme

yöntemleri kullanılmıştır. Derin öğrenme yöntemlerini uygulamak için Türk araç görüntüleri

kullanılarak veri seti hazırlanmıştır.

Bu çalışmada plaka tanıma için Smearing algoritması yardımıyla bir veri seti

hazırlanmıştır. Hazırlanan veri seti kullanılarak OpenCV görüntü işleme kütüphanesi, Keras

ve TensorFlow derin öğrenme kütüphaneleri yardımıyla plakanın tanınması için bir model

oluşturulmuştur. Oluşturulan model Python ortamında çalıştırılılmıştır.

Sonuç olarak bu çalışmada plaka tanıma için Türk araç plakaları kullanılarak veri seti

hazırlanmış ve oluşturulan model kullanılarak derin öğrenme yöntemlerinin çok yüksek

doğrulukta sonuçlar verdiği gösterilmiştir.

Anahtar Kelimeler: Araç plakası, Plaka tanıma, Derin öğrenme, Veri seti, Derin sinir

ağları, Büyük veri, Keras

GİRİŞ

Araç Plakası, her varlığın veya canlının özel bir işareti ve kendine has görünümü vardır.

Bu işaret ve görünüme göre bunları tanırız. Bunun gibi trafikteki motorlu araçların

tanınması için bir sembole ihtiyaç vardır. Buna araç plakası denilmektedir. Trafiğe çıkacak

her motorlu aracın trafik denetimi hem hukuki hem de cezai sorumluluğudur [2]. Trafik

yönetmeliğinde araç plakalarına tescil plakası denilmektedir [3].

Plaka Boyutları

Avrupa ülkeleri ve eski denizaşırı topraklarının yanı sıra Kuzey Kore ve Güney Kore'nin

çoğunda 520x110 mm veya 520x120 mm

Kuzey Amerika ve Orta Amerika'nın çoğunluğunda ve Güney Amerika'nın bazı

kısımlarında; bazen İsviçre ve Lihtenştayn da; ve birçok Basra Körfezi ülkesinde

305x152 mm veya 305x160 mm

Avustralya ve diğer bazı Pasifik Kıyı ülkelerinde, diğer iki standardın boyutları arasında

yaklaşık yarısı, Batı Yarımküre plakalarından daha uzun ama Avrupalılardan daha

geniş, 372x135 mm

Türkiye’de plaka boyutları (11x52 cm) 1. standarda uymaktadır [2].

Plakanın Tanınması

Plaka tanınması, görüntü üzerinde plaka yerinin tespitinden sonra elde edilen plaka yeri

bölgesinin segmentasyon, optik karakter tanıma (OCR) ve derin öğrenme teknikleri ile

karakterlerin ve rakamların tanınması işlemidir. Bu işlem sonunda harf ve rakamlardan

oluşan en az 6, en fazla 8 uzunluğunda bir karakter dizisi elde edilmesi beklenmektedir.

Araç Plaka Tespiti ve Tanıma

Şekil 1. Örnek görüntü üzerinde plaka yeri

Şekil 2. Plaka tanıma

ve beklenen sonuç

VERİ SETİ HAZIRLAMA

Araç plaka tanıma ve araç plakası tespiti için Türk araç plakalarının bulunduğu araç geçiş

görüntüleri kullanılarak bir veri seti hazırlanmıştır.

Plaka tanıma için hazırlanan veri seti için Smearing algoritması kullanılmış ve etiketleme

işlemi elle yapılmıştır.

Veri setlerini oluştururken Microsoft Office Excel programından da faydalanılmıştır.

Plaka Tanıma Veri Setinin Hazırlanması

Şekil 3. Uygulama Adımları

Kullanılan yöntem ve araçlar

OpenCV Kütüphanesi

Derin Öğrenme

TensorFlow kütüphanesi

Keras kütüphanesi

Konvolüsyonel sinir ağları

(CNN)

Tekrarlayan sinir ağları

(RNN)

Şekil 5. Smearing uygulanmasıŞekil 4. Otsu ve morfoloji işlemi

Plaka Tanıma Veri Setinin Hazırlanması

Bu aşamada 34.580 görüntüden plaka bölgesi ve yakın çevresini bulunduran

kırpılmış 10.374 adet görüntüden tekrar eden plakalar ayıklandıktan sonra

etiketleme işlemine geçilmiştir. Kırpılan görüntüler başka bir klasöre alındıktan

sonra tek tek elle etiketlenmiştir. Etiketleme olarak her kırpılmış görüntü araç

plaka numara adıyla adlandırılmıştır. Örneğin “1 (23).jpg” dosyası

“99ABC123.jpg” şeklinde adlandırılmıştır. Bu işlemle toplan 4693 plaka

etiketlenmiştir.

Etiketleme bittikten sonra veri seti oluşturmak için plakaların yaklaşık %75’i

eğitim, %20’si test, %5’i doğrulama olmak üzere plakalar 3 kısma ayrılmıştır.

Her 3 kısımdaki plakalar için Microsoft Office Excel üzerinde VBA kodu

yardımıyla aynı adla her plaka için plaka bilgilerini üzerinde tutan “json” dosyası

hazırlanmıştır.

Şekil 6. Veri seti klasör yapısı

PLAKA TANIMA UYGULAMASI Uygulamamız için Python 3.5 [81] kullanıldı. Uygulama Ubuntu 16.04 üzerinde

Nvidia GTX 1080 8 GB GPU kartlı bir sunucu üzerinde çalıştırıldı.

Şekil 7. Görüntü ön işleme adımları

Şekil 8. Ön işleme sonrası plaka görüntüsü

Şekil 9. Veri setimizde plakalarda kullanılan harf ve rakamlar

Şekil 10. Genel model görünümü

Şekil 12. Kod çözme algoritması

Şekil 11. Detaylı model görünümü

Şekil 13. Derin sinir ağı mimarisi

Modelin Eğitilmesi ve Sonuçlar

Şekil 14. Test görüntüsü ve olasılık dağılım matrisi

Tablo 1. Kayıp ve Doğruluk değerleri

Kayıp (Loss) Doğruluk (Accuracy)

Test görüntüleri 1.0833 %88.76

Doğrulama görüntüleri 1.1562 %90.21

Tablo 2. Plaka ve karakter bazlı test sonuçları

Doğruluk oranı

Plakaya göre % 96.36

Rakama göre % 99.43

Harfe göre % 99.05

Tüm karakterlere göre % 99.31

SONUÇLAR Bu çalışmada, plaka tanıma için derin öğrenme tekniklerinin nasıl uygulanabileceği gösterilmiştir. Türk araç

görüntüleri kullanılarak Türkiye’ye özgü 1 adet veri seti hazırlanmıştır. Bu veri seti bu konuda çalışmak

isteyenlere önemli bir başlangıç noktası olacaktır.

Plaka tanıma için hazırlanan veri seti kullanılarak bir derin öğrenme modeli oluşturulmuş ve model eğitilerek

istenilen sonuca ulaşılmıştır. Eğitim sonuçları incelendiğinde kayıp (loss) ve doğruluk (accuracy) sonuçları iyi

olmasına rağmen eğitim verisinin kısmen azlığından dolayı istenilen seviyede değildir. Plaka bazında model

değerlendirildiğinde gayet iyi sonuçlar alınmıştır. Gelecek çalışmalarda veri setinin genişletilmesiyle sonuçların

daha iyi olacağı beklentisi yüksektir.

Eğitim Modelinin Oluşturulması

1 1

1