Update controlnet_module.py
Browse files- controlnet_module.py +29 -33
controlnet_module.py
CHANGED
|
@@ -832,10 +832,33 @@ class ControlNetProcessor:
|
|
| 832 |
|
| 833 |
# Keine Bildverbesserung für 512x512 - Original verwenden
|
| 834 |
image = original_image
|
| 835 |
-
|
| 836 |
-
|
| 837 |
-
|
| 838 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 839 |
|
| 840 |
|
| 841 |
# ============================================================
|
|
@@ -844,11 +867,7 @@ class ControlNetProcessor:
|
|
| 844 |
# ============================================================
|
| 845 |
|
| 846 |
print("-" * 60)
|
| 847 |
-
print(f"📦 BOUNDING BOX DETAILS FÜR SAM:")
|
| 848 |
-
print(f" Bild-Größe für SAM: {image.size}")
|
| 849 |
-
print(f" BBox Koordinaten: [{x1}, {y1}, {x2}, {y2}]")
|
| 850 |
-
print(f" BBox Dimensionen: {x2-x1}px × {y2-y1}px")
|
| 851 |
-
|
| 852 |
# Vorbereitung für SAM2 - WICHTIG: NUR EINE BBOX
|
| 853 |
print("-" * 60)
|
| 854 |
print("🖼️ BILDAUFBEREITUNG FÜR SAM 2")
|
|
@@ -946,30 +965,7 @@ class ControlNetProcessor:
|
|
| 946 |
# ============================================================
|
| 947 |
print("🤔 HEURISTIK BERECHNEN")
|
| 948 |
|
| 949 |
-
|
| 950 |
-
# BBox-Information für Heuristik (IN CROP-KOORDINATEN!)
|
| 951 |
-
bbox_center = ((x1 + x2) // 2, (y1 + y2) // 2)
|
| 952 |
-
bbox_area = (x2 - x1) * (y2 - y1)
|
| 953 |
-
|
| 954 |
-
print(f" CROP-BBox: [{x1}, {y1}, {x2}, {y2}]")
|
| 955 |
-
print(f" CROP-BBox-Größe: {x2-x1}×{y2-y1}px = {bbox_area:,}px²")
|
| 956 |
-
print(f" CROP-BBox-Zentrum: {bbox_center}")
|
| 957 |
-
print(f" Crop-Bildgröße: {image.width}×{image.height}")
|
| 958 |
-
|
| 959 |
-
else: #Heuristik für Original-Fall, Original-BBox Bild<=512
|
| 960 |
-
print(" ✅ Original-Fall: Heuristik mit Original-BBox")
|
| 961 |
-
|
| 962 |
-
# Original-BBox-Koordinaten verwenden (nicht transformiert)
|
| 963 |
-
bbox_center = ((original_bbox[0] + original_bbox[2]) // 2,
|
| 964 |
-
(original_bbox[1] + original_bbox[3]) // 2)
|
| 965 |
-
bbox_area = (original_bbox[2] - original_bbox[0]) * (original_bbox[3] - original_bbox[1])
|
| 966 |
-
|
| 967 |
-
print(f" ORIGINAL-BBox: {original_bbox}")
|
| 968 |
-
print(f" ORIGINAL-BBox-Größe: {original_bbox[2]-original_bbox[0]}×{original_bbox[3]-original_bbox[1]}px = {bbox_area:,}px²")
|
| 969 |
-
print(f" ORIGINAL-BBox-Zentrum: {bbox_center}")
|
| 970 |
-
print(f" Original-Bildgröße: {image.width}×{image.height}")
|
| 971 |
-
|
| 972 |
-
|
| 973 |
# Heuristik-BBox für alle weiteren Berechnungen verwenden
|
| 974 |
# (bbox_center und bbox_area sind jetzt korrekt für beide Fälle)
|
| 975 |
|
|
|
|
| 832 |
|
| 833 |
# Keine Bildverbesserung für 512x512 - Original verwenden
|
| 834 |
image = original_image
|
| 835 |
+
|
| 836 |
+
################################
|
| 837 |
+
#BBox-Berechnung für Heuristik immer Oroginal-BBox
|
| 838 |
+
##############################
|
| 839 |
+
|
| 840 |
+
if use_crop_strategy:
|
| 841 |
+
# Für Crop: Original-BBox auf Crop-Größe skalieren
|
| 842 |
+
scale_x = image.width / original_image.width
|
| 843 |
+
scale_y = image.height / original_image.height
|
| 844 |
+
bbox_x1 = int(original_bbox[0] * scale_x)
|
| 845 |
+
bbox_y1 = int(original_bbox[1] * scale_y)
|
| 846 |
+
bbox_x2 = int(original_bbox[2] * scale_x)
|
| 847 |
+
bbox_y2 = int(original_bbox[3] * scale_y)
|
| 848 |
+
else:
|
| 849 |
+
# Für Original: Direkt Original-BBox verwenden
|
| 850 |
+
bbox_x1, bbox_y1, bbox_x2, bbox_y2 = original_bbox
|
| 851 |
+
|
| 852 |
+
# Heuristik-Parameter berechnen (konsistent für beide Fälle)
|
| 853 |
+
bbox_width = bbox_x2 - bbox_x1
|
| 854 |
+
bbox_height = bbox_y2 - bbox_y1
|
| 855 |
+
bbox_area = bbox_width * bbox_height
|
| 856 |
+
bbox_center = ((bbox_x1 + bbox_x2) // 2, (bbox_y1 + bbox_y2) // 2)
|
| 857 |
+
|
| 858 |
+
print(f"📏 HEURISTIK-BBOX: [{bbox_x1}, {bbox_y1}, {bbox_x2}, {bbox_y2}]")
|
| 859 |
+
print(f"📐 HEURISTIK-BBOX-Größe: {bbox_width}×{bbox_height}px = {bbox_area:,}px²")
|
| 860 |
+
print(f"📍 HEURISTIK-BBOX-Zentrum: {bbox_center}")
|
| 861 |
+
print(f" ✅ SAM verwendet Original-BBox-Koordinaten")
|
| 862 |
|
| 863 |
|
| 864 |
# ============================================================
|
|
|
|
| 867 |
# ============================================================
|
| 868 |
|
| 869 |
print("-" * 60)
|
| 870 |
+
print(f"📦 BOUNDING BOX DETAILS FÜR SAM:")
|
|
|
|
|
|
|
|
|
|
|
|
|
| 871 |
# Vorbereitung für SAM2 - WICHTIG: NUR EINE BBOX
|
| 872 |
print("-" * 60)
|
| 873 |
print("🖼️ BILDAUFBEREITUNG FÜR SAM 2")
|
|
|
|
| 965 |
# ============================================================
|
| 966 |
print("🤔 HEURISTIK BERECHNEN")
|
| 967 |
|
| 968 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 969 |
# Heuristik-BBox für alle weiteren Berechnungen verwenden
|
| 970 |
# (bbox_center und bbox_area sind jetzt korrekt für beide Fälle)
|
| 971 |
|