Update app.py
Browse files
app.py
CHANGED
@@ -267,12 +267,25 @@ def remove_overlapping_and_inside_boxes(boxes, classes):
|
|
267 |
|
268 |
return boxes, classes
|
269 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
270 |
|
271 |
def full_predictions(IMAGE_PATH, conf_threshold, iou_threshold):
|
272 |
IMAGE_PATH = IMAGE_PATH.resize((1024,1024))
|
273 |
bboxes, classes = detect_layout(IMAGE_PATH, conf_threshold, iou_threshold)
|
274 |
bboxes, classes = remove_overlapping_and_inside_boxes(bboxes, classes)
|
275 |
orders = get_orders(IMAGE_PATH, scale_and_normalize_boxes(bboxes))
|
|
|
276 |
final_image = draw_bboxes_on_image(IMAGE_PATH, bboxes, classes, orders)
|
277 |
return final_image
|
278 |
|
|
|
267 |
|
268 |
return boxes, classes
|
269 |
|
270 |
+
def process_r1(r1):
|
271 |
+
# Step 1: Find the index of the maximum value
|
272 |
+
max_index = r1.index(max(r1))
|
273 |
+
one_index = r1.index(1)
|
274 |
+
# Step 2: Swap the maximum value with 1
|
275 |
+
r1[max_index] = 1
|
276 |
+
|
277 |
+
# Step 3: Increment all values except 0 and 1
|
278 |
+
r1 = [x + 1 if x not in (0, 1) else x for x in r1]
|
279 |
+
r1[one_index] +=1
|
280 |
+
return r1
|
281 |
+
|
282 |
|
283 |
def full_predictions(IMAGE_PATH, conf_threshold, iou_threshold):
|
284 |
IMAGE_PATH = IMAGE_PATH.resize((1024,1024))
|
285 |
bboxes, classes = detect_layout(IMAGE_PATH, conf_threshold, iou_threshold)
|
286 |
bboxes, classes = remove_overlapping_and_inside_boxes(bboxes, classes)
|
287 |
orders = get_orders(IMAGE_PATH, scale_and_normalize_boxes(bboxes))
|
288 |
+
orders = process_r1(orders)
|
289 |
final_image = draw_bboxes_on_image(IMAGE_PATH, bboxes, classes, orders)
|
290 |
return final_image
|
291 |
|