128.415.438 arquivos
4,7 Trustpilot
desde 2013

Tudo sobre arquivos PGM

formato simples para imagens em tons de cinza

Sören RamspeckÚltima atualização em 23 Abril, 2026 por Sören Ramspeck, com experiência em mais de 128.415.276 arquivos convertidos desde 2013.

O PGM é o representante da escala de cinzentos da família PBM. Enquanto o PBM apenas distingue preto e branco, o PGM permite até 65 535 nuances entre os dois extremos. Cada pixel é descrito por um único valor numérico: 0 é preto, o valor máximo é branco. PGM significa «Portable Gray Map» e foi desenvolvido no final de 1988 por Jef Poskanzer como uma extensão do PBM. Para conhecer a história de toda a família de formatos, consulte o meu artigo sobre o PBM.

TLDR:

O PGM é o formato de tons de cinza da família Netpbm. Funciona como o PBM, mas com mais de duas «cores» — precisamente, tons de cinza. O PGM ainda é utilizado no processamento de imagens, na educação e como formato intermediário em pipelines. Quem conhece o artigo sobre o PBM conhece o princípio; o PGM simplesmente torna tudo mais cinzento. A variante colorida é, afinal, o PPM.

A estrutura técnica

Uma imagem PGM difere do PBM por exatamente uma linha adicional no cabeçalho: o valor máximo (Maxval). Este determina quantos níveis de cinza a imagem utiliza. Também com o PGM é possível desenhar uma imagem em «papel quadriculado». Em vez de preencher quadrados, aqui são utilizados números em cada quadrado que representam um nível de luminosidade.

Componente Exemplo Significado
Número mágico P2 PGM simples (variante ASCII)
Comentário # mein bild Opcional, iniciado com # introduzido
Largura Altura 24 7 Dimensões em pixels
Maxval <15 Valor de cinza máximo (1-65535)
Dados de raster 0 2 4 6 ... Valores de cinza por pixel

O exemplo clássico do FEEP tem este aspeto em PGM, cada letra recebe o seu próprio nível de luminosidade. (Para uma melhor visualização com a fonte monoespaçada, selecionei um Maxval de 8)

P2
# feep.pgm
24 7
8
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 2 2 2 2 0 0 4 4 4 4 0 0 6 6 6 6 0 0 8 8 8 8 0
0 2 0 0 0 0 0 4 0 0 0 0 0 6 0 0 0 0 0 8 0 0 8 0
0 2 2 2 0 0 0 4 4 4 0 0 0 6 6 6 0 0 0 8 8 8 8 0
0 2 0 0 0 0 0 4 0 0 0 0 0 6 0 0 0 0 0 8 0 0 0 0
0 2 0 0 0 0 0 4 4 4 4 0 0 6 6 6 6 0 0 8 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

O texto FEEP é reconhecível tal como no exemplo PBM, mas as letras tornam-se mais claras da esquerda para a direita: F é cinzento escuro (2), E cinzento médio (4 e 6), P branco (8).

Maxval: a diferença decisiva entre PBM e PGM

O Maxval determina a profundidade de cor da imagem. Com Maxval 1, o PGM comporta-se exatamente como o PBM. Com Maxval 255, tem-se 256 tons de cinzento, o que corresponde a uma imagem clássica de 8 bits em tons de cinzento. São possíveis valores acima de 255 (até 65535), mas na prática raramente são utilizados.

Plain vs. Raw: P2 e P5

Tal como no PBM, também no PGM existe uma variante ASCII e uma variante binária:

Característica PGM Plain (P2) Raw PGM (P5)
Dados de píxeis Números decimais ASCII Binário, 1 ou 2 bytes por pixel
Legível por humanos Sim, na íntegra Apenas o cabeçalho
Espaço de memória por pixel Variável (dígitos + espaços em branco) 1 byte (valor máximo ≤ 255) ou 2 bytes
Comprimento máximo da linha Recomenda-se 70 caracteres Sem limite

A variante RAW (P5) é o padrão nas ferramentas Netpbm. Com um Maxval superior a 255, são utilizados dois bytes por pixel, Big-Endian.

Áreas de aplicação típicas

O PGM é utilizado em todas as situações em que o que importa é o valor de luminosidade puro por pixel e a cor não tem qualquer importância:
Ciência e medicina: imagens de raios X, ressonâncias magnéticas e imagens de microscopia são frequentemente processadas como imagens em tons de cinza. O PGM é adequado para isso devido à sua simplicidade e armazenamento sem perdas.
Visão computacional: Detetores de bordas (Sobel, Canny), métodos de limiar e análises de histograma funcionam com dados em tons de cinza. O PGM fornece estes dados sem sobrecarga.
Mapas de altitude e modelos de terreno: Cada pixel representa uma altitude – um caso de aplicação que se encaixa perfeitamente na lógica de «um valor por pixel» do PGM.
Máscaras de transparência: No Netpbm, o PGM também é utilizado como máscara de transparência. Neste contexto, o branco representa opacidade total e o preto, transparência total.
Ensino: Tal como o PBM, o PGM é excelente para ensinar os fundamentos do processamento de imagens (não da edição de imagens).

Gama e espaço de cor

De acordo com a especificação, os valores de cinza não são lineares, mas seguem a função de transferência gama de acordo com a ITU-R BT.709 (gama 2.2). Na prática, porém, muitos programas não seguem esta norma e escrevem valores lineares. A ferramenta Netpbm pnmgamma consegue converter entre ambas as variantes. Também a função de transferência sRGB, agora mais comum, difere ligeiramente da BT.709 e, na realidade, a maioria dos programas utiliza simplesmente sRGB e denomina o resultado PGM.

Fontes

Especificação do formato PGM do Netpbm
Artigo sobre o PBM com a história da família de formatos

.b0 { color: #ccc; }
.b2 {color: #222; }
.b4 {color:#444;}
.b6 {color:#666;}
.b8 { color: #888; }

const el = document.getElementById('pgm');
el.innerHTML = el.textContent.replace(/([0-9])/g, '<span class="b$1">$1</span>');

0.0/5(0 votos)

Converta, abra e edite arquivos PGM

Detalhes sobre arquivos PGM

Software para abrir arquivos PGM
IrfanView
XnView
GIMP
ImageMagick
Software para editar arquivos PGM
GIMP
ImageMagick
Paint.NET
Tipos MIME para PGM
image/x-portable-graymap
image/x-pgm

Formatos de arquivo relacionados

Todos os conversores a partir de ou para PGM

Sem comentários

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *


Arraste os arquivos aqui...