From db9437fa08bf549a38f4e132dade380ee3e3c7ae Mon Sep 17 00:00:00 2001 From: "Zykina (Bogatenkova) Anastasiya" Date: Fri, 27 Sep 2024 17:20:37 +0300 Subject: [PATCH 1/8] TLDR-774 fix bug in numbering styles (#499) --- dedoc/readers/docx_reader/numbering_extractor.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dedoc/readers/docx_reader/numbering_extractor.py b/dedoc/readers/docx_reader/numbering_extractor.py index 35b7e85d..0bf7d22f 100644 --- a/dedoc/readers/docx_reader/numbering_extractor.py +++ b/dedoc/readers/docx_reader/numbering_extractor.py @@ -75,9 +75,9 @@ def parse(self, xml: Tag, paragraph_properties: BaseProperties, run_properties: self.styles_extractor.parse(lvl_info.style_id, paragraph_properties, StyleType.NUMBERING) if lvl_info.pPr: change_paragraph_properties(paragraph_properties, lvl_info.pPr) + # run properties are applied only to the numbering text ("lvlText" content) if lvl_info.rPr: change_run_properties(run_properties, lvl_info.rPr) - change_run_properties(paragraph_properties, lvl_info.rPr) run_properties.text = text paragraph_properties.list_level = self.state.levels_count From fb0a9b85ffe6320482057a0f70753d98f445f061 Mon Sep 17 00:00:00 2001 From: Gabriele Conte <100914559+GabrieleConte@users.noreply.github.com> Date: Tue, 1 Oct 2024 14:00:36 +0200 Subject: [PATCH 2/8] upgraded bs4 to latest version (#500) --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 392895af..3101a2eb 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ -beautifulsoup4>=4.10.0,<=4.12.2 +beautifulsoup4>=4.10.0,<=4.12.3 charset-normalizer>=2.0.12,<=3.2.0 Cython>=0.29.28,<=3.0.2 dedoc-utils==0.3.8 From 9497dbae464995e44a09c915d220b4ac7114e0e5 Mon Sep 17 00:00:00 2001 From: "Zykina (Bogatenkova) Anastasiya" Date: Thu, 31 Oct 2024 12:21:42 +0300 Subject: [PATCH 3/8] TLDR-844 add auth key to grobid (#503) --- dedoc/readers/article_reader/article_reader.py | 7 +++++-- dedoc/readers/pdf_reader/pdf_base_reader.py | 9 ++++----- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/dedoc/readers/article_reader/article_reader.py b/dedoc/readers/article_reader/article_reader.py index a63bd8b6..29cb0348 100644 --- a/dedoc/readers/article_reader/article_reader.py +++ b/dedoc/readers/article_reader/article_reader.py @@ -28,6 +28,9 @@ def __init__(self, config: Optional[dict] = None) -> None: else: self.grobid_url = f"http://{os.environ.get('GROBID_HOST', 'localhost')}:{os.environ.get('GROBID_PORT', '8070')}" self.url = f"{self.grobid_url}/api/processFulltextDocument" + + auth_key = os.environ.get("GROBID_AUTH_KEY", "") + self.request_headers = {"Authorization": auth_key} if auth_key else {} self.grobid_is_alive = False def read(self, file_path: str, parameters: Optional[dict] = None) -> UnstructuredDocument: @@ -48,7 +51,7 @@ def read(self, file_path: str, parameters: Optional[dict] = None) -> Unstructure with open(file_path, "rb") as file: files = {"input": file} try: - response = requests.post(self.url, files=files, data={"teiCoordinates": "figure"}) + response = requests.post(self.url, files=files, data={"teiCoordinates": "figure"}, headers=self.request_headers) if response.status_code != 200: warning = f"GROBID returns code {response.status_code}." self.logger.warning(warning) @@ -106,7 +109,7 @@ def __update_grobid_alive(self, grobid_url: str, max_attempts: int = 2) -> None: attempt = max_attempts while attempt > 0: try: - response = requests.get(f"{grobid_url}/api/isalive") + response = requests.get(f"{grobid_url}/api/isalive", headers=self.request_headers) if response.status_code == 200: self.logger.info(f"GROBID up on {grobid_url}.") self.grobid_is_alive = True diff --git a/dedoc/readers/pdf_reader/pdf_base_reader.py b/dedoc/readers/pdf_reader/pdf_base_reader.py index 0b34ce72..17816b30 100644 --- a/dedoc/readers/pdf_reader/pdf_base_reader.py +++ b/dedoc/readers/pdf_reader/pdf_base_reader.py @@ -2,7 +2,6 @@ from collections import namedtuple from typing import Dict, Iterator, List, Optional, Set, Tuple -import numpy as np from dedocutils.data_structures.bbox import BBox from numpy import ndarray @@ -13,7 +12,6 @@ from dedoc.readers.pdf_reader.data_classes.line_with_location import LineWithLocation from dedoc.readers.pdf_reader.data_classes.pdf_image_attachment import PdfImageAttachment from dedoc.readers.pdf_reader.data_classes.tables.scantable import ScanTable -from dedoc.readers.pdf_reader.pdf_image_reader.table_recognizer.gost_frame_recognizer import GOSTFrameRecognizer ParametersForParseDoc = namedtuple("ParametersForParseDoc", [ "orient_analysis_cells", @@ -45,6 +43,7 @@ def __init__(self, *, config: Optional[dict] = None, recognized_extensions: Opti from dedoc.readers.pdf_reader.pdf_image_reader.line_metadata_extractor.metadata_extractor import LineMetadataExtractor from dedoc.readers.pdf_reader.pdf_image_reader.paragraph_extractor.scan_paragraph_classifier_extractor import ScanParagraphClassifierExtractor + from dedoc.readers.pdf_reader.pdf_image_reader.table_recognizer.gost_frame_recognizer import GOSTFrameRecognizer from dedoc.readers.pdf_reader.pdf_image_reader.table_recognizer.table_recognizer import TableRecognizer from dedoc.readers.pdf_reader.utils.line_object_linker import LineObjectLinker from dedoc.attachments_extractors.concrete_attachments_extractors.pdf_attachments_extractor import PDFAttachmentsExtractor @@ -153,8 +152,8 @@ def _parse_document(self, path: str, parameters: ParametersForParseDoc) -> ( metadata["rotated_page_angles"] = page_angles return all_lines_with_paragraphs, mp_tables, attachments, warnings, metadata - def _process_document_with_gost_frame(self, images: Iterator[np.ndarray], first_page: int, parameters: ParametersForParseDoc, path: str) -> \ - Tuple[Tuple[List[LineWithLocation], List[ScanTable], List[PdfImageAttachment], List[float]], Dict[int, Tuple[np.ndarray, BBox, Tuple[int, ...]]]]: + def _process_document_with_gost_frame(self, images: Iterator[ndarray], first_page: int, parameters: ParametersForParseDoc, path: str) -> \ + Tuple[Tuple[List[LineWithLocation], List[ScanTable], List[PdfImageAttachment], List[float]], Dict[int, Tuple[ndarray, BBox, Tuple[int, ...]]]]: from joblib import Parallel, delayed from dedoc.readers.pdf_reader.pdf_txtlayer_reader.pdf_txtlayer_reader import PdfTxtlayerReader @@ -170,7 +169,7 @@ def _process_document_with_gost_frame(self, images: Iterator[np.ndarray], first_ return result, gost_analyzed_images def _shift_all_contents(self, lines: List[LineWithMeta], unref_tables: List[ScanTable], attachments: List[PdfImageAttachment], - gost_analyzed_images: Dict[int, Tuple[np.ndarray, BBox, Tuple[int, ...]]]) -> None: + gost_analyzed_images: Dict[int, Tuple[ndarray, BBox, Tuple[int, ...]]]) -> None: # shift unref_tables for scan_table in unref_tables: for location in scan_table.locations: From 75739f477472442a65e1aaf68a50b61cfda1f655 Mon Sep 17 00:00:00 2001 From: Alexander Golodkov <55749660+alexander1999-hub@users.noreply.github.com> Date: Thu, 7 Nov 2024 18:43:07 +0300 Subject: [PATCH 4/8] TLDR-849 fixed bboxes for gost frame analysis (#504) Co-authored-by: Nasty --- dedoc/readers/pdf_reader/pdf_base_reader.py | 2 +- .../pdf_txtlayer_reader.py | 15 +++-- scripts/test_words_bbox_extraction.py | 39 +++++++++++- .../test_api_module_table_recognizer.py | 63 +++++++++++++++++++ 4 files changed, 110 insertions(+), 9 deletions(-) diff --git a/dedoc/readers/pdf_reader/pdf_base_reader.py b/dedoc/readers/pdf_reader/pdf_base_reader.py index 17816b30..101607ff 100644 --- a/dedoc/readers/pdf_reader/pdf_base_reader.py +++ b/dedoc/readers/pdf_reader/pdf_base_reader.py @@ -161,7 +161,7 @@ def _process_document_with_gost_frame(self, images: Iterator[ndarray], first_pag page_range = range(first_page, first_page + len(gost_analyzed_images)) gost_analyzed_images = dict(zip(page_range, gost_analyzed_images)) if isinstance(self, PdfTxtlayerReader): - self.gost_frame_boxes = dict(zip(page_range, [item[1] for item in gost_analyzed_images.values()])) + self.gost_frame_boxes = dict(zip(page_range, [(item[1], item[2]) for item in gost_analyzed_images.values()])) result = Parallel(n_jobs=self.config["n_jobs"])( delayed(self._process_one_page)(image, parameters, page_number, path) for page_number, (image, box, original_image_shape) in gost_analyzed_images.items() diff --git a/dedoc/readers/pdf_reader/pdf_txtlayer_reader/pdf_txtlayer_reader.py b/dedoc/readers/pdf_reader/pdf_txtlayer_reader/pdf_txtlayer_reader.py index 46528fcd..d277815b 100644 --- a/dedoc/readers/pdf_reader/pdf_txtlayer_reader/pdf_txtlayer_reader.py +++ b/dedoc/readers/pdf_reader/pdf_txtlayer_reader/pdf_txtlayer_reader.py @@ -4,7 +4,6 @@ from numpy import ndarray from dedoc.readers.pdf_reader.data_classes.line_with_location import LineWithLocation -from dedoc.readers.pdf_reader.data_classes.page_with_bboxes import PageWithBBox from dedoc.readers.pdf_reader.data_classes.pdf_image_attachment import PdfImageAttachment from dedoc.readers.pdf_reader.data_classes.tables.scantable import ScanTable from dedoc.readers.pdf_reader.pdf_base_reader import ParametersForParseDoc, PdfBaseReader @@ -60,28 +59,32 @@ def _process_one_page(self, if page is None: return [], [], [], [] if parameters.need_gost_frame_analysis: - page_shift = self.gost_frame_boxes[page_number] - self._move_table_cells(tables=tables, page_shift=page_shift, page=page) + page_shift = self.gost_frame_boxes[page_number][0] + self._move_table_cells(tables=tables, page_shift=page_shift, page=self.gost_frame_boxes[page_number][1]) + self.__change_table_boxes_page_width_heigth(pdf_width=page.pdf_page_width, pdf_height=page.pdf_page_height, tables=tables) readable_block = page_shift # bbox representing the content of the gost frame page.bboxes = [bbox for bbox in page.bboxes if self._inside_any_unreadable_block(bbox.bbox, [readable_block])] # exclude boxes outside the frame + unreadable_blocks = [location.bbox for table in tables for location in table.locations] page.bboxes = [bbox for bbox in page.bboxes if not self._inside_any_unreadable_block(bbox.bbox, unreadable_blocks)] lines = self.metadata_extractor.extract_metadata_and_set_annotations(page_with_lines=page, call_classifier=False) - self.__change_table_boxes_page_width_heigth(pdf_width=page.pdf_page_width, pdf_height=page.pdf_page_height, tables=tables) + + if not parameters.need_gost_frame_analysis: + self.__change_table_boxes_page_width_heigth(pdf_width=page.pdf_page_width, pdf_height=page.pdf_page_height, tables=tables) return lines, tables, page.attachments, [] - def _move_table_cells(self, tables: List[ScanTable], page_shift: BBox, page: PageWithBBox) -> None: + def _move_table_cells(self, tables: List[ScanTable], page_shift: BBox, page: Tuple[int, int]) -> None: """ Move tables back to original coordinates when parsing a document containing a gost frame """ + image_height, image_width = page for table in tables: shift_x, shift_y = page_shift.x_top_left, page_shift.y_top_left # shift tables to original coordinates for location in table.locations: location.bbox.shift(shift_x=shift_x, shift_y=shift_y) for row in table.matrix_cells: for cell in row: - image_width, image_height = page.pdf_page_width, page.pdf_page_height cell.shift(shift_x=shift_x, shift_y=shift_y, image_width=image_width, image_height=image_height) def __change_table_boxes_page_width_heigth(self, pdf_width: int, pdf_height: int, tables: List[ScanTable]) -> None: diff --git a/scripts/test_words_bbox_extraction.py b/scripts/test_words_bbox_extraction.py index 37b4fc36..03e2afa1 100644 --- a/scripts/test_words_bbox_extraction.py +++ b/scripts/test_words_bbox_extraction.py @@ -9,7 +9,7 @@ from dedoc.api.dedoc_api import config from dedoc.utils.image_utils import rotate_image -from dedoc.utils.pdf_utils import get_page_image +from dedoc.utils.pdf_utils import get_page_image, get_pdf_page_count from tests.api_tests.abstract_api_test import AbstractTestApiDocReader BboxWithConfsType = namedtuple("WordWithConf", ["start", "end", "bbox", "confs", "text_type"]) @@ -61,12 +61,15 @@ def __extract_texttype_annotation(self, anns_type: List[dict], ann_bbox: dict, t return text_type - def __get_words_annotation(self, structure: dict) -> List[BboxWithConfsType]: + def __get_words_annotation(self, structure: dict, page_id: int = 0) -> List[BboxWithConfsType]: stack = [structure] words_annotation = [] while len(stack) > 0: node = stack.pop() + if node["metadata"]["page_id"] != page_id: + stack.extend(node["subparagraphs"]) + continue anns_bbox = [annotation for annotation in node["annotations"] if annotation["name"] == "bounding box"] anns_conf = [annotation for annotation in node["annotations"] if annotation["name"] == "confidence"] @@ -171,6 +174,38 @@ def test_pdf_documents(self) -> None: image = self.__draw_tables_words(tables, image) cv2.imwrite(os.path.join(output_path, f"{os.path.split(file_name)[1]}.png"), image) + def test_gost_frame_documents(self) -> None: + filename_parameters_outputdir = [ + ["tables/gost_multipage_table_2.pdf", dict(pdf_with_text_layer="true", need_gost_frame_analysis="true"), "gost_frame_true"], + ["tables/gost_multipage_table_2.pdf", dict(pdf_with_text_layer="false", need_gost_frame_analysis="true"), "gost_frame_false"] + ] + + for file_name, parameters, outputdir in filename_parameters_outputdir: + output_path = os.path.join(self.output_path, outputdir) + os.makedirs(output_path, exist_ok=True) + result = self._send_request(file_name, data=parameters) + structure = result["content"]["structure"] + tables = result["content"]["tables"] + page_count = get_pdf_page_count(self._get_abs_path(file_name)) + + for page_id in range(page_count): + image = np.asarray(get_page_image(self._get_abs_path(file_name), page_id)) + word_annotations = self.__get_words_annotation(structure, page_id=page_id) + if len(word_annotations) > 0: + ann = word_annotations[0] + if ann is not None: + bbox = json.loads(ann.bbox) + image = cv2.resize(image, dsize=(bbox["page_width"], bbox["page_height"]), interpolation=cv2.INTER_CUBIC) + image = self.__draw_word_annotations(image, word_annotations) + if len(tables) > 0: + if len(word_annotations) == 0: + cell_line = tables[0]["cells"][0][0]["lines"][0] + ann_bbox = [annotation for annotation in cell_line["annotations"] if annotation["name"] == "bounding box"][0] + bbox = json.loads(ann_bbox["value"]) + image = cv2.resize(image, dsize=(bbox["page_width"], bbox["page_height"]), interpolation=cv2.INTER_CUBIC) + image = self.__draw_tables_words(tables, image) + cv2.imwrite(os.path.join(output_path, f"{os.path.split(file_name)[1]}_{page_id}.png"), image) + def test_table_word_extraction(self) -> None: output_path = os.path.join(self.output_path, "tables") os.makedirs(output_path, exist_ok=True) diff --git a/tests/api_tests/test_api_module_table_recognizer.py b/tests/api_tests/test_api_module_table_recognizer.py index a1e48a78..dbd3f10f 100644 --- a/tests/api_tests/test_api_module_table_recognizer.py +++ b/tests/api_tests/test_api_module_table_recognizer.py @@ -1,3 +1,4 @@ +import json import os import unittest from typing import List @@ -214,11 +215,36 @@ def test_detect_small_table(self) -> None: tables = result["content"]["tables"] self.assertEqual(2, len(tables)) + def _test_bbox_annotations(self, node: dict, target_dict: dict) -> None: + annotations = [annotation for annotation in node["annotations"] if annotation["name"] == "bounding box"] + annotations_dict = json.loads(annotations[0]["value"]) + for key in target_dict: + self.assertAlmostEqual(float(annotations_dict[key]), target_dict[key], None, None, delta=0.05) + def test_multipage_gost_table(self) -> None: file_name = "gost_multipage_table.pdf" result = self._send_request(file_name, data={"need_gost_frame_analysis": "True"}) # don't pass pdf_with_text_layer to check condition in PDFBaseReader self.assertTrue(len(result["content"]["tables"][0]["cells"]) > 35) + target_bbox_dict = { + "x_top_left": 0.14, + "y_top_left": 0.11, + "width": 0.07, + "height": 0.01, + "page_width": 1653, + "page_height": 2339 + } + self._test_bbox_annotations(result["content"]["structure"]["subparagraphs"][0], target_bbox_dict) + self.assertTrue("Состав квалификационных испытаний" in result["content"]["structure"]["subparagraphs"][0]["text"]) self.assertTrue("KR13" in result["content"]["tables"][0]["cells"][-1][0]["lines"][0]["text"]) # check the last row of multipage table + target_bbox_dict_1 = { + "x_top_left": 0.15, + "y_top_left": 0.58, + "width": 0.04, + "height": 0.009, + "page_width": 1653, + "page_height": 2339 + } + self._test_bbox_annotations(result["content"]["tables"][0]["cells"][-1][0]["lines"][0], target_bbox_dict_1) self.assertTrue("R13.1" in result["content"]["tables"][0]["cells"][-1][1]["lines"][0]["text"]) # check that it belongs to first and only table self.assertTrue("Испытание по проверке" in result["content"]["tables"][0]["cells"][-1][2]["lines"][0]["text"]) self.assertTrue("3.6" in result["content"]["tables"][0]["cells"][-1][3]["lines"][0]["text"]) @@ -228,7 +254,26 @@ def test_multipage_gost_table_with_text_layer(self) -> None: file_name = "gost_multipage_table_2.pdf" result = self._send_request(file_name, data={"need_gost_frame_analysis": "True", "pdf_with_text_layer": "True"}) self.assertEqual(len(result["content"]["tables"][0]["cells"]), 14) + target_bbox_dict = { + "x_top_left": 0.12, + "y_top_left": 0.56, + "width": 0.01, + "height": 0.01, + "page_width": 595, + "page_height": 841 + } + self._test_bbox_annotations(result["content"]["structure"]["subparagraphs"][0]["subparagraphs"][0], target_bbox_dict) + self.assertTrue("Sample text 1" in result["content"]["structure"]["subparagraphs"][0]["subparagraphs"][0]["text"]) self.assertTrue("SAMPLE TEXT" in result["content"]["tables"][0]["cells"][0][0]["lines"][0]["text"]) + target_bbox_dict_1 = { + "x_top_left": 0.13, + "y_top_left": 0.61, + "width": 0.06, + "height": 0.007, + "page_width": 595, + "page_height": 841 + } + self._test_bbox_annotations(result["content"]["tables"][0]["cells"][0][0]["lines"][0], target_bbox_dict_1) self.assertTrue("2" in result["content"]["tables"][0]["cells"][-1][0]["lines"][0]["text"]) self.assertEqual(len(result["content"]["tables"]), 1) @@ -238,4 +283,22 @@ def test_multipage_gost_table_with_text_layer_and_pages_param(self) -> None: self.assertEqual(len(result["content"]["tables"]), 1) self.assertEqual(len(result["content"]["tables"][0]["cells"]), 5) self.assertTrue("SAMPLE TEXT" in result["content"]["tables"][0]["cells"][0][0]["lines"][0]["text"]) + target_bbox_dict_1 = { + "x_top_left": 0.13, + "y_top_left": 0.07, + "width": 0.06, + "height": 0.007, + "page_width": 595, + "page_height": 841 + } + self._test_bbox_annotations(result["content"]["tables"][0]["cells"][0][0]["lines"][0], target_bbox_dict_1) self.assertTrue("2" in result["content"]["tables"][0]["cells"][-1][0]["lines"][0]["text"]) + target_bbox_dict_2 = { + "x_top_left": 0.13, + "y_top_left": 0.15, + "width": 0.005, + "height": 0.007, + "page_width": 595, + "page_height": 841 + } + self._test_bbox_annotations(result["content"]["tables"][0]["cells"][-1][0]["lines"][0], target_bbox_dict_2) From cb701b09f176915373cd6e5fd344bc328816f164 Mon Sep 17 00:00:00 2001 From: Andrey Mikhailov Date: Thu, 14 Nov 2024 21:35:48 +0800 Subject: [PATCH 5/8] Tabby remove frame (#501) Co-authored-by: alexander1999-hub Co-authored-by: Nasty Co-authored-by: Belyaeva Oksana --- dedoc/data_structures/cell_with_meta.py | 6 +- .../pdf_reader/data_classes/tables/cell.py | 25 ++-- .../data_classes/tables/location.py | 1 + .../data_classes/tables/scantable.py | 14 ++- dedoc/readers/pdf_reader/pdf_base_reader.py | 1 + .../multipage_table_extractor.py | 13 ++- .../table_attribute_extractor.py | 17 +++ .../pdf_txtlayer_reader/pdf_tabby_reader.py | 107 +++++++++++++----- .../tabbypdf/jars/ispras_tbl_extr.jar | Bin 162243 -> 164506 bytes scripts/test_words_bbox_extraction.py | 3 +- .../test_api_misc_multipage_table.py | 64 ++++++----- .../test_api_module_table_recognizer.py | 87 ++++++-------- .../test_module_gost_frame_recognizer.py | 31 +++++ 13 files changed, 232 insertions(+), 137 deletions(-) diff --git a/dedoc/data_structures/cell_with_meta.py b/dedoc/data_structures/cell_with_meta.py index 133d69bf..d23cad1c 100644 --- a/dedoc/data_structures/cell_with_meta.py +++ b/dedoc/data_structures/cell_with_meta.py @@ -1,4 +1,4 @@ -from typing import List +from typing import List, Optional from dedoc.api.schema.cell_with_meta import CellWithMeta as ApiCellWithMeta from dedoc.data_structures.annotation import Annotation @@ -20,14 +20,14 @@ class CellWithMeta(Serializable): :vartype rowspan: int :vartype invisible: bool """ - def __init__(self, lines: List[LineWithMeta], colspan: int = 1, rowspan: int = 1, invisible: bool = False) -> None: + def __init__(self, lines: Optional[List[LineWithMeta]], colspan: int = 1, rowspan: int = 1, invisible: bool = False) -> None: """ :param lines: textual lines of the cell :param colspan: number of columns to span like in HTML format :param rowspan: number of rows to span like in HTML format :param invisible: indicator for displaying or hiding cell text """ - self.lines: List[LineWithMeta] = lines + self.lines: List[LineWithMeta] = [] if lines is None else lines self.colspan: int = colspan self.rowspan: int = rowspan self.invisible: bool = invisible diff --git a/dedoc/readers/pdf_reader/data_classes/tables/cell.py b/dedoc/readers/pdf_reader/data_classes/tables/cell.py index dd7ece41..0d42dc37 100644 --- a/dedoc/readers/pdf_reader/data_classes/tables/cell.py +++ b/dedoc/readers/pdf_reader/data_classes/tables/cell.py @@ -3,10 +3,11 @@ from dedocutils.data_structures import BBox from dedoc.data_structures.annotation import Annotation +from dedoc.data_structures.cell_with_meta import CellWithMeta from dedoc.data_structures.line_with_meta import LineWithMeta -class Cell: +class Cell(CellWithMeta): @staticmethod def copy_from(cell: "Cell", @@ -41,35 +42,27 @@ def shift(self, shift_x: int, shift_y: int, image_width: int, image_height: int) if self.con_coord: self.con_coord.shift(shift_x=shift_x, shift_y=shift_y) - def __init__(self, - x_top_left: int, - x_bottom_right: int, - y_top_left: int, - y_bottom_right: int, - id_con: int = -1, - lines: Optional[List[LineWithMeta]] = None, - is_attribute: bool = False, - is_attribute_required: bool = False, - rotated_angle: int = 0, - uid: str = None, + def __init__(self, x_top_left: int, x_bottom_right: int, y_top_left: int, y_bottom_right: int, id_con: int = -1, lines: Optional[List[LineWithMeta]] = None, + is_attribute: bool = False, is_attribute_required: bool = False, rotated_angle: int = 0, uid: str = None, contour_coord: Optional[BBox] = None) -> None: + import uuid assert x_top_left <= x_bottom_right assert y_top_left <= y_bottom_right + + self.lines = [] if lines is None else lines + super().__init__(lines) + self.x_top_left = x_top_left self.x_bottom_right = x_bottom_right self.y_top_left = y_top_left self.y_bottom_right = y_bottom_right self.id_con = id_con - self.lines = [] if lines is None else lines self.is_attribute = is_attribute self.is_attribute_required = is_attribute_required self.rotated_angle = rotated_angle self.cell_uid = f"cell_{uuid.uuid1()}" if uid is None else uid - self.colspan = 1 - self.rowspan = 1 - self.invisible = False self.con_coord = contour_coord or BBox(0, 0, 0, 0) def __str__(self) -> str: diff --git a/dedoc/readers/pdf_reader/data_classes/tables/location.py b/dedoc/readers/pdf_reader/data_classes/tables/location.py index 42bc468d..dbec5407 100644 --- a/dedoc/readers/pdf_reader/data_classes/tables/location.py +++ b/dedoc/readers/pdf_reader/data_classes/tables/location.py @@ -10,6 +10,7 @@ def __init__(self, page_number: int, bbox: BBox, name: str = "", rotated_angle: self.page_number = page_number self.bbox = bbox self.name = name + # TODO put self.order (change LineWithLocation, PdfImageAttachment, ScanTable) self.rotated_angle = rotated_angle def shift(self, shift_x: int, shift_y: int) -> None: diff --git a/dedoc/readers/pdf_reader/data_classes/tables/scantable.py b/dedoc/readers/pdf_reader/data_classes/tables/scantable.py index ee8316d0..be812630 100644 --- a/dedoc/readers/pdf_reader/data_classes/tables/scantable.py +++ b/dedoc/readers/pdf_reader/data_classes/tables/scantable.py @@ -1,4 +1,4 @@ -from typing import Any, List +from typing import Any, List, Optional from dedocutils.data_structures import BBox @@ -10,7 +10,8 @@ class ScanTable: - def __init__(self, page_number: int, matrix_cells: List[List[Cell]] = None, bbox: BBox = None, name: str = "", order: int = -1) -> None: + def __init__(self, page_number: int, matrix_cells: Optional[List[List[CellWithMeta]]] = None, bbox: Optional[BBox] = None, + name: str = "", order: int = -1) -> None: self.matrix_cells = matrix_cells self.page_number = page_number self.locations = [] @@ -27,6 +28,15 @@ def extended(self, table: "ScanTable") -> None: # extend order self.order = max(self.order, table.order) + def check_on_cell_instance(self) -> bool: + if len(self.matrix_cells) == 0: + return False + if len(self.matrix_cells[0]) == 0: + return False + if not isinstance(self.matrix_cells[0][0], Cell): + return False + return True + def to_table(self) -> Table: metadata = TableMetadata(page_id=self.page_number, uid=self.name, rotated_angle=self.location.rotated_angle) cells_with_meta = [[CellWithMeta.create_from_cell(cell) for cell in row] for row in self.matrix_cells] diff --git a/dedoc/readers/pdf_reader/pdf_base_reader.py b/dedoc/readers/pdf_reader/pdf_base_reader.py index 101607ff..4fd9fdec 100644 --- a/dedoc/readers/pdf_reader/pdf_base_reader.py +++ b/dedoc/readers/pdf_reader/pdf_base_reader.py @@ -13,6 +13,7 @@ from dedoc.readers.pdf_reader.data_classes.pdf_image_attachment import PdfImageAttachment from dedoc.readers.pdf_reader.data_classes.tables.scantable import ScanTable + ParametersForParseDoc = namedtuple("ParametersForParseDoc", [ "orient_analysis_cells", "orient_cell_angle", diff --git a/dedoc/readers/pdf_reader/pdf_image_reader/table_recognizer/table_extractors/concrete_extractors/multipage_table_extractor.py b/dedoc/readers/pdf_reader/pdf_image_reader/table_recognizer/table_extractors/concrete_extractors/multipage_table_extractor.py index 39517b2f..06abe0c2 100644 --- a/dedoc/readers/pdf_reader/pdf_image_reader/table_recognizer/table_extractors/concrete_extractors/multipage_table_extractor.py +++ b/dedoc/readers/pdf_reader/pdf_image_reader/table_recognizer/table_extractors/concrete_extractors/multipage_table_extractor.py @@ -1,3 +1,4 @@ +import copy import logging from typing import List @@ -155,24 +156,26 @@ def __is_one_table(self, t1: ScanTable, t2: ScanTable) -> bool: # condition 2. Exclusion of the duplicated header (if any) attr1 = TableAttributeExtractor.get_header_table(t1.matrix_cells) attr2 = TableAttributeExtractor.get_header_table(t2.matrix_cells) + t2_update = copy.deepcopy(t2) if TableAttributeExtractor.is_equal_attributes(attr1, attr2): - t2.matrix_cells = t2.matrix_cells[len(attr2):] + t2_update.matrix_cells = t2_update.matrix_cells[len(attr2):] - if len(t2.matrix_cells) == 0 or len(t1.matrix_cells) == 0: + if len(t2_update.matrix_cells) == 0 or len(t1.matrix_cells) == 0: return False - TableAttributeExtractor.clear_attributes(t2.matrix_cells) + TableAttributeExtractor.clear_attributes(t2_update.matrix_cells) # condition 3. Number of columns should be equal - if len(t1.matrix_cells[-1]) != len(t2.matrix_cells[0]): + if len(t1.matrix_cells[-1]) != len(t2_update.matrix_cells[0]): if self.config.get("debug_mode", False): self.logger.debug("Different count column") return False # condition 4. Comparison of the widths of last and first rows - if not self.__is_equal_width_cells(t1.matrix_cells, t2.matrix_cells): + if t1.check_on_cell_instance() and t2_update.check_on_cell_instance() and not self.__is_equal_width_cells(t1.matrix_cells, t2_update.matrix_cells): if self.config.get("debug_mode", False): self.logger.debug("Different width columns") return False + t2.matrix_cells = copy.deepcopy(t2_update.matrix_cells) # save changes return True diff --git a/dedoc/readers/pdf_reader/pdf_image_reader/table_recognizer/table_extractors/concrete_extractors/table_attribute_extractor.py b/dedoc/readers/pdf_reader/pdf_image_reader/table_recognizer/table_extractors/concrete_extractors/table_attribute_extractor.py index f6390705..f13f0eec 100644 --- a/dedoc/readers/pdf_reader/pdf_image_reader/table_recognizer/table_extractors/concrete_extractors/table_attribute_extractor.py +++ b/dedoc/readers/pdf_reader/pdf_image_reader/table_recognizer/table_extractors/concrete_extractors/table_attribute_extractor.py @@ -31,8 +31,22 @@ def is_equal_attributes(attr1: List[List[Cell]], attr2: List[List[Cell]], thr_si return True + @staticmethod + def check_have_attributes(matrix_table: List[List[Cell]]) -> bool: + if len(matrix_table) == 0: + return False + if len(matrix_table[0]) == 0: + return False + if not hasattr(matrix_table[0][0], "is_attribute"): + return False + return True + @staticmethod def get_header_table(matrix_table: List[List[Cell]]) -> List[List[Cell]]: + + if not TableAttributeExtractor.check_have_attributes(matrix_table): + return matrix_table[:1] + header_rows = len(matrix_table) for (i, row) in enumerate(matrix_table): attrs = [cell for cell in row if cell.is_attribute] @@ -44,6 +58,9 @@ def get_header_table(matrix_table: List[List[Cell]]) -> List[List[Cell]]: @staticmethod def clear_attributes(matrix_table: List[List[Cell]]) -> None: + if not TableAttributeExtractor.check_have_attributes(matrix_table): + return + for row in matrix_table: for cell in row: cell.is_attribute = False diff --git a/dedoc/readers/pdf_reader/pdf_txtlayer_reader/pdf_tabby_reader.py b/dedoc/readers/pdf_reader/pdf_txtlayer_reader/pdf_tabby_reader.py index 5d55496b..1d0d594d 100644 --- a/dedoc/readers/pdf_reader/pdf_txtlayer_reader/pdf_tabby_reader.py +++ b/dedoc/readers/pdf_reader/pdf_txtlayer_reader/pdf_tabby_reader.py @@ -1,3 +1,4 @@ +import os.path from typing import List, Optional, Tuple from dedocutils.data_structures import BBox @@ -62,13 +63,7 @@ def read(self, file_path: str, parameters: Optional[dict] = None) -> Unstructure warnings = [] with tempfile.TemporaryDirectory() as tmp_dir: - lines, tables, tables_on_images, attachments, document_metadata = self.__extract( - path=file_path, - parameters=parameters, - warnings=warnings, - tmp_dir=tmp_dir - ) - lines = self.linker.link_objects(lines=lines, tables=tables_on_images, images=attachments) + lines, tables, attachments, document_metadata = self.__extract(path=file_path, parameters=parameters, warnings=warnings, tmp_dir=tmp_dir) if get_param_with_attachments(parameters) and self.attachment_extractor.can_extract(file_path): attachments += self.attachment_extractor.extract(file_path=file_path, parameters=parameters) @@ -79,14 +74,15 @@ def read(self, file_path: str, parameters: Optional[dict] = None) -> Unstructure return self._postprocess(result) - def __extract(self, path: str, parameters: dict, warnings: list, tmp_dir: str)\ - -> Tuple[List[LineWithMeta], List[Table], List[ScanTable], List[PdfImageAttachment], Optional[dict]]: + def __extract(self, path: str, parameters: dict, warnings: List[str], tmp_dir: str)\ + -> Tuple[List[LineWithMeta], List[Table], List[PdfImageAttachment], Optional[dict]]: import math from dedoc.utils.pdf_utils import get_pdf_page_count from dedoc.utils.utils import calculate_file_hash from dedoc.utils.parameter_utils import get_param_page_slice, get_param_with_attachments + from dedoc.utils.parameter_utils import get_param_need_gost_frame_analysis - all_lines, all_tables, all_tables_on_images, all_attached_images = [], [], [], [] + all_lines, all_tables, all_scan_tables, all_attached_images = [], [], [], [] with_attachments = get_param_with_attachments(parameters) document_metadata = None @@ -104,40 +100,70 @@ def __extract(self, path: str, parameters: dict, warnings: list, tmp_dir: str)\ document_metadata["last_page"] = last_page if empty_page_limit: - return all_lines, all_tables, all_tables_on_images, all_attached_images, document_metadata + return all_lines, all_tables, all_attached_images, document_metadata + + remove_gost_frame = get_param_need_gost_frame_analysis(parameters) + gost_json_path = self.__save_gost_frame_boxes_to_json(first_page=first_page, last_page=last_page, page_count=page_count, tmp_dir=tmp_dir, path=path) \ + if remove_gost_frame else "" # in java tabby reader page numeration starts with 1, end_page is included first_tabby_page = first_page + 1 if first_page is not None else 1 last_tabby_page = page_count if (last_page is None) or (last_page is not None and last_page > page_count) else last_page self.logger.info(f"Reading PDF pages from {first_tabby_page} to {last_tabby_page}") - document = self.__process_pdf(path=path, start_page=first_tabby_page, end_page=last_tabby_page, tmp_dir=tmp_dir) + document = self.__process_pdf(path=path, + start_page=first_tabby_page, + end_page=last_tabby_page, + tmp_dir=tmp_dir, + gost_json_path=gost_json_path, + remove_frame=remove_gost_frame) pages = document.get("pages", []) for page in pages: page_lines = self.__get_lines_with_location(page, file_hash) if page_lines: all_lines.extend(page_lines) - page_tables, table_on_images = self.__get_tables(page) - assert len(page_tables) == len(table_on_images) - if page_tables: - all_tables.extend(page_tables) - all_tables_on_images.extend(table_on_images) + scan_tables = self.__get_tables(page) + all_scan_tables.extend(scan_tables) attached_images = self.__get_attached_images(page=page, parameters=parameters, path=path) if with_attachments else [] if attached_images: all_attached_images.extend(attached_images) - return all_lines, all_tables, all_tables_on_images, all_attached_images, document_metadata + mp_tables = self.table_recognizer.convert_to_multipages_tables(all_scan_tables, lines_with_meta=all_lines) + all_lines = self.linker.link_objects(lines=all_lines, tables=mp_tables, images=all_attached_images) + + tables = [scan_table.to_table() for scan_table in mp_tables] + + return all_lines, tables, all_attached_images, document_metadata + + def __save_gost_frame_boxes_to_json(self, first_page: Optional[int], last_page: Optional[int], page_count: int, path: str, tmp_dir: str) -> str: + from joblib import Parallel, delayed + import json + + first_page = 0 if first_page is None or first_page < 0 else first_page + last_page = page_count if (last_page is None) or (last_page is not None and last_page > page_count) else last_page + images = self._get_images(path, first_page, last_page) + + gost_analyzed_images = Parallel(n_jobs=self.config["n_jobs"])(delayed(self.gost_frame_recognizer.rec_and_clean_frame)(image) for image in images) + + result_dict = { + page_number: {**page_data[1].to_dict(), **{"original_image_width": page_data[2][1], "original_image_height": page_data[2][0]}} + for page_number, page_data in enumerate(gost_analyzed_images, start=first_page) + } - def __get_tables(self, page: dict) -> Tuple[List[Table], List[ScanTable]]: + result_json_path = os.path.join(tmp_dir, "gost_frame_bboxes.json") + with open(result_json_path, "w") as f: + json.dump(result_dict, f) + + return result_json_path + + def __get_tables(self, page: dict) -> List[ScanTable]: import uuid from dedoc.data_structures.cell_with_meta import CellWithMeta from dedoc.data_structures.concrete_annotations.bbox_annotation import BBoxAnnotation from dedoc.data_structures.line_metadata import LineMetadata - from dedoc.data_structures.table_metadata import TableMetadata - tables = [] - tables_on_image = [] + scan_tables = [] page_number = page["number"] page_width = int(page["width"]) page_height = int(page["height"]) @@ -149,7 +175,7 @@ def __get_tables(self, page: dict) -> Tuple[List[Table], List[ScanTable]]: cell_properties = table["cell_properties"] assert len(rows) == len(cell_properties) - result_cells = [] + cells = [] for num_row, row in enumerate(rows): assert len(row) == len(cell_properties[num_row]) @@ -161,6 +187,10 @@ def __get_tables(self, page: dict) -> Tuple[List[Table], List[ScanTable]]: for c in cell_blocks: cell_bbox = BBox(x_top_left=int(c["x_top_left"]), y_top_left=int(c["y_top_left"]), width=int(c["width"]), height=int(c["height"])) annotations.append(BBoxAnnotation(c["start"], c["end"], cell_bbox, page_width=page_width, page_height=page_height)) + """ + TODO: change to Cell class after tabby can return cell coordinates. Then set type Cell in class "ScanTable" + https://jira.intra.ispras.ru/browse/TLDR-851 + """ result_row.append(CellWithMeta( lines=[LineWithMeta(line=cell["text"], metadata=LineMetadata(page_id=page_number, line_id=0), annotations=annotations)], @@ -168,13 +198,11 @@ def __get_tables(self, page: dict) -> Tuple[List[Table], List[ScanTable]]: rowspan=cell_properties[num_row][num_col]["row_span"], invisible=bool(cell_properties[num_row][num_col]["invisible"]) )) - result_cells.append(result_row) + cells.append(result_row) - table_name = str(uuid.uuid4()) - tables.append(Table(cells=result_cells, metadata=TableMetadata(page_id=page_number, uid=table_name))) - tables_on_image.append(ScanTable(page_number=page_number, matrix_cells=None, bbox=table_bbox, name=table_name, order=order)) + scan_tables.append(ScanTable(page_number=page_number, matrix_cells=cells, bbox=table_bbox, name=str(uuid.uuid4()), order=order)) - return tables, tables_on_image + return scan_tables def __get_attached_images(self, page: dict, parameters: dict, path: str) -> List[PdfImageAttachment]: import os @@ -291,10 +319,20 @@ def __jar_path(self) -> str: import os return os.environ.get("TABBY_JAR", self.default_config["JAR_PATH"]) - def __run(self, path: str, tmp_dir: str, encoding: str = "utf-8", start_page: int = None, end_page: int = None) -> bytes: + def __run(self, + path: str, + tmp_dir: str, + encoding: str = "utf-8", + start_page: int = None, + end_page: int = None, + remove_frame: bool = False, + gost_json_path: str = "" + ) -> bytes: import subprocess args = ["java"] + ["-jar", self.__jar_path(), "-i", path, "-tmp", f"{tmp_dir}/"] + if remove_frame: + args += ["-rf", gost_json_path] if start_page is not None and end_page is not None: args += ["-sp", str(start_page), "-ep", str(end_page)] try: @@ -307,11 +345,18 @@ def __run(self, path: str, tmp_dir: str, encoding: str = "utf-8", start_page: in except subprocess.CalledProcessError as e: raise TabbyPdfError(e.stderr.decode(encoding)) - def __process_pdf(self, path: str, tmp_dir: str, start_page: int = None, end_page: int = None) -> dict: + def __process_pdf(self, + path: str, + tmp_dir: str, + start_page: int = None, + end_page: int = None, + gost_json_path: str = "", + remove_frame: bool = False) -> dict: import json import os - self.__run(path=path, start_page=start_page, end_page=end_page, tmp_dir=tmp_dir) + self.__run(path=path, start_page=start_page, end_page=end_page, tmp_dir=tmp_dir, remove_frame=remove_frame, gost_json_path=gost_json_path) + with open(os.path.join(tmp_dir, "data.json"), "r") as response: document = json.load(response) diff --git a/dedoc/readers/pdf_reader/pdf_txtlayer_reader/tabbypdf/jars/ispras_tbl_extr.jar b/dedoc/readers/pdf_reader/pdf_txtlayer_reader/tabbypdf/jars/ispras_tbl_extr.jar index 5dc90bf13c8ec8b932dfcb5f0bedc9e5b1f8cd70..2b3c916fa11d5468b0e1ad78ec2cd0d938c7d843 100644 GIT binary patch delta 96861 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 delta 94643 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 diff --git a/scripts/test_words_bbox_extraction.py b/scripts/test_words_bbox_extraction.py index 03e2afa1..a42407bd 100644 --- a/scripts/test_words_bbox_extraction.py +++ b/scripts/test_words_bbox_extraction.py @@ -177,7 +177,8 @@ def test_pdf_documents(self) -> None: def test_gost_frame_documents(self) -> None: filename_parameters_outputdir = [ ["tables/gost_multipage_table_2.pdf", dict(pdf_with_text_layer="true", need_gost_frame_analysis="true"), "gost_frame_true"], - ["tables/gost_multipage_table_2.pdf", dict(pdf_with_text_layer="false", need_gost_frame_analysis="true"), "gost_frame_false"] + ["tables/gost_multipage_table_2.pdf", dict(pdf_with_text_layer="false", need_gost_frame_analysis="true"), "gost_frame_false"], + ["tables/gost_multipage_table_2.pdf", dict(pdf_with_text_layer="tabby", need_gost_frame_analysis="true"), "gost_frame_tabby"] ] for file_name, parameters, outputdir in filename_parameters_outputdir: diff --git a/tests/api_tests/test_api_misc_multipage_table.py b/tests/api_tests/test_api_misc_multipage_table.py index 6a016bb7..5c3c0d2e 100644 --- a/tests/api_tests/test_api_misc_multipage_table.py +++ b/tests/api_tests/test_api_misc_multipage_table.py @@ -9,8 +9,8 @@ class TestMultipageTable(AbstractTestApiDocReader): def _get_abs_path(self, file_name: str) -> str: return os.path.join(self.data_directory_path, "tables", file_name) - def _get_tables(self, file_name: str) -> List[dict]: - result = self._send_request(file_name, {"pdf_with_text_layer": "false"}) + def _get_tables(self, file_name: str, pdf_with_text_layer: str) -> List[dict]: + result = self._send_request(file_name, {"pdf_with_text_layer": pdf_with_text_layer}) content = result["content"] self._test_table_refs(content=content) tables = content["tables"] @@ -20,49 +20,55 @@ def _get_tables(self, file_name: str) -> List[dict]: def test_api_ml_table_recognition_0(self) -> None: file_name = "example_with_table0.pdf" - tables = self._get_tables(file_name) + tables = self._get_tables(file_name, pdf_with_text_layer="false") self.assertEqual(len(tables), 1) def test_api_ml_table_recognition_3(self) -> None: file_name = "example_with_table9.pdf" - tables = self._get_tables(file_name) - self.assertEqual(len(tables), 1) + for pdf_param in ["false", "true", "tabby"]: + tables = self._get_tables(file_name, pdf_with_text_layer=pdf_param) + self.assertEqual(len(tables), 1) def test_api_ml_table_recognition_7(self) -> None: file_name = "example_table_with_90_orient_cells.pdf" - tables = self._get_tables(file_name) + tables = self._get_tables(file_name, pdf_with_text_layer="false") self.assertEqual(len(tables), 1) def test_api_ml_table_recognition_8(self) -> None: file_name = "example_with_table8.pdf" - tables = self._get_tables(file_name) + tables = self._get_tables(file_name, pdf_with_text_layer="false") self.assertEqual(len(tables), 1) def test_api_ml_table_recognition_synthetic_data_1(self) -> None: file_name = "example_mp_table_wo_repeate_header.pdf" - tables = self._get_tables(file_name) - self.assertEqual(len(tables), 1) + for pdf_param in ["false", "true", "tabby"]: + tables = self._get_tables(file_name, pdf_with_text_layer=pdf_param) + self.assertEqual(len(tables), 1) def test_api_ml_table_recognition_synthetic_data_3(self) -> None: file_name = "example_mp_table_with_repeate_header_2.pdf" - tables = self._get_tables(file_name) - self.assertEqual(len(tables), 1) - table = tables[0]["cells"] + for pdf_param in ["false", "true"]: + # for "tabby" doesn't work because need to unify the output of table in matrix form and set attribute cells, + # without this tables won't be merge. + tables = self._get_tables(file_name, pdf_with_text_layer=pdf_param) + + self.assertEqual(len(tables), 1) + table = tables[0]["cells"] - self.assertListEqual( - ["Заголовок\nБольшой", "Еще один большой заголовок", "Еще один большой заголовок", "Еще один большой заголовок", "Еще один большой заголовок"], - self._get_text_of_row(table[0]) - ) - self.assertListEqual(["Заголовок\nБольшой", "Заголовок поменьше 1", "Заголовок поменьше 1", "Заголовок поменьше 2", "Заголовок поменьше 2"], - self._get_text_of_row(table[1])) - self.assertListEqual(["Заголовок\nБольшой", "Заголовочек 1", "Заголовочек 2", "Заголовочек 3", "Заголовочек 4"], self._get_text_of_row(table[2])) - self.assertListEqual(["Данные 1", "Данные 1", "Данные 1", "Данные 1", "Данные 1"], self._get_text_of_row(table[3])) - self.assertListEqual(["Данные 2", "Данные 2", "Данные 2", "Данные 2", "Данные 2"], self._get_text_of_row(table[4])) - self.assertListEqual(["Данные 3", "Данные 3", "Данные 3", "Данные 3", "Данные 3"], self._get_text_of_row(table[5])) - self.assertListEqual(["Данные 4", "Данные 4", "Данные 4", "Данные 4", "Данные 4"], self._get_text_of_row(table[6])) - self.assertListEqual(["Данные 5", "Данные 5", "Данные 5", "Данные 5", "Данные 5"], self._get_text_of_row(table[7])) - self.assertListEqual(["Заголовок\nБольшой", "Заголовок поменьше 1", "Заголовок поменьше 1", "Заголовок поменьше 2", "Заголовок поменьше 2"], - self._get_text_of_row(table[8])) - self.assertListEqual(["Заголовок\nБольшой", "Заголовочек 1", "Заголовочек 2", "Заголовочек 3", "Заголовочек 4"], self._get_text_of_row(table[9])) - self.assertListEqual(["Данные 6", "Данные 6", "Данные 6", "Данные 6", "Данные 6"], self._get_text_of_row(table[10])) - self.assertListEqual(["Данные 7", "Данные 7", "Данные 7", "Данные 7", "Данные 7"], self._get_text_of_row(table[11])) + self.assertListEqual( + ["Заголовок\nБольшой", "Еще один большой заголовок", "Еще один большой заголовок", "Еще один большой заголовок", "Еще один большой заголовок"], + self._get_text_of_row(table[0]) + ) + self.assertListEqual(["Заголовок\nБольшой", "Заголовок поменьше 1", "Заголовок поменьше 1", "Заголовок поменьше 2", "Заголовок поменьше 2"], + self._get_text_of_row(table[1])) + self.assertListEqual(["Заголовок\nБольшой", "Заголовочек 1", "Заголовочек 2", "Заголовочек 3", "Заголовочек 4"], self._get_text_of_row(table[2])) + self.assertListEqual(["Данные 1", "Данные 1", "Данные 1", "Данные 1", "Данные 1"], self._get_text_of_row(table[3])) + self.assertListEqual(["Данные 2", "Данные 2", "Данные 2", "Данные 2", "Данные 2"], self._get_text_of_row(table[4])) + self.assertListEqual(["Данные 3", "Данные 3", "Данные 3", "Данные 3", "Данные 3"], self._get_text_of_row(table[5])) + self.assertListEqual(["Данные 4", "Данные 4", "Данные 4", "Данные 4", "Данные 4"], self._get_text_of_row(table[6])) + self.assertListEqual(["Данные 5", "Данные 5", "Данные 5", "Данные 5", "Данные 5"], self._get_text_of_row(table[7])) + self.assertListEqual(["Заголовок\nБольшой", "Заголовок поменьше 1", "Заголовок поменьше 1", "Заголовок поменьше 2", "Заголовок поменьше 2"], + self._get_text_of_row(table[8])) + self.assertListEqual(["Заголовок\nБольшой", "Заголовочек 1", "Заголовочек 2", "Заголовочек 3", "Заголовочек 4"], self._get_text_of_row(table[9])) + self.assertListEqual(["Данные 6", "Данные 6", "Данные 6", "Данные 6", "Данные 6"], self._get_text_of_row(table[10])) + self.assertListEqual(["Данные 7", "Данные 7", "Данные 7", "Данные 7", "Данные 7"], self._get_text_of_row(table[11])) diff --git a/tests/api_tests/test_api_module_table_recognizer.py b/tests/api_tests/test_api_module_table_recognizer.py index dbd3f10f..a73b4ee5 100644 --- a/tests/api_tests/test_api_module_table_recognizer.py +++ b/tests/api_tests/test_api_module_table_recognizer.py @@ -12,6 +12,12 @@ class TestRecognizedTable(AbstractTestApiDocReader): def _get_abs_path(self, file_name: str) -> str: return os.path.join(self.data_directory_path, "tables", file_name) + def _test_bbox_annotations(self, node: dict, target_dict: dict) -> None: + annotations = [annotation for annotation in node["annotations"] if annotation["name"] == "bounding box"] + annotations_dict = json.loads(annotations[0]["value"]) + for key in target_dict: + self.assertAlmostEqual(float(annotations_dict[key]), target_dict[key], None, None, delta=0.05) + def test_api_table_recognition_3(self) -> None: file_name = "example_with_table16.jpg" res = self._send_request(file_name) @@ -215,13 +221,7 @@ def test_detect_small_table(self) -> None: tables = result["content"]["tables"] self.assertEqual(2, len(tables)) - def _test_bbox_annotations(self, node: dict, target_dict: dict) -> None: - annotations = [annotation for annotation in node["annotations"] if annotation["name"] == "bounding box"] - annotations_dict = json.loads(annotations[0]["value"]) - for key in target_dict: - self.assertAlmostEqual(float(annotations_dict[key]), target_dict[key], None, None, delta=0.05) - - def test_multipage_gost_table(self) -> None: + def test_multipage_gost_table_image(self) -> None: file_name = "gost_multipage_table.pdf" result = self._send_request(file_name, data={"need_gost_frame_analysis": "True"}) # don't pass pdf_with_text_layer to check condition in PDFBaseReader self.assertTrue(len(result["content"]["tables"][0]["cells"]) > 35) @@ -252,53 +252,40 @@ def test_multipage_gost_table(self) -> None: def test_multipage_gost_table_with_text_layer(self) -> None: file_name = "gost_multipage_table_2.pdf" - result = self._send_request(file_name, data={"need_gost_frame_analysis": "True", "pdf_with_text_layer": "True"}) + for pdf_param in ["True", "tabby"]: + result = self._send_request(file_name, data={"need_gost_frame_analysis": "True", "pdf_with_text_layer": pdf_param}) + self.__check_content(result) + + def __check_content(self, result: dict) -> None: self.assertEqual(len(result["content"]["tables"][0]["cells"]), 14) - target_bbox_dict = { - "x_top_left": 0.12, - "y_top_left": 0.56, - "width": 0.01, - "height": 0.01, - "page_width": 595, - "page_height": 841 - } - self._test_bbox_annotations(result["content"]["structure"]["subparagraphs"][0]["subparagraphs"][0], target_bbox_dict) - self.assertTrue("Sample text 1" in result["content"]["structure"]["subparagraphs"][0]["subparagraphs"][0]["text"]) self.assertTrue("SAMPLE TEXT" in result["content"]["tables"][0]["cells"][0][0]["lines"][0]["text"]) - target_bbox_dict_1 = { - "x_top_left": 0.13, - "y_top_left": 0.61, - "width": 0.06, - "height": 0.007, - "page_width": 595, - "page_height": 841 - } - self._test_bbox_annotations(result["content"]["tables"][0]["cells"][0][0]["lines"][0], target_bbox_dict_1) self.assertTrue("2" in result["content"]["tables"][0]["cells"][-1][0]["lines"][0]["text"]) self.assertEqual(len(result["content"]["tables"]), 1) def test_multipage_gost_table_with_text_layer_and_pages_param(self) -> None: file_name = "gost_multipage_table_2.pdf" - result = self._send_request(file_name, data={"need_gost_frame_analysis": "True", "pdf_with_text_layer": "True", "pages": "2:"}) - self.assertEqual(len(result["content"]["tables"]), 1) - self.assertEqual(len(result["content"]["tables"][0]["cells"]), 5) - self.assertTrue("SAMPLE TEXT" in result["content"]["tables"][0]["cells"][0][0]["lines"][0]["text"]) - target_bbox_dict_1 = { - "x_top_left": 0.13, - "y_top_left": 0.07, - "width": 0.06, - "height": 0.007, - "page_width": 595, - "page_height": 841 - } - self._test_bbox_annotations(result["content"]["tables"][0]["cells"][0][0]["lines"][0], target_bbox_dict_1) - self.assertTrue("2" in result["content"]["tables"][0]["cells"][-1][0]["lines"][0]["text"]) - target_bbox_dict_2 = { - "x_top_left": 0.13, - "y_top_left": 0.15, - "width": 0.005, - "height": 0.007, - "page_width": 595, - "page_height": 841 - } - self._test_bbox_annotations(result["content"]["tables"][0]["cells"][-1][0]["lines"][0], target_bbox_dict_2) + + for pdf_param in ["True", "tabby"]: + result = self._send_request(file_name, data={"need_gost_frame_analysis": "True", "pdf_with_text_layer": pdf_param, "pages": "2:"}) + self.assertEqual(len(result["content"]["tables"]), 1) + self.assertEqual(len(result["content"]["tables"][0]["cells"]), 5) + self.assertTrue("SAMPLE TEXT" in result["content"]["tables"][0]["cells"][0][0]["lines"][0]["text"]) + target_bbox_dict_1 = { + "x_top_left": 0.13, + "y_top_left": 0.07, + "width": 0.06, + "height": 0.007, + "page_width": 595, + "page_height": 841 + } + self._test_bbox_annotations(result["content"]["tables"][0]["cells"][0][0]["lines"][0], target_bbox_dict_1) + self.assertTrue("2" in result["content"]["tables"][0]["cells"][-1][0]["lines"][0]["text"]) + target_bbox_dict_2 = { + "x_top_left": 0.13, + "y_top_left": 0.15, + "width": 0.005, + "height": 0.007, + "page_width": 595, + "page_height": 841 + } + self._test_bbox_annotations(result["content"]["tables"][0]["cells"][-1][0]["lines"][0], target_bbox_dict_2) diff --git a/tests/unit_tests/test_module_gost_frame_recognizer.py b/tests/unit_tests/test_module_gost_frame_recognizer.py index d3f35938..a2c33f09 100644 --- a/tests/unit_tests/test_module_gost_frame_recognizer.py +++ b/tests/unit_tests/test_module_gost_frame_recognizer.py @@ -6,10 +6,14 @@ import numpy as np import dedoc.utils.parameter_utils as param_utils +from dedoc.data_structures.unstructured_document import UnstructuredDocument +from dedoc.readers.pdf_reader.data_classes.line_with_location import LineWithLocation from dedoc.readers.pdf_reader.pdf_auto_reader.pdf_auto_reader import PdfAutoReader from dedoc.readers.pdf_reader.pdf_base_reader import ParametersForParseDoc from dedoc.readers.pdf_reader.pdf_image_reader.pdf_image_reader import PdfImageReader from dedoc.readers.pdf_reader.pdf_image_reader.table_recognizer.gost_frame_recognizer import GOSTFrameRecognizer +from dedoc.readers.pdf_reader.pdf_txtlayer_reader.pdf_tabby_reader import PdfTabbyReader +from dedoc.readers.pdf_reader.pdf_txtlayer_reader.pdf_txtlayer_reader import PdfTxtlayerReader from tests.test_utils import get_test_config @@ -19,6 +23,8 @@ class TestGOSTFrameRecognizer(unittest.TestCase): test_data_folder = os.path.abspath(os.path.join(os.path.dirname(__file__), "..", "data", "tables")) pdf_image_reader = PdfImageReader(config=get_test_config()) pdf_auto_reader = PdfAutoReader(config=get_test_config()) + pdf_txtlayer_reader = PdfTxtlayerReader(config=get_test_config()) + pdf_tabby_reader = PdfTabbyReader(config=get_test_config()) def _get_params_for_parse(self, parameters: Optional[dict], file_path: Optional[str]) -> ParametersForParseDoc: parameters = parameters if parameters else {} @@ -86,3 +92,28 @@ def test_pdf_auto_reader(self) -> None: self.assertEqual(result.tables[0].cells[0][2].get_text(), "Колонка 3") self.assertEqual(len(result.tables[0].cells), 22) self.assertTrue("Название таблицы (продолжение)" in result.lines[0].line) + + def test_pdf_txtlayer_reader(self) -> None: + file_path = os.path.join(self.test_data_folder, "gost_multipage_table_2.pdf") + result = self.pdf_txtlayer_reader.read(file_path=file_path, parameters={"need_gost_frame_analysis": "true"}) + self.__check_content(result) + line: LineWithLocation = result.lines[0] + self.assertEqual(line.line.strip(), "1. Sample text 1") + self.assertTrue(abs(line.location.bbox.x_top_left - 212) < 10) + self.assertTrue(abs(line.location.bbox.y_top_left - 1309) < 10) + + def test_pdf_tabby_reader(self) -> None: + file_path = os.path.join(self.test_data_folder, "gost_multipage_table_2.pdf") + result = self.pdf_tabby_reader.read(file_path=file_path, parameters={"need_gost_frame_analysis": "true"}) + self.__check_content(result) + line: LineWithLocation = result.lines[0] + self.assertEqual(line.line.strip(), "1. Sample text 1") + self.assertTrue(abs(line.location.bbox.x_top_left - 76) < 10) + self.assertTrue(abs(line.location.bbox.y_top_left - 476) < 10) + + def __check_content(self, result: UnstructuredDocument) -> None: + self.assertEqual(len(result.tables), 1) + self.assertEqual(result.tables[0].cells[0][0].get_text(), "SAMPLE TEXT") + self.assertTrue(len(result.tables[0].cells[0][0].lines[0].annotations) > 0) + self.assertEqual(result.tables[0].cells[1][0].get_text(), "1") + self.assertEqual(len(result.tables[0].cells), 14) From 9f0dcbe1a5f96934c089e7cf639af11e59799a65 Mon Sep 17 00:00:00 2001 From: Oksana Belyaeva Date: Tue, 19 Nov 2024 17:31:52 +0300 Subject: [PATCH 6/8] TLDR-853 added info about GOST frame processing into docs (#506) --- dedoc/api/web/index.html | 2 +- .../pdf_image_reader/pdf_image_reader.py | 4 ++ .../pdf_txtlayer_reader.py | 4 ++ .../code_examples/test_dir/example.docx | Bin 373839 -> 373839 bytes .../document_with_gost_frame.pdf | Bin 0 -> 199896 bytes .../page_with_gost_frame_1.png | Bin 0 -> 35967 bytes .../page_with_gost_frame_2.png | Bin 0 -> 29930 bytes .../gost_frame_data/result_gost_frame.png | Bin 0 -> 35958 bytes docs/source/conf.py | 1 + .../source/parameters/gost_frame_handling.rst | 66 ++++++++++++++++++ docs/source/parameters/pdf_handling.rst | 31 ++++---- 11 files changed, 94 insertions(+), 14 deletions(-) create mode 100644 docs/source/_static/gost_frame_data/document_with_gost_frame.pdf create mode 100644 docs/source/_static/gost_frame_data/page_with_gost_frame_1.png create mode 100644 docs/source/_static/gost_frame_data/page_with_gost_frame_2.png create mode 100644 docs/source/_static/gost_frame_data/result_gost_frame.png create mode 100644 docs/source/parameters/gost_frame_handling.rst diff --git a/dedoc/api/web/index.html b/dedoc/api/web/index.html index 4362832a..ede62117 100644 --- a/dedoc/api/web/index.html +++ b/dedoc/api/web/index.html @@ -122,7 +122,7 @@

Tables handling

PDF handling

-
pdf_with_text_layer, fast_textual_layer_detection, language, pages, is_one_column_document, document_orientation, need_header_footer_analysis, need_binarization +
pdf_with_text_layer, fast_textual_layer_detection, language, pages, is_one_column_document, document_orientation, need_header_footer_analysis, need_binarization, need_gost_frame_analysis

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

IvzAya-IKca$%z0_)56#UQ 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 S+l{XzRxQ`nh*95i^uGYS(PD)F literal 0 HcmV?d00001 diff --git a/docs/source/_static/gost_frame_data/page_with_gost_frame_2.png b/docs/source/_static/gost_frame_data/page_with_gost_frame_2.png new file mode 100644 index 0000000000000000000000000000000000000000..272fb5228ca3a122225e146641d7f2b8d3bc64c5 GIT binary patch literal 29930 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 CKfu=j literal 0 HcmV?d00001 diff --git a/docs/source/_static/gost_frame_data/result_gost_frame.png b/docs/source/_static/gost_frame_data/result_gost_frame.png new file mode 100644 index 0000000000000000000000000000000000000000..30611a31161819fd403ae310711e62c5239f6ac2 GIT binary patch literal 35958 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 literal 0 HcmV?d00001 diff --git a/docs/source/conf.py b/docs/source/conf.py index edd4500c..5ffa1b1a 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -38,6 +38,7 @@ ("py:class", "abc.ABC"), ("py:class", "pydantic.main.BaseModel"), ("py:class", "scipy.stats._multivariate.dirichlet_multinomial_gen.cov"), + ("py:class", "scipy.stats._multivariate.random_table_gen.rvs"), ("py:class", "pandas.core.series.Series"), ("py:class", "numpy.ndarray"), ("py:class", "pandas.core.frame.DataFrame"), diff --git a/docs/source/parameters/gost_frame_handling.rst b/docs/source/parameters/gost_frame_handling.rst new file mode 100644 index 00000000..7093b799 --- /dev/null +++ b/docs/source/parameters/gost_frame_handling.rst @@ -0,0 +1,66 @@ +.. _gost_frame_handling: + +GOST frame handling +==================== + +.. flat-table:: Parameters for GOST frame handling + :widths: 5 5 3 15 72 + :header-rows: 1 + :class: tight-table + + * - Parameter + - Possible values + - Default value + - Where can be used + - Description + + * - need_gost_frame_analysis + - True, False + - False + - * :meth:`dedoc.DedocManager.parse` + * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfTabbyReader.read`, :meth:`dedoc.readers.PdfTxtlayerReader.read`, :meth:`dedoc.readers.PdfImageReader.read` + * :meth:`dedoc.readers.ReaderComposition.read` + - This option is used to enable GOST (Russian government standard "ГОСТ Р 21.1101") frame recognition for PDF documents or images. + + +The content of each page of some technical documents is placed in special GOST frames. An example of GOST frames is shown in the example below (:ref:`example_gost_frame`). +Such frames contain meta-information and are not part of the text content of the document. Based on this, we have implemented the functionality for ignoring GOST frames in documents, which works for: + + * Copyable PDF documents (:class:`dedoc.readers.PdfTxtlayerReader` and :class:`dedoc.readers.PdfTabbyReader`); + * Non-copyable PDF documents and Images (:class:`dedoc.readers.PdfImageReader`). + +If parameter ``need_gost_frame_analysis=True``, the GOST frame itself is ignored and only the contents inside the frame are extracted. + +.. _example_gost_frame: + +Examples of GOST frame +---------------------- +For example, your send PDF-document with two pages :download:`PDF-document with two pages <../_static/gost_frame_data/document_with_gost_frame.pdf>`: + +.. image:: ../_static/gost_frame_data/page_with_gost_frame_1.png + :width: 30% +.. image:: ../_static/gost_frame_data/page_with_gost_frame_2.png + :width: 30% + +Parameter's usage +----------------- + +.. code-block:: python + + import requests + + data = { + "pdf_with_text_layer": "auto_tabby", + "need_gost_frame_analysis": "true", + "return_format": "html" + } + with open(filename, "rb") as file: + files = {"file": (filename, file)} + r = requests.post("http://localhost:1231/upload", files=files, data=data) + result = r.content.decode("utf-8") + +Request's result +---------------- + +.. image:: ../_static/gost_frame_data/result_gost_frame.png + :width: 50% diff --git a/docs/source/parameters/pdf_handling.rst b/docs/source/parameters/pdf_handling.rst index d8788089..20fabec9 100644 --- a/docs/source/parameters/pdf_handling.rst +++ b/docs/source/parameters/pdf_handling.rst @@ -62,7 +62,7 @@ PDF and images handling - rus, eng, rus+eng, fra, spa - rus+eng - * :meth:`dedoc.DedocManager.parse` - * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfBaseReader.read` + * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfImageReader.read` * :meth:`dedoc.readers.ReaderComposition.read` * :meth:`dedoc.structure_extractors.FintocStructureExtractor.extract` - Language of the document without a textual layer. The following values are available: @@ -77,7 +77,7 @@ PDF and images handling - :, start:, :end, start:end - : - * :meth:`dedoc.DedocManager.parse` - * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfBaseReader.read`, :meth:`dedoc.readers.PdfTabbyReader.read` + * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfImageReader.read`, :meth:`dedoc.readers.PdfTxtlayerReader.read`, :meth:`dedoc.readers.PdfTabbyReader.read` * :meth:`dedoc.readers.ReaderComposition.read` - If you need to read a part of the PDF document, you can use page slice to define the reading range. If the range is set like ``start_page:end_page``, document will be processed from ``start_page`` to ``end_page`` @@ -96,7 +96,7 @@ PDF and images handling - true, false, auto - auto - * :meth:`dedoc.DedocManager.parse` - * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfBaseReader.read` + * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfImageReader.read` * :meth:`dedoc.readers.ReaderComposition.read` - This option is used to set the number of columns if the PDF document is without a textual layer in case it's known beforehand. The following values are available: @@ -111,7 +111,7 @@ PDF and images handling - auto, no_change - auto - * :meth:`dedoc.DedocManager.parse` - * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfBaseReader.read` + * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfImageReader.read` * :meth:`dedoc.readers.ReaderComposition.read` - This option is used to control document orientation analysis for PDF documents without a textual layer. The following values are available: @@ -125,7 +125,7 @@ PDF and images handling - True, False - False - * :meth:`dedoc.DedocManager.parse` - * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfBaseReader.read` + * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfImageReader.read`, :meth:`dedoc.readers.PdfTxtlayerReader.read` * :meth:`dedoc.readers.ReaderComposition.read` - This option is used to **remove** headers and footers of PDF documents from the output result. If ``need_header_footer_analysis=False``, header and footer lines will present in the output as well as all other document lines. @@ -134,7 +134,7 @@ PDF and images handling - True, False - False - * :meth:`dedoc.DedocManager.parse` - * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfBaseReader.read` + * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfImageReader.read` * :meth:`dedoc.readers.ReaderComposition.read` - This option is used to clean background (binarize) for pages of PDF documents without a textual layer. If the document's background is heterogeneous, this option may help to improve the result of document text recognition. @@ -144,7 +144,7 @@ PDF and images handling - True, False - True - * :meth:`dedoc.DedocManager.parse` - * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfBaseReader.read` + * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfTxtlayerReader.read`, :meth:`dedoc.readers.PdfImageReader.read` * :meth:`dedoc.readers.ReaderComposition.read` - This option is used to enable table recognition for PDF documents or images. The table recognition method is used in :class:`dedoc.readers.PdfImageReader` and :class:`dedoc.readers.PdfTxtlayerReader`. @@ -155,18 +155,17 @@ PDF and images handling - True, False - False - * :meth:`dedoc.DedocManager.parse` - * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfBaseReader.read` + * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfTabbyReader.read`, :meth:`dedoc.readers.PdfTxtlayerReader.read`, :meth:`dedoc.readers.PdfImageReader.read` * :meth:`dedoc.readers.ReaderComposition.read` - This option is used to enable GOST (Russian government standard) frame recognition for PDF documents or images. - The GOST frame recognizer is used in :meth:`dedoc.readers.PdfBaseReader.read`. Its main function is to recognize and - ignore the GOST frame on the document. It allows :class:`dedoc.readers.PdfImageReader` and :class:`dedoc.readers.PdfTxtlayerReader` - to properly process the content of the document containing GOST frame. + It allows :class:`dedoc.readers.PdfImageReader`, :class:`dedoc.readers.PdfTxtlayerReader` and :class:`dedoc.readers.PdfTabbyReader` + to properly process the content of the document containing GOST frame, see :ref:`gost_frame_handling` for more details. * - orient_analysis_cells - True, False - False - * :meth:`dedoc.DedocManager.parse` - * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfBaseReader.read` + * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfTxtlayerReader.read`, :meth:`dedoc.readers.PdfImageReader.read` * :meth:`dedoc.readers.ReaderComposition.read` - This option is used for a table recognition for PDF documents or images. It is ignored when ``need_pdf_table_analysis=False``. @@ -177,7 +176,7 @@ PDF and images handling - 90, 270 - 90 - * :meth:`dedoc.DedocManager.parse` - * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfBaseReader.read` + * :meth:`dedoc.readers.PdfAutoReader.read`, :meth:`dedoc.readers.PdfTxtlayerReader.read`, :meth:`dedoc.readers.PdfImageReader.read` * :meth:`dedoc.readers.ReaderComposition.read` - This option is used for a table recognition for PDF documents or images. It is ignored when ``need_pdf_table_analysis=False`` or ``orient_analysis_cells=False``. @@ -185,3 +184,9 @@ PDF and images handling * **270** -- cells are rotated 90 degrees clockwise; * **90** -- cells are rotated 90 degrees counterclockwise (or 270 clockwise). + + +.. toctree:: + :maxdepth: 1 + + gost_frame_handling \ No newline at end of file From e0ca3bb806990b1e8ab21c80ecff4f5ace991e6f Mon Sep 17 00:00:00 2001 From: Oksana Belyaeva Date: Tue, 19 Nov 2024 18:26:49 +0300 Subject: [PATCH 7/8] new version 2.3.1 (#507) --- VERSION | 2 +- docs/source/changelog.rst | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/VERSION b/VERSION index c0943d3e..a6254504 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -2.3 \ No newline at end of file +2.3.1 \ No newline at end of file diff --git a/docs/source/changelog.rst b/docs/source/changelog.rst index ec38c249..3ecf0ada 100644 --- a/docs/source/changelog.rst +++ b/docs/source/changelog.rst @@ -1,6 +1,16 @@ Changelog ========= +v2.3.1 (2024-11-15) +------------------- +Release note: `v2.3.1 `_ + +* Fix bug with bold lines in `DocxReader` (see `issue 479 `_) +* Upgraded requirements.txt (beautifulsoup4 to 4.12.3 version) +* Added support for external grobid (added support parameter "Authorization") +* Added GOST (Russian government standard) frame recognition in `PdfTabbyReader` (`need_gost_frame_analysis` parameter) +* Update documentation (added GOST frame recognition) + v2.3 (2024-09-19) ----------------- Release note: `v2.3 `_ From 29c498854738be8f42d132ffd8b33853c88ffaf0 Mon Sep 17 00:00:00 2001 From: sunveil Date: Wed, 20 Nov 2024 15:29:49 +0800 Subject: [PATCH 8/8] Add tabby cell bbox information --- .../tabbypdf/jars/ispras_tbl_extr.jar | Bin 164506 -> 164553 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/dedoc/readers/pdf_reader/pdf_txtlayer_reader/tabbypdf/jars/ispras_tbl_extr.jar b/dedoc/readers/pdf_reader/pdf_txtlayer_reader/tabbypdf/jars/ispras_tbl_extr.jar index 2b3c916fa11d5468b0e1ad78ec2cd0d938c7d843..8a737c79cc911778c955682ca553cd68e68059a0 100644 GIT binary patch delta 10750 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