OpenCV 简单的人脸识别
发布日期:2021-05-10 03:23:25 浏览次数:17 分类:精选文章

本文共 3137 字,大约阅读时间需要 10 分钟。

OpenCV������������������������������������������������������������������������������������������������������XML���������������������������������������������������������������������������

detection_face_example.py

import cv2 as cv
# ������������
img = cv.imread("img.png")
gray = cv.cvtColor(img, cv.COLOR_BGR2GRAY)
# ���������OpenCV���������������������������������
face_cas = cv.CascadeClassifier("haarcascade_frontalface_default.xml")
eyes_cas = cv.CascadeClassifier("haarcascade_eye.xml")
# ���������������������
faceRects = face_cas.detectMultiScale(gray, scaleFactor=1.2, minNeighbors=3, minSize=(32, 32))
for faceRect in faceRects:
x, y, w, h = faceRect
# ���������������
cv.rectangle(img, (x, y), (x + h, y + w), (0, 255, 0), 3)
# ���������������������������������
roi_color = img[y:y+h, x:x+w]
roi_gray = gray[y:y+h, x:x+w]
eyes = eyes_cas.detectMultiScale(roi_gray)
for (ex, ey, ew, eh) in eyes:
cv.rectangle(roi_color, (ex, ey), (ex+ew, ey+eh), (0, 255, 0), 2)
# ������������������
plt.figure(figsize=(8, 6), dpi=100)
plt.imshow(img[:, :, ::-1]) # ������������BGR���������RGB
plt.title('���������������������������')
plt.xticks([]), plt.yticks([])
plt.show()

camera_detection_example.py

import cv2 as cv
# ���������������
cap = cv.VideoCapture(0)
while cap.isOpened():
ret, frame = cap.read()
if ret == True:
gray = cv.cvtColor(frame, cv.COLOR_BGR2GRAY)
# ���������OpenCV������������������������
face_cas = cv.CascadeClassifier("haarcascade_frontalface_default.xml")
# ������������
faceRects = face_cas.detectMultiScale(gray, scaleFactor=1.2, minNeighbors=3, minSize=(32, 32))
for faceRect in faceRects:
x, y, w, h = faceRect
# ���������������
cv.rectangle(frame, (x, y), (x + h, y + w), (0, 255, 0), 3)
# ���������������
cv.imshow("������������", frame)
# ������ q���������
if cv.waitKey(1) & amp; 0xFF == ord('q'):
break
cap.release()
cv.destroyAllWindows()

XML���������������������

��������� ������
haarcascade_lefteye_2splits.xml ������������������������������������
haarcascade_eye.xml ������������������������������������
haarcascade_eye_tree_eyeglasses.xml ���������������������������������������������������
haarcascade_frontalcatface.xml ������������
haarcascade_frontalcatface_extended.xml ���������������������������
haarcascade_smile.xml ������������
haarcascade_upperbody.xml ������������������������
haarcascade_russian_plate_number.xml ���������������������
haarcascade_righteye_2splits.xml ������������������������������������
haarcascade_profileface.xml ������������
haarcascade_lowerbody.xml ������������������������
licence_plate_rus_16stages.xml ������������������������
haarcascade_fullbody.xml ������������
haarcascade_frontalface_default.xml ������������
haarcascade_frontalface_alt2.xml ������������������������������
haarcascade_frontalface_alt_tree.xml ���������������������������
haarcascade_frontalface_alt.xml ���������������������������������������
上一篇:OpenCV camshift目标追踪
下一篇:OpenCV meanshift目标追踪

发表评论

最新留言

做的很好,不错不错
[***.243.131.199]2025年04月14日 05时06分31秒