目录
经过仔细分析打磨,把人脸关键点裁剪增强整理了出来,原创不易,希望多多支持。
最新版:
有0.5概率是裁剪人脸原图,是在大图中抠出出人脸框,
还有0.5的概率是随机裁剪,计算鼻子到眼睛中心的角度,角度越大裁剪范围越少,角度越垂直,裁剪范围更广
class Rule_Crop_new(object):
def __init__(self, p):
self.p = p
self.box_ratio = 0.85
def __call__(self, img, points_o, box=None, img_path=None):
debug_show = False
# print(img_path)
img_h, img_w = img.shape[:2]
if box is None:
start_w_o, start_h_o, w_o, h_o = cv2.boundingRect(points_o.astype(np.int32))
a_w = int(max(w_o, h_o) * 1.2)
a_w = min(img_h, img_w, a_w)
else:
start_w_o, start_h_o, w_o, h_o = box
rand_v = random.randint(0, 4)
if rand_v < 2:
a_w = int(max(w_o, h_o) *