diff --git a/DFLIMG/DFLJPG.py b/DFLIMG/DFLJPG.py index 69764a0..10f0c21 100644 --- a/DFLIMG/DFLJPG.py +++ b/DFLIMG/DFLJPG.py @@ -181,7 +181,6 @@ class DFLJPG(object): source_landmarks=None, image_to_face_mat=None, fanseg_mask=None, - pitch_yaw_roll=None, eyebrows_expand_mod=None, relighted=None, **kwargs @@ -206,7 +205,6 @@ class DFLJPG(object): 'source_landmarks': source_landmarks, 'image_to_face_mat': image_to_face_mat, 'fanseg_mask' : fanseg_mask, - 'pitch_yaw_roll' : pitch_yaw_roll, 'eyebrows_expand_mod' : eyebrows_expand_mod, 'relighted' : relighted }) @@ -219,7 +217,6 @@ class DFLJPG(object): source_landmarks=None, image_to_face_mat=None, fanseg_mask=None, - pitch_yaw_roll=None, eyebrows_expand_mod=None, relighted=None, **kwargs @@ -232,7 +229,6 @@ class DFLJPG(object): if source_landmarks is None: source_landmarks = self.get_source_landmarks() if image_to_face_mat is None: image_to_face_mat = self.get_image_to_face_mat() if fanseg_mask is None: fanseg_mask = self.get_fanseg_mask() - if pitch_yaw_roll is None: pitch_yaw_roll = self.get_pitch_yaw_roll() if eyebrows_expand_mod is None: eyebrows_expand_mod = self.get_eyebrows_expand_mod() if relighted is None: relighted = self.get_relighted() DFLJPG.embed_data (filename, face_type=face_type, @@ -243,7 +239,6 @@ class DFLJPG(object): source_landmarks=source_landmarks, image_to_face_mat=image_to_face_mat, fanseg_mask=fanseg_mask, - pitch_yaw_roll=pitch_yaw_roll, relighted=relighted) def remove_ie_polys(self): @@ -319,8 +314,6 @@ class DFLJPG(object): if fanseg_mask is not None: return np.clip ( np.array (fanseg_mask) / 255.0, 0.0, 1.0 )[...,np.newaxis] return None - def get_pitch_yaw_roll(self): - return self.dfl_dict.get ('pitch_yaw_roll', None) def get_eyebrows_expand_mod(self): return self.dfl_dict.get ('eyebrows_expand_mod', None) def get_relighted(self): diff --git a/DFLIMG/DFLPNG.py b/DFLIMG/DFLPNG.py index edee5e1..d50a489 100644 --- a/DFLIMG/DFLPNG.py +++ b/DFLIMG/DFLPNG.py @@ -297,7 +297,6 @@ class DFLPNG(object): source_landmarks=None, image_to_face_mat=None, fanseg_mask=None, - pitch_yaw_roll=None, eyebrows_expand_mod=None, relighted=None, **kwargs @@ -322,7 +321,6 @@ class DFLPNG(object): 'source_landmarks': source_landmarks, 'image_to_face_mat':image_to_face_mat, 'fanseg_mask' : fanseg_mask, - 'pitch_yaw_roll' : pitch_yaw_roll, 'eyebrows_expand_mod' : eyebrows_expand_mod, 'relighted' : relighted }) @@ -335,7 +333,6 @@ class DFLPNG(object): source_landmarks=None, image_to_face_mat=None, fanseg_mask=None, - pitch_yaw_roll=None, eyebrows_expand_mod=None, relighted=None, **kwargs @@ -348,7 +345,6 @@ class DFLPNG(object): if source_landmarks is None: source_landmarks = self.get_source_landmarks() if image_to_face_mat is None: image_to_face_mat = self.get_image_to_face_mat() if fanseg_mask is None: fanseg_mask = self.get_fanseg_mask() - if pitch_yaw_roll is None: pitch_yaw_roll = self.get_pitch_yaw_roll() if eyebrows_expand_mod is None: eyebrows_expand_mod = self.get_eyebrows_expand_mod() if relighted is None: relighted = self.get_relighted() @@ -360,7 +356,6 @@ class DFLPNG(object): source_landmarks=source_landmarks, image_to_face_mat=image_to_face_mat, fanseg_mask=fanseg_mask, - pitch_yaw_roll=pitch_yaw_roll, eyebrows_expand_mod=eyebrows_expand_mod, relighted=relighted) @@ -426,8 +421,6 @@ class DFLPNG(object): if fanseg_mask is not None: return np.clip ( np.array (fanseg_mask) / 255.0, 0.0, 1.0 )[...,np.newaxis] return None - def get_pitch_yaw_roll(self): - return self.dfl_dict.get ('pitch_yaw_roll', None) def get_eyebrows_expand_mod(self): return self.dfl_dict.get ('eyebrows_expand_mod', None) def get_relighted(self): diff --git a/mainscripts/Extractor.py b/mainscripts/Extractor.py index 0530ce8..74fe9bf 100644 --- a/mainscripts/Extractor.py +++ b/mainscripts/Extractor.py @@ -26,13 +26,12 @@ DEBUG = False class ExtractSubprocessor(Subprocessor): class Data(object): - def __init__(self, filename=None, rects=None, landmarks = None, landmarks_accurate=True, pitch_yaw_roll=None, force_output_path=None, final_output_files = None): + def __init__(self, filename=None, rects=None, landmarks = None, landmarks_accurate=True, force_output_path=None, final_output_files = None): self.filename = filename self.rects = rects or [] self.rects_rotation = 0 self.landmarks_accurate = landmarks_accurate self.landmarks = landmarks or [] - self.pitch_yaw_roll = pitch_yaw_roll self.force_output_path = force_output_path self.final_output_files = final_output_files or [] self.faces_detected = 0 @@ -266,8 +265,7 @@ class ExtractSubprocessor(Subprocessor): source_filename=filename_path.name, source_rect=rect, source_landmarks=image_landmarks.tolist(), - image_to_face_mat=image_to_face_mat, - pitch_yaw_roll=data.pitch_yaw_roll + image_to_face_mat=image_to_face_mat ) data.final_output_files.append (output_file) diff --git a/mainscripts/Sorter.py b/mainscripts/Sorter.py index 2465667..9666ca9 100644 --- a/mainscripts/Sorter.py +++ b/mainscripts/Sorter.py @@ -187,11 +187,7 @@ def sort_by_face_yaw(input_path): trash_img_list.append ( [str(filepath)] ) continue - pitch_yaw_roll = dflimg.get_pitch_yaw_roll() - if pitch_yaw_roll is not None: - pitch, yaw, roll = pitch_yaw_roll - else: - pitch, yaw, roll = LandmarksProcessor.estimate_pitch_yaw_roll ( dflimg.get_landmarks() ) + pitch, yaw, roll = LandmarksProcessor.estimate_pitch_yaw_roll ( dflimg.get_landmarks() ) img_list.append( [str(filepath), yaw ] ) @@ -214,11 +210,7 @@ def sort_by_face_pitch(input_path): trash_img_list.append ( [str(filepath)] ) continue - pitch_yaw_roll = dflimg.get_pitch_yaw_roll() - if pitch_yaw_roll is not None: - pitch, yaw, roll = pitch_yaw_roll - else: - pitch, yaw, roll = LandmarksProcessor.estimate_pitch_yaw_roll ( dflimg.get_landmarks() ) + pitch, yaw, roll = LandmarksProcessor.estimate_pitch_yaw_roll ( dflimg.get_landmarks() ) img_list.append( [str(filepath), pitch ] ) diff --git a/samplelib/SampleHost.py b/samplelib/SampleHost.py index ce8e9a7..54f4450 100644 --- a/samplelib/SampleHost.py +++ b/samplelib/SampleHost.py @@ -85,16 +85,23 @@ class SampleHost: result = FaceSamplesLoaderSubprocessor(image_paths).run() sample_list = [] - for filename,dflimg in io.progress_bar_generator(result, "Processing"): + for filename, \ + ( face_type, + shape, + landmarks, + ie_polys, + eyebrows_expand_mod, + source_filename, + + ) in io.progress_bar_generator(result, "Processing"): sample_list.append( Sample(filename=filename, sample_type=SampleType.FACE, - face_type=FaceType.fromString (dflimg.get_face_type()), - shape=dflimg.get_shape(), - landmarks=dflimg.get_landmarks(), - ie_polys=dflimg.get_ie_polys(), - pitch_yaw_roll=dflimg.get_pitch_yaw_roll(), - eyebrows_expand_mod=dflimg.get_eyebrows_expand_mod(), - source_filename=dflimg.get_source_filename(), + face_type=FaceType.fromString (face_type), + shape=shape, + landmarks=landmarks, + ie_polys=ie_polys, + eyebrows_expand_mod=eyebrows_expand_mod, + source_filename=source_filename, )) return sample_list @@ -114,7 +121,6 @@ class SampleHost: shape=dflimg.get_shape(), landmarks=dflimg.get_landmarks(), ie_polys=dflimg.get_ie_polys(), - pitch_yaw_roll=dflimg.get_pitch_yaw_roll(), eyebrows_expand_mod=dflimg.get_eyebrows_expand_mod(), source_filename=dflimg.get_source_filename(), )) @@ -190,8 +196,16 @@ class FaceSamplesLoaderSubprocessor(Subprocessor): if dflimg is None: self.log_err (f"FaceSamplesLoader: {filename} is not a dfl image file.") - - return idx, dflimg + data = None + else: + data = (dflimg.get_face_type(), + dflimg.get_shape(), + dflimg.get_landmarks(), + dflimg.get_ie_polys(), + dflimg.get_eyebrows_expand_mod(), + dflimg.get_source_filename() ) + + return idx, data #override def get_data_name (self, data):