Spaces:
Runtime error
Runtime error
Commit ·
5e5a95f
1
Parent(s): 7206cfb
Update app.py
Browse files
app.py
CHANGED
|
@@ -123,6 +123,21 @@ def display_image(img):
|
|
| 123 |
|
| 124 |
|
| 125 |
# --------------------------------------------
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 126 |
def process_image(selected_image):
|
| 127 |
# Convert PIL image to OpenCV format
|
| 128 |
opencv_image = np.array(selected_image)
|
|
@@ -143,7 +158,9 @@ def process_image(selected_image):
|
|
| 143 |
# Apply OTSU's thresholding
|
| 144 |
_, thresh = cv2.threshold(gray_image, 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU)
|
| 145 |
|
| 146 |
-
|
|
|
|
|
|
|
| 147 |
thresh = cv2.morphologyEx(thresh, cv2.MORPH_CLOSE, kernel, iterations=2)
|
| 148 |
|
| 149 |
# # Apply median blur
|
|
|
|
| 123 |
|
| 124 |
|
| 125 |
# --------------------------------------------
|
| 126 |
+
|
| 127 |
+
def get_dynamic_kernel(img_height):
|
| 128 |
+
# Set the kernel size to be 1% of the image height
|
| 129 |
+
kernel_height = int(0.01 * img_height)
|
| 130 |
+
|
| 131 |
+
# Ensure the kernel height is odd
|
| 132 |
+
if kernel_height % 2 == 0:
|
| 133 |
+
kernel_height += 1
|
| 134 |
+
|
| 135 |
+
# Set minimum and maximum limits
|
| 136 |
+
kernel_height = max(3, kernel_height) # Minimum limit
|
| 137 |
+
kernel_height = min(11, kernel_height) # Maximum limit
|
| 138 |
+
|
| 139 |
+
return np.ones((kernel_height, 1), np.uint8)
|
| 140 |
+
|
| 141 |
def process_image(selected_image):
|
| 142 |
# Convert PIL image to OpenCV format
|
| 143 |
opencv_image = np.array(selected_image)
|
|
|
|
| 158 |
# Apply OTSU's thresholding
|
| 159 |
_, thresh = cv2.threshold(gray_image, 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU)
|
| 160 |
|
| 161 |
+
|
| 162 |
+
kernel = get_dynamic_kernel(thresh.shape[0])
|
| 163 |
+
# kernel = np.ones((5, 1), np.uint8)
|
| 164 |
thresh = cv2.morphologyEx(thresh, cv2.MORPH_CLOSE, kernel, iterations=2)
|
| 165 |
|
| 166 |
# # Apply median blur
|