Saya sentiasa berminat dengan teknologi pengecaman kecerdasan buatan, kerana saya tidak dapat membayangkan jenis algoritma itu dan jenis proses analisisnya. Sama ada pengecaman suara, pengecaman muka atau jenis pengecaman lain, penampilan orang dan cara mereka bercakap sangat berbeza Anda boleh mengambil gambar dengan cara yang berbeza dan dari sudut yang berbeza saya tidak dapat memahami cara teknologi pengecaman ini. Terdapat satu permainan yang dipanggil "Mask" yang juga menggunakan teknologi pengecaman ini saya rasa teknologi pengecaman muka juga harus dikaji. Facebook menggunakan teknologi ini, dan ia juga boleh digunakan dalam kawalan gerak isyarat, jadi akan ada tempat untuknya di tapak web anda.
Satu pakej JavaScript yang saya dapati yang boleh digunakan untuk pengecaman muka ialah Face Detection, yang dibangunkan oleh Jay Salvat dan Liu Liu. Ia adalah pemalam jQuery standard yang menganalisis imej yang disediakan dan mengembalikan koordinat semua imej muka yang ditemui. Mari lihat bagaimana ia digunakan!
jQuery.faceDetection
Untuk menggunakan pemalam jQuery Pengesanan Wajah, anda perlu mengimport empat fail js:
<script src="jquery-1.4.3.min.js"></script> <!-- mas js --> <script src="facedetection/ccv.js"></script> <script src="facedetection/face.js"></script> <script src="jquery.facedetection.js"></script>
Dua fail pertama pemalam pengecaman muka ini ialah pelbagai atur cara berfungsi, melaluinya, anda boleh mendapatkan objek tatasusunan ini menyimpan maklumat koordinat muka dalam gambar. Berikut ialah contoh:
var coords = jQuery("#myImage").faceDetection(); /* 返回: { x: 525 y: 435, width: 144, height: 144, positionX: 532.6353328125226, positionY: 443.240976080536, offsetX: 532.6353328125226, offsetY: 443.240976080536, confidence: 12.93120119, neighbour: undefined, } */
Anda juga boleh menambah fungsi panggil balik acara pada kaedah pengesanan:
var coords = jQuery("#myImage").faceDetection({ complete: function(image, coords) { // Do something }, error: function() { console.warn("无法分析图片"); } });
Anda boleh melakukan sebarang pemprosesan untuk maklumat wajah yang diiktiraf. Anda boleh melukis bingkai di sekeliling muka dalam gambar:
jQuery("img").each(function() { var img = this; // 获取脸部坐标 var coordinates = jQuery(img).faceDetection(); // 在脸上画出框线 if(coordinates.length) { coordinates.forEach(function(coord) { jQuery("<div>", { css: { position: "absolute", left: coord.positionX + 5 + "px", top: coord.positionY + 5 + "px", width: coord.width + "px", height: coord.height + "px", border: "3px solid white" } }).appendTo(img.parentNode); }); } });
Ini sangat mudah, sudah tentu anda boleh melakukan pemprosesan yang kompleks, seperti pengekstrakan.
Saya menggunakan pelbagai gambar untuk mencuba pengecaman muka, dan seperti yang saya jangkakan, hasilnya tidak sempurna. Tetapi tidak kira, ia masih cukup bagus. Ini adalah teknik skrip yang sangat mudah, dan tiada teknik yang sempurna. Pemalam pengecaman muka ini tidak mempunyai fungsi perbandingan muka Anda perlu menggunakan kaedah lain dan memberikan maklumat ciri muka untuk mencapai fungsi ini. Secara keseluruhannya, ia cukup bagus dan saya amat mengesyorkan anda mencubanya.
Pustaka JavaScript pengecaman muka Tracking.js
Untuk pembangun web, perpustakaan JavaScript sumber terbuka Tracking.js memudahkan penglihatan komputer dan teknologi realiti tambahan Ia boleh digunakan untuk memaparkan aplikasi penderiaan gerakan dengan kesan yang serupa dengan Kinect atau Wii, dan pustaka JavaScript bersaiz kecil. (~ 7k), sangat ringan dan dengan antara muka yang mudah.
Tracking.js boleh berfungsi dalam aplikasi web mudah alih, aplikasi desktop, malah boleh digandingkan dengan pelayan berasaskan Node.js. Ia akan membawa algoritma dan teknologi grafik komputer ke penyemak imbas, dan ia mempunyai fungsi: pengecaman muka (apabila warna tertentu atau apabila seseorang/muka/badan bergerak), penjejakan warna masa nyata. Untuk pembangunan web, dahulunya adalah mungkin untuk mencapai kesan yang sama melalui teknologi C atau C. Kini Traking.js menyediakan komponen web, jadi pembangun bahagian hadapan web boleh mengakses komponen teg HTML untuk melaksanakan fungsi serupa tanpa mengetahui JavaScript, yang sangat memudahkan pembangunan web.
Tracking.js termasuk algoritma penjejakan warna dan komponen penjejakan objek yang membolehkan penyemak imbas web mengenali perubahan pada muka dan mata. Sebagai contoh, bahagian hadapan Web juga boleh menggunakan fungsi ini untuk menetapkan avatar pengguna, yang juga merupakan ciri yang menarik untuk beberapa tapak web pada masa yang sama, ia boleh memadankan data muka yang dijejaki dengan pangkalan data latar belakang untuk memberikan maklum balas yang lebih berguna; data pengguna.
Pada masa ini, projek kod sumber Tracking.js pada GitHub telah dicabang lebih daripada 200 kali pada awal Ogos, perpustakaan JS telah dinaik taraf kepada versi 1.0.
Kandungan di atas ialah teknologi pengecaman muka JavaScript dan pustaka JavaScript pengecaman muka Tracking.js yang dikongsi dengan anda.