huffman-code

    0熱度

    3回答

    使用霍夫曼編碼,我們只需生成符號 - >代碼的映射。然後,當運行長度編碼時,我們使用該映射與代碼交換符號。這允許將代碼與我們不想編碼/壓縮的一些其他符號輕鬆混合。例如,在JPEG中,我們編碼[前面的零的數量,AC係數的位數],並將其放入比特流,然後是AC係數比特表示。這是霍夫曼編碼的一個非常方便的特性。 現在我想問的是,如果這可以做與算術編碼類似的東西(在不對稱數字系統的情況下導致這就是我正在實施

    1熱度

    1回答

    我有一個實現霍夫曼編碼來編碼文本的代碼。 鑑於以下文本 abbccc 我的程序產生如下表 a -> 00 b -> 01 c -> 1 所以編碼文本(位陣列)是 000101111 問題是:我需要將表格與文本一起編碼,我不知道這是什麼建議的方法。 我至今認爲: 第一個字節是在表 鍵值對繼N * N的數目2個字節的鍵值對自己(關鍵一個字節爲值,一個字節) 其餘位編碼的文本本身 你可以建議

    0熱度

    1回答

    我一直在研究Huffman項目。幾乎完成了,現在我唯一需要做的就是存儲在輸出文件中。這是我的解碼功能。 void decode(struct Node * root, int * encodeString) { int i; struct Node * temp = root; for (i = 0; encodeString[i] != -1; i++) {

    1熱度

    2回答

    即時通訊思想使用Huffman編碼,使一個應用程序,從iPhone相機拍攝照片的權利,並壓縮它拍攝的圖像。硬件能夠處理複雜的計算和構建樹嗎?換句話說,它是可行的嗎? 謝謝

    0熱度

    1回答

    識別更多可壓縮數據集,這可能是這裏的問題的重複:Predict Huffman compression ratio without constructing the tree 所以基本上,我有兩個數據集具有相同的變量,但不同的概率概率分佈。現在,有沒有辦法通過查看變量分佈,我可以在某種程度上自信地說數據集在通過霍夫曼編碼實現後會獲得比另一個更高的壓縮比? 我遇到的解決方案之一是使用條件熵計算上限,

    0熱度

    2回答

    你能否解釋一下如何從lz77轉換成huffman的例子,如下圖所示?

    0熱度

    1回答

    我有一個編碼序列的程序,即用霍夫曼方法創建碼字。 我需要對樹本身進行編碼,其中node = 0,leaf = 1。它應該像一個二進制堆,我猜,其中第一個元素(0)表示它有2個孩子,接下來的兩個元素(例如00)每個都有兩個孩子,接下來的四個(10 00) - 有一個葉子和3個非葉孩子等 我有一個給定序列的結果,但我不知道如何得到它。 function [ ] = encodeTwoPassHuff(

    1熱度

    1回答

    我創建了霍夫曼編碼算法,該算法爲給定的一組符號及其pmf創建哈夫曼樹。我的alogrithm使用我自己的Node類,它具有實例變量string symbol,float probability,list children,string code。 def print_codes(root): for child in root.children: # Iterate thr

    -1熱度

    1回答

    我有一個類似霍夫曼編碼的問題,我不確定它是如何解決的,或者它是否是霍夫曼逆編碼。但它肯定可以用貪婪的方法解決。 考慮一組長度,每個長度都與一個概率相關聯。即 X={a1=(100,1/4),a2=(500,1/4),a3=(200,1/2)} 顯然,各個概率之和= 1 排列長度上一起從起點後,其他的線之一。 例如:{a2,a1,a3}從開始到結束的順序。 將元素a_i的成本定義爲從起始行到該元

    0熱度

    1回答

    我想實現一個放氣壓縮機和我必須決定使用靜態Huffman編碼是否 壓縮塊,或者創建一個動態的。 什麼是靜態代碼相關聯的長度背後的原理是什麼? (這是包含在RFC表) Lit Value Bits --------- ---- 0 - 143 8 144 - 255 9 256 - 279 7 280 - 287 8 我認爲靜態代碼是朝着純ASCII文本更偏,而是 看起來更喜歡通過一點點的RLE長度