@@ -122,6 +122,7 @@ def get_and_clean_boxes(textmap, processor_size, image_size, text_threshold=None
122
122
bboxes = clean_boxes (bboxes )
123
123
return bboxes
124
124
125
+
125
126
def parallel_get_lines (preds , orig_sizes , include_maps = False ):
126
127
heatmap , affinity_map = preds
127
128
heat_img , aff_img = None , None
@@ -143,18 +144,24 @@ def parallel_get_lines(preds, orig_sizes, include_maps=False):
143
144
return result
144
145
145
146
def parallel_get_boxes (preds , orig_sizes , include_maps = False ):
146
- heatmap , _ = preds
147
+ heatmap , affinity_map = preds
147
148
heat_img , aff_img = None , None
149
+
148
150
if include_maps :
149
151
heat_img = Image .fromarray ((heatmap * 255 ).astype (np .uint8 ))
152
+ aff_img = Image .fromarray ((affinity_map * 255 ).astype (np .uint8 ))
150
153
heatmap_size = list (reversed (heatmap .shape ))
151
154
bboxes = get_and_clean_boxes (heatmap , heatmap_size , orig_sizes )
155
+ for box in bboxes :
156
+ #Skip for vertical boxes
157
+ if box .height < 3 * box .width :
158
+ box .expand (x_margin = 0 , y_margin = settings .DETECTOR_BOX_Y_EXPAND_MARGIN )
152
159
153
160
result = TextDetectionResult (
154
161
bboxes = bboxes ,
155
162
vertical_lines = [],
156
163
heatmap = heat_img ,
157
- affinity_map = None ,
164
+ affinity_map = aff_img ,
158
165
image_bbox = [0 , 0 , orig_sizes [0 ], orig_sizes [1 ]]
159
166
)
160
167
return result
0 commit comments