欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

pgm格式文件

程序员文章站 2022-03-31 17:42:27
...

PGM是Portable Gray Map的缩写,它是灰度图像格式中一种最简单的格式标准。PGM文件的后缀名为”.pgm”,PGM由两部分数据组成,分别是文件头部分和像素数据部分。

PGM文件可以用记事本打开,图像可以用ACDSee、PS等软件查看。

文件头部分

文件头包括的信息依次是:

1.PGM文件的格式类型(是P2还是P5);

2.图像的宽度;

3.图像的高度;

4.图像灰度值可能的最大值;

文件头的这四部分信息都是以ASCII码形式存储的,所以可以直接在将P2或P5格式的PGM文件在记事本中打开看到文件头的信息。

PGM文件头的4个信息之间用分割符分开,PGM的合法分隔符包括:空格,TAB,回车符,换行符。PGM文件头的信息应该由合法分割符号分开。

PGM格式图像格式分为两类:P2和P5类型,会在文件头的第一个数据区分, P2是可读的,可以用记事本打开,P5是二进制格式。

数据部分
数据部分记录图像每个像素的灰度值,按照图像从上到下,从左到右的顺序依次存储每个像素的灰度值.对于像素灰度值的表示P2格式和P5格式有所不同。

P5格式

P5格式的文件,每个像素用可以用二进制表示。每个像素数据之间没有间隔的连续存储,图像一行信息结束后从下一行第一列继续,两行图像数据之间也没有间隔的连续存储,直到将图像的所有信息表示完。因为是以二进制表示,所以数据部分在记事本中打开后看到的将会是乱码。

P2格式

P2格式的文件,每个像素使用字符串来表示,不同于P5格式,每个像素数据之间需要用一个空格符分开存储,在图像的每一行数据结束时需要换行。还有一点需要注意,P2格式文件数据部分当数据超过70个字节的时候,会自动换行。也就是说图像的每一行数据末尾,或者存储时超过70个字节时,需要进行换行。

一个P2格式文件示例:

P2 # 表明文件类型
# 可以加注释,这张图就是现实 "KAMU"四个字母
25 7 # 宽度和高度
15 # 色彩范围
# 下面是图像的像素,每个数字是一个像素
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  9  0  0  9  0  0  0  7  7  0  0  0 11 11 11 11 11  0  0 15  0  0 15  0
0  9  0  9  0  0  0  7  0  0  7  0  0 11  0 11  0 11  0  0 15  0  0 15  0
0  9  9  0  0  0  0  7  7  7  7  0  0 11  0 11  0 11  0  0 15  0  0 15  0
0  9  0  9  0  0  0  7  0  0  7  0  0 11  0 11  0 11  0  0 15  0  0 15  0
0  9  0  0  9  0  0  7  0  0  7  0  0 11  0 11  0 11  0  0 15 15 15 15  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

简述:

PGM格式是一种灰度图像的存储格式。它的文件的后缀名为.pgm,PGM文件可以用记事本查看数据,也可以用ACDSee、Photoshop等软件查看图像。,PGM文件可以用记事本查看数据,也可以用ACDSee、Photoshop等软件查看图像。
PGM又可以分成两种格式,P2和P5,它规定了文件的像素数据部分的存储形式。
PGM文件由两部分数据组成,分别是文件头部分和像素数据部分。
文件头数据依次是:1.PGM文件的格式类型(P2 或 P5)2.图像的宽度 3.图像的高度 4.图像灰度可能的最大值。
文件头的4个信息之间用分割符分开,可以用 空格,TAB,回车符,换行符。
文件头数据都是以ASCII码形式存储的,可读。
像素数据部分存储图像的信息,存储形式为:
P2格式,每个像素用字符串表示,每个像素之间要用空格分开,图像每一行结束时要换行。当数据超过70个字节,会自动换行。是可读的。
P5格式,每个像素用二进制表示,每个像素之间没有空格,两行数据之间也没有间隔的存储。用记事本打开会乱码。