Maison > Article > développement back-end > PHP appelle la caméra pour la reconnaissance faciale : exploration des bases à l'application
PHP appelle la caméra pour la reconnaissance faciale : Exploration des bases à l'application
Résumé : Avec le développement de la technologie de l'intelligence artificielle, la reconnaissance faciale est devenue une application importante. Cet article explique comment utiliser PHP pour appeler la caméra pour la reconnaissance faciale et fournit des exemples de code pertinents.
Introduction :
La reconnaissance faciale est une technologie de reconnaissance d'identité basée sur la biométrie faciale, qui peut être largement utilisée dans la surveillance de la sécurité, le paiement facial, le contrôle d'accès facial et d'autres domaines. Avec la popularité des smartphones et des appareils intelligents, la technologie de reconnaissance faciale a commencé à se développer rapidement dans le domaine mobile. Cet article explique comment utiliser PHP pour appeler la caméra pour la reconnaissance faciale et implémenter quelques applications simples.
1. Préparation
Installer OpenCV
OpenCV est une bibliothèque de vision par ordinateur open source qui fournit une richesse de fonctions liées au traitement d'images et à la vision par ordinateur. Pour utiliser OpenCV en PHP, vous devez d'abord installer l'extension PHP OpenCV. Vous pouvez utiliser la commande suivante pour installer :
sudo apt-get install php7.4-opencv
2. Appeler la caméra avec PHP
Utiliser PHP pour appeler la caméra nécessite l'utilisation des fonctions d'interface fournies par la bibliothèque OpenCV. Ce qui suit est un exemple de code PHP simple pour appeler la caméra et afficher des images en direct.
<?php // 创建一个新的画布 $canvas = imagecreatetruecolor(640, 480); // 创建一个摄像头对象 $camera = cvCreateCameraCapture(0); while (true) { // 从摄像头中读取一帧图像 $frame = cvQueryFrame($camera); // 将图像绘制到画布上 imagejpeg($canvas, 'tmp.jpg'); // 显示图像 echo "<img src="tmp.jpg" />"; // 按下ESC键退出循环 $key = ord(cvWaitKey(1)); if ($key == 27) { break; } } // 释放摄像头和画布资源 cvReleaseCapture($camera); imagedestroy($canvas); ?>
L'exécution du code ci-dessus affichera une page Web qui affiche les images capturées par la caméra en temps réel. Appuyez sur la touche ESC pour quitter le programme.
3. Reconnaissance faciale
Avant d'introduire la reconnaissance faciale, nous devons également installer une extension PHP - FaceRecognizer. Il peut être installé à l'aide de la commande suivante :
sudo apt-get install php7.4-faceRecognizer
Voici un exemple de code simple pour la reconnaissance faciale :
<?php // 加载人脸识别模型 $model = cvLoad("/path/to/model.xml"); // 创建一个人脸分类器 $faceCascade = cvLoadHaarClassifierCascade("/path/to/haarcascade_frontalface_default.xml"); // 从摄像头中读取一帧图像 $frame = cvQueryFrame($camera); // 转换为灰度图像 $gray = cvCreateImage(cvGetSize($frame), IPL_DEPTH_8U, 1); cvCvtColor($frame, $gray, CV_RGB2GRAY); // 检测人脸 $faces = cvHaarDetectObjects($gray, $faceCascade, $model, 1.1, 2, CV_HAAR_SCALE_IMAGE, cvSize(30, 30)); // 绘制人脸区域 foreach ($faces as $face) { cvRectangle($frame, $face->x, $face->y, $face->x + $face->width, $face->y + $face->height, CV_RGB(0, 255, 0), 3); } // 显示图像 imagejpeg($canvas, 'tmp.jpg'); echo "<img src="tmp.jpg" />"; // 释放资源 cvReleaseImage($gray); cvReleaseImage($frame); cvReleaseHaarClassifierCascade($faceCascade); cvReleaseCapture($camera); ?>
Le code ci-dessus détectera les visages dans les images capturées par la caméra et les marquera avec une case verte. Certains traitements supplémentaires peuvent être effectués en fonction des besoins réels, comme la détermination de l'émotion et du sexe du visage.
Conclusion :
Cet article explique comment utiliser PHP pour appeler la caméra pour la reconnaissance faciale. Les lecteurs peuvent développer et améliorer davantage leurs propres applications de reconnaissance faciale en fonction d'exemples de code et de besoins spécifiques. Avec le développement continu de la technologie de l’intelligence artificielle, on pense que la reconnaissance faciale jouera un rôle important dans davantage de domaines.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!