信源編碼(五)向量量化

2021-07-31 14:24:56 字數 1654 閱讀 2947

這個程式可以用來訓練向量量化器。使用lbg演算法獲得影象壓縮碼書,初始化使用linde,  buzo, and gray提出的分割方法。用作。這個專案可以  很長一段時間來執行特別是所需的大小  碼書很大。因此這是乙個好主意來執行  專案背景。

影象的尺寸可以由使用者指定或者由程式直接獲得。但是image_size只支援少量的影象標準,如果想要支援更多格式的檔案需通過編輯檔案image_size.c來實現。或者可以在執行時指定影象的尺寸(使用選項- x – y)。

1.      呼叫引數格式:

trvqsp_img ts_img codefile [-b cb_size] [ -t block_height][-w block_width] [-x row_size][-y col_size] [-h]

ts_img:是訓練影象,也即待量化壓縮的影象,假定為8位灰度級,使用光柵掃瞄順序儲存。

codefile:以二進位制格式存放碼書的檔案,有乙個包含12個位元組的檔案頭記錄:向量的維度,以及碼書的大小。

-b cb_size:碼書的大小

-t block_height:塊的高度(以畫素為單位)

-w block_width:塊的寬度(以畫素為單位)

實際上由block_width 、block_height決定著碼書向量的大小,也即每個輸出塊的大小。因此向量的維數是block_height *block_width。

-x row_size:輸入影象的寬

-y col_size:輸入影象的高

-h 幫助

2.      碼書構造流程

這個程式可以使用向量量化來壓縮影象。需使用trvqsp_img獲得的碼書檔案,碼書的大小以及碼塊的大小包含在指定的碼書檔案中。這個程式使用的是定長編碼,所以可以使用變長編碼來優化程式。如果沒有指定乙個輸出檔案則從命令框中輸出。

1.      呼叫格式:

vqimg_enc [

-i imagein

] [-o cmpfile] [-ccodebook] [-x row_size] [-y col_size] [-h]

-i imagein:輸入的待編碼的影象檔名

-o cmpfile:輸出的量化壓縮後的檔名

-c cmpfile:碼書檔案

-x row_size:輸入影象的寬

-y col_size:輸入影象的高

-h 幫助

2.      量化流程:

重建壓縮影象使用vqimg_enc。解碼需要提供碼書檔案,而碼書檔案則通過壓縮檔案的檔案頭提供其名稱,不需要人為輸入。影象是

8位灰度級影象,使用光柵掃瞄順序儲存。

1.      呼叫格式:

vqimg_dec[-i cmpfile] [-o imageout] [-h]

-icmpfile:壓縮檔案名

-oimageout:重建影象檔名

-h 幫助

2.      重構流程

信源編碼 向量量化演算法

1.向量量化的基本思想 將若干個標量資料組構成乙個向量,然後在 向量空間 給以整體量化,從而壓縮了資料而不損失多少資訊。向量量化引入的優點 高維空間處理可增加靈活性。2.向量量化最重要的點 碼本的生成。這裡介紹一種演算法 lbg演算法。lbg演算法的思想 1.隨意選取n個影象塊作為碼向量 2.由這n...

學習向量量化

與 k 均值演算法類似,學習向量量化 learning vector quantization,簡 稱 lvq 也是試圖找到一組原型向量來刻畫聚類結構,但與一般聚類演算法不同 的是,lvq 假設資料樣本帶有類別標記,學習過程利用樣本的這些監督資訊來 輔助聚類.可看作通過聚類來形成 類別 子類 結構,...

LVQ學習向量量化

現在已經2011年五月份了,今年的兩個多月幾乎沒什麼成果,想到水樣年華這個詞,額!總結過往,翹首未來,心中不免些許迷茫,程式設計師之路在何方?靡靡之音,不絕於耳,然何時我也能奏一首陽春白雪,不為流傳於世,只求一心靈安靜之所!lvq原理不再贅述,其本質可以看成是最近鄰分類,所謂競爭性神經網路,即把歐氏...