opencv基于Python实现人脸识别
时间: 2023-12-27 10:05:29 浏览: 30
使用 OpenCV 实现人脸识别基本步骤如下:
1. 导入 OpenCV 库和其他必要的库
```python
import cv2
import numpy as np
import os
```
2. 加载训练好的分类器
```python
face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
```
3. 加载图像并将其转换为灰度图像
```python
img = cv2.imread('image.jpg')
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
```
4. 检测图像中的人脸
```python
faces = face_cascade.detectMultiScale(gray, scaleFactor=1.1, minNeighbors=5)
```
5. 在图像中标记人脸
```python
for (x, y, w, h) in faces:
cv2.rectangle(img, (x, y), (x+w, y+h), (0, 255, 0), 2)
```
6. 显示标记好的图像
```python
cv2.imshow('img', img)
cv2.waitKey()
```
完整代码如下:
```python
import cv2
import numpy as np
import os
# 加载训练好的分类器
face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
# 加载图像并将其转换为灰度图像
img = cv2.imread('image.jpg')
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 检测图像中的人脸
faces = face_cascade.detectMultiScale(gray, scaleFactor=1.1, minNeighbors=5)
# 在图像中标记人脸
for (x, y, w, h) in faces:
cv2.rectangle(img, (x, y), (x+w, y+h), (0, 255, 0), 2)
# 显示标记好的图像
cv2.imshow('img', img)
cv2.waitKey()
```
运行以上代码后,将会显示标记好人脸的图像。