Spaces:
Runtime error
Runtime error
Martin Tomov
commited on
Update app.py
Browse files
app.py
CHANGED
|
@@ -136,12 +136,13 @@ def extract_and_paste_insect(original_image: np.ndarray, detection: DetectionRes
|
|
| 136 |
insect_crop = original_image[ymin:ymax, xmin:xmax]
|
| 137 |
mask_crop = mask[ymin:ymax, xmin:xmax]
|
| 138 |
|
| 139 |
-
# Ensure the insect retains its original color
|
| 140 |
-
insect =
|
|
|
|
|
|
|
| 141 |
|
| 142 |
-
# np.where to ensure correct blending
|
| 143 |
for c in range(3):
|
| 144 |
-
background[ymin:ymax, xmin:xmax, c] =
|
| 145 |
|
| 146 |
def create_yellow_background_with_insects(image: np.ndarray, detections: List[DetectionResult]) -> np.ndarray:
|
| 147 |
yellow_background = np.full((image.shape[0], image.shape[1], 3), (0, 255, 255), dtype=np.uint8) # BGR for yellow
|
|
|
|
| 136 |
insect_crop = original_image[ymin:ymax, xmin:xmax]
|
| 137 |
mask_crop = mask[ymin:ymax, xmin:xmax]
|
| 138 |
|
| 139 |
+
# Ensure the insect retains its original color by directly copying the pixel values
|
| 140 |
+
insect = np.zeros_like(insect_crop)
|
| 141 |
+
for c in range(3):
|
| 142 |
+
insect[:, :, c] = insect_crop[:, :, c] * (mask_crop / 255)
|
| 143 |
|
|
|
|
| 144 |
for c in range(3):
|
| 145 |
+
background[ymin:ymax, xmin:xmax, c] = background[ymin:ymax, xmin:xmax, c] * (1 - mask_crop / 255) + insect[:, :, c]
|
| 146 |
|
| 147 |
def create_yellow_background_with_insects(image: np.ndarray, detections: List[DetectionResult]) -> np.ndarray:
|
| 148 |
yellow_background = np.full((image.shape[0], image.shape[1], 3), (0, 255, 255), dtype=np.uint8) # BGR for yellow
|