Bibioteca em C/C++ para manipular imagem

Gostaria de saber qual biblioteca usar, que seja de fácil instalação tanto pra Windows quanto pra Linux, para manipular imagens( do tipo png, jpg, etc) em C/C++ ?

Gostaria de abrir e salvá-la em uma matriz para poder trabalhar com esses dados bem como mostra-la em uma janela depois( exibir a imagem).

Só precisa fazer isso mesmo. Não precisa ser uma OpenCV da vida.

A+

Por que você não usa só essas funcionalidades do OpenCV?

Pois queria uma biblioteca mais leve. Já que é só pra converter uma imagem em matriz e trabalhar sobre essa matriz.

Mas as estruturas de representação de imagem do OpenCV são o mais leve possível.O que você acha que é pesado?

Ta confusa a pergunta, parece que você quer poder manipular raster, mas não é claro se você quer uma biblioteca que tenha operações de processamento de imagens, ou não.

Se é só para carregar e você implementar as operações manualmente, dá para usar libpng diretamente, ou até SDL_Image.

Para processamento de imagens, algumas alternativas são: CImg, Magick++ e Boost GIL.

Mas se for para desenhar figuras vetoriais, como linhas, poligonos, texto, etc, Dai tem Cairo e Skia.

Me refiro ao tamanho da biblioteca mesmo. Se for inserir isso em um software ai vai ficar pesado (sei lá 120MB de tamanho) pois vai ter que instalar o OpenCV também.

Só carregar a imagem( do tipo png, jpeg, etc) mesmo em uma matriz. As manipulações serão implementadas.

E queria também mostrar a imagem modificada( manualmente através das implementações de filtros, etc) em uma janela, como se faz com o OpenCV através do imshow .

Em outras palavras quero somente uma biblioteca que faça o imread e o imshow do OpenCV mas que seja leve ( em tamanho - poucos MB).

CImg atende isso tudo

Dá uma olhada neste projeto:

São bibliotecas pequenas contidas em apenas 1 arquivo de cabeçalho. São de dominio publico; apenas procure a que vc deseja e adicione no seu projeto apenas aquele arquivo. A que vc quer é essa:

O arquivo tem apenas 244 KB