Blog Single

Face detection with php

Ne amaçla kullanabilirsiniz ?

  • Bir fotoğraf karesinde insan yüzünün olup olmadığını tespit etmek için kullanabilirsiniz.
  • Örneğin; Siteme kayıt edilen tüm resimlerde sorgu yapmak isteseydim bu çok vaktimi alacaktı ve yüzlerce binlerce resmi tarayıp tespit etmek çok zor bir hal alacaktı. Bu sistemi çeşitli sebeplerden dolayı kullanabilirsiniz.
  • Yada bir yüzü tam manada tespit edemediğiniz resimlerde kullanabilirsiniz. Sistemin içinde, belirli yüz hatları sayısal numaralar ile denetleme işlemini kolaylaştırmak için bir .dat uzantılı veri dosyası bulunuyor.

Kodlara değinecek olursak;

  • Tespit işlemi FaceDetector.php üzerinden yapılıyor.
  • Tespit edilebilecek yüz hatları, detection.dat içinde saklı.
  • example.php için;
    • ini_set( 'display_errors', 1 );
      error_reporting( E_ALL ^ E_NOTICE );
      require_once('FaceDetector.php');
      $face_detect = new Face_Detector('detection.dat');

      $face_detect->face_detect('facedetection_01.jpg');

      $face_detect->toJpeg();

      // yada yüz kırpmak için; $face_detect->cropFace();

Yüz tespiti php class'ını internet üzerinde yabancı bir kaynakta bulmuştum. Açıkçası sadece insan yüzü tespit ettiğini düşünüyordum, fakat yanıldığımı bir tespit yaparak fark etmiş oldum.

Face detection with php

Sonuç olarak;

  • Bir resimde eğer varsa yüz tespiti yapıyor. İlk bulduğu yüzü kare içinde gösteriyor. Birden fazla yüz varsa yine ilk tespit ettiği yüzü gösteriyor. Eğer yoksa resimde insan tespit edilemedi gibi düşünebilirsiniz. Geliştirmeye açık bir sistemdir. Bazı resimlerde yüzü tespit edemediğini fark edebilirsiniz, haklısınız sonuçta .dat dosyasında tanımlı matematiksel verilere dayanarak bu sorguyu gerçekleştiriyor.

Not:

  • Resmin ufak boyutta olması tarama işlemini hızlandırmaktadır.
  • Ayrıca birden fazla kişinin bulunduğu resimlerde, çoklu seçme işlemi yapmamaktadır. İlk tespit edebildiği yüzü size gösterir.
  • Örneği 3 defa farklı resimlerde test ettim. Sanıyorum ki taramaya resmin sol üst kısmından başlıyor.

Kaynak kodları indirin;

Bu makaleyi paylaşın:
İstanbul'da yaşıyorum.Web üzerinde Frontend/Backend Geliştirmenin yanı sıra, Android Geliştirme, PHP/ASP.NET, C# Yazılım Uzmanlığı ve Java konuları işliyorum. Kod Şiirdir, onları seviyorum.

Bir yorum bırakın