From c5f04d69fd44ae069440ec7f55c334f50f898154 Mon Sep 17 00:00:00 2001
From: Raffaele Gaetano <raffaele.gaetano@cirad.fr>
Date: Fri, 29 Jul 2022 09:39:22 +0200
Subject: [PATCH] FIX: Skip zero label in vectorization.

---
 VHR/segmentation.py | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/VHR/segmentation.py b/VHR/segmentation.py
index 4cc737e..af81501 100644
--- a/VHR/segmentation.py
+++ b/VHR/segmentation.py
@@ -218,13 +218,14 @@ def tiled_vectorization(input_segm, nominal_tile_size, output_template):
         tiles[i] = [np.inf, np.inf, 0, 0]
 
     for o in rp:
-        ix, iy = int(o.bbox[1] / nominal_tile_size[0]), int(o.bbox[0] / nominal_tile_size[1])
-        idx = ix * ty + iy
-        obj_to_tile[idx].append(o.label)
-        tiles[idx][0] = min(o.bbox[1], tiles[idx][0])
-        tiles[idx][1] = min(o.bbox[0], tiles[idx][1])
-        tiles[idx][2] = max(o.bbox[3], tiles[idx][2])
-        tiles[idx][3] = max(o.bbox[2], tiles[idx][3])
+        if o.label != 0:
+            ix, iy = int(o.bbox[1] / nominal_tile_size[0]), int(o.bbox[0] / nominal_tile_size[1])
+            idx = ix * ty + iy
+            obj_to_tile[idx].append(o.label)
+            tiles[idx][0] = min(o.bbox[1], tiles[idx][0])
+            tiles[idx][1] = min(o.bbox[0], tiles[idx][1])
+            tiles[idx][2] = max(o.bbox[3], tiles[idx][2])
+            tiles[idx][3] = max(o.bbox[2], tiles[idx][3])
 
     out_files = []
     for i in range(len(tiles)):
-- 
GitLab