Heim >Backend-Entwicklung >Python-Tutorial >Beispiel für Gesichtserkennung in Python
Mit der kontinuierlichen Weiterentwicklung der Computertechnologie erhält die Technologie der künstlichen Intelligenz immer mehr Aufmerksamkeit und Anwendung, wobei die Gesichtserkennungstechnologie die beliebteste Richtung ist. Als eine der derzeit beliebtesten Programmiersprachen wird Python zunehmend in der Gesichtserkennung eingesetzt. In diesem Artikel werden Beispiele für die Gesichtserkennung in Python vorgestellt.
1. OpenCV
OpenCV ist eine Open-Source-Computer-Vision-Bibliothek, die eine Vielzahl algorithmischer Bildverarbeitungs- und Computer-Vision-Methoden bereitstellt. In Python können wir OpenCV verwenden, um die Gesichtserkennung zu implementieren.
Zuerst müssen Sie das OpenCV-Modul importieren:
import cv2
Dann verwenden Sie die von OpenCV bereitgestellte Funktion CascadeClassifier
zur Gesichtserkennung: CascadeClassifier
函数进行人脸识别:
face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
其中,haarcascade_frontalface_default.xml
是OpenCV中提供的一个预训练模型,用于检测人脸。
接着,我们需要读取图像并进行处理:
img = cv2.imread('test.jpg') gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
其中,test.jpg
是待处理的图片,cvtColor
函数将图像转换为灰度图像。
最后,在处理后的图像上进行人脸识别:
faces = face_cascade.detectMultiScale(gray, 1.3, 5) for (x,y,w,h) in faces: cv2.rectangle(img,(x,y),(x+w,y+h),(255,0,0),2)
其中,detectMultiScale
函数用于检测图像中的人脸,返回的是人脸框的坐标和大小。最后,我们使用rectangle
函数将人脸框画在原始图像上。
二、face_recognition
face_recognition是一个基于dlib和Python的人脸识别库,其使用了深度学习的方法进行人脸识别,具有较高的精度和鲁棒性。
使用前需要先安装face_recognition库:
pip install face_recognition
然后,我们需要读取图片并进行处理:
import face_recognition import matplotlib.pyplot as plt image = face_recognition.load_image_file("test.jpg") face_locations = face_recognition.face_locations(image) plt.imshow(image)
其中,face_recognition.load_image_file
函数用于读取图片,face_recognition.face_locations
函数用于对图片进行人脸位置的检测。
最后,我们可以在图像中标出人脸的位置:
import numpy as np import cv2 for face_location in face_locations: top, right, bottom, left = face_location cv2.rectangle(image, (left, top), (right, bottom), (0, 0, 255), 2) plt.imshow(image)
其中,cv2.rectangle
rrreee
haarcascade_frontalface_default.xml
In OpenCV wird ein vorab trainiertes Modell zur Gesichtserkennung bereitgestellt. Als nächstes müssen wir das Bild lesen und verarbeiten: rrreee
Unter anderem isttest.jpg
das zu verarbeitende Bild, und die Funktion cvtColor
konvertiert das Bild in ein Graustufenbild umwandeln. 🎜🎜Schließlich wird die Gesichtserkennung am verarbeiteten Bild durchgeführt: 🎜rrreee🎜 Unter anderem wird die Funktion detectMultiScale
verwendet, um das Gesicht im Bild zu erkennen und die Koordinaten und die Größe des Gesichtsrahmens zurückzugeben. Schließlich verwenden wir die Funktion Rechteck
, um den Gesichtsrahmen auf dem Originalbild zu zeichnen. 🎜🎜2. face_recognition🎜🎜face_recognition ist eine Gesichtserkennungsbibliothek, die auf dlib und Python basiert. Sie verwendet Deep-Learning-Methoden zur Gesichtserkennung und weist eine hohe Genauigkeit und Robustheit auf. 🎜🎜Sie müssen die face_recognition-Bibliothek vor der Verwendung installieren: 🎜rrreee🎜Dann müssen wir das Bild lesen und verarbeiten: 🎜rrreee🎜Unter anderem wird die Funktion face_recognition.load_image_file
zum Lesen verwendet image, face_recognition Die Funktion .face_locations
wird verwendet, um Gesichtspositionen in Bildern zu erkennen. 🎜🎜Schließlich können wir die Position des Gesichts im Bild markieren: 🎜rrreee🎜 Unter anderem wird die Funktion cv2.rectangle
verwendet, um einen rechteckigen Rahmen auf dem Originalbild zu markieren, um die Position von anzuzeigen das Gesicht. 🎜🎜Fazit🎜🎜Das Anwendungsspektrum der Gesichtserkennungstechnologie wird immer umfangreicher. Als eine der derzeit beliebtesten Programmiersprachen weist Python auch hervorragende Leistungen im Bereich der Gesichtserkennung auf. Die beiden oben vorgestellten Beispiele ermöglichen es uns, Gesichtserkennungsfunktionen durch die Verwendung von OpenCV- und face_recognition-Bibliotheken bequemer und schneller zu implementieren. 🎜Das obige ist der detaillierte Inhalt vonBeispiel für Gesichtserkennung in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!