Este projeto consiste na transformação de uma imagem colorida em duas versões: uma em tons de cinza e outra binária (preto e branco). Ele permite que o usuário faça o upload de uma imagem, realize as transformações e faça o download das imagens resultantes. O projeto foi desenvolvido em Python e inclui a utilização de bibliotecas como PIL
, matplotlib
, numpy
, e tkinter
para criação de interfaces gráficas (local) e manipulação de imagens.
A redução de dimensão no espaço de cor é uma das técnicas essenciais para otimizar o processamento de imagens em Machine Learning. Ao simplificar as representações das imagens, como a conversão para tons de cinza ou binário, é possível melhorar a eficiência computacional e reduzir o risco de overfitting nos modelos de aprendizado de máquina.
- Upload de imagem: O usuário pode fazer o upload de uma imagem.
- Conversão para Tons de Cinza: A imagem colorida é convertida para tons de cinza utilizando a fórmula RGB para tons de cinza.
- Conversão para Binário (Preto e Branco): A imagem em tons de cinza é convertida em uma imagem binária com base em um valor de limiar.
- Download das imagens: O usuário pode baixar tanto a imagem em tons de cinza quanto a imagem binária.
O projeto depende das seguintes bibliotecas:
numpy
matplotlib
PIL
(Pillow)tkinter
(somente para execução local)
No Google Colab, tkinter
não é necessário, e as imagens são baixadas diretamente com a função files.download()
.
Execute o seguinte comando para instalar as bibliotecas necessárias no seu ambiente local:
pip install numpy matplotlib pillow
- Abra o notebook do Google Colab (link abaixo).
- Execute as células do notebook.
- Faça o upload da imagem quando solicitado.
- As imagens convertidas estarão disponíveis para download ao final da execução.
Clique aqui para acessar o notebook do Google Colab.
- Clone este repositório para o seu computador.
- Instale as dependências necessárias executando
pip install -r requirements.txt
. - Execute o script
script.py
para iniciar a interface gráfica e o processo de upload, conversão e download.
-
Ao executar o script, uma janela será exibida para que você realize o upload de uma imagem
-
Ao selecionar a imagem, ela será exibida colorida, depois em tons de cinza, e por último, em preto e branco
-
Por último, você pode salvar as fotos geradas, se quiser. Elas serão salvas na pasta
/images
O repositório contém a seguinte estrutura de arquivos:
/reduction_of_color_space_dimensionality_challenge
├── script.py # Script principal para execução local
├── images/ # Pasta onde as imagens geradas serão salvas (E existe uma imagem colorida de teste + as imagens geradas a partir da mesma)
├── requirements.txt # Arquivo com as dependências necessárias
└── README.md # Este arquivo
Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.