{"id":13542940,"url":"https://github.com/microsoft/table-transformer","last_synced_at":"2025-05-14T16:12:26.588Z","repository":{"id":37382340,"uuid":"368293480","full_name":"microsoft/table-transformer","owner":"microsoft","description":"Table Transformer (TATR) is a deep learning model for extracting tables from unstructured documents (PDFs and images). This is also the official repository for the PubTables-1M dataset and GriTS evaluation metric.","archived":false,"fork":false,"pushed_at":"2024-06-24T13:41:20.000Z","size":333,"stargazers_count":2546,"open_issues_count":102,"forks_count":278,"subscribers_count":38,"default_branch":"main","last_synced_at":"2025-04-02T09:26:07.607Z","etag":null,"topics":["table-detection","table-extraction","table-functional-analysis","table-structure-recognition"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/microsoft.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":"SUPPORT.md","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-05-17T19:01:34.000Z","updated_at":"2025-04-01T17:27:20.000Z","dependencies_parsed_at":"2024-09-20T07:01:17.799Z","dependency_job_id":"b8def702-ef77-463c-ba2a-153c5dc85dc8","html_url":"https://github.com/microsoft/table-transformer","commit_stats":{"total_commits":164,"total_committers":4,"mean_commits":41.0,"dds":"0.44512195121951215","last_synced_commit":"16d124f616109746b7785f03085100f1f6247575"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Ftable-transformer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Ftable-transformer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Ftable-transformer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Ftable-transformer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/microsoft","download_url":"https://codeload.github.com/microsoft/table-transformer/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248027402,"owners_count":21035594,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["table-detection","table-extraction","table-functional-analysis","table-structure-recognition"],"created_at":"2024-08-01T11:00:20.117Z","updated_at":"2025-04-09T11:03:29.799Z","avatar_url":"https://github.com/microsoft.png","language":"Python","funding_links":[],"categories":["Table detection","Influential Papers","Python","2. Datasets"],"sub_categories":["Form Segmentation","CVPR 2022","2.1 Introduction"],"readme":"# Table Transformer (TATR)\n\nA deep learning model based on object detection for extracting tables from PDFs and images.\n\nFirst proposed in [\"PubTables-1M: Towards comprehensive table extraction from unstructured documents\"](https://openaccess.thecvf.com/content/CVPR2022/html/Smock_PubTables-1M_Towards_Comprehensive_Table_Extraction_From_Unstructured_Documents_CVPR_2022_paper.html).\n\n![table_extraction_v2](https://user-images.githubusercontent.com/10793386/139559159-cd23c972-8731-48ed-91df-f3f27e9f4d79.jpg)\n\nThis repository also contains the official code for these papers:\n- [\"GriTS: Grid table similarity metric for table structure recognition\"](https://arxiv.org/abs/2203.12555)\n- [\"Aligning benchmark datasets for table structure recognition\"](https://arxiv.org/abs/2303.00716)\n\nNote: If you are looking to use Table Transformer to extract your own tables, here are some helpful things to know:\n- TATR can be trained to work well across many document domains and everything needed to train your own model is included here. But at the moment pre-trained model weights are only available for TATR trained on the PubTables-1M dataset. (See the additional documentation for how to train your own multi-domain model.)\n- TATR is an object detection model that recognizes tables from image input. The inference code built on TATR needs text extraction (from OCR or directly from PDF) as a separate input in order to include text in its HTML or CSV output.\n\nAdditional information about this project for both users and researchers, including data, training, evaluation, and inference code is provided below.\n\n## News\n`08/22/2023`: We have released 3 new pre-trained models for TATR-v1.1 (trained on 1. PubTables-1M, 2. FinTabNet.c, and 3. both datasets combined) according to the details in [our paper](https://arxiv.org/abs/2303.00716).\\\n`04/19/2023`: Our latest papers ([link](https://arxiv.org/abs/2203.12555) and [link](https://arxiv.org/abs/2303.00716)) have been accepted at [ICDAR 2023](https://icdar2023.org/).\\\n`03/09/2023`: We have added more image cropping to the official training script (like we do in our most recent paper) and updated the code and environment.yml to use Python 3.10.9, PyTorch 1.13.1, and Torchvision 0.14.1, among others.\\\n`03/07/2023`: We have released a new simple [inference pipeline](src/inference.py) for TATR. Now you can easily detect and recognize tables from images and convert them to HTML or CSV.\\\n`03/07/2023`: We have released a [collection of scripts](scripts/) to create training data for TATR and to canonicalize pre-existing datasets, such as FinTabNet and SciTSR.\\\n`03/01/2023`: New paper \"Aligning benchmark datasets for table structure recognition\" is now available on [arXiv](https://arxiv.org/abs/2303.00716).\\\n`11/25/2022`: We have made the full PubTables-1M dataset alternatively available for download from [Hugging Face](https://huggingface.co/datasets/bsmock/pubtables-1m).\\\n`05/05/2022`: We have released the pre-trained weights for the table structure recognition model trained on PubTables-1M.\\\n`03/23/2022`: Our paper \"GriTS: Grid table similarity metric for table structure recognition\" is now available on [arXiv](https://arxiv.org/abs/2203.12555)\\\n`03/04/2022`: We have released the pre-trained weights for the table detection model trained on PubTables-1M.\\\n`03/03/2022`: \"PubTables-1M: Towards comprehensive table extraction from unstructured documents\" has been accepted at [CVPR 2022](https://cvpr2022.thecvf.com/).\\\n`11/21/2021`: Our updated paper \"PubTables-1M: Towards comprehensive table extraction from unstructured documents\" is available on [arXiv](https://arxiv.org/pdf/2110.00061.pdf).\\\n`10/21/2021`: The full PubTables-1M dataset has been officially released on [Microsoft Research Open Data](https://msropendata.com/datasets/505fcbe3-1383-42b1-913a-f651b8b712d3).\\\n`06/08/2021`: Initial version of the Table Transformer (TATR) project is released.\n\n# PubTables-1M\n\nThe goal of PubTables-1M is to create a large, detailed, high-quality dataset for training and evaluating a wide variety of models for the tasks of **table detection**, **table structure recognition**, and **functional analysis**.\n\nIt contains:\n- 575,305 annotated document pages containing tables for table detection.\n- 947,642 fully annotated tables including text content and complete location (bounding box) information for table structure recognition and functional analysis.\n- Full bounding boxes in both image and PDF coordinates for all table rows, columns, and cells (including blank cells), as well as other annotated structures such as column headers and projected row headers.\n- Rendered images of all tables and pages.\n- Bounding boxes and text for all words appearing in each table and page image.\n- Additional cell properties not used in the current model training.\n\nAdditionally, cells in the headers are *canonicalized* and we implement multiple *quality control* steps to ensure the annotations are as free of noise as possible. For more details, please see [our paper](https://arxiv.org/pdf/2110.00061.pdf).\n\n## Pre-trained Model Weights\nWe provide different pre-trained models for table detection and table structure recognition.\n\n\u003cb\u003eTable Detection:\u003c/b\u003e\n\u003ctable\u003e\n  \u003cthead\u003e\n    \u003ctr style=\"text-align: right;\"\u003e\n      \u003cth\u003eModel\u003c/th\u003e\n      \u003cth\u003eTraining Data\u003c/th\u003e\n      \u003cth\u003eModel Card\u003c/th\u003e\n      \u003cth\u003eFile\u003c/th\u003e\n      \u003cth\u003eSize\u003c/th\u003e\n    \u003c/tr\u003e\n  \u003c/thead\u003e\n  \u003ctbody\u003e\n    \u003ctr style=\"text-align: right;\"\u003e\n      \u003ctd\u003eDETR R18\u003c/td\u003e\n      \u003ctd\u003ePubTables-1M\u003c/td\u003e\n      \u003ctd\u003e\u003ca href=\"https://huggingface.co/bsmock/tatr-pubtables1m-v1.0\"\u003eModel Card\u003c/a\u003e\u003c/td\u003e\n      \u003ctd\u003e\u003ca href=\"https://huggingface.co/bsmock/tatr-pubtables1m-v1.0/resolve/main/pubtables1m_detection_detr_r18.pth\"\u003eWeights\u003c/a\u003e\u003c/td\u003e\n      \u003ctd\u003e110 MB\u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/tbody\u003e\n\u003c/table\u003e\n\n\u003cb\u003eTable Structure Recognition:\u003c/b\u003e\n\u003ctable\u003e\n  \u003cthead\u003e\n    \u003ctr style=\"text-align: left;\"\u003e\n      \u003cth\u003eModel\u003c/th\u003e\n      \u003cth\u003eTraining Data\u003c/th\u003e\n      \u003cth\u003eModel Card\u003c/th\u003e\n      \u003cth\u003eFile\u003c/th\u003e\n      \u003cth\u003eSize\u003c/th\u003e\n    \u003c/tr\u003e\n  \u003c/thead\u003e\n  \u003ctbody\u003e\n    \u003ctr style=\"text-align: left;\"\u003e\n      \u003ctd\u003eTATR-v1.0\u003c/td\u003e\n      \u003ctd\u003ePubTables-1M\u003c/td\u003e\n      \u003ctd\u003e\u003ca href=\"https://huggingface.co/bsmock/tatr-pubtables1m-v1.0\"\u003eModel Card\u003c/a\u003e\u003c/td\u003e\n      \u003ctd\u003e\u003ca href=\"https://huggingface.co/bsmock/tatr-pubtables1m-v1.0/resolve/main/pubtables1m_structure_detr_r18.pth\"\u003eWeights\u003c/a\u003e\u003c/td\u003e\n      \u003ctd\u003e110 MB\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr style=\"text-align: left;\"\u003e\n      \u003ctd\u003eTATR-v1.1-Pub\u003c/td\u003e\n      \u003ctd\u003ePubTables-1M\u003c/td\u003e\n      \u003ctd\u003e\u003ca href=\"https://huggingface.co/bsmock/TATR-v1.1-Pub\"\u003eModel Card\u003c/a\u003e\u003c/td\u003e\n      \u003ctd\u003e\u003ca href=\"https://huggingface.co/bsmock/TATR-v1.1-Pub/resolve/main/TATR-v1.1-Pub-msft.pth\"\u003eWeights\u003c/a\u003e\u003c/td\u003e\n      \u003ctd\u003e110 MB\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr style=\"text-align: left;\"\u003e\n      \u003ctd\u003eTATR-v1.1-Fin\u003c/td\u003e\n      \u003ctd\u003eFinTabNet.c\u003c/td\u003e\n      \u003ctd\u003e\u003ca href=\"https://huggingface.co/bsmock/TATR-v1.1-Fin\"\u003eModel Card\u003c/a\u003e\u003c/td\u003e\n      \u003ctd\u003e\u003ca href=\"https://huggingface.co/bsmock/TATR-v1.1-Fin/resolve/main/TATR-v1.1-Fin-msft.pth\"\u003eWeights\u003c/a\u003e\u003c/td\u003e\n      \u003ctd\u003e110 MB\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr style=\"text-align: left;\"\u003e\n      \u003ctd\u003eTATR-v1.1-All\u003c/td\u003e\n      \u003ctd\u003ePubTables-1M + FinTabNet.c\u003c/td\u003e\n      \u003ctd\u003e\u003ca href=\"https://huggingface.co/bsmock/TATR-v1.1-All\"\u003eModel Card\u003c/a\u003e\u003c/td\u003e\n      \u003ctd\u003e\u003ca href=\"https://huggingface.co/bsmock/TATR-v1.1-All/resolve/main/TATR-v1.1-All-msft.pth\"\u003eWeights\u003c/a\u003e\u003c/td\u003e\n      \u003ctd\u003e110 MB\u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/tbody\u003e\n\u003c/table\u003e\n\n## Evaluation Metrics\n\n\u003cb\u003eTable Detection:\u003c/b\u003e\n\u003ctable\u003e\n  \u003cthead\u003e\n    \u003ctr style=\"text-align: right;\"\u003e\n      \u003cth\u003eModel\u003c/th\u003e\n      \u003cth\u003eTest Data\u003c/th\u003e\n      \u003cth\u003eAP50\u003c/th\u003e\n      \u003cth\u003eAP75\u003c/th\u003e\n      \u003cth\u003eAP\u003c/th\u003e\n      \u003cth\u003eAR\u003c/th\u003e\n    \u003c/tr\u003e\n  \u003c/thead\u003e\n  \u003ctbody\u003e\n    \u003ctr style=\"text-align: right;\"\u003e\n      \u003ctd\u003eDETR R18\u003c/td\u003e\n      \u003ctd\u003ePubTables-1M\u003c/td\u003e\n      \u003ctd\u003e0.995\u003c/td\u003e\n      \u003ctd\u003e0.989\u003c/td\u003e\n      \u003ctd\u003e0.970\u003c/td\u003e\n      \u003ctd\u003e0.985\u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/tbody\u003e\n\u003c/table\u003e\n\n\u003cb\u003eTable Structure Recognition:\u003c/b\u003e\n\u003ctable\u003e\n  \u003cthead\u003e\n    \u003ctr style=\"text-align: right;\"\u003e\n      \u003cth\u003eModel\u003c/th\u003e\n      \u003cth\u003eTest Data\u003c/th\u003e\n      \u003cth\u003eAP50\u003c/th\u003e\n      \u003cth\u003eAP75\u003c/th\u003e\n      \u003cth\u003eAP\u003c/th\u003e\n      \u003cth\u003eAR\u003c/th\u003e\n      \u003cth\u003eGriTS\u003csub\u003eTop\u003c/sub\u003e\u003c/th\u003e\n      \u003cth\u003eGriTS\u003csub\u003eCon\u003c/sub\u003e\u003c/th\u003e\n      \u003cth\u003eGriTS\u003csub\u003eLoc\u003c/sub\u003e\u003c/th\u003e\n      \u003cth\u003eAcc\u003csub\u003eCon\u003c/sub\u003e\u003c/th\u003e\n    \u003c/tr\u003e\n  \u003c/thead\u003e\n  \u003ctbody\u003e\n    \u003ctr style=\"text-align: right;\"\u003e\n      \u003ctd\u003eTATR-v1.0\u003c/td\u003e\n      \u003ctd\u003ePubTables-1M\u003c/td\u003e\n      \u003ctd\u003e0.970\u003c/td\u003e\n      \u003ctd\u003e0.941\u003c/td\u003e\n      \u003ctd\u003e0.902\u003c/td\u003e\n      \u003ctd\u003e0.935\u003c/td\u003e\n      \u003ctd\u003e0.9849\u003c/td\u003e\n      \u003ctd\u003e0.9850\u003c/td\u003e\n      \u003ctd\u003e0.9786\u003c/td\u003e\n      \u003ctd\u003e0.8243\u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/tbody\u003e\n\u003c/table\u003e\n\n## Training and Evaluation Data\n[PubTables-1M](https://msropendata.com/datasets/505fcbe3-1383-42b1-913a-f651b8b712d3) is available for download from [Microsoft Research Open Data](https://msropendata.com/).\n\nWe have also uploaded [the full set of archives](https://huggingface.co/datasets/bsmock/pubtables-1m) to Hugging Face.\n\nThe dataset on Microsoft Research Open Data comes in 5 tar.gz files:\n- PubTables-1M-Image_Page_Detection_PASCAL_VOC.tar.gz: Training and evaluation data for the detection model\n  - ```/images```: 575,305 JPG files; one file for each page image\n  - ```/train```: 460,589 XML files containing bounding boxes in PASCAL VOC format\n  - ```/test```: 57,125 XML files containing bounding boxes in PASCAL VOC format\n  - ```/val```: 57,591 XML files containing bounding boxes in PASCAL VOC format\n- PubTables-1M-Image_Page_Words_JSON.tar.gz: Bounding boxes and text content for all of the words in each page image\n  - One JSON file per page image (plus some extra unused files)\n- PubTables-1M-Image_Table_Structure_PASCAL_VOC.tar.gz: Training and evaluation data for the structure (and functional analysis) model\n  - ```/images```: 947,642 JPG files; one file for each page image\n  - ```/train```: 758,849 XML files containing bounding boxes in PASCAL VOC format\n  - ```/test```: 93,834 XML files containing bounding boxes in PASCAL VOC format\n  - ```/val```: 94,959 XML files containing bounding boxes in PASCAL VOC format\n- PubTables-1M-Image_Table_Words_JSON.tar.gz: Bounding boxes and text content for all of the words in each cropped table image\n  - One JSON file per cropped table image (plus some extra unused files)\n- PubTables-1M-PDF_Annotations_JSON.tar.gz: Detailed annotations for all of the tables appearing in the source PubMed PDFs. All annotations are in PDF coordinates.\n  - 401,733 JSON files; one file per source PDF\n\nTo download from the command line:\n1. Visit the [dataset home page](https://msropendata.com/datasets/505fcbe3-1383-42b1-913a-f651b8b712d3) with a web browser and click Download in the top left corner. This will create a link to download the dataset from Azure with a unique access token for you that looks like `https://msropendataset01.blob.core.windows.net/pubtables1m?[SAS_TOKEN_HERE]`.\n2. You can then use the command line tool [azcopy](https://docs.microsoft.com/en-us/azure/storage/common/storage-use-azcopy-v10) to download all of the files with the following command:\n```\nazcopy copy \"https://msropendataset01.blob.core.windows.net/pubtables1m?[SAS_TOKEN_HERE]\" \"/path/to/your/download/folder/\" --recursive\n```\n\nThen unzip each of the archives from the command line using:\n```\ntar -xzvf yourfile.tar.gz\n```\n\n## Code Installation\nCreate a conda environment from the yml file and activate it as follows\n```\nconda env create -f environment.yml\nconda activate tables-detr\n```\n\n## Model Training\nThe code trains models for 2 different sets of table extraction tasks:\n\n1. Table Detection\n2. Table Structure Recognition + Functional Analysis\n\nFor a detailed description of these tasks and the models, please refer to the paper.\n\nTo train, you need to ```cd``` to the ```src``` directory and specify: 1. the path to the dataset, 2. the task (detection or structure), and 3. the path to the config file, which contains the hyperparameters for the architecture and training.\n\nTo train the detection model:\n```\npython main.py --data_type detection --config_file detection_config.json --data_root_dir /path/to/detection_data\n```\n\nTo train the structure recognition model:\n```\npython main.py --data_type structure --config_file structure_config.json --data_root_dir /path/to/structure_data\n```\n\n##  Evaluation\nThe evaluation code computes standard object detection metrics (AP, AP50, etc.) for both the detection model and the structure model.\nWhen running evaluation for the structure model it also computes grid table similarity (GriTS) metrics for table structure recognition.\nGriTS is a measure of table cell correctness and is defined as the average correctness of each cell averaged over all tables.\nGriTS can measure the correctness of predicted cells based on:  1. cell topology alone, 2. cell topology and the reported bounding box location of each cell, or 3. cell topology and the reported text content of each cell.\nFor more details on GriTS, please see our papers.\n\nTo compute object detection metrics for the detection model:\n\n```\npython main.py --mode eval --data_type detection --config_file detection_config.json --data_root_dir /path/to/pascal_voc_detection_data --model_load_path /path/to/detection_model  \n```\n\nTo compute object detection and GriTS metrics for the structure recognition model:\n\n```\npython main.py --mode eval --data_type structure --config_file structure_config.json --data_root_dir /path/to/pascal_voc_structure_data --model_load_path /path/to/structure_model --table_words_dir /path/to/json_table_words_data\n```  \n\nOptionally you can add flags for things like controlling parallelization, saving detailed metrics, and saving visualizations:\\\n```--device cpu```: Change the default device from cuda to cpu.\\\n```--batch_size 4```: Control the batch size to use during the forward pass of the model.\\\n```--eval_pool_size 4```: Control the worker pool size for CPU parallelization during GriTS metric computation.\\\n```--eval_step 2```: Control the number of batches of processed input data to accumulate before passing all samples to the parallelized worker pool for GriTS metric computation.\\\n```--debug```: Create and save visualizations of the model inference. For each input image \"PMC1234567_table_0.jpg\", this will save two visualizations: \"PMC1234567_table_0_bboxes.jpg\" containing the bounding boxes output by the model, and \"PMC1234567_table_0_cells.jpg\" containing the final table cell bounding boxes after post-processing. By default these are saved to a new folder \"debug\" in the current directory.\\\n``` --debug_save_dir /path/to/folder```: Specify the folder to save visualizations to.\\\n```--test_max_size 500```: Run evaluation on a randomly sampled subset of the data. Useful for quick verifications and checks.\n\n## Fine-tuning and Other Model Training Scenarios\nIf model training is interrupted, it can be easily resumed by using the flag ```--model_load_path /path/to/model.pth``` and specifying the path to the saved dictionary file that contains the saved optimizer state.\n\nIf you want to restart training by fine-tuning a saved checkpoint, such as ```model_20.pth```, use the flag ```--model_load_path /path/to/model_20.pth``` and the flag ```--load_weights_only``` to indicate that the previous optimizer state is not needed for resuming training.\n\nWhether fine-tuning or training a new model from scratch, you can optionally create a new config file with different training parameters than the default ones we used. Specify the new config file using: ```--config_file /path/to/new_structure_config.json```. Creating a new config file is useful, for example, if you want to use a different learning rate ```lr``` during fine-tuning.\n\nAlternatively, many of the arguments in the config file can be specified as command line arguments using their associated flags. Any argument specified as a command line argument overrides the value of the argument in the config file.\n\n## Citing\nOur work can be cited using:\n```\n@software{smock2021tabletransformer,\n  author = {Smock, Brandon and Pesala, Rohith},\n  month = {06},\n  title = {{Table Transformer}},\n  url = {https://github.com/microsoft/table-transformer},\n  version = {1.0.0},\n  year = {2021}\n}\n```\n```\n@inproceedings{smock2022pubtables,\n  title={Pub{T}ables-1{M}: Towards comprehensive table extraction from unstructured documents},\n  author={Smock, Brandon and Pesala, Rohith and Abraham, Robin},\n  booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},\n  pages={4634-4642},\n  year={2022},\n  month={June}\n}\n```\n```\n@inproceedings{smock2023grits,\n  title={Gri{TS}: Grid table similarity metric for table structure recognition},\n  author={Smock, Brandon and Pesala, Rohith and Abraham, Robin},\n  booktitle={International Conference on Document Analysis and Recognition},\n  pages={535--549},\n  year={2023},\n  organization={Springer}\n}\n```\n```\n@article{smock2023aligning,\n  title={Aligning benchmark datasets for table structure recognition},\n  author={Smock, Brandon and Pesala, Rohith and Abraham, Robin},\n  booktitle={International Conference on Document Analysis and Recognition},\n  pages={371--386},\n  year={2023},\n  organization={Springer}\n}\n```\n\n## Contributing\n\nThis project welcomes contributions and suggestions.  Most contributions require you to agree to a\nContributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us\nthe rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.\n\nWhen you submit a pull request, a CLA bot will automatically determine whether you need to provide\na CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions\nprovided by the bot. You will only need to do this once across all repos using our CLA.\n\nThis project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).\nFor more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or\ncontact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.\n\n## Trademarks\n\nThis project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft \ntrademarks or logos is subject to and must follow \n[Microsoft's Trademark \u0026 Brand Guidelines](https://www.microsoft.com/en-us/legal/intellectualproperty/trademarks/usage/general).\nUse of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship.\nAny use of third-party trademarks or logos are subject to those third-party's policies.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicrosoft%2Ftable-transformer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmicrosoft%2Ftable-transformer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicrosoft%2Ftable-transformer/lists"}