我一直對人工智慧辨識技術非常感興趣,因為我無法想像這究竟是一種什麼樣的演算法,什麼樣的分析過程。無論是聲音辨識、人臉辨識或其它種識別,人們的外表、說話的方式都是如此不同,一種圖片你可以用不同的方式、從不同的角度拍攝,我不能理解這些辨識技術是如何做到的。有個叫做「面具」的遊戲也使用了這種辨識技術,我想對於臉部辨識技術也應該研究一下。 Facebook使用了這種技術,在手勢控制中也能用到它,所以,你網站上也會有應用的地方。
我找到的一個可以用於人臉辨識的JavaScript程式包是Face Detection,它是由Jay Salvat和Liu Liu開發的。它是一個標準的jQuery插件,透過對提供的圖片進行分析,傳回所有找到的臉部影像的座標。下面我們就來看看它是如何使用的!
jQuery.faceDetection
使用Face Detection這個jQuery plugin,你需要引入四個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>
這個臉部辨識插件的頭兩個檔案裡是它的各種功能性程序,透過它們能得到一個陣列對象,這些對象裡儲存的就是圖片裡的臉部座標資訊。下面是一個例子:
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, } */
你也可以在偵測方法上加入事件回呼函數:
var coords = jQuery("#myImage").faceDetection({ complete: function(image, coords) { // Do something }, error: function() { console.warn("无法分析图片"); } });
對於辨識出的臉部訊息,你可以做任何的處理東西。你可以在圖片中臉部的位置畫出框線:
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); }); } });
這很簡單,當然你可以做複雜的處理,比如說提取出來。
我用了各種圖片進行臉部辨識嘗試,正如我預想到的,結果並不是很完美。但不管怎樣,還是相當不錯的。這是一個很簡單的腳本技術,而且沒有任何技術是十全十美的。這個臉部辨識插件並不具有臉部比較功能,你需要用其它方法並提供臉部特徵資訊來實現此功能。總之,相當不錯,強烈建議你試試看。
臉部辨識JavaScript類別庫Tracking.js
對Web開發者而言,開源的JavaScript庫Tracking.js正在使電腦視覺和擴增實境技術變得簡單, 使用它可以展示效果類似Kinect或Wii的體感應用,且該JavaScript庫體積小(~ 7k),非常輕量級,且介面簡潔。
Tracking.js 能夠在行動網路應用程式、桌面應用程式中運作,甚至可以和基於Node.js的伺服器進行配對。 它會為瀏覽器帶來電腦圖形學演算法和技術,其擁有功能:臉部辨識(某個特定的顏色時或人物/臉龐/身體出現移動的時候)、即時色彩追蹤。對於Web開發而言,以前需要透過C或C 的技術才能達到類似效果。而現在Traking.js提供了一個網頁元件,因此Web前端開發人員可以存取HTML標籤元件來實現類似功能,而無需了解JavaScript,這極大的簡化了網路開發。
Tracking.js包含一個色彩追蹤演算法和物件追蹤元件,它能使網頁瀏覽器辨識臉部及眼睛的變化。例如,Web前端還可以對於用這個功能來設定用戶頭像,對一些網站而言,這也是個很炫的功能;同時對跟踪的臉部數據和後台數據庫進行匹配,從而和反饋給用戶更多有用的數據。
目前,在GitHub上Tracking.js源碼工程已經被Fork了200次以上,8月份上旬,該JS庫已經升級為1.0版本。
以上內容就是跟大家分享的JavaScript人臉辨識技術及臉部辨識JavaScript類別庫Tracking.js,希望大家喜歡。

JavaScript是現代網站的核心,因為它增強了網頁的交互性和動態性。 1)它允許在不刷新頁面的情況下改變內容,2)通過DOMAPI操作網頁,3)支持複雜的交互效果如動畫和拖放,4)優化性能和最佳實踐提高用戶體驗。

C 和JavaScript通過WebAssembly實現互操作性。 1)C 代碼編譯成WebAssembly模塊,引入到JavaScript環境中,增強計算能力。 2)在遊戲開發中,C 處理物理引擎和圖形渲染,JavaScript負責遊戲邏輯和用戶界面。

JavaScript在網站、移動應用、桌面應用和服務器端編程中均有廣泛應用。 1)在網站開發中,JavaScript與HTML、CSS一起操作DOM,實現動態效果,並支持如jQuery、React等框架。 2)通過ReactNative和Ionic,JavaScript用於開發跨平台移動應用。 3)Electron框架使JavaScript能構建桌面應用。 4)Node.js讓JavaScript在服務器端運行,支持高並發請求。

Python更適合數據科學和自動化,JavaScript更適合前端和全棧開發。 1.Python在數據科學和機器學習中表現出色,使用NumPy、Pandas等庫進行數據處理和建模。 2.Python在自動化和腳本編寫方面簡潔高效。 3.JavaScript在前端開發中不可或缺,用於構建動態網頁和單頁面應用。 4.JavaScript通過Node.js在後端開發中發揮作用,支持全棧開發。

C和C 在JavaScript引擎中扮演了至关重要的角色,主要用于实现解释器和JIT编译器。1)C 用于解析JavaScript源码并生成抽象语法树。2)C 负责生成和执行字节码。3)C 实现JIT编译器,在运行时优化和编译热点代码,显著提高JavaScript的执行效率。

JavaScript在現實世界中的應用包括前端和後端開發。 1)通過構建TODO列表應用展示前端應用,涉及DOM操作和事件處理。 2)通過Node.js和Express構建RESTfulAPI展示後端應用。

JavaScript在Web開發中的主要用途包括客戶端交互、表單驗證和異步通信。 1)通過DOM操作實現動態內容更新和用戶交互;2)在用戶提交數據前進行客戶端驗證,提高用戶體驗;3)通過AJAX技術實現與服務器的無刷新通信。

理解JavaScript引擎內部工作原理對開發者重要,因為它能幫助編寫更高效的代碼並理解性能瓶頸和優化策略。 1)引擎的工作流程包括解析、編譯和執行三個階段;2)執行過程中,引擎會進行動態優化,如內聯緩存和隱藏類;3)最佳實踐包括避免全局變量、優化循環、使用const和let,以及避免過度使用閉包。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)