- Pra-syarat
- Bagaimana Pengecaman Wajah Berfungsi dengan OpenCV
- Pengesanan Muka menggunakan Cascade Classifiers di OpenCV
Pengecaman Wajah semakin popular dan kebanyakan kita sudah menggunakannya tanpa menyedarinya. Sama ada cadangan Tag Facebook yang mudah atau Snapchat Filter atau pengawasan keselamatan lapangan terbang yang lebih maju, Face Recognition telah membuat keajaiban di dalamnya. China telah mula menggunakan Pengecaman Wajah di sekolah untuk memantau kehadiran dan tingkah laku pelajar. Kedai Runcit telah mula menggunakan Face Recognition untuk mengkategorikan pelanggan mereka dan mengasingkan orang dengan sejarah penipuan. Dengan banyak perubahan yang sedang dilakukan, tidak diragukan lagi bahawa teknologi ini akan dapat dilihat di mana-mana dalam masa terdekat.
Dalam tutorial ini kita akan belajar bagaimana kita dapat membina sistem Pengecaman Wajah kita sendiri menggunakan Perpustakaan OpenCV di Raspberry Pi. Kelebihan memasang sistem ini pada Raspberry Pi mudah alih ialah anda dapat memasangnya di mana sahaja untuk menggunakannya sebagai sistem pengawasan. Seperti semua sistem Face Recognition, tutorial ini akan melibatkan dua skrip python, satu adalah program Trainer yang akan menganalisis sekumpulan foto orang tertentu dan membuat set data (Fail YML). Program kedua adalah program Recognizeryang mengesan wajah dan kemudian menggunakan fail YML ini untuk mengenali wajah dan menyebut nama orang tersebut. Kedua-dua program yang akan kita bincangkan di sini adalah untuk Raspberry Pi (Linux), tetapi juga akan berfungsi pada Komputer Windows dengan sedikit perubahan. Kami sudah mempunyai siri Tutorial untuk pemula untuk memulakan dengan OpenCV, anda boleh menyemak semua tutorial OpenCV di sini.
Pra-syarat
Seperti diberitahu sebelumnya, kami akan menggunakan OpenCV Library untuk mengesan dan mengenali wajah. Oleh itu, pastikan anda memasang OpenCV Library pada Pi sebelum meneruskan tutorial ini. Kuasakan Pi anda dengan penyesuai 2A dan sambungkannya ke monitor paparan melalui kabel HDMI kerana kami tidak akan dapat mendapatkan output video melalui SSH.
Saya juga tidak akan menerangkan bagaimana sebenarnya OpenCV berfungsi, jika anda berminat untuk belajar Pemprosesan gambar, lihat asas OpenCV ini dan tutorial pemprosesan Imej lanjutan. Anda juga boleh mengetahui mengenai kontur, Pengesanan Blob dll dalam tutorial Segmentasi Imej ini.
Bagaimana Pengecaman Wajah Berfungsi dengan OpenCV
Sebelum kita memulakan, penting untuk memahami bahawa Pengesanan Wajah dan Pengecaman Wajah adalah dua perkara yang berbeza. Dalam Pengesanan Muka hanya Wajah seseorang yang dikesan perisian tidak akan mempunyai Idea tentang Orang itu. Dalam Face Recognition perisian tidak hanya dapat mengesan wajah tetapi juga akan mengenali orang tersebut. Sekarang, harus jelas bahawa kita perlu melakukan Face Detection sebelum melakukan Face Recognition. Tidak mungkin bagi saya untuk menjelaskan bagaimana OpenCV dapat mengesan wajah atau objek lain dalam hal ini. Oleh itu, jika anda ingin tahu bahawa anda boleh mengikuti tutorial Pengesanan Objek ini.
Suapan video dari kamera web tidak lebih dari sekumpulan gambar pegun yang dikemas kini satu demi satu. Dan setiap gambar ini hanyalah sekumpulan piksel dengan nilai yang berlainan yang digabungkan dalam kedudukannya masing-masing. Oleh itu, bagaimana program dapat mengesan wajah dari piksel ini dan mengenali lebih lanjut orang di dalamnya? Terdapat banyak algoritma di belakangnya dan cuba menerangkannya di luar ruang lingkup artikel ini, tetapi kerana kami menggunakan perpustakaan OpenCV, sangat mudah untuk melakukan Pengecaman wajah tanpa memahami konsep
Pengesanan Muka menggunakan Cascade Classifiers di OpenCV
Hanya jika kita dapat mengesan wajah kita akan dapat mengenalinya atau mengingatnya. Untuk mengesan objek seperti wajah OpenCV menggunakan sesuatu yang disebut Classifiers. Pengelaskan ini adalah sekumpulan data yang telah dilatih (XML File) yang dapat digunakan untuk mengesan objek tertentu dalam kes kita seperti wajah. Anda boleh mengetahui lebih lanjut mengenai Pengelasan Pengesanan Muka di sini. Selain mengesan Muka, Pengelaskan dapat mengesan objek lain seperti hidung, mata, Plat Lesen Kenderaan, Senyum dan lain-lain. Senarai Pengelasan Kes boleh dimuat turun dari fail ZIP di bawah
Pengelasan untuk Pengesanan objek di Python
Sebagai alternatif OpenCV juga membolehkan anda membuat Classifier anda sendiri yang dapat digunakan untuk mengesan objek lain dalam Gambar dengan Melatih Pengelas Cascade anda. Dalam tutorial ini kita akan menggunakan pengkelasan yang disebut "haarcascade_frontalface_default.xml" yang akan mengesan wajah dari posisi depan. Kita akan lihat