TINTOlib: A Python Library for Transforming Tabular Data into Synthetic Images for Deep Neural Networks - Examples
This repository has a dedicated space on DeepWiki, where you can explore semantic documentation, relevant links, bibliography, and answers to frequently asked questions about its use and application.
TINTOlib is the first Python library specifically designed to transform tabular data into synthetic images, addressing a critical gap in the integration of tabular and image-based machine learning approaches. It supports a comprehensive set of transformation techniques optimized for state-of-the-art computer vision models, including Convolutional Neural Networks (CNNs) and Vision Transformers (ViTs).
This library was introduced and validated in a scientific study, demonstrating significant improvements in regression and classification tasks. By enabling seamless integration of features extracted from synthetic images with numerical data using hybrid architectures, TINTOlib bridges the gap between tabular data processing and vision-based deep learning.
- Input formats: CSV or Pandas DataFrame
- Designed for tidy data (target column last)
- Output: grayscale images from reduction and transformation methods
- Compatible with Linux, Windows, macOS
- Requires Python 3.7+
Below are examples of the architectures that can be built using TINTOlib and applied in your experiments:
The repository is organized into step-by-step examples for transforming tabular data into images and applying vision models:
- Classification task: Notebooks for classification task.
- Regression task: Notebooks for regression task.
- logs: contains detailed results from regression and classification experiments, including metrics (e.g., RMSE, accuracy), model architectures (e.g., CNN, ViT, HyCNN, HyViT), and the performance of TINTOlib’s transformation methods.
All the methods presented can be called using the TINTOlib library. The methods presented include:
| Model | Class | Features | Hyperparameters |
|---|---|---|---|
| TINTO | TINTO() |
blur |
problem algorithm pixels submatrix blur amplification distance steps option random_seed times verbose |
| IGTD | IGTD() |
problem scale fea_dist_method image_dist_method max_step val_step error switch_t min_gain zoom random_seed verbose |
|
| REFINED | REFINED() |
problem n_processors hcIterations zoom random_seed verbose |
|
| BarGraph | BarGraph() |
problem pixel_width gap zoom verbose |
|
| DistanceMatrix | DistanceMatrix() |
problem zoom verbose |
|
| Combination | Combination() |
problem zoom verbose |
|
| SuperTML | SuperTML() |
problem columns font_size image_size verbose |
|
| FeatureWrap | FeatureWrap() |
problem size bins zoom verbose |
|
| BIE | BIE() |
problem precision zoom verbose |
- For more detailed information, refer to the TINTOlib ReadTheDocs.
- GitHub repository: TINTOlib Documentation.
- PyPI: PyPI.
- Moreover, we have a TINTOlib Crash Course.
If you use TINTOlib in your research, please cite:
@article{LIU2025102444,
title = {TINTOlib: A Python library for transforming tabular data into synthetic images for deep neural networks},
journal = {SoftwareX},
volume = {32},
pages = {102444},
year = {2025},
issn = {2352-7110},
doi = {https://doi.org/10.1016/j.softx.2025.102444}
}Previous works:
@article{softwarex_TINTO,
title = {TINTO: Converting Tidy Data into Image for Classification with 2-Dimensional Convolutional Neural Networks},
journal = {SoftwareX},
author = {Manuel Castillo-Cara et al.},
volume = {22},
pages = {101391},
year = {2023},
doi = {https://doi.org/10.1016/j.softx.2023.101391}
}- Use-case developed in INFFUS Paper:
@article{inffus_TINTO,
title = {A novel deep learning approach using blurring image techniques for Bluetooth-based indoor localisation},
journal = {Information Fusion},
author = {Reewos Talla-Chumpitaz and Manuel Castillo-Cara and Luis Orozco-Barbosa and Raúl García-Castro},
volume = {91},
pages = {173-186},
year = {2023},
issn = {1566-2535},
doi = {https://doi.org/10.1016/j.inffus.2022.10.011}
}TINTOlib is available under the Apache License 2.0.




