<!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>HIPI ile Dağıtık Görüntü İşleme Çatısı: Yüz Bölgelerine Ait Biometrileri Saptama Performansının İncelenmesi</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Yılmaz Yunus Akkoyunlu</string-name>
          <email>y.yunus.akkoyunlu@gmail.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Süleyman Eken</string-name>
          <email>suleyman.eken@kocaeli.edu.tr</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ahmet Sayar</string-name>
          <email>ahmet.sayar@kocaeli.edu.tr</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Bilgisayar Mühendisliği, Kocaeli Üniversitesi</institution>
          ,
          <addr-line>41380 İzmit</addr-line>
          ,
          <country country="TR">Türkiye</country>
        </aff>
      </contrib-group>
      <fpage>426</fpage>
      <lpage>431</lpage>
      <abstract>
        <p>With the increasing usage of social media and widespread usage of digital technologies, data are produced from different resources in various types, such as texts, images and videos. It is very important to store, process and analyze big image data. In this study, we detect region of interests such as face, eye, nose, and nose on two datasets, one is Bao face dataset and another is Cross-Age Celebrity Dataset (CACD). The proposed framework is based on distributed Hadoop Image Processing Interface (HIPI). In the framework, images are firstly converted to HIB image bundles using HIPI. Then, for the parallel biometric detection, mapper and reducer functions in the Hadoop are defined. Finally, application is run on real data. The precision values are presented for each detected biometrics.</p>
      </abstract>
      <kwd-group>
        <kwd>Big image data</kwd>
        <kwd>HIPI image processing library</kwd>
        <kwd>face detection</kwd>
        <kwd>eye detection</kwd>
        <kwd>nose detection</kwd>
        <kwd>mouth detection</kwd>
        <kwd>Hadoop</kwd>
        <kwd>MapReduce</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Son yıllarda çoklu-medya kullanımı özellikle internetin gelişmesine paralel olarak
çok hızlı bir şekilde artmıştır. Flicker, Youtube ve Facebook gibi sosyal paylaşım
sitelerinde tutulan çoklu-medya verileri çok büyük boyutlara ulaşmıştır. Arama
motorları da günümüzde çoklu-medya arama özelliği sunduklarından, bu boyutta görüntü
verilerinin kaydedilmesini ve işlenmesini yönetmek zorundadırlar. Bu kadar büyük
çoklu-medya verisinin tutulması ve paralel olarak işlenmesi için dağıtık sistemler
kullanılmaktadır. Dağıtık sistemin yeni eklenen verilerle güvenli bir şekilde
büyüyebilmesi ve bu veriler üzerinde paralel işleme yapılabilmesine olanak sağlaması
gerekmektedir. Görüntülerin sınıflandırılabilmesi ve içeriğinde çeşitli aramalar
yapılabilmesi için görüntü işleme algoritmalarının da bu dağıtık sistem içerisinde hızlı ve
paralel bir şekilde çalıştırılabilir olması gerekmektedir [
        <xref ref-type="bibr" rid="ref1 ref2">1-3</xref>
        ]. Yukarıdaki nedenlerden
dolayı görüntüleri paralel işleyebilen HIPI görüntü işleme arayüzünü birçok görüntü
üzerinde kullanarak yüz bölgesinde yer alan çeşitli biyometrilerin (yüzün kendisi,
göz, burun, ağız) saptanması ve performansının incelenmesi amaçlanmıştır.
      </p>
      <p>
        Dağıtık Dosya Sistemleri (DDS) günümüzde disklerin ve depolama kaynaklarının
ortaklaşa kullanımını sağlayıp dağıtık sistemler aracılığıyla büyük ölçekte
hesaplamalar ve işlemler yapılmasına olanak sağlamaktadırlar. Birçok DDS mimarisi mevcut
olup proje kapsamında yaygın olarak kullanılan Hadoop Dağıtık Dosya Sisteminden
(HDFS) yararlanılmıştır [
        <xref ref-type="bibr" rid="ref3">4</xref>
        ]. Apache Hadoop, HDFS ve MapReduce paradigmasını
bir araya getirerek sıradan bilgisayarlar kullanarak dağıtık programlamayı sağlayan
açık kaynaklı bir kütüphane kullanılmıştır.
      </p>
    </sec>
    <sec id="sec-2">
      <title>Bu çalışma ile aşağıdaki katkılar sağlanmıştır:</title>
      <p>


</p>
    </sec>
    <sec id="sec-3">
      <title>Paralel görüntü işleme çalışmaları açıklandı.</title>
      <p>Kullanımı ve bir projeye entegrasyonu tam olarak açık bir şekilde belirtilmemiş
açık kaynak HIPI kütüphanesinin detayları anlatıldı.</p>
      <p>Görüntü işleme açısından istenilen amaca göre map ve reduce fonksiyonlarının
nasıl tasarlanması gerektiğinden bahsedilmiştir.</p>
      <p>Farklı sayılarda girişlere göre ölçeklenebilirlik analizi yapılmıştır.</p>
      <p>Çalışmanın geri kalanı şu şekilde organize edilmiştir. 2 bölümde, literatürde var
olan görüntüden yüz, göz, ağız ve burun saptama çalışmalarından bahsedilmiştir. 3.
bölümde, HIPI kütüphanesi anlatılmıştır. 4. Bölümde, HIPI kullanılarak
gerçekleştirilen birtakım testler ve analizler verilip sonuçlar değerlendirilmiştir. Son kısımda ise
sonuçlar sunulup gelecek çalışmalardan bahsedilmiştir.
2 Görüntüden yüz, göz, ağız ve burun saptama çalışmaları</p>
      <p>
        Görüntüden yüz, göz, ağız ve burun bulma bulma çalışmaları biyometrik tanıma,
video izleme ve insan-bilgisayar etkileşimi gibi farklı alanlarda sıkça
yapılagelmektedir. Paralel ve dağıtık programlama ile bu tür saptamaların hem daha
hızlı hem de daha çok görüntü üzerinde işlem yapılması sağlanmaktadır. Chouchene
ve arkadaşları yüz saptamak amaçlı ilk olarak Viola and Jones algoritmasının CPU
versiyonunu gerçeklemişler daha sonra CUDA (Compute Unified Device
Architecture) teknolojisini kullanarak GPU (Graphical Processing Unit) versiyonunu
oluşturmuşlardır. Grid topoloji ve paylaşımlı bellek kullanarak son olarak ilgili
algoritmaları optimize etmişlerdir [
        <xref ref-type="bibr" rid="ref4">5</xref>
        ]. Farrugia ve arkadaşları ise gerçek zamanlı olarak
yüzleri saptamak için FPGA (Field Programmable Gate Array - Alanda
Programlanabilir Kapı Dizileri) üzerinde konvülosyon ve alt-örnekleme adımlarını pipeline ederek
ölçeklenebilir bir miamari geliştirmişlerdir [
        <xref ref-type="bibr" rid="ref5">6</xref>
        ]. Hadjidoukas ve arkadaşları OpenMP
(Open Specifications for MultiProcessing) programlama modelini kullanarak
paylaşımlı bellek çoklu işlemcileri için bir yüz tanıma sistemi geliştirmişlerdir [
        <xref ref-type="bibr" rid="ref6">7</xref>
        ]. Ranjan
ve Malik ise çok çekirdekli CPU’lar kullanarak önden çekilmiş görüntüler için yüz
tanıma ve takip sistemi geliştirmişlerdir [
        <xref ref-type="bibr" rid="ref7">8</xref>
        ]. Nasiri ve arkadaşları renkli
görüntülerdeki gözlerin tespiti için göz haritalarının bulunup paralelleştirilmesi algoritmasını
gerçeklemişlerdir [
        <xref ref-type="bibr" rid="ref8">9</xref>
        ]. Rashmi ve arkadaşları da OpenMP kullanarak yüze ait bölgeleri
(ağız, göz, burun) saptamışlardır [
        <xref ref-type="bibr" rid="ref9">10</xref>
        ].
      </p>
      <p>Bunların yanında, yüz, göz, ağız ve burun bulma çalışmaları; çeşitli ortamlarda,
pozdaki değişmede, ışık kaynağının yeri ve şiddetinin değişmesinde elde edilen
sonuçlar incelenmiştir. Bizim bu çalışmalardan farkımız, elimizdeki veri setini dağıtık
olarak işleyip zamandan tasarruf etmektir. Yaptığımız araştırmalara göre Hadoop
mimarisinde yüz ve yüze ait biyometrilerin bulunması ile ilgili bir çalışmaya
rastlanmamıştır.
3</p>
      <sec id="sec-3-1">
        <title>HIPI Görüntü İşleme Altyapısı</title>
        <p>
          MapReduce uygulamaları yapısal olarak text tabanlı veri işleme ve analizine
uygundur; ancak diğer tip verileri işlemek için map ve reduce metotlarında bir takım
giriş ve çıkış formatlatının ayarlanması gereksinimi vardır. HIPI görüntü işleme
kütüphanesi MapReduce paradigmasında imge dosyalarını işlemek için OpenCV
kütüphanesiyle birlikte çalışan bir mimariyi sunmaktadır [
          <xref ref-type="bibr" rid="ref10">11</xref>
          ].
        </p>
        <p>
          HIPI, Virginia Üniversitesinin Hadoop mimarisini temel alarak büyük boyuttaki
görüntü verilerininin dağıtık olarak işlenmesini sağlayan bir altyapıdır [
          <xref ref-type="bibr" rid="ref11 ref12">12-13</xref>
          ].
Normal platformlarda büyük ölçekli görüntülerin işlenmesi oldukça zordur; ancak HIPI
ile yapılan uygulamalar kullanıcıların büyük ölçekli görüntüleri kolayca işlemelerini
sağlamaktadır.
        </p>
      </sec>
      <sec id="sec-3-2">
        <title>4 Gerçekleştirilen Testler ve Sonuçları</title>
        <p>
          Test amaçlı Bao yüz veriseti [
          <xref ref-type="bibr" rid="ref13">14</xref>
          ] ve çeşitli yaşlardaki ünlülerin görüntü veriseti
(CACD) [
          <xref ref-type="bibr" rid="ref14">15</xref>
          ] kullanılmıştır. Bao yüz veriseti tek kişi veya daha fazla kişi içeren 221
adet görüntü içermekte ve boyutu 30,6 MB’tır. Testte kullanılanlar birden çok yüzü
içeren görüntü dosyaları olmuştur. Testler her bir biyometri için ayrı yapılmış olup
Hadoop kullanmadan, tek makinede Hadoop ile ve birden fazla makinede Hadoop ile
şeklinde üç farklı senaryoda gerçekleştirilmiştir. Çalışmada OpenCV-2.4.11
versioyonu kullanılmıştır. OpenCV ön eğitilmiş bir takım saptayıcılar sunmaktadır.
Tablo 1’de çalışmada kullanılan XML saptayıcılar verilmiştir. Tablo 2’de
sınıflandırıcılara ait kesinlik değerleri, tek makine (native Java, MapReduce) ve birden fazla
makine çalışma süreleri verilmiştir.
        </p>
        <p>Tablo 1. Kullanılan sınıflandırıcılar ve XML dosyaları</p>
        <sec id="sec-3-2-1">
          <title>Kaskad (cascade) sınıflandırıcı tipi</title>
          <p>Yüz saptama (LBP)
Göz saptama (Haar)
Burun saptama (Haar)
Ağız saptama (Haar)</p>
        </sec>
        <sec id="sec-3-2-2">
          <title>XML dosyası</title>
          <p>lbpcascade_frontalface.xml
haarcascade_eye.xml
haarcascade_mcs_nose.xml
haarcascade_mcs_mouth.xml
Tablo 2. Sınıflandırıcı tiplerine göre elde edilen kesinlik değerleri ve hesaplama
süreleri karşılaştırması</p>
        </sec>
        <sec id="sec-3-2-3">
          <title>Kaskad (cascade) sınıflandırıcı tipi</title>
          <p>Yüz saptama</p>
          <p>(LBP)
Göz saptama</p>
          <p>(Haar)
Burun saptama</p>
          <p>(Haar)
Ağız saptama
(Haar)</p>
          <p>Kesinlik
(Precision)
93,66</p>
          <p>Tek makine
(native Java)
2 dk 37 sn</p>
          <p>Tek makine
(MapReduce)
4 dk 52 sn</p>
          <p>Birden fazla
makine
4 dk 10 sn
57,23
56,76
21,82
9 dk 21 sn
10 dk 19 sn</p>
          <p>5 dk 34 sn
10 dk 36 sn
11 dk 16 sn</p>
          <p>8 dk 44 sn
7 dk 40 sn
9 dk 59 sn
8 dk 10 sn
Bu çalışmada, daha çok metin verilerin işlenmesi için oluşturulan Apache Hadoop
çatısının görüntü verileri için nasıl kullanılabileceği üzerinde durduk. Tablo 2’de
gösterilen sınıflandırıcılar değiştirilerek veya yeni sınıflandırıcılarla sınıflandırma
başarımı (doğruluk, kesinlik vs.) artırılabilir.</p>
        </sec>
      </sec>
      <sec id="sec-3-3">
        <title>5 Sonuç ve Gelecekteki Çalışmalar</title>
        <p>
          Bu çalışmada hızlı ve gürbüz yüz, göz, burun ve ağız gibi biyometrilerin dağıtık ve
ölçeklenebilir olarak HIPI görüntü işleme çatısı ile nasıl bulunabileceğinden
bahsettik. Elde edilen sonuçlara HIPI, birçok görüntünün dağıtık hesaplama yoluyla efektif
olarak işlenebileceğini göstermiştir. Gelecek çalışmalarda HIPI kullanılarak büyük
sayıda uydu görüntüsü üzerinde birtakım vektörizasyon işlemleri [
          <xref ref-type="bibr" rid="ref15">16</xref>
          ]
gerçeklenecektir. Uydu görüntülerinin seçilmesinin sebebi hem yüksek çözünürlükte olmalarından
dolayıdır. Sıradan makineler üzerinde klasik görüntü işleme yöntemlerini birçok uydu
görüntüsüne uygulamak zordur.
1. İ. Demir, Hadoop Tabanli Büyük Ölçekli Görüntü İşleme Altyapisi, Yüksek Lisans
        </p>
        <p>Tezi, Kocaeli Üniversitesi, Fen Bilimleri Enstitüsü, 2012.</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          2. İ.
          <string-name>
            <surname>Demir</surname>
            ,
            <given-names>A</given-names>
          </string-name>
          . Sayar, “
          <article-title>Dağıtık ve Paralel Görüntü İşleme İçin Hadoop eklentisi”, 20</article-title>
          . IEEE Sinyal İşleme ve İletişim Uygulamaları Kurultayı,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          3. İ.
          <string-name>
            <surname>Demir</surname>
            ,
            <given-names>A</given-names>
          </string-name>
          . Sayar, “
          <source>Hadoop Optimization For Massive Image Processing: Case Study Face Detection,” 2nd World Conference On Innovation and Computer Sciences</source>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          4.
          <string-name>
            <given-names>U.</given-names>
            <surname>Ergün</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Eken</surname>
          </string-name>
          ,
          <string-name>
            <surname>A</surname>
          </string-name>
          . Sayar, “Güncel Dağıtık Dosya Sistemlerinin Karşılaştırmalı Analizi,”
          <volume>6</volume>
          . Mühendislik ve Teknoloji Sempozyumu, Ankara,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          5.
          <string-name>
            <given-names>M.</given-names>
            <surname>Chouchene</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Ezahra Sayadi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Bahri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Dubois</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Miteran</surname>
          </string-name>
          , M. Atri, “
          <article-title>Optimized parallel implementation of face detection based on GPU component,” Microprocessors</article-title>
          and Microsystems,
          <volume>39</volume>
          :
          <fpage>393</fpage>
          -
          <lpage>404</lpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          6.
          <string-name>
            <given-names>N.</given-names>
            <surname>Farrugia</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Mamalet</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Roux</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Yang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Paindavoine</surname>
          </string-name>
          , “
          <article-title>Fast and Robust Face Detection on a Parallel Optimized Architecture Implemented on FPGA,”</article-title>
          <source>IEEE Transactıons on Cırcuıts and Systems for Video Technology</source>
          ,
          <volume>19</volume>
          (
          <issue>4</issue>
          ):
          <fpage>597</fpage>
          -
          <lpage>602</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          7.
          <string-name>
            <given-names>P. E.</given-names>
            <surname>Hadjidoukas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.V.</given-names>
            <surname>Dimakopoulos</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Delakis</surname>
          </string-name>
          , C. Garcia,
          <article-title>“A high performance face detection system using OpenMP,”</article-title>
          <source>Concurrency and Computation: Practice and Experience</source>
          ,
          <volume>21</volume>
          (
          <issue>15</issue>
          ):
          <fpage>1819</fpage>
          -
          <lpage>1837</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          8.
          <string-name>
            <given-names>A.</given-names>
            <surname>Ranjan</surname>
          </string-name>
          , S. Malik, “
          <article-title>Parallelizing a Face Detection and Tracking System for Multi-Core Processors,”</article-title>
          <source>Ninth Conference on Computer and Robot Vision</source>
          , pp.
          <fpage>291</fpage>
          -
          <lpage>297</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          9.
          <string-name>
            <given-names>J.A.</given-names>
            <surname>Nasiri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. Amir</given-names>
            <surname>Moulavi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. Nazemi</given-names>
            <surname>Gelyan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Deldari</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H. Sadoghi</given-names>
            <surname>Yazdi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Eshghi</surname>
          </string-name>
          <string-name>
            <surname>Shargh</surname>
          </string-name>
          ,
          <source>“An Efficient Parallel Eye Detection Algorithm on Facial Color Images,” Ninth ACIS International Conference on Software Engineering, Artificial Intelligence</source>
          , Networking, and Parallel/Distributed Computing, pp.
          <fpage>706</fpage>
          -
          <lpage>711</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          10.
          <string-name>
            <surname>C. Rashmi</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          <string-name>
            <surname>Vinay</surname>
          </string-name>
          , K.G. Hemantha, “
          <article-title>An Efficient Multithreading Approach for Localization of Face Parts</article-title>
          ,”
          <source>2015 IEEE International Advance Computing Conference (IACC)</source>
          , pp.
          <fpage>201</fpage>
          -
          <lpage>205</lpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          11.
          <string-name>
            <surname>Hadoop</surname>
          </string-name>
          , https://hadoop.apache.
          <source>org/ (Erişim Tarihi: 5 Haziran</source>
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          12.
          <string-name>
            <surname>C. Sweeney</surname>
            , L. Liu,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Arietta</surname>
          </string-name>
          , J. Lawrence, “
          <article-title>HIPI: A Hadoop Image Processing Interface for Image-based MapReduce Tasks</article-title>
          ,” Yüksek Lisans Tezi, Virginia Üniversitesi,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          13. HIPI, http://hipi.cs.virginia.edu/index.
          <source>html (Erişim Tarihi: 5 Haziran</source>
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          14. Bao veriseti, https://facedetection.com/wp-content/uploads/BaoDataBase.zip (Erişim
          <source>Tarihi: 5 Haziran</source>
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          15. CACD veriseti, http://bcsiriuschen.github.io/CARC/ (Erişim Tarihi: 5
          <source>Haziran</source>
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          16.
          <string-name>
            <given-names>S.</given-names>
            <surname>Eken</surname>
          </string-name>
          ,
          <string-name>
            <surname>A</surname>
          </string-name>
          . Sayar, “
          <article-title>An Automated Technique to Determine Spatiotemporal Changes in Satellite Island Images with Vectorization and Spatial Queries”</article-title>
          , Sadhana - Academy
          <source>Proceedings in Engineering Science</source>
          ,
          <volume>40</volume>
          (
          <issue>1</issue>
          ), pp.
          <fpage>121</fpage>
          -
          <lpage>13</lpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>