changes
This commit is contained in:
parent
f0d6068307
commit
fb62ee246c
@ -3,7 +3,6 @@ from typing import List, Tuple
|
|||||||
|
|
||||||
import cv2
|
import cv2
|
||||||
import numpy
|
import numpy
|
||||||
from cv2.typing import Size
|
|
||||||
|
|
||||||
import facefusion.jobs.job_manager
|
import facefusion.jobs.job_manager
|
||||||
import facefusion.jobs.job_store
|
import facefusion.jobs.job_store
|
||||||
@ -44,6 +43,7 @@ MODEL_SET : ModelSet =\
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
'template': 'arcface_128_v2',
|
'template': 'arcface_128_v2',
|
||||||
|
'size': (224, 224)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -64,12 +64,6 @@ def get_model_options() -> ModelOptions:
|
|||||||
return MODEL_SET.get(deep_swapper_model)
|
return MODEL_SET.get(deep_swapper_model)
|
||||||
|
|
||||||
|
|
||||||
def get_model_size() -> Size:
|
|
||||||
deep_swapper = get_inference_pool().get('deep_swapper')
|
|
||||||
model_size = deep_swapper.get_outputs()[-1].shape[1:3]
|
|
||||||
return model_size
|
|
||||||
|
|
||||||
|
|
||||||
def register_args(program : ArgumentParser) -> None:
|
def register_args(program : ArgumentParser) -> None:
|
||||||
group_processors = find_argument_group(program, 'processors')
|
group_processors = find_argument_group(program, 'processors')
|
||||||
if group_processors:
|
if group_processors:
|
||||||
@ -117,7 +111,7 @@ def post_process() -> None:
|
|||||||
|
|
||||||
def swap_face(target_face : Face, temp_vision_frame : VisionFrame) -> VisionFrame:
|
def swap_face(target_face : Face, temp_vision_frame : VisionFrame) -> VisionFrame:
|
||||||
model_template = get_model_options().get('template')
|
model_template = get_model_options().get('template')
|
||||||
model_size = get_model_size()
|
model_size = get_model_options().get('size')
|
||||||
crop_vision_frame, affine_matrix = warp_face_by_face_landmark_5(temp_vision_frame, target_face.landmark_set.get('5/68'), model_template, model_size)
|
crop_vision_frame, affine_matrix = warp_face_by_face_landmark_5(temp_vision_frame, target_face.landmark_set.get('5/68'), model_template, model_size)
|
||||||
crop_vision_frame_raw = crop_vision_frame.copy()
|
crop_vision_frame_raw = crop_vision_frame.copy()
|
||||||
box_mask = create_static_box_mask(crop_vision_frame.shape[:2][::-1], state_manager.get_item('face_mask_blur'), state_manager.get_item('face_mask_padding'))
|
box_mask = create_static_box_mask(crop_vision_frame.shape[:2][::-1], state_manager.get_item('face_mask_blur'), state_manager.get_item('face_mask_padding'))
|
||||||
@ -171,7 +165,7 @@ def normalize_crop_frame(crop_vision_frame : VisionFrame) -> VisionFrame:
|
|||||||
|
|
||||||
|
|
||||||
def prepare_crop_mask(crop_source_mask : Mask, crop_target_mask : Mask) -> Mask:
|
def prepare_crop_mask(crop_source_mask : Mask, crop_target_mask : Mask) -> Mask:
|
||||||
model_size = get_model_size()
|
model_size = get_model_options().get('size')
|
||||||
crop_mask = numpy.maximum.reduce([ crop_source_mask, crop_target_mask ])
|
crop_mask = numpy.maximum.reduce([ crop_source_mask, crop_target_mask ])
|
||||||
crop_mask = crop_mask.reshape(model_size).clip(0, 1)
|
crop_mask = crop_mask.reshape(model_size).clip(0, 1)
|
||||||
crop_mask = cv2.erode(crop_mask, numpy.ones((5, 5), numpy.uint8), iterations = 1)
|
crop_mask = cv2.erode(crop_mask, numpy.ones((5, 5), numpy.uint8), iterations = 1)
|
||||||
|
Loading…
Reference in New Issue
Block a user