Ir ao conteúdo
  • Cadastre-se

C preciso transformar uma imagem em matriz no dev c


Xx gollden xX

Posts recomendados

bom dia, preciso fazer um trabalho de faculdade, pegar uma imagem transformar ela em matriz, foi me passado a imagem e a matriz com os pixels, se caso tivesse dificuldades com bibliotecas de imagens e tal! mas preencher a matriz usando o números dos pixel o código vai ficar bizarro, O trabalho deve ser feito em c, pegar uma imagem 512x512 e fazer openmp na matriz e uma rotação de 45º!

  • Amei 1
Link para o comentário
Compartilhar em outros sites

@Xx gollden xX     isso seria fácil se você puder usar o compilador Blitz 3D , onde você pegaria a cor de cada pixel da imagem que é representado por três números , de zero até 255 , e a matriz teria que ter três colunas , sendo uma para cada um dos três números que formam a cor ,    mas na linguagem C é bem  difíciL ,   e você com certeza vai precisar usar alguma biblioteca ,  como por exemplo a SDL2  (  a mais fácil de instalar   )  , Allegro , wxWidget , ou outras . . . ,  e se não quiser instalar uma  , pois elas dão muito trabalho para serem instaladas e configuradas  até que funcione ,  então você pode usar uma que já vem instalada junto com a IDE Dev C++ ,  codeblocks ,  ou outros ,  que é a API  do Windows ,  onde você terá que fazer tudo na unha mesmo ,  pois ela tem funções para trabalhar com imagens , mas você precisará criar outras ,  e você pode ver exemplos dessa API nesses links :

http://vulms.vu.edu.pk/Courses/CS410/Downloads/Charles Petzold - Programming Windows - 5th Ed.pdf

 

https://forum.zwame.pt/threads/tutorial-programar-para-windows.75878/

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Em 18/11/2020 às 11:03, Xx gollden xX disse:

bom dia, preciso fazer um trabalho de faculdade, pegar uma imagem transformar ela em matriz, foi me passado a imagem e a matriz com os pixels, se caso tivesse dificuldades com bibliotecas de imagens e tal! mas preencher a matriz usando o números dos pixel o código vai ficar bizarro, O trabalho deve ser feito em c, pegar uma imagem 512x512 e fazer openmp na matriz e uma rotação de 45º

 

Já pensou que deveria ter dito em que formato está a imagem que recebeu? Entenda que ao receber a matriz e a imagem é a maneira de você testar o processo: a inversa do inverso é... a identidade. Então isso é a maneira óbvia de testar sua solução.

 

Seu objetivo é transformar a imagem em matriz de pixels, o que é meio b0b1nh0 já que uma imagem é exatamente isso: Pontinhos coloridos. Trata-se apenas de interpretar o formato de como a imagem foi gravada e isso é claro que está bem estabelecido. Veja or exemplo esse documento https://www.w3.org/Graphics/JPEG/itu-t81.pdf para jpeg/jpg: não há margem para dúvida. TIFF está bem documentado, BMP da Microsoft também.

 

E como vai testar isso? Simples: pega a imagem, "transforma" em matriz, pega a matriz "transforma" em outra imagem e compara com a original.

 

Seu problema mesmo será em adequar o modelo para usar OpenMP, mas como o enunciado aparentemente nada diz pode criar algo bem simples, como duas linhas de processamento.

 

Girar a 45 graus não parece nada de mais já que a imagem é quadrada. Um mínimo de trigonometria do ensino fundamental: seno e cosseno

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

@devair1010 Só para contextualizar melhor as referências, acho útil reforçar que não se usam mais essas coisas.

  • Programming Windows, o livro de que falou, estava na quinta edição em 2002 e essa é a referência no link que deixou em no final de 2020. A primeira edição é  de '88. Nessa época (2002) o Pentium 4 da Intel era revolucionário com 55 milhões de transistors.  Um i7 moderno tem mais de 3 bilhões deles.
     
  • O tutorial para programar em Windows, a segunda referência, é de 2005

 

Hoje 2020 se usa API como DirectX, OpenGL, Cuda (Nvidia), Vulkan (AMD) e é normal uma placa de vídeo ter mais de 7 bi transistors e centenas de núcleos de processamento

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...