YOLO26s Table Detection Model
A single-class table detection model based on Ultralytics YOLO26s, designed to detect table regions in documents, reports, scanned pages, screenshots, and other images.
Task: Object Detection
Class:table
Number of classes: 1
Repository Structure
.
βββ README.md
βββ README_ZH.md
βββ model/
β βββ weights/
β β βββ best.pt
β β βββ last.pt
β βββ args.yaml
β βββ results.csv
β βββ ...
βββ runs/
β βββ detect/
β βββ βββ predict/
βββ test_imgs/
βββ test_img_00001.jpg
βββ test_img_00002.jpg
βββ test_img_00003.jpg
βββ test_img_00004.jpg
βββ test_img_00005.jpg
model/weights/best.pt: Best model checkpoint according to the validation results during training.model/weights/last.pt: Final checkpoint saved at the end of training.model/args.yaml: Training argument configuration recorded by YOLO.model/results.csv: Training and validation metrics recorded for each epoch.(This process involves only fine-tuning; prior to this, the model was pre-trained using some public datasets.)test_img/: raw input images waiting to be predicted.runs/detect/predictοΌPrediction result images that have already been processed by the model. These are demonstration outputs.
Model Information
| Item | Value |
|---|---|
| Model | YOLO26s |
| Task | Table Detection |
| Class | table |
| Number of classes | 1 |
| Class ID | 0 |
| Input size | 1024 Γ 1024 |
| Best Epoch | 40 |
| Weights | model/weights/best.pt |
Class definition:
0: table
Training Data
The base model was trained on 3,100 samples selected and merged from multiple publicly available table-related datasets.
An additional 1,100 high-quality, accurately annotated samples were subsequently prepared for business-domain refinement and model fine-tuning.
Best Validation Result
The best recorded result was obtained at Epoch 40.
| Metric | Value |
|---|---|
| Precision | 0.97985 |
| Recall | 0.95335 |
| mAP50 | 0.98849 |
| mAP50-95 | 0.93833 |
| Train Box Loss | 0.24954 |
| Train Cls Loss | 0.20026 |
| Train L1 Loss | 0.00386 |
| Val Box Loss | 0.31901 |
| Val Cls Loss | 0.21922 |
| Val L1 Loss | 0.00782 |
Prediction Results
The following images are already generated prediction results produced by the trained model. The detected table bounding boxes are included in the images and are provided to demonstrate actual inference results.
Test Result 01
Test Result 02
Usage
Python
Install Ultralytics:
pip install ultralytics
Load the model and run inference:
from ultralytics import YOLO
model = YOLO("model/weights/best.pt")
results = model.predict(
source="test_imgs",
imgsz=1024,
conf=0.5,
save=True
)
For a single image:
from ultralytics import YOLO
model = YOLO("model/weights/best.pt")
results = model.predict(
source="your_image.jpg",
imgsz=1024,
conf=0.5,
save=True
)
Windows CMD
yolo detect predict model="model/weights/best.pt" source="test_imgs" imgsz=1024 conf=0.5 save=True
For a single image:
yolo detect predict model="model/weights/best.pt" source="your_image.jpg" imgsz=1024 conf=0.5 save=True
Model Output
Because the model contains only one class, all detected objects are:
class_id: 0
class_name: table
The detection output includes:
- Bounding boxes
- Confidence scores
- Class IDs
- Class names
This model is designed for table region detection and does not directly perform:
- Table cell detection
- Table structure recognition
- Row/column relationship analysis
- OCR
- Table content extraction
A table structure recognition or OCR model can be added after table detection when a complete document table extraction pipeline is required.
Intended Use
Suitable applications include:
- Table localization in PDF and document images
- Financial and business report processing
- Table region extraction from scanned documents
- Table detection before OCR
- Document image preprocessing
- Automated table-related image processing
Limitations
Model performance depends on how closely the input distribution matches the training data. Performance may be affected by:
- Very low-resolution images
- Strong compression or blur
- Very small tables
- Unclear table boundaries
- Severe occlusion
- Unusual table layouts
- Document types that differ substantially from the training data
For production use, evaluation on an independent validation/test set representative of the target business domain is recommended.
Training Artifacts
The repository preserves the YOLO training project files for experiment inspection and reproducibility:
model/args.yaml
model/results.csv
model/weights/best.pt
model/weights/last.pt
args.yaml contains the recorded training configuration, while results.csv contains the per-epoch training and validation metrics.
Dataset and License
The base training data was created by filtering and merging multiple publicly available datasets. Different source datasets may have different licenses and usage restrictions. Users should independently verify the license and redistribution terms of each source dataset before using or redistributing the model.
The software framework, base model, and other dependencies may also be subject to their respective licenses and terms of use.
Acknowledgements
This model was trained and used with the Ultralytics YOLO framework.
- Ultralytics: https://github.com/ultralytics/ultralytics
- Documentation: https://docs.ultralytics.com/
Version Information
Model: YOLO26s Table Detection
Task: Object Detection
Classes: 1
Class ID: 0
Input Size: 1024 Γ 1024
Best Epoch: 40
Precision: 0.97985
Recall: 0.95335
mAP50: 0.98849
mAP50-95: 0.93833
Weight: model/weights/best.pt
Citation
If this model is used in a project, publication, or other public work, please cite Ultralytics YOLO and the original datasets used for training.
Model tree for MahoEmpire/yolo-table-detection
Base model
Ultralytics/YOLO26
