diff --git a/XSegEditor/XSegEditor.py b/XSegEditor/XSegEditor.py index d5cd3c7..baefd2b 100644 --- a/XSegEditor/XSegEditor.py +++ b/XSegEditor/XSegEditor.py @@ -1397,10 +1397,16 @@ class MainWindow(QXMainWindow): new_landmarks = self.canvas.op.get_landmarks() save_needed = False - if not new_ie_polys.identical(ie_polys): - new_has_ie_polys = new_ie_polys.has_polys() - self.set_has_ie_polys_count ( self.get_has_ie_polys_count() + (1 if new_has_ie_polys else -1) ) - self.image_paths_has_ie_polys[image_path] = new_has_ie_polys + if not new_ie_polys.identical(ie_polys): + prev_has_polys = self.image_paths_has_ie_polys[image_path] + self.image_paths_has_ie_polys[image_path] = new_ie_polys.has_polys() + new_has_polys = self.image_paths_has_ie_polys[image_path] + + if not prev_has_polys and new_has_polys: + self.set_has_ie_polys_count ( self.get_has_ie_polys_count() +1) + elif prev_has_polys and not new_has_polys: + self.set_has_ie_polys_count ( self.get_has_ie_polys_count() -1) + dflimg.set_seg_ie_polys( new_ie_polys ) save_needed = True if not np.array_equal(new_landmarks, landmarks): diff --git a/core/interact/interact.py b/core/interact/interact.py index 916da67..284078c 100644 --- a/core/interact/interact.py +++ b/core/interact/interact.py @@ -269,7 +269,7 @@ class InteractBase(object): s += " (" if valid_range is not None: - s += f" {valid_range[0]}-{valid_range[1]} " + s += f" {valid_range[0]}-{valid_range[1]}" if add_info is not None: s += f" {add_info}" diff --git a/models/Model_SAEHD/Model.py b/models/Model_SAEHD/Model.py index 69a7172..0915603 100644 --- a/models/Model_SAEHD/Model.py +++ b/models/Model_SAEHD/Model.py @@ -575,7 +575,7 @@ Examples: df, liae, df-d, df-ud, liae-ud, ... {'sample_type': SampleProcessor.SampleType.FACE_IMAGE,'warp':False , 'transform':True, 'channel_type' : SampleProcessor.ChannelType.BGR, 'ct_mode': ct_mode, 'face_type':self.face_type, 'data_format':nn.data_format, 'resolution': resolution}, {'sample_type': SampleProcessor.SampleType.FACE_MASK, 'warp':False , 'transform':True, 'channel_type' : SampleProcessor.ChannelType.G, 'face_mask_type' : SampleProcessor.FaceMaskType.FULL_FACE_EYES, 'face_type':self.face_type, 'data_format':nn.data_format, 'resolution': resolution}, ], - uniform_yaw_distribution=self.options['uniform_yaw'], + uniform_yaw_distribution=self.options['uniform_yaw'] or self.pretrain, generators_count=src_generators_count ), SampleGeneratorFace(training_data_dst_path, debug=self.is_debug(), batch_size=self.get_batch_size(), @@ -584,7 +584,7 @@ Examples: df, liae, df-d, df-ud, liae-ud, ... {'sample_type': SampleProcessor.SampleType.FACE_IMAGE,'warp':False , 'transform':True, 'channel_type' : SampleProcessor.ChannelType.BGR, 'face_type':self.face_type, 'data_format':nn.data_format, 'resolution': resolution}, {'sample_type': SampleProcessor.SampleType.FACE_MASK, 'warp':False , 'transform':True, 'channel_type' : SampleProcessor.ChannelType.G, 'face_mask_type' : SampleProcessor.FaceMaskType.FULL_FACE_EYES, 'face_type':self.face_type, 'data_format':nn.data_format, 'resolution': resolution}, ], - uniform_yaw_distribution=self.options['uniform_yaw'], + uniform_yaw_distribution=self.options['uniform_yaw'] or self.pretrain, generators_count=dst_generators_count ) ])