欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

html5 實現人臉識別代碼

張吉惟2年前10瀏覽0評論

隨著HTML5技術的不斷發展,人臉識別已成為一個非常熱門的研究領域。HTML5實現人臉識別的代碼相較于傳統的人臉識別技術,具有更高的實時性和更便于使用的特點,使得人臉識別得以應用于更加廣泛的領域。

/*
* 首先,引進必要的庫
*//*
* 然后,定義一些需要用到的全局變量
*/
var video = null; // 視頻流
var canvas = null; // canvas畫板
var context = null; // 畫板上下文
var videoWidth = 0; // 視頻寬度
var videoHeight = 0; // 視頻高度
/*
* 初始化函數
*/
function init() {
navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia;
video = document.getElementById('video');
canvas = document.getElementById('canvas');
context = canvas.getContext('2d');
navigator.getUserMedia({
video: true
}, function (stream) {
video.srcObject = stream;
video.play();
}, function () {
alert('拍照權限獲取失敗!');
});
video.addEventListener('play', function () {     //添加play事件監聽器
videoWidth = video.videoWidth;
videoHeight = video.videoHeight;
canvas.width = videoWidth;
canvas.height = videoHeight;
setInterval(function () {   //每隔1秒取一幀圖
context.drawImage(video, 0, 0, videoWidth, videoHeight);
detectFace();           //開始人臉識別
}, 1000);
}, false);
}
/*
* 人臉識別函數
*/
function detectFace() {
var faces = null;
faceapi.detectAllFaces(canvas).then(function (allFaces) {
faces = allFaces;
context.clearRect(0, 0, canvas.width, canvas.height);
context.drawImage(video, 0, 0, videoWidth, videoHeight);
if (faces.length >0) {
context.strokeStyle = '#00ff00';
context.lineWidth = 2;
context.beginPath();
context.rect(faces[0].box.left, faces[0].box.top, faces[0].box.width,faces[0].box.height);
context.stroke();
}
});
}
/*
* 最后,運行初始化函數
*/
init();

通過以上代碼,我們可以實現html5人臉識別功能,只需通過視頻流,就能進行非常準確的人臉識別操作。而在面部識別技術的應用中,html5實現的人臉識別應用擁有更大的應用空間。