<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Test Kâhini Olarak Görüntü Karşılaştırma Algoritmalarının Değerlendirilmesi</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Ömer Faruk Erdil</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>İrfan Can</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Hasan Sözer</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Vestel</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Manisa</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Türkiye</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>faruk.erdil</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>irfan.can}@vestel.com.tr</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Özyeğin Üniversitesi</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>İstanbul</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Türkiye hasan.sozer@ozyegin.edu.tr</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Anahtar kelimeler: Görüntü Karşılaştırması, Görüntü Karşılaştırma Algoritmaları</institution>
          ,
          <addr-line>Test Kâhini, Test Otomasyonu</addr-line>
          ,
          <country>Endüstriyel Vaka Çalışması</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Ozyegin University</institution>
          ,
          <addr-line>Istanbul</addr-line>
          ,
          <country country="TR">Turkey</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Ömer Faruk Erdil</institution>
        </aff>
        <aff id="aff3">
          <label>3</label>
          <institution>Vestel</institution>
          ,
          <addr-line>Manisa</addr-line>
          ,
          <country country="TR">Turkey</country>
        </aff>
      </contrib-group>
      <fpage>101</fpage>
      <lpage>113</lpage>
      <abstract>
        <p>Özet. Televizyon gibi yoğun yazılım içeren gömülü sistemlerin kara kutu testleri, grafik kullanıcı arayüzleri (GKA) aracılığıyla gerçekleştirilmektedir. Bu testlerin otomasyonu kapsamında bir dizi kullanıcı işlemi dışarıdan tetiklenmektedir. Bu sırada, doğru ve yanlış sistem davranışı arasında ayrım yapan ve böylece testlerin geçip geçmediğine karar veren otomatik bir test kâhinine ihtiyaç duyulmaktadır. Bu amaçla yaygın olarak görüntü karşılaştırma araçları kullanılmaktadır. Bu araçlar, gözlenen GKA ile daha önceden kaydedilmiş bir referans GKA ekran görüntüsünü karşılaştırmaktadır. Bu çalışmada, 9 farklı görüntü karşılaştırma aracı bir endüstriyel vaka çalışması ile değerlendirildi. Bir televizyon sisteminin gerçek test çalışmalarından 1000 çift referans ve anlık GKA görüntüsü toplandı ve bu görüntüler başarılı/başarısız test olarak etiketlendirildi. Ayrıca, toplanan veri kümesi görüntülerde meydana gelen piksel kayması, renk tonu/doygunluk farklılığı ve resim gövdesinde esneme (büyüme, küçülme, genişleme, daralma) gibi çeşitli etkilere göre sınıflandırıldı. Ardından, bu veri kümesi ile karşılaştırılan araçlar, doğruluk ve performans açısından değerlendirildi. Araçların parametre değerlerine ve karşılaştırılan görüntülerin tâbi oldukları etkilere göre farklı sonuçlar verdiği görülmüştür. Hazırlanan veri kümesi için en iyi sonuçları veren araç ve bu aracın parametre değerleri tespit edilmiştir.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Evaluation of Image Comparison Algorithms as</title>
    </sec>
    <sec id="sec-2">
      <title>Test Oracles</title>
      <p>1</p>
      <sec id="sec-2-1">
        <title>Giriş</title>
        <p>Gömülü sistemlerde yazılım yoğunluğu ve karmaşıklığı sürekli artmaktadır. Örneğin,
geçmişte elektromekanik cihazlar olan televizyon (TV) sistemleri, günümüzde 20
milyon satırdan fazla kaynak kodu içermektedir. Bu eğilim, ürünlere yeni işlevler ve
özellikler eklenerek devam etmektedir. Sonuç olarak, bu sistemlerin güvenilirliğini
sarsabilecek yeni tehditler belirmektedir. Sistemi eksiksiz test edebilmek ve
sistemdeki tüm hataları belirleyebilmek için çok fazla kaynak gerekmektedir [1,10].</p>
        <p>Çoğu sistemin kara kutu testleri grafiksel kullanıcı arayüzleri (GKA) aracılığıyla
gerçekleştirilmektedir. Bu durum TV gibi gömülü sistemler için de geçerlidir. Bu
sistemlerin testinde maliyeti azaltmak amacıyla test otomasyonu sıklıkla tercih
edilmektedir [2,14]. Bu kapsamda, olası kullanıcı senaryolarını taklit etmek için önceden
belirlenmiş sırada bir dizi kullanıcı işlemi otomatik olarak tetiklenmektedir. Bununla
birlikte, doğru ve yanlış sistem davranışını ayırt edebilen ve testin geçip
geçmediğine/kaldığına karar veren otomatik test kâhinine (test oracle [4]) ihtiyaç duyulmaktadır.
Bu amaçla yaygın olarak görüntü karşılaştırma araçları kullanılmaktadır. Bu araçlar,
gözlenen GKA ile daha önceden kaydedilmiş bir referans GKA ekran görüntüsünü
karşılaştırmaktadırlar.</p>
        <p>Bu bildiride bir dizi alternatif görüntü karşılaştırma tekniği/algoritması ve bunları
gerçekleyen 9 farklı araç değerlendirilmektedir. Değerlendirilen araçlar Perceptual
Image Diff (PDIFF) [13], ImageMagick (IM) [5] ve DSSIM [3] gibi literatürde adı
geçen araçlardan; Vestel için ve/veya Vestel’de geliştirilen/özelleştirilen Black
Transparent (BT), Advanced Fuzzy (AF) gibi şirkete özel araçlar ile PSNR ve SSIM
[15] gibi kaynak kodu kapalı kütüphanelerden; Python Imaging Library (PIL) [12] ve
Python OpenCV Library (CV2) [11] gibi farklı parametreler alan, geliştirilebilir açık
kaynak kodlu kütüphanelerden oluşmaktadır. AF, PSNR, SSIM gibi literatürde adı
geçen algoritmalar/araçlar Vestel’de özelleştirilmiştir. PIL ve CV2 gibi literatürde adı
geçen kütüphaneler farklı özellikler/parametreler eklenerek Vestel’e özgü görüntü
karşılaştırma araçları haline getirilmiştir.</p>
        <p>Bir TV sisteminin gerçek zamanlı çalışmasından elde edilmiş anlık resimler ile
referans resimlerden oluşan 1000 çift resimlik bir veri kümesi hazırlanmıştır. Bu
kümedeki görüntüler test sonuçlarına göre başarılı ya da başarısız olarak
etiketlendirilmiştir. Görüntüler, yazılımdan ya da donanımdan kaynaklı etkilere göre piksel kayması,
renk tonu/doygunluğu farklılığı ve esneme (resmin gövdesinin genişlemesi,
daralması, büyümesi, küçülmesi, vb.) etkilerine tâbi olan resimler olarak sınıflandırılmıştır.
Daha sonra, bu veri kümesi görüntü karşılaştırma algoritmalarının/araçlarının
doğruluğunu ve performansını karşılaştırmak ve değerlendirmek amacıyla kullanılmıştır.</p>
        <p>Genel olarak doğruluk ve performans açısından CV2 diğerler araçlardan üstün
olarak görülse de, başarımın parametre değerlerine bağlı olarak ve sınıflandırılmış farklı
alt kümeler (piksel kayması, renk doygunluğu, esneme) için önemli oranda değiştiği
gözlemlenmiştir. Dolayısıyla, en doğru sonuçlara ulaşmak için test sırasında elde
edilecek/edilen görüntünün türüne ve özelliklerine göre kullanılacak aracın
parametrelerinin seçilmesi ya da kombine edilmesi gerekmektedir.</p>
        <p>Bildirinin organizasyonu: Bir sonraki bölümde, değerlendirmede kullanılan araçlar
hakkında genel bilgiler sunulmaktadır. 3. Bölümde vaka çalışması için izlenen
yöntem anlatılmaktadır. Bu kısımda, Vestel test ortamı ve TV projeleri hakkında bilgiler
verilmekte, hedef ve araştırma soruları açıklanmakta, veri kümesi ve
algoritmaların/araçların sınanma şekli hakkında bilgi verilmektedir. 4. Bölümde deney sonuçları
paylaşılarak değerlendirilmektedir. 5. Bölümde literatürdeki ilgili çalışmalar
özetlenmektedir. Son olarak, 6. Bölümde temel çıkarımlar özetlenerek ileriye dönük
çalışmalar listelenmektedir.</p>
      </sec>
      <sec id="sec-2-2">
        <title>Deneysel Kurulum</title>
        <p>Bu bölümde, endüstriyel vaka incelemesi ve görüntü karşılaştırma
araçlarının/algoritmalarının değerlendirilmesi için kurulan deney ortamı anlatılmaktadır.
2.1</p>
        <sec id="sec-2-2-1">
          <title>Durum Açıklaması</title>
          <p>Vaka incelemesi, Vestel'de TV seti geliştirme projesi bağlamında
gerçekleştirilmektedir. Geliştirilen ürünler düzenli regresyon testlerine tâbidir. Bu testler, Vestel
tarafından geliştirilen test otomasyon araçları ile otomatik hale getirilmektedir. Vestel
ARGE Tasarım Doğrulama ve Test Grubu’nda, TV setlerinin işlevselliği görüntü
karşılaştırmasıyla (%65), video analiziyle (%5), ses karşılaştırmasıyla (%2), ürün
çıktılarını okuma ve anahtar kelimeler bulmayla (%25), OCR (Optik Karakter Tanıma, %1)
ile ve diğer kontrollerle (%2) test edilmektedir. Bu karşılaştırmalar sırasında, referans
resim dosyaları (%99) ile referans ses ve çıktı dosyaları (%1) kullanılmaktadır. Bu
nedenle, çoğu durumda test senaryolarını değerlendirmek için referans görüntülerle
uğraşılmaktadır. Bu görüntüler, projeye ait özelliklerden, kullanıcı arayüzünden,
panel yapılandırmasından ötürü farklılıklar gösterebilmektedir.</p>
          <p>Görüntü karşılaştırması için kullanılan tüm referans resimler, testler sırasında,
Vestel test otomasyon araçları ile yönetilmektedir. Bu araçlar sayesinde, önceden
tanımlanmış python betikleriyle (script) uzaktan kumanda komutları TV’ye gönderilmekte,
önceden belirlenmiş yürütme noktalarında anlık görüntüler alınmakta ve bu
görüntüler referans resimlerle karşılaştırılmaktadır.
2.2</p>
          <p>Karşılaştırılan Araçlar</p>
          <p>Vaka çalışması kapsamında değerlendirilen araçlar Tablo 1’de özellikleri ile
listelenmiştir.</p>
          <p>Tablo 1. Değerlendirme için Kullanılan Araçlar
Kısaltma İsmi</p>
          <p>PSNR
SSIM
AF
BT
DSSIM
PDIFF
IM
PIL
CV2</p>
          <p>Kaynak Kodu
Kapalı
Kapalı
Kapalı
Kapalı
Kapalı
Kapalı
Kapalı
Python
Python</p>
          <p>Platform
Windows
Windows
Windows, Mac OS, Linux
Windows, Mac OS, Linux
Windows, Mac OS, Linux
Windows, Mac OS, Linux
Windows, Mac OS, Linux
Windows, Mac OS, Linux
Windows, Mac OS, Linux</p>
          <p>Parametre
Yok
Yok
Yok
Yok
Yok
Yok
Bulandırma
Gri mod, Tolerans
Eşik değeri, Blok boyutu,
Kenar silme, Küçültme
2.3</p>
        </sec>
        <sec id="sec-2-2-2">
          <title>Hedef ve Araştırma Soruları</title>
          <p>Bu çalışmadaki amacımız, araçları/algoritmaları ‘doğruluk’ ve ‘performans’
ölçütlerine göre karşılaştırmaktır. Görüntü karşılaştırma araçlarının doğruluğunu
etkileyebilecek birçok görüntü etkisi bulunmaktadır. Ayrıca, karşılaştırılacak görüntüler piksel
kayması, doygunluk ve esneme gibi farklı etkilere maruz kaldığında görüntü
karşılaştırma araçlarının/algoritmalarının nasıl performans göstereceği bilinmek
istenmektedir. Dolayısıyla, iki araştırma sorusu tanımlanmaktadır:
1. Her araç için görüntü karşılaştırma sonuçları ne kadar doğrudur?
2. Araçların görüntü karşılaştırma performansları nasıldır?
2.4</p>
        </sec>
        <sec id="sec-2-2-3">
          <title>Veri Kümesi Koleksiyonu</title>
          <p>Test sonuçlarından elde edilmiş bir dizi referans ve anlık resim kullanılarak bir veri
seti hazırlanmıştır. Bu setteki görüntüler test sonuçlarına göre başarılı ya da başarısız
olarak etiketlendirilmiştir. Bu veri setinde 42 çift piksel kaymasına, 143 çift renk
tonu/doygunluğu etkisine, 359 çift esneme etkisine maruz kalmış başarılı resim ve
456 çift başarısız resim bulunmaktadır. Bu resim seti, test ortamında python betiği
(script) yardımıyla 9 farklı araçla/algoritmayla ve değişik parametreleriyle birlikte
karşılaştırılmıştır (bkz. Tablo 1).
2.5</p>
        </sec>
        <sec id="sec-2-2-4">
          <title>Araçlar, Metrikler ve Değişkenler</title>
          <p>Değerlendirme metrikleri açısından, iki kıstas göz önüne alınmaktadır: performans ve
doğruluk. Performans metriği, iki görüntünün karşılaştırılması için geçen ortalama
(saniye cinsinden) süre olarak ölçülmüştür. Doğruluğu değerlendirmek için kullanılan
ölçütler aşağıda listelenmiştir:



</p>
          <p>
            TP: Karşılaştırma aracının başarısız test çalışmasında iki resim (referans ve
anlık resim) arasında eşleşmezlik fark ettiği durumların sayısı
TN: Karşılaştırma aracının başarılı test çalışmasında iki resim (referans ve
anlık resim) arasında hiçbir fark bulamadığı durumların sayısı
FP: Karşılaştırma aracının başarılı test çalışmasında iki resim (referans ve
anlık resim) arasında eşleşmezlik fark ettiği durumların sayısı
FN: Karşılaştırma aracının başarısız test çalışmasında iki resim (referans ve
anlık resim) arasında hiçbir fark bulamadığı durumların sayısı
Bu ölçütler aşağıdaki gibi doğruluk ölçütünü hesaplamak için kullanılmıştır:
‘ImageMagick’ algoritmasında, ‘bulandırma’ parametresi ‘0 – 100’ aralığında
herhangi bir değer alacak şekilde kullanılabilmektedir. Bu çalışmada 6 farklı
‘bulandırma’ değeri (
            <xref ref-type="bibr" rid="ref10 ref15 ref5">0, 5, 10, 15, 20, 25</xref>
            ) kullanılarak 6 farklı karşılaştırma yapılandırması
(konfigürasyonu) elde edilmiştir.
‘PIL’ algoritmasında, ‘gri mod’ parametresi ‘etkin (
            <xref ref-type="bibr" rid="ref1">1</xref>
            )’ ve ‘etkisiz (0)’ olacak ve
‘tolerans’ parametresi ‘0 - 255’ aralığında herhangi bir değer alacak şekilde
kullanılabilmektedir. Bu çalışmada 4 farklı tolerans değeri (
            <xref ref-type="bibr" rid="ref16 ref8">0, 8, 16, 32</xref>
            ), 2 farklı ‘gri mod’
değeriyle kullanılarak 8 farklı karşılaştırma yapılandırması (konfigürasyonu) elde
edilmiştir.
          </p>
          <p>
            ‘CV2’ aracında/algoritmasında, ‘kenar silme’ parametresi ‘etkin (
            <xref ref-type="bibr" rid="ref1">1</xref>
            )’ ve ‘etkisiz
(0)’ olacak şekilde, ‘blok boyutu’ parametresi ‘5 – 1920’ aralığında herhangi bir değer
alacak şekilde, ‘eşik değeri’ parametresi ‘0 – 255’ aralığında herhangi bir değer
alacak şekilde ve ‘küçültme’ parametresi ‘0.01 – 1.0’ aralığında herhangi bir değer
alacak şekilde kullanılabilmektedir. Bu çalışmada 15 farklı ‘eşik değeri’ (15, 31, 47, ...
223), 2 farklı ‘kenar silme’, 4 farklı ‘küçültme’ (1.0, 0.5, 0.25, 0.125) ve 21 farklı
‘blok boyutu’ (5, 6, ... 20, 24, … 120, … 1920) değeri kullanılarak yaklaşık 2500
karşılaştırma yapılandırması (konfigürasyonu) elde edilmiştir. Bu parametreler bazı
değer kombinasyonlarıyla gruplandırılmıştır (bkz. Tablo 2).
3
          </p>
        </sec>
      </sec>
      <sec id="sec-2-3">
        <title>Değerlendirme</title>
        <p>Daha önce bahsedilen 9 görüntü karşılaştırma aracı, piksel kaymasına, renk
doygunluğuna ve esnemeye maruz kalmış başarılı resim setlerinde ve başarısız resim setinde
kullanılmıştır. ‘IM’, ‘PIL’ ve ‘CV2’ araçları farklı parametrelerle çalıştırılarak daha
fazla karşılaştırma çeşitliliği elde edilmiştir. ‘IM’ ve ‘PIL’ araçlarında en doğru
sonucu veren parametre yapılandırmaları kullanılmıştır. ‘CV2’ aracında her bir resim seti
(Başarısız, Başarılı, Piksel Kayması, Renk Doygunluğu, Esneme) için en iyi sonucu
veren birer örnek ve genelde en doğru sonucu veren toplamda 6 farklı parametre
yapılandırması kullanılmıştır (bkz. Tablo 2). Bütün araçların değerlendirilmesinde
aynı ‘limit (65)’ değeri kullanılmaktadır. Bu değere göre test sonuçlarında
eşleştirmenin başarılı veya başarısız olduğuna karar verilmektedir.</p>
        <p>Tablo 2. ‘CV2’ Yapılandırması (Konfigürasyonu)
Yapılandırma</p>
        <p>Kenar silme</p>
        <p>Eşik değeri</p>
        <p>Blok boyutu</p>
        <p>Küçültme
CV2-y1
CV2-y2
CV2-y3
CV2-y4
CV2-y5
1
0
0
1
0
79
223
159
79
63
20
20
24
240
60
0,125
0,125
0,125
0,25
0,125</p>
        <p>CV2-y6 1 79 5 0,5</p>
        <p>Not: CV2-y1: En doğru sonucu veren parametre yapılandırması, CV2-y2: Piksel kayması
seti için en iyi sonucu veren yapılandırmalardan biri, CV2-y3: Renk doygunluğu seti için en iyi
sonucu veren yapılandırmalardan biri, CV2-y4: Esneme seti için en iyi sonucu veren
yapılandırmalardan biri, CV2-y5: Başarılı set için en iyi sonucu veren yapılandırmalardan biri,
CV2y6: Başarısız set için en iyi sonucu veren yapılandırmalardan biri olduğu gözlemlenmiştir.
3,0
2,5
2,0
1,5
1,0
0,5
0,0</p>
        <p>BB mak</p>
        <p>BB min</p>
        <p>BB mak</p>
        <p>BB min
KD min</p>
        <p>KD mak</p>
        <p>CV2’nin daha önce de değinildiği gibi 2500 civarında farklı parametre değeri
varyasyonlarıyla test edilmiş ve bu varyasyonların hepsinin ortalama test süreleri
incelenmiştir. CV2 aracının performansına en çoktan en aza doğru sırasıyla ‘küçültme’
değeri, ‘blok boyutu’, ‘kenar silme’ ve ‘eşik değeri’nin etki ettiği gözlenmektedir.
‘Kenar silme’ parametresinin ‘0’, ‘eşik değeri’nin ‘255’, ‘küçültme’ değerinin ‘0.125’
ve ‘blok boyutu’nun ‘1920’ seçilmesi durumunda ‘0.17’ saniye ile en hızlı CV2
yapılandırması elde edilmiştir. En yavaş CV2 yapılandırması da ‘kenar silme’
parametresinin ‘1’, ‘eşik değeri’nin ‘0’, ‘küçültme’ değerinin ‘1.0’ ve ‘blok boyutu’nun ‘5’
seçilmesiyle elde edilmiştir ve test süresi Şekil 1’de görüldüğü gibi ‘2.93’ saniye
olarak ölçülmüştür.</p>
        <p>
          KS 0 ED mak
KS 0 ED min
KS 1 ED mak
KS 1 ED min
0,17
0,18
0,44
0,45
0,19
0,19
0,46
0,49
0,98
1,04
1,28
1,32
2,76
2,48
2,76
2,93
KD min-mak: Küçültme değeri (0.125 – 1.0),
BB min-mak: Blok boyutu (
          <xref ref-type="bibr" rid="ref10 ref11 ref12 ref13 ref14 ref15 ref16 ref5 ref6 ref7 ref8 ref9">5 - 1920</xref>
          ),
ED min-mak: Eşik değeri (
          <xref ref-type="bibr" rid="ref1 ref10 ref11 ref12 ref13 ref14 ref15 ref16 ref2 ref3 ref4 ref5 ref6 ref7 ref8 ref9">0 - 255</xref>
          ),
KS 0-1: Kenar silme (Etkin değil - Etkin)
        </p>
        <p>
          Şekil 1. Minimum/Maksimum Değerlerde ’CV2’ Performansı (saniye)
‘IM’de en doğru sonucu veren parametre yapılandırması ‘bulandırma’
parametresinin ‘5’ olduğu ve ‘PIL’de ise ‘gri mod’ parametresinin ‘etkin (
          <xref ref-type="bibr" rid="ref1">1</xref>
          )’ ve ‘tolerans’
parametresinin ‘8’ olduğu durumdur.
        </p>
        <p>
          Tüm görüntü setleri ve algoritmalar Tablo 3’te tartışılmaktadır. Tablo 3’e göre en
yavaş 3 araç sırasıyla ‘PDIFF’, ‘DSSIM’ ve ‘BT’ araçları olarak göze çarpmaktadır.
En hızlı araçlar olarak ‘CV2’ aracının ‘küçültme’ parametresinin en düşük olduğu
(0.125) yapılandırmalar (
          <xref ref-type="bibr" rid="ref1 ref2 ref3 ref5">1, 2, 3, 5</xref>
          ) olarak göze çarpmaktadır. ‘CV2’ aracı dışında en
hızlı çalışan 2 araç sırasıyla ‘PSNR’ ve ‘IM’ araçlarıdır.
        </p>
        <p>Tablo 3. Değerlendirme için Kullanılan Araçlar ve Yapılandırmalar.</p>
        <p>Araç
PSNR
SSIM
DSSIM
PDIFF
AF
BT
IM
PIL
CV2-y1
CV2-y2
CV2-y3
CV2-y4
CV2-y5
CV2-y6
Bu grup, 456 çift resimden oluşmaktadır ve gerçek karşılaştırma sonucunun başarısız
olduğu bilinmektedir. Ama çeşitli sebeplerden ötürü otomatik karşılaştırmalarda fark
görülememektedir (FN). Sonuçlara göre, ‘CV2’ aracı haricindeki 8 araç içinde
%86’lık başarı oranıyla ‘PSNR’ aracı göze çarpmaktadır. Ancak başarısız görüntü
grubunda ‘hata kaçırmak’ kabul edilemez bir durumdur. Çünkü kaçırılan her hata,
ciddi bir risk demektir. Bu durumda ‘CV2’ aracı devreye girmektedir ve ‘CV2–y6’
yapılandırması düşük ‘blok boyutu’ sayesinde hiç hata kaçırmayıp %100 başarıyla bu
grubu tamamlamaktadır.
3.2</p>
        <sec id="sec-2-3-1">
          <title>Piksel Kayması Görüntü Grubu</title>
          <p>
            Bu grup, 42 çift resimden oluşmaktadır ve gerçek karşılaştırma sonucunun başarılı
olduğu bilinmektedir. Ama anlık görüntülerde referanslarına göre piksel kaymaları
olduğu için otomatik karşılaştırmalarda başarısız sonuç elde edilebilmektedir (FP).
Sonuçlara göre, bu görüntü grubu için araçlar genel olarak başarılı bir performans
ortaya koyarken ‘CV2’ aracının ‘kenar silme’ parametresinin ‘1 (etkin)’ olduğu
yapılandırmalar (
            <xref ref-type="bibr" rid="ref1 ref4 ref6">1, 4, 6</xref>
            ) ile ‘PSNR’ aracı en başarısız araçlar olarak göze çarpmaktadır.
3.3
          </p>
        </sec>
        <sec id="sec-2-3-2">
          <title>Renk Tonu/Doygunluğu Görüntü Grubu</title>
          <p>Bu grup, 143 çift resimden oluşmaktadır ve gerçek karşılaştırma sonucunun başarılı
olduğu bilinmektedir. Ama anlık görüntülerin referanslarına göre farklı renk tonu
yoğunluğundan dolayı otomatik karşılaştırmalarda başarısız sonuç elde
edilebilmektedir (FP). Sonuçlara göre, bu görüntü grubunun testlerinde ‘BT’, ‘AF’, ‘DSSIM’ ve
‘CV2’nin 2, 3 ve 5. yapılandırmalarında %100 başarı gözlenmektedir. Diğer yandan,
‘CV2’nin 6. yapılandırması en başarısız araç olarak göze çarpmaktadır (%9).
3.4</p>
        </sec>
        <sec id="sec-2-3-3">
          <title>Esneme Görüntü Grubu</title>
          <p>Bu grup, 359 çift resimden oluşmaktadır ve gerçek karşılaştırma sonucunun başarılı
olduğu bilinmektedir. Ama anlık görüntülerin referanslarına göre farklı şekillerde
esnemeye maruz kalmasından dolayı otomatik karşılaştırmalarda başarısız sonuç elde
edilebilmektedir (FP). Sonuçlara göre, ‘CV2’nin 4 ve 5. yapılandırmasında ve ‘AF’,
‘BT’ ve ‘DSSIM’ araçlarında %100 başarı elde edilmektedir. Diğer yandan, en
başarısız araçlar olarak ‘PSNR’ (%0) ve ‘CV2’nin 6. yapılandırması (%0.02)
görülmektedir.</p>
          <p>Genel olarak başarılı görüntü grupları incelendiğinde en başarılı sonuçlar %100 ile
‘BT’, ‘AF’, ‘DSSIM’ ve ‘CV2-y5’ araçlarından elde edilmektedir. ‘CV2-y5’ aracının
diğer üç araçtan daha hızlı olması (0.15 sn.) ve doğruluğunun diğerlerinden daha
yüksek olması (0.65) sebebiyle başarılı görüntü grupları için en tercih edilir araç olarak
göze çarpmaktadır (bkz. Şekil 2, Şekil 3).</p>
          <p>Performans</p>
          <p>En doğru sonucu veren aracı bulmak için başarılı görüntü grubunun yanında
başarısız görüntü grubu da incelenmeli ve bütün gruplar temel alındığında ortaya çıkan
doğruluk ve performans sonuçlarına göre karar verilmelidir.</p>
          <p>Başarısız görüntü grubu incelendiğinde en iyi sonuçları sırasıyla ‘CV2-y6’,
‘PSNR’ ve ‘CV2-y1’ araçları vermektedir. Bu üç aracın performansı ‘1’ saniyenin
altında olduğundan doğruluk temel alındığında ise en iyi sonucu ‘0.79’la ‘CV2-y1’
aracı vermektedir. Başarılı ve başarısız setler bir arada değerlendirildiğinde ise en
doğru sonucu veren araç olarak ‘CV2-y1’ aracı ön plana çıkmaktadır (bkz. Şekil 2,
Şekil 3).</p>
          <p>Şekil 3. Karşılaştırma Araçlarının Performans (saniye) Grafiği
‘CV2-y1’ aracı bütün gruplarda en iyi sonucu vermemesine rağmen, genel olarak
başarımının diğer araçlardan üstün olduğu görüldü. Bu araçtan sonra en doğru sonucu
veren araçlar parametre alabilen ‘PIL’ ve ‘IM’ araçlarıdır. Diğer taraftan, en yanlış
sonucu veren araç/yapılandırma ‘0,47’ ile ‘CV2-y6’ aracıdır. Buradan, parametre
seçiminin aracın doğru ya da yanlış sonuç üretmesine önemli oranda etkisi olduğu
görülmektedir.</p>
          <p>Tüm sonuçlar incelendiğinde ‘DSSIM’ aracının, başarılı görüntü setinde %100
başarılı olmasına rağmen başarısız görüntü setinde hiç hata yakalayamaması dikkat
çekmektedir. Bu da ‘DSSIM’ aracının karşılaştırma sırasında resimler arasında hiçbir
fark ayırt edemediğini ve bu yüzden bu aracın tercih edilmemesi gerektiğini
göstermektedir.</p>
          <p>‘PSNR’ aracı başarısız görüntü setinde ‘CV2’ dışındaki araçlara göre çok daha
başarılı (%86) olmasına rağmen esneme setinde %100 başarısız olması dikkat çekici
noktalardan biridir. Bu da resimlerin esnemeye maruz kalma ihtimalinin olduğu
durumlarda, bu aracın tercih edilmemesi gerektiğini göstermektedir.</p>
          <p>Performans açısından genel bir değerlendirme yapıldığında ise ‘PDIFF’ aracının
diğer araçlara göre önemli derecede yavaş olduğu görülmektedir. En hızlı araç
‘CV2y5’ten yaklaşık 50 kat, en başarılı araç ‘CV2-y1’den yaklaşık 20 kat daha yavaş sonuç
vermektedir. Bu aracı sırasıyla ‘DSSIM’ ve ‘BT’ araçları takip etmektedir. Doğruluk
açısından da diğer araçlar ile kıyaslandığında vasat bir başarım gösterdiğinden, bu
aracın tercih edilmemesi gerektiği görülmektedir.</p>
          <p>Özetle, performans ve doğruluk açısından sırasıyla ‘CV2-y1’, ‘PIL’, ‘IM’ ve
‘SSIM’ araçları tercih edilebilir araçlar olarak öne çıkmaktadır. Diğer yandan,
görüntülerin esneme etkisine maruz kalma ihtimalinin düşük olduğu durumlarda ‘PSNR’
aracı da tercih edilebilir araçlar arasında değerlendirilebilir.
4</p>
          <p>İlgili Çalışmalar
Görüntü karşılaştırması üzerine literatürde yapılmış birçok çalışma incelenmiştir ve
bu çalışmalarda kullanılan birçok farklı yöntem, teknik ve araç hakkında bilgiler
verilmektedir. Ancak bilgimiz dahilinde bu yöntemler endüstriyel bir vaka çalışması
kapsamında değerlendirilerek karşılaştırılmamışlardır.</p>
          <p>Sıkıştırılmış bilgisayarlı tomografi görüntülerinin, görüntü kalitesinin görsel
değerlendirilmesi için görüntü karşılaştırma yöntemleri karşılaştırılmıştır [7]. Araştırmanın
amacı, farklı görüntü sıkıştırma algoritmaları ile sıkıştırılan aynı görüntünün, görüntü
doğruluğunu karşılaştırarak görüntü sıkıştırma için en iyi yöntemi bulmaktır. Ana
konu tıbbi imge karşılaştırmalarına dayansa bile, bu araştırmanın genel sonuçları
nedeniyle bu karşılaştırmanın sonucu her alana uygulanabilmektedir. Tıbbi alanda
görüntü kalitesi çok önemlidir, çünkü görüntü bozulması doğru tanıyı engelleyebilmekte
ve hasta sağlığında büyük sorunlara neden olabilmektedir. Resim doğruluğunun,
görüntü karşılaştırma yöntemleriyle kontrol edilmesi gerekmektedir. Makaleye göre,
görüntü karşılaştırmaları için üç yöntem kullanılmaktadır; i) araya giren boş bir
görüntü olmadan alternatif ekran (AWOB), ii) araya giren boş bir görüntüye sahip
alternatif ekran (AWB) ve iii) yan yana görüntü (SSD). Sonuçlar, AWOB yönteminde
görüntü farkına duyarlılığın anlamlı düzeyde yüksek olduğunu ve AWB ile SSD
arasında çok az fark olduğunu göstermektedir. Araştırma tekniği ve görüntü karşılaştırma
yöntemlerinin, bilgisayar uygulamaları yerine insan gözlemcilerini içermesi bu yazıyı
farklı kılmaktadır. Bu belge sayesinde görüntü karşılaştırmasında farklı bir perspektif
elde edilmektedir.</p>
          <p>Akıllı cihazlarda kamera ve görüntü işleme performansı giderek önem
kazanmaktadır. Kamera ile bütünleşmiş mobil uygulamaların çoğunda bilgisayar görme
teknolojisi kullanılmaktadır. QR barkod algılama ve yüz tanıma yazılımı örnek bir
uygulama olarak düşünülebilir. Bu kapsamda çeşitli görüntü işleme algoritmaları Android
cihazları üzerinde test edilerek karşılaştırılmıştır [16]. Karşılaştırmada 3 farklı yöntem
değerlendirilmiştir: i) Ölçek Değiştirme Özelliği Dönüşümü (SIFT), ii) Sağlam
Özellikleri Hızlandırma (Surf) ve iii) Kısa Yönlendirilme (ORB). ORB algoritmasının
performans açısından en ‘hızlı’ olduğu, ancak herhangi bir yöntemi seçmek yerine
karma bir yöntemin kullanılmasının daha iyi bir seçenek olduğu görülmüştür.</p>
          <p>Önceki bir çalışmada [6], piksel-piksel karşılaştırmaları, Hausdorff mesafesi,
uzaklık tabanlı işlevler, görüntü değiştirme algılama algoritmaları, ön işleme yöntemleri,
renk tutarlılık vektörleri ve ortak histogramlar gibi farklı yöntemler açıklanarak, bu
yöntemleri uygulayan görüntü karşılaştırma araçları değerlendirilmiştir.
Değerlendirilen araçlar arasında ImageMagick, perceptual diff, image comparer, image diff,
ImageJ, bio7, gimp ve OpenCV araçları bulunmaktadır. İlgili bildiride [6], detaylı
raporlanmış bir vaka çalışması kapsamında bu araçların bir kıyaslaması bulunmamakla
birlikte, ayrı ayrı bu araçların nasıl kullanılacağına dair ipuçları verilmiştir.
5</p>
        </sec>
      </sec>
      <sec id="sec-2-4">
        <title>Sonuç</title>
        <p>TV setlerinin test otomasyonunda, testlerin başarılı ya da başarısız olduğuna karar
vermek için TV setlerinin anlık görüntüleri, önceden tanımlanmış referans
görüntülerle karşılaştırılmaktadır. Bu çalışmada, 1000 çift resimden oluşan 4 farklı görüntü
grubu 9 farklı karşılaştırma aracı/algoritması ile ve parametre alan araçlar çeşitli
yapılandırmalarda (konfigürasyonlarda) test edilmiştir, sonuçlar değerlendirilmiştir.</p>
        <p>Genel olarak doğruluk ve performans açısından CV2 diğerler araçlardan üstün
olduğu görülmüştür. Diğer yandan, karşılaştırma süresinin ve başarımın parametre
değerlerine bağlı olarak ve sınıflandırılmış farklı görüntü alt kümeleri (piksel kayması,
renk doygunluğu, esneme) için önemli oranda değiştiği görülmüştür. Testler
sonucunda her aracın güçlü ve zayıf yanları olduğu, araçların parametre değerlerine ve
karşılaştırılan görüntülerin tâbi oldukları etkilere göre farklı sonuçlar verdiği görülmüştür.</p>
        <p>Parametre alan araçların belirli bir yapılandırma ile diğerlerinden daha başarılı
olduğu, açık kaynaklı araçların geliştirilmeye açık ve performans açısından
diğerlerinden daha üstün olduğu görülmüştür. Hazırlanan veri kümesi için, parametre alan
araçlara ilişkin en iyi sonuçların alındığı parametre değerleri tespit edilmiştir. Parametre
alan araçlarda, hangi parametrenin performansa ne ölçüde etki ettiği belirlenmiştir.</p>
        <p>İleride bu çalışma, yeni geliştirilen araçlarla [8,9], farklı testlere özgü gelişmiş veri
kümeleriyle ve bu veri kümelerinin maskelenmiş durumlarıyla genişletilebilir. Ayrıca,
geliştirilmeye açık araçlara yeni özellikler/parametreler eklenerek en doğru
yapılandırma değerleri belirlenebilir.</p>
        <p>Kaynaklar</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Beizer</surname>
            <given-names>B.: Software</given-names>
          </string-name>
          <string-name>
            <surname>Testing Techniques</surname>
          </string-name>
          , Van Nostrand Reinhold Co., ed.
          <volume>2</volume>
          (
          <year>1990</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Berner</surname>
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weber</surname>
            <given-names>R</given-names>
          </string-name>
          . and Keller R.K.:
          <article-title>Observations and lessons learned from automated testing</article-title>
          .
          <source>In Proceedings of the 27th International Conference on Software Engineering</source>
          ,
          <fpage>571</fpage>
          -
          <lpage>579</lpage>
          (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3. DSSIM, https://github.com/pornel/dssim, online erişim (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Howden</surname>
          </string-name>
          , W.E:
          <article-title>Theoretical and empirical studies of program testing</article-title>
          .
          <source>IEEE Transactions on Software Engineering</source>
          , Vol.
          <volume>4</volume>
          , No.
          <volume>4</volume>
          ,
          <fpage>293</fpage>
          -
          <lpage>298</lpage>
          (
          <year>1978</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5. ImageMagick, https://www.imagemagick.org/script/index.php, online erişim (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Katukam</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sindhoora</surname>
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Image Comparison Methods &amp; Tools: A Review</article-title>
          .
          <source>In Proceedings of the 1st National Conference on Emerging Trends in Information Technology</source>
          ,
          <fpage>35</fpage>
          -
          <lpage>42</lpage>
          (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Kim</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lee</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kim</surname>
            ,
            <given-names>K. J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Seo</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Park</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shin</surname>
          </string-name>
          , Y.-G.,
          <string-name>
            <surname>Kim</surname>
            ,
            <given-names>S. H.</given-names>
          </string-name>
          <article-title>and</article-title>
          <string-name>
            <surname>Lee</surname>
            ,
            <given-names>K. H.</given-names>
          </string-name>
          :
          <article-title>Comparison of three image comparison methods for the visual assessment of the image fidelity of compressed computed tomography images</article-title>
          .
          <source>Med. Phys.</source>
          ,
          <volume>38</volume>
          :
          <fpage>836</fpage>
          -
          <lpage>844</lpage>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Kirac</surname>
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Aktemur</surname>
            <given-names>B.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Sozer</surname>
            <given-names>H.</given-names>
          </string-name>
          :
          <article-title>VISOR: A fast image processing pipeline with scaling and translation invariance for test oracle automation of visual output systems</article-title>
          .
          <source>Journal of Systems and Software</source>
          , online https://doi.org/10.1016/j.jss.
          <year>2017</year>
          .
          <volume>06</volume>
          .023 (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Lin</surname>
            <given-names>Y. D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rojas</surname>
            <given-names>J. F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chu</surname>
            <given-names>E. T. H.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Lai Y. C.</surname>
          </string-name>
          <article-title>: On the Accuracy, Efficiency, and Reusability of Automated Test Oracles for Android Devices</article-title>
          .
          <source>IEEE Transactions on Software Engineering</source>
          , Vol.
          <volume>40</volume>
          , No.
          <volume>10</volume>
          ,
          <fpage>957</fpage>
          -
          <lpage>970</lpage>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Myers</surname>
            ,
            <given-names>G.J.</given-names>
          </string-name>
          , Badgett T. and
          <string-name>
            <surname>C.</surname>
          </string-name>
          <article-title>Sandler: The Art of Software Testing</article-title>
          , John Wiley and Sons Inc., ed.
          <volume>3</volume>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11. OpenCV, http://opencv.org/, online erişim (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Python Imaging</surname>
          </string-name>
          <article-title>Library (PIL)</article-title>
          , http://www.pythonware.com/products/pil/, online erişim (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13. Perceptual Image Diff., http://pdiff.sourceforge.net/, online erişim (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Rafi</surname>
            <given-names>D.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Moses</surname>
            <given-names>K.R.K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Petersen</surname>
            <given-names>K.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Mantyla</surname>
            <given-names>M.V.</given-names>
          </string-name>
          :
          <article-title>Benefits and Limitations of Automated Software Testing: Systematic Literature Review and Practitioner Survey</article-title>
          .
          <source>In Proceedings of the 7th International Workshop on Automation of Software Test</source>
          ,
          <fpage>36</fpage>
          -
          <lpage>42</lpage>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15. SSIM, https://ece.uwaterloo.ca/~z70wang/research/ssim/, online erişim (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Yu-Doo</surname>
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jin-Tae</surname>
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Il-Young</surname>
            <given-names>M.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Chang-Heon</surname>
            <given-names>O.</given-names>
          </string-name>
          :
          <article-title>Performance Analysis of ORB Image Matching Based on Android</article-title>
          .
          <source>International Journal of Software Engineering and Its</source>
          Applications Vol.
          <volume>8</volume>
          , No.
          <volume>3</volume>
          ,
          <fpage>11</fpage>
          -
          <lpage>20</lpage>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>