Openface

From OnnoWiki
Jump to navigation Jump to search

Sumber:

OpenFace adalah implementasi pengenalan wajah menggunakan Python dan Torch dengan deep neural network dan berdasarkan pada CVPR 2015 paper FaceNet: A Unified Embedding for Face Recognition and Clustering oleh Florian Schroff, Dmitry Kalenichenko, dan James Philbin di Google. Torch memungkinkan jaringan dieksekusi pada CPU atau dengan CUDA.

Dibuat oleh Brandon Amos, Bartosz Ludwiczuk, dan Mahadev Satyanarayanan.

  • Open Source, denan source code tersedia di GitHub pada cmusatyalab/openface.
  • Ada dokumentasi API
  • Bergabung pada group cmu-openface atau gitter chat untuk diskusi dan masalah instanasi.

Penelitian ini di dukung oleh National Science Foundation (NSF) dengan dukungan tambahan dari Intel, Google, Vodafone, NVIDIA, dan Conklin Kistler family fund.

Apakah pengenalan wajah menyelesaikan sebuah masalah?

Tidak! Akurasi dari berbagai makalah penelitian tampaknya baru saja mulai melampaui akurasi manusia pada beberapa standard. Keakuratan sistem pengenalan wajah open source memang masih tertinggal di belakang state-of-the-art.

Gunakan Dengan Bertanggung Jawab

OpenFace tidak mendukung penggunaan aplikasi ini untuk melanggar privacy dan keamanan. Openface digunakan untuk membantuk mereka yang kesulitan dalam pengenalan untuk mengenali dunia sekeliling mereka.


Overview Workflow

Berikut ini adalah overview workflow pendeteksian wajah seseorang yang sudah ada di contoh opencv

  • Deteksi wajah dengan model pre-trained dari dlib atau OpenCV.
  • Transformasikan wajah untuk neural network. OpenFace menggunakan dlib real-time pose estimation dengan OpenCV affine transformation untuk membuat semua mata dan bibir berada pada lokasi yang sama untuk semua gambar.
  • Menggunakan deep neural network untuk menggambarkan wajah dalam unit 128-dimensi hypersphere. Embedding ini adalah representasi genetik dari wajah semua orang. Tidak seperti representasi wajah lainnya, embedding mempunyai sifat yang baik sehingga semakin jauh jarak embedding berarti wajah tersebut kemungkinan besar bukan dari orang yang sama. Sifat ini membuat proses clustering, dan juga deteksi, dan tugas klasifikasi menjadi mudah di bandingkan dengan teknik pengenalan wajah lainnya dimana jarak euclidean antar fitur tidak banyak berarti.
  • Terakhir adalah menggunakan berbagai teknik clustering dan classifikasi yang kita sukai untuk menyelesaikan tugas pengenalan wajah.
  • Selesai.

Referensi