Skip to main content

Cross-platform graphical installer with Docker support.

Project description

📦 transforms_fake

Gera imagens sintéticas realistas para treinar modelos de segmentação de forma inteligente, simples e divertida.

badge license status


✨ O que é?

transforms_fake é uma biblioteca Python que cria novas imagens e máscaras automaticamente a partir de outras já rotuladas (com máscaras). Ideal para segmentação de imagens, especialmente quando você não tem muitos dados rotulados.

Ao contrário de bibliotecas como Albumentations, que apenas transformam o que já existe (flip, blur, crop etc), esta aqui cria novos exemplos inserindo objetos reais com contexto em outras imagens de forma automática.

Imagine pegar um tomate de uma imagem, girar um pouco e colar ele em outro canto da mesma ou de outra imagem. Isso, com máscaras e sem sofrimento. É isso que a transforms_fake faz. 🍅📸✨


🎯 Motivacão

Quantas vezes você já quis treinar um modelo, mas não tinha dados suficientes? E se fosse possível multiplicar seus dados sem perder realismo?

transforms_fake nasce dessa necessidade: aumentar conjuntos de dados de forma contextual e realista, focando em segmentação.


📌 Exemplos Visuais

Original:

original

Após transforms_fake:

gerado

Veja como objetos foram reposicionados de forma realista, mantendo a coerência com máscaras!


🧠 Como funciona?

  1. Lê imagens e máscaras (por exemplo, PNG com canal alpha ou imagens separadas)
  2. Detecta instâncias rotuladas
  3. Faz "recorte" do objeto com base na máscara
  4. Reinsere em outra região da imagem (com opções de rotação, flip, escala etc)
  5. Atualiza a máscara automaticamente

✅ Recursos

Recurso Suporte
Copy-paste com máscaras
Rotação, flip, escala contextual
Inserção em outra imagem
Suporte a PyTorch e FastAI
Atualização de máscaras automática
Exporta como dataset (imagens + labels)

🚀 Instalação

pip install transforms_fake

Ou diretamente do GitHub (versão mais recente):

pip install git+https://github.com/THOTIACORP/transforms_fake.git

🧪 Exemplo de uso

from transforms_fake import main

main(
    input_dir="./meu_dataset",
    output_dir="./dataset_aumentado",
    num_augmented=50,
    rotate=True,
    flip=True,
    paste_in_different_images=True
)

🧱 Estrutura sugerida

meu_dataset/
├── images/
│   ├── img1.png
│   └── img2.png
└── masks/
    ├── img1_mask.png
    └── img2_mask.png

🤖 Comparativo com Albumentations

Recurso Albumentations transforms_fake
Transformar imagem original
Gera novas instâncias realistas
Manipula objetos individuais
Reutiliza máscaras para colagem
Modo interativo (com GUI opcional) ✅ (em breve)

🔬 Comparativo com a Sinapsis

🔧 Recurso Sinapsis Tools (Albumentations Wrappers) transforms_fake
Rotação, flip, elastic, warp
Suporte a máscaras & keypoints
Copy-paste por objeto (instância)
Geração de imagens sintéticas realistas
Interface gráfica / demo (web ou GUI) ✅ (Gradio/webapp) ✅ (GUI Qt - em desenvolvimento)

👵 Para a Tia Maria entender

Imagina que você tem uma foto de uma banana. Agora, você quer treinar um computador pra reconhecer bananas, mas só tem 3 fotos. Com essa biblioteca, você pode:

  • Copiar a banana da primeira imagem,
  • Girar um pouco,
  • Colar em outro canto,
  • E repetir!

Agora o computador acha que você tem 50 fotos diferentes. 🍌🧠


📚 Documentação (em breve)

Enquanto isso, veja os exemplos em examples/ ou explore os notebooks.


🛠 Requisitos

  • Python 3.8+
  • OpenCV
  • NumPy
  • Pillow
  • matplotlib (opcional)
  • PyQt5 (futuro suporte a modo visual)

👨‍💻 Contribuindo

Pull requests são bem-vindos! Para bugs, abra uma issue. Para sugestões, nos mande um email ou crie uma discussão.


✉️ Contato

THOTIACORP - GitHub | email: founder@thotiacorp.com.br


👉 Licença

GNU GENERAL PUBLIC LICENSE - use, copie, melhore!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

transforms_fake-0.1.1.tar.gz (46.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

transforms_fake-0.1.1-py3-none-any.whl (35.0 kB view details)

Uploaded Python 3

File details

Details for the file transforms_fake-0.1.1.tar.gz.

File metadata

  • Download URL: transforms_fake-0.1.1.tar.gz
  • Upload date:
  • Size: 46.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.0

File hashes

Hashes for transforms_fake-0.1.1.tar.gz
Algorithm Hash digest
SHA256 4e88e4f0e59af0c2208aa36dad6797c70e41f7482029e479ae028b9b295062ff
MD5 ea10d6dec471886fdd42bdcf8979ac86
BLAKE2b-256 b72953a57eb629fb1840da77196cfe4689d4b46d62c078d94bf3ff8f234a51d7

See more details on using hashes here.

File details

Details for the file transforms_fake-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for transforms_fake-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 86f0930bf11a6c2b4a24197f4df73383363a52a9a3d4d52ddbbf5d56630bd04e
MD5 fc86ef3ec7205b358b55eda46b8d7325
BLAKE2b-256 fa903f143e2cda3a9d1c9946bf67441b054370a9f7f7d2853788f9ad52d359ec

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page