调用CascadeObjectDetector时如何修改人脸框的线条粗细
时间: 2023-05-27 11:06:11 浏览: 80
组合框中画线,线类型设定、粗细设定
4星 · 用户满意度95%
在调用CascadeObjectDetector时,可以使用detect方法返回的bbox作为人脸框的坐标,然后使用OpenCV中的rectangle函数绘制人脸框。在绘制时,可以指定线条的粗细(即线条的宽度),例如:
```python
import cv2
import numpy as np
import matplotlib.pyplot as plt
from cv2 import CascadeClassifier
# 加载人脸检测器
face_cascade = CascadeClassifier('haarcascade_frontalface_default.xml')
# 加载图像
img = cv2.imread('test.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)
# 显示图像
plt.imshow(cv2.cvtColor(img, cv2.COLOR_BGR2RGB))
plt.show()
```
在上述代码中,cv2.rectangle函数的第四个参数是线条的宽度,可以根据需要进行调整。
阅读全文