From ef4495da5478b2adc175bc20475bfc77d4e462aa Mon Sep 17 00:00:00 2001 From: Ernestina <121707790@qq.com> Date: Tue, 24 Jun 2025 23:42:17 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E8=BD=BB=E9=87=8F=E9=AB=98=E6=95=88?= =?UTF-8?q?=E8=A1=A8=E6=A0=BC=E8=AF=86=E5=88=AB=E6=96=B0=E8=8C=83=E5=BC=8F?= =?UTF-8?q?=E6=8E=A2=E7=B4=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pipelines/table_recognition/utils.py | 1385 +++++++++++++++++ .../pipelines/table_recognition/xgb.pickle | Bin 0 -> 1562006 bytes 2 files changed, 1385 insertions(+) create mode 100644 paddlex/inference/pipelines/table_recognition/xgb.pickle diff --git a/paddlex/inference/pipelines/table_recognition/utils.py b/paddlex/inference/pipelines/table_recognition/utils.py index 8737f55f10..493833ddef 100644 --- a/paddlex/inference/pipelines/table_recognition/utils.py +++ b/paddlex/inference/pipelines/table_recognition/utils.py @@ -14,7 +14,13 @@ __all__ = ["get_neighbor_boxes_idx"] +import os +import cv2 import numpy as np +import pickle +import pandas as pd +from copy import deepcopy +from typing import Any, List, Optional, Tuple def get_neighbor_boxes_idx(src_boxes: np.ndarray, ref_box: np.ndarray) -> list: @@ -42,3 +48,1382 @@ def get_neighbor_boxes_idx(src_boxes: np.ndarray, ref_box: np.ndarray) -> list: match_idx = np.where((pub_w > 0) & (pub_h < 3) & (pub_h > -15))[0] match_idx_list.extend(match_idx) return match_idx_list + + +class TableRec: + def __init__( + self, + md_path='./paddlex/inference/pipelines/table_recognition/xgb.pickle', + ) -> None: + """An Table Recognition Method + + Args: + md_path: the path of xgb model + """ + self.table_ocr = TableOCR(md_path) + + def predict(self, img_path, result_of_ocr, result_of_det_cells_model): + img = self.read_img(img_path=img_path) + frame_lines = self.classify_table(img) + if len(frame_lines) == 0: + pred_bounds = self.predict_no_frame(img, img_path, result_of_det_cells_model, result_of_ocr) + else: + pred_bounds = self.predict_three_lines_frame(img, result_of_det_cells_model) + return pred_bounds + + def predict_no_frame(self, img, img_path, result_of_det_cells_model, result_of_ocr): + """ recognize table without frame and lines + + Args: + img (array): binary array + img_path (str): path of image + result_of_det_cells_model (Result): result of det cells model in paddlex + + Returns: + list: list of bounds, [(x1, y1, x2, y2), ...] + """ + img = cv2.cvtColor(img, cv2.COLOR_GRAY2BGR) + output = result_of_det_cells_model + pred_bounds = [] + for res in output: + pred_dicts = res._to_json()['res']['boxes'] + for k in range(len(pred_dicts)): + pred_bounds.append(pred_dicts[k]['coordinate']) + regions = self.table_ocr.predict(img_path, result_of_ocr) + cells_info = self.merge_predictions(img, pred_bounds, regions) + pred_bounds = [d['bound'] for d in cells_info] + pred_bounds = self.frame_alignment(img, pred_bounds) + pred_bounds = self.deal_columns(pred_bounds, regions, img=img) + return pred_bounds + + def predict_three_lines_frame(self, img, result_of_det_cells_model): + img = cv2.cvtColor(img, cv2.COLOR_GRAY2BGR) + output = result_of_det_cells_model + pred_bounds = [] + for res in output: + pred_dicts = res._to_json()['res']['boxes'] + for k in range(len(pred_dicts)): + pred_bounds.append(pred_dicts[k]['coordinate']) + + return pred_bounds + + def deal_columns(self, pred_bounds, regions, img, scope_iou_thresh=0.3): + """Add missing columns + + Args: + pred_bounds (list): [(x1, y1, x2, y2), ...] + regions (lis): list of dict, [{'bound': [x1, y1, x2, y2], 'text_boxes': [[x1, y1, w, h], ...], 'empty_cell': 0|1}, ...] + Returns: + bounds (list): [(x1, y1, x2, y2), ...] + """ + # get columns + pred_bounds = list(sorted(pred_bounds, key=lambda x: (x[0], x[1]))) + pred_col_subgraphs = self.col_subgraphs(pred_bounds, scope_iou_thresh=scope_iou_thresh) + region_bounds = [d['bound'] for d in regions] + region_col_subgraphs = self.col_subgraphs(region_bounds) + + pred_first_col = pred_col_subgraphs['0'] + region_first_col = region_col_subgraphs['0'] + if len(region_first_col['cells']) > 2: + r_x1, r_x2 = region_first_col['scope'] + else: + r_x1, r_x2 = pred_first_col['scope'] + + for k, v in pred_col_subgraphs.items(): + cells = v['cells'] + new_cells = [] + for cell in cells: + x1, y1, x2, y2 = cell + tmp_iou = self.compute_scope_iou_within_scope1((r_x1, r_x2), (x1, x2)) + if tmp_iou > 0.6: + if r_x2 - x1 > 5: + new_cells.append((x1, y1, r_x2, y2)) + if x2 - r_x2 > 5: + new_cells.append((r_x2, y1, x2, y2)) + else: + new_cells.append(cell) + + pred_col_subgraphs[k]['cells'] = new_cells + + new_pred_bounds = [] + for k, v in pred_col_subgraphs.items(): + new_pred_bounds.extend(v['cells']) + + return new_pred_bounds + + def col_subgraphs(self, bounds, scope_iou_thresh=0.6): + col_subgraphs = {} + for d in bounds: + x1, y1, x2, y2 = d + if len(col_subgraphs) == 0: + col_subgraphs[str(len(col_subgraphs))] = {'scope': [x1, x2], 'cells': [d]} + continue + col_x1, col_x2 = col_subgraphs[str(len(col_subgraphs) - 1)]['scope'] + if x1 >= col_x1 - 3 and x2 <= col_x2 + 3: + iou = 1 + else: + iou = self.compute_scope_iou((col_x1, col_x2), (x1, x2)) + if iou >= scope_iou_thresh: + if d in col_subgraphs[str(len(col_subgraphs) - 1)]['cells']: + continue + col_subgraphs[str(len(col_subgraphs) - 1)]['cells'].append(d) + col_x1 = min(col_x1, x1) + col_x2 = max(col_x2, x2) + col_subgraphs[str(len(col_subgraphs) - 1)]['scope'] = [col_x1, col_x2] + else: + new_key = str(len(col_subgraphs)) + col_subgraphs[new_key] = {} + col_subgraphs[new_key]['scope'] = [x1, x2] + col_subgraphs[new_key]['cells'] = [d] + return col_subgraphs + + def frame_alignment(self, img, bounds): + """align all the bounds into frame + + Args: + bounds (list): the bounds of cells. [(x1, y1, x2, y2), ......] + """ + def get_weighted_value(bound_votes, st, ed): + """Include end + + Args: + bound_votes (list): Record the vote of new bounds of the predicted bounds. + st (int): Start of no zero vote + ed (int): End of no zero vote + + Returns: + _type_: _description_ + """ + votes = np.sum(bound_votes[st: ed + 1]) + new_b = 0 + for q in range(st, ed + 1): + new_b += q * bound_votes[q] / votes + new_b = int(new_b) + return new_b + + def get_new_bounds(bound_votes, align_thresh): + new_bounds = [] + i = 0 + st = -1 + ed = -1 + while i < len(bound_votes): + if bound_votes[i] == 0 and st == -1: + i += 1 + continue + elif bound_votes[i] == 0 and st != -1: + stop_guard = False + if st + align_thresh - 1 < len(bound_votes): + if np.sum(bound_votes[st: st + align_thresh]) > np.sum(bound_votes[st: i]): + pass + else: + stop_guard = True + else: + if np.sum(bound_votes[st: -1]) > np.sum(bound_votes[st: i]): + pass + else: + stop_guard = True + + if stop_guard: + ed = i - 1 + new_b = get_weighted_value(bound_votes, st, ed) + new_bounds.append(new_b) + st = -1 + ed = -1 + else: + ed = i + elif bound_votes[i] != 0 and st == -1: + st = i + else: + ed = i + + if ed - st >= align_thresh - 1: + new_b = get_weighted_value(bound_votes, st, ed) + st = -1 + ed = -1 + new_bounds.append(new_b) + + i += 1 + + return new_bounds + + row_votes = [0 for i in range(img.shape[0])] + col_votes = [0 for i in range(img.shape[1])] + for bound in bounds: + x1, y1, x2, y2 = bound + if y1 < img.shape[0]: + row_votes[int(y1)] += 1 + else: + row_votes[-1] += 1 + if y2 < img.shape[0]: + row_votes[int(y2)] += 1 + else: + row_votes[-1] += 1 + + if x1 < img.shape[1]: + col_votes[int(x1)] += 1 + else: + col_votes[-1] += 1 + if x2 < img.shape[1]: + col_votes[int(x2)] += 1 + else: + col_votes[-1] += 1 + + # get new row bounds and col bounds + row_bounds = get_new_bounds(bound_votes=row_votes, align_thresh=7) + col_bounds = get_new_bounds(bound_votes=col_votes, align_thresh=11) + + new_bounds = [] + for k in range(len(bounds)): + x1, y1, x2, y2 = bounds[k] + for _y in row_bounds: + if abs(y1 - _y) < 10: + y1 = _y + if abs(y2 - _y) < 10: + y2 = _y + for _x in col_bounds: + if abs(x1 - _x) < 10: + x1 = _x + if abs(x2 - _x) < 10: + x2 = _x + new_bounds.append((int(x1), int(y1), int(x2), int(y2))) + return new_bounds + + def merge_predictions(self, img, pred_bounds, regions, match_iou_thresh=0.5): + """merge predictions + + Args: + img (Array): gray image + pred_bounds (list): [(x1, y1, x2, y2), ...] + regions (list): list of dict, [{'bound': [x1, y1, x2, y2], 'text_boxes': [[x1, y1, w, h], ...], 'empty_cell': 0|1}, ...] + + Returns: + cells_info (list): list of dict + """ + add_cells_info = [] + for i in range(len(regions)): + region_info = regions[i] + region_bound = region_info['bound'] + miss_guard = True + for pred_bound in pred_bounds: + region_iou = compute_iou(region_bound, pred_bound) + if region_iou >= match_iou_thresh: + miss_guard = False + break + if miss_guard: + if 'empty_cell' in region_info.keys(): + x1, y1, x2, y2 = region_bound + x1 = int(x1) + y1 = int(y1) + x2 = int(x2) + y2 = int(y2) + empty_cell = region_info['empty_cell'] + else: + x1, y1, x2, y2 = region_bound + x1 = int(x1) + y1 = int(y1) + x2 = int(x2) + y2 = int(y2) + tmp_img = img[y1: y2, x1:x2] + if np.sum(tmp_img) < 5: + empty_cell = 1 + else: + empty_cell = 0 + add_cells_info.append({'bound': (x1, y1, x2, y2), 'empty_cell': empty_cell}) + + cells_info = add_cells_info + for pred_bound in pred_bounds: + x1, y1, x2, y2 = pred_bound + x1 = int(x1) + y1 = int(y1) + x2 = int(x2) + y2 = int(y2) + tmp_img = img[y1: y2, x1:x2] + if np.sum(tmp_img) < 5: + empty_cell = 1 + else: + empty_cell = 0 + info = {'bound': (x1, y1, x2, y2), 'empty_cell': empty_cell} + add_cells_info.append(info) + + return cells_info + + def analyse_frame_lines(self, img, frame_lines, header_lines_thresh=0.6): + frame_lines = list(sorted(frame_lines, key=lambda x: x[1])) + max_length = -1 + max_line_x1 = -1 + max_line_x2 = -1 + for i in range(len(frame_lines)): + line = frame_lines[i] + x1, y1, x2, y2 = line + if max_length < abs(x2 - x1): + max_length = abs(x2 - x1) + max_line_x1 = min(x1, x2) + max_line_x2 = max(x1, x2) + + # get complex row lines + frame_info = {'frame_width': max_length, 'frame_x1': max_line_x1, 'frame_x2': max_line_x2, 'header_lines': [], 'skip_index_cell_lines': []} + # # get header lines + for line in frame_lines: + x1, y1, x2, y2 = line + if abs(x1 - x2) < max_length * header_lines_thresh: + frame_info['header_lines'].append(line) + + old_header_lines = deepcopy(frame_info['header_lines']) + for line in frame_lines: + x1, y1, x2, y2 = line + y = np.mean([y1, y2]) + if line in old_header_lines: + continue + for header_line in old_header_lines: + h_x1, h_y1, h_x2, h_y2 = header_line + tmp_y = np.mean([h_y1, h_y2]) + if abs(y - tmp_y) < 3: + frame_info['header_lines'].append(line) + + # # get merged index cells lines + for line in frame_lines: + x1, y1, x2, y2 = line + if abs(x2 - x1) >= max_length * header_lines_thresh and abs(x2 - x1) < (max_length - 20) and abs(max_line_x2 - max(x1, x2)) < 3: + frame_info['skip_index_cell_lines'].append(line) + + return frame_info + + def classify_table(self, img, min_length_thresh=0.1): + h, w = img.shape + lsd = cv2.createLineSegmentDetector( + refine=None, + scale=0.8, + sigma_scale=0.6, + quant=2.0, + ang_th=22.5, + log_eps=0, + density_th=0.7, + n_bins=1024 + ) + lines, width, prec, nfa = lsd.detect(img) + frame_lines = [] + for line in lines: + x1, y1, x2, y2 = line[0] + dis = euclidean_distance(point1=(x1, y1), point2=(x2, y2)) + if dis < min_length_thresh * w: + continue + frame_lines.append((x1, y1, x2, y2)) + + return frame_lines + + def read_img(self, img_path: str): + assert os.path.exists(img_path), f"img_path doesn't exists \n{img_path}" + img = cv2.imread(img_path, cv2.IMREAD_GRAYSCALE) + return img + + def compute_scope_iou(self, scope1, scope2): + """compute the iou of scope of rows or columns + + Args: + scope1 (list): row scope | column scope, (y1, y2) | (x1, x2) + scope2 (list): row scope | column scope, (y1, y2) | (x1, x2) + """ + a1, a2 = scope1 + a1 = min(a1, a1) + a2 = max(a1, a2) + b1, b2 = scope2 + b1 = min(b1, b2) + b2 = max(b1, b2) + + if a2 <= b1 or b2 <= a1: + return 0 + + s1 = max(a1, b1) + s2 = min(a2, b2) + l1 = min(a1, b1) + l2 = max(a2, b2) + + iou = round((s2 - s1) / (l2 - l1), 4) + return iou + + def compute_scope_iou_within_scope1(self, scope1, scope2): + """compute the iou of scope of rows or columns + + Args: + scope1 (list): row scope | column scope, (y1, y2) | (x1, x2) + scope2 (list): row scope | column scope, (y1, y2) | (x1, x2) + """ + a1, a2 = scope1 + a1 = min(a1, a1) + a2 = max(a1, a2) + b1, b2 = scope2 + b1 = min(b1, b2) + b2 = max(b1, b2) + + if a2 <= b1 or b2 <= a1: + return 0 + + s1 = max(a1, b1) + s2 = min(a2, b2) + + iou = round((s2 - s1) / (a2 - a1), 4) + return iou + + +class TableOCR: + def __init__( + self, + md_path, + ) -> None: + """An Table Recognition Method + + Args: + md_path: the path of xgb model + """ + self.model = pickle.load(open(md_path, 'rb')) + + def predict(self, img_path, result_of_ocr): + img = self.check_and_read_img(img_path=img_path) + res_boxes = self.get_ocr_text_boxes(img_path, result_of_ocr) + canvas = self.ocr_box_canvas(text_boxes=res_boxes, img_shape=img.shape) + canvas = canvas * 255 + regions = self.split_into_region(canvas=canvas, text_boxes=res_boxes, img=img) + regions = self.merge_same_cells_deal_complex_region(regions=regions, img=img) + return regions + + def get_ocr_text_boxes(self, img_path, result_of_ocr): + """get the text boxes of the ocr result of the img + + Args: + img_path (str, optional): image path. Defaults to None. + result_of_ocr (Result): the result of ocr model using pipeline of paddlex + + Returns: + shrink_boxes (list): box [x, y, w, h] + """ + ocr_res_json = result_of_ocr._to_json()['res'] + rec_boxes = ocr_res_json['rec_boxes'] + img = self.check_and_read_img(img_path=img_path) + shrink_boxes = [] + for i in range(len(rec_boxes)): + box = rec_boxes[i] + box_img = self.get_box_img(box=box, img=img) + assert box_img.shape[0] != 0 and box_img.shape[1] != 0, f'box_img is empty, img_path: {img_path}' + shrink_box_img, shrink_box = self.shrink_text_box(box_img=box_img, origin_box=box) + + new_shrink_boxes, new_box_imgs = self.modify_text_boxes(text_box=shrink_box, box_img=shrink_box_img) + + for k in range(len(new_shrink_boxes)): + tmp_box = new_shrink_boxes[k] + shrink_boxes.append(tmp_box) + + return shrink_boxes + + def get_box_img(self, box, img): + """_summary_ + + Args: + box (List): [x0, y0, x1, y1] + img (np.ndarray): image matrix array + + Returns: + _type_: _description_ + """ + box_img = img[box[1]:box[3], box[0]:box[2]] + return box_img + + def check_and_read_img(self, img_path: str): + assert os.path.exists(img_path), f"img_path doesn't exists \n{img_path}" + img = cv2.imread(img_path, cv2.IMREAD_GRAYSCALE) + return img + + def shrink_text_box(self, box_img, origin_box): + """only consider the table line is vertical or horizontal + + Args: + box_img (np.ndarray): img + origin_box (List): [x0, y0, x1, y1] + Returns: + shrink_box_img (np.ndarray): img after shrink + shrink_box (List): [x, y, w, h] + + """ + line_thresh = 0.05 * box_img.shape[1] + margin_thresh = 0.95 * box_img.shape[1] + + _, binary_image = cv2.threshold(box_img, 127, 1, cv2.THRESH_BINARY) + + # vertical analysis + vertical_accum = [] + for i in range(binary_image.shape[0]): + vertical_accum.append(np.sum(binary_image[i, :])) + + detail = {'margin': [], 'line': []} + margin_st = -1 + line_st = -1 + # detect line and margin + for k in range(binary_image.shape[0]): + if vertical_accum[k] < line_thresh: + if margin_st != -1: + detail['margin'].append([margin_st, k - 1]) + margin_st = -1 + if line_st == -1: + line_st = k + elif vertical_accum[k] > margin_thresh: + if line_st != -1: + detail['line'].append([line_st, k - 1]) + line_st = -1 + if margin_st == -1: + margin_st = k + else: + if line_st != -1: + detail['line'].append([line_st, k - 1]) + line_st = -1 + if margin_st != -1: + detail['margin'].append([margin_st, k - 1]) + margin_st = -1 + + if margin_st != -1: + detail['margin'].append([margin_st, binary_image.shape[0]-1]) + + if len(detail['margin']) == 1 and len(detail['line']) == 0: + return box_img, [origin_box[0], origin_box[1], origin_box[2] - origin_box[0], origin_box[3] - origin_box[1]] + + ver_main_scope_len = 0 + ver_main_scope = [0, 0] + for j in range(len(detail['margin'])-1): + text_line_st = detail['margin'][j][1] + text_line_ed = detail['margin'][j+1][0] + if text_line_ed - text_line_st >= ver_main_scope_len: + ver_main_scope_len = text_line_ed - text_line_st + ver_main_scope = [text_line_st, text_line_ed] + + if ver_main_scope == [0, 0]: + ver_main_scope = [0, binary_image.shape[0]] + vertical_shrink_box = binary_image[ver_main_scope[0]: ver_main_scope[1], :] + + # horizontal analysis + line_thresh = 0.05 * vertical_shrink_box.shape[0] + margin_thresh = 0.95 * vertical_shrink_box.shape[0] + horizontal_accum = [] + for i in range(vertical_shrink_box.shape[1]): + horizontal_accum.append(np.sum(vertical_shrink_box[:, i])) + + detail = {'margin': [], 'line': []} + margins = [] + margin_st = -1 + line_st = -1 + for k in range(vertical_shrink_box.shape[1]): + if horizontal_accum[k] < line_thresh: + if margin_st != -1: + if k - 1 - margin_st > 0: + detail['margin'].append([margin_st, k - 1]) + margins.append(k - 1 - margin_st) + margin_st = -1 + if line_st == -1: + line_st = k + elif horizontal_accum[k] > margin_thresh: + if line_st != -1: + detail['line'].append([line_st, k - 1]) + line_st = -1 + if margin_st == -1: + margin_st = k + else: + if line_st != -1: + line_st = -1 + if margin_st != -1: + if k - 1 - margin_st > 0: + detail['margin'].append([margin_st, k - 1]) + margins.append(k - 1 - margin_st) + margin_st = -1 + + if len(detail['margin']) == 1 and len(detail['line']) == 0: + self.logger.debug(f'box_img.shape: {box_img.shape}, shrink_box: {[origin_box[0], origin_box[1] + ver_main_scope[0], origin_box[2], ver_main_scope[1] - ver_main_scope[0]]}') + return box_img[ver_main_scope[0]:ver_main_scope[1], :], [origin_box[0], origin_box[1] + ver_main_scope[0], origin_box[2] - origin_box[0], ver_main_scope[1] - ver_main_scope[0]] + + hor_main_scope = [0, 0] + hor_main_scope_len = 0 + + if len(detail['line']) > 0: + for n in range(len(detail['line'])): + line = detail['line'][n] + if n == 0 and line[0] != 0: + hor_main_scope = [0, line[0] - 1] + hor_main_scope_len = line[0] - 1 + elif n != 0: + if detail['line'][n][0] - 1 - (detail['line'][n-1][1] + 1) > hor_main_scope_len: + hor_main_scope = [detail['line'][n-1][1] + 1, detail['line'][n][0] - 1] + hor_main_scope_len = detail['line'][n][0] - 1 - (detail['line'][n-1][1] + 1) + + if hor_main_scope == [0, 0]: + hor_main_scope = [0, box_img.shape[1]] + + shrink_img = box_img[ver_main_scope[0]:ver_main_scope[1], hor_main_scope[0]:hor_main_scope[1]] + shrink_box = [origin_box[0] + hor_main_scope[0], origin_box[1] + ver_main_scope[0], hor_main_scope[1] - hor_main_scope[0], ver_main_scope[1] - ver_main_scope[0]] + + return shrink_img, shrink_box + + def box_to_four_coordinates(self, box): + """transform box from [x, y, w, h] to four points, x is vertical axis, and y is horizontal axis + + Args: + box (list): [x, y, w, h] + Returns: + pts (list): four points of polygon + """ + origin_x, origin_y, w, h = box + pts = [(origin_x, origin_y), (origin_x + w, origin_y), (origin_x + w, origin_y + h), (origin_x, origin_y + h)] + return pts + + def transform_x1y1x2y2_into_four_coordinates(self, ocr_box): + """ + + Args: + ocr_box (List): [x0, y0, x1, y1] + Returns: + pts (List): four points of ocr box + """ + x0, y0, x1, y1 = ocr_box + pts = [(x0, y0), (x1, y0), (x1, y1), (x0, y1)] + return pts + + def ocr_box_canvas(self, text_boxes: List, img_shape: Tuple): + """draw text boxes in a canvas + + Args: + text_boxes (List): [x, y, width, height] + img_shape (Tuple): img.shape + Returns: + canvas (np.ndarray): blank matrix with text box as 1 + """ + canvas = np.zeros(img_shape) + for box in text_boxes: + x, y, w, h = box + canvas[y:y+h, x:x+w] = 1 + return canvas + + def split_into_region(self, canvas: np.ndarray, text_boxes: List, img: np.ndarray = None, iou_thresh=0.8): + """ split text boxes into region cell, detect empty cell inside + + Args: + canvas (np.ndarray): blank matrix with text box as 1 + text_boxes (List): the small text boxes, [[x, y, w, h], ...] + img (np.ndarray): for debug + Returns: + region (List): list of group of text boxes, [{'bound': [x1, y1, x2, y2], 'text_boxes': [[x1, y1, w, h], ...]}, ...] + """ + subgraphs = self.split_into_subgraph(canvas=canvas, text_boxes=text_boxes, img=img) + row_subgraphs = subgraphs['row'] + col_subgraphs = subgraphs['col'] + + regions = [] # [{'bound': [x1, y1, x2, y2], 'text_boxes': [[x1, y1, w, h]]}] + i = 0 + j = 0 + + for i in row_subgraphs.keys(): + r_y1, r_y2 = row_subgraphs[i]['scope'] + for j in col_subgraphs.keys(): + r_x1, r_x2 = col_subgraphs[j]['scope'] + rect2 = [r_x1, r_y1, r_x2, r_y2] + region = {'bound': rect2, 'text_boxes': [], 'empty_cell': 0} + for box in text_boxes: + x1, y1, w, h = box + x2 = x1 + w + y2 = y1 + h + rect1 = [x1, y1, x2, y2] + iou = compute_iou(box1=rect1, box2=rect2) + if iou >= iou_thresh: + region['text_boxes'].append(box) + self.logger.debug(f'row {i} col {j} inside text box: {rect1}, cell bound: {rect2}') + if len(region['text_boxes']) == 0: + region['empty_cell'] = 1 + + regions.append(region) + + return regions + + def get_bounds(self, bin_canvas: np.ndarray, mode: str): + """get margin bounds of row or column of one image + + Args: + bin_canvas (np.ndarray): binary image to analyse + mode (str): 'row'|'col' + Returns: + list: bounds [int, ...] + """ + assert mode in ['row', 'col'], f'Mode {mode} is not supported yet' + margin_bounds = [] + st = -1 + ed = -1 + margin_st = -1 + margin_ed = -1 + if mode == 'row': + range_scope = bin_canvas.shape[0] + elif mode == 'col': + range_scope = bin_canvas.shape[1] + + proj_values = [] # debug param + for i in range(range_scope): + if mode == 'row': + proj = np.sum(bin_canvas[i, :]) + elif mode == 'col': + proj = np.sum(bin_canvas[:, i]) + + proj_values.append(proj) + # start st point + if proj != 0 and margin_st == -1: + if i == 0: + st = i + else: + st = i - 1 + margin_st = 0 + continue + + if proj == 0 and margin_st != -1: + margin_st = i + continue + elif proj != 0 and margin_st > 0: + margin_ed = i - 1 + margin_bounds.append([margin_st, margin_ed]) + margin_st = 0 + margin_ed = 0 + + if proj != 0: + ed = i + + margin_bounds = [int(np.mean(bound)) for bound in margin_bounds] + + margin_bounds.insert(0, st) + margin_bounds.append(ed) + + return margin_bounds + + def merge_same_cells_deal_complex_region(self, regions: list, img: np.ndarray, iou_thresh=0.6, dis_thresh=25): + """merge same cell text ocr boxes, + + Args: + regions (List): list of group of text boxes, [{'bound': [x1, y1, x2, y2], 'text_boxes': [[x1, y1, w, h], ...], 'empty_cell': 0|1}, ...] + img (np.ndarray): image + + Returns: + new_regions_info (List): list of dict, [{'bound': [x1, y1, x2, y2], 'text_boxes': [[x1, y1, w, h], ...], 'empty_cell': 0|1}, ...] + """ + new_regions_info = [] + for i in range(len(regions)): + text_boxes = regions[i]['text_boxes'] + empty_cell_flag = regions[i]['empty_cell'] + bound = regions[i]['bound'] + if len(text_boxes) == 1 or empty_cell_flag: + new_regions_info.append(regions[i]) + continue + + boxes_rel = {} # {'index of box': {'same_cell': [index of boxes|int], 'same_row': [index of boxes|int}, 'same_col': [index of boxes|int]} + for n in range(len(text_boxes)): + box1 = text_boxes[n] + boxes_rel[str(n)] = {'same_cell': [], 'same_row': [], 'same_col': []} + for m in range(n + 1, len(text_boxes)): + box2 = text_boxes[m] + rel = self.get_boxes_rel(box1=box1, box2=box2, res_boxes=text_boxes) + if rel == 0: + boxes_rel[str(n)]['same_cell'].append(m) + elif rel == 1: + boxes_rel[str(n)]['same_row'].append(m) + elif rel == 2: + boxes_rel[str(n)]['same_col'].append(m) + elif rel == 3: + pass + if rel != 0: + dis, _ = self.cal_box_dis(box1, box2) + if dis < 0.2 * dis_thresh: + boxes_rel[str(n)]['same_cell'].append(m) + + # same cell merge + same_cells_indexes = [] + for j in boxes_rel.keys(): + if len(boxes_rel[j]['same_cell']) == 0: + continue + + repeat_guard = False + cur_box = text_boxes[int(j)] + # check repeat + for k in range(len(same_cells_indexes)): + if int(j) in same_cells_indexes[k]: + repeat_guard = True + continue + if repeat_guard: + continue + + same_cell_idxs = boxes_rel[j]['same_cell'] + checked_same_cell_idxes = [] + for w in same_cell_idxs: + tmp_box = text_boxes[w] + dis, _ = self.cal_box_dis(cur_box, tmp_box) + if dis > dis_thresh: + continue + checked_same_cell_idxes.append(w) + same_cell_idxs = checked_same_cell_idxes + + add_idxs = [] + for idx in same_cell_idxs: + tmp_idxes = boxes_rel[str(idx)]['same_cell'] + for _idx in tmp_idxes: + if _idx in same_cell_idxs: + continue + tmp_box = text_boxes[_idx] + dis, _ = self.cal_box_dis(cur_box, tmp_box) + if dis > dis_thresh: + continue + add_idxs.append(idx) + complete_same_cell_idxs = same_cell_idxs + add_idxs + [int(j)] + + if len(complete_same_cell_idxs) == 1: + continue + same_cells_indexes.append(complete_same_cell_idxs) + + # merge same cell text boxes + cell_region_info = [] # [{'bound': [x1, y1, x2, y2], 'text_boxes_idxs': [], 'text_boxes': [x, y, w, h]}] + deal_text_boxes_idxs = [] + for q in range(len(same_cells_indexes)): + cell_boxes_indexes = same_cells_indexes[q] + x1 = 1e5 + y1 = 1e5 + x2 = -1 + y2 = -1 + same_cells_text_boxes = [] + for p in cell_boxes_indexes: + tmp_x1, tmp_y1, tmp_w, tmp_h = text_boxes[p] + tmp_x2 = tmp_x1 + tmp_w + tmp_y2 = tmp_y1 + tmp_h + x1 = min(x1, tmp_x1) + x2 = max(x2, tmp_x2) + y1 = min(y1, tmp_y1) + y2 = max(y2, tmp_y2) + + merged_cell_info = {'bound': (x1, y1, x2, y2), 'box': [x1, y1, x2 - x1, y2 - y1], 'text_boxes_idxs': cell_boxes_indexes, 'text_boxes': same_cells_text_boxes, 'empty_cell': 0} + cell_region_info.append(merged_cell_info) + deal_text_boxes_idxs.extend(cell_boxes_indexes) + + # deal the remained text_boxes + for q in range(len(text_boxes)): + if q in deal_text_boxes_idxs: + continue + _x, _y, _w, _h = text_boxes[q] + text_bound = (_x, _y, _x + _w, _y + _h) + cell_region_info.append({'bound': text_bound, 'box': text_boxes[q], 'text_boxes_idxs': [q], 'text_boxes': [text_boxes[q]], 'empty_cell': 0}) + + # deal overlap + deal_overlap_cell_region = [] + overlap_indexes = [] + for a in range(len(cell_region_info)): + bound_a = cell_region_info[a]['bound'] + if a in overlap_indexes: + continue + append_guard = True + for b in range(a + 1, len(cell_region_info)): + if b in overlap_indexes: + continue + bound_b = cell_region_info[b]['bound'] + iou = max(compute_iou(bound_a, bound_b), compute_iou(bound_b, bound_a)) + if iou > 0.3: + overlap_indexes.append(b) + cell_region_info[a]['text_boxes'].extend(cell_region_info[b]['text_boxes']) + new_bound = (min(bound_a[0], bound_b[0]), min(bound_a[1], bound_b[1]), max(bound_a[2], bound_b[2]), max(bound_b[3], bound_a[3])) + new_text_boxes_idxs = cell_region_info[a]['text_boxes_idxs'].extend(cell_region_info[b]['text_boxes_idxs']) + new_text_boxes = cell_region_info[a]['text_boxes'] + cell_region_info[b]['text_boxes'] + new_cell_region = {'bound': new_bound, 'box': (new_bound[0], new_bound[1], new_bound[2] - new_bound[0], new_bound[3] - new_bound[1]), 'text_boxes_idxs': new_text_boxes_idxs, 'text_boxes': new_text_boxes, 'empty_cell': 0} + deal_overlap_cell_region.append(new_cell_region) + append_guard = False + continue + if append_guard: + deal_overlap_cell_region.append(cell_region_info[a]) + + cell_region_info = deal_overlap_cell_region + + if len(cell_region_info) == 1: + cell_region_info[0]['bound'] = bound + new_regions_info.extend(cell_region_info) + continue + + # deal complex region + cell_region_info = self.split_complex_region(cell_region_info=cell_region_info, bound=bound, img=img, iou_thresh=0.6) + + new_regions_info.extend(cell_region_info) + continue + return new_regions_info + + def split_complex_region(self, cell_region_info: List, bound: List, img: np.ndarray, iou_thresh=0.6): + """split complex region into cells + + Args: + cell_region_info (List): [{'bound': [x1, y1, x2, y2], 'text_boxes': [x, y, w, h], 'empty_cell': 0, 'box': [x1, y1, x2, y2], 'text_boxes_idxs': cell_boxes_indexes}] + bound (List): bound of the complex region [x1, y1, x2, y2] + img (np.ndarray): origin image + iou_thresh (float, optional): _description_. Defaults to 0.6. + + Returns: + new_regions_info (List): list of dict, [{'bound': [x1, y1, x2, y2], 'text_boxes': [[x1, y1, w, h], ...], 'empty_cell': 0|1, ...] + """ + new_regions_info = [] # the same structure as cell_region_info + # analyze row + # #transform coordinate from absolute to relative + q = 0 + inside_region_cell_boxes = [] + for q in cell_region_info: + _x, _y, _x2, _y2 = q['bound'] + _w = _x2 - _x + _h = _y2 - _y + inside_region_cell_boxes.append([_x - bound[0], _y - bound[1], _w, _h]) + + img_shape = img[bound[1]:bound[3], bound[0]:bound[2]].shape + inside_region_canvas = self.ocr_box_canvas(text_boxes=inside_region_cell_boxes, img_shape=img_shape) + + row_subgraphs = self.row_analyse(canvas=inside_region_canvas) + # #transform coordinate from relative to absolute + for s in range(len(row_subgraphs.keys())): + q = list(row_subgraphs.keys())[s] + if s == len(row_subgraphs.keys()) - 1: + row_subgraphs[q]['scope'] = [row_subgraphs[q]['scope'][0] + bound[1], bound[3]] + else: + row_subgraphs[q]['scope'] = [row_subgraphs[q]['scope'][0] + bound[1], row_subgraphs[q]['scope'][1] + bound[1]] + + # case 1 + if len(row_subgraphs) == 1: + sorted_cell_region_info = list(sorted(cell_region_info, key=lambda x: x["bound"][0])) + # fresh bound + new_bound_cell_region_info = self.fresh_bound(sorted_cell_region_info=sorted_cell_region_info, bound=bound) + new_regions_info.extend(new_bound_cell_region_info) + return new_regions_info + else: + # split rows + for p in row_subgraphs.keys(): + subgraph_scope = row_subgraphs[p]['scope'] + row_subgraphs[p]['cells_info'] = [] # [{'cell_idx': int, 'bound': [x1, y1, x2, y2], 'cell_box': [x, y, w, h], 'text_boxes_idxs': list of int|indexes of text boxes which belong to the same cell, 'text_boxes': []}] + row_subgraphs[p]['bound'] = [bound[0], subgraph_scope[0], bound[2], subgraph_scope[1]] + for q in range(len(cell_region_info)): + cell_bound = cell_region_info[q]['bound'] + x, y, x1, y1 = cell_bound + h = y1 - y + if y >= subgraph_scope[0] and y + h <= subgraph_scope[1]: + row_subgraphs[p]['cells_info'].append({'cell_idx': q, 'bound': cell_region_info[q]['bound'], 'text_boxes_idxs': cell_region_info[q]['text_boxes_idxs'], 'text_boxes': cell_region_info[q]['text_boxes']}) + elif y + h <= subgraph_scope[0] or y >= subgraph_scope[1]: + pass + else: + iou = 0 + if y >= subgraph_scope[0] and y < subgraph_scope[1] and y + h > subgraph_scope[1]: + iou = round((subgraph_scope[1] - y) / h, 2) + elif y < subgraph_scope[0] and y + h > subgraph_scope[0] and y + h <= subgraph_scope[1]: + iou = round((y + h - subgraph_scope[0]) / h, 2) + elif y <= subgraph_scope[0] and y + h >= subgraph_scope[1]: + iou = round((subgraph_scope[1] - subgraph_scope[0]) / h, 2) + if iou >= iou_thresh: + row_subgraphs[p]['cells_info'].append({'cell_idx': q, 'bound': cell_region_info[q]['bound'], 'text_boxes_idxs': cell_region_info[q]['text_boxes_idxs'], 'text_boxes': cell_region_info[q]['text_boxes']}) + + # get new split cells + for k in range(len(row_subgraphs.keys())): + q = list(row_subgraphs.keys())[k] + tmp_row_info = row_subgraphs[q] + if len(tmp_row_info['cells_info']) == 1: + tmp_row_info['cells_info'][0]['bound'] = tmp_row_info['bound'] + new_regions_info.append(tmp_row_info['cells_info'][0]) + continue + + row_subgraphs[p]['cells_info'] = list(sorted(tmp_row_info['cells_info'], key=lambda x: x["bound"][0])) + row_bound = row_subgraphs[p]['bound'] + row_cells_info = row_subgraphs[p]['cells_info'] + + if len(row_cells_info) == 0: + continue + + # refresh the bound + new_split_row_cell_info = self.fresh_bound(sorted_cell_region_info=row_cells_info, bound=row_bound) + + new_regions_info.extend(new_split_row_cell_info) + continue + + return new_regions_info + + def fresh_bound(self, sorted_cell_region_info, bound): + q = 0 + x_st = bound[0] + new_bound_cell_region_info = [] + for q in range(len(sorted_cell_region_info) - 1): + cur_bound = sorted_cell_region_info[q]['bound'] + next_bound = sorted_cell_region_info[q + 1]['bound'] + x_ed = 0.5 * (cur_bound[2] + next_bound[0]) + sorted_cell_region_info[q]['bound'] = [x_st, bound[1], x_ed, bound[3]] + new_bound_cell_region_info.append(sorted_cell_region_info[q]) + x_st = x_ed + + sorted_cell_region_info[-1]['bound'] = [x_st, bound[1], bound[2], bound[3]] + new_bound_cell_region_info.append(sorted_cell_region_info[-1]) + return new_bound_cell_region_info + + def row_analyse(self, canvas: np.ndarray): + row_proj = [] + for i in range(canvas.shape[0]): + row_proj.append(np.sum(canvas[i, :])) + + row_subgraphs = {} + + row_st = -1 + for j in range(canvas.shape[0]): + if row_proj[j] > 0 and row_st == -1: + row_st = j + elif row_proj[j] == 0 and row_st != -1: + row_subgraphs[str(len(row_subgraphs))] = {'scope': [row_st, j - 1], 'text_boxes': [], 'cells_info': []} + row_st = -1 + + if row_st != -1: + row_subgraphs[str(len(row_subgraphs))] = {'scope': [row_st, canvas.shape[0] - 1], 'text_boxes': [], 'cells_info': []} + + correct_st = 0 + for k in range(len(row_subgraphs) - 1): + correct_ed = int((row_subgraphs[str(k)]['scope'][1] + row_subgraphs[str(k+1)]['scope'][0]) / 2) + row_subgraphs[str(k)]['scope'] = [correct_st, correct_ed] + correct_st = correct_ed + + row_subgraphs[list(row_subgraphs.keys())[-1]]['scope'] = [correct_st, row_subgraphs[list(row_subgraphs.keys())[-1]]['scope'][1]] + + return row_subgraphs + + def col_analyse(self, canvas: np.ndarray): + col_proj = [] + for k in range(canvas.shape[1]): + col_proj.append(np.sum(canvas[:, k])) + + col_subgraphs = {} + + col_st = -1 + for q in range(canvas.shape[1]): + if col_proj[q] > 0 and col_st == -1: + col_st = q + elif col_proj[q] == 0 and col_st != -1: + col_subgraphs[str(len(col_subgraphs))] = {'scope': [col_st, q - 1], 'text_boxes': []} + col_st = -1 + + if col_st != -1: + col_subgraphs[str(len(col_subgraphs))] = {'scope': [col_st, canvas.shape[1] - 1], 'text_boxes': []} + return col_subgraphs + + def split_into_subgraph(self, canvas: np.ndarray, text_boxes: List, img: np.ndarray = None, iou_thresh=0.6): + """ split text boxes into subgraphs + + Args: + canvas (np.ndarray): blank matrix with text box as 1 + text_boxes (List): the small text boxes, [[x, y, w, h], ...] + img (np.ndarray): for debug + Returns: + box_groups (List): list of group of text boxes + """ + row_proj = [] + for i in range(canvas.shape[0]): + row_proj.append(np.sum(canvas[i, :])) + + row_subgraphs = {} + + row_st = -1 + for j in range(canvas.shape[0]): + if row_proj[j] > 0 and row_st == -1: + row_st = j + elif row_proj[j] == 0 and row_st != -1: + row_subgraphs[str(len(row_subgraphs))] = {'scope': [row_st, j - 1], 'text_boxes': []} + row_st = -1 + + if row_st != -1: + row_subgraphs[str(len(row_subgraphs))] = {'scope': [row_st, canvas.shape[0] - 1], 'text_boxes': []} + + col_proj = [] + for k in range(canvas.shape[1]): + col_proj.append(np.sum(canvas[:, k])) + + col_subgraphs = {} + + col_st = -1 + for q in range(canvas.shape[1]): + if col_proj[q] > 0 and col_st == -1: + col_st = q + elif col_proj[q] == 0 and col_st != -1: + col_subgraphs[str(len(col_subgraphs))] = {'scope': [col_st, q - 1], 'text_boxes': []} + col_st = -1 + + if col_st != -1: + col_subgraphs[str(len(col_subgraphs))] = {'scope': [col_st, canvas.shape[1] - 1], 'text_boxes': []} + + for box in text_boxes: + x, y, w, h = box + for n in range(len(row_subgraphs)): + subgraph_scope = row_subgraphs[str(n)]['scope'] + if y >= subgraph_scope[0] and y + h <= subgraph_scope[1]: + row_subgraphs[str(n)]['text_boxes'].append(box) + elif y + h <= subgraph_scope[0] or y >= subgraph_scope[1]: + pass + else: + iou = 0 + if y >= subgraph_scope[0] and y < subgraph_scope[1] and y + h > subgraph_scope[1]: + iou = round((subgraph_scope[1] - y)/h, 2) + elif y < subgraph_scope[0] and y + h > subgraph_scope[0] and y + h <= subgraph_scope[1]: + iou = round((y+h-subgraph_scope[0])/h, 2) + elif y <= subgraph_scope[0] and y + h >= subgraph_scope[1]: + iou = round((subgraph_scope[1] - subgraph_scope[0])/h, 2) + if iou >= iou_thresh: + row_subgraphs[str(n)]['text_boxes'].append(box) + + for m in range(len(col_subgraphs)): + subgraph_scope = col_subgraphs[str(m)]['scope'] + if x >= subgraph_scope[0] and x + h <= subgraph_scope[1]: + col_subgraphs[str(m)]['text_boxes'].append(box) + elif x + h <= subgraph_scope[0] or x >= subgraph_scope[1]: + pass + else: + iou = 0 + if x >= subgraph_scope[0] and x < subgraph_scope[1] and x + w > subgraph_scope[1]: + iou = round((subgraph_scope[1] - x)/w, 2) + elif x < subgraph_scope[0] and x + w > subgraph_scope[0] and x + w <= subgraph_scope[1]: + iou = round((x + w - subgraph_scope[0])/w, 2) + elif x <= subgraph_scope[0] and x + w > subgraph_scope[1]: + iou = round((subgraph_scope[1] - subgraph_scope[0])/w, 2) + if iou >= iou_thresh: + col_subgraphs[str(m)]['text_boxes'].append(box) + + # deal some error row + i = 0 + for i in row_subgraphs.keys(): + if len(row_subgraphs[i]['text_boxes']) > 1: + continue + y1, y2 = row_subgraphs[i]['scope'] + if int(i) == 0: + continue + elif int(i) == len(row_subgraphs) - 1: + row_subgraphs[str(int(i) - 1)]['text_boxes'].extend(row_subgraphs[i]['text_boxes']) + y21, y22 = row_subgraphs[str(int(i) - 1)]['scope'] + row_subgraphs[str(int(i) - 1)]['scope'] = [y21, y2] + else: + yl1, yl2 = row_subgraphs[str(int(i) - 1)]['scope'] + yr1, yr2 = row_subgraphs[str(int(i) + 1)]['scope'] + if y1 - yl2 <= yr1 - y2: + row_subgraphs[str(int(i) - 1)]['text_boxes'].extend(row_subgraphs[i]['text_boxes']) + row_subgraphs[str(int(i) - 1)]['scope'] = [yl1, y2] + else: + row_subgraphs[str(int(i) + 1)]['text_boxes'].extend(row_subgraphs[i]['text_boxes']) + row_subgraphs[str(int(i) + 1)]['scope'] = [y1, yr2] + row_subgraphs[i]['text_boxes'] = [] + row_subgraphs = {n: row_subgraphs[n] for n in row_subgraphs.keys() if row_subgraphs[n]['text_boxes'] != []} + + # deal some error col + i = 0 + for i in col_subgraphs.keys(): + if len(col_subgraphs[i]['text_boxes']) > 1: + continue + x1, x2 = col_subgraphs[i]['scope'] + if int(i) == 0: + continue + elif int(i) == len(col_subgraphs) - 1: + col_subgraphs[str(int(i) - 1)]['text_boxes'].extend(col_subgraphs[i]['text_boxes']) + x21, x22 = col_subgraphs[str(int(i) - 1)]['scope'] + col_subgraphs[str(int(i) - 1)]['scope'] = [x21, x2] + else: + xl1, xl2 = col_subgraphs[str(int(i) - 1)]['scope'] + xr1, xr2 = col_subgraphs[str(int(i) + 1)]['scope'] + if x1 - xl2 <= xr1 - x2: + col_subgraphs[str(int(i) - 1)]['text_boxes'].extend(col_subgraphs[i]['text_boxes']) + col_subgraphs[str(int(i) - 1)]['scope'] = [xl1, x2] + else: + col_subgraphs[str(int(i) + 1)]['text_boxes'].extend(col_subgraphs[i]['text_boxes']) + col_subgraphs[str(int(i) + 1)]['scope'] = [x1, xr2] + col_subgraphs[i]['text_boxes'] = [] + + col_subgraphs = {n: col_subgraphs[n] for n in col_subgraphs.keys() if col_subgraphs[n]['text_boxes'] != []} + + subgraphs = {'row': row_subgraphs, 'col': col_subgraphs} + return subgraphs + + def modify_text_boxes(self, text_box: List, box_img: np.ndarray, col_split_percent=90): + """correct the results of ocr det model + + Args: + text_boxes (List): the text boxes, [x, y, w, h] + box_img (np.ndarray): the text box image + Returns: + new_text_boxes (List): the text boxes + new_box_img (np.ndarray): the binary image + """ + _, bin_box_img = cv2.threshold(box_img, 127, 1, cv2.THRESH_BINARY) + bin_box_img = 1 - bin_box_img + x, y, w, h = text_box + hor_proj = [] + for i in range(bin_box_img.shape[1]): + hor_proj.append(np.sum(bin_box_img[:, i])) + + margins = [] + st = -1 + for j in range(len(hor_proj)): + if j == 0 and hor_proj[j] == 0: + continue + if hor_proj[j] == 0 and hor_proj[j-1] != 0: + st = j + elif hor_proj[j] != 0 and st != -1 and j - 1 - st > 0: + margins.append({'scope': [st, j - 1], 'length': j - 1 - st}) + st = -1 + + if len(margins) <= 3: + return [text_box], [box_img] + + median_thresh = np.percentile([_d['length'] for _d in margins], col_split_percent) + bonds = [] + for k in margins: + if k['length'] > median_thresh: + bonds.append(k['scope']) + + if len(bonds) == 0: + return [text_box], [box_img] + + new_st = x + new_text_boxes = [] + new_box_imgs = [] + for n in range(len(bonds)): + if n == 0: + if bonds[n][0] > 1 and h > 1: + new_text_boxes.append([new_st, y, bonds[n][0], h]) + tmp_box_img = box_img[0:h, new_st-x:new_st-x+bonds[n][0]] + else: + tmp_box_img = [] + else: + if bonds[n][0] - bonds[n-1][1] > 1 and h > 1: + new_text_boxes.append([new_st, y, bonds[n][0] - bonds[n-1][1], h]) + tmp_box_img = box_img[0:h, new_st-x:new_st-x+bonds[n][0]-bonds[n-1][0]] + else: + tmp_box_img = [] + + if tmp_box_img != []: + new_box_imgs.append(tmp_box_img) + new_st = x + bonds[n][1] + + if new_st != len(hor_proj) - 1: + if x + w - new_st > 1 and h > 1: + new_text_boxes.append([new_st, y, x + w - new_st, h]) + tmp_box_img = box_img[0:h, new_st-x: w] + assert tmp_box_img != [], f'[0:h, new_st-x: w]: [0:{h}, {new_st-x}: {w}], box_img: {box_img.shape}, new_st: {new_st}, w: {w}' + new_box_imgs.append(tmp_box_img) + + return new_text_boxes, new_box_imgs + + def get_boxes_rel(self, box1: list, box2: list, res_boxes): + """predict the relationship between two boxes + + Args: + box1 (list): [x, y, w, h] + box2 (list): [x, y, w, h] + + Returns: + int: 0: same cell, 1: same row, 2: same col, 3: same no relation + """ + ws = [] + hs = [] + for _box in res_boxes: + ws.append(_box[2]) + hs.append(_box[3]) + median_w = np.median(ws) + median_h = np.median(hs) + + x1, y1, w1, h1 = box1 + x12 = x1 + w1 + y12 = y1 + h1 + core_x1 = x1 + 0.5 * w1 + core_y1 = y1 + 0.5 * h1 + + x2, y2, w2, h2 = box2 + x22 = x2 + w2 + y22 = y2 + h2 + core_x2 = x2 + 0.5 * w2 + core_y2 = y2 + 0.5 * h2 + + core_x_diff = round((core_x1 - core_x2) / median_w, 4) + core_y_diff = round((core_y1 - core_y2) / median_h, 4) + lt_x_diff = round((x1 - x2) / median_w, 4) + br_x_diff = round((x12 - x22) / median_w, 4) + lt_y_diff = round((y1 - y2) / median_h, 4) + br_y_diff = round((y12 - y22) / median_h, 4) + w_diff = round((w1 - w2) / median_w, 4) + h_diff = round((h1 - h2) / median_h, 4) + + x_data = [{'core_x_diff': core_x_diff, 'core_y_diff': core_y_diff, 'lt_x_diff': lt_x_diff, 'br_x_diff': br_x_diff, 'lt_y_diff': lt_y_diff, 'br_y_diff': br_y_diff, 'w_diff': w_diff, 'h_diff': h_diff}] + x_df = pd.DataFrame(data=x_data, columns=['core_x_diff', 'core_y_diff', 'lt_x_diff', 'br_x_diff', 'lt_y_diff', 'br_y_diff', 'w_diff', 'h_diff']) + + y = self.model.predict(x_df)[0] + + return y + + def cal_box_dis(self, box1: List, box2: List): + """calculate the Euclidean distance between core of box + + Args: + box1 (List): [x1, y1, w1, h1] + box2 (List): [x2, y2, w2, h2] + + Returns: + float: Euclidean distance + + Tuple: closest point pair + """ + # pts on box1 + row_samples = np.linspace(box1[1], box1[1] + box1[3], num=10) + col_samples = np.linspace(box1[0], box1[0] + box1[2], num=10) + pts1 = [] + for i in row_samples: + for j in col_samples: + pts1.append((i, j)) + + # pts on box2 + row_samples = np.linspace(box2[1], box2[1] + box2[3], num=4) + col_samples = np.linspace(box2[0], box2[0] + box2[2], num=4) + pts2 = [] + for i in row_samples: + for j in col_samples: + pts2.append((i, j)) + + min_distance = float('inf') + closest_pair = (None, None) + + for point1 in pts1: + for point2 in pts2: + distance = euclidean_distance(point1, point2) + if distance < min_distance: + min_distance = distance + closest_pair = (point1, point2) + + return min_distance, closest_pair + + +def compute_iou(box1, box2): + """ + Compute the Intersection over Union (IoU) between two rectangles. + + Args: + box1 (array-like): [x1, y1, x2, y2] of the first rectangle. + box2 (array-like): [x1, y1, x2, y2] of the second rectangle. + + Returns: + float: The IoU between the two rectangles. + """ + # Determine the coordinates of the intersection rectangle + x_left = max(box1[0], box2[0]) + y_top = max(box1[1], box2[1]) + x_right = min(box1[2], box2[2]) + y_bottom = min(box1[3], box2[3]) + if x_right <= x_left or y_bottom <= y_top: + return 0.0 + # Calculate the area of intersection rectangle + intersection_area = (x_right - x_left) * (y_bottom - y_top) + # Calculate the area of both rectangles + box1_area = (box1[2] - box1[0]) * (box1[3] - box1[1]) + box2_area = (box2[2] - box2[0]) * (box2[3] - box2[1]) + # Calculate the IoU + iou = intersection_area / float(box1_area) + return iou + + +def euclidean_distance(point1, point2): + """Calculate the Euclidean distance between two points + Args: + point1 (Tuple|List|Array): (x1, y1) + point2 (Tuple|List|Array): (x2, y2) + + Returns: + float: Euclidean distance + """ + return np.sqrt(np.sum((np.array(point1) - np.array(point2)) ** 2)) diff --git a/paddlex/inference/pipelines/table_recognition/xgb.pickle b/paddlex/inference/pipelines/table_recognition/xgb.pickle new file mode 100644 index 0000000000000000000000000000000000000000..3342363375c35ef279c99ecbfab7ee1f2a708e0c GIT binary patch literal 1562006 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≪vgcS#RXY=iOh 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 UNXl+t6q>Nnf7;?D$*v#qH+w)&djJ3c literal 0 HcmV?d00001 From d1022ce0ef2405d2422f692b5c0007195b22824b Mon Sep 17 00:00:00 2001 From: Ernestina <121707790@qq.com> Date: Tue, 24 Jun 2025 23:46:36 +0800 Subject: [PATCH 2/3] black&isort --- .../pipelines/table_recognition/utils.py | 735 ++++++++++++------ 1 file changed, 507 insertions(+), 228 deletions(-) diff --git a/paddlex/inference/pipelines/table_recognition/utils.py b/paddlex/inference/pipelines/table_recognition/utils.py index 493833ddef..0a04dec73c 100644 --- a/paddlex/inference/pipelines/table_recognition/utils.py +++ b/paddlex/inference/pipelines/table_recognition/utils.py @@ -15,13 +15,14 @@ __all__ = ["get_neighbor_boxes_idx"] import os -import cv2 -import numpy as np import pickle -import pandas as pd from copy import deepcopy from typing import Any, List, Optional, Tuple +import cv2 +import numpy as np +import pandas as pd + def get_neighbor_boxes_idx(src_boxes: np.ndarray, ref_box: np.ndarray) -> list: """ @@ -52,8 +53,8 @@ def get_neighbor_boxes_idx(src_boxes: np.ndarray, ref_box: np.ndarray) -> list: class TableRec: def __init__( - self, - md_path='./paddlex/inference/pipelines/table_recognition/xgb.pickle', + self, + md_path="./paddlex/inference/pipelines/table_recognition/xgb.pickle", ) -> None: """An Table Recognition Method @@ -66,13 +67,15 @@ def predict(self, img_path, result_of_ocr, result_of_det_cells_model): img = self.read_img(img_path=img_path) frame_lines = self.classify_table(img) if len(frame_lines) == 0: - pred_bounds = self.predict_no_frame(img, img_path, result_of_det_cells_model, result_of_ocr) + pred_bounds = self.predict_no_frame( + img, img_path, result_of_det_cells_model, result_of_ocr + ) else: pred_bounds = self.predict_three_lines_frame(img, result_of_det_cells_model) return pred_bounds def predict_no_frame(self, img, img_path, result_of_det_cells_model, result_of_ocr): - """ recognize table without frame and lines + """recognize table without frame and lines Args: img (array): binary array @@ -86,12 +89,12 @@ def predict_no_frame(self, img, img_path, result_of_det_cells_model, result_of_o output = result_of_det_cells_model pred_bounds = [] for res in output: - pred_dicts = res._to_json()['res']['boxes'] + pred_dicts = res._to_json()["res"]["boxes"] for k in range(len(pred_dicts)): - pred_bounds.append(pred_dicts[k]['coordinate']) + pred_bounds.append(pred_dicts[k]["coordinate"]) regions = self.table_ocr.predict(img_path, result_of_ocr) cells_info = self.merge_predictions(img, pred_bounds, regions) - pred_bounds = [d['bound'] for d in cells_info] + pred_bounds = [d["bound"] for d in cells_info] pred_bounds = self.frame_alignment(img, pred_bounds) pred_bounds = self.deal_columns(pred_bounds, regions, img=img) return pred_bounds @@ -101,9 +104,9 @@ def predict_three_lines_frame(self, img, result_of_det_cells_model): output = result_of_det_cells_model pred_bounds = [] for res in output: - pred_dicts = res._to_json()['res']['boxes'] + pred_dicts = res._to_json()["res"]["boxes"] for k in range(len(pred_dicts)): - pred_bounds.append(pred_dicts[k]['coordinate']) + pred_bounds.append(pred_dicts[k]["coordinate"]) return pred_bounds @@ -118,19 +121,21 @@ def deal_columns(self, pred_bounds, regions, img, scope_iou_thresh=0.3): """ # get columns pred_bounds = list(sorted(pred_bounds, key=lambda x: (x[0], x[1]))) - pred_col_subgraphs = self.col_subgraphs(pred_bounds, scope_iou_thresh=scope_iou_thresh) - region_bounds = [d['bound'] for d in regions] + pred_col_subgraphs = self.col_subgraphs( + pred_bounds, scope_iou_thresh=scope_iou_thresh + ) + region_bounds = [d["bound"] for d in regions] region_col_subgraphs = self.col_subgraphs(region_bounds) - pred_first_col = pred_col_subgraphs['0'] - region_first_col = region_col_subgraphs['0'] - if len(region_first_col['cells']) > 2: - r_x1, r_x2 = region_first_col['scope'] + pred_first_col = pred_col_subgraphs["0"] + region_first_col = region_col_subgraphs["0"] + if len(region_first_col["cells"]) > 2: + r_x1, r_x2 = region_first_col["scope"] else: - r_x1, r_x2 = pred_first_col['scope'] + r_x1, r_x2 = pred_first_col["scope"] for k, v in pred_col_subgraphs.items(): - cells = v['cells'] + cells = v["cells"] new_cells = [] for cell in cells: x1, y1, x2, y2 = cell @@ -143,11 +148,11 @@ def deal_columns(self, pred_bounds, regions, img, scope_iou_thresh=0.3): else: new_cells.append(cell) - pred_col_subgraphs[k]['cells'] = new_cells + pred_col_subgraphs[k]["cells"] = new_cells new_pred_bounds = [] for k, v in pred_col_subgraphs.items(): - new_pred_bounds.extend(v['cells']) + new_pred_bounds.extend(v["cells"]) return new_pred_bounds @@ -156,25 +161,28 @@ def col_subgraphs(self, bounds, scope_iou_thresh=0.6): for d in bounds: x1, y1, x2, y2 = d if len(col_subgraphs) == 0: - col_subgraphs[str(len(col_subgraphs))] = {'scope': [x1, x2], 'cells': [d]} + col_subgraphs[str(len(col_subgraphs))] = { + "scope": [x1, x2], + "cells": [d], + } continue - col_x1, col_x2 = col_subgraphs[str(len(col_subgraphs) - 1)]['scope'] + col_x1, col_x2 = col_subgraphs[str(len(col_subgraphs) - 1)]["scope"] if x1 >= col_x1 - 3 and x2 <= col_x2 + 3: iou = 1 else: iou = self.compute_scope_iou((col_x1, col_x2), (x1, x2)) if iou >= scope_iou_thresh: - if d in col_subgraphs[str(len(col_subgraphs) - 1)]['cells']: + if d in col_subgraphs[str(len(col_subgraphs) - 1)]["cells"]: continue - col_subgraphs[str(len(col_subgraphs) - 1)]['cells'].append(d) + col_subgraphs[str(len(col_subgraphs) - 1)]["cells"].append(d) col_x1 = min(col_x1, x1) col_x2 = max(col_x2, x2) - col_subgraphs[str(len(col_subgraphs) - 1)]['scope'] = [col_x1, col_x2] + col_subgraphs[str(len(col_subgraphs) - 1)]["scope"] = [col_x1, col_x2] else: new_key = str(len(col_subgraphs)) col_subgraphs[new_key] = {} - col_subgraphs[new_key]['scope'] = [x1, x2] - col_subgraphs[new_key]['cells'] = [d] + col_subgraphs[new_key]["scope"] = [x1, x2] + col_subgraphs[new_key]["cells"] = [d] return col_subgraphs def frame_alignment(self, img, bounds): @@ -183,6 +191,7 @@ def frame_alignment(self, img, bounds): Args: bounds (list): the bounds of cells. [(x1, y1, x2, y2), ......] """ + def get_weighted_value(bound_votes, st, ed): """Include end @@ -194,7 +203,7 @@ def get_weighted_value(bound_votes, st, ed): Returns: _type_: _description_ """ - votes = np.sum(bound_votes[st: ed + 1]) + votes = np.sum(bound_votes[st : ed + 1]) new_b = 0 for q in range(st, ed + 1): new_b += q * bound_votes[q] / votes @@ -213,12 +222,14 @@ def get_new_bounds(bound_votes, align_thresh): elif bound_votes[i] == 0 and st != -1: stop_guard = False if st + align_thresh - 1 < len(bound_votes): - if np.sum(bound_votes[st: st + align_thresh]) > np.sum(bound_votes[st: i]): + if np.sum(bound_votes[st : st + align_thresh]) > np.sum( + bound_votes[st:i] + ): pass else: stop_guard = True else: - if np.sum(bound_votes[st: -1]) > np.sum(bound_votes[st: i]): + if np.sum(bound_votes[st:-1]) > np.sum(bound_votes[st:i]): pass else: stop_guard = True @@ -302,7 +313,7 @@ def merge_predictions(self, img, pred_bounds, regions, match_iou_thresh=0.5): add_cells_info = [] for i in range(len(regions)): region_info = regions[i] - region_bound = region_info['bound'] + region_bound = region_info["bound"] miss_guard = True for pred_bound in pred_bounds: region_iou = compute_iou(region_bound, pred_bound) @@ -310,25 +321,27 @@ def merge_predictions(self, img, pred_bounds, regions, match_iou_thresh=0.5): miss_guard = False break if miss_guard: - if 'empty_cell' in region_info.keys(): + if "empty_cell" in region_info.keys(): x1, y1, x2, y2 = region_bound x1 = int(x1) y1 = int(y1) x2 = int(x2) y2 = int(y2) - empty_cell = region_info['empty_cell'] + empty_cell = region_info["empty_cell"] else: x1, y1, x2, y2 = region_bound x1 = int(x1) y1 = int(y1) x2 = int(x2) y2 = int(y2) - tmp_img = img[y1: y2, x1:x2] + tmp_img = img[y1:y2, x1:x2] if np.sum(tmp_img) < 5: empty_cell = 1 else: empty_cell = 0 - add_cells_info.append({'bound': (x1, y1, x2, y2), 'empty_cell': empty_cell}) + add_cells_info.append( + {"bound": (x1, y1, x2, y2), "empty_cell": empty_cell} + ) cells_info = add_cells_info for pred_bound in pred_bounds: @@ -337,12 +350,12 @@ def merge_predictions(self, img, pred_bounds, regions, match_iou_thresh=0.5): y1 = int(y1) x2 = int(x2) y2 = int(y2) - tmp_img = img[y1: y2, x1:x2] + tmp_img = img[y1:y2, x1:x2] if np.sum(tmp_img) < 5: empty_cell = 1 else: empty_cell = 0 - info = {'bound': (x1, y1, x2, y2), 'empty_cell': empty_cell} + info = {"bound": (x1, y1, x2, y2), "empty_cell": empty_cell} add_cells_info.append(info) return cells_info @@ -361,14 +374,20 @@ def analyse_frame_lines(self, img, frame_lines, header_lines_thresh=0.6): max_line_x2 = max(x1, x2) # get complex row lines - frame_info = {'frame_width': max_length, 'frame_x1': max_line_x1, 'frame_x2': max_line_x2, 'header_lines': [], 'skip_index_cell_lines': []} + frame_info = { + "frame_width": max_length, + "frame_x1": max_line_x1, + "frame_x2": max_line_x2, + "header_lines": [], + "skip_index_cell_lines": [], + } # # get header lines for line in frame_lines: x1, y1, x2, y2 = line if abs(x1 - x2) < max_length * header_lines_thresh: - frame_info['header_lines'].append(line) + frame_info["header_lines"].append(line) - old_header_lines = deepcopy(frame_info['header_lines']) + old_header_lines = deepcopy(frame_info["header_lines"]) for line in frame_lines: x1, y1, x2, y2 = line y = np.mean([y1, y2]) @@ -378,13 +397,17 @@ def analyse_frame_lines(self, img, frame_lines, header_lines_thresh=0.6): h_x1, h_y1, h_x2, h_y2 = header_line tmp_y = np.mean([h_y1, h_y2]) if abs(y - tmp_y) < 3: - frame_info['header_lines'].append(line) + frame_info["header_lines"].append(line) # # get merged index cells lines for line in frame_lines: x1, y1, x2, y2 = line - if abs(x2 - x1) >= max_length * header_lines_thresh and abs(x2 - x1) < (max_length - 20) and abs(max_line_x2 - max(x1, x2)) < 3: - frame_info['skip_index_cell_lines'].append(line) + if ( + abs(x2 - x1) >= max_length * header_lines_thresh + and abs(x2 - x1) < (max_length - 20) + and abs(max_line_x2 - max(x1, x2)) < 3 + ): + frame_info["skip_index_cell_lines"].append(line) return frame_info @@ -398,7 +421,7 @@ def classify_table(self, img, min_length_thresh=0.1): ang_th=22.5, log_eps=0, density_th=0.7, - n_bins=1024 + n_bins=1024, ) lines, width, prec, nfa = lsd.detect(img) frame_lines = [] @@ -475,7 +498,7 @@ def __init__( Args: md_path: the path of xgb model """ - self.model = pickle.load(open(md_path, 'rb')) + self.model = pickle.load(open(md_path, "rb")) def predict(self, img_path, result_of_ocr): img = self.check_and_read_img(img_path=img_path) @@ -496,17 +519,23 @@ def get_ocr_text_boxes(self, img_path, result_of_ocr): Returns: shrink_boxes (list): box [x, y, w, h] """ - ocr_res_json = result_of_ocr._to_json()['res'] - rec_boxes = ocr_res_json['rec_boxes'] + ocr_res_json = result_of_ocr._to_json()["res"] + rec_boxes = ocr_res_json["rec_boxes"] img = self.check_and_read_img(img_path=img_path) shrink_boxes = [] for i in range(len(rec_boxes)): box = rec_boxes[i] box_img = self.get_box_img(box=box, img=img) - assert box_img.shape[0] != 0 and box_img.shape[1] != 0, f'box_img is empty, img_path: {img_path}' - shrink_box_img, shrink_box = self.shrink_text_box(box_img=box_img, origin_box=box) + assert ( + box_img.shape[0] != 0 and box_img.shape[1] != 0 + ), f"box_img is empty, img_path: {img_path}" + shrink_box_img, shrink_box = self.shrink_text_box( + box_img=box_img, origin_box=box + ) - new_shrink_boxes, new_box_imgs = self.modify_text_boxes(text_box=shrink_box, box_img=shrink_box_img) + new_shrink_boxes, new_box_imgs = self.modify_text_boxes( + text_box=shrink_box, box_img=shrink_box_img + ) for k in range(len(new_shrink_boxes)): tmp_box = new_shrink_boxes[k] @@ -524,7 +553,7 @@ def get_box_img(self, box, img): Returns: _type_: _description_ """ - box_img = img[box[1]:box[3], box[0]:box[2]] + box_img = img[box[1] : box[3], box[0] : box[2]] return box_img def check_and_read_img(self, img_path: str): @@ -553,49 +582,54 @@ def shrink_text_box(self, box_img, origin_box): for i in range(binary_image.shape[0]): vertical_accum.append(np.sum(binary_image[i, :])) - detail = {'margin': [], 'line': []} + detail = {"margin": [], "line": []} margin_st = -1 line_st = -1 # detect line and margin for k in range(binary_image.shape[0]): if vertical_accum[k] < line_thresh: if margin_st != -1: - detail['margin'].append([margin_st, k - 1]) + detail["margin"].append([margin_st, k - 1]) margin_st = -1 if line_st == -1: line_st = k elif vertical_accum[k] > margin_thresh: if line_st != -1: - detail['line'].append([line_st, k - 1]) + detail["line"].append([line_st, k - 1]) line_st = -1 if margin_st == -1: margin_st = k else: if line_st != -1: - detail['line'].append([line_st, k - 1]) + detail["line"].append([line_st, k - 1]) line_st = -1 if margin_st != -1: - detail['margin'].append([margin_st, k - 1]) + detail["margin"].append([margin_st, k - 1]) margin_st = -1 if margin_st != -1: - detail['margin'].append([margin_st, binary_image.shape[0]-1]) + detail["margin"].append([margin_st, binary_image.shape[0] - 1]) - if len(detail['margin']) == 1 and len(detail['line']) == 0: - return box_img, [origin_box[0], origin_box[1], origin_box[2] - origin_box[0], origin_box[3] - origin_box[1]] + if len(detail["margin"]) == 1 and len(detail["line"]) == 0: + return box_img, [ + origin_box[0], + origin_box[1], + origin_box[2] - origin_box[0], + origin_box[3] - origin_box[1], + ] ver_main_scope_len = 0 ver_main_scope = [0, 0] - for j in range(len(detail['margin'])-1): - text_line_st = detail['margin'][j][1] - text_line_ed = detail['margin'][j+1][0] + for j in range(len(detail["margin"]) - 1): + text_line_st = detail["margin"][j][1] + text_line_ed = detail["margin"][j + 1][0] if text_line_ed - text_line_st >= ver_main_scope_len: ver_main_scope_len = text_line_ed - text_line_st ver_main_scope = [text_line_st, text_line_ed] if ver_main_scope == [0, 0]: ver_main_scope = [0, binary_image.shape[0]] - vertical_shrink_box = binary_image[ver_main_scope[0]: ver_main_scope[1], :] + vertical_shrink_box = binary_image[ver_main_scope[0] : ver_main_scope[1], :] # horizontal analysis line_thresh = 0.05 * vertical_shrink_box.shape[0] @@ -604,7 +638,7 @@ def shrink_text_box(self, box_img, origin_box): for i in range(vertical_shrink_box.shape[1]): horizontal_accum.append(np.sum(vertical_shrink_box[:, i])) - detail = {'margin': [], 'line': []} + detail = {"margin": [], "line": []} margins = [] margin_st = -1 line_st = -1 @@ -612,14 +646,14 @@ def shrink_text_box(self, box_img, origin_box): if horizontal_accum[k] < line_thresh: if margin_st != -1: if k - 1 - margin_st > 0: - detail['margin'].append([margin_st, k - 1]) + detail["margin"].append([margin_st, k - 1]) margins.append(k - 1 - margin_st) margin_st = -1 if line_st == -1: line_st = k elif horizontal_accum[k] > margin_thresh: if line_st != -1: - detail['line'].append([line_st, k - 1]) + detail["line"].append([line_st, k - 1]) line_st = -1 if margin_st == -1: margin_st = k @@ -628,33 +662,55 @@ def shrink_text_box(self, box_img, origin_box): line_st = -1 if margin_st != -1: if k - 1 - margin_st > 0: - detail['margin'].append([margin_st, k - 1]) + detail["margin"].append([margin_st, k - 1]) margins.append(k - 1 - margin_st) margin_st = -1 - if len(detail['margin']) == 1 and len(detail['line']) == 0: - self.logger.debug(f'box_img.shape: {box_img.shape}, shrink_box: {[origin_box[0], origin_box[1] + ver_main_scope[0], origin_box[2], ver_main_scope[1] - ver_main_scope[0]]}') - return box_img[ver_main_scope[0]:ver_main_scope[1], :], [origin_box[0], origin_box[1] + ver_main_scope[0], origin_box[2] - origin_box[0], ver_main_scope[1] - ver_main_scope[0]] + if len(detail["margin"]) == 1 and len(detail["line"]) == 0: + self.logger.debug( + f"box_img.shape: {box_img.shape}, shrink_box: {[origin_box[0], origin_box[1] + ver_main_scope[0], origin_box[2], ver_main_scope[1] - ver_main_scope[0]]}" + ) + return box_img[ver_main_scope[0] : ver_main_scope[1], :], [ + origin_box[0], + origin_box[1] + ver_main_scope[0], + origin_box[2] - origin_box[0], + ver_main_scope[1] - ver_main_scope[0], + ] hor_main_scope = [0, 0] hor_main_scope_len = 0 - if len(detail['line']) > 0: - for n in range(len(detail['line'])): - line = detail['line'][n] + if len(detail["line"]) > 0: + for n in range(len(detail["line"])): + line = detail["line"][n] if n == 0 and line[0] != 0: hor_main_scope = [0, line[0] - 1] hor_main_scope_len = line[0] - 1 elif n != 0: - if detail['line'][n][0] - 1 - (detail['line'][n-1][1] + 1) > hor_main_scope_len: - hor_main_scope = [detail['line'][n-1][1] + 1, detail['line'][n][0] - 1] - hor_main_scope_len = detail['line'][n][0] - 1 - (detail['line'][n-1][1] + 1) + if ( + detail["line"][n][0] - 1 - (detail["line"][n - 1][1] + 1) + > hor_main_scope_len + ): + hor_main_scope = [ + detail["line"][n - 1][1] + 1, + detail["line"][n][0] - 1, + ] + hor_main_scope_len = ( + detail["line"][n][0] - 1 - (detail["line"][n - 1][1] + 1) + ) if hor_main_scope == [0, 0]: hor_main_scope = [0, box_img.shape[1]] - shrink_img = box_img[ver_main_scope[0]:ver_main_scope[1], hor_main_scope[0]:hor_main_scope[1]] - shrink_box = [origin_box[0] + hor_main_scope[0], origin_box[1] + ver_main_scope[0], hor_main_scope[1] - hor_main_scope[0], ver_main_scope[1] - ver_main_scope[0]] + shrink_img = box_img[ + ver_main_scope[0] : ver_main_scope[1], hor_main_scope[0] : hor_main_scope[1] + ] + shrink_box = [ + origin_box[0] + hor_main_scope[0], + origin_box[1] + ver_main_scope[0], + hor_main_scope[1] - hor_main_scope[0], + ver_main_scope[1] - ver_main_scope[0], + ] return shrink_img, shrink_box @@ -667,7 +723,12 @@ def box_to_four_coordinates(self, box): pts (list): four points of polygon """ origin_x, origin_y, w, h = box - pts = [(origin_x, origin_y), (origin_x + w, origin_y), (origin_x + w, origin_y + h), (origin_x, origin_y + h)] + pts = [ + (origin_x, origin_y), + (origin_x + w, origin_y), + (origin_x + w, origin_y + h), + (origin_x, origin_y + h), + ] return pts def transform_x1y1x2y2_into_four_coordinates(self, ocr_box): @@ -694,11 +755,17 @@ def ocr_box_canvas(self, text_boxes: List, img_shape: Tuple): canvas = np.zeros(img_shape) for box in text_boxes: x, y, w, h = box - canvas[y:y+h, x:x+w] = 1 + canvas[y : y + h, x : x + w] = 1 return canvas - def split_into_region(self, canvas: np.ndarray, text_boxes: List, img: np.ndarray = None, iou_thresh=0.8): - """ split text boxes into region cell, detect empty cell inside + def split_into_region( + self, + canvas: np.ndarray, + text_boxes: List, + img: np.ndarray = None, + iou_thresh=0.8, + ): + """split text boxes into region cell, detect empty cell inside Args: canvas (np.ndarray): blank matrix with text box as 1 @@ -707,20 +774,22 @@ def split_into_region(self, canvas: np.ndarray, text_boxes: List, img: np.ndarra Returns: region (List): list of group of text boxes, [{'bound': [x1, y1, x2, y2], 'text_boxes': [[x1, y1, w, h], ...]}, ...] """ - subgraphs = self.split_into_subgraph(canvas=canvas, text_boxes=text_boxes, img=img) - row_subgraphs = subgraphs['row'] - col_subgraphs = subgraphs['col'] + subgraphs = self.split_into_subgraph( + canvas=canvas, text_boxes=text_boxes, img=img + ) + row_subgraphs = subgraphs["row"] + col_subgraphs = subgraphs["col"] - regions = [] # [{'bound': [x1, y1, x2, y2], 'text_boxes': [[x1, y1, w, h]]}] + regions = [] # [{'bound': [x1, y1, x2, y2], 'text_boxes': [[x1, y1, w, h]]}] i = 0 j = 0 for i in row_subgraphs.keys(): - r_y1, r_y2 = row_subgraphs[i]['scope'] + r_y1, r_y2 = row_subgraphs[i]["scope"] for j in col_subgraphs.keys(): - r_x1, r_x2 = col_subgraphs[j]['scope'] + r_x1, r_x2 = col_subgraphs[j]["scope"] rect2 = [r_x1, r_y1, r_x2, r_y2] - region = {'bound': rect2, 'text_boxes': [], 'empty_cell': 0} + region = {"bound": rect2, "text_boxes": [], "empty_cell": 0} for box in text_boxes: x1, y1, w, h = box x2 = x1 + w @@ -728,10 +797,12 @@ def split_into_region(self, canvas: np.ndarray, text_boxes: List, img: np.ndarra rect1 = [x1, y1, x2, y2] iou = compute_iou(box1=rect1, box2=rect2) if iou >= iou_thresh: - region['text_boxes'].append(box) - self.logger.debug(f'row {i} col {j} inside text box: {rect1}, cell bound: {rect2}') - if len(region['text_boxes']) == 0: - region['empty_cell'] = 1 + region["text_boxes"].append(box) + self.logger.debug( + f"row {i} col {j} inside text box: {rect1}, cell bound: {rect2}" + ) + if len(region["text_boxes"]) == 0: + region["empty_cell"] = 1 regions.append(region) @@ -746,22 +817,22 @@ def get_bounds(self, bin_canvas: np.ndarray, mode: str): Returns: list: bounds [int, ...] """ - assert mode in ['row', 'col'], f'Mode {mode} is not supported yet' + assert mode in ["row", "col"], f"Mode {mode} is not supported yet" margin_bounds = [] st = -1 ed = -1 margin_st = -1 margin_ed = -1 - if mode == 'row': + if mode == "row": range_scope = bin_canvas.shape[0] - elif mode == 'col': + elif mode == "col": range_scope = bin_canvas.shape[1] proj_values = [] # debug param for i in range(range_scope): - if mode == 'row': + if mode == "row": proj = np.sum(bin_canvas[i, :]) - elif mode == 'col': + elif mode == "col": proj = np.sum(bin_canvas[:, i]) proj_values.append(proj) @@ -793,8 +864,10 @@ def get_bounds(self, bin_canvas: np.ndarray, mode: str): return margin_bounds - def merge_same_cells_deal_complex_region(self, regions: list, img: np.ndarray, iou_thresh=0.6, dis_thresh=25): - """merge same cell text ocr boxes, + def merge_same_cells_deal_complex_region( + self, regions: list, img: np.ndarray, iou_thresh=0.6, dis_thresh=25 + ): + """merge same cell text ocr boxes, Args: regions (List): list of group of text boxes, [{'bound': [x1, y1, x2, y2], 'text_boxes': [[x1, y1, w, h], ...], 'empty_cell': 0|1}, ...] @@ -805,37 +878,39 @@ def merge_same_cells_deal_complex_region(self, regions: list, img: np.ndarray, i """ new_regions_info = [] for i in range(len(regions)): - text_boxes = regions[i]['text_boxes'] - empty_cell_flag = regions[i]['empty_cell'] - bound = regions[i]['bound'] + text_boxes = regions[i]["text_boxes"] + empty_cell_flag = regions[i]["empty_cell"] + bound = regions[i]["bound"] if len(text_boxes) == 1 or empty_cell_flag: new_regions_info.append(regions[i]) continue - boxes_rel = {} # {'index of box': {'same_cell': [index of boxes|int], 'same_row': [index of boxes|int}, 'same_col': [index of boxes|int]} + boxes_rel = ( + {} + ) # {'index of box': {'same_cell': [index of boxes|int], 'same_row': [index of boxes|int}, 'same_col': [index of boxes|int]} for n in range(len(text_boxes)): box1 = text_boxes[n] - boxes_rel[str(n)] = {'same_cell': [], 'same_row': [], 'same_col': []} + boxes_rel[str(n)] = {"same_cell": [], "same_row": [], "same_col": []} for m in range(n + 1, len(text_boxes)): box2 = text_boxes[m] rel = self.get_boxes_rel(box1=box1, box2=box2, res_boxes=text_boxes) if rel == 0: - boxes_rel[str(n)]['same_cell'].append(m) + boxes_rel[str(n)]["same_cell"].append(m) elif rel == 1: - boxes_rel[str(n)]['same_row'].append(m) + boxes_rel[str(n)]["same_row"].append(m) elif rel == 2: - boxes_rel[str(n)]['same_col'].append(m) + boxes_rel[str(n)]["same_col"].append(m) elif rel == 3: pass if rel != 0: dis, _ = self.cal_box_dis(box1, box2) if dis < 0.2 * dis_thresh: - boxes_rel[str(n)]['same_cell'].append(m) + boxes_rel[str(n)]["same_cell"].append(m) # same cell merge same_cells_indexes = [] for j in boxes_rel.keys(): - if len(boxes_rel[j]['same_cell']) == 0: + if len(boxes_rel[j]["same_cell"]) == 0: continue repeat_guard = False @@ -848,7 +923,7 @@ def merge_same_cells_deal_complex_region(self, regions: list, img: np.ndarray, i if repeat_guard: continue - same_cell_idxs = boxes_rel[j]['same_cell'] + same_cell_idxs = boxes_rel[j]["same_cell"] checked_same_cell_idxes = [] for w in same_cell_idxs: tmp_box = text_boxes[w] @@ -860,7 +935,7 @@ def merge_same_cells_deal_complex_region(self, regions: list, img: np.ndarray, i add_idxs = [] for idx in same_cell_idxs: - tmp_idxes = boxes_rel[str(idx)]['same_cell'] + tmp_idxes = boxes_rel[str(idx)]["same_cell"] for _idx in tmp_idxes: if _idx in same_cell_idxs: continue @@ -876,7 +951,9 @@ def merge_same_cells_deal_complex_region(self, regions: list, img: np.ndarray, i same_cells_indexes.append(complete_same_cell_idxs) # merge same cell text boxes - cell_region_info = [] # [{'bound': [x1, y1, x2, y2], 'text_boxes_idxs': [], 'text_boxes': [x, y, w, h]}] + cell_region_info = ( + [] + ) # [{'bound': [x1, y1, x2, y2], 'text_boxes_idxs': [], 'text_boxes': [x, y, w, h]}] deal_text_boxes_idxs = [] for q in range(len(same_cells_indexes)): cell_boxes_indexes = same_cells_indexes[q] @@ -894,7 +971,13 @@ def merge_same_cells_deal_complex_region(self, regions: list, img: np.ndarray, i y1 = min(y1, tmp_y1) y2 = max(y2, tmp_y2) - merged_cell_info = {'bound': (x1, y1, x2, y2), 'box': [x1, y1, x2 - x1, y2 - y1], 'text_boxes_idxs': cell_boxes_indexes, 'text_boxes': same_cells_text_boxes, 'empty_cell': 0} + merged_cell_info = { + "bound": (x1, y1, x2, y2), + "box": [x1, y1, x2 - x1, y2 - y1], + "text_boxes_idxs": cell_boxes_indexes, + "text_boxes": same_cells_text_boxes, + "empty_cell": 0, + } cell_region_info.append(merged_cell_info) deal_text_boxes_idxs.extend(cell_boxes_indexes) @@ -904,28 +987,61 @@ def merge_same_cells_deal_complex_region(self, regions: list, img: np.ndarray, i continue _x, _y, _w, _h = text_boxes[q] text_bound = (_x, _y, _x + _w, _y + _h) - cell_region_info.append({'bound': text_bound, 'box': text_boxes[q], 'text_boxes_idxs': [q], 'text_boxes': [text_boxes[q]], 'empty_cell': 0}) + cell_region_info.append( + { + "bound": text_bound, + "box": text_boxes[q], + "text_boxes_idxs": [q], + "text_boxes": [text_boxes[q]], + "empty_cell": 0, + } + ) # deal overlap deal_overlap_cell_region = [] overlap_indexes = [] for a in range(len(cell_region_info)): - bound_a = cell_region_info[a]['bound'] + bound_a = cell_region_info[a]["bound"] if a in overlap_indexes: continue append_guard = True for b in range(a + 1, len(cell_region_info)): if b in overlap_indexes: continue - bound_b = cell_region_info[b]['bound'] - iou = max(compute_iou(bound_a, bound_b), compute_iou(bound_b, bound_a)) + bound_b = cell_region_info[b]["bound"] + iou = max( + compute_iou(bound_a, bound_b), compute_iou(bound_b, bound_a) + ) if iou > 0.3: overlap_indexes.append(b) - cell_region_info[a]['text_boxes'].extend(cell_region_info[b]['text_boxes']) - new_bound = (min(bound_a[0], bound_b[0]), min(bound_a[1], bound_b[1]), max(bound_a[2], bound_b[2]), max(bound_b[3], bound_a[3])) - new_text_boxes_idxs = cell_region_info[a]['text_boxes_idxs'].extend(cell_region_info[b]['text_boxes_idxs']) - new_text_boxes = cell_region_info[a]['text_boxes'] + cell_region_info[b]['text_boxes'] - new_cell_region = {'bound': new_bound, 'box': (new_bound[0], new_bound[1], new_bound[2] - new_bound[0], new_bound[3] - new_bound[1]), 'text_boxes_idxs': new_text_boxes_idxs, 'text_boxes': new_text_boxes, 'empty_cell': 0} + cell_region_info[a]["text_boxes"].extend( + cell_region_info[b]["text_boxes"] + ) + new_bound = ( + min(bound_a[0], bound_b[0]), + min(bound_a[1], bound_b[1]), + max(bound_a[2], bound_b[2]), + max(bound_b[3], bound_a[3]), + ) + new_text_boxes_idxs = cell_region_info[a][ + "text_boxes_idxs" + ].extend(cell_region_info[b]["text_boxes_idxs"]) + new_text_boxes = ( + cell_region_info[a]["text_boxes"] + + cell_region_info[b]["text_boxes"] + ) + new_cell_region = { + "bound": new_bound, + "box": ( + new_bound[0], + new_bound[1], + new_bound[2] - new_bound[0], + new_bound[3] - new_bound[1], + ), + "text_boxes_idxs": new_text_boxes_idxs, + "text_boxes": new_text_boxes, + "empty_cell": 0, + } deal_overlap_cell_region.append(new_cell_region) append_guard = False continue @@ -935,18 +1051,22 @@ def merge_same_cells_deal_complex_region(self, regions: list, img: np.ndarray, i cell_region_info = deal_overlap_cell_region if len(cell_region_info) == 1: - cell_region_info[0]['bound'] = bound + cell_region_info[0]["bound"] = bound new_regions_info.extend(cell_region_info) continue # deal complex region - cell_region_info = self.split_complex_region(cell_region_info=cell_region_info, bound=bound, img=img, iou_thresh=0.6) + cell_region_info = self.split_complex_region( + cell_region_info=cell_region_info, bound=bound, img=img, iou_thresh=0.6 + ) new_regions_info.extend(cell_region_info) continue return new_regions_info - def split_complex_region(self, cell_region_info: List, bound: List, img: np.ndarray, iou_thresh=0.6): + def split_complex_region( + self, cell_region_info: List, bound: List, img: np.ndarray, iou_thresh=0.6 + ): """split complex region into cells Args: @@ -958,79 +1078,130 @@ def split_complex_region(self, cell_region_info: List, bound: List, img: np.ndar Returns: new_regions_info (List): list of dict, [{'bound': [x1, y1, x2, y2], 'text_boxes': [[x1, y1, w, h], ...], 'empty_cell': 0|1, ...] """ - new_regions_info = [] # the same structure as cell_region_info + new_regions_info = [] # the same structure as cell_region_info # analyze row # #transform coordinate from absolute to relative q = 0 inside_region_cell_boxes = [] for q in cell_region_info: - _x, _y, _x2, _y2 = q['bound'] + _x, _y, _x2, _y2 = q["bound"] _w = _x2 - _x _h = _y2 - _y inside_region_cell_boxes.append([_x - bound[0], _y - bound[1], _w, _h]) - img_shape = img[bound[1]:bound[3], bound[0]:bound[2]].shape - inside_region_canvas = self.ocr_box_canvas(text_boxes=inside_region_cell_boxes, img_shape=img_shape) + img_shape = img[bound[1] : bound[3], bound[0] : bound[2]].shape + inside_region_canvas = self.ocr_box_canvas( + text_boxes=inside_region_cell_boxes, img_shape=img_shape + ) row_subgraphs = self.row_analyse(canvas=inside_region_canvas) # #transform coordinate from relative to absolute for s in range(len(row_subgraphs.keys())): q = list(row_subgraphs.keys())[s] if s == len(row_subgraphs.keys()) - 1: - row_subgraphs[q]['scope'] = [row_subgraphs[q]['scope'][0] + bound[1], bound[3]] + row_subgraphs[q]["scope"] = [ + row_subgraphs[q]["scope"][0] + bound[1], + bound[3], + ] else: - row_subgraphs[q]['scope'] = [row_subgraphs[q]['scope'][0] + bound[1], row_subgraphs[q]['scope'][1] + bound[1]] + row_subgraphs[q]["scope"] = [ + row_subgraphs[q]["scope"][0] + bound[1], + row_subgraphs[q]["scope"][1] + bound[1], + ] # case 1 if len(row_subgraphs) == 1: - sorted_cell_region_info = list(sorted(cell_region_info, key=lambda x: x["bound"][0])) + sorted_cell_region_info = list( + sorted(cell_region_info, key=lambda x: x["bound"][0]) + ) # fresh bound - new_bound_cell_region_info = self.fresh_bound(sorted_cell_region_info=sorted_cell_region_info, bound=bound) + new_bound_cell_region_info = self.fresh_bound( + sorted_cell_region_info=sorted_cell_region_info, bound=bound + ) new_regions_info.extend(new_bound_cell_region_info) return new_regions_info else: # split rows for p in row_subgraphs.keys(): - subgraph_scope = row_subgraphs[p]['scope'] - row_subgraphs[p]['cells_info'] = [] # [{'cell_idx': int, 'bound': [x1, y1, x2, y2], 'cell_box': [x, y, w, h], 'text_boxes_idxs': list of int|indexes of text boxes which belong to the same cell, 'text_boxes': []}] - row_subgraphs[p]['bound'] = [bound[0], subgraph_scope[0], bound[2], subgraph_scope[1]] + subgraph_scope = row_subgraphs[p]["scope"] + row_subgraphs[p][ + "cells_info" + ] = ( + [] + ) # [{'cell_idx': int, 'bound': [x1, y1, x2, y2], 'cell_box': [x, y, w, h], 'text_boxes_idxs': list of int|indexes of text boxes which belong to the same cell, 'text_boxes': []}] + row_subgraphs[p]["bound"] = [ + bound[0], + subgraph_scope[0], + bound[2], + subgraph_scope[1], + ] for q in range(len(cell_region_info)): - cell_bound = cell_region_info[q]['bound'] + cell_bound = cell_region_info[q]["bound"] x, y, x1, y1 = cell_bound h = y1 - y if y >= subgraph_scope[0] and y + h <= subgraph_scope[1]: - row_subgraphs[p]['cells_info'].append({'cell_idx': q, 'bound': cell_region_info[q]['bound'], 'text_boxes_idxs': cell_region_info[q]['text_boxes_idxs'], 'text_boxes': cell_region_info[q]['text_boxes']}) + row_subgraphs[p]["cells_info"].append( + { + "cell_idx": q, + "bound": cell_region_info[q]["bound"], + "text_boxes_idxs": cell_region_info[q][ + "text_boxes_idxs" + ], + "text_boxes": cell_region_info[q]["text_boxes"], + } + ) elif y + h <= subgraph_scope[0] or y >= subgraph_scope[1]: pass else: iou = 0 - if y >= subgraph_scope[0] and y < subgraph_scope[1] and y + h > subgraph_scope[1]: + if ( + y >= subgraph_scope[0] + and y < subgraph_scope[1] + and y + h > subgraph_scope[1] + ): iou = round((subgraph_scope[1] - y) / h, 2) - elif y < subgraph_scope[0] and y + h > subgraph_scope[0] and y + h <= subgraph_scope[1]: + elif ( + y < subgraph_scope[0] + and y + h > subgraph_scope[0] + and y + h <= subgraph_scope[1] + ): iou = round((y + h - subgraph_scope[0]) / h, 2) elif y <= subgraph_scope[0] and y + h >= subgraph_scope[1]: iou = round((subgraph_scope[1] - subgraph_scope[0]) / h, 2) if iou >= iou_thresh: - row_subgraphs[p]['cells_info'].append({'cell_idx': q, 'bound': cell_region_info[q]['bound'], 'text_boxes_idxs': cell_region_info[q]['text_boxes_idxs'], 'text_boxes': cell_region_info[q]['text_boxes']}) + row_subgraphs[p]["cells_info"].append( + { + "cell_idx": q, + "bound": cell_region_info[q]["bound"], + "text_boxes_idxs": cell_region_info[q][ + "text_boxes_idxs" + ], + "text_boxes": cell_region_info[q]["text_boxes"], + } + ) # get new split cells for k in range(len(row_subgraphs.keys())): q = list(row_subgraphs.keys())[k] tmp_row_info = row_subgraphs[q] - if len(tmp_row_info['cells_info']) == 1: - tmp_row_info['cells_info'][0]['bound'] = tmp_row_info['bound'] - new_regions_info.append(tmp_row_info['cells_info'][0]) + if len(tmp_row_info["cells_info"]) == 1: + tmp_row_info["cells_info"][0]["bound"] = tmp_row_info["bound"] + new_regions_info.append(tmp_row_info["cells_info"][0]) continue - row_subgraphs[p]['cells_info'] = list(sorted(tmp_row_info['cells_info'], key=lambda x: x["bound"][0])) - row_bound = row_subgraphs[p]['bound'] - row_cells_info = row_subgraphs[p]['cells_info'] + row_subgraphs[p]["cells_info"] = list( + sorted(tmp_row_info["cells_info"], key=lambda x: x["bound"][0]) + ) + row_bound = row_subgraphs[p]["bound"] + row_cells_info = row_subgraphs[p]["cells_info"] if len(row_cells_info) == 0: continue # refresh the bound - new_split_row_cell_info = self.fresh_bound(sorted_cell_region_info=row_cells_info, bound=row_bound) + new_split_row_cell_info = self.fresh_bound( + sorted_cell_region_info=row_cells_info, bound=row_bound + ) new_regions_info.extend(new_split_row_cell_info) continue @@ -1042,14 +1213,14 @@ def fresh_bound(self, sorted_cell_region_info, bound): x_st = bound[0] new_bound_cell_region_info = [] for q in range(len(sorted_cell_region_info) - 1): - cur_bound = sorted_cell_region_info[q]['bound'] - next_bound = sorted_cell_region_info[q + 1]['bound'] + cur_bound = sorted_cell_region_info[q]["bound"] + next_bound = sorted_cell_region_info[q + 1]["bound"] x_ed = 0.5 * (cur_bound[2] + next_bound[0]) - sorted_cell_region_info[q]['bound'] = [x_st, bound[1], x_ed, bound[3]] + sorted_cell_region_info[q]["bound"] = [x_st, bound[1], x_ed, bound[3]] new_bound_cell_region_info.append(sorted_cell_region_info[q]) x_st = x_ed - sorted_cell_region_info[-1]['bound'] = [x_st, bound[1], bound[2], bound[3]] + sorted_cell_region_info[-1]["bound"] = [x_st, bound[1], bound[2], bound[3]] new_bound_cell_region_info.append(sorted_cell_region_info[-1]) return new_bound_cell_region_info @@ -1065,19 +1236,36 @@ def row_analyse(self, canvas: np.ndarray): if row_proj[j] > 0 and row_st == -1: row_st = j elif row_proj[j] == 0 and row_st != -1: - row_subgraphs[str(len(row_subgraphs))] = {'scope': [row_st, j - 1], 'text_boxes': [], 'cells_info': []} + row_subgraphs[str(len(row_subgraphs))] = { + "scope": [row_st, j - 1], + "text_boxes": [], + "cells_info": [], + } row_st = -1 if row_st != -1: - row_subgraphs[str(len(row_subgraphs))] = {'scope': [row_st, canvas.shape[0] - 1], 'text_boxes': [], 'cells_info': []} + row_subgraphs[str(len(row_subgraphs))] = { + "scope": [row_st, canvas.shape[0] - 1], + "text_boxes": [], + "cells_info": [], + } correct_st = 0 for k in range(len(row_subgraphs) - 1): - correct_ed = int((row_subgraphs[str(k)]['scope'][1] + row_subgraphs[str(k+1)]['scope'][0]) / 2) - row_subgraphs[str(k)]['scope'] = [correct_st, correct_ed] + correct_ed = int( + ( + row_subgraphs[str(k)]["scope"][1] + + row_subgraphs[str(k + 1)]["scope"][0] + ) + / 2 + ) + row_subgraphs[str(k)]["scope"] = [correct_st, correct_ed] correct_st = correct_ed - row_subgraphs[list(row_subgraphs.keys())[-1]]['scope'] = [correct_st, row_subgraphs[list(row_subgraphs.keys())[-1]]['scope'][1]] + row_subgraphs[list(row_subgraphs.keys())[-1]]["scope"] = [ + correct_st, + row_subgraphs[list(row_subgraphs.keys())[-1]]["scope"][1], + ] return row_subgraphs @@ -1093,15 +1281,27 @@ def col_analyse(self, canvas: np.ndarray): if col_proj[q] > 0 and col_st == -1: col_st = q elif col_proj[q] == 0 and col_st != -1: - col_subgraphs[str(len(col_subgraphs))] = {'scope': [col_st, q - 1], 'text_boxes': []} + col_subgraphs[str(len(col_subgraphs))] = { + "scope": [col_st, q - 1], + "text_boxes": [], + } col_st = -1 if col_st != -1: - col_subgraphs[str(len(col_subgraphs))] = {'scope': [col_st, canvas.shape[1] - 1], 'text_boxes': []} + col_subgraphs[str(len(col_subgraphs))] = { + "scope": [col_st, canvas.shape[1] - 1], + "text_boxes": [], + } return col_subgraphs - def split_into_subgraph(self, canvas: np.ndarray, text_boxes: List, img: np.ndarray = None, iou_thresh=0.6): - """ split text boxes into subgraphs + def split_into_subgraph( + self, + canvas: np.ndarray, + text_boxes: List, + img: np.ndarray = None, + iou_thresh=0.6, + ): + """split text boxes into subgraphs Args: canvas (np.ndarray): blank matrix with text box as 1 @@ -1121,11 +1321,17 @@ def split_into_subgraph(self, canvas: np.ndarray, text_boxes: List, img: np.ndar if row_proj[j] > 0 and row_st == -1: row_st = j elif row_proj[j] == 0 and row_st != -1: - row_subgraphs[str(len(row_subgraphs))] = {'scope': [row_st, j - 1], 'text_boxes': []} + row_subgraphs[str(len(row_subgraphs))] = { + "scope": [row_st, j - 1], + "text_boxes": [], + } row_st = -1 if row_st != -1: - row_subgraphs[str(len(row_subgraphs))] = {'scope': [row_st, canvas.shape[0] - 1], 'text_boxes': []} + row_subgraphs[str(len(row_subgraphs))] = { + "scope": [row_st, canvas.shape[0] - 1], + "text_boxes": [], + } col_proj = [] for k in range(canvas.shape[1]): @@ -1138,101 +1344,145 @@ def split_into_subgraph(self, canvas: np.ndarray, text_boxes: List, img: np.ndar if col_proj[q] > 0 and col_st == -1: col_st = q elif col_proj[q] == 0 and col_st != -1: - col_subgraphs[str(len(col_subgraphs))] = {'scope': [col_st, q - 1], 'text_boxes': []} + col_subgraphs[str(len(col_subgraphs))] = { + "scope": [col_st, q - 1], + "text_boxes": [], + } col_st = -1 if col_st != -1: - col_subgraphs[str(len(col_subgraphs))] = {'scope': [col_st, canvas.shape[1] - 1], 'text_boxes': []} + col_subgraphs[str(len(col_subgraphs))] = { + "scope": [col_st, canvas.shape[1] - 1], + "text_boxes": [], + } for box in text_boxes: x, y, w, h = box for n in range(len(row_subgraphs)): - subgraph_scope = row_subgraphs[str(n)]['scope'] + subgraph_scope = row_subgraphs[str(n)]["scope"] if y >= subgraph_scope[0] and y + h <= subgraph_scope[1]: - row_subgraphs[str(n)]['text_boxes'].append(box) + row_subgraphs[str(n)]["text_boxes"].append(box) elif y + h <= subgraph_scope[0] or y >= subgraph_scope[1]: pass else: iou = 0 - if y >= subgraph_scope[0] and y < subgraph_scope[1] and y + h > subgraph_scope[1]: - iou = round((subgraph_scope[1] - y)/h, 2) - elif y < subgraph_scope[0] and y + h > subgraph_scope[0] and y + h <= subgraph_scope[1]: - iou = round((y+h-subgraph_scope[0])/h, 2) + if ( + y >= subgraph_scope[0] + and y < subgraph_scope[1] + and y + h > subgraph_scope[1] + ): + iou = round((subgraph_scope[1] - y) / h, 2) + elif ( + y < subgraph_scope[0] + and y + h > subgraph_scope[0] + and y + h <= subgraph_scope[1] + ): + iou = round((y + h - subgraph_scope[0]) / h, 2) elif y <= subgraph_scope[0] and y + h >= subgraph_scope[1]: - iou = round((subgraph_scope[1] - subgraph_scope[0])/h, 2) + iou = round((subgraph_scope[1] - subgraph_scope[0]) / h, 2) if iou >= iou_thresh: - row_subgraphs[str(n)]['text_boxes'].append(box) + row_subgraphs[str(n)]["text_boxes"].append(box) for m in range(len(col_subgraphs)): - subgraph_scope = col_subgraphs[str(m)]['scope'] + subgraph_scope = col_subgraphs[str(m)]["scope"] if x >= subgraph_scope[0] and x + h <= subgraph_scope[1]: - col_subgraphs[str(m)]['text_boxes'].append(box) + col_subgraphs[str(m)]["text_boxes"].append(box) elif x + h <= subgraph_scope[0] or x >= subgraph_scope[1]: pass else: iou = 0 - if x >= subgraph_scope[0] and x < subgraph_scope[1] and x + w > subgraph_scope[1]: - iou = round((subgraph_scope[1] - x)/w, 2) - elif x < subgraph_scope[0] and x + w > subgraph_scope[0] and x + w <= subgraph_scope[1]: - iou = round((x + w - subgraph_scope[0])/w, 2) + if ( + x >= subgraph_scope[0] + and x < subgraph_scope[1] + and x + w > subgraph_scope[1] + ): + iou = round((subgraph_scope[1] - x) / w, 2) + elif ( + x < subgraph_scope[0] + and x + w > subgraph_scope[0] + and x + w <= subgraph_scope[1] + ): + iou = round((x + w - subgraph_scope[0]) / w, 2) elif x <= subgraph_scope[0] and x + w > subgraph_scope[1]: - iou = round((subgraph_scope[1] - subgraph_scope[0])/w, 2) + iou = round((subgraph_scope[1] - subgraph_scope[0]) / w, 2) if iou >= iou_thresh: - col_subgraphs[str(m)]['text_boxes'].append(box) + col_subgraphs[str(m)]["text_boxes"].append(box) # deal some error row i = 0 for i in row_subgraphs.keys(): - if len(row_subgraphs[i]['text_boxes']) > 1: + if len(row_subgraphs[i]["text_boxes"]) > 1: continue - y1, y2 = row_subgraphs[i]['scope'] + y1, y2 = row_subgraphs[i]["scope"] if int(i) == 0: continue elif int(i) == len(row_subgraphs) - 1: - row_subgraphs[str(int(i) - 1)]['text_boxes'].extend(row_subgraphs[i]['text_boxes']) - y21, y22 = row_subgraphs[str(int(i) - 1)]['scope'] - row_subgraphs[str(int(i) - 1)]['scope'] = [y21, y2] + row_subgraphs[str(int(i) - 1)]["text_boxes"].extend( + row_subgraphs[i]["text_boxes"] + ) + y21, y22 = row_subgraphs[str(int(i) - 1)]["scope"] + row_subgraphs[str(int(i) - 1)]["scope"] = [y21, y2] else: - yl1, yl2 = row_subgraphs[str(int(i) - 1)]['scope'] - yr1, yr2 = row_subgraphs[str(int(i) + 1)]['scope'] + yl1, yl2 = row_subgraphs[str(int(i) - 1)]["scope"] + yr1, yr2 = row_subgraphs[str(int(i) + 1)]["scope"] if y1 - yl2 <= yr1 - y2: - row_subgraphs[str(int(i) - 1)]['text_boxes'].extend(row_subgraphs[i]['text_boxes']) - row_subgraphs[str(int(i) - 1)]['scope'] = [yl1, y2] + row_subgraphs[str(int(i) - 1)]["text_boxes"].extend( + row_subgraphs[i]["text_boxes"] + ) + row_subgraphs[str(int(i) - 1)]["scope"] = [yl1, y2] else: - row_subgraphs[str(int(i) + 1)]['text_boxes'].extend(row_subgraphs[i]['text_boxes']) - row_subgraphs[str(int(i) + 1)]['scope'] = [y1, yr2] - row_subgraphs[i]['text_boxes'] = [] - row_subgraphs = {n: row_subgraphs[n] for n in row_subgraphs.keys() if row_subgraphs[n]['text_boxes'] != []} + row_subgraphs[str(int(i) + 1)]["text_boxes"].extend( + row_subgraphs[i]["text_boxes"] + ) + row_subgraphs[str(int(i) + 1)]["scope"] = [y1, yr2] + row_subgraphs[i]["text_boxes"] = [] + row_subgraphs = { + n: row_subgraphs[n] + for n in row_subgraphs.keys() + if row_subgraphs[n]["text_boxes"] != [] + } # deal some error col i = 0 for i in col_subgraphs.keys(): - if len(col_subgraphs[i]['text_boxes']) > 1: + if len(col_subgraphs[i]["text_boxes"]) > 1: continue - x1, x2 = col_subgraphs[i]['scope'] + x1, x2 = col_subgraphs[i]["scope"] if int(i) == 0: continue elif int(i) == len(col_subgraphs) - 1: - col_subgraphs[str(int(i) - 1)]['text_boxes'].extend(col_subgraphs[i]['text_boxes']) - x21, x22 = col_subgraphs[str(int(i) - 1)]['scope'] - col_subgraphs[str(int(i) - 1)]['scope'] = [x21, x2] + col_subgraphs[str(int(i) - 1)]["text_boxes"].extend( + col_subgraphs[i]["text_boxes"] + ) + x21, x22 = col_subgraphs[str(int(i) - 1)]["scope"] + col_subgraphs[str(int(i) - 1)]["scope"] = [x21, x2] else: - xl1, xl2 = col_subgraphs[str(int(i) - 1)]['scope'] - xr1, xr2 = col_subgraphs[str(int(i) + 1)]['scope'] + xl1, xl2 = col_subgraphs[str(int(i) - 1)]["scope"] + xr1, xr2 = col_subgraphs[str(int(i) + 1)]["scope"] if x1 - xl2 <= xr1 - x2: - col_subgraphs[str(int(i) - 1)]['text_boxes'].extend(col_subgraphs[i]['text_boxes']) - col_subgraphs[str(int(i) - 1)]['scope'] = [xl1, x2] + col_subgraphs[str(int(i) - 1)]["text_boxes"].extend( + col_subgraphs[i]["text_boxes"] + ) + col_subgraphs[str(int(i) - 1)]["scope"] = [xl1, x2] else: - col_subgraphs[str(int(i) + 1)]['text_boxes'].extend(col_subgraphs[i]['text_boxes']) - col_subgraphs[str(int(i) + 1)]['scope'] = [x1, xr2] - col_subgraphs[i]['text_boxes'] = [] - - col_subgraphs = {n: col_subgraphs[n] for n in col_subgraphs.keys() if col_subgraphs[n]['text_boxes'] != []} - - subgraphs = {'row': row_subgraphs, 'col': col_subgraphs} + col_subgraphs[str(int(i) + 1)]["text_boxes"].extend( + col_subgraphs[i]["text_boxes"] + ) + col_subgraphs[str(int(i) + 1)]["scope"] = [x1, xr2] + col_subgraphs[i]["text_boxes"] = [] + + col_subgraphs = { + n: col_subgraphs[n] + for n in col_subgraphs.keys() + if col_subgraphs[n]["text_boxes"] != [] + } + + subgraphs = {"row": row_subgraphs, "col": col_subgraphs} return subgraphs - def modify_text_boxes(self, text_box: List, box_img: np.ndarray, col_split_percent=90): + def modify_text_boxes( + self, text_box: List, box_img: np.ndarray, col_split_percent=90 + ): """correct the results of ocr det model Args: @@ -1254,20 +1504,22 @@ def modify_text_boxes(self, text_box: List, box_img: np.ndarray, col_split_perce for j in range(len(hor_proj)): if j == 0 and hor_proj[j] == 0: continue - if hor_proj[j] == 0 and hor_proj[j-1] != 0: + if hor_proj[j] == 0 and hor_proj[j - 1] != 0: st = j elif hor_proj[j] != 0 and st != -1 and j - 1 - st > 0: - margins.append({'scope': [st, j - 1], 'length': j - 1 - st}) + margins.append({"scope": [st, j - 1], "length": j - 1 - st}) st = -1 if len(margins) <= 3: return [text_box], [box_img] - median_thresh = np.percentile([_d['length'] for _d in margins], col_split_percent) + median_thresh = np.percentile( + [_d["length"] for _d in margins], col_split_percent + ) bonds = [] for k in margins: - if k['length'] > median_thresh: - bonds.append(k['scope']) + if k["length"] > median_thresh: + bonds.append(k["scope"]) if len(bonds) == 0: return [text_box], [box_img] @@ -1279,13 +1531,15 @@ def modify_text_boxes(self, text_box: List, box_img: np.ndarray, col_split_perce if n == 0: if bonds[n][0] > 1 and h > 1: new_text_boxes.append([new_st, y, bonds[n][0], h]) - tmp_box_img = box_img[0:h, new_st-x:new_st-x+bonds[n][0]] + tmp_box_img = box_img[0:h, new_st - x : new_st - x + bonds[n][0]] else: tmp_box_img = [] else: - if bonds[n][0] - bonds[n-1][1] > 1 and h > 1: - new_text_boxes.append([new_st, y, bonds[n][0] - bonds[n-1][1], h]) - tmp_box_img = box_img[0:h, new_st-x:new_st-x+bonds[n][0]-bonds[n-1][0]] + if bonds[n][0] - bonds[n - 1][1] > 1 and h > 1: + new_text_boxes.append([new_st, y, bonds[n][0] - bonds[n - 1][1], h]) + tmp_box_img = box_img[ + 0:h, new_st - x : new_st - x + bonds[n][0] - bonds[n - 1][0] + ] else: tmp_box_img = [] @@ -1296,8 +1550,10 @@ def modify_text_boxes(self, text_box: List, box_img: np.ndarray, col_split_perce if new_st != len(hor_proj) - 1: if x + w - new_st > 1 and h > 1: new_text_boxes.append([new_st, y, x + w - new_st, h]) - tmp_box_img = box_img[0:h, new_st-x: w] - assert tmp_box_img != [], f'[0:h, new_st-x: w]: [0:{h}, {new_st-x}: {w}], box_img: {box_img.shape}, new_st: {new_st}, w: {w}' + tmp_box_img = box_img[0:h, new_st - x : w] + assert ( + tmp_box_img != [] + ), f"[0:h, new_st-x: w]: [0:{h}, {new_st-x}: {w}], box_img: {box_img.shape}, new_st: {new_st}, w: {w}" new_box_imgs.append(tmp_box_img) return new_text_boxes, new_box_imgs @@ -1341,8 +1597,31 @@ def get_boxes_rel(self, box1: list, box2: list, res_boxes): w_diff = round((w1 - w2) / median_w, 4) h_diff = round((h1 - h2) / median_h, 4) - x_data = [{'core_x_diff': core_x_diff, 'core_y_diff': core_y_diff, 'lt_x_diff': lt_x_diff, 'br_x_diff': br_x_diff, 'lt_y_diff': lt_y_diff, 'br_y_diff': br_y_diff, 'w_diff': w_diff, 'h_diff': h_diff}] - x_df = pd.DataFrame(data=x_data, columns=['core_x_diff', 'core_y_diff', 'lt_x_diff', 'br_x_diff', 'lt_y_diff', 'br_y_diff', 'w_diff', 'h_diff']) + x_data = [ + { + "core_x_diff": core_x_diff, + "core_y_diff": core_y_diff, + "lt_x_diff": lt_x_diff, + "br_x_diff": br_x_diff, + "lt_y_diff": lt_y_diff, + "br_y_diff": br_y_diff, + "w_diff": w_diff, + "h_diff": h_diff, + } + ] + x_df = pd.DataFrame( + data=x_data, + columns=[ + "core_x_diff", + "core_y_diff", + "lt_x_diff", + "br_x_diff", + "lt_y_diff", + "br_y_diff", + "w_diff", + "h_diff", + ], + ) y = self.model.predict(x_df)[0] @@ -1376,7 +1655,7 @@ def cal_box_dis(self, box1: List, box2: List): for j in col_samples: pts2.append((i, j)) - min_distance = float('inf') + min_distance = float("inf") closest_pair = (None, None) for point1 in pts1: From b5dbe415e3eaa98b713c7967a2d5d836eaec24bf Mon Sep 17 00:00:00 2001 From: Ernestina <121707790@qq.com> Date: Wed, 25 Jun 2025 10:03:19 +0800 Subject: [PATCH 3/3] add into __all__ --- paddlex/inference/pipelines/table_recognition/utils.py | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/paddlex/inference/pipelines/table_recognition/utils.py b/paddlex/inference/pipelines/table_recognition/utils.py index 0a04dec73c..855cb36a07 100644 --- a/paddlex/inference/pipelines/table_recognition/utils.py +++ b/paddlex/inference/pipelines/table_recognition/utils.py @@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -__all__ = ["get_neighbor_boxes_idx"] +__all__ = ["get_neighbor_boxes_idx", "TableRec"] import os import pickle @@ -667,9 +667,6 @@ def shrink_text_box(self, box_img, origin_box): margin_st = -1 if len(detail["margin"]) == 1 and len(detail["line"]) == 0: - self.logger.debug( - f"box_img.shape: {box_img.shape}, shrink_box: {[origin_box[0], origin_box[1] + ver_main_scope[0], origin_box[2], ver_main_scope[1] - ver_main_scope[0]]}" - ) return box_img[ver_main_scope[0] : ver_main_scope[1], :], [ origin_box[0], origin_box[1] + ver_main_scope[0], @@ -798,9 +795,7 @@ def split_into_region( iou = compute_iou(box1=rect1, box2=rect2) if iou >= iou_thresh: region["text_boxes"].append(box) - self.logger.debug( - f"row {i} col {j} inside text box: {rect1}, cell bound: {rect2}" - ) + if len(region["text_boxes"]) == 0: region["empty_cell"] = 1