2012-12-02 36 views
3

我正在閱讀官方WebP lossless bitstream spec.,我有一種感覺,即文檔缺少一些解釋。WebP無損格式概述

讓我描述規範的一些片段:

1.簡介 - 明確

2. Riff的頭 - 明確

3.轉換

轉換僅用於對於主要級別的ARGB圖像: 子分辨率圖像沒有變換,甚至沒有指示 變換結束的0位。

早先沒有提到過,容器中容納了一些亞分辨率圖像。他們是什麼?他們在哪裏描述,如果不在規範中?如何將它們添加到最終圖片?

然後,在預測變換段:

我們將圖像分成方格......

..what形象? 主要圖像或子分辨率圖像?如果圖像不能被分成正方形(除了像素大小的正方形)?

預測數據的前4位以位數定義塊寬度和高度 。塊列的數量block_xsize在二維索引中用於 。

這是否意味着圖像寬度是block_xsize * block_width?

變換數據包含圖像的每個塊的預測模式。

以什麼方式,什麼格式?

我不知道爲什麼我很難理解這一點。也許是因爲我不是英語母語人士,或者因爲描述過於簡潔。

我會很感激在解碼本規範:)

回答

3

它是前面提到的任何幫助。就在文檔的頂部,它說:

的格式使用次辨析圖像,遞歸地嵌入到 格式本身,用於存儲關於圖像的統計數據,諸如 所使用的熵編碼,空間預測,顏色空間轉換, 和顏色表。

這些數據的陣列(或在顏色表的情況下的矢量),其中每個元件適用於像素的塊的實際圖像中,例如在一個16x16塊。這些「次分辨率圖像」本身不是被壓縮圖像的子樣本。

格式描述調用它們的圖像,因爲它們的存儲方式與主圖像格式完全相同。變換是解碼器應用於解壓縮的主圖像數據的指令。通過爲每個塊提供霍夫曼代碼,熵圖像被用於解壓縮主圖像。

+0

謝謝。是什麼讓這些陣列圖像?我的意思是 - 如果他們只持有統計數據,他們爲什麼是圖像?此外 - 如果這意味着需要在文件的最開始處定義的變換對主圖像進行編碼,那麼對lz77編碼的主圖像或解碼圖像進行變換*變換? – Queequeg

+0

最後一件事:應該按照在文件中找到的順序應用轉換還是按相反順序應用轉換? – Queequeg

+1

逆轉換應該按照它們在文件中出現的順序進行反轉。 –