Update app.py
Browse files
app.py
CHANGED
@@ -28,13 +28,17 @@ def warp_design(design, mask, warp_scale):
|
|
28 |
h, w = mask.shape[:2]
|
29 |
design_resized = cv2.resize(design, (w, h))
|
30 |
|
31 |
-
#
|
32 |
scaled_mask = (mask * 255 * (warp_scale / 100)).astype(np.uint8)
|
33 |
-
|
34 |
-
# Ensure mask is single-channel
|
35 |
-
if len(scaled_mask.shape) == 3
|
36 |
scaled_mask = cv2.cvtColor(scaled_mask, cv2.COLOR_BGR2GRAY)
|
37 |
|
|
|
|
|
|
|
|
|
38 |
return cv2.bitwise_and(design_resized, design_resized, mask=scaled_mask)
|
39 |
|
40 |
def blend_images(base, overlay, mask):
|
|
|
28 |
h, w = mask.shape[:2]
|
29 |
design_resized = cv2.resize(design, (w, h))
|
30 |
|
31 |
+
# Normalize mask and convert to uint8
|
32 |
scaled_mask = (mask * 255 * (warp_scale / 100)).astype(np.uint8)
|
33 |
+
|
34 |
+
# Ensure the mask is single-channel and same size as design
|
35 |
+
if len(scaled_mask.shape) == 3:
|
36 |
scaled_mask = cv2.cvtColor(scaled_mask, cv2.COLOR_BGR2GRAY)
|
37 |
|
38 |
+
# Resize the mask to match design_resized if needed
|
39 |
+
if scaled_mask.shape != (h, w):
|
40 |
+
scaled_mask = cv2.resize(scaled_mask, (w, h), interpolation=cv2.INTER_NEAREST)
|
41 |
+
|
42 |
return cv2.bitwise_and(design_resized, design_resized, mask=scaled_mask)
|
43 |
|
44 |
def blend_images(base, overlay, mask):
|