使用关键点裁剪人脸
x_min = min(pt2d[0,:])
y_min = min(pt2d[1,:])
x_max = max(pt2d[0,:])
y_max = max(pt2d[1,:])
center = np.array([x_max - (x_max - x_min) / 2.0,
y_max - (y_max - y_min) / 2.0])
old_size = (x_max - x_min + y_max - y_min) / 2
size = int(old_size * 1.5)
'''
tform = skimage.transform.estimate_transform('similarity', src_pts, DST_PTS)
img = skimage.transform.warp(img, tform.inverse, output_shape=(image_h, image_w))
'''
img = img.crop((int(center[0] - size / 2), int(center[1] - size / 2),
int(center[0] + size / 2), int(center[1] + size / 2)))
img = img.resize((256, 256))
参考文章:
https://www.coder.work/article/2005036