SlideShare a Scribd company logo
1 of 32
T.C.
GEBZE TEKNİK ÜNİVERSİTESİ
Bilgisayar Mühendisliği Bölümü
SPOR
KARŞILAŞMALARINDA
SKOR EKRANININ
OKUNMASI
Büşra ERKAN
Danışman
Doç. Dr. Yusuf Sinan AKGÜL
ii
T.C.
GEBZE TEKNİK ÜNİVERSİTESİ
Bilgisayar Mühendisliği Bölümü
ii
SPOR
KARŞILAŞMALARINDA
SKOR EKRANININ
OKUNMASI
Büşra ERKAN
Danışman
Doç. Dr. Yusuf Sinan AKGÜL
iv
Bu çalışma ..../..../200.. tarihinde aşağıdaki jüri tarafından Bilgisayar Mühendisliği
Bölümünde Lisans Bitirme Projesi olarak kabul edilmiştir.
Bitirme Projesi Jürisi
Danışman Adı Doç. Dr. Yusuf Sinan AKGÜL
Üniversite Gebze Teknik Üniversitesi
Fakülte Mühendislik Fakültesi
Jüri Adı Doç. Dr. Fatih Erdoğan SEVİLGEN
Üniversite Gebze Teknik Üniversitesi
Fakülte Mühendislik Fakültesi
Jüri Adı Yrd. Doç. Dr. Yakup GENÇ
Üniversite Gebze Teknik Üniversitesi
Fakülte Mühendislik Fakültesi
v
ÖNSÖZ
Bitirme çalışmam sırasında engin bilgisiyle bana her zaman yol gösteren Sayın Doç. Dr.
Yusuf Sinan AKGÜL hocama ve bu çalışmayı destekleyen Gebze Teknik
Üniversitesi’ne içten teşekkürlerimi sunarım.
Ayrıca eğitimim süresince bana her konuda destek veren aileme ve bana hayatlarıyla
örnek olan tüm hocalarıma saygı ve sevgilerimi sunarım.
Aralık, 2015 Büşra ERKAN
vi
İÇİNDEKİLER
ÖNSÖZ.................................................................................................Vİ
İÇİNDEKİLER..................................................................................Vİİ
...........................................................................................................Vİİİ
...........................................................................................................Vİİİ
KISALTMA LİSTESİ..........................................................................İX
ÖZET .....................................................................................................X
1. GİRİŞ..................................................................................................1
1.1. PROJE TANIMI..............................................................................2
1.2. PROJENİN NEDEN VE AMAÇLARI..........................................3
1.3. LİTERATÜR ARAŞTIRMASI......................................................3
1.4. PROJE GEREKSİNİMLERİ........................................................3
1.4.1. Fonksiyonel Gereksinimler.....................................................................4
1.4.2. Fonksiyonel Olmayan Gereksinimler....................................................4
1.4.2. Sistemin Temel Özellikleri.......................................................................4
1.5. BAŞARI KRİTERLERİ.................................................................4
2. YÖNTEM............................................................................................5
2.1. SINIFLANDIRICININ EĞİTİLMESİ .........................................7
2.2. RAKAMLARIN BULUNMASI.....................................................8
2.3. RAKAMLARIN TANINMASI....................................................10
2.4. SKOR METNİNİN OLUŞTURULMASI...................................10
3. PROJE PLANLAMASI...................................................................10
3.1. SİSTEM MİMARİSİ....................................................................10
3.2. UML DİYAGRAMLARI..............................................................11
vi
3.2.1. Kullanım Durum Diyagramı.................................................................11
3.2.2. Etkinlik Diyagramı................................................................................12
4. DENEYLER......................................................................................12
4.1. RAKAMLARIN BULUNMASI...................................................13
4.2. RAKAMLARIN TANINMASI....................................................14
4.2.1. Başarılı Sonuç Örnekleri.......................................................................14
4.2.2. Başarısız Sonuç Örnekleri.....................................................................15
5. SONUÇ..............................................................................................16
KAYNAKLAR......................................................................................17
EKLER..................................................................................................19
vi
KISALTMA LİSTESİ
HOG : Yönlü Gradientlerin Histogramı (Histogram of Oriented Gradients)
SVM : Destek Vektör Makineleri (Support Vector Machines)
GTÜ : Gebze Teknik Üniversitesi
ix
ÖZET
Bu rapor G.T.Ü. Bilgisayar Mühendiliği Bölümü 4. sınıfında hazırlanan Lisans
Bitirme Projesi olarak geliştirilen Spor Karşılaşmalarında Skor Ekranının
Okunmasını içeren sistemin tanımı, içeriği, başlatılma nedenleri, amaçları ve
sonuçlarını içermektedir.
Gerçek dünya görüntüleri üzerinde metin bulma ve tanıma problemi son zamanlarda
üzerinde çokça çalışılmış bir bilgisayarlı görme problemidir. Bu çalışmalara örnek
olarak Google Sokak Görünümü uygulaması benzeri uygulamalar verilebilir.
Sistem, amatör basketbol karşılaşmalarında skor ekranının görüntüsünün izleyiciye
gösterilmek üzere gerçek zamanlı olarak metin haline getirilmesini
gerçeklemektedir. Günümüzde, amatör basketbol karşılaşmalarında, skor ekranı
izleyiciye kameralardan alınan görüntünün ekrana yerleştirilmesi ile sunulmaktadır.
Bu işlem sırasında yüksek maliyetli saha kameraları kullanıldığından maliyeti
oldukça fazla olmaktadır. Bu problemi çözmek adına projede web cam kullanılmış
ve sistemin maliyeti düşürülmüştür.
x
SUMMARY
In this report, the definition of systems, that developed as a graduation project,
content, reasons for launch, goals and results are mentioned.
Text detection and recognition in real-world images is a problem which has been
receiving significant attention . Computer vision applications like Google Street
View is an instance of this problem.
The system has been developed to display scoreboard image using web cam in
amateur basketball match. In amateur basketball matches, the scoreboard is shown
by placing the image that taken from the camera on screen. As costly field cameras
are used, the cost becomes too. This web cam used in the project to solve the
problem and reduced the cost of the system.
xi
1. GİRİŞ
Gerçek dünya görüntüleri üzerinde metin bulma ve tanıma problemi son zamanlarda
üzerinde çokça çalışılmış bir bilgisayarlı görme problemidir. Bu çalışmalara örnek
olarak Google Sokak Görünümü uygulaması, görme engelli kişiler için yardımcı
uygulamalar ve benzeri uygulamalar verilebilir. Bu proje daha önce yapılmamış olsa
da bu konuyla yakından ilişkili başka araştırmalar ve projeler yapılmıştır. Bu
araştırmalar doğrultusunda yazılmış olan makaleler ve kitaplar projede referans
olarak alınmıştır.
Spor karşılaşmalarında skor ekranının okunması projesi doğada metin algılama
probleminin özelleşmiş bir formu gerçekleştirilmiş, spor karşılaşmalarında düşük
maliyetli kamera kullanılarak skor ekranının okunması ve metin olarak tekrar
oluştulması sağlanmıştır. Bu proje sayesinde skor ekranının görüntülenmesini
sağlayan yüksek maliyetli kamera yerine web kamera kullanılabilecek ve maliyet
düşürülecektir.
1
1.1. PROJE TANIMI
Sistem, amatör basketbol karşılaşmalarında skor ekranının görüntüsünün izleyiciye
gösterilmek üzere gerçek zamanlı olarak metin haline getirilmesini
gerçeklemektedir. Proje kapsamında eğitim verilerinin oluşturulması ve testlerin
yapılması adına Gebze Teknik Üniversitesi Prof. Dr. Ahmet Ayhan Spor Salonunda
bulunan skor ekranı kullanılmıştır.
Amatör basketbol karşılaşmalarında, skor ekranı izleyiciye kameralardan alınan
görüntünün ekranın üst köşesine yerleştirilmesi ile gösterilmektedir. Bu işlem
sırasında saha kameraları kullanıldığından maliyeti yüksek olmaktadır. Bu problemi
çözmek adına projede web cam kullanılmış ve maliyet düşürülmüştür.
Şekil 1.1.1 Sistemin Çalışma Şeması
2
1.2. PROJENİN NEDEN VE AMAÇLARI
Amatör basketbol karşılaşmalarında, skor ekranı izleyiciye kameralardan alınan
görüntünün ekrana yerleştirilmesi ile sunulmaktadır. Bu işlem sırasında yüksek
maliyetli saha kameraları kullanıldığından maliyeti oldukça fazla olmaktadır.
Projenin amaçları şu şekildedir;
• Maliyet problemini çözmek adına projede web cam kullanılıp maliyetin
düşürülmesi
• Doğada metin algılama probleminin özelleşmiş bir formunun gerçek
zamanlı olarak gerçeklenmesi amaçlanmıştır.
1.3. LİTERATÜR ARAŞTIRMASI
Yapılan literatür araştırması sonucunda, gerçek dünya görüntüleri üzerinde metin
bulma ve algılama problemini çözmek amacıyla bir çok çalışma yapıldığı
gözlemlenmiştir. Yapılan araştırmalar sonucunda projede HOG tabanlı SVM ve
kayan pencere yöntemi kullanılmasına karar verilmiştir.
1.4. PROJE GEREKSİNİMLERİ
Proje gereksinimlerini fonksiyonel gereksinimler ve fonksiyonel olmayan
gereksinimler diye iki başlık altında ifade etmek daha doğru olacaktır.
Bu kısımda fonksiyonel gereksinimler sistemin iç yapısına ait detaylara yer
verirken, fonksiyonel olmayan gereksinimler, performans, kullanım kolaylığı gibi
kullanılabilirlik ile alakalı gereksinimlere yer vermektedir.
3
1.4.1. Fonksiyonel Gereksinimler
Fonksiyonel gereksinimler şu şekildedir;
• Kameradan görüntünün alınması
• Skor ekranındaki rakamların yerinin bulunması
• Rakam olduğu tespit edilen alanlardaki rakamların tanınması
• Yeni bir skor ekranı görüntüsünün oluşturulması
Proje içerisinde 3 temel fonksiyon bulunmaktadır. Bu fonksiyonlar şu şekildedir;
• Skor ekranındaki rakamların yerlerinin bulunması
• Rakam olduğu belirlenen alanlarda bulunan rakamların tanınması
• Bulunan yer ve rakam bilgileri ile skor metninin oluşturulması
1.4.2. Fonksiyonel Olmayan Gereksinimler
• Sistemin güvenilirliği konusunda, kullandığımız açık kaynak kodlu bir
kütüphane olan OpenCV referans olarak gösterilmektedir.
• Geliştirilebilir olmalıdır.
• OpenCV
1.4.2. Sistemin Temel Özellikleri
• Sistem gerçek zamanlı olarak çalışmaktadır.
• Sistem 32/64 bit bilgisayarlarda çalışabilmektedir.
1.5. BAŞARI KRİTERLERİ
Proje bitiminin hangi ölçülerde başarılı olduğunun değerlendirilebilmesi için
oldukça önemli olan başarı ölçütümüz bu başlık altında belirtilecektir. Bunlar;
• Maksimum %3 hata ile rakamların tanınması
• Normal çekim şartları altında 100x100 pikselden büyük görüntüler için
çalışma
4
• Alınan ilk görüntü için 5 saniye, sonraki görüntüler için 0.1 saniye görüntü
işleme süresi
2. YÖNTEM
Bu kısımda, projede kullanılan yöntemlerin nasıl geliştirildiği ve kullanılan araçların
ne için ve nasıl kullanıldığı ile ilgili detaylı açıklamalar yer almaktadır.
Şekil 2.1 Sistemin Çalışma Şeması
Sistemde kullanılan, görüntülerin alındığı kamera, bir web kamera üzerine
yerleştirilmiş 12x zoom telefoto lens kullanılarak elde edilmiştir.
5
Şekil 2.2 Sistemde Kullanılan 12x Zoom Lens
Şekil 2.3 Lens Yerleştirilmiş Web Kamera
6
Şekil 2.4 Lens Yerleştirilmiş Web Kamera
2.1. SINIFLANDIRICININ EĞİTİLMESİ
Yönlü gradientlerin histogramı (Histogram of Oriented Gradients) bilgisayarlı
görme ve görüntü işleme alanlarında obje tanımak için sıkça kullanılan bir özellik
vektörü oluşturma yöntemidir. Bu yöntemde, görüntü hücrelere bölünür, bölünen
hücrelerin yoğunluk gradientleri çıkarılır, bunların histogramı oluşturulur.
Oluşturulan histogramlardan özellik vektörü elde edilir. Bu projede, sınıflandırıcının
eğitilmesi için HOG yöntemi kullanılmaktadır.
Support Vector Machine(SVM), denetimli bir öğrenme modelidir. Bu yöntemde
verilen veri seti bir doğru, düzlem vb. kullanılarak pozitif ve negatif değerler olarak
ikiye ayırılır. Gelen test verisinin pozitif ya da negatif olduğuna karar verilir.
Projede 64x32 piksel boyuntundaki görüntülerin HOG vektörleri hesaplanır ve
SVM’e verilerek eğitim yapılır.
Her rakam için ayrı bir SVM eğitilir. Buna ek olarak rakamların bulunması için bir
rakam sınıflandırıcısı eğitilir. Bu sınıflandırıcı skor ekranı görüntüsü üzerinde kayan
pencereler algoritmasını kullanarak gezer ve rakam olan alt görüntülerin
bulunmasını sağlar.
SVM eğitiminde kullanılan örnek görüntüler aşağıdaki gibidir;
7
Şekil 2.1.1 0 Rakamı İçin Kullanılan Örnek Pozitif Görüntü
Şekil 2.1.2 5 Rakamı İçin Kullanılan Örnek Pozitif Görüntü
2.2. RAKAMLARIN BULUNMASI
Kameradan alınan görüntü üzerinde kullanıcının skor ekranının 4 köşesini
işaretlenmesi istenir. İşaretlenen noktalar kullanılarak skor ekranının bir görüntüsü
oluşturulur. Bu görüntü üzerinde her rakamın sınıflandırcısı çalıştırılır. Her rakam
sınıflandırıcısından marjine belirli bir eşik değerinin üstünde uzak olan noktaların
SVM skorlarının mutlak değeri belirli bir kat sayı ile çarpılarak bir yoğunluk değeri
elde edilir. Elde edilen bu değer, tüm pikselleri başta sıfır olan skor ekranı
görüntüsüyle aynı boyutta bir görüntü üzerinde denk gelen noktaya, yoğunluk değeri
olarak yazılır. Oluşturulan bu skor görüntüsü üzerinde, en büyük olmayanı bastırma
yöntemleri kullanılarak rakamların konumları tespit edilir.
Şekil 2.2.1 Kesilen Skor Ekranının Görüntüsü
8
Şekil 2.2.2 SVM Skorlarından Oluşturulmuş Görüntü
Fakat bu yöntem kullanıldığında, skor görüntüsünü 10, skor görüntüsünü 1 kez
gezmek gerekmektedir. Bunlar da programın çalışma süresini uzatmaktadır. Bu
sebeple bu yöntemin değiştirilip iyileştirilmesine gidilmiştir.
Programın çalışmasını hızlandırmak adına öncelikle skor ekranının görüntüsü
üzerinde 10 kez gezme işlemine bir alternatif aranmıştır. Problemin çözümü için bir
rakam sınıflandırıcısı oluşturulmuştur. Bu sınıflandırıcının pozitif veri setini, tüm
rakamların pozitif görüntüleri, negatif veri setini ise, tüm rakamların ortak negatif
görüntüleri oluşturmaktadır. Bu yöntemde, görüntü üzerinde öncelikle, rakam
sınıflandırıcısı çalıştırılır ve rakamlar bulunur.
İkinci problemimiz olan skor değerlerinin bulunduğu görüntü üzerinde gezme işlemi
için ise, skorlar bir görüntü üzerinde değil bir vektörde tutulması yolu izlenmiştir.
Rakam sınıflandırıcısının verdiği skor değerlerinden, belirlenen eşik değerinin
üzerinde olanların koordinat bilgileri bir vektörde tutulur. Aynı zamanda, bu eşik
değerinin üzerindeki skorlar ayrı bir vektörde tutulur. Skor vektörünün n. indeksinde
bulunan skor değeri, koordinat vektöründeki n. indeksteki noktaya ait olmaktadır.
Bu vektörler üzerinde 15x15 piksel boyutunda bir alanda en büyük olmayanı
bastırma yöntemleri kullanılarak en yüksek skora sahip noktalar belirlenir. Bu
noktalar rakamların başlangıç noktalarını ifade etmektedir. Yapılan değişiklikler
sonucunda programın çalışma süresinde azalma görülmüştür.
9
2.3. RAKAMLARIN TANINMASI
Bu kısımda, rakamların bulunması işlemi tamamlandıktan sonra, bulunan alanlarda
oluşturulan görüntülerin HOG vektörleri çıkarılır. Çıkarılan vektör her bir rakamın
sınıflandırıcısına gönderilir, alınan skorlar karşılaştırılır ve en iyi skora sahip olan
rakamın o alanda bulunduğuna karar verilir.
2.4. SKOR METNİNİN OLUŞTURULMASI
Rakamların bulunması ve rakamın tanınması işlemleri tamamlandıktan sonra bu
aşamaya geçilir. Bu aşamada tanınan rakam, oluşturulan metinde olması gereken
konuma yerleştirilir.
3. PROJE PLANLAMASI
Bu bölümde projenin planlaması ve projedeki işleyiş hakkında bilgi veren
diyagramlar belirtilmiştir.
3.1. SİSTEM MİMARİSİ
Bitirme projesi kapsamında geliştirilen bu sistem, skor ekranının önceden
kaydedilmiş videoları üzerinde ve kameradan görüntü alınarak geliştirilmiştir.
Kamera ve video görüntüleri üzerinde testleri yapılmıştır. Her iki durumda da alınan
görüntü aşağıdaki adımlar takip edilerek işlenir.
1. Kullanıcıdan alınan koordinatlara göre skor ekranının görüntüsü kesilir.
2. Görüntü üzerinde rakamlar bulunur.
1
3. Bulunan alanlardaki rakamlar tanınır.
4. Sentetik skor ekranı görüntüsü oluşturulur.
3.2. UML DİYAGRAMLARI
3.2.1. Kullanım Durum Diyagramı
Şekil 3.2.1.1 Kullanım Durum Diyagramı
1
3.2.2. Etkinlik Diyagramı
Şekil 3.2.1.2 Etkinlik Diyagramı
4. DENEYLER
Bu kısımda projenin başlangıcından şuan gelinen noktaya kadar uygulanan
yöntemlerin sonuçları birbirleriyle karşılaştırılarak gösterilecektir. Deneyler i7-
2670QM CPU ve 4 GB Ram donanımına sahip dizüstü bilgisayarda
gerçekleştirilmiştir.
1
4.1. RAKAMLARIN BULUNMASI
Bu aşamada, ilk olarak her rakam için ayrı ayrı eğitilmiş olan svm skorları
kullanılarak rakamlar bulunmaya çalışıldı. Bu yöntemde görüntü 10 kez gezilerek
her rakam için belirli bir eşik değerinin üzerindeki değerler skor görüntüsüne
kaydedilmiştir. Bu aşamada elde edilen skor görüntüsünün bir örneği aşağıdaki
gibidir.
Şekil 4.1.1 SVM Skorlarından Oluşturulmuş Örnek Görüntü
Bu yöntemin uzun zaman almasından dolayı öncelikle, bir rakam sınıflandırıcısı
eğitildi. Bu sınıflandırıcı sayesinde, bir görüntüde rakam olup olmadığı bilgisine,
görüntü üzerinde bir kez gezilerek ulaşıldı.
İkinci olarak, skor değerlerinin bir matriste tutulması, en büyük olmayanı baskılama
yöntemi uygulanırken zaman maliyetini artırdığı için bu yöntemden vazgeçildi.
Bunun yerine rakam bulunan noktalar ve skor değerleri birer vektörde tutularak en
büyük olmayanı baskılama algoritması uygulandı. Bu işlemin testleri 200 adet
görüntü ile yapılmış %99 başarı elde edilmiştir.
1
Şekil 4.1.2 Algoritmanın Son Hali İle SVM Skorlarından Oluşturulmuş Örnek Görüntü
4.2. RAKAMLARIN TANINMASI
Bu kısımda, bir önceki aşamada belirlenen noktalardan başlayan 64x32 piksel
boyutundaki küçük resimler, skor ekranı görüntüsünen kesilmiştir. Kesilen
görüntülerde, SVM kullanılarak rakamların tanınması işlemi gerçekleştirilmiştir.
İşlemin testi 2000 adet görüntü üzerinde yapılmış, %2 hata ile çalıştığı tespit
edilmiştir. Tanınan rakamlar konum bilgisi de dikkate alınarak oluşturulan
görüntüye yerleştirilerek çalışma tamamlanmıştır. Bu işlem ilk alınan görüntü için 5
saniye, diğer her görüntü için 0.1 saniye sürmektedir.
4.2.1. Başarılı Sonuç Örnekleri
Şekil 4.2.1.1 Kameradan Alınan Kesilmiş Skor Ekranı Görüntüsü
1
Şekil 4.2.1.2 Çalışma Sonucunda Oluşturulan Görüntü
4.2.2. Başarısız Sonuç Örnekleri
Şekil 4.2.2.1 ‘ de yer alan görüntüde 3 rakamı sistem tarafından 8 rakamı olarak
algılanmış ve yanlış sonuç üretilmiştir.
Şekil 4.2.2.1 Kameradan Alınan Kesilmiş Skor Ekranı Görüntüsü
1
Şekil 4.2.2.2 Çalışma Sonucunda Oluşturulan Görüntü
5. SONUÇ
Proje kapsamında kullanılan görüntüler, Gebze Teknik Üniversitesi Prof. Dr. Ahmet
Ayhan Spor Salonundaki skor ekranının görüntüleri alınarak sağlanmıştır. İlk olarak
HOG tabanlı SVM kullanılarak eğitim yapılması hedeflenmiştir. Bu eğitimler
sırasında her rakam için ortalama 300 adet pozitif görüntü, 2100 adet negatif
görüntü kullanılmıştır. Eğitim tamamlandıktan sonra skor ekranı görüntüsünde
rakamları bulma işlemine geçilmiştir. Bu aşamada 3’er piksel aralıklarla kayan
pencereler yöntemi kullanılmış, belirli bir eşik değeri üstünde skora sahip noktalar
belirlenmiştir. Belirlenen bu noktalar en büyük olmayanı bastırma yöntemi
kullanılarak rakam bulunan noktalar kaydedilmişitir. Bir sonraki aşamada, bu
noktalardan başlayan 64x32 piksel boyutundaki küçük resimler, skor ekranı
görüntüsünen kesilmiştir. Kesilen görüntülerde, SVM kullanılarak rakamların
tanınması işlemi gerçekleştirilmiştir. Tanınan rakamlar konum bilgisi de dikkate
alınarak oluşturulan görüntüye yerleştirilerek çalışma tamamlanmıştır. Çalışmanın
testleri Gebze Teknik Üniversitesi Prof. Dr. Ahmet Ayhan Spor Salonunda
gerçekleştirilmiştir.
1
KAYNAKLAR
[1] Wang, Kai, Boris Babenko, and Serge Belongie. "End-to-end scene text
Computer Vision (ICCV), 2011 IEEE International Conference on. IEEE, 2011.
[2] Chen, Xiangrong, and Alan L. Yuille. "Detecting and reading text in natural
scenes." Computer Vision and Pattern Recognition, 2004. CVPR 2004. Proceedings
of the 2004 IEEE Computer Society Conference on. Vol. 2. IEEE, 2004.
[3] Li, Huiping, David Doermann, and Omid Kia. "Automatic text detection and
tracking in digital video." Image Processing, IEEE Transactions on 9.1 (2000): 147-
156.
[4] Ezaki, Nobuo, Marius Bulacu, and Lambert Schomaker. "Text detection from
natural scene images: towards a system for visually impaired persons." Pattern
Recognition, 2004. ICPR 2004. Proceedings of the 17th International Conference
on. Vol. 2. IEEE, 2004.
[5] Mishra, Anand, Karteek Alahari, and C. V. Jawahar. "Top-down and bottom-up
cues for scene text recognition." Computer Vision and Pattern Recognition (CVPR),
2012 IEEE Conference on. IEEE, 2012.
[6] Han, Feng, et al. "A two-stage approach to people and vehicle detection with
hog-based svm." Performance Metrics for Intelligent Systems 2006 Workshop.
2006.
[7] Lienhart, Rainer W., and Frank Stuber. "Automatic text recognition in digital
videos." Electronic Imaging: Science & Technology. International Society for
Optics and Photonics, 1996.
[8] Chen, Datong, Jean-Marc Odobez, and Herve Bourlard. "Text detection and
recognition in images and video frames." Pattern recognition 37.3 (2004): 595-608.
[9] Neumann, Lukáš, and Jiří Matas. "Real-time scene text localization and
recognition." Computer Vision and Pattern Recognition (CVPR), 2012 IEEE
Conference on. IEEE, 2012.
[10] Neumann, Lukas, and Jiri Matas. "A method for text localization and
recognition in real-world images." Computer Vision–ACCV 2010. Springer Berlin
Heidelberg, 2011. 770-783.
[11] Neumann, Lukáš, and Jiří Matas. "Real-time scene text localization and
recognition." Computer Vision and Pattern Recognition (CVPR), 2012 IEEE
Conference on. IEEE, 2012.
[12] A. Shahab, F. Shafait, and A. Dengel. ICDAR 2011 robust reading competition
challenge 2: Reading text in scene images. In ICDAR 2011, pages 1491–1496,
2011.
[13] Tomasi, Carlo. "Histograms of Oriented Gradients."
[14] Newell, Andrew J., and Lewis D. Griffin. "Multiscale histogram of oriented
gradient descriptors for robust character recognition." Document Analysis and
Recognition (ICDAR), 2011 International Conference on. IEEE, 2011.
1
[15] Kim, Kwang In, Keechul Jung, and Jin Hyung Kim. "Texture-based approach
for text detection in images using support vector machines and continuously
adaptive mean shift algorithm." Pattern Analysis and Machine Intelligence, IEEE
Transactions on 25.12 (2003): 1631-1639.
[16] Wang, Lipo. Support Vector Machines: theory and applications. Vol. 177.
Springer Science & Business Media, 2005.
1
EKLER
A. Lisans Bitirme Projesi Konusu Bildirme Formu
1
T.C.
GEBZE TEKNİK ÜNİVERSİTESİ
MÜHENDİSLİK FAKÜLTESİ
BİLGİSAYAR MÜHENDİSLİĞİ
LİSANS BİTİRME PROJESİ KONUSU BİLDİRME FORMU
ÖĞRENCİ ADI SOYADI : Büşra ERKAN
ÖĞRENCİ NO : 111044063 İMZA:
PROJE KONU BAŞLIĞI: Spor karşılaşmalarında skor ekranının okunması
PROJENİN AMACI :
Spor karşılaşmalarında skor ekranını okumak için yüksek maliyetli kamera yerine
web cam kullanılarak ekrana verilecek görüntünün elde edilmesi. Bu doğrultuda skor
ekranındaki rakamları bulup tanımaya çalışacağım.
FAYDALANILACAK KAYNAKLAR :
1) OpenCV Tutorial, http://docs.opencv.org/doc/tutorials/tutorials.html
2) Wang, Kai, and Serge Belongie. Word spotting in the wild. Springer Berlin
Heidelberg, 2010.
3) Wang, Kai, Boris Babenko, and Serge Belongie. "End-to-end scene text
recognition." Computer Vision (ICCV), 2011 IEEE International Conference on.
IEEE, 2011.
PROJE DANIŞMANI: Doç. Dr. Yusuf Sinan AKGÜL İMZA:
BÖLÜM BAŞKANI: Prof. Dr. İbrahim SOĞUKPINAR İMZA:
• Bu form bilgisayar ortamında 2 nüsha olarak düzenlenecek, bir nüsha bölüm
başkanlığına ve bir nüsha proje danışmanına verilecektir.
2
Ek A. Lisans Bitirme Projesi Konusu Bildirme Formu
2

More Related Content

Similar to Spor Karşılaşmalarında Skor Ekranının Okunması

Yazilim projeleri maliyet tahmini ve cocomo modeli
Yazilim projeleri maliyet tahmini ve cocomo modeliYazilim projeleri maliyet tahmini ve cocomo modeli
Yazilim projeleri maliyet tahmini ve cocomo modeliZafer Düzen
 
tacalan_proje_rapor_v4
tacalan_proje_rapor_v4tacalan_proje_rapor_v4
tacalan_proje_rapor_v4Ozan Taçalan
 
BİLGİSAYARLA PROGRAMLAMA DERSİ PROCESSING ÖĞRENCİ PROJELERİ
BİLGİSAYARLA PROGRAMLAMA DERSİ PROCESSING ÖĞRENCİ PROJELERİBİLGİSAYARLA PROGRAMLAMA DERSİ PROCESSING ÖĞRENCİ PROJELERİ
BİLGİSAYARLA PROGRAMLAMA DERSİ PROCESSING ÖĞRENCİ PROJELERİEnformatik Seminerleri
 
DDoS Benzetimi Projesi Raporu
DDoS Benzetimi Projesi RaporuDDoS Benzetimi Projesi Raporu
DDoS Benzetimi Projesi RaporuOğuzcan Pamuk
 
Xsteel egitimi-beyoglu
Xsteel egitimi-beyogluXsteel egitimi-beyoglu
Xsteel egitimi-beyoglusersld85
 
Xsteel kursu-fiyati
Xsteel kursu-fiyatiXsteel kursu-fiyati
Xsteel kursu-fiyatisersld85
 
Windows Azure ile Cloud Computing Uygulamaları
Windows Azure ile Cloud Computing UygulamalarıWindows Azure ile Cloud Computing Uygulamaları
Windows Azure ile Cloud Computing Uygulamalarıİbrahim ATAY
 
Bim design - compressed
Bim   design - compressedBim   design - compressed
Bim design - compressedBurak İlhan
 
Xsteel egitimi-gungoren
Xsteel egitimi-gungorenXsteel egitimi-gungoren
Xsteel egitimi-gungorensersld85
 
Xsteel egitimi-fiyati
Xsteel egitimi-fiyatiXsteel egitimi-fiyati
Xsteel egitimi-fiyatisersld85
 
Xsteel kursu-ucreti
Xsteel kursu-ucretiXsteel kursu-ucreti
Xsteel kursu-ucretisersld85
 
Orcad kursu-beyoglu
Orcad kursu-beyogluOrcad kursu-beyoglu
Orcad kursu-beyoglusersld83
 
Xsteel egitimi-ucreti
Xsteel egitimi-ucretiXsteel egitimi-ucreti
Xsteel egitimi-ucretisersld85
 
Alcak cozunurluklu-fotograflarin-goruntulenmesi-ve-bunlarin-optimizasyonu-ile...
Alcak cozunurluklu-fotograflarin-goruntulenmesi-ve-bunlarin-optimizasyonu-ile...Alcak cozunurluklu-fotograflarin-goruntulenmesi-ve-bunlarin-optimizasyonu-ile...
Alcak cozunurluklu-fotograflarin-goruntulenmesi-ve-bunlarin-optimizasyonu-ile...Yiğit Üncü
 
Bunyamin sogut cv
Bunyamin sogut cvBunyamin sogut cv
Bunyamin sogut cvbnymnsgt
 
Xsteel egitimi-buyukcekmece
Xsteel egitimi-buyukcekmeceXsteel egitimi-buyukcekmece
Xsteel egitimi-buyukcekmecesersld85
 

Similar to Spor Karşılaşmalarında Skor Ekranının Okunması (20)

Yazilim projeleri maliyet tahmini ve cocomo modeli
Yazilim projeleri maliyet tahmini ve cocomo modeliYazilim projeleri maliyet tahmini ve cocomo modeli
Yazilim projeleri maliyet tahmini ve cocomo modeli
 
tacalan_proje_rapor_v4
tacalan_proje_rapor_v4tacalan_proje_rapor_v4
tacalan_proje_rapor_v4
 
BİLGİSAYARLA PROGRAMLAMA DERSİ PROCESSING ÖĞRENCİ PROJELERİ
BİLGİSAYARLA PROGRAMLAMA DERSİ PROCESSING ÖĞRENCİ PROJELERİBİLGİSAYARLA PROGRAMLAMA DERSİ PROCESSING ÖĞRENCİ PROJELERİ
BİLGİSAYARLA PROGRAMLAMA DERSİ PROCESSING ÖĞRENCİ PROJELERİ
 
DDoS Benzetimi Projesi Raporu
DDoS Benzetimi Projesi RaporuDDoS Benzetimi Projesi Raporu
DDoS Benzetimi Projesi Raporu
 
Mukaddes buyukkavut bitirme_sunum
Mukaddes buyukkavut bitirme_sunumMukaddes buyukkavut bitirme_sunum
Mukaddes buyukkavut bitirme_sunum
 
Xsteel egitimi-beyoglu
Xsteel egitimi-beyogluXsteel egitimi-beyoglu
Xsteel egitimi-beyoglu
 
Xsteel kursu-fiyati
Xsteel kursu-fiyatiXsteel kursu-fiyati
Xsteel kursu-fiyati
 
Windows Azure ile Cloud Computing Uygulamaları
Windows Azure ile Cloud Computing UygulamalarıWindows Azure ile Cloud Computing Uygulamaları
Windows Azure ile Cloud Computing Uygulamaları
 
Bim design - compressed
Bim   design - compressedBim   design - compressed
Bim design - compressed
 
Proje sunum
Proje sunumProje sunum
Proje sunum
 
Xsteel egitimi-gungoren
Xsteel egitimi-gungorenXsteel egitimi-gungoren
Xsteel egitimi-gungoren
 
Xsteel egitimi-fiyati
Xsteel egitimi-fiyatiXsteel egitimi-fiyati
Xsteel egitimi-fiyati
 
Xsteel kursu-ucreti
Xsteel kursu-ucretiXsteel kursu-ucreti
Xsteel kursu-ucreti
 
Orcad kursu-beyoglu
Orcad kursu-beyogluOrcad kursu-beyoglu
Orcad kursu-beyoglu
 
3D VidCon
3D VidCon3D VidCon
3D VidCon
 
ders bilgi
ders bilgiders bilgi
ders bilgi
 
Xsteel egitimi-ucreti
Xsteel egitimi-ucretiXsteel egitimi-ucreti
Xsteel egitimi-ucreti
 
Alcak cozunurluklu-fotograflarin-goruntulenmesi-ve-bunlarin-optimizasyonu-ile...
Alcak cozunurluklu-fotograflarin-goruntulenmesi-ve-bunlarin-optimizasyonu-ile...Alcak cozunurluklu-fotograflarin-goruntulenmesi-ve-bunlarin-optimizasyonu-ile...
Alcak cozunurluklu-fotograflarin-goruntulenmesi-ve-bunlarin-optimizasyonu-ile...
 
Bunyamin sogut cv
Bunyamin sogut cvBunyamin sogut cv
Bunyamin sogut cv
 
Xsteel egitimi-buyukcekmece
Xsteel egitimi-buyukcekmeceXsteel egitimi-buyukcekmece
Xsteel egitimi-buyukcekmece
 

Spor Karşılaşmalarında Skor Ekranının Okunması

  • 1. T.C. GEBZE TEKNİK ÜNİVERSİTESİ Bilgisayar Mühendisliği Bölümü SPOR KARŞILAŞMALARINDA SKOR EKRANININ OKUNMASI Büşra ERKAN Danışman Doç. Dr. Yusuf Sinan AKGÜL
  • 2. ii
  • 3. T.C. GEBZE TEKNİK ÜNİVERSİTESİ Bilgisayar Mühendisliği Bölümü ii SPOR KARŞILAŞMALARINDA SKOR EKRANININ OKUNMASI Büşra ERKAN Danışman Doç. Dr. Yusuf Sinan AKGÜL
  • 4. iv
  • 5. Bu çalışma ..../..../200.. tarihinde aşağıdaki jüri tarafından Bilgisayar Mühendisliği Bölümünde Lisans Bitirme Projesi olarak kabul edilmiştir. Bitirme Projesi Jürisi Danışman Adı Doç. Dr. Yusuf Sinan AKGÜL Üniversite Gebze Teknik Üniversitesi Fakülte Mühendislik Fakültesi Jüri Adı Doç. Dr. Fatih Erdoğan SEVİLGEN Üniversite Gebze Teknik Üniversitesi Fakülte Mühendislik Fakültesi Jüri Adı Yrd. Doç. Dr. Yakup GENÇ Üniversite Gebze Teknik Üniversitesi Fakülte Mühendislik Fakültesi v
  • 6. ÖNSÖZ Bitirme çalışmam sırasında engin bilgisiyle bana her zaman yol gösteren Sayın Doç. Dr. Yusuf Sinan AKGÜL hocama ve bu çalışmayı destekleyen Gebze Teknik Üniversitesi’ne içten teşekkürlerimi sunarım. Ayrıca eğitimim süresince bana her konuda destek veren aileme ve bana hayatlarıyla örnek olan tüm hocalarıma saygı ve sevgilerimi sunarım. Aralık, 2015 Büşra ERKAN vi
  • 7. İÇİNDEKİLER ÖNSÖZ.................................................................................................Vİ İÇİNDEKİLER..................................................................................Vİİ ...........................................................................................................Vİİİ ...........................................................................................................Vİİİ KISALTMA LİSTESİ..........................................................................İX ÖZET .....................................................................................................X 1. GİRİŞ..................................................................................................1 1.1. PROJE TANIMI..............................................................................2 1.2. PROJENİN NEDEN VE AMAÇLARI..........................................3 1.3. LİTERATÜR ARAŞTIRMASI......................................................3 1.4. PROJE GEREKSİNİMLERİ........................................................3 1.4.1. Fonksiyonel Gereksinimler.....................................................................4 1.4.2. Fonksiyonel Olmayan Gereksinimler....................................................4 1.4.2. Sistemin Temel Özellikleri.......................................................................4 1.5. BAŞARI KRİTERLERİ.................................................................4 2. YÖNTEM............................................................................................5 2.1. SINIFLANDIRICININ EĞİTİLMESİ .........................................7 2.2. RAKAMLARIN BULUNMASI.....................................................8 2.3. RAKAMLARIN TANINMASI....................................................10 2.4. SKOR METNİNİN OLUŞTURULMASI...................................10 3. PROJE PLANLAMASI...................................................................10 3.1. SİSTEM MİMARİSİ....................................................................10 3.2. UML DİYAGRAMLARI..............................................................11 vi
  • 8. 3.2.1. Kullanım Durum Diyagramı.................................................................11 3.2.2. Etkinlik Diyagramı................................................................................12 4. DENEYLER......................................................................................12 4.1. RAKAMLARIN BULUNMASI...................................................13 4.2. RAKAMLARIN TANINMASI....................................................14 4.2.1. Başarılı Sonuç Örnekleri.......................................................................14 4.2.2. Başarısız Sonuç Örnekleri.....................................................................15 5. SONUÇ..............................................................................................16 KAYNAKLAR......................................................................................17 EKLER..................................................................................................19 vi
  • 9. KISALTMA LİSTESİ HOG : Yönlü Gradientlerin Histogramı (Histogram of Oriented Gradients) SVM : Destek Vektör Makineleri (Support Vector Machines) GTÜ : Gebze Teknik Üniversitesi ix
  • 10. ÖZET Bu rapor G.T.Ü. Bilgisayar Mühendiliği Bölümü 4. sınıfında hazırlanan Lisans Bitirme Projesi olarak geliştirilen Spor Karşılaşmalarında Skor Ekranının Okunmasını içeren sistemin tanımı, içeriği, başlatılma nedenleri, amaçları ve sonuçlarını içermektedir. Gerçek dünya görüntüleri üzerinde metin bulma ve tanıma problemi son zamanlarda üzerinde çokça çalışılmış bir bilgisayarlı görme problemidir. Bu çalışmalara örnek olarak Google Sokak Görünümü uygulaması benzeri uygulamalar verilebilir. Sistem, amatör basketbol karşılaşmalarında skor ekranının görüntüsünün izleyiciye gösterilmek üzere gerçek zamanlı olarak metin haline getirilmesini gerçeklemektedir. Günümüzde, amatör basketbol karşılaşmalarında, skor ekranı izleyiciye kameralardan alınan görüntünün ekrana yerleştirilmesi ile sunulmaktadır. Bu işlem sırasında yüksek maliyetli saha kameraları kullanıldığından maliyeti oldukça fazla olmaktadır. Bu problemi çözmek adına projede web cam kullanılmış ve sistemin maliyeti düşürülmüştür. x
  • 11. SUMMARY In this report, the definition of systems, that developed as a graduation project, content, reasons for launch, goals and results are mentioned. Text detection and recognition in real-world images is a problem which has been receiving significant attention . Computer vision applications like Google Street View is an instance of this problem. The system has been developed to display scoreboard image using web cam in amateur basketball match. In amateur basketball matches, the scoreboard is shown by placing the image that taken from the camera on screen. As costly field cameras are used, the cost becomes too. This web cam used in the project to solve the problem and reduced the cost of the system. xi
  • 12. 1. GİRİŞ Gerçek dünya görüntüleri üzerinde metin bulma ve tanıma problemi son zamanlarda üzerinde çokça çalışılmış bir bilgisayarlı görme problemidir. Bu çalışmalara örnek olarak Google Sokak Görünümü uygulaması, görme engelli kişiler için yardımcı uygulamalar ve benzeri uygulamalar verilebilir. Bu proje daha önce yapılmamış olsa da bu konuyla yakından ilişkili başka araştırmalar ve projeler yapılmıştır. Bu araştırmalar doğrultusunda yazılmış olan makaleler ve kitaplar projede referans olarak alınmıştır. Spor karşılaşmalarında skor ekranının okunması projesi doğada metin algılama probleminin özelleşmiş bir formu gerçekleştirilmiş, spor karşılaşmalarında düşük maliyetli kamera kullanılarak skor ekranının okunması ve metin olarak tekrar oluştulması sağlanmıştır. Bu proje sayesinde skor ekranının görüntülenmesini sağlayan yüksek maliyetli kamera yerine web kamera kullanılabilecek ve maliyet düşürülecektir. 1
  • 13. 1.1. PROJE TANIMI Sistem, amatör basketbol karşılaşmalarında skor ekranının görüntüsünün izleyiciye gösterilmek üzere gerçek zamanlı olarak metin haline getirilmesini gerçeklemektedir. Proje kapsamında eğitim verilerinin oluşturulması ve testlerin yapılması adına Gebze Teknik Üniversitesi Prof. Dr. Ahmet Ayhan Spor Salonunda bulunan skor ekranı kullanılmıştır. Amatör basketbol karşılaşmalarında, skor ekranı izleyiciye kameralardan alınan görüntünün ekranın üst köşesine yerleştirilmesi ile gösterilmektedir. Bu işlem sırasında saha kameraları kullanıldığından maliyeti yüksek olmaktadır. Bu problemi çözmek adına projede web cam kullanılmış ve maliyet düşürülmüştür. Şekil 1.1.1 Sistemin Çalışma Şeması 2
  • 14. 1.2. PROJENİN NEDEN VE AMAÇLARI Amatör basketbol karşılaşmalarında, skor ekranı izleyiciye kameralardan alınan görüntünün ekrana yerleştirilmesi ile sunulmaktadır. Bu işlem sırasında yüksek maliyetli saha kameraları kullanıldığından maliyeti oldukça fazla olmaktadır. Projenin amaçları şu şekildedir; • Maliyet problemini çözmek adına projede web cam kullanılıp maliyetin düşürülmesi • Doğada metin algılama probleminin özelleşmiş bir formunun gerçek zamanlı olarak gerçeklenmesi amaçlanmıştır. 1.3. LİTERATÜR ARAŞTIRMASI Yapılan literatür araştırması sonucunda, gerçek dünya görüntüleri üzerinde metin bulma ve algılama problemini çözmek amacıyla bir çok çalışma yapıldığı gözlemlenmiştir. Yapılan araştırmalar sonucunda projede HOG tabanlı SVM ve kayan pencere yöntemi kullanılmasına karar verilmiştir. 1.4. PROJE GEREKSİNİMLERİ Proje gereksinimlerini fonksiyonel gereksinimler ve fonksiyonel olmayan gereksinimler diye iki başlık altında ifade etmek daha doğru olacaktır. Bu kısımda fonksiyonel gereksinimler sistemin iç yapısına ait detaylara yer verirken, fonksiyonel olmayan gereksinimler, performans, kullanım kolaylığı gibi kullanılabilirlik ile alakalı gereksinimlere yer vermektedir. 3
  • 15. 1.4.1. Fonksiyonel Gereksinimler Fonksiyonel gereksinimler şu şekildedir; • Kameradan görüntünün alınması • Skor ekranındaki rakamların yerinin bulunması • Rakam olduğu tespit edilen alanlardaki rakamların tanınması • Yeni bir skor ekranı görüntüsünün oluşturulması Proje içerisinde 3 temel fonksiyon bulunmaktadır. Bu fonksiyonlar şu şekildedir; • Skor ekranındaki rakamların yerlerinin bulunması • Rakam olduğu belirlenen alanlarda bulunan rakamların tanınması • Bulunan yer ve rakam bilgileri ile skor metninin oluşturulması 1.4.2. Fonksiyonel Olmayan Gereksinimler • Sistemin güvenilirliği konusunda, kullandığımız açık kaynak kodlu bir kütüphane olan OpenCV referans olarak gösterilmektedir. • Geliştirilebilir olmalıdır. • OpenCV 1.4.2. Sistemin Temel Özellikleri • Sistem gerçek zamanlı olarak çalışmaktadır. • Sistem 32/64 bit bilgisayarlarda çalışabilmektedir. 1.5. BAŞARI KRİTERLERİ Proje bitiminin hangi ölçülerde başarılı olduğunun değerlendirilebilmesi için oldukça önemli olan başarı ölçütümüz bu başlık altında belirtilecektir. Bunlar; • Maksimum %3 hata ile rakamların tanınması • Normal çekim şartları altında 100x100 pikselden büyük görüntüler için çalışma 4
  • 16. • Alınan ilk görüntü için 5 saniye, sonraki görüntüler için 0.1 saniye görüntü işleme süresi 2. YÖNTEM Bu kısımda, projede kullanılan yöntemlerin nasıl geliştirildiği ve kullanılan araçların ne için ve nasıl kullanıldığı ile ilgili detaylı açıklamalar yer almaktadır. Şekil 2.1 Sistemin Çalışma Şeması Sistemde kullanılan, görüntülerin alındığı kamera, bir web kamera üzerine yerleştirilmiş 12x zoom telefoto lens kullanılarak elde edilmiştir. 5
  • 17. Şekil 2.2 Sistemde Kullanılan 12x Zoom Lens Şekil 2.3 Lens Yerleştirilmiş Web Kamera 6
  • 18. Şekil 2.4 Lens Yerleştirilmiş Web Kamera 2.1. SINIFLANDIRICININ EĞİTİLMESİ Yönlü gradientlerin histogramı (Histogram of Oriented Gradients) bilgisayarlı görme ve görüntü işleme alanlarında obje tanımak için sıkça kullanılan bir özellik vektörü oluşturma yöntemidir. Bu yöntemde, görüntü hücrelere bölünür, bölünen hücrelerin yoğunluk gradientleri çıkarılır, bunların histogramı oluşturulur. Oluşturulan histogramlardan özellik vektörü elde edilir. Bu projede, sınıflandırıcının eğitilmesi için HOG yöntemi kullanılmaktadır. Support Vector Machine(SVM), denetimli bir öğrenme modelidir. Bu yöntemde verilen veri seti bir doğru, düzlem vb. kullanılarak pozitif ve negatif değerler olarak ikiye ayırılır. Gelen test verisinin pozitif ya da negatif olduğuna karar verilir. Projede 64x32 piksel boyuntundaki görüntülerin HOG vektörleri hesaplanır ve SVM’e verilerek eğitim yapılır. Her rakam için ayrı bir SVM eğitilir. Buna ek olarak rakamların bulunması için bir rakam sınıflandırıcısı eğitilir. Bu sınıflandırıcı skor ekranı görüntüsü üzerinde kayan pencereler algoritmasını kullanarak gezer ve rakam olan alt görüntülerin bulunmasını sağlar. SVM eğitiminde kullanılan örnek görüntüler aşağıdaki gibidir; 7
  • 19. Şekil 2.1.1 0 Rakamı İçin Kullanılan Örnek Pozitif Görüntü Şekil 2.1.2 5 Rakamı İçin Kullanılan Örnek Pozitif Görüntü 2.2. RAKAMLARIN BULUNMASI Kameradan alınan görüntü üzerinde kullanıcının skor ekranının 4 köşesini işaretlenmesi istenir. İşaretlenen noktalar kullanılarak skor ekranının bir görüntüsü oluşturulur. Bu görüntü üzerinde her rakamın sınıflandırcısı çalıştırılır. Her rakam sınıflandırıcısından marjine belirli bir eşik değerinin üstünde uzak olan noktaların SVM skorlarının mutlak değeri belirli bir kat sayı ile çarpılarak bir yoğunluk değeri elde edilir. Elde edilen bu değer, tüm pikselleri başta sıfır olan skor ekranı görüntüsüyle aynı boyutta bir görüntü üzerinde denk gelen noktaya, yoğunluk değeri olarak yazılır. Oluşturulan bu skor görüntüsü üzerinde, en büyük olmayanı bastırma yöntemleri kullanılarak rakamların konumları tespit edilir. Şekil 2.2.1 Kesilen Skor Ekranının Görüntüsü 8
  • 20. Şekil 2.2.2 SVM Skorlarından Oluşturulmuş Görüntü Fakat bu yöntem kullanıldığında, skor görüntüsünü 10, skor görüntüsünü 1 kez gezmek gerekmektedir. Bunlar da programın çalışma süresini uzatmaktadır. Bu sebeple bu yöntemin değiştirilip iyileştirilmesine gidilmiştir. Programın çalışmasını hızlandırmak adına öncelikle skor ekranının görüntüsü üzerinde 10 kez gezme işlemine bir alternatif aranmıştır. Problemin çözümü için bir rakam sınıflandırıcısı oluşturulmuştur. Bu sınıflandırıcının pozitif veri setini, tüm rakamların pozitif görüntüleri, negatif veri setini ise, tüm rakamların ortak negatif görüntüleri oluşturmaktadır. Bu yöntemde, görüntü üzerinde öncelikle, rakam sınıflandırıcısı çalıştırılır ve rakamlar bulunur. İkinci problemimiz olan skor değerlerinin bulunduğu görüntü üzerinde gezme işlemi için ise, skorlar bir görüntü üzerinde değil bir vektörde tutulması yolu izlenmiştir. Rakam sınıflandırıcısının verdiği skor değerlerinden, belirlenen eşik değerinin üzerinde olanların koordinat bilgileri bir vektörde tutulur. Aynı zamanda, bu eşik değerinin üzerindeki skorlar ayrı bir vektörde tutulur. Skor vektörünün n. indeksinde bulunan skor değeri, koordinat vektöründeki n. indeksteki noktaya ait olmaktadır. Bu vektörler üzerinde 15x15 piksel boyutunda bir alanda en büyük olmayanı bastırma yöntemleri kullanılarak en yüksek skora sahip noktalar belirlenir. Bu noktalar rakamların başlangıç noktalarını ifade etmektedir. Yapılan değişiklikler sonucunda programın çalışma süresinde azalma görülmüştür. 9
  • 21. 2.3. RAKAMLARIN TANINMASI Bu kısımda, rakamların bulunması işlemi tamamlandıktan sonra, bulunan alanlarda oluşturulan görüntülerin HOG vektörleri çıkarılır. Çıkarılan vektör her bir rakamın sınıflandırıcısına gönderilir, alınan skorlar karşılaştırılır ve en iyi skora sahip olan rakamın o alanda bulunduğuna karar verilir. 2.4. SKOR METNİNİN OLUŞTURULMASI Rakamların bulunması ve rakamın tanınması işlemleri tamamlandıktan sonra bu aşamaya geçilir. Bu aşamada tanınan rakam, oluşturulan metinde olması gereken konuma yerleştirilir. 3. PROJE PLANLAMASI Bu bölümde projenin planlaması ve projedeki işleyiş hakkında bilgi veren diyagramlar belirtilmiştir. 3.1. SİSTEM MİMARİSİ Bitirme projesi kapsamında geliştirilen bu sistem, skor ekranının önceden kaydedilmiş videoları üzerinde ve kameradan görüntü alınarak geliştirilmiştir. Kamera ve video görüntüleri üzerinde testleri yapılmıştır. Her iki durumda da alınan görüntü aşağıdaki adımlar takip edilerek işlenir. 1. Kullanıcıdan alınan koordinatlara göre skor ekranının görüntüsü kesilir. 2. Görüntü üzerinde rakamlar bulunur. 1
  • 22. 3. Bulunan alanlardaki rakamlar tanınır. 4. Sentetik skor ekranı görüntüsü oluşturulur. 3.2. UML DİYAGRAMLARI 3.2.1. Kullanım Durum Diyagramı Şekil 3.2.1.1 Kullanım Durum Diyagramı 1
  • 23. 3.2.2. Etkinlik Diyagramı Şekil 3.2.1.2 Etkinlik Diyagramı 4. DENEYLER Bu kısımda projenin başlangıcından şuan gelinen noktaya kadar uygulanan yöntemlerin sonuçları birbirleriyle karşılaştırılarak gösterilecektir. Deneyler i7- 2670QM CPU ve 4 GB Ram donanımına sahip dizüstü bilgisayarda gerçekleştirilmiştir. 1
  • 24. 4.1. RAKAMLARIN BULUNMASI Bu aşamada, ilk olarak her rakam için ayrı ayrı eğitilmiş olan svm skorları kullanılarak rakamlar bulunmaya çalışıldı. Bu yöntemde görüntü 10 kez gezilerek her rakam için belirli bir eşik değerinin üzerindeki değerler skor görüntüsüne kaydedilmiştir. Bu aşamada elde edilen skor görüntüsünün bir örneği aşağıdaki gibidir. Şekil 4.1.1 SVM Skorlarından Oluşturulmuş Örnek Görüntü Bu yöntemin uzun zaman almasından dolayı öncelikle, bir rakam sınıflandırıcısı eğitildi. Bu sınıflandırıcı sayesinde, bir görüntüde rakam olup olmadığı bilgisine, görüntü üzerinde bir kez gezilerek ulaşıldı. İkinci olarak, skor değerlerinin bir matriste tutulması, en büyük olmayanı baskılama yöntemi uygulanırken zaman maliyetini artırdığı için bu yöntemden vazgeçildi. Bunun yerine rakam bulunan noktalar ve skor değerleri birer vektörde tutularak en büyük olmayanı baskılama algoritması uygulandı. Bu işlemin testleri 200 adet görüntü ile yapılmış %99 başarı elde edilmiştir. 1
  • 25. Şekil 4.1.2 Algoritmanın Son Hali İle SVM Skorlarından Oluşturulmuş Örnek Görüntü 4.2. RAKAMLARIN TANINMASI Bu kısımda, bir önceki aşamada belirlenen noktalardan başlayan 64x32 piksel boyutundaki küçük resimler, skor ekranı görüntüsünen kesilmiştir. Kesilen görüntülerde, SVM kullanılarak rakamların tanınması işlemi gerçekleştirilmiştir. İşlemin testi 2000 adet görüntü üzerinde yapılmış, %2 hata ile çalıştığı tespit edilmiştir. Tanınan rakamlar konum bilgisi de dikkate alınarak oluşturulan görüntüye yerleştirilerek çalışma tamamlanmıştır. Bu işlem ilk alınan görüntü için 5 saniye, diğer her görüntü için 0.1 saniye sürmektedir. 4.2.1. Başarılı Sonuç Örnekleri Şekil 4.2.1.1 Kameradan Alınan Kesilmiş Skor Ekranı Görüntüsü 1
  • 26. Şekil 4.2.1.2 Çalışma Sonucunda Oluşturulan Görüntü 4.2.2. Başarısız Sonuç Örnekleri Şekil 4.2.2.1 ‘ de yer alan görüntüde 3 rakamı sistem tarafından 8 rakamı olarak algılanmış ve yanlış sonuç üretilmiştir. Şekil 4.2.2.1 Kameradan Alınan Kesilmiş Skor Ekranı Görüntüsü 1
  • 27. Şekil 4.2.2.2 Çalışma Sonucunda Oluşturulan Görüntü 5. SONUÇ Proje kapsamında kullanılan görüntüler, Gebze Teknik Üniversitesi Prof. Dr. Ahmet Ayhan Spor Salonundaki skor ekranının görüntüleri alınarak sağlanmıştır. İlk olarak HOG tabanlı SVM kullanılarak eğitim yapılması hedeflenmiştir. Bu eğitimler sırasında her rakam için ortalama 300 adet pozitif görüntü, 2100 adet negatif görüntü kullanılmıştır. Eğitim tamamlandıktan sonra skor ekranı görüntüsünde rakamları bulma işlemine geçilmiştir. Bu aşamada 3’er piksel aralıklarla kayan pencereler yöntemi kullanılmış, belirli bir eşik değeri üstünde skora sahip noktalar belirlenmiştir. Belirlenen bu noktalar en büyük olmayanı bastırma yöntemi kullanılarak rakam bulunan noktalar kaydedilmişitir. Bir sonraki aşamada, bu noktalardan başlayan 64x32 piksel boyutundaki küçük resimler, skor ekranı görüntüsünen kesilmiştir. Kesilen görüntülerde, SVM kullanılarak rakamların tanınması işlemi gerçekleştirilmiştir. Tanınan rakamlar konum bilgisi de dikkate alınarak oluşturulan görüntüye yerleştirilerek çalışma tamamlanmıştır. Çalışmanın testleri Gebze Teknik Üniversitesi Prof. Dr. Ahmet Ayhan Spor Salonunda gerçekleştirilmiştir. 1
  • 28. KAYNAKLAR [1] Wang, Kai, Boris Babenko, and Serge Belongie. "End-to-end scene text Computer Vision (ICCV), 2011 IEEE International Conference on. IEEE, 2011. [2] Chen, Xiangrong, and Alan L. Yuille. "Detecting and reading text in natural scenes." Computer Vision and Pattern Recognition, 2004. CVPR 2004. Proceedings of the 2004 IEEE Computer Society Conference on. Vol. 2. IEEE, 2004. [3] Li, Huiping, David Doermann, and Omid Kia. "Automatic text detection and tracking in digital video." Image Processing, IEEE Transactions on 9.1 (2000): 147- 156. [4] Ezaki, Nobuo, Marius Bulacu, and Lambert Schomaker. "Text detection from natural scene images: towards a system for visually impaired persons." Pattern Recognition, 2004. ICPR 2004. Proceedings of the 17th International Conference on. Vol. 2. IEEE, 2004. [5] Mishra, Anand, Karteek Alahari, and C. V. Jawahar. "Top-down and bottom-up cues for scene text recognition." Computer Vision and Pattern Recognition (CVPR), 2012 IEEE Conference on. IEEE, 2012. [6] Han, Feng, et al. "A two-stage approach to people and vehicle detection with hog-based svm." Performance Metrics for Intelligent Systems 2006 Workshop. 2006. [7] Lienhart, Rainer W., and Frank Stuber. "Automatic text recognition in digital videos." Electronic Imaging: Science & Technology. International Society for Optics and Photonics, 1996. [8] Chen, Datong, Jean-Marc Odobez, and Herve Bourlard. "Text detection and recognition in images and video frames." Pattern recognition 37.3 (2004): 595-608. [9] Neumann, Lukáš, and Jiří Matas. "Real-time scene text localization and recognition." Computer Vision and Pattern Recognition (CVPR), 2012 IEEE Conference on. IEEE, 2012. [10] Neumann, Lukas, and Jiri Matas. "A method for text localization and recognition in real-world images." Computer Vision–ACCV 2010. Springer Berlin Heidelberg, 2011. 770-783. [11] Neumann, Lukáš, and Jiří Matas. "Real-time scene text localization and recognition." Computer Vision and Pattern Recognition (CVPR), 2012 IEEE Conference on. IEEE, 2012. [12] A. Shahab, F. Shafait, and A. Dengel. ICDAR 2011 robust reading competition challenge 2: Reading text in scene images. In ICDAR 2011, pages 1491–1496, 2011. [13] Tomasi, Carlo. "Histograms of Oriented Gradients." [14] Newell, Andrew J., and Lewis D. Griffin. "Multiscale histogram of oriented gradient descriptors for robust character recognition." Document Analysis and Recognition (ICDAR), 2011 International Conference on. IEEE, 2011. 1
  • 29. [15] Kim, Kwang In, Keechul Jung, and Jin Hyung Kim. "Texture-based approach for text detection in images using support vector machines and continuously adaptive mean shift algorithm." Pattern Analysis and Machine Intelligence, IEEE Transactions on 25.12 (2003): 1631-1639. [16] Wang, Lipo. Support Vector Machines: theory and applications. Vol. 177. Springer Science & Business Media, 2005. 1
  • 30. EKLER A. Lisans Bitirme Projesi Konusu Bildirme Formu 1
  • 31. T.C. GEBZE TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS BİTİRME PROJESİ KONUSU BİLDİRME FORMU ÖĞRENCİ ADI SOYADI : Büşra ERKAN ÖĞRENCİ NO : 111044063 İMZA: PROJE KONU BAŞLIĞI: Spor karşılaşmalarında skor ekranının okunması PROJENİN AMACI : Spor karşılaşmalarında skor ekranını okumak için yüksek maliyetli kamera yerine web cam kullanılarak ekrana verilecek görüntünün elde edilmesi. Bu doğrultuda skor ekranındaki rakamları bulup tanımaya çalışacağım. FAYDALANILACAK KAYNAKLAR : 1) OpenCV Tutorial, http://docs.opencv.org/doc/tutorials/tutorials.html 2) Wang, Kai, and Serge Belongie. Word spotting in the wild. Springer Berlin Heidelberg, 2010. 3) Wang, Kai, Boris Babenko, and Serge Belongie. "End-to-end scene text recognition." Computer Vision (ICCV), 2011 IEEE International Conference on. IEEE, 2011. PROJE DANIŞMANI: Doç. Dr. Yusuf Sinan AKGÜL İMZA: BÖLÜM BAŞKANI: Prof. Dr. İbrahim SOĞUKPINAR İMZA: • Bu form bilgisayar ortamında 2 nüsha olarak düzenlenecek, bir nüsha bölüm başkanlığına ve bir nüsha proje danışmanına verilecektir. 2 Ek A. Lisans Bitirme Projesi Konusu Bildirme Formu
  • 32. 2