将FDDB图片中人脸截取后并保存的结果为
FDDB人脸数据集/python图像批量处理
正好5157个标注出的人脸

1.简介
FDDB,最具权威的人脸检测评测平台之一,包含2845张图片,共有5171个人脸作为测试集。测试集范围包括:不同姿势、不同分辨率、旋转和遮挡等图片,同时包括灰度图和彩色图,标准的人脸标注区域为椭圆形。
图片来源:美联社和路透社新闻报道图片,并删除了重复图片
2.人脸标注方式
FDDB人脸数据集/python图像批量处理
以椭圆来标注人脸位置,标注的结果如下:
FDDB人脸数据集/python图像批量处理
第一个为图片的存放位置,第二个为图片中人脸的数量,第三个为人脸的位置等信息
每个标注的椭圆形人脸由六个元素组成
(ra, rb, Θ, cx, cy, s)
ra,rb:半长轴、半短轴
cx, cy:椭圆中心点坐标
Θ:长轴与水平轴夹角(头往左偏Θ为正,头往右偏Θ为负)
s:置信度得分

3.批量截取人脸

from PIL import Image
import matplotlib.pyplot as plt

filename=(r'C:\Users\Administrator\Desktop\dataset\FDDB\FDDB-folds\FDDB-folds\FDDB-fold-01-ellipseList.txt')

data_list=[]

with open(filename) as f:
    
    for line in f.readlines():
        line=line.strip('\n')

        lst=line.split(' ')#将str转换为列表
        data_list.append(lst)

image_path=[]
face_num=[]
face_xy=[]

i=0
#将图片的存放位置,人脸数目,人脸位置分别存放在三个list中
while i < len(data_list):
    image_path.append(data_list[i][0])
    
    face_num.append(data_list[i+1][0])
    for n in range(int(data_list[i+1][0])):

        face_xy.append(data_list[i+n+2])
        
    i=i+int(data_list[i+1][0])+2
#截取人脸的范围的大小
a=1.2

k=0
n=0
while k <len(image_path):
    path=r'C:\Users\Administrator\Desktop\dataset\FDDB\originalPics\{}.jpg'.format(image_path[k])
    
    img=Image.open(path)
    j=0
    while j <int(face_num[k]):
        n=n+1
#        保存截取的人脸的路径
        save_path=r'C:\Users\Administrator\Desktop\dataset\faces\{}.jpg'.format(n)
        xy=face_xy.pop(0)
#FDDB中给出的人脸位置标注是以椭圆形式给出的,根据椭圆的中心位置以及短轴、长轴的长度算出人脸框位置
        x1=int(float(xy[3]))-a*int(float(xy[1]))
        y1=int(float(xy[4]))-a*int(float(xy[0]))
        x2=int(float(xy[3]))+a*int(float(xy[1]))
        y2=int(float(xy[4]))+a*int(float(xy[0]))

        box=(x1,y1,x2,y2)
        img_cut=img.crop(box)
        img_cut.save(save_path)
#        plt.imshow(img_cut)
#        plt.show()
        
        j=j+1
        
    k=k+1

相关文章:

  • 2022-12-23
  • 2021-11-30
  • 2022-01-08
  • 2022-12-23
  • 2021-08-01
  • 2021-12-05
  • 2021-04-15
猜你喜欢
  • 2021-07-24
  • 2020-10-19
  • 2021-11-27
  • 2021-07-15
  • 2022-12-23
  • 2021-12-22
相关资源
相似解决方案