日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

PPM / PGM / PBM 图像文件格式

發布時間:2025/3/21 编程问答 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 PPM / PGM / PBM 图像文件格式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

PPM / PGM / PBM 圖像文件格式


聲明:引用請注明出處http://blog.csdn.net/lg1259156776/


說明:在進行圖像壓縮后傳輸,然后解壓縮顯示的過程中,通常會用到PPM / PGM / PBM 圖像文件格式來對解壓后的圖像像素值進行存儲,因為沒有進行壓縮,所以不丟失信息,但同時也文件比較大。本文就是對這種圖像文件格式進行介紹。


總論

PPM(Portable PixMap)是portable像素圖片,是由netpbm項目定義的一系列的portable圖片格式中的一個。這些圖片格式都相對比較容易處理,跟平臺無關,所以稱之為portable,就是比較直接的圖片格式。比如PPM,其實就是把每一個點的RGB分別保存起來。所以,PPM格式的文件是沒有壓縮的,相對比較大,但是由于圖片格式簡單,一般作為圖片處理的中間文件(不會丟失文件信息),或者作為簡單的圖片格式保存。

格式分析

netpbm的幾種圖片格式是通過其表示的顏色類型來區別的,PBM是單色圖,只有黑色和白色,PGM是灰度圖片PPM是代表完整的RGB顏色的圖片,有時也統稱為PNM格式。

(1) 文件頭

文件頭由三個部分組成:這幾個部分之間用回車或換行分隔(但是PPM標準中要求是空格)。

第一部分是文件magic number
每一個netpbm圖片由兩個字節的magic number (ASCII)組成,來標識文件的類型(PBM/PGM/PPM)以及文件的編碼(ASCII或binary)。

  • P1  單色圖  ASSII  PBM
  • P2  灰度圖  ASSII  PGM
  • P3  像素圖  ASSII  PPM
  • P4  單色圖  二進制  PBM
  • P5  灰度圖  二進制  PGM
  • P6  像素圖  二進制  PPM

第二部分是圖像寬度和高度(空格隔開),用ASCII表示。

第三部分是描述像素的最大顏色組成,允許描述超過一個字節(0-255)的顏色值。

另外,在上面的三個部分里面,都可以使用”#”插入注釋,注釋是#到行尾(回車或換行)部分。

(2) 圖像數據部分

對于ASCII格式,就是按照RGB的順序排列,以ASCII存儲,并且,RGB中間用空格隔開,圖片每一行用回車隔開。

對于binary格式,就是每一個像素點的RGB值分別順序存儲并且按二進制寫入文件,沒有任何分隔。

例子

PPM

例子1:
P6 1024 778 255

例子2:
P6
1024 778
255

例子3:

P6#PPM文件格式
1024 778#寬度和高度
255

通常的習慣,圖象從上到下,從左到右被存儲。色彩成分按照通常的紅-綠-藍順序存儲。

PGM

該格式文件存儲灰度圖形,也就是這里每個像素使用一個值來表示而不是3個(R,G,B)。同PPM唯一不同的是頭部用P2和P5,分別表示用ASCII和字節碼來表示數據。

例如:
P2
24 7
15

PBM

使用ASCII的0或1方式來表示數據,0表示白色,1表示黑色。與PPM、PGM不同的頭部是少了第三行,因為第三行的最大色彩值在這個模式下已經沒有意義了。

如下:

P1# PBM example
24 7


2015-10-15 藝少

轉載于:https://www.cnblogs.com/huty/p/8519013.html

總結

以上是生活随笔為你收集整理的PPM / PGM / PBM 图像文件格式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。