在Python中使用MTCNN从文件夹中的图像中提取人脸,可以按照以下步骤进行:
pip install mtcnn
。另外,还需要安装Pillow库用于图像处理:pip install pillow
。from mtcnn import MTCNN
from PIL import Image
import os
detector = MTCNN()
def extract_faces(image_path):
image = Image.open(image_path)
image = image.convert('RGB')
pixels = np.asarray(image)
results = detector.detect_faces(pixels)
faces = []
for result in results:
x, y, width, height = result['box']
face = pixels[y:y+height, x:x+width]
face = Image.fromarray(face)
face = face.resize((160, 160))
faces.append(face)
return faces
folder_path = 'path/to/folder'
faces = []
for filename in os.listdir(folder_path):
if filename.endswith('.jpg') or filename.endswith('.png'):
image_path = os.path.join(folder_path, filename)
extracted_faces = extract_faces(image_path)
faces.extend(extracted_faces)
需要注意的是,MTCNN是一种基于深度学习的人脸检测算法,可以在图像中检测到人脸的位置和关键点。它的优势在于能够检测到不同尺寸和姿态的人脸,并且具有较高的准确性和鲁棒性。
推荐的腾讯云相关产品是人脸识别(Face Recognition),该产品提供了丰富的人脸识别能力,包括人脸检测、人脸比对、人脸搜索等。你可以通过腾讯云人脸识别产品的官方文档了解更多信息:腾讯云人脸识别。
领取专属 10元无门槛券
手把手带您无忧上云