Bez (Mavi-Siyah) Cillte Bu Bölüm Olmayacaktır

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 83

İSTANBUL TEKNİK ÜNİVERSİTESİ  FEN BİLİMLERİ ENSTİTÜSÜ

AKUSTİK VE GÖRSEL ÖZELLİKLERİ KULLANARAK MÜZİK TÜR


SINIFLANDIRMASI UYGULAMASI

YÜKSEK LİSANS TEZİ

Ali ÖZKAHRAMAN

Elektronik ve Haberleşme Mühendisliği Anabilim Dalı

Elektronik Mühendisliği Programı

Bez (mavi-siyah) cillte bu bölüm olmayacaktır.

OCAK 2018
İSTANBUL TEKNİK ÜNİVERSİTESİ  FEN BİLİMLERİ ENSTİTÜSÜ

AKUSTİK VE GÖRSEL ÖZELLİKLERİ KULLANARAK MÜZİK TÜR


SINIFLANDIRMASI UYGULAMASI

YÜKSEK LİSANS TEZİ

Ali ÖZKAHRAMAN
(504141240)

Elektronik ve Haberleşme Mühendisliği Anabilim Dalı

Elektronik Mühendisliği Programı

Tez Danışmanı: Doç. Dr. Mürvet KIRCI

OCAK 2018
İTÜ, Fen Bilimleri Enstitüsü’nün 504141240 numaralı Yüksek Lisans Öğrencisi Ali
ÖZKAHRAMAN, ilgili yönetmeliklerin belirlediği gerekli tüm şartları yerine
getirdikten sonra hazırladığı “AKUSTİK VE GÖRSEL ÖZELLİKLERİ
KULLANARAK MÜZİK TÜR SINIFLANDIRMASI UYGULAMASI” başlıklı
tezini aşağıda imzaları olan jüri önünde başarı ile sunmuştur.

Tez Danışmanı : Doç. Dr. Mürvet KIRCI : ............................


İstanbul Teknik Üniversitesi

Jüri Üyeleri : Prof. Dr. Hakan Ali ÇIRPAN : ............................


İstanbul Teknik Üniversitesi

Yrd. Doç. Dr. Bülent BOLAT : ..........................


Yıldız Teknik Üniversitesi

Teslim Tarihi : 17 Kasım 2017


Savunma Tarihi : 02 Ocak 2018
iii
iv
Aileme,

v
vi
ÖNSÖZ

Öncelikle tezin hazırlanma sürecinde bilgi ve tecrübesiyle beni en iyi şekilde


yönlendiren, göstermiş olduğu sabır ve hoşgörüyle bana hep destek olan tez
danışmanım Doç. Dr. Mürvet KIRCI’ya teşekkür ederim.
Ayrıca tüm öğrenim hayatım boyunca beni canı gönülden destekleyen, her türlü
zorlukta yanımda olduklarını hissettiren canım babam Hasan ÖZKAHRAMAN,
annem Gönül ÖZKAHRAMAN, ablam Açelya SOYUTEMİZ, kardeşim Kardelen
ÖZKAHRAMAN ve yeğenim Ali Rüzgar SOYUTEMİZ’e candan sevgilerimi ve
teşekkürlerimi sunarım.
Son olarak tez hazırlama süresinde bana göstermiş olduğu ilgi ve sabrı için eşim
Gamze ÖZKAHRAMAN’a teşekkür ederim.
Ayrıca sürekli bana destek olan değerli arkadaşlarım Ozan Vahit ALTINPINAR, Ali
Doğuş GÜNGÖRDÜ ve Mehmet BOZDAL’a teşekkürlerimi sunarım.

OCAK 2018 Ali ÖZKAHRAMAN


Araştırma Görevlisi

vii
viii
İÇİNDEKİLER

Sayfa

ÖNSÖZ ...................................................................................................................... vii


İÇİNDEKİLER ......................................................................................................... ix
KISALTMALAR ...................................................................................................... xi
SEMBOL LİSTESİ ................................................................................................. xiii
ÇİZELGE LİSTESİ ................................................................................................. xv
ŞEKİL LİSTESİ ..................................................................................................... xvii
ÖZET ........................................................................................................................xix
SUMMARY..............................................................................................................xxi
1. GİRİŞ ...................................................................................................................... 1
1.1 Tezin Amacı …………. .....................................................................................2
.

1.2 Müzik ve Müzik Türleri ... ................................................................................2


1.3 Spektrogram ve Elde Edilmesi ... ......................................................................4
2. ÖZELLİK DETEKTÖRLER VE GÖRÜNTÜ TANIMLAYICILAR ..............7
2.1 SIFT Görüntü Tanımlayıcısı ...............................................................................7
2.1.1. Ölçek uzaydaki ekstrem noktaların tespiti ..............................................8
……………...

2.1.1.1. Gauss laplas metodu……………………… .........................................8


2.1.2. Anahtar nokta konumlandırma.................................................................12
2.1.3. Yönelim atama ..........................................................................................13
2.1.4. Anahtar nokta tanımlama..........................................................................13
2.1.5. Anahtar nokta eşleştirme ..........................................................................14
2.2 SURF Görüntü Tanımlayıcısı ...........................................................................15
2.2.1. Kutu filtresi…. ..........................................................................................15
2.2.2. Yönelim atama…......................................................................................17
2.2.3. Özellik tanımlama.....................................................................................18
3. ÖZELLİK KÜMESİ ............................................................................................21
3.1. K-means Kümeleme .........................................................................................25
4. AKUSTİK ÖZELLİKLER..................................................................................27
4.1. Mel Frekans Kepstral Katsayıları .....................................................................28
5. SINIFLANDIRICILAR .......................................................................................35
5.1. Destek Vektör Makinesi Sınıflandırıcısı ..........................................................35
5.1.1. Doğrusal olmayan veri için destek vektör makinesi....…. ........................37
5.2. k-NN Sınıflandırıcısı ........................................................................................38
5.2.1. K katlamalı çapraz doğrulama…. ..........................................................40
……………

6. SİSTEM GERÇEKLEME .................................................................................. 43


6.1. Sistemin Gerçeklenmesi .................................................................................. 44
6.1.1. Elde edilen sonuçlar..................................................................................45
7. SONUÇ ................................................................................................................. 51

ix
KAYNAKLAR .........................................................................................................53
ÖZGEÇMİŞ……. ....................................................................................................57

x
KISALTMALAR

DVM : Destek Vektör Makinesi


SVM : Support Vector Machine
SIFT : Scale-Invariant Feature Transform
SURF : Speeded-Up Robust Features
DoG : Difference of Gaussian
LoG : Laplacian of Gaussian
MFKK : Mel Frekans Kepstral Katsayıları
MFCC : Mel Frequency Cepstral Coefficients
knn : k-nearest neighbour

xi
xii
SEMBOL LİSTESİ

L(x,y) : Laplasyan
I(x,y) : Görüntü
G(x,y) : Gaussian Fonksiyonu
σ : Gaussian Dağılımının Standart Sapması
D(x) : Taylor Serisi Açılımı
Hf : Hessian Matrisi
m : Gradyen Genliği
ϴ : Yönelim
σi : Piksel Birimleri
d : Mesafe Uzaklığı
M(f) : Mel Ölçeği
Si(k) : Ayrık Fourier Dönüşümü
h(n) : Analiz Penceresi
S_V : Sonuç verisi
Pi(k) : Güç Spektrumunun Periyodogram Değeri
f(i) : FFT Değerleri
r : Marjin

xiii
xiv
ÇİZELGE LİSTESİ

Sayfa

Çizelge 3.1 : Kelime kümesi histogramı. .................................................................. 21


Çizelge 5.1 : Destek Vektör Makinesinde kullanılan başlıca kernel fonksiyonları ... 38
Çizelge 6.1 : Raspberry pi 2 özellikleri. .................................................................... 44
Çizelge 6.2 : Test verisi üzerinde SIFT görüntü tanımlayıcısı kullanılarak elde edilen
sonuçlar…………………………………………………………………………… ...46
Çizelge 6.3 : Test verisi üzerinde SURF görüntü tanımlayıcısı kullanılarak elde edilen
sonuçlar…………………………………………………………………………… ...47
Çizelge 6.4 : Test verisi üzerinde bütün görüntü tanımlayıcıları kullanılarak elde edilen
sonuçlar…………………………………………………………………………… ...48
Çizelge 6.5 : Test verisi üzerinde 9 katsayıya sahip MFCC kullanılarak elde edilen
sonuçlar. ..................................................................................................................... 49
Çizelge 6.6 : Test verisi üzerinde 11 katsayıya sahip MFCC kullanılarak elde edilen
sonuçlar. ..................................................................................................................... 49
Çizelge 6.7 : Test verisi üzerinde 13 katsayıya sahip MFCC kullanılarak elde edilen
sonuçlar. ..................................................................................................................... 50
Çizelge 6.8 : Test verisi üzerinde 15 katsayıya sahip MFCC kullanılarak elde edilen
sonuçlar. ..................................................................................................................... 50

xv
xvi
ŞEKİL LİSTESİ

Sayfa

Şekil 1.1 : Klasik müzik spektrogramları. ................................................................... 3


Şekil 1.2 : Jaz müzik spektrogramları.......................................................................... 4
Şekil 1.3 : Metal müzik spektrogramları. .................................................................... 4
Şekil 1.4 : Pop müzik spektrogramları. ....................................................................... 4
Şekil 2.1 : Köşe noktalarına bakış açısı. ...................................................................... 8
Şekil 2.2 : Laplacian görüntünün elde edilmesi........................................................... 9
Şekil 2.3 : σ=1 için Gaussian dağılımı....................................................................... 10
Şekil 2.4 : Gaussian piramidi. .................................................................................... 11
Şekil 2.5 : Gauss farkın elde edilmesi. ...................................................................... 11
Şekil 2.6 : Anahtar noktaların belirlenmesi. .............................................................. 11
Şekil 2.7 : Bulunan ve doğru anahtar noktalar. ......................................................... 12
Şekil 2.8 : Anahtar noktaların yönelimi..................................................................... 13
Şekil 2.9 : Anahtar nokta tanımlama. ........................................................................ 14
Şekil 2.10 : Anahtar nokta eşleştirme ........................................................................ 14
Şekil 2.11 : SURF Kutu Filtresi................................................................................. 15
Şekil 2.12 : Örnek Kutu Filtresi ................................................................................. 16
Şekil 2.13 : Orijinal görüntü ...................................................................................... 16
Şekil 2.14 : İntegral görüntü ...................................................................................... 16
Şekil 2.15 : Orijinal görüntüde belli bir kısımda averaj alma işlemi ......................... 16
Şekil 2.16 : İntegral görüntüde belli bir kısımda averaj alma işlemi ......................... 17
Şekil 2.17 : Yönelim atama ....................................................................................... 18
Şekil 2.18 : Anahtar nokta etrafında kare komşuluk ................................................. 18
Şekil 3.1 : Kelime kümesi dökümanı......................................................................... 21
Şekil 3.2 : Özellik kümesi adımları. .......................................................................... 22
Şekil 3.3 : Özellik kümesi ilk adımı. ......................................................................... 22
Şekil 3.4 : Özellik detektörü dense anahtar nokta seçimi........................................... 23
Şekil 3.5 : Özellik kümesi ikinci adımı. .................................................................... 23
Şekil 3.6 : Görüntüden çıkan vektörlerin kümelenmesi..............................................23
Şekil 3.7 : Görsel kelime haznesinin elde edilmesi.................................................... 24
Şekil 3.8 : Özellik kümesi histogramı........................................................................ 24
Şekil 3.9 : K-means kümeleme. ................................................................................. 25
Şekil 4.1 : Ses sinyalinin küçük pencerelere ayrılması.............................................. 27
Şekil 4.2 : Orta boyutta pencereleme. ........................................................................ 27

xvii
Şekil 4.3 : Frekans ölçeğiyle mel ölçeği arasındaki ilişki......................................... .29
Şekil 4.4 : Mel filterbank ve güç spektrumu. ............................................................. 31
Şekil 4.5 : Filterbanklar. ............................................................................................ 33
Şekil 5.1 : Destek vektör makinesi. ........................................................................... 35
Şekil 5.2 : Doğrunun denklemi ve sınıfların elde edilmesi........................................ 36
Şekil 5.3 : Destek vektör makinesinde çok sayıda doğrunun iki sınıfı ayırabilmesi . 36
Şekil 5.4 : Doğruya en yakın vektörlerin doğruya olan uzaklığı. .............................. 36
Şekil 5.5 : Kernel fonksiyonu ile boyut arttırarak bir sistemi doğrusallaştırma. ....... 37
Şekil 5.6 : İki farklı sınıf. ........................................................................................... 39
Şekil 5.7 : Bilinmeyen bir c vektörünün temsili. ....................................................... 39
Şekil 5.8 : Bilinmeyen vektöre en yakın komşuluktaki vektörler.............................. 39
Şekil 5.9 : Bilinmeyen vektörün hangi sınıfa ait olduğunun belirlenmesi................. 39
Şekil 5.10 : K=5 için K katlamalı çapraz doğrulama eğitim ve test seti ayrıştırması.41
Şekil 6.1 : Raspberry pi 2........................................................................................... 43

xviii
AKUSTİK VE GÖRSEL ÖZELLİKLERİ KULLANARAK MÜZİK TÜR
SINIFLANDIRMASI UYGULAMASI

ÖZET

Bu teze konu olan çalışmada, sesin hem görsel hem de akustik özellikleri kullanılarak
müzik tür sınıflandırması uygulaması geliştirilmiştir. Müzik türleri olarak en çok
bilinen dört farklı müzik türü seçilmiştir. Bunlar Elektronik, Jaz, Klasik ve Metal
müzik türleridir.
Görsel özelliklerin tasarımında SIFT ve SURF görüntü tanımlayıcıları kullanılmıştır.
Akustik özellik olarak da Mel Frekans Kepstral Katsayıları (Mel Frequency Cepstral
Quefficients(MFCC)) kullanılmıştır. Sınıflandırıcı olarak ise Destek Vektör Makinesi
ve k-nn sınıflandırıcısından yararlanılmıştır.
Teknolojinin gelişmesiyle insanların otomatik sınıflandırma yapan cihaz ya da
yazılımlara güveni artmaktadır. Bununla beraber müzik piyasasının gelişmesiyle
otomatik müzik tür sınıflandırması uygulamasına olan ilgi artmakta ve bu tür
sistemlerin kullanımı da buna paralel bir şekilde her geçen gün artmaktadır. Bu
ihtiyaçtan yola çıkarak müzik tür sınıflandırması uygulaması geliştirilerek bu ihtiyacın
giderilmesi amaçlanmıştır.
Müzik türleri kendi içinde belirli özelliklere sahiptir. Her türün kendine özgü akustik
özellikleri bu türün diğer türlerden ayırt edilmesinde kullanılır. Sese ait akustik
özellikler 3 ana sınıftan oluşur. Bunlar Tını özellikleri, Ritmik özellikler ve Makam
özellikleridir. Görsel özelliklerle birleştirme işlemi yapıldığından burada sadece
Timbral özellikler sınıfına ait olan MFKK özelliği kullanılmıştır. MFKK ses işlemede
en çok kullanılan ve en etkin bir özelliktir. Özellikle ses tanıma ve konuşmacı tanıma
gibi uygulamalarda karşımıza çıkmaktadır. Müzik tür sınıflandırması uygulamalarında
da şimdiye kadar kullanılmıştır. MFKK, insan kulağının sesi algılamasına benzer
şekilde çalışır. Yapılan deneylere göre insan kulağı sesi ilk 1000Hz de doğrusal olarak,
1000Hz ‘den büyük frekanslarda da logaritmik olarak algılamaktadır. Buradan
esinlenerek MFKK özellikleri çıkarılmıştır.
Görsel özellik elde edilmesinde müziğin spektrogramı elde edilerek bu spektrogram
üzerinde görüntü işleme teknikleriyle özellik çıkarılmıştır. Görsel özellikler kısmında
kullanılan görüntü tanımlayıcılardan bir tanesi SIFT’ dir. Görüntü tanımlayıcılar bir
görüntüye ait olan özelliklerin çıkarılmasını sağlar. SIFT görüntü tanımlayıcısı
görüntüden özellik çıkarırken hem görüntü rotasyonundan hem de ölçekten bağımsız
çalışmaktadır. Yani görüntü rotasyonunda ya da ölçekte meydana gelebilecek herhangi
bir değişiklik SIFT görüntü tanımlayıcısının performansını herhangi bir şekilde
etkilememektedir. SURF algoritması da bir diğer görüntü tanımlayıcısı olarak
kullanılmıştır. SURF, SIFT algoritmasının hızlandırılmış şeklidir. Dolayısıyla SURF’
de hem görüntü rotasyonundan hem de ölçekten bağımsız çalışmaktadır.
Görüntü tanımlayıcılar elde edildikten sonra bu tanımlayıcılardan çıkan vektörler
kullanılarak özellik kümesi histogramı oluşturulur. Özellik kümesi özellikle son

xix
yıllarda görüntü sınıflandırmada kullanılan bir yöntemdir. Görüntü tanımlayıcılardan
elde edilen vektörler k-means yöntemi kullanılarak benzerliklerine göre sınıflandırılır
ve bunların histogramı alınır. Daha sonra bu histogramlar sınıflandırıcı eğitiminde
kullanılır.
Sınıflandırıcı olarak da destek vektör makinesi ve k-nn sınıflandırıcısı kullanılmıştır.
K-nn sınıflandırıcısı uygulaması basit olan bir sınıflandırma çeşididir. Bu
sınıflandırıcının diğer sınıflandırıcılardan farkı eğitim aşamasına gerek duymamasıdır.
Eğitim verileri sınıflandırma sırasında bu sınıflandırıcı tarafından direkt olarak
kullanılır. Destek vektör makinesi de bir danışmanlı öğrenme çeşididir. Görüntü ve ses
işleme alanında sınıflandırıcı olarak en çok kullanılan yöntemdir. Bu sınıflandırıcı
farklı sınıfları birbirinden ayırt edebilecek en iyi hyperplane’ı bularak sınıflandırma
işlemini gerçekleştirir.
Sistem gerçeklemesinde kullanılan temel eleman Raspberry pi vakfı tarafından
üretilmekte olan Raspberry pi 2 ‘dir. Raspberry pi, içinde Linux Raspbian işletim
sistemi olan bir karttır. Dolayısıyla aslında Linux yüklü bir bilgisayar gibi de
düşünebiliriz. Dolayısıyla herhangi bir yazılım programı(c,c++,python…) yüklenerek
yazılım geliştirilmesi mümkündür. Bu çalışma python 2 kullanılarak geliştirilmiştir.
Raspberry pi 2 4 çekirdekli ARMV7 cortex 900MHZ işlemci, 1GB RAM ve SD kart
yuvasına sahiptir.
Yapılan çalışmalar sonucunda elde edilen performansın dört müzik türünü ayırt
etmede iyi sonuç verdiği görülmektedir. Sadece görsel özellikler kısmının bile müzik
tür sınıflandırmasında kullanılabileceğini göstermiştir.
İlk bölümde müzik ve müzik türlerinden bahsedilmiş ve müzik türlerinin kendine özgü
özelliklerinin olduğundan bahsedilmiş ve gösterilmiştir.
İkinci bölümde de özellik detektörler ve görüntü tanımlayıcılardan bahsedilmiştir.
Sesin spektrogram görüntüsü üzerinden özellik detektörler yardımıyla anahtar
noktaların bulunup, bu anahtar noktalardan da görüntü tanımlayıcılar yardımıyla
özellik çıkarma işlemi uygulandığından bahsedilmiştir.
Müteakiben oluşturulan üçüncü bölümde, görüntü tanımlayıcılardan çıkan vektörlerin
benzerliklerine göre kümelenmesi ve bunların histogramının çıkarılmasıyla özellik
kümesinin elde edilmesinden bahsedilmiştir.
Dördüncü bölümde ise sesin akustik özelliklerinden olan Mel Frekans Kepstral
Katsayıların dan bahsedilmiştir.
Beşinci bölümde hem akustik özellikleri hem de görsel özellikleri sınıflandırma
işleminde kullanılan Destek Vektör Makinesi ve knn sınıflandırıcısına değinilmiştir.
Son olarak ise altıncı bölümde sistemin gerçeklenmesine değinilmiş ve elde edilen
sonuçlar gösterilmiştir.

xx
MUSICAL GENRE CLASSIFICATION APPLICATION USING BOTH
ACOUSTIC AND VISUAL FEATURES

SUMMARY

In this thesis, the application of musical genre classification has been improved by
using both visual and acoustical features of the voice. Four different types of music
were chosen as the most popular types of music.
SIFT and SURF image descriptors are used in the design of visual features. Mel
Frequency Cepstral Coefficients are used as the acoustic features. Support Vector
Machine and k-nn classifier are used also as classifiers.
With the development of technology, people are increasingly reliant on automatic
classification devices or software. With the development of the music market,
however, there is growing interest in the application of automatic musical genre
classification, and the use of such systems is increasing day by day. Therefore, it is
aimed to eliminate this necessity by developing the application of music genre
classification.
Music genres have certain characteristics in themselves. Each unique acoustic feature
is distinguished from the other genres. To classify genres, people first need to know
these genres. They need to listen many songs about that genre to learn it. So, they can
classify them.
Digitally, it is in same manner. We should train classifiers with using many songs for
each genres. Then, the classifier can learn the genres and classify the test songs easily.
It is not possible to classify all songs hundred percent. Because, some songs can
contain not just one genre’s features. They can have many genres’ features. So, when
classifiying, the classifier can give different results.
Acoustic features of sound consist of 3 main classes. These are Timbral features,
Rythmic features and Tune features. Because of combining visual features, only the
MFCC property belonging to the class of the timbral features was used here. MFCC is
the most used and most effective feature in sound processing. Especially in
applications such as voice recognition and speaker recognition, confusion arises. It has
been also used in the Music Genre Classification applications up to now. The MFCC
Works in a similar way to the perception of the human ear. According to the
experiments performed, the human ear perceives the sound linearly in the first 1000Hz
and logarithmically in the frequencies more than 1000Hz. Inspired by this, MFCC
features have been obtained.
In the visual feature extraction part, first the spectrogram is obtained from the music
files. Then, image processing techniques are applied to this spectrogram image to
obtain visual features. One of the image descriptors used in visual features is SIFT.
Image descriptors allow you to extract properties that belong to an image. The SIFT
image descriptor works independently of both the image rotation and the scale when

xxi
extracting features from the image. In other words, any change that may ocur in image
rotation or scale does not affect the performance of the SIFT image descriptor in any
way. The SURF algorithm is also used as another image descriptor. SURF is the
accelerated version of the SIFT algorithm. Therefore, SURF works independently of
both image rotation and scale.
After the image descriptors are obtained, the bag of feature histogram is created using
the vectors that come out of these descriptors. The bag of feature method used in image
classification especially in recent years. The vectors obtained from the image
descriptors are classified according to their similarity using the k-means method and
their histograms are taken. These histograms are then used in classifier training stage.
Support Vector Machine and k-nn classifier are used as classifier. The application of
k-nn classifier is a sort of classification that is simple. This classifier differs from the
other classifiers in that it does not need the training phase. Training data is used directly
by this classifier during classification. The support vector machine is a supervised
learning type of classifiers. It is the most used method as classifier in image and sound
processing field. This classifier performs the classification process by finding the best
hyperplane to distinguish the different classes frorm each other.
The basic element used in the system realization is Raspberry pi 2 produced by
Raspberry pi foundation. Raspberry pi is a card with Linux Raspbian operating system.
So we can think of it as a computer with Linux installed. Therefore, it is possible to
develop software by installing any computer software program(c, c++, python…). This
work has been developed using python 2. Raspberry pi 2 has a 4-core ARMV7 Cortex
900MHZ processor, 1GB of RAM and an SD card slot.
The conducted work has shown that the algorithm can classify four different genres
successfully even with using only visual features. When used just visual features, the
algorithm can classify Metal, Pop and Classic musics succesfully. However, Jaz music
classification performance is lower than other types with using visual features.
The acoustic features show that the classification performance of all 4 types are similar
to each other. Without considering Jaz music performance, the visual features are more
succesfull than acoustic feautres. For the Jaz music, acoustic features are more
succesful than visual features.
In the first chapter, music and music genres and their features with distinctive
properties are discussed and obtaining spectrogram is mentioned.
In the second chapter, feature detectors and image descriptor are mentioned. Key
points are found by feature detectors on the spectrogram and features are detected by
image descriptors. SIFT(Scale-Invariant Feature Transform) and SURF(Speeded-Up
Robust Features) image descriptors are mentioned.
In the third section, the vectors obtained by the image descriptors are group based on
their similarities and the histogram is obtained based on that group. The bag of features
are obtained by using histogram.
In the fourth section, acoustic properties of the sound and Mel Frequency Cepstral
Coeficient are mentioned. Four diffrent number of MFCC coefficients are used. 9, 11,
13 and 15 MFCC coefficients are used and their performance are compared in the
conclusion part.
In the fifth section, Support Vector Machine and knn are mentioned, which are used
to classify both visual and sound features. Both linear and nonlinear SVM classifying
xxii
algorithm discussed in that section. Also, selecting the appropriate ‘k’ value is
mentioned.
In the sixth section, implementation of the system and results are shown.

xxiii
xxiv
1. GİRİŞ

Dijital müzik piyasasının son yıllarda gelişmesiyle müziğe yönelik uygulamalar her
geçen gün artmaktadır. Bu uygulamalar özellikle son yıllarda artan teknolojiyle
beraber tamamen insandan bağımsız olarak çalışabilecek şekilde tasarlanmakta ve
insan performansından çok daha iyi sonuçlar elde edilmektedir. Müzik tür
sınıflandırması da son yıllarda birçok bilim adamının ilgi odağı olmuştur. Özellikle
müzik severlerin bu işleri otomatik olarak kendi yerlerine yapan yazılımlara ilgisinin
artması bilim adamlarının da bu alana olan ilgisini daha fazla artırmaktadır.

Müzik tür sınıflandırmasıyla ilgili bilinen eski çalışmalardan biri 2002 yılında
Tzanetakis ve arkadaşları tarafından yapılmıştır. Tzanetakis ve arkadaşlarının 2002
yılında yapmış olduğu bu çalışmada müzik tür sınıflandırmasında insan performansı
üzerine yapılan bir çalışmadan da bahsedilmiştir. Bu çalışmada on faklı müzik türünün
insanlar tarafından sınıflandırılması istenmiştir. Bir gurup insana bu on farklı müzik
türünden şarkıların 250ms’lik kısmı dinlettirildiğinde bu insanların bu şarkıları doğru
bilme oranının %53 olduğu gözlemlenmiştir. 3s dinlettirildiğinde ise bu oranın %70
olduğu ve 3s’den fazla dinlettirildiğinde bu oranın değişmediği yine %70 olduğu
gözlemlenmiştir. Tzanetakis ve arkadaşlarının çalışması da bu on farklı müzik türünü
%61 oranında bir başarıyla sınıflandırmıştır. Yani yapılan bu eski(2002) çalışmada
bile insan performansına yaklaşılmıştır. Daha sonra yapılan çalışmalar da bu elde
edilmiş insan performansından(%70) çok daha yüksek sonuçlar alınmıştır.

Müzik türlerinin dijital ortamda sınıflandırılmasında, insanlarda görülen algı şekilleri


model olarak alınmıştır. İnsanların müzik türlerini tanıyabilme yeteneği gelmiş olduğu
kültür ve müzikle alakalarına göre değişkenlik gösterir. Örneğin, pop kültürüne yakın
birisi pop müzik dinlediğinde bu şarkının türünü başarılı bir şekilde hızlıca
belirleyebilir. Fakat başka tür bir müziğin sınıflandırmasını yapmakta zorlanabilir.
Buradan hareketle bir türün ayrıştırılmasında bireyin türle ilgili bilgi birikimi yeterli
bir koşuldur. Dijital ortamda da bu sınıflandırma işi insanların yaptığı sınıflandırmaya
benzer şekilde yapılır. Önce sınıflandırıcıya çok sayıda belirli türden müzikler
gösterilerek sınıflandırıcı eğitilir. Daha sonra türü bilinmeyen bir test müziği

1
gösterildiğinde sistem daha önce kendisinin öğrenmiş olduğu türler ile bir kıyaslama
yapar ve bir sonuca varır. Baştaki eğitim aşamasında müzik sayısı ne kadar fazla olursa
elde edilen performans da o kadar iyi olur.

İlk yıllarda yapılan çalışmalarda müziğin sadece akustik özellikleri kullanılmıştır. Son
yıllarda ise müziğin akustik özelliklerinin yanında görsel özellikleri de kullanılmaya
başlanmış ve elde edilen performansın arttığı gözlemlenmiştir. Bu görsel özelliklerin
kullanılması sadece müzik tür sınıflandırmasında değil ses işleme alanında da son
yıllarda kullanılmaya başlanmıştır. Özellikle ses tanıma ya da konuşmacı tanıma gibi
uygulamalarda karşımıza çıkmaktadır. Sesin görsel özellikleri spektrogramının
çıkarılıp görsel olarak işlenmesiyle elde edilmektedir. Bu görsel özelliklerin
performansta yapmış olduğu dikkate değer artıştan dolayı son yıllarda araştırmaların
bu alana yönelmesi sağlanmıştır.

1.1 Tezin Amacı

Bu çalışmada dört farklı müzik türünü ayırt edebilen bir sistem gerçeklenmesi
amaçlanmıştır. Kullanıcı müzik türü bilinmeyen bir parçanın bu dört müzik türünden
birine ait olup olmadığını belirleyebilir. Bu müzik türlerinin sınıflandırılmasında sesin
hem akustik hem de görsel özellikleri kullanılmıştır. Görsel özellikler sese ait
spektrogramın çıkarılıp işlenmesiyle elde edilmiştir. Sesin sadece görsel özellikleri
kullanılarakda sınıflandırılabileceği gösterilmiştir. Bu çalışmayla ses işleme alanında
karşılaşılabilecek kısıtlamalarda sesin görsel özelliklerine de başvurulabileceği
gösterilmiştir.

1.2 Müzik ve Müzik Türleri

Müzik farklı çalgı aletleriyle insan sesinin karışımından oluşan belirli bir duyguyu
içeren ve dinlenildiğinde kulağa hoş gelen bir sanat dalıdır. Yaşanılan ortama, kültüre
ya da duygusal yoğunluğa göre insanlar farklı müzik türlerinden hoşlanabilirler. Her
müzik türü kendine özgü bir ritme sahiptir. İnsanlar da içinde bulundukları duygu
durumuna göre bu müzik türlerini seçip dinlemektedir. İşte bu farklılıklar farklı müzik
türlerinin ortaya çıkmasını sağlamıştır. Ortak bir müzik ritmine, duyguya sahip olan
şarkılar aynı müzik türüne ait olarak nitelendirilmektedir. Müzik türlere ayrılırken
kültürel ve sosyal faktörler kadar kullanılan seslerin akustik özellikleri de etkili
olmuştur. Bir müzik türü için ezgi oluşturulurken notalar sistemsel bir şekilde dizilir

2
ve kulağa hoş gelecek bir ses topluluğu oluşur. Bu sistemsel dizileri çok bilinen
matematiksel dizilere benzetebiliriz. Bu türlerin farklı dizilimiyle de türler oluşur ve
türlerin sınıflandırmasında yardımcı olur. Modüler aritmatiğin çok güzel
örneklerinden oluşan ezgiler toplumdan topluma değişkenlik gösterir.

Müzikte kullanılan seslerin akustik özelliklerinin matematik ile ilişkilendirilmesi ta


eski çağlara dayanmaktadır. Eski Yunan’da müzik, matematiğin dört ana dalından biri
olarak kabul edilirdi. Tarih içerisinde de birçok ünlü matematikçi müzikle de
ilgilenmiştir. Örneğin Pisagor bir matematikçi olmasına rağmen Oktavı bulmuştur ve
bir telin iki eşit parçaya bölünmesiyle aynı sesin incesinin elde edildiğini
gözlemlemiştir. Müzik pek çok insan için eğlence kaynağıyken, matematik anlaşılması
daha zor bir alandır. Müzik duyulara, matematik ise akla hitap ediyormuş gibi
görünsede ikisi de soyut düşünebilmek ile ilgilidir.

Tarih boyunca matematikle, müziğin doğasını anlamak, türlerine ayırmak ve sesleri


karakterize etmek müzisyenlere ve bestecilere büyük kolaylık sağlamıştır. Fakat
müziğin yapısı gereği dijital olarak düzenli sembollere çevrilmesi zordur. Bunu
çözmek adına ilk olarak Febres ve Jaffe müziği dijital hale getirerek MIDI(Müzik
Enstrümanları Dijital Arabirimi) dosyasını kullandılar. Dijital ortamda ses
dosyalarının olduğu gibi aktarılabilmesi ile müziğin seslerine ayrıştırılması, akustik
özelliklerinin çözümlenmesi ve ait olduğu türün bulunmasıda kolaylaşmıştır. Belirli
bir bilgi birikintisine sahip olan insanlar bu müzik türlerini dinlediklerinde büyük bir
oranda başarıyla ayırt edebilmektedirler.

Dijital olarak bu müzik türlerini iyi bir performansla ayırt etmek de mümkündür.
Aşağıda dört farklı müzik türünün üç farklı şarkı için spektrogramları gösterilmiştir.
Bunlara bakılacak olunursa her bir müzik türünün kendine ait olan spektrogramlarının
birbirine benzer olduğu görülmektedir.

Şekil 1.1: Klasik Müzik Spektrogramları.

3
Şekil 1.2: Jaz Müzik Spektrogramları.

Şekil 1.3: Metal Müzik Spektrogramları.

Şekil 1.4: Pop Müzik Spektrogramları.

1.3 Spektrogram ve Elde Edilmesi

Spektrogram bir sinyalin zaman içindeki frekans değişimini görsel olarak göstermenin
bir yoludur. Spektrogramlar sinyalin farklı frekanslardaki ses yüksekliğini görsel
olarak renklerle temsil eder. Temelde iki boyutlu grafiklerdir, üçüncü boyut renklerle
temsil edilir.

Spektrogramların elde edilmesine bakılacak olunursa;

Ses sinyali birbiriyle örtüşecek şekilde bir pencere yardımıyla küçük bölümlere ayrılır
ve bu ayrılan her bölüm için Ayrık Fourier Dönüşümü hesaplanır. Daha sonra elde
edilen bu katsayılar sütunlar zamanı satırlar frekansı temsil edecek şekilde ayrı bir

4
matris ile temsil edilir. Burada her bir katsayının büyüklüğü hesaplanarak yeni bir
matris elde edilir ve bu matris de bize spektrogram görüntüyü verir.

Ayrık Fourier Dönüşümü[1]:

N
S i (k )   si (n)h(n)e  j 2  kn / N ,1  k  K (1.1)
n 1

İle hesaplanır.

5
6
2. ÖZELLİK DETEKTÖRLER VE GÖRÜNTÜ TANIMLAYICILAR

Özellik detektörler bir görüntüdeki anahtar bölgelerin yerini(piksel) ortaya çıkarır.


Mesela köşe detektörler bir görüntüdeki köşelerin yerlerini bulmamızı sağlar.

Görüntü tanımlayıcılar ise görüntüye ait olan özelliklerin çıkarılmasını sağlar. Bir
görüntüyü başka bir görüntüden ayıracak o görüntüye ait özellik vektörünü oluşturur.
Görüntü tanımlayıcılar görüntü üzerinde bazı işlemler yaparak bu görüntüye ait
özellikleri çıkarır. Bu işlemler her özellik tanımlayıcıda kendine özgü yöntemlerle
yapılır. SIFT(scale invariant feature transform) ve SURF(speeded-up robust features)
sık kullanılan özellik detektörlerin ve görüntü tanımlayıcıların başında gelmektedir.

2.1 SIFT(Scale-Invariant Feature Transform) Görüntü Tanımlayıcısı

SIFT tanımlayıcı algoritması 2004 yılında D. Lowe tarafından önerilmiştir. Bu tarihten


önceki görüntü tanımlayıcılar ölçekten bağımsız değillerdi. Yani görüntünün
ölçeğinde meydana gelen herhangi bir değişiklik özellik çıkarma işlemini olumsuz
yönde etkiliyordu. Örneğin, Harris tanımlayıcısı görüntü rotasyonundan bağımsız
çalışmakta fakat ölçekte meydana gelen değişiklik bu tanımlayıcının performansını
kötü yönde etkilemektedir. Harris tanımlayıcısı görüntüdeki köşelerin bulunmasını
sağlar. Bu görüntü tanımlayıcısı görüntü rotasyonundan bağımsız olduğu için görüntü
herhangi bir şekilde döndürüldüğünde köşe bölgeleri iyi bir şekilde bulmaya devam
edecektir. Fakat eğer görüntünün ölçeğinde bir değişiklik meydana gelirse bu görüntü
tanımlayıcısı köşe noktaları bulmakta kötü performans göstermektedir. Şekil 2.1’e
bakıldığında bir köşe noktasına çok küçük bir pencereden baktığımızda bu köşe
noktasını köşe olarak değil de düz bir şekilde algılarız. Küçük köşe noktalarına küçük
bir pencereden baktığımızda bu köşe noktalarının bulunmasında sıkıntı olmazken,
büyük köşe noktalarını aynı boyutta bir pencere ile saptamak mümkün olmamaktadır.

7
Şekil 2.1: Köşe noktalarına bakış açısı.[2]

SIFT özellik tanımlayıcısı algoritması 4 ana bölümden oluşur.

2.1.1 Ölçek uzaydaki ekstrem noktaların tespiti

Büyük köşe noktalarını küçük bir pencere kullanarak bu yerin köşe noktası olduğunun
tespitinin zor olduğu yukarıda da bahsedilmişti. Yani aynı boyutta bir pencere
kullanarak farklı ölçeklerdeki anahtar bölgeleri bulmak mümkün değildir. Dolayısıyla
farklı ölçeklerde pencereler seçip bu pencereler yardımıyla anahtar noktaları bulmamız
gerekir. Bunun içinde Gauss fark(Difference of Gaussian) metodu kullanılır.

2.1.1.1 Gauss laplas metodu / Laplacian of Gaussian(LoG)

Bir görüntünün laplacı bu görüntü üzerindeki keskin bölgelerin ortaya çıkmasını


sağlar. Görüntünün ikinci dereceden kısmi türevinin alınmasıyla bu işlem
gerçekleştirilir. Genellikle görüntü işlemede kenar bulma yöntemlerinde
kullanılmaktadır. Bir görüntünün Laplace’ı[3] :

2I 2I
L ( x, y )   (2.1)
x 2 y 2

Görüntünün Laplasının alınmasını sağlayan en sık kullanılan kernellerden bir tanesi


aşağıda gösterilmiştir.

0 1 0

1 -4 1 (2.2)

0 1 0

Bu kernel Laplas formülü kullanılarak aşağıda gösterildiği gibi elde edilmiştir.

8
2 f 2 f
 f  2  2
2

x y

2 f
 f ( x  1, y )  f ( x  1, y )  2 f ( x, y )
x 2

2 f
 f ( x, y  1)  f ( x, y  1)  2 f ( x, y )
y 2

Yukarıdaki denklemler birleştirildiğinde [4] :

 2 f   f ( x  1, y)  f ( x  1, y)  f ( x, y  1)  f ( x, y  1)  4 f ( x, y)
Elde edilir.

Laplasyan’ı görüntüye uygularken orijinal görüntüden laplace filtrelenmiş görüntü


çıkarılarak keskinleştirilmiş yani Laplacian görüntü elde edilir.

a b c

Şekil 2.2: Laplasyan görüntünün elde edilmesi (a: orijinal görüntü,


b:laplace filtrelenmiş görüntü, c:keskinleştirilmiş
görüntü)[4]

Keskinleştirilmiş görüntüyü tek bir işlemle elde etmek de mümkündür.

g ( x, y)  f ( x, y)   2 f  5 f ( x, y)  f ( x  1, y)  f ( x  1, y)  f ( x, y  1)  f ( x, y  1) (2.3)

Buradan da aşağıdaki kernel elde edilir.[4]

0 -1 0

-1 5 -1 (2.4)

0 -1 0

9
Laplacian uygulanmış bir görüntü gürültüye karşı hassaslaşır. Nedeni de bu kernellerin
ikinci dereceden kısmi türevi gerçeklemesidir. Bunu önlemek için Laplacian filtreyi
uygulamadan önce görüntüye Gaussian düzleştirme metodu uygulanır. Gaussian
düzleştirme metodu görüntüyü bulanıklaştırarak gürültüden temizler.

İki boyutta Gaussian fonksiyonu[5] :

x2  y 2
1 
G ( x, y )  e 2 2
(2.5)
2 2

σ : Gaussian dağılımının standart sapması

Şekil 2.3: σ=1 için Gaussian dağılımı [5]

Gauss Laplacı’ da[3] :

x2  y 2
1  x2  y 2  
LoG( x, y )   1  2 2  e
2 2
 4  
(2.6)

SIFT algoritmasında LoG yerine, bir LoG yaklaşımı olan Gaussian Fark(Difference of
Gaussian(DoG)) metodu kullanılmıştır. Bu metot da öncelikle bir görüntünün iki farklı
σ değeri için Gaussainı hesaplanıp birbirinden çıkarılır. Bu işlem Gaussian
piramidindeki farklı oktav değerleri için yapılır.

Gaussian piramidi:

10
Şekil 2.4: Gaussian Piramidi [6]

Şekil 2.5: Gauss farkın elde edilmesi [2]

DoG elde edildikten sonra her bir DoG üzerinde bölgesel ekstrem noktları tespit edilir.
Her bir piksel komşu 8 piksel ile ve kendinden önceki ve sonraki ölçeklerindeki
piksellerle(9 piksel kendinden önceki ölçek ve 9 piksel kendinden sonraki ölçek olmak
üzere toplamda 18 piksel) kıyaslanır. Bu kıyaslamadaki maksimum ve minimum
değerler anahtar noktalar olarak belirlenir ve seçilir.

Şekil 2.6: Anahtar noktaların belirlenmesi [2]

11
2.1.2 Anahtar nokta konumlandırma

Anahtar noktalar belirlenip seçildikten sonra daha iyi sonuç alabilmek için bu anahtar
noktalar tekrar gözden geçirilir. Bu işlem sırasında bazı noktaların düşük kontrasta
sahip olduğu için doğru anahtar nokta olmadığı tespit edilir.

Şekil 2.7: Bulunan ve doğru anahtar noktalar [7]

Bu belirleme işlemi Taylor serisi açılımı kullanılarak yapılır.

Taylor serisi açılımı[8]:

 D T  1 T  2 D T 
D( x )  D  
x x x (2.7)
x 2 x 2

Düşük kontrast değerlerine sahip olan noktalar anahtar nokta olmaktan çıkarılır. Yani
D(x) değerinin 0.03’den küçük olduğu değerler kötü kontrasta sahip noktalar olarak
belirlenir ve anahtar nokta olmaktan çıkarılır.

SIFT algoritmasında daha önce de değinildiği gibi DoG metodu kullanılır. Bu metot
da görüntünün kenarlarına yüksek yanıt verdiğinden, bu yüksek değere sahip olan
kenarlar anahtar nokta olmaktan çıkarılır. Bu kenar çıkarma işlemi için de 2x2 Hessian
matrisi kullanılır. Hessian matris[8]:

2 f 2 f
x 2 xy
Hf ( x, y )  (2.8)
2 f 2 f

[ yx y 2 ]

12
2.1.3 Yönelim atama

Görüntü rotasyonundan bağımsız çalışılabilmesi için her anahtar nokta için yönelim
ataması yapılır. Daha önceki adımda elde edilmiş görüntü(I) kullanılarak gradyen
genliği(m) hesaplanır[8].

m( x, y)  ( I ( x  1, y)  I ( x  1, y)) 2  ( I ( x, y  1)  I ( x, y  1)) 2 (2.9)

Yönelim ϴ ise[8] ;

 (x, y)  tan -1 (( I ( x, y  1)  I ( x, y  1)) /( I ( x  1, y)  I ( x  1, y))) (2.10)

Bu hesaplamalar yapıldıktan sonra gradyen yönelimlerinin histogramı çıkarılır.


Histogramdaki en yüksek tepe noktası belirlenir ve daha sonra bu tepe noktası ve bu
tepe noktasının değerinin %80’ninden büyük diğer tepe noktalar kullanılarak anahtar
noktaların yönelimi belirlenir.

Şekil 2.8: Anahtar noktaların yönelimi [9]

2.1.4 Anahtar nokta tanımlama

Her bir anahtar noktanın etrafında 16x16 boyutlarında bir komşuluk seçilir. Bu seçilen
16x16 boyutlarındaki komşuluk 4x4 boyutlarında 16 alt bloğa bölünür ve bu her bir
alt blok için 8’lik yönelim histogramı çıkarılır(Toplamda 128 yönelim değeri). Bu 128
değer de vektör olarak her bir anahtar nokta tanımlayıcısını temsil eder.

13
Şekil 2.9: Anahtar nokta tanımlama. [9]

2.1.5 Anahtar nokta eşleştirme

Burada bir görüntü ile diğer görüntüdeki benzerliği bulmak için anahtar noktaları
eşleştirmek amaçlanır. İlk görüntüdeki bir anahtar nokta ile diğer görüntüdeki tüm
anahtar noktalar kıyaslanır. Bu kıyaslama işlemi uzaklık kavramı ile yapılır.
Dolayısıyla ilk görüntüdeki bu seçilen anahtar nokta ile diğer görüntüdeki anahtar
noktalar kıyaslandıktan sonra ikinci görüntüdeki en küçük değeri veren yani en yakın
olan anahtar nokta ile eşleştirilir.

Fakat bazen bu işlem en doğru sonucu vermeyebilir. İkinci en yakın eşleşme birinci en
yakın eşleşmeden daha yakın olabilir. Bunu önlemek için en yakın olan ile ikinci en
yakın olanın oranı alınır. Eğer bu oran 0.8’den büyükse bu eşleşme elenir. Bu şekilde
yaklaşık %90 yanlış eşleşme önlenmiş olur.

Şekil 2.10: Anahtar nokta eşleştirme. [9]

14
2.2 SURF(Speeded-Up Robust Features) Görüntü Tanımlayıcısı

Surf algoritmasına SIFT algoritmasının hızlandırılmış şeklide denilebilir. SIFT


algoritması yavaş olduğundan dolayı 2006 yılında H. Bay, T. Tuytelaars ve L.Van
Gool bu algoritmadan yaklaşık 3 kat daha hızlı çalışan yeni bir algoritma geliştirmiştir.

SIFT ‘de ölçek uzay bulma işleminde LoG’a DoG metodu kullanılarak yaklaşılmıştır.
SURF’de ise kutu filtresi(Box Filter) kullanılarak bu işlem gerçekleştirilmiştir.
Aşağıdaki şekil SURF’de kullanılan kutu filtresi yaklaşımını göstermektedir.

Şekil 2.11: SURF Kutu filtresi. [10]

Kutu filtresi yaklaşımının en büyük avantajlarından bir tanesi kutu filtresi ile
konvolüsyon işleminin integral görüntü yardımıyla kolaylıkla
hesaplanabilmesidir.

2.2.1 Kutu filtresi

Bir resmin her bir pikselinin bir kutudaki ortalama değer ile değiştirilmesidir. Bu kutu
filtresi kullanarak Gauss Fark metoduna yaklaşılma işlemi gerçekleştirilir.

15
Şekil 2.12: Örnek Kutu Filtresi

Şekil 2.11’de verilen kutu filtresi integral görüntüyle konvolüsyona sokularak Gauss
Fark metoduna yaklaşılır. İntegral görüntü birçok işlemin daha kısa adımda
yapılmasını sağlar. Dolayısıyla eldeki görüntülerimiz önce integral görüntüye
dönüştürülür. İntegral görüntüye dönüştürme işlemi yatay ve dikey olarak kendinden
önceki pikseller toplanarak elde edilir.

Şekil 2.13: Orijinal Görüntü [11]

Şekil 2.14: İntegral Görüntü [11]

İntegral görüntü kullanmanın avantajına bakılacak olunursa:

Şekil 2.15: Orijinal görüntüde belli bir kısımda averaj alma işlemi [11]

Yukarıdaki mavi renkli kısmın averajı alınacak olunursa:


16
9 + 1 + 2 + 6 + 0 + 5 + 3 + 6 + 5 = 37

37 / 9 = 4.11

Toplam da 9 işlem. Bu şekilde 100 operasyon yapıldığında 100*9=900 işlem


yapılması gerekir.

Şimdi de integral görüntü kullanarak bu işlemin kaç adımda yapılacağına bakalım:

Şekil 2.16: İntegral görüntüde belli bir kısımda averaj alma işlemi [11]

Şimdi aynı kısmın averajını almak istersek:

(76 - 20) - (24 - 5) = 37

37 / 9 = 4.11

Toplam 4 işlem. 56 işlem de orijinal görüntüyü integral görüntüye çevirirken gereken


sayı. 100 operasyon yapıldığında da 56+4*100=456 işlem yapılması gerekir.

Görüldüğü üzere integral görüntü kullanılarak daha az işlemle aynı operasyon


gerçekleştirilebilinir.

Bu şekilde Hessian matirs elde edilir[12].

(2.11)

X=(x,y)

Lxx(X,σ) = X bölgesinde ikinci dereceden Gaussian türevinin görüntüyle


konvolusyonudur.

2.2.2 Yönelim atama

Rotasyondan bağımsız olunabilmesi için, SURF yatay ve dikey yönünde 6s


komşuluğundaki bir boyutta dalgacık(wavelet) yanıtını kullanır. Buradaki s anahtar
noktanın bulunduğu yerdeki ölçeği temsil etmektedir. Bu yanıtlar daha sonra nokta

17
olarak temsil edilir. Anahtar nokta etrafında her π/3’lük bölümde dominant yanıt
bulunur.

Şekil 2.17: Yönelim atama [10]

2.2.3 Özellik tanımlama

Özellik tanımlama işlemi için de SURF yine yatay ve dikey yönde dalgacık(wavelet)
yanıtını kullanır. Anahtar nokta etrafında 20sX20s (s: boyut) boyutunda bir komşuluk
alınır.

Şekil 2.18: Anahtar nokta etrafında kare komşuluk [12]

Daha sonra bu 4x4 alt bölgelere ayrılır ve her alt bölge için yatay ve dikey yönde
dalgacık yanıtı alınır ve aşağıdaki gibi bir vektör oluşturulur [12].

v  ( dx,  dy,  | dx |,  | dy |). (2.12)

Bu şekilde vektör olarak temsil edildiğinde SURF görüntü tanımlayıcısı toplam 64


boyutan oluşmaktadır. Boyut azaldığında hesaplama ve eşleştirme hızı azalmakta fakat
performans da kötü yönde etkilenmektedir.

18
SURF görüntü tanımlayıcısı aynı zamanda 128 boyuta ulaştırılarak da
kullanılmaktadır. Buna şu şekilde ulaşılır: dx ve |dx| toplamları dy<0 ve dy≥0 için ayrı
ayrı hesaplanır. Benzer şekilde dy ve |dy| toplamları da dx<0 ve dx≥0 için ayrı ayrı
hesaplandığında sahip olunan özellik sayısı iki katına çıkar ve toplamda 64x2=128
boyutlu SURF özellik elde edilir.

19
20
3. ÖZELLİK KÜMESİ (BAG of FEATURES)

Özellik kümesi görüntü sınıflandırmada kullanılan etkin bir yöntemdir. Bir görüntüyü
o görüntüye ait özelliklerin histogramıyla temsil ederek sınıflandırma işlemini yapar.
Histogram elde edilirken görüntüdeki özelliklerin sırası önemli değildir. Örneğin,
yarısı siyah yarısı beyaz bir görüntü ile beyaz ve siyah renkler ile değişen bir satranç
tahtasının histogramı aynıdır. Çünkü her iki resimde de aynı sayıda siyah ve beyaz
piksel vardır. Bu yöntem “kelime kümesi” yöntemi temel alınarak geliştirilmiştir.
Kelime kümesi bir sözlükte ya da dökümandaki kelimelerin sıklığı çıkarılarak elde
edilir. Burada yukarıda bahsedildiği gibi kelimelerin sırası önemli değildir.
Kelimelerin nerede gerçekleştiği değil sayısı histogramda temsil edilir.

Şekil 3.1: Kelime kümesi dökümanı. [13]

Çizelge 3.1: Kelime kümesi histogramı. [13]

Görüntü üzerinden özellik kümesi elde etme işlemi de benzer şekilde yapılır.

21
Şekil 3.2: Özellik kümesi adımları. [13]

Öncelikle görüntüler üzerinden anahtar noktalar çıkarılır. Bu anahtar noktalar


kullanılarak görüntü tanımlayıcılar(SIFT, SURF,…) hesaplanır ve bunlar
benzerliklerine göre kümelenip histogramı çıkarılır. Daha sonra bu histogramlar
kullanılarak sınıflandırıcı eğitilir. Test görüntüsü için de benzer şekilde önce anahtar
noktalar çıkarılır, bu anahtar noktalar kullanılarak özellik tanımlayıcılar hesaplanır,
daha sonra bunlar kümelenip histogram elde edilir. Bu histogramda sınıflandırıcı
tarafından test edilir ve bu test görüntüsünün hangi sınıfa ait olduğu belirlenir.

1. Adım (Özellik Çıkarma) :

Şekil 3.3: Özellik kümesi ilk adımı. [13]

İlk olarak görüntü üzerinden anahtar nokta çıkarma işlemi yapılır. Bu işlem özellik
detektörler kullanılarak yapılır. En sık kullanılan özellik detektörler SIFT, Harris ve
Dense’ dir. SIFT özellik detektörüne yukarıda değinilmişti. Bu özellik detektörü
kullanılmak istenmezse görüntüdeki her belirli bir sayıdaki pikselden biri anahtar
nokta olarak kabul edilir. Dense özellik detektörü bu şekilde çalışır. Yani görüntüdeki
her 5 pikselden ya da 10 pikselden birini anahtar nokta olarak kabul eder.

22
Şekil 3.4: Özellik detektörü dense anahtar nokta seçimi. [13]

Anahtar noktalar belirlendikten sonra her anahtar nokta için özellik


tanımlayıcılar(SIFT, SURF) hesaplanır.

2. Adım:

Şekil 3.5: Özellik kümesi ikinci adımı. [13]

Özellik tanımlayıcılar hesaplandıktan sonra görüntülerden çıkan bu vektörler


kümelenir.

Şekil 3.6: Görüntüden çıkan vektörlerin kümelenmesi. [13]

23
Buradaki her bir nokta görüntü üzerindeki anahtar noktaların özellik tanımlayıcılarla
hesabını temsil eder. Bu noktalar benzerliklerine göre k-means algoritmasına göre
kümelenir ve her bir küme görsel kelime haznesi(visual vocabulary) olarak
adlandırılır.

Şekil 3.7: Görsel kelime haznesinin elde edilmesi. [13]

Yukarıdaki şekilde görülen her farklı renkteki bir top kelime haznesi olarak
nitelendirilir. Kümeleme işlemi ise k-means yöntemiyle yapılır. Kümeleme
yapıldıktan sonra görüntülerden elde edilen bu kelimelerin histogramı çıkarılır ve
özellik kümesi histogramı elde edilir.

Şekil 3.8: Özellik kümesi histogramı. [13]

24
3.1 K-means Kümeleme

Vektörler benzerliklerine göre daha önceden seçilmiş k sayısına göre kümelenir. Sabit
bir k sayısı yoktur. Uygulamadan uygulamaya bu değerin performansı değişmektedir.
Bazı uygulamalarda küçük k sayısı iyi performans gösterebilirken bazı uygulamalarda
iyi performans elde edebilmek için k sayısını artırmamız gerekir. K-means
kümelemede yakınlık kavramı için Öklid mesafe ölçüm formülü[13] kullanılır.

k
d   (x
i 1
i  yi ) 2 (3.1)

Şekil 3.9: K-means kümeleme. [13]

k=3 için 2 boyutta k-means yöntemi:

Şeklide siyah noktalar görüntü üzerinden elde edilmiş vektörleri temsil etmektedir. K-
means algoritmasına bakıldığında, bu siyah noktalar içinde 3 tane rastgele nokta
seçilsin(Şekilde sarı noktalar). Bu üç nokta ile diğer bütün noktalar arasındaki uzaklık
Öklid mesafe ölçümüyle hesaplanır ve bu üç noktaya en yakın olan noktalar o noktayla
beraber bir sınıf oluşturur ve bu üç sınıfı birbirinden ayırt edebilecek bölge belirlenir(1
numaralı kısım). Daha sonra her bir sınıfa ait olan noktaların ortalaması(mean) alınır
ve her bir sınıfa ait yeni bir nokta olmak üzere toplamda 3 adet yeni nokta
seçilir(turuncu noktalar). Tekrardan bu noktalar ile diğer bütün siyah noktalar
kıyaslanır ve bu yeni noktalara en yakın noktalar bu yeni noktayla beraber bir sınıf
oluşturur ve bu yeni belirlenen sınıflar birbirinden farklı olacak şekilde bölgelere

25
ayrılır(2 numaralı kısım). Şekilden de görüleceği üzere her işlemde ortalama alınıyor
ve bulunan bu ilk kümelerin ortalaması değişiyor. Bu işlem kümelerin ortalaması
değişmeyene kadar gerçekleştirilir ve son durumda kümeleme işlemi gerçekleşmiş
olur.

K-means algoritmasına yazılımsal olarak bakılırsa:

 k sayısı kadar her bir kümenin merkezi olacak şekilde nokta seç
 Kümelerin merkezi değişmeyene kadar
o Her bir noktayı bu merkez noktalarla kıyasla ve en yakın
olanları bu merkez noktaya ata.
o Seçilen yeni kümenin tekrar merkez noktasını bul ve bunu eski
merkez noktaların yerine yerleştir.

26
4. AKUSTİK ÖZELLİKLER

Ses işleme yapılırken genellikle ses sinyali birbiriyle örtüşen küçük pencerelere(short
term /short time) ayrılarak her bir pencere için özellik çıkarma işlemi yapılır. Bunun
nedeni sesin belirli periyodlarda istatistiksel olarak sabit olmamasıdır. Örneğin, iki
insan normal bir ses tonuyla kendi arasında konuşuyor olsun bu konuşma sırasında
üçüncü bir insan ani bir ses tonuyla bağırarak konuşmaya dâhil olduğu düşünülürse bu
üçüncü kişinin ses tonu diğer konuşmadan çok farklı şiddette bir ses özelliğine sahip
olacaktır. Dolayısıyla sesi bütün bir şekilde değerlendirmek yerine birbiriyle örtüşecek
şekilde küçük pencerelere ayırıp her bir kısmı ayrı ayrı değerlendirmek daha sağlıklı
olacaktır.

Şekil 4.1: . Ses sinyalinin küçük pencerelere ayrılması. [14]

Sesi küçük pencerelere ayırıp özellik çıkardıktan sonra, bu seçilen pencereden daha
büyük boyutta olacak şekilde orta boyutta pencere(mid-term windowing / texture
window) kullanılarak daha önce hesaplanmış özelliklerin istatistiği çıkarılır.

Şekil 4.2: Orta boyutta pencereleme. [14]

27
Yukarıdaki şekillere bakılacak olursa sesin önce birbiriyle örtüşen 23ms boyutlarında
özellikleri çıkarılır. Daha sonra 1s boyutlarında bir pencere seçilerek bu çıkarılan
özelliklerin istatistiksel değerleri hesaplanır.

4.1 Mel Frekans Kepstral Katsayıları / Mel Frequency Cepstral


Coefficients(MFCC)

MFCC özellikleri 1980’li yıllarda Davis ve Mermelstein tarafından ortaya atıldı. O


tarihten beri ses işleme alanında etkin bir şekilde kullanılmaktadır. Özellikle ses
tanıma ve konuşmacı tanıma gibi uygulamalarda karşımıza çıkmaktadır. MFCC
özellikleri STFT(short time fourier transform) tabanlı ses özellikleridir.

Adım adım MFCC:

 Ses sinyali küçük pencerelere ayrılır.


 Her bir pencere için güç spektrumunun periyodogram değeri(periodogram
estimate of power spectrum) hesaplanır.
 Güç spektrasına mel filterbankı uygulanır ve her filterdeki enerji toplanır.
 Bütün filterbank daki enerjilerin logaritması alınır.
 Log filterbankdaki enerjilerin DCT(discrete cosine transform)’ı alınır.
 DCT katsayılarının ilk 2-13 arasındaki değerleri tutulup diğerleri ihmal edilir.

Daha önce de değinildiği gibi ses sinyali istatistiksel olarak sabit olmadığı için bu ses
sinyali birbiriyle örtüşen küçük pencerelere bölünerek özellik çıkarma işlemi yapılır.
Bu pencereler yaklaşık olarak 20-40ms arasında değişmektedir.

Bir sonraki adım ise her bir pencerenin güç spektrogramının hesaplanmasıdır. Bunun
nedeni insan kulağındaki koklea denen bir organa benzer mantıkta çalıştırma isteğidir
bu algoritmayı. Koklea gelen seslerin frekansına bağlı olarak farklı seslerde titreşen
bir organdır. Kokleanın titreştiği yere bağlı olarak farklı sinirler beyne belirli
frekansların bulunduğunu bildirir. Periyodogram tahmini de benzer şekilde bu küçük
pencerede hangi frekansların bulunduğunu söyler.

Periyodogram tahmininde elde edilen değerler her zaman işimize yarayan frekans
değerleri değildir. Özellikle yüksek frekanslarda bu bulunan gereksiz frekans sayısı
artar. Benzer şekilde koklea’da birbirine yakın iki frekans değerini ayırt edemez.
Dolayısıyla her frekans bölgesinde ne kadar enerjinin olduğuna bakılır. Bu işlem de

28
Mel Filterbank kullanılarak yapılır. İlk filtre çok dar seçilir ve 0 Hertz’in yakınlarında
ne kadar enerjinin bulunduğunu gösterir. Frekans arttıkça daha geniş filtreler
kullanılır. Kısaca her noktada ne kadar enerji olduğuna bakılır. Mel ölçeği bize bunları
nasıl genişleteceğimizi söyler.

Filterbank enerjileri elde edildikten sonra bunların logaritması alınır. Yapılan


deneylere göre insan kulağının sesi algılama şeklide doğrusal değil logaritmiktir.

Son olarak bu filterbank enerjilerin DCT’si hesaplanır ve MFCC katsayıları elde


edilmiş olunur. DCT’nin alınmasının nedeni filterbank enerjileri birbiriyle fazla
bağlantılı olduğu için DCT’si alınarak bu değerler birbirinden bağımsız hale gelirler.
Ayrıca DCT’si alınan bu değerlerden 26 tanesinden sadece en düşük 13 tanesi MFCC
katsayısı olarak seçilir. Çünkü en yüksek DCT’ler Filterbank enerjideki hızlı
değişiklikleri temsil eder.

Mel ölçeği algılanmış frekansı onun gerçek değerindeki ölçülmüş frekans değerine
çevirir. Mel ölçeği insan kulağıyla ilgili yapılan deneylerden esinlenerek
geliştirilmiştir. Yapılan deneylere göre insan kulağı küçük frekanslarda yapılan
değişiklikleri kavraması yüksek frekanslarda meydana gelen değişiklikleri
kavramasına göre daha kolaydır. Mel ölçeği de 0-1000Hz arasında lineer olarak
değişmekte, 1000Hz ‘den yüksek frekanslarda da logaritmik olarak değişmektedir.

Şekil 4.3: Frekans ölçeğiyle mel ölçeği arasındaki ilişki. [1]

Frekanstan Mel ölçeğine çevirme formülü[1] :

M ( f )  1125 ln(1  f ) (4.1)


700
Mel ölçeğinden tekrar frekans bölgesine çevirmek için ise[1] :
29
M 1 (m)  700(exp( m / 1125)  1) (4.2)

Formülü ile hesaplanır.

MFCC uygulama adımları:

16kHz frekanslarında örneklenmiş bir ses sinyalimiz olsun.

1-) 25ms boyutlarında pencerelere ayrılsın ses sinyali. Dolayısıyla pencere uzunluğu
25m*16k=400 örnek yapar. Yani her bir pencerede bu sese ait 400 örnek elde edilir.
Adım uzunluğu da 10ms olduğu farzedilirse(adım uzunluğunun seçilen pencere
boyutundan küçük olması gerekir) 25ms olan pencereler birbiriyle örtüşür. İlk 400
örnekli pencere 0. Örnekten başlar, ikinci 400 örnekli pencerede 160. Örnekten başlar.
Çünkü adım uzunluğuna 10ms denmişti. Bu da 10m*16k=160 örnek yapar. Ses
sinyalinin sonuna kadar bu şekilde pencereleme yapılmaya devam edilir.

Daha sonra her pencere için 13 MFCC katsayısı elde edilir. Zaman bölgesinde ses
sinyalimizi s(n) ile temsil edilsin. Ses sinyali pencerelendikten sonra ise bu sinyal si(n)
olarak adlandırılırsa burada n, 1 ile 400 arasında değişmektedir, i ise pencere sayısını
göstermektedir.

2-) Her bir pencerenin ayrık fourier dönüşümü(DFT) hesaplanır[1].

N
S i (k )   si (n)h(n)e  j 2  kn / N ,1  k  K (4.3)
n 1

Bu formülde h(n) analiz pencereyi(hamming, hanning pencere) temsil etmektedir.

K: Ayrık fourier dönüşümü uzunluğu

Her bir pencere için güç spektrumunun periyodogram değeri[1] :

1
Pi (k )  | S i (k ) | 2 (4.4)
N

İle hesaplanır.

Buradan 512 tane FFT(Fast Fourier Transform) noktası elde edilir fakat sadece ilk 257
katsayı kullanılır.

3-) 2. Adımda elde edilmiş değerler için 26 adet üçgen filtre oluşturulur. Filterbanklar
26 adet olup her biri 257 uzunluğunda bir vektör temsil eder(2. Adımda elde edilmiş
FFT katsayıları). Her bir filterbank güç spektrumyla çarpılır ve çıkan katsayılar
30
toplanarak filterbank enerjileri hesaplanır. Bu elde edilen 26 katsayı bize her bir
filterbankının ne kadar enerji bulundurduğunu gösterir.

Şekil 4.4: Mel filterbank ve güç spektrumu. [1]

Mel filterbankın hesaplanmasına örnekle bakılacak olunursa:

Örnekte gösterilmesi kolay olsun diye bu örnekte 26 değil de 10 filterbank kullanılsın.


İlk olarak sinyaldeki en düşük ve en yüksek frekans değerleri belirlensin. En düşük
frekans değeri 300Hz, en yüksek frekans değeri de 8000Hz(16000/2) olsun. Aşağıdaki
denklem kullanılarak bu frekans değerleri Mel ölçeğine çevrilsin.

M ( f )  1125 ln(1  f )
700
300Hz için:

M (300)  1125 ln(1  300 )  401.25


700

8000Hz için:

M (8000)  1125 ln(1  8000 )  2834.99


700

Olarak bulunur.

10 filterbank için elde edilmek istenen 12 değer bulunan bu iki değer arasında olacak
şekilde doğrusal olarak dağıtılır. Bulunan değerler:

31
m(i)= 401.25, 622.50, 843.75, 1065, 1286.25, 1507.50, 1728.74, 1949.99, 2171.24,
2392.49, 2613.74, 2834.99

Daha sonra aşağıdaki denklem kullanılarak bulunan bu Mel değerleri tekrar frekans
değerlerine çevrilir.

M 1 (m)  700(exp( m / 1125)  1)

Elde edilen değerler:

h(i)=300, 517.33, 781.90, 1103.97, 1496.04, 1973.32, 2554.33, 3261.62, 4122.63,


5170.76, 6446.70, 8000

Bulunan bu değerler için aşağıdaki formül kullanılarak fft değerleri hesaplanır[1].

f (i )  floor ((nfft  1) * h(i ) / fs (4.5)

nfft=512 ve fs=16000

Elde edilen değerler de:

f(i)=9, 16, 25, 35, 47, 63, 81, 104, 132, 165, 206, 256

Olarak bulunur.

Son olarak da elde edilen bu değerler kullanılarak filterbanklar oluşturulur. İlk


filterbank ilk noktadan başlayacak, ikinci noktada maksimum değerine ulaşacak ve
üçüncü noktada 0 değerine geri dönecek. İkinci filterbank da benzer şekilde ikinci
noktadan başlayacak, üçüncü noktada maksimum değerine ulaşacak ve dördüncü
noktada geri 0 değerine dönecektir. Bunu hesaplamak için de aşağıdaki formül[1]
kullanılır.

0, k  f (m  1) 
 k  f (m  1) 
 , f (m  1)  k  f (m) 
 f (m)  f (m  1) 
H m (k )   
 f (m  1)  k , f (m)  k  f (m  1) (4.6)
 f (m  1)  f (m) 
 
0, k  f (m  1) 
Burada;

M= Filtre sayısı

32
f()= M+2 mel uzay frekans listesi

10 filterli Mel filterbank örnek şeması aşağıda gösterilmiştir. Burada frekans değeri
0’dan başlamakta ve 8000Hz değerinde son bulmaktadır. (Fakat bizim yukarıda vermiş
olduğumuz örnekte başlangıç frekans değeri 300Hz ‘den başlamakta, 8000Hz’de
bitmektedir.)

Şekil 4.5: Filterbanklar [1]

4-) 3. Adımda elde edilen 26 enerji değerinin logaritması alınır.

5-) 4. Adımda elde edilmiş olan log filterbank enerjilerinin ayrık cosine
dönüşümü(DCT) alınır ve 26 katsayı elde edilir. Bu 26 adet değerden de ilk 13 tanesi
MFCC katsayısı olarak seçilir. Literatüre bakıldığında genelde 13 katsayı
kullanıldığında en iyi sonuç alındığı görülmüştür. Biz bu çalışmada 9, 11, 13 ve 15
olmak üzere 4 farklı katsayı için sonuçlar elde edildi ve bu sonuçlar birbirleriyle
kıyaslandı.

33
34
5. SINIFLANDIRICILAR

Makine öğrenmesinde yapay zekânın amacı bir nesnenin(görüntü, ses…) sahip olduğu
karakteristiği kullanarak hangi sınıfa ait olduğunu belirlemektir. [Wikipedia]. Her
nesneyi içinde bulundurduğu ve kendisini farklı olanlardan ayırt eden karakteristik
özelliklere göre gruplandırmaktır. Her sınıflandırıcı kendi içinde matematiksel olarak
belirli kurallara göre sınıflandırma yapar.

5.1 Destek Vektör Makinesi (Support Vector Machine)

Destek vektör makinesi sınıflandırma ve regresyon için kullanılan danışmanlı öğrenme


metotlarından biridir. Özellikle sınıflandırma olarak daha fazla kullanılır. Görüntü
tanıma, eşleştirme, ses işleme alanlarında en fazla kullanılan sınıflandırıcı çeşididir.
Özellikle son yıllarda, sınıflandırma problemlerinin çözümü için geliştirilmiş en
başarılı makine öğrenme algoritmalarından biridir. Destek Vektör Makinesi örüntü
tanıma ve sınıflandırma işlemlerinin çözümü için 1995 yılında Vapnik tarafından
geliştirilmiştir(Vapnik ve Cortes,1995). DVM amaç sınıfları birbirinden ayıracak en
iyi hiperplane’ı bulmaktır.

Şekil 5.1: Destek vektör makinesi. [13]

Yukarıdaki şekilde iki sınıf olduğunu görüyoruz(yeşil ve mavi renkli toplar). Burdaki
amaç bu iki sınıfı birbirinden en iyi şekilde ayırabilmek. Yani bu iki sınıfı birbirinden
ayıracak en uygun doğruyu bulabilmek. Dolayısıyla bu doğrunun denklemi bulunur.

35
Şekil 5.2: Doğrunun denklemi ve sınıfların elde edilmesi. [13]

Bu iki sınıfı birbirinden ayırt edecek doğrunun denklemini elde ettikten sonra
doğrunun sol tarafı yani kırmızı topların bulunduğu taraf wT x  b  0 eşitliğini
sağladığı yer, doğrunun sağ tarafı yani mavi topların bulunduğu taraf ise wT x  b  0
eşitliğini sağladığı yerdir. Dolayısıyla eğer test setindeki bir veriyi bu denkleme
koyduğumuzda sonuç pozitifse kırmızılara, negatifse mavilere ait olduğu söylenir.

İki sınıfı birbirinden ayırt edebilecek çok sayıda doğru bulunabilir. Burada önemli olan
bir diğer husus da, bu iki sınıfı birbirinden ayırt edecek en uygun doğruyu bulabilmek.

Şekil 5.3: Destek vektör makinesinde çok sayıda doğrunun iki sınıfı
ayırabilmesi. [13]

Şekil 5.4: Doğruya en yakın vektörlerin doğruya olan uzaklığı. [13]

Burada doğruya en yakın olan noktalar destek vektörler olarak adlandırılır(1 kırmızı
ve 2 mavi) ve bu destek vektörleri artık bizim için önem teşkil eder. Bu destek
36
vektörlerine göre bir doğru bulunur. Bu doğrunun seçilmesinde marjin önemli bir
özelliktir. Destek vektörlerin doğruya olan uzaklığı marjini verir. Marjin en fazla
olacak şekilde doğru seçilir. Marjinin büyük olması algoritmanın test örneklerinde
daha az hata vermesini sağlar. Marjin;

wT x  b
r (5.1)
|| w ||

Formülüyle[13] elde edilir.

5.1.1 Doğrusal olmayan veri için destek vektör makinesi

Buraya kadar olan bölümde Destek Vektör Makinesi ile doğrusal olarak ayırt
edilebilen örnekler ele alındı. Fakat her zaman elimizdeki veri kümesini doğrusal
olarak ayırt etmek mümkün olmayabilir. Yani doğrusal olmayan veri kümesine sahip
olabiliriz. Doğrusal olmayan bir veri olduğunda DVM’nin bir doğruyla bu veriyi ayırt
edebilmesi mümkün olmamaktadır. Dolayısılya DVM’si doğrusal olmayan örnekler
için bir Kernel fonksiyonu kullanır. Kernel fonksiyonu doğrusal olarak ayırt
edilemeyen bir sistemi boyut arttırarak doğrusal olarak ayırt edilmesini sağlar. Kernel
fonksiyonu matematiksel olarak K ( xi , x j )   ( xi ). ( x j ) formülüyle ifade edilir.

Şekil 5.5: Kernel Fonksiyonu ile boyut arttırarak bir sistemi


doğrusallaştırma. [15]

Yukarıdaki örneğe bakıldığında, ilk başta iki boyutlu doğrusal olmayan bir
sistemimizin olduğu görülmektedir. Kernel fonksiyonu kullanılarak bu doğrusal
olmayan iki boyutlu sistem, doğrusal şekilde ayırt edilebilinecek üç boyutlu sisteme
dönüşür. Destek Vektör Makinesinde kullanılan başlıca Kernel fonksiyonları aşağıda
görülmektedir.

37
Çizelge 5.1: Destek Vektör Makinesinde kullanılan başlıca Kernel fonksiyonları [16]

Kernel Matematiksel İfadesi Parametre


Fonksiyonu

Polinom Kerneli K(x,y)=((x.y)+1)d d: Polinom derecesi

Normalleştirilmiş (( x. y )  1) d d: Polinom derecesi


K ( x, y ) 
Polinom Kerneli (( x.x)  1) d (( y. y )  1) d

  Kernel  boyutu
K ( x, y )  e   || x  xi ||
Radyan-Tabanlı 2

Fonksiyon
Kerneli

Pearson VII K(x,y)= σ,w= Pearson genişliği


Kerneli 1 parametreleri
w
  2

  2. || x  y ||
2
21 / w  1  
1
   

   

5.2 K-NN(k-Nearest Neighbours) Sınıflandırıcısı

k-NN sınıflandırıcısı basit bir sınıflandırıcı çeşidi olmasına rağmen iyi sonuç veren
sınıflandırıcılardan birisidir. Basit denmesinin nedeni bu sınıflandırıcının herhangi bir
eğitim aşamasına gerek duymamasıdır. Bu özellik bu sınıflandırıcıyı diğer
sınıflandırıcılardan ayırmaktadır. Eğitim aşamasına gerek olmadan bu eğitim verileri
sınıflandırıcı tarafından sınıflandırma işlemi sırasında direkt olarak kullanılır. Bir test
örneği verilmiş olsun, bu test örneğinin eğitim setindeki en yakın k sayıdaki komşusu
bulunur ve bunlardan her bir sınıfa ait olanların sayısı çıkarılır. Burada en fazla sayıda
komşuluğu olan sınıfa ait olduğu söylenir.

Aşağıdaki resme bakacak olursak elimizde a ve o olmak üzere 2 tane sınıf olduğu
görülür.

38
Şekil 5.6: İki farklı sınıf. [17]

c diye bir test verimiz olsun ve bu test verisinin yukarıdaki sınıflardan hangisine ait
olduğunu k-NN sınıflandırıcısı kullanılarak aşağıdaki gibi belirlenebilir.

Şekil 5.7: Bilinmeyen bir c vektörünün temsili [17]

k=3 seçildiğini farzedersek, c’nin etrafındakilerden c’ye en yakın 3 komşu seçilir. Bu


c test verisinin 3 komşudan en fazla sayıda komşuluğa sahip olan eğitim setine ait
olduğu söylenir.

Şekil 5.8: Bilnmeyen vektöre en yakın komşuluktaki vektörler. [17]

Görüleceği üzere c’nin en yakın 3 komşusundan ikisi o’ya bir tanesi a’ya ait.
Dolayısyıla k=3 için sınıflandırma yaptığımızda c’nin o sınıfına ait olduğu görülür.

Şekil 5.9: Bilinmeyen vektörün hangi sınıfa ait olduğunun belirlenmesi


[17]
39
k-NN sınıflandırıcısnda uzaklık kavramı için belli başlı matematiksel formüller vardır.
Bunlardan bazıları[18] :

k
Öklid : d  (x
i 1
i  yi ) 2 (5.2)

k
Manhattan : d   | xi  y i | (5.3)
i 1

k
Minkowski : d  ( (| xi  y i |) q )1 / q (5.4)
i 1

K-NN algoritmasına genel olarak bakıldığında önce verilen test setiyle eğitimdeki
verilerin hepsi arasındaki uzaklık hesaplanır. Daha sonra bu uzaklıklar küçükten
büyüğe doğru sıralanır ve ilk k değerin hangi sınıfa ait olduğuna bakılır. K değeri
seçilirken k’nın verilen sınıf sayısının katı olmamasına dikkat edilir. Bu değer
uygulamadan uygulamaya farklılık gösterebilir. Büyük k değeri işlem karmaşıklığına
sebep olabilmetedir. Küçük k değeri ise sınıflandırıcının ezber(overfitting) yapmasına
yol açabilmektedir. Geçmişteki uygulamaların çoğuna bakıldığı zaman ise en iyi k
değerinin 3 ile 10 arasında değiştiği gözlemlenmektedir. Veri bilimcileri eğer iki sınıfı
sınıflandırmaya çalışıyorsa bu k değerini genelde tek sayı olarak seçmektedir. Veri
bilimcilerinin başvurduğu bir diğer metod ise n sınıf sayısı olmak üzere k  n
seçmektir. Fakat birçok kişi tarafından en iyi metot her uygulama için k’ya birçok
değer vererek ve K katlamalı çapraz doğrulama(K Fold Cross Validation) metodu
kullanarak uygun k değerini bulmaktır.

5.2.1 K katlamalı çapraz doğrulama (K fold cross validation)

Bu yöntemde eldeki veri kümesi K sayısı kadar bölünür. K sayısı literaturdeki


uygulamalara bakıldığında genelde 10 seçilmiştir. Bu bölünen veri kümesinden 1
tanesi test kümesi geriye kalan K-1 taneside eğitim kümesi olarak belirlenir ve bu
seçilen eğitim kümesi ile test kümesi sınıflandırma işlemi yapılarak sonucuna bakılır.

Bu işlem her bir adımda test ve eğitim kümesi değiştirilerek K kez tekrarlanır. Her bir
tekrarlama işleminde seçilen test verisinin daha önce seçilmemiş olması gerekir.
Sınıflandırma başarısı ya da hatası bu K işlemin elde edilen başarısının ya da hatasının

40
ortalaması alınarak hesaplanır. Burada açıklanan her adım aşağıda gösterilen
formülle[19] hesaplanabilinir.
k

 SF (t ,VK  t )
i i
t i  VK Olmak üzere Sonuç  i 0
(5.5)
k

Burada;

SF = Test, eğitim sınıflandırma fonksiyonu

VK= Veri kümesi

K= Katlama sayısı

t= Veri kümesinden seçilen test kümesi

Şekil 5.10: K=5 için K katlamalı çapraz doğrulama eğitim ve test seti
ayrıştırması[20]

K-NN sınıflandırıcısının bir dezavantajı karmaşıklığıdır. Eğitim setinde çok fazla veri
olduğu zaman test verisinin her bir eğitim verisiyle uzaklığı hesaplanacağından dolayı
bunlar işlem karmaşıklığına sebep olabilmektedir.

41
42
6. SİSTEM GERÇEKLEME

Sistem gerçeklemesi Raspberry pi vakfı tarafından üretilen Rapberry pi 2 üzerinde


yapılmıştır. Raspberry pi kredi kartı boyutlarında Raspbian Linux işletim sistemine
sahip bir bilgisayardır. Raspberry pi esas üretim amacı okullarda bilgisayar bilimini
öğretmektir. Fakat özellikle ucuz olmasından dolayı birçok kişi tarafından tercih
edilebilmektedir. Raspberry pi’ ye bağlanabilmenin iki yolu mevcuttur. Birincisi bu
cihaza ekran, klavye ve fare bağlayarak bilgisayar gibi rahatça kullanılabilinir. İkinci
yol ise SSH bağlantısı kurarak kendi bilgisayarımız üzerinden Raspberry pi’ ye
bağlanabiliriz.

Sistem gerçeklenmesinde Raspberry pi seçilmesinin nedeni yapılan uygulamanın


gerçek zamanlı olmamasıdır. Çünkü gerçek zaman içeren uygulamalarda işletim
sistemine sahip olan bir cihaz kullanmak pek sağlıklı olmamaktadır. İşletim sistemi
olan cihazlar arka planda işletim sistemine ait başka işlerele uğraşabileceğinden dolayı
istenilen yanıtı istenilen zamanda vermeyebilmektedir. Gerçek zamanlı uygulamalarda
Ardunio gibi işletim sistemine sahip olmayan(Gömülü Sistemler) cihazların kullanımı
daha yaygındır.

Şekil 6.1: Raspberry pi 2[21].

Raspberry pi 2’nin özellikleri aşağıda görülmektedir.

43
Çizelge 6.1: Raspberry pi 2 Özellikleri [22]

Raspberry pi 2

İşlemci chipset Broadcom BCM2836 ARMv7


Quad Core

GPU Grafik İşlemcisi Videocore IV

İşlemci Hızı 4 çekirdek(900MHz)

RAM 1GB SDRAM 450MHz

Muhafazası MicroSD

USB 2.0 4x USB Girişi

Güç 1.8A 5V

GPIO 40 pin

Ethernet Girişi Var

Görüldüğü üzere Raspberry pi 2 özellikleri bu sistemin tasarlanması için gereken


donanımı sağlamaktadır.

6.1 Sistemin Gerçeklenmesi

Sistemin gerçeklenmesinde GTZAN veri kümesi kullanılmıştır. Bu veri kümesi 10


farklı müzik türünü içermektedir. Her bir müzik türüne ait 30 saniyelik 100 örnek
olmak üzere GTZAN veri kümesi toplamda 1000 adet şarkı içermektedir. Bu veri
kümesi, Tzanetakis ve arkadaşları tarafından 2002 yılında yapılan müzik tür
sınıflandırması uygulamasında kullanılmıştır. Bunlar arasından elektronik, jaz, metal
ve pop olmak üzere 4 farklı müzik türü seçilmiştir ve bunların sınıflandırılması üzerine
çalışılmıştır. Her bir müzik türüne ait olan bu 100 şarkının 90 tanesi eğitim
aşamasında, 10 tanesi de test aşamasında kullanılmıştır. Bu 4 farklı müzik türü önce
SIFT, SURF görüntü tanımlayıcıları ile MFCC akustik özellik kısmı ayrı ayrı

44
kullanılarak sınıflandırma yapılmıştır. Daha sonra bu kullanılan özellikler
birleştirilerek sınıflandırma işlemi yapılmıştır.

6.1.1 Elde edilen sonuçlar

İlk olarak sınıflandırıcı eğitiminde kullanılan eğitim verileri test edilmiştir. Eğitim
verilerinin testiyle ilgili her bir hata matrisi aşağıda gösterilmiştir. Bu matrisdeki her
bir müzik türü değerleri:

Metal müzik 1

Pop müzik  2

Klasik müzik  3

Jaz müzik  4

Ile temsil edilir.

Eğitim verisi üzerinde SIFT görüntü tanımlayıcısı ve DVM sınıflandırıcısı kullanılarak


elde edilen hata matrisi (confusion matrix):

0,97 0,022 0 0
0,033 0,866 0,1 0
(6.1)
0,055 0,011 0,933 0
0,1 0,011 0,7 0,188

Eğitim verisi üzerinde SIFT görüntü tanımlayıcısı ve knn sınıflandırıcısı kullanılarak


elde edilen hata matrisi:1

0,988 0 0,011 0
0,022 0,955 0 0,022
(6.2)
0,055 0,033 0,877 0,033
0,066 0,044 0,255 0,633

Test verisi üzerinde SIFT görüntü tanımlayıcısı kullanılarak elde edilen sonuçlar
aşağıdaki çizelge de gösterilmiştir.

45
Çizelge 6.2: Test verisi üzerinde SIFT görüntü tanımlayıcısı kullanılarak elde edilen
sonuçlar.

DVM Knn

Metal %90 %80

Pop %100 %100

Klasik %100 %100

Jaz %20 %50

Eğitim verisi üzerinde SURF görüntü tanımlayıcısı ve DVM sınıflandırıcısı


kullanılarak elde edilen hata matrisi:

0,866 0,077 0,022 0,033


0 0,955 0,011 0,033
(6.3)
0,022 0,011 0,955 0,011
0,022 0,1 0,388 0,488

Eğitim verisi üzerinde SURF görüntü tanımlayıcısı ve knn sınıflandırıcısı kullanılarak


elde edilen hata matrisi:

0,977 0,011 0 0,011


0 0,988 0 0,011
(6.4)
0,022 0,022 0,955 0
0,011 0,133 0,088 0,766

Test verisi üzerinde SURF görüntü tanımlayıcısı kullanılarak elde edilen sonuçlar
aşağıdaki çizelge de gösterilmiştir.

46
Çizelge 6.3: Test verisi üzerinde SURF görüntü tanımlayıcısı kullanılarak elde edilen
sonuçlar.

DVM knn

Metal %60 %90

Pop %90 %100

Klasik %100 %100

Jaz %30 %60

Eğitim verisi üzerinde bütün görüntü tanımlayıcıları(SIFT+SURF) ve DVM


sınıflandırıcısı kullanılarak elde edilen hata matrisi:

0,888 0,11 0 0,01


0 0,95 0,03 0,01
(6.7)
0,022 0,022 0,95 0
0,044 0,033 0,522 0,4

Eğitim verisi üzerinde bütün görüntü tanımlayıcıları ve knn sınıflandırıcısı


kullanılarak elde edilen hata matrisi:

0,988 0,01 0 0
0,011 0,988 0 0
(6.8)
0,022 0,033 0,933 0,011
0,022 0,044 0,166 0,766

Test verisi üzerinde bütün görüntü tanımlayıcıları kullanılarak elde edilen sonuçlar
aşağıdaki çizelge de gösterilmiştir.

47
Çizelge 6.4: Test verisi üzerinde bütün görüntü tanımlayıcıları kullanılarak elde edilen
sonuçlar.

DVM Knn

Metal %90 %90

Pop %100 %100

Klasik %100 %100

Jaz %20 %50

Eğitim verisi üzerinde 13 kaysayıya sahip MFCC akustik özellikleri ve DVM


sınıflandırıcısı kullanılarak elde edilen hata matrisi:

0,966 0,011 0 0,022


0 0,888 0 0,111
(6.9)
0 0 0,822 0,177
0,011 0,144 0,1 0,744

Eğitim verisi üzerinde 13 katsayıya sahip MFCC akustik özellikleri ve knn


sınıflandırıcısı kullanılarak elde edilen hata matrisi:

0,955 0,011 0 0,033


0 0,888 0,011 0,1
(6.10)
0 0 0,922 0,077
0,011 0,066 0,133 0,788

Test verisi üzerinde 9 katsayıya sahip MFCC akustik özellikleri kullanılarak elde
edilen sonuçlar aşağıdaki çizelgede gösterilmiştir.

48
Çizelge 6.5: Test verisi üzerinde 9 katsayıya sahip MFCC kullanılarak elde edilen
sonuçlar.
DVM knn

Metal %100 %100

Pop %100 %90

Klasik %80 %60

Jaz %80 %60

Test verisi üzerinde 11 katsayıya sahip MFCC akustik özellikleri kullanılarak elde
edilen sonuçlar aşağıdaki çizelgede gösterilmiştir.

Çizelge 6.6: Test verisi üzerinde 11 katsayıya sahip MFCC kullanılarak elde edilen
sonuçlar.

DVM knn

Metal %100 %100

Pop %100 %90

Klasik %70 %70

Jaz %80 %60

Test verisi üzerinde 13 katsayıya sahip MFCC akustik özellikleri kullanılarak elde
edilen sonuçlar aşağıdaki çizelgede gösterilmiştir.

49
Çizelge 6.7: Test verisi üzerinde 13 katsayıya sahip MFCC kullanılarak elde edilen
sonuçlar.

DVM Knn

Metal %100 %100

Pop %100 %90

Klasik %70 %70

Jaz %80 %60

Test verisi üzerinde 15 katsayıya sahip MFCC akustik özellikleri kullanılarak elde
edilen sonuçlar aşağıdaki çizelgede gösterilmiştir.

Çizelge 6.8: Test verisi üzerinde 15 katsayıya sahip MFCC kullanılarak elde edilen
sonuçlar.

DVM Knn

Metal %100 %100

Pop %100 %90

Klasik %70 %70

Jaz %80 %60

50
7. SONUÇ

Son yıllarda dijital müzik piyasasına olan ilginin artmasıyla beraber bu alanda yapılan
çalışmalarda önem kazanmıştır. Teknolojinin gelişmesiyle beraber insanlar otomatik
sınıflandırma yapan cihaz veya yazılımlara daha fazla güvenmekte ve ilgi
duymaktadırlar. Özellikle bu yeni üretilen teknolojilerin insan performansından daha
iyi sonuç verdiği düşünüldüğünde insanların neden bu cihazlara daha fazla güven
duyduğu sorusuda açıklığa kavuşmuş olmaktadır. Bu çalışmadaki amacımız, piyasada
en sık kullanılan 4 müzik türünü sesin hem akustik hem de görsel özelliklerini
kullanarak başarılı bir şekilde sınıflandırmaktır. Yapılan çalışmalar sonucunda
istenilen şekilde bir sistem gerçeklenmiştir. Yapılan çalışmalar sonucunda,

1. Sistem sınıflandırmasında kullanılan DVM ve knn sınıflandırıcıların


performansının birbirine yakın olduğu fakat çoğu durumda knn
sınıflandırıcısının daha iyi performans gösterdiği görülmektedir.
2. Görüntü tanımlayıcılarının genel performansına bakıldığında bütün görüntü
tanımlayıcıları Metal, Pop ve Klasik müziği başarılı bir şekilde sınıflandırdığı
fakat Jaz müzik’te performansın düştüğü görülmektedir. Bu iki görüntü
tanımlayıcısı içerisinde en iyi performans SURF görüntü tanımlayıcısında knn
sınıflandırıcısı kullanılarak elde edilmiştir.
3. Bu iki görüntü tanımlayıcısı beraber kullanıldığında ise knn sınıflandırıcısının
performansının yine DVM’nin performansından iyi olduğu fakat tek tek
kullanıldığında en iyi sonucu veren SURF görüntü tanımlayıcısından iyi sonuç
vermediği görülmektedir.
4. Görüntü tanımlayıcılarında hem eğitim verileri hem de test verileri üzerinde
elde edilen sonuçlara bakıldığında Metal, Pop ve Klasik müzik türündeki
performansların hem eğitim verisi üzerinde hem de test verisi üzerinde
birbirine yakın olduğu fakat Jaz müzik türünde test verisindeki performansların
düştüğü görülmektedir.
5. 4 farklı(9,11,13 ve 15) MFCC katsayısı için sonuçlara bakıldığında 11, 13 ve
15 katsayılı performans değerlerinin tamamen birbiriyle aynı olduğu ve farklı

51
olan 9 katsayılı performansın da bu diğer 3 değere çok yakın olduğu
görülmektedir.
6. MFCC akustik özellikleri kullanıldığında hem eğitim verileri hem de test
verileri üzerinde elde edilen sonuçların daha tutarlı olduğu görülmektedir.
7. Eğitim verileri üzerinde yapılan sonuçlara bakıldığında en iyi performansı
SURF görüntü tanımlayıcısıyla beraber knn sınıflandırıcısı kullanılarak elde
edilmiştir.
8. Test verileri üzerinde yapılan sonuçlara bakıldığı zaman yine Metal, Pop ve
Klasik müzik türünde en iyi performansı SURF görüntü tanımlayıcısının
gösterdiği fakat Jaz müzik türünde ise en iyi performansı MFCC akustik
özelliklerinin kullanılarak elde edildiği görülmektedir.

Bu çalışmanın amacı, müziğin akustik özelliklerinin yanında görsel özellikleri


kullanılarak da başarılı bir şekilde sınıflandırma yapılabileceğini göstermektir.
Müziğin hem akustik hem de görsel özellikleri beraber kullanıldığında ise
performansın arttığı görülmektedir. Yukarıda yazılan maddeler incelendiğinde
müziğin hem görsel hem de akustik özellikleri kullanılarak yapılan sınıflandırmanın
başarılı olduğu ve bu çalışmanın amacına ulaştığı görülmektedir.

52
KAYNAKLAR

[1] Url-1, http://practicalcryptography.com/miscellaneous/machine-learning/guide-


mel-frequency-cepstral-coefficients-mfccs/ Giriş tarihi: 13 Ekim 2017.

[2] Url-2, http://opencv-python-


tutroals.readthedocs.io/en/latest/py_tutorials/py_feature2d/py_sift_intro/py_sift_intro
.html Giriş tarihi: 01 Kasım 2017.

[3] Url-3, https://homepages.inf.ed.ac.uk/rbf/HIPR2/log.htm Giriş tarihi: 13 Ekim


2017.

[4] Gonzalez, R.C., Woods, R.E. Digital Image Processing(2nd edition).

[5] Url-4, https://homepages.inf.ed.ac.uk/rbf/HIPR2/gsmooth.htm Giriş tatihi : 1


Ekim 2017

[6] Url-5, https://docs.opencv.org/3.2.0/dc/dff/tutorial_py_pyramids.html Giriş


tarihi: 13 Ekim 2017.

[7] Eldar, S. Sift Scale Invariant Feature Tansform (2009)

[8] Lowe, D. (2004) Distinctive Image Features from Scale-Invariant Keypoints.


Computer Science Department. University of British Columbia.

[9] Görü, A. Bilgisayarla Görüye Giriş: Ders 7-SIFT ve Öznitelik Eşleme

[10]Url-6,http://opencv-python-
tutroals.readthedocs.io/en/latest/py_tutorials/py_feature2d/py_surf_intro/py_surf_intr
o.html Giriş tarihi: 15 Ekim 2017.

[11]Url-7, https://www.quora.com/How-integral-image-is-used-in-image-processing-
and-how-improves-the-computation-time

[12] Bay, H., Tuytelaars, T., Gool, L. (2006) SURF: Speeded-Up Robust Features.
ETH Zurich. Katholike Universiteit Leuven

[13] Url-8, https://www.youtube.com/watch?v=iGZpJZhqEME Giriş tarihi: 1 Ekim


2017

53
[14] Giannakopoulos, T., Pikrakis, A. (2014) Introduction to Audio Analysis: A
MATLAB Approach.

[15] Url-9, https://lasseschultebraucks.com/support-vector-machines/ Giriş tarihi: 15


Ekim 2017.

[16] Kavzoğlu, T., Çölkesen, İ. (2010) Destek Vektör Makineleri ile Uydu
Görüntülerinin Sınıflandırılmasında Kernel Fonksiyonlarının Etkilerinin
İncelenmesi.

[17] Url-10, https://www.youtube.com/watch?v=UqYde-LULfs Giriş tarihi: 13


Ekim 2017.

[18] Url-11, http://www.saedsayad.com/k_nearest_neighbors.htm

[19] Url-12, http://bilgisayarkavramlari.sadievrenseker.com/2013/03/31/k-fold-cross-


validation-k-katlamali-carpraz-dogrulama/ Giriş tarihi: 15 Ekim 2017.

[20] Url-13, http://www.datascience.istanbul/2017/08/29/bir-bakista-k-fold-cross-


validation/ Giriş tarihi: 17 Ekim 2017.

[21] Url-14, https://www.raspberrypi.org/products/raspberry-pi-2-model-b/ Giriş


tarihi: 20 Ekim 2017.

[22] Url-15, http://market.samm.com/raspberrypi-2 Giriş tarihi: 20 Ekim 2017.

[23] Tzanetakis, G., Cook, P. (2002). Musical Genre Classification of Audio Signals.
IEEE Trans. On Speech and Audio Processing, vol. 10, pp. 293-302.

[24] Tzanetakis, G., Essl, G., Cook, P. Automatic Musical Genre Classification of
Audio Signals. Computer Science Department, Princeton NJ.

[25] Nanni, L., Costa, Y., Lumini, A., Kim, M., Baek, S. (2016) Combining Visual
and Acoustic Features for Music Genre Classification. Expert Systems with
Applications, vol. 45,pp. 108-117.

[26] Nanni, L., Lumini, A. (2013) Heteregoneous bag-of-features for object/scene


recognition. Applied Soft Computing, 13(4), 2171-2178.

[27] Alcantarilla, P., Bartoli, A., Davison, A. (2006) KAZE Features. Department
of Computing. Imperial College London, UK.

54
[28] Costa, Y.M.G., Oliveira, L. S., Koerich, A. L., Gouyon, F., Martins, J. (2012)
Music genre classification using LBP textural features. Signal Processing, 92(11),
2723-2737.

[29] Costa, Y.M.G., Oliveira, L. S., Koerich, A. L., Gouyon, F. (2013) Music genre
recognition based on visual features with dynamic ensemble of classifiers selection. In
proceedings of international conference on systems, signals and image processing.
Bucharest, Romenia.

[30] Costa, Y.M.G., Oliveira, L. S., Koerich, A. L., Gouyon, F. (2013) Music genre
recognition using Gabor filters and LPQ texture descriptors. In proceedings of the 18th
Iberoamerican congress on pattern recognition. Havana, Cuba.

[31] Fathi, A., Naghsh-Nilchi, A. R. (2012) Noise tolerant local binary pattern
operator for efficient texture analysis. Pattern Recognitio Letters, 33(9), 1093-1100.

[32] Kumaşoğlu, G., Bolat, B. (2011) Yapay Sinir Ağlarıyla Müzikal Tür Tanıma

55
56
ÖZGEÇMİŞ

Ad – Soyad : Ali ÖZKAHRAMAN

Doğum Tarihi ve Yeri : 12.11.1988, MALATYA

E-posta : ozkahraman@itu.edu.tr

Lisans : 2011, Doğu Akdeniz Üniversitesi, Mühendislik Fakültesi


Elektrik-Elektronik Mühendisliği Bölümü

Mesleki Deneyim : Karabük Üniversitesi, Araştırma Görevlisi,


Mustafa Kemal Üniversitesi, Araştırma Görevlisi,
İskenderun Teknik Üniversitesi, Araştırma Görevlisi,
İstanbul Teknik Üniversitesi, Araştırma Görevlisi

57

You might also like