{"id":18369556,"url":"https://github.com/henriqueotogami/image-processing-package","last_synced_at":"2026-04-06T03:36:13.579Z","repository":{"id":149912880,"uuid":"289554146","full_name":"henriqueotogami/image-processing-package","owner":"henriqueotogami","description":"Pacote de Processamento de Imagens, utilizando o Test Pypi, da aula da Karina Tiemi Kato, Coding Lab PRO na Digital Innovation One.","archived":false,"fork":false,"pushed_at":"2025-03-04T05:22:31.000Z","size":98,"stargazers_count":4,"open_issues_count":1,"forks_count":20,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-22T04:03:54.676Z","etag":null,"topics":["digital-innovation-one","image-processing","package","pypi-package","python3"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/henriqueotogami.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2020-08-22T19:33:33.000Z","updated_at":"2025-03-04T05:22:35.000Z","dependencies_parsed_at":null,"dependency_job_id":"c3aa3c46-381d-49ba-91f5-7c7c8e4c204a","html_url":"https://github.com/henriqueotogami/image-processing-package","commit_stats":null,"previous_names":["henriquemap/image-processing-package"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henriqueotogami%2Fimage-processing-package","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henriqueotogami%2Fimage-processing-package/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henriqueotogami%2Fimage-processing-package/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henriqueotogami%2Fimage-processing-package/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/henriqueotogami","download_url":"https://codeload.github.com/henriqueotogami/image-processing-package/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247210010,"owners_count":20901904,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["digital-innovation-one","image-processing","package","pypi-package","python3"],"created_at":"2024-11-05T23:29:46.730Z","updated_at":"2026-04-06T03:36:13.567Z","avatar_url":"https://github.com/henriqueotogami.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Image Processing Package\n\n\u003e Pacote Python para processamento de imagens com funcionalidades de correspondência de histograma, similaridade estrutural e redimensionamento. Projeto desenvolvido no Bootcamp Developer Full Stack Python da Digital Innovation One.\n\n## Autoria\n- **Projeto original:** Karina Tiemi Kato (Tech Lead, Machine Learning Engineer, Data Scientist Specialist at Take)\n- **Publicação no Test PyPI:** Henrique Matheus Alves Pereira\n- **Aula:** Coding Lab PRO - Digital Innovation One\n- [(clique aqui para ver o meu perfil na plataforma)](https://web.digitalinnovation.one/users/henrique_map)\n- **Tecnologia:** Python\n- **Data:** 22/08/2020\n\n---\n\n## 📋 Sobre o Projeto\n\nEste pacote oferece ferramentas para processamento de imagens em Python, incluindo correspondência de histograma, cálculo de similaridade estrutural, redimensionamento e visualização. Foi criado como demonstração para publicação no Test PyPI durante o Bootcamp Developer Full Stack Python.\n\n## 📁 Estrutura do Projeto\n\n### Módulo Processing (`image_processing-test/processing/`)\n- **combination.py** - Correspondência de histograma e similaridade estrutural entre imagens\n- **transformation.py** - Redimensionamento de imagens por proporção\n\n### Módulo Utils (`image_processing-test/utils/`)\n- **io.py** - Leitura e gravação de imagens\n- **plot.py** - Visualização de imagens, resultados e histogramas\n\n## 📂 Estrutura do repositório\n\n```\nLICENSE\nREADME.md\nsetup.py\nrequirements.txt\nimage_processing-test/\n  __init__.py\n  processing/\n    combination.py    # correspondência de histograma e similaridade estrutural\n    transformation.py # redimensionamento de imagens\n  utils/\n    io.py             # ler e salvar imagens\n    plot.py           # plotar imagens, resultados e histogramas\n```\n\n## 🛠️ Tecnologias Utilizadas\n\n- **Python** (\u003e= 3.8) - Linguagem de programação\n- **scikit-image** - Processamento de imagens (histograma, similaridade, resize)\n- **NumPy** - Operações numéricas\n- **matplotlib** - Visualização de imagens e gráficos\n\n## 📝 Funcionalidades Principais\n\n### Módulo Processing\n- **Correspondência de histograma** - `transfer_histrogram(image1, image2)` - Ajusta o histograma de uma imagem ao de outra\n- **Similaridade estrutural** - `find_difference(image1, image2)` - Calcula e retorna a diferença estrutural entre duas imagens\n- **Redimensionar imagem** - `resize_image(image, proportion)` - Redimensiona imagem mantendo proporção (0 a 1)\n\n### Módulo Utils\n- **Ler imagem** - `read_image(path, is_gray)` - Carrega imagem do disco\n- **Salvar imagem** - `save_image(image, path)` - Salva imagem no disco\n- **Plotar imagem** - `plot_image(image)` - Exibe imagem\n- **Resultado do gráfico** - `plot_result(*args)` - Exibe múltiplas imagens comparativas\n- **Plotar histograma** - `plot_histogram(image)` - Exibe histograma RGB da imagem\n\n## 🚀 Instalação\n\n### Via Test PyPI (ambiente de testes)\n\n```bash\npip install -i https://test.pypi.org/simple/ image-processing-test\n```\n\n### Dependências (instalação local)\n\n```bash\npip install -r requirements.txt\n```\n\n## 📖 Como Usar\n\n```python\nfrom image_processing_test.processing import combination\nfrom image_processing_test.processing import transformation\nfrom image_processing_test.utils import io, plot\n\n# Carregar imagens\nimage1 = io.read_image('imagem1.png')\nimage2 = io.read_image('imagem2.png')\n\n# Encontrar diferença estrutural entre imagens\ndiff = combination.find_difference(image1, image2)\nplot.plot_image(diff)\n\n# Correspondência de histograma\nmatched = combination.transfer_histrogram(image1, image2)\nplot.plot_image(matched)\n\n# Redimensionar imagem\nresized = transformation.resize_image(image1, proportion=0.5)\nplot.plot_image(resized)\n```\n\n![Exemplo de processamento](https://github.com/henriqueotogami/image-processing-package/blob/master/image-processing-test.png?raw=true)\n\n## ⚙️ Como funciona\n\n### Similaridade Estrutural\nA função `find_difference` implementa o seguinte algoritmo:\n1. Converte as imagens para escala de cinza\n2. Calcula o índice de similaridade estrutural (SSIM) entre as duas imagens\n3. Normaliza a imagem de diferença para exibição\n4. Retorna a imagem de diferença e exibe o score de similaridade\n\n### Correspondência de Histograma\nA função `transfer_histrogram` usa `match_histograms` do scikit-image para ajustar o histograma de cores da primeira imagem ao da segunda, permitindo transferência de estilo ou equalização entre imagens.\n\n---\n\n## 📦 Publicação no Test PyPI\n\n### Passo a passo para hospedar o pacote\n\n- [x] Instalação das últimas versões de \"setuptools\" e \"wheel\"\n\n```bash\npy -m pip install --user --upgrade setuptools wheel\n```\n\n- [x] Gerar distribuição (certifique-se de estar no diretório do projeto)\n\n```bash\npy setup.py sdist bdist_wheel\n```\n\n- [x] Verificar se as pastas foram criadas:\n  - build\n  - dist\n  - image_processing_test.egg-info\n\n- [x] Upload para o Test PyPI via Twine\n\n```bash\npy -m twine upload --repository testpypi dist/*\n```\n\n**Nota:** O Test PyPI é um ambiente de testes. Para disponibilizar publicamente, publique no [PyPI oficial](https://pypi.org/).\n\n---\n\n## 📄 Licença\n\nEste projeto está licenciado sob a MIT License - veja o arquivo [LICENSE](LICENSE) para mais detalhes.\n\n## 📖 Referências\n\n- [Digital Innovation One](https://web.digitalinnovation.one/)\n- [scikit-image Documentation](https://scikit-image.org/)\n- [Test PyPI](https://test.pypi.org/)\n- [PyPI](https://pypi.org/)\n\n---\n\n### Hashtags\n#Python #ImageProcessing #OpenSource #DataScience #MachineLearning #DigitalInnovationOne #Bootcamp #PyPI #scikit-image\n\n### Meta Keywords\n```\nprocessamento de imagens, Python, histograma, similaridade estrutural,\nscikit-image, Digital Innovation One, PyPI, pacote Python, redimensionamento,\nvisualização de imagens, bootcamp, machine learning, data science\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhenriqueotogami%2Fimage-processing-package","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhenriqueotogami%2Fimage-processing-package","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhenriqueotogami%2Fimage-processing-package/lists"}