diff --git a/ppocr/data/imaug/make_shrink_map.py b/ppocr/data/imaug/make_shrink_map.py index a66706f2bff25680a3597ef67ce5fa809747cf05..8e6122359e21d1a37a01bf9efdad1635a3c652ea 100644 --- a/ppocr/data/imaug/make_shrink_map.py +++ b/ppocr/data/imaug/make_shrink_map.py @@ -84,11 +84,12 @@ class MakeShrinkMap(object): return polygons, ignore_tags def polygon_area(self, polygon): - # return cv2.contourArea(polygon.astype(np.float32)) - edge = 0 - for i in range(polygon.shape[0]): - next_index = (i + 1) % polygon.shape[0] - edge += (polygon[next_index, 0] - polygon[i, 0]) * ( - polygon[next_index, 1] - polygon[i, 1]) - - return edge / 2. + """ + compute polygon area + """ + area = 0 + q = polygon[-1] + for p in polygon: + area += p[0] * q[1] - p[1] * q[0] + q = p + return area / 2.0