Praktische Demonstration: Verwenden Sie Python, um Testcode für die Gesichtserkennung zu schreiben, damit Ihre Anwendung eine intelligente Wahrnehmung erhält

Gesichtserkennung ist eine wichtige Anwendung im Bereich Computer Vision. Es verwendet Computeralgorithmen zur Identifizierung und Überprüfung von Gesichtsmerkmalen und wird häufig zur Sicherheitsauthentifizierung, Videoüberwachung, zum Gesichtsvergleich usw. verwendet. In den letzten Jahren wurde mit der Entwicklung der Deep-Learning-Technologie die Leistung der Gesichtserkennung erheblich verbessert und ist zu einem wichtigen Bestandteil intelligenter Wahrnehmungsanwendungen geworden. In diesem Artikel verwenden wir Python, um Testcode für die Gesichtserkennung zu schreiben, sodass Ihre Anwendung auch über IntelliSense verfügen kann.

1. Umweltvorbereitung

Bevor wir beginnen, müssen wir die Python-Umgebung und die zugehörigen abhängigen Bibliotheken vorbereiten. Im Folgenden sind die wichtigsten Bibliotheken aufgeführt, die wir verwenden müssen:

OpenCV: eine Computer-Vision-Bibliothek, die verschiedene Bild- und Videoverarbeitungsfunktionen bereitstellt;
NumPy: eine numerische Computerbibliothek zur effizienten Verarbeitung von Arrays und Matrizen;
face_recognition: eine auf Deep Learning basierende Gesichtserkennungsbibliothek, die trainierte Gesichter erkennt und identifiziert Modelle.
Die Installationsmethode kann mit dem Befehl pip abgeschlossen werden. Der spezifische Befehl lautet wie folgt:

pip install opencv-python numpy face_recognition

2. Gesichtserkennung

Bevor wir die Gesichtserkennung durchführen, müssen wir zunächst die Gesichter im Bild erkennen. In diesem Artikel verwenden wir den Gesichtserkennungsalgorithmus in der face_recognition-Bibliothek. Basierend auf Deep Learning kann der Algorithmus menschliche Gesichter in Bildern schnell und genau erkennen.

Hier ist ein einfaches Codebeispiel, das zeigt, wie die face_recognition-Bibliothek zur Gesichtserkennung verwendet wird:

import face_recognition
import cv2

# 加载图像
image = cv2.imread('test.jpg')

# 将图像从BGR格式转换为RGB格式
rgb_image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

# 检测图像中的所有人脸
face_locations = face_recognition.face_locations(rgb_image)

# 在图像中绘制人脸框
for (top, right, bottom, left) in face_locations:
    cv2.rectangle(image, (left, top), (right, bottom), (0, 255, 0), 2)

# 显示结果图像
cv2.imshow('Image', image)
cv2.waitKey(0)

Nach dem Ausführen des Codes wird das Originalbild im Fenster angezeigt und der erkannte Gesichtsrahmen wird im Bild markiert.

3. Gesichtserkennung

Bei der Gesichtserkennung wird ein erkanntes Gesicht mit bekannten Gesichtern verglichen, um dessen Identität festzustellen. In diesem Artikel verwenden wir den Gesichtserkennungsalgorithmus in der face_recognition-Bibliothek. Der Algorithmus nutzt Deep-Learning-Technologie, um Gesichter effizient zu erkennen und Identitäten zu vergleichen.

Hier ist ein einfaches Codebeispiel, das zeigt, wie die Bibliothek face_recognition zur Gesichtserkennung verwendet wird:

import face_recognition
import cv2

# 加载已知人脸图像和对应的身份信息
known_faces = [
    face_recognition.load_image_file("person1.jpg"),
    face_recognition.load_image_file("person2.jpg"),
    face_recognition.load_image_file("person3.jpg"),
]
known_names = ["Person 1", "Person 2", "Person 3"]

# 加载测试图像
image = cv2.imread('test.jpg')

# 将图像从BGR格式转换为RGB格式
rgb_image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

# 检测图像中的所有人脸
face_locations = face_recognition.face_locations(rgb_image)
face_encodings = face_recognition.face_encodings(rgb_image, face_locations)

# 遍历所有检测到的人脸,进行比对
for face_encoding in face_encodings:
    # 与已知人脸进行比对
    matches = face_recognition.compare_faces(known_faces, face_encoding)
    name = "Unknown"
    # 找到最佳匹配的人脸
    if True in matches:
        match_index = matches.index(True)
        name = known_names[match_index]
    # 在图像中绘制人脸框和身份信息
    top, right, bottom, left = face_locations[0]
    cv2.rectangle(image, (left, top), (right, bottom), (0, 255, 0), 2)
    cv2.putText(image, name, (left + 6, bottom - 6), cv2.FONT_HERSHEY_SIMPLEX, 1.0, (0, 255, 0), 1)

# 显示结果图像
cv2.imshow('Image', image)
cv2.waitKey(0)

Nach dem Ausführen des Codes wird das Originalbild im Fenster angezeigt und der erkannte Gesichtsrahmen sowie die entsprechenden Identitätsinformationen werden im Bild markiert.

Viertens. Zusammenfassung

In diesem Artikel schreiben wir mit Python Testcodes für die Gesichtserkennung und Gesichtserkennung und zeigen, wie wir diese Funktionen mit der Bibliothek face_recognition implementieren. Die Gesichtserkennungstechnologie wird in modernen intelligenten Wahrnehmungsanwendungen häufig eingesetzt, z. B. bei der Zugangskontrolle durch Gesichtserkennung, beim Gesichtsvergleich, bei der Zahlung mit Gesichtserkennung usw. Die Verwendung von Python zum Schreiben von Gesichtserkennungscode kann uns dabei helfen, schnell Anwendungen mit intelligenter Wahrnehmung zu entwickeln.

Supongo que te gusta

Origin blog.csdn.net/weixin_46780832/article/details/129201596
Recomendado
Clasificación