在OpenCV中使用圆形边框模糊人脸的步骤如下:
import cv2
import numpy as np
face_cascade = cv2.CascadeClassifier('path/to/haarcascade_frontalface_default.xml')
image = cv2.imread('path/to/image.jpg')
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
faces = face_cascade.detectMultiScale(gray, scaleFactor=1.1, minNeighbors=5, minSize=(30, 30))
for (x, y, w, h) in faces:
# 提取人脸区域
face_roi = image[y:y+h, x:x+w]
# 创建圆形掩膜
mask = np.zeros((h, w), dtype=np.uint8)
center = (x + w // 2, y + h // 2)
radius = min(w, h) // 2
cv2.circle(mask, center, radius, (255, 255, 255), -1)
# 应用模糊效果
blurred_face = cv2.GaussianBlur(face_roi, (99, 99), 30)
# 将模糊后的人脸区域放回原图像
image[y:y+h, x:x+w] = cv2.bitwise_and(blurred_face, blurred_face, mask=mask)
cv2.imshow('Blurred Faces', image)
cv2.waitKey(0)
cv2.destroyAllWindows()
这样就可以在OpenCV中使用圆形边框模糊人脸了。
推荐的腾讯云相关产品:腾讯云人脸识别(https://cloud.tencent.com/product/fr)
领取专属 10元无门槛券
手把手带您无忧上云