Astridkraft commited on
Commit
8ab1d66
·
verified ·
1 Parent(s): 3d9ded6

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +8 -2
app.py CHANGED
@@ -215,16 +215,22 @@ def scale_image_and_mask_together(image, mask, target_size=512, bbox_coords=None
215
  scaled_mask = mask.resize((new_width, new_height), Image.Resampling.NEAREST)
216
 
217
  # Auf Zielgröße padden (zentriert)
218
- #Image.new("RGB", (target_size, target_size), (0, 0, 0)) erstellt ein neues, leeres, schwarzes Bild in der Ziel-Verarbeitungsgröße deines Modells (512×512 für SD 1.5 oder 1024×1024 für SDXL)
 
219
  padded_image = Image.new("RGB", (target_size, target_size), (0, 0, 0))
 
220
  padded_mask = Image.new("L", (target_size, target_size), 0)
221
 
222
  # Zentrierte Position berechnen
223
- #um zu wissen, wo genau das herunterskalierte Originalbild auf das leere schwarze Bild legt werden muss, damit es perfekt mittig sitzt. Ohne diese Berechnung würde das Bild falsch (z.B. in der Ecke) platziert werden.
224
  x_offset = (target_size - new_width) // 2
225
  y_offset = (target_size - new_height) // 2
226
 
 
 
227
  padded_image.paste(scaled_image, (x_offset, y_offset))
 
 
228
  padded_mask.paste(scaled_mask, (x_offset, y_offset))
229
 
230
  # WICHTIG: Speichere alle Informationen für späteres Compositing
 
215
  scaled_mask = mask.resize((new_width, new_height), Image.Resampling.NEAREST)
216
 
217
  # Auf Zielgröße padden (zentriert)
218
+ #Image.new("RGB", (target_size, target_size), (0, 0, 0)) erstellt ein neues, leeres, schwarzes Bild in der Ziel-Verarbeitungsgröße des Modells (512×512 für SD 1.5 oder 1024×1024 für SDXL)
219
+ # in das später das Bild eingefügt wird
220
  padded_image = Image.new("RGB", (target_size, target_size), (0, 0, 0))
221
+ #Damit wird ein 512x512 Graustufenbild erstellt in das später die BBox eingefügt wird
222
  padded_mask = Image.new("L", (target_size, target_size), 0)
223
 
224
  # Zentrierte Position berechnen
225
+ # das ist der Padding-Bereich bei nicht quadratischen 512x512 Bildern damit daraus 512x512-Bilder werden
226
  x_offset = (target_size - new_width) // 2
227
  y_offset = (target_size - new_height) // 2
228
 
229
+ # mit Hilfe der Offsets kann das skalierte Bild mittig in das RGB-Schwarzbild eingefügt werden. Dadurch ergibt sich
230
+ # indirekt der Padding-Bereich.
231
  padded_image.paste(scaled_image, (x_offset, y_offset))
232
+ # mit Hilfe der Offsets wird nun die herunterskalierte BBox (entweder als Rechteck oder als SAM-Maske)
233
+ # in das Graustufenbild eingefügt. Das Padding ergibt sich aus dem Graustufenbild!
234
  padded_mask.paste(scaled_mask, (x_offset, y_offset))
235
 
236
  # WICHTIG: Speichere alle Informationen für späteres Compositing