PPM图像格式(Portable Pixelmap)

简介: <pre id="best-content-827646949" accuse="aContent" class="best-text mb-10" style="margin-top: 0px; margin-bottom: 10px; padding: 0px; font-family: arial, 'courier new', courier, 宋体, monospace; white
 一种linux图片格式,可用ACDSEE批量转变。它是一种简单的图像格式,仅包含格式、图像宽高、bit数等信息和图像数据。
  图像数据的保存格式可以用ASCII码,也可用二进制,下面列举ppm格式中比较简单的一种:24位彩色、二进制保存的图像。
  文件头+rgb数据:
  P6\n
  width height\n
  255\n
  rgbrgb...
  其中P6表示ppm的这种格式;\n表示换行符;width和height表示图像的宽高,用空格隔开;255表示每个颜色分量的最大值;rgb数据从上到下,从左到右排放。
 
PPM灰度文件:
文件头由3行文本组成,可由fgets读出
1)第一行为“P2",表示文件类型
2)第二行为图像的宽度和高度
3)第三行为最大的象素值255
接下来是图像数据块。按行顺序存储。每个象素占4个字节,灰度通道为4字节ASCII码表示的整数,
高字节在前。左上角为坐标原点。
16位PPM文件:(至少适用于读取由DCRAW生成的PPM文件)
文件头由3行文本组成,可由fgets读出
1)第一行为“P6",表示文件类型
2)第二行为图像的宽度和高度
3)第三行为最大的象素值
接下来是图像数据块。按行顺序存储。每个象素占6个字节,依次为红绿蓝通道,每个通道为2字节整
数,高字节在前。
PPM彩色文件:
文件头由3行文本组成,可由fgets读出
1)第一行为“P3",表示文件类型
2)第二行为图像的宽度和高度
3)第三行为最大的象素值255

接下来是图像数据块。按行顺序存储。每个象素占12个字节,依次为红绿蓝通道,每个通道为4字节 ASCII码表示的整数,高字节在前。左上角为坐标原点。

另转其他:

ppm文件的开始为三行ASCII码文本 第一行是:   P6 第二行是图像的大小,先是列象素数,后是行象素数,中间有一空格, 例如320X240的图像,次行为: 320 240 第三行是一个介于1和65525的整数,当然也是文本的,用来表示 每一个象素的一个分量(如红,绿,蓝)用几个比特表示, 1-255 表示一个分量用地比特表示. 每一行的结尾一换行或回车或两者都用表示. 三行文本之后就是图像的数据流,从左到右,从上到下. 如一个320X240的RGB图象,每分量用8比特表示, 文件如下: P6 320 240 255

相关文章
|
4月前
|
存储 传感器 编解码
图像格式:常见图像格式RAW, RGB, YUV&&图像格式的解析、格式转换和看图软件
图像格式:常见图像格式RAW, RGB, YUV&&图像格式的解析、格式转换和看图软件
348 1
|
11月前
|
编解码 C++ 开发者
MPEG vs JPEG
MPEG vs JPEG
78 0
|
图形学
Qt&Vtk-003-读取jpg、png、dicom等格式图片
本文其实才能算是真正的Qt与Vtk结合,具体实现JPG、PNG、TIFF、DICOM、BMP及一个3D Cube显示。
599 1
Qt&Vtk-003-读取jpg、png、dicom等格式图片
使用jpeglib直接把NV12转为jpeg文件的代码
使用jpeglib直接把NV12转为jpeg文件的代码
86 0
|
C# 开发者 图形学
C# 如何将PDF转为多种图像文件格式(Png/Bmp/Emf/Tiff)
PDF是一种在我们日常工作学习中最常用到的文档格式之一,但常常也会因为文档的不易编辑的特点,在遇到需要编辑PDF文档内容或者转换文件格式的情况时让人苦恼。通常对于开发者而言,可选择通过使用组件的方式来实现PDF文档的编辑或者格式转换,因此本文将介绍如何通过使用免费版的组件Free Spire.PDF for .NET来转换PDF文档。
1580 0
|
存储 编解码 算法