Skip to content

O projeto consiste na manipulação de uma imagem do tipo ppm(portable pixmap) de acordo com os comandos escolhidos pelo usuário.

License

Notifications You must be signed in to change notification settings

OnofreTZK/ImageProcessing

Repository files navigation

Projeto de processamento de imagem - ITP 2019.1

Desenvolvido por:

Funcionalidades obrigatórias

Funcionalidade Status
Ler e criar Imagem Completo
Menu de Comandos Completo
Escala de cinza Completo
Arquivos diferentes para cada processo Completo
Binarização Completo
Rotacionar Completo
Ampliar Completo
Reduzir Completo
Filtros Completo
Detecção de bordas Completo

Extras implementados

1. Espelhamento da imagem na horizontal
1. Espelhamento da imagem na vertical
1. Filtro Gaussiano 5x5 em 256 partes
1. Detecção de bordas usando o operador de Sobel

O que poderia ter sido feito diferente

* A execução do programa com mais de uma imagem passada como parâmetro
* Permitir o usuário escolher qual das imagens quer processar
* Utilizar uma imagem transformada em outro processo sem a necessidade de executar o programa novamente
* Permitir o usuário escolher o zoom nas funções de reduzir e ampliar
* Permitir o usuário escolher quantas vezes aplicar cada filtro
* Implementação de compressão de imagem, transformada de Hough e detecção de objetos
* Recursividades mais complexas
* Interface gráfica
* Verificar se a imagem gerada foi nula

Compilação e execução

Para baixar o código na sua maquina:
$ git clone https://github.com/OnofreTZK/ITP_photoshop.git
Após baixar o repositório, vá até a pasta raiz e:
# Digite 'make all' para compilar
$ make all

# As seguintes mensagens devem aparecer:

gcc ./src/*.c -Wall -lm -I ./include -o ./bin/proj
proj -> ./bin/proj
Compilado com sucesso! Para executar digite ./proj imagem.ppm
      
# Quando finalizar a execução digite 'make clean' para limpar os arquivo binários
$ make clean

# A seguinte mensagem deve aparecer:

Binários excluidos com sucesso!
Para executar:
$ ./proj imagem.ppm

sendo ./proj o nome do executável e imagem.ppm obrigatoriamente uma imagem do tipo .ppm, caso não tenha, esse repositório conta com duas: got.ppm e ts.ppm

Referências que auxiliaram no desenvolvimento

About

O projeto consiste na manipulação de uma imagem do tipo ppm(portable pixmap) de acordo com os comandos escolhidos pelo usuário.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published