Instructions to use zeromodels/table-transformer-structure-recognition-v1.1-pub with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- ZeroModels
How to use zeromodels/table-transformer-structure-recognition-v1.1-pub with ZeroModels:
# No code snippets available yet for this library. # To use this model, check the repository files and the library's documentation. # Want to help? PRs adding snippets are welcome at: # https://github.com/huggingface/huggingface.js
- Keras
How to use zeromodels/table-transformer-structure-recognition-v1.1-pub with Keras:
# Available backend options are: "jax", "torch", "tensorflow". import os os.environ["KERAS_BACKEND"] = "jax" import keras model = keras.saving.load_model("hf://zeromodels/table-transformer-structure-recognition-v1.1-pub") - Notebooks
- Google Colab
- Kaggle
| pipeline_tag: object-detection | |
| license: apache-2.0 | |
| base_model: microsoft/table-transformer-structure-recognition-v1.1-pub | |
| library_name: zeromodels | |
| tags: | |
| - keras | |
| - zeromodels | |
| - table-transformer | |
| - detr | |
| - object-detection | |
| - arxiv:2110.00061 | |
| - pytorch | |
| - jax | |
| - tf | |
| ## ***See [our collection](https://huggingface.co/collections/zeromodels/table-transformer-6a928f000a88c73a41f9411e) for all versions of Table Transformer.*** | |
| # Run Table Transformer with Keras 3: JAX, PyTorch, or TensorFlow | |
| [](https://github.com/IMvision12/ZeroModels) [](https://imvision12.github.io/ZeroModels/table_transformer/) [](https://huggingface.co/collections/zeromodels/table-transformer-6a928f000a88c73a41f9411e) | |
| # zeromodels/table-transformer-structure-recognition-v1.1-pub | |
| Paper: [PubTables-1M: Towards comprehensive table extraction from unstructured documents (arXiv:2110.00061)](https://arxiv.org/abs/2110.00061) · [HF Papers](https://huggingface.co/papers/2110.00061) | |
| Table Transformer (TATR) applies the DETR detection recipe to tables. A ResNet-18 backbone produces a feature map, a transformer encoder-decoder attends over it with a fixed set of learned object queries, and each query emits one class and one box, with no anchors and no NMS. The v1.1 structure model trained on PubTables-1M (scientific tables). | |
| For more details on the model, please go to Microsoft's original [model card](https://huggingface.co/microsoft/table-transformer-structure-recognition-v1.1-pub). | |
| Pure-**Keras 3** conversion of [`microsoft/table-transformer-structure-recognition-v1.1-pub`](https://huggingface.co/microsoft/table-transformer-structure-recognition-v1.1-pub) for [zeromodels](https://github.com/IMvision12/ZeroModels). One implementation runs unmodified on **TensorFlow / Torch / JAX**. | |
| This is a **table-structure recognition** checkpoint (`TableTransformerDetect`): each query predicts a table element (classes: table, column, row, column header, projected row header, spanning cell). | |
| ## ✨ Quick start | |
| ```python | |
| import os | |
| os.environ["KERAS_BACKEND"] = "torch" # or "jax" / "tensorflow" | |
| from PIL import Image | |
| from zeromodels.models.table_transformer import ( | |
| TableTransformerDetect, | |
| TableTransformerImageProcessor, | |
| ) | |
| from zeromodels.models.table_transformer.table_transformer_image_processor import ( | |
| TABLE_STRUCTURE_LABELS, | |
| ) | |
| model = TableTransformerDetect.from_weights("zeromodels/table-transformer-structure-recognition-v1.1-pub") | |
| processor = TableTransformerImageProcessor.from_weights("zeromodels/table-transformer-structure-recognition-v1.1-pub") | |
| image = Image.open("your_image.jpg").convert("RGB") | |
| inputs = processor(image) | |
| output = model(inputs["pixel_values"], training=False) | |
| results = processor.post_process_object_detection( | |
| output, | |
| threshold=0.6, | |
| target_sizes=[(image.height, image.width)], | |
| label_names=TABLE_STRUCTURE_LABELS, | |
| )[0] | |
| for score, name, box in zip( | |
| results["scores"], results["label_names"], results["boxes"] | |
| ): | |
| print(f"{name}: {float(score):.3f} {box}") | |
| ``` | |
| Load any Table Transformer variant the same way with `from_weights("zeromodels/<variant>")`: | |
| | Variant | Hub | Task | | |
| |---|---|---| | |
| | `table-transformer-detection` | [`zeromodels/table-transformer-detection`](https://huggingface.co/zeromodels/table-transformer-detection) | table detection | | |
| | `table-transformer-structure-recognition` | [`zeromodels/table-transformer-structure-recognition`](https://huggingface.co/zeromodels/table-transformer-structure-recognition) | table-structure recognition | | |
| | `table-transformer-structure-recognition-v1.1-all` | [`zeromodels/table-transformer-structure-recognition-v1.1-all`](https://huggingface.co/zeromodels/table-transformer-structure-recognition-v1.1-all) | table-structure recognition | | |
| | `table-transformer-structure-recognition-v1.1-fin` | [`zeromodels/table-transformer-structure-recognition-v1.1-fin`](https://huggingface.co/zeromodels/table-transformer-structure-recognition-v1.1-fin) | table-structure recognition | | |
| | `table-transformer-structure-recognition-v1.1-pub` | [`zeromodels/table-transformer-structure-recognition-v1.1-pub`](https://huggingface.co/zeromodels/table-transformer-structure-recognition-v1.1-pub) | table-structure recognition | | |
| ## Tips | |
| - Set `KERAS_BACKEND` **before** importing Keras / zeromodels. | |
| - Detection finds tables in a page image; structure recognition decomposes a cropped table into rows, columns, and header / spanning cells. | |
| - Both tasks use `TableTransformerDetect` + `post_process_object_detection`; only the checkpoint and the class set differ. | |
| - Pass `label_names=TABLE_DETECTION_LABELS` for the detection checkpoint and `label_names=TABLE_STRUCTURE_LABELS` for structure recognition (both live in `zeromodels.models.table_transformer.table_transformer_image_processor`). | |
| - See [Table Transformer docs](https://imvision12.github.io/ZeroModels/table_transformer/) and [Loading Weights](https://imvision12.github.io/ZeroModels/loading_weights/). | |
| - Community / upstream safetensors still work via the `hf:` prefix, e.g. `TableTransformerDetect.from_weights("hf:microsoft/table-transformer-structure-recognition-v1.1-pub")`. | |
| ## Special Thanks | |
| A huge thank you to the Microsoft Table Transformer authors for creating and releasing these models. | |
| License: Apache 2.0. | |