Astridkraft commited on
Commit
ee78137
·
verified ·
1 Parent(s): 7019011

Update controlnet_module.py

Browse files
Files changed (1) hide show
  1. controlnet_module.py +5 -9
controlnet_module.py CHANGED
@@ -934,11 +934,7 @@ class ControlNetProcessor:
934
  print("📏 SCHRITT 6: MASKE EXTRAHIEREN")
935
 
936
  num_masks = outputs.pred_masks.shape[2]
937
- print(f" SAM lieferte {num_masks} verschiedene Masken")
938
-
939
- #========================
940
- # Heuristik und Postprocessing auf Crop
941
- #=========================
942
 
943
  # Masken speichern in Array
944
  all_masks_crop = [] #Weiterverarbeitung in Crop-Größe oder Bildgröße <= 512
@@ -964,13 +960,13 @@ class ControlNetProcessor:
964
 
965
 
966
  # ============================================================
967
- # HEURISTIK (zur Bestimmung der besten Maske) bei Bild>512 auf Crop-Größe bei Bild<=512 auf Originalgröße
968
  # ============================================================
969
  print("🤔 HEURISTIK BERECHNEN")
970
 
971
 
972
  # Heuristik-BBox für alle weiteren Berechnungen verwenden
973
- # (bbox_center und bbox_area sind jetzt korrekt für beide Fälle)
974
 
975
  best_mask_idx = 0
976
  best_score = -1
@@ -998,7 +994,7 @@ class ControlNetProcessor:
998
  # SPEZIALHEURISTIK
999
  # ============================================================
1000
 
1001
- print(f" 🔍 Analysiere Maske {i+1} auf Crop-Größe")
1002
 
1003
  # 1. FLÄCHENBASIERTE BEWERTUNG (40%)
1004
  area_ratio = mask_area_pixels / bbox_area if bbox_area > 0 else 0
@@ -1014,7 +1010,7 @@ class ControlNetProcessor:
1014
  area_score = optimal_max / area_ratio # Starke Bestrafung für zu groß
1015
 
1016
 
1017
- # 2. BBOX-ÜBERLAPPUNG (KORRIGIERT!)
1018
  bbox_mask = np.zeros((image.height, image.width), dtype=np.uint8)
1019
  bbox_mask[bbox_y1:bbox_y2, bbox_x1:bbox_x2] = 1
1020
  overlap = np.sum(mask_binary & bbox_mask)
 
934
  print("📏 SCHRITT 6: MASKE EXTRAHIEREN")
935
 
936
  num_masks = outputs.pred_masks.shape[2]
937
+ print(f" SAM lieferte {num_masks} verschiedene Masken")
 
 
 
 
938
 
939
  # Masken speichern in Array
940
  all_masks_crop = [] #Weiterverarbeitung in Crop-Größe oder Bildgröße <= 512
 
960
 
961
 
962
  # ============================================================
963
+ # HEURISTIK (zur Bestimmung der besten Maske) bei Bild>512 wird die beste Maske auf Crop-Größe ermittelt bei Bild<=512 auf Originalgröße
964
  # ============================================================
965
  print("🤔 HEURISTIK BERECHNEN")
966
 
967
 
968
  # Heuristik-BBox für alle weiteren Berechnungen verwenden
969
+ # (bbox_center und bbox_area sind korrekt für beide Fälle)
970
 
971
  best_mask_idx = 0
972
  best_score = -1
 
994
  # SPEZIALHEURISTIK
995
  # ============================================================
996
 
997
+ print(f" 🔍 Analysiere Maske {i+1} auf {'Crop-' if use_crop_strategy else 'Original-'}Größe")
998
 
999
  # 1. FLÄCHENBASIERTE BEWERTUNG (40%)
1000
  area_ratio = mask_area_pixels / bbox_area if bbox_area > 0 else 0
 
1010
  area_score = optimal_max / area_ratio # Starke Bestrafung für zu groß
1011
 
1012
 
1013
+ # 2. BBOX-ÜBERLAPPUNG
1014
  bbox_mask = np.zeros((image.height, image.width), dtype=np.uint8)
1015
  bbox_mask[bbox_y1:bbox_y2, bbox_x1:bbox_x2] = 1
1016
  overlap = np.sum(mask_binary & bbox_mask)