亚洲精品无码乱码成人|最近中文字幕免费大全|日韩欧美卡一卡二卡新区|熟妇性饥渴一区二区三区|久久久久无码精品国产AV|欧美日韩国产va在线观看|久久精品一本到99热动态图|99国产精品欧美一区二区三区

您現(xiàn)在的位置是: 資訊 > > 正文

位圖文件大小計算 位圖文件的大小和位圖的大小

時間:2023-06-16 18:13:05 來源:城市網(wǎng) 發(fā)布者:DN032

1、BMP BMP是一種與硬件設(shè)備無關(guān)的圖像文件格式,使用非常廣。

2、它采用位映射存儲格式,除了圖像深度可選以外,不采用其他任何壓縮,因此,BMP文件所占用的空間很大。

3、BMP文件的圖像深度可選lbit、4bit、8bit及24bit。


(相關(guān)資料圖)

4、BMP文件存儲數(shù)據(jù)時,圖像的掃描方式是按從左到右、從下到上的順序。

5、 由于BMP文件格式是Windows環(huán)境中交換與圖有關(guān)的數(shù)據(jù)的一種標(biāo)準(zhǔn),因此在Windows環(huán)境中運行的圖形圖像軟件都支持BMP圖像格式。

6、 典型的BMP圖像文件由三部分組成:位圖文件頭數(shù)據(jù)結(jié)構(gòu),它包含BMP圖像文件的類型、顯示內(nèi)容等信息;位圖信息數(shù)據(jù)結(jié)構(gòu),它包含有BMP圖像的寬、高、壓縮方法,以及定義顏色等信息。

7、 具體數(shù)據(jù)舉例: 如某BMP文件開頭: 424D 4690 0000 0000 0000 4600 0000 2800 0000 8000 0000 9000 0000 0100*1000 0300 0000 0090 0000 A00F 0000 A00F 0000 0000 0000 0000 0000*00F8 0000 E007 0000 1F00 0000 0000 0000*02F1 84F1 04F1 84F1 84F1 06F2 84F1 06F2 04F2 86F2 06F2 86F2 86F2 .... .... BMP文件可分為四個部分:位圖文件頭、位圖信息頭、彩色板、圖像數(shù)據(jù)陣列,在上圖中已用*分隔。

8、 一、圖像文件頭 1)1:(這里的數(shù)字代表的是"字",即兩個字節(jié),下同)圖像文件頭。

9、424Dh=’BM’,表示是Windows支持的BMP格式。

10、 2)2-3:整個文件大小。

11、4690 0000,為00009046h=36934。

12、 3)4-5:保留,必須設(shè)置為0。

13、 4)6-7:從文件開始到位圖數(shù)據(jù)之間的偏移量。

14、4600 0000,為00000046h=70,上面的文件頭就是35字=70字節(jié)。

15、 5)8-9:位圖圖信息頭長度。

16、 6)10-11:位圖寬度,以像素為單位。

17、8000 0000,為00000080h=128。

18、 7)12-13:位圖高度,以像素為單位。

19、9000 0000,為00000090h=144。

20、 8)14:位圖的位面數(shù),該值總是1。

21、0100,為0001h=1。

22、 二、位圖信息頭 9)15:每個像素的位數(shù)。

23、有1(單色),4(16色),8(256色),16(64K色,高彩色),24(16M色,真彩色),32(4096M色,增強型真彩色)。

24、1000為0010h=16。

25、 10)16-17:壓縮說明:有0(不壓縮),1(RLE 8,8位RLE壓縮),2(RLE 4,4位RLE壓縮,3(Bitfields,位域存放)。

26、RLE簡單地說是采用像素數(shù)+像素值的方式進行壓縮。

27、T408采用的是位域存放方式,用兩個字節(jié)表示一個像素,位域分配為r5b6g5。

28、圖中0300 0000為00000003h=3。

29、 11)18-19:用字節(jié)數(shù)表示的位圖數(shù)據(jù)的大小,該數(shù)必須是4的倍數(shù),數(shù)值上等于位圖寬度×位圖高度×每個像素位數(shù)。

30、0090 0000為00009000h=80×90×2h=36864。

31、 12)20-21:用象素/米表示的水平分辨率。

32、A00F 0000為0000 0FA0h=4000。

33、 13)22-23:用象素/米表示的垂直分辨率。

34、A00F 0000為0000 0FA0h=4000。

35、 14)24-25:位圖使用的顏色索引數(shù)。

36、設(shè)為0的話,則說明使用所有調(diào)色板項。

37、 15)26-27:對圖象顯示有重要影響的顏色索引的數(shù)目。

38、如果是0,表示都重要。

39、 三、彩色板 16)28-35:彩色板規(guī)范。

40、對于調(diào)色板中的每個表項,用下述方法來描述RGB的值: 1字節(jié)用于藍色分量 1字節(jié)用于綠色分量 1字節(jié)用于紅色分量 1字節(jié)用于填充符(設(shè)置為0) 對于24-位真彩色圖像就不使用彩色板,因為位圖中的RGB值就代表了每個象素的顏色。

41、 如,彩色板為00F8 0000 E007 0000 1F00 0000 0000 0000,其中: 00FB 0000為FB00h=1111100000000000(二進制),是紅色分量的掩碼。

42、 E007 0000為 07E0h=0000011111100000(二進制),是綠色分量的掩碼。

43、 1F00 0000為001Fh=0000000000011111(二進制),是紅色分量的掩碼。

44、 0000 0000總設(shè)置為0。

45、 將掩碼跟像素值進行“與”運算再進行移位操作就可以得到各色分量值。

46、看看掩碼,就可以明白事實上在每個像素值的兩個字節(jié)16位中,按從高到低取5、6、5位分別就是r、g、b分量值。

47、取出分量值后把r、g、b值分別乘以8、4、8就可以補齊第個分量為一個字節(jié),再把這三個字節(jié)按rgb組合,放入存儲器(同樣要反序),就可以轉(zhuǎn)換為24位標(biāo)準(zhǔn)BMP格式了。

48、 四、圖像數(shù)據(jù)陣列 17)17-...:每兩個字節(jié)表示一個像素。

49、陣列中的第一個字節(jié)表示位圖左下角的象素,而最后一個字節(jié)表示位圖右上角的象素。

50、 五、存儲算法 BMP文件通常是不壓縮的,所以它們通常比同一幅圖像的壓縮圖像文件格式要大很多。

51、例如,一個800×600的24位幾乎占據(jù)1.4MB空間。

52、因此它們通常不適合在因特網(wǎng)或者其它低速或者有容量限制的媒介上進行傳輸。

53、 根據(jù)顏色深度的不同,圖像上的一個像素可以用一個或者多個字節(jié)表示,它由n/8所確定(n是位深度,1字節(jié)包含8個數(shù)據(jù)位)。

54、圖片瀏覽器等基于字節(jié)的ASCII值計算像素的顏色,然后從調(diào)色板中讀出相應(yīng)的值。

55、更為詳細的信息請參閱下面關(guān)于位圖文件的部分。

56、 n位2n種顏色的位圖近似字節(jié)數(shù)可以用下面的公式計算: BMP文件大小約等于 54+4*2的n次方+(w*h*n)/8 ,其中高度和寬度都是像素數(shù)。

57、 需要注意的是上面公式中的54是位圖文件的文件頭,是彩色調(diào)色板的大小。

58、另外需要注意的是這是一個近似值,對于n位的位圖圖像來說,盡管可能有最多2n中顏色,一個特定的圖像可能并不會使用這些所有的顏色。

59、由于彩色調(diào)色板僅僅定義了圖像所用的顏色,所以實際的彩色調(diào)色板將小于。

60、 如果想知道這些值是如何得到的,請參考下面文件格式的部分。

61、 由于存儲算法本身決定的因素,根據(jù)幾個圖像參數(shù)的不同計算出的大小與實際的文件大小將會有一些細小的差別。

相信通過位圖文件的大小和位圖的大小這篇文章能幫到你,在和好朋友分享的時候,也歡迎感興趣小伙伴們一起來探討。

本文由用戶上傳,如有侵權(quán)請聯(lián)系刪除!

標(biāo)簽:

搶先讀

相關(guān)文章

熱文推薦

精彩放送

關(guān)于我們| 聯(lián)系我們| 投稿合作| 法律聲明| 廣告投放

版權(quán)所有© 2011-2023  產(chǎn)業(yè)研究網(wǎng)  m.www-332159.com

所載文章、數(shù)據(jù)僅供參考.本站不作任何非法律允許范圍內(nèi)服務(wù)!

聯(lián)系我們:39 60 29 14 2 @qq.com

皖I(lǐng)CP備2022009963號-13