亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? chapter4.htm

?? 數據壓縮教程!
?? HTM
?? 第 1 頁 / 共 2 頁
字號:
<p>你一定已經想到,如果信息內容特別豐富,我們要輸出的小數將會很長很長,我們該如何在內存中表示如此長的小數呢?</p><p>其實,沒有任何必要在內存中存儲要輸出的整個小數。我們從上面的例子可以知道,在編碼的進行中,我們會不斷地得到有關要輸出小數的各種信息。具體地講,當我們將區間限定在0.6390 - 0.6501之間時,我們已經知道要輸出的小數第一位(十進制)一定是6,那么我們完全可以將 6從內存中拿掉,接著在區間 0.390 - 0.501之間繼續我們的壓縮進程。內存中始終不會有非常長的小數存在。使用二進制時也是一樣的,我們會隨著壓縮的進行不斷決定下一個要輸出的二進制位是0 還是 1,然后輸出該位并減小內存中小數的長度。</p><p><strong>靜態模型如何實現?</strong></p><p>我們知道上面的簡單例子采用的是自適應模型,那么如何實現靜態模型呢?其實很簡單。對信息bccb 我們統計出其中只有兩個字符,概率分布為 Pb= 0.5,Pc = 0.5。我們在壓縮過程中不必再更新此概率分布,每次對區間的劃分都依照此分布即可,對上例也就是每次都平分區間。這樣,我們的壓縮過程可以簡單表示為:</p><pre>               輸出區間的下限      輸出區間的上限-------------------------------------------------- 壓縮前           0.0                1.0 輸入 b           0.0                0.5 輸入 c           0.25               0.5 輸入 c           0.375              0.5 輸入 b           0.375              0.4375</pre><p>我們看出,最后的輸出區間在 0.375 - 0.4375之間,甚至連一個十進制位都沒有確定,也就是說,整個信息根本用不了一個十進制位。如果我們改用二進制來表示上述過程的話,我們會發現我們可以非常接近該信息的熵值(有的讀者可能已經算出來了,該信息的熵值為4 個二進制位)。</p><p><strong>為什么用自適應模型?</strong></p><p>既然我們使用靜態模型可以很好地接近熵值,為什么還要采用自適應模型呢?</p><p>要知道,靜態模型無法適應信息的多樣性,例如,我們上面得出的概率分布沒法在所有待壓縮信息上使用,為了能正確解壓縮,我們必須再消耗一定的空間保存靜態模型統計出的概率分布,保存模型所用的空間將使我們重新遠離熵值。其次,靜態模型需要在壓縮前對信息內字符的分布進行統計,這一統計過程將消耗大量的時間,使得本來就比較慢的算術編碼壓縮更加緩慢。</p><p>另外還有最重要的一點,對較長的信息,靜態模型統計出的符號概率是該符號在整個信息中的出現概率,而自適應模型可以統計出某個符號在某一局部的出現概率或某個符號相對于某一上下文的出現概率,換句話說,自適應模型得到的概率分布將有利于對信息的壓縮(可以說結合上下文的自適應模型的信息熵建立在更高的概率層次上,其總熵值更小),好的基于上下文的自適應模型得到的壓縮結果將遠遠超過靜態模型。</p><p><strong>自適應模型的階</strong></p><p>我們通常用“階”(order)這一術語區分不同的自適應模型。本章開頭的例子中采用的是0 階自適應模型,也就是說,該例子中統計的是符號在已輸入信息中的出現概率,沒有考慮任何上下文信息。</p><p>如果我們將模型變成統計符號在某個特定符號后的出現概率,那么,模型就成為了1 階上下文自適應模型。舉例來說,我們要對一篇英文文本進行編碼,我們已經編碼了10000 個英文字符,剛剛編碼的字符是 t,下一個要編碼的字符是h。我們在前面的編碼過程中已經統計出前 10000個字符中出現了 113 次字母 t,其中有 47 個 t 后面跟著字母h。我們得出字符 h 在字符 t 后的出現頻率是 47/113,我們使用這一頻率對字符h 進行編碼,需要 -log<sub>2</sub>(47/113) = 1.266 位。</p><p>對比 0 階自適應模型,如果前 10000 個字符中 h的出現次數為 82 次,則字符 h 的概率是 82/10000,我們用此概率對h 進行編碼,需要 -log<sub>2</sub>(82/10000) = 6.930位。考慮上下文因素的優勢顯而易見。</p><p>我們還可以進一步擴大這一優勢,例如要編碼字符h 的前兩個字符是 gt,而在已經編碼的文本中 gt后面出現 h 的概率是 80%,那么我們只需要 0.322位就可以編碼輸出字符 h。此時,我們使用的模型叫做2 階上下文自適應模型。</p><p>最理想的情況是采用 3階自適應模型。此時,如果結合算術編碼,對信息的壓縮效果將達到驚人的程度。采用更高階的模型需要消耗的系統空間和時間至少在目前還無法讓人接受,使用算術壓縮的應用程序大多數采用2 階或 3 階的自適應模型。</p><p><strong>轉義碼的作用</strong></p><p>使用自適應模型的算術編碼算法必須考慮如何為從未出現過的上下文編碼。例如,在1 階上下文模型中,需要統計出現概率的上下文可能有256 * 256 = 65536 種,因為 0 - 255的所有字符都有可能出現在 0 - 255個字符中任何一個之后。當我們面對一個從未出現過的上下文時(比如剛編碼過字符b,要編碼字符 d,而在此之前,d 從未出現在 b的后面),該怎樣確定字符的概率呢?</p><p>比較簡單的辦法是在壓縮開始之前,為所有可能的上下文分配計數為1 的出現次數,如果在壓縮中碰到從未出現的 bd組合,我們認為 d 出現在 b 之后的次數為 1,并可由此得到概率進行正確的編碼。使用這種方法的問題是,在壓縮開始之前,在某上下文中的字符已經具有了一個比較小的頻率。例如對1 階上下文模型,壓縮前,任意字符的頻率都被人為地設定為1/65536,按照這個頻率,壓縮開始時每個字符要用16位編碼,只有隨著壓縮的進行,出現較頻繁的字符在頻率分布圖上占據了較大的空間后,壓縮效果才會逐漸好起來。對于2 階或 3 階上下文模型,情況就更糟糕,我們要為幾乎從不出現的大多數上下文浪費大量的空間。</p><p>我們通過引入“轉義碼”來解決這一問題。“轉義碼”是混在壓縮數據流中的特殊的記號,用于通知解壓縮程序下一個上下文在此之前從未出現過,需要使用低階的上下文進行編碼。</p><p>舉例來講,在 3階上下文模型中,我們剛編碼過 ght,下一個要編碼的字符是a,而在此之前,ght 后面從未出現過字符 a,這時,壓縮程序輸出轉義碼,然后檢查2 階的上下文表,看在此之前 ht 后面出現 a的次數;如果 ht 后面曾經出現過 a,那么就使用 2階上下文表中的概率為 a編碼,否則再輸出轉義碼,檢查 1 階上下文表;如果仍未能查到,則輸出轉義碼,轉入最低的0 階上下文表,看以前是否出現過字符 a;如果以前根本沒有出現過a,那么我們轉到一個特殊的“轉義”上下文表,該表內包含0 - 255 所有符號,每個符號的計數都為 1,并且永遠不會被更新,任何在高階上下文中沒有出現的符號都可以退到這里按照1/256 的頻率進行編碼。</p><p>“轉義碼”的引入使我們擺脫了從未出現過的上下文的困擾,可以使模型根據輸入數據的變化快速調整到最佳位置,并迅速減少對高概率符號編碼所需要的位數。</p><p><strong>存儲空間問題</strong></p><p>在算術編碼高階上下文模型的實現中,對內存的需求量是一個十分棘手的問題。因為我們必須保持對已出現的上下文的計數,而高階上下文模型中可能出現的上下文種類又是如此之多,數據結構的設計將直接影響到算法實現的成功與否。</p><p>在 1階上下文模型中,使用數組來進行出現次數的統計是可行的,但對于2 階或 3階上下文模型,數組大小將依照指數規律增長,現有計算機的內存滿足不了我們的要求。</p><p>比較聰明的辦法是采用樹結構存儲所有出現過的上下文。利用高階上下文總是建立在低階上下文的基礎上這一規律,我們將0 階上下文表存儲在數組中,每個數組元素包含了指向相應的1 階上下文表的指針,1階上下文表中又包含了指向 2 階上下文表的指針……由此構成整個上下文樹。樹中只有出現過的上下文才擁有已分配的節點,沒有出現過的上下文不必占用內存空間。在每個上下文表中,也無需保存所有256 個字符的計數,只有在該上下文后面出現過的字符才擁有計數值。由此,我們可以最大限度地減少空間消耗。</p><p><strong>資源</strong></p><p>關于算術壓縮具體的設計和實現請參考下面給出的示例程序。</p><p>程序 Arith-N 由 League for Programming Freedom 的 MarkNelson 提供,由王笨笨在 Visual C++ 5.0環境下編譯、調試通過。</p><p>Arith-N 包含 Visual C++ 工程 ArithN.dsp 和ArithNExpand.dsp,分別對應了壓縮和解壓縮程序 an.exe與 ane.exe。</p><p>Arith-N 是可以在命令行指定階數的 N階上下文自適應算術編碼通用壓縮、解壓縮程序,由于是用作教程示例,為清晰起見,在某些地方并沒有刻意進行效率上的優化。</p><p>所有源程序包裝在文件 <a href="src/arith-n.zip">arith-n.zip</a>中。</p><p> </p><div align="center"><center><address>    <a href="Chapter3.htm">第三章</a> <a href="Chapter5.htm">第五章</a></address></center></div><p align="center"> </p><div align="right"><address>    <a href="mailto:wangyg@contextfree.net">有問題嗎?有建議嗎?快給王笨笨寫信</a></address></div><div align="right"><address>    <strong>章節書簽:</strong><a href="default.htm">前言</a>    <a href="content.htm">目錄</a> <a href="Chapter1.htm">1</a>    <a href="Chapter2.htm">2</a> <a href="Chapter3.htm">3</a> <a    href="Chapter4.htm">4</a> <a href="Chapter5.htm">5</a> <a    href="Chapter6.htm">6</a> <a href="Chapter7.htm">7</a> <a    href="Chapter8.htm">8</a> <a href="Chapter9.htm">9</a> <a    href="Chapter10.htm">10</a> <a href="Chapter11.htm">11</a> <a    href="Chapter12.htm">12</a> </address></div></body></html>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产激情视频一区二区三区欧美| 在线区一区二视频| 99精品久久只有精品| 7777精品久久久大香线蕉 | 性久久久久久久久| 日本欧美加勒比视频| 国产成人av电影在线观看| 欧美在线啊v一区| 日本一区二区视频在线| 日韩1区2区3区| 在线日韩av片| 亚洲欧美aⅴ...| 国产成人一区在线| 欧美一级精品在线| 日韩精品色哟哟| 欧美在线观看一二区| 自拍偷拍国产亚洲| 99re在线视频这里只有精品| 久久久www免费人成精品| 日韩精品色哟哟| 欧美日本韩国一区二区三区视频| 一区二区在线电影| 国产午夜精品福利| 久久综合九色综合97婷婷女人| 成人欧美一区二区三区在线播放| 久久99热99| 欧美一区二区成人| 美女诱惑一区二区| 欧美刺激脚交jootjob| 日韩va亚洲va欧美va久久| 欧美在线视频你懂得| 亚洲小说欧美激情另类| 日本高清无吗v一区| 亚洲乱码精品一二三四区日韩在线 | 麻豆久久久久久久| 日韩三级.com| 久久国产精品99久久人人澡| 欧美成人精品福利| 国产在线一区观看| 欧美激情在线看| 日韩一二在线观看| 日韩欧美精品三级| 日韩av网站在线观看| 欧美一区二区黄色| 国内成+人亚洲+欧美+综合在线| 欧美成人vps| 国产精品自拍毛片| 亚洲人成精品久久久久久| 一本大道av一区二区在线播放| 亚洲欧美日韩国产综合在线| 欧美优质美女网站| 久久精品久久综合| 国产女人aaa级久久久级| 成人午夜电影小说| 亚洲午夜电影在线观看| 欧美成人激情免费网| 福利91精品一区二区三区| 国产精品伦理在线| 欧美在线你懂得| 久久99精品久久久久婷婷| 欧美国产精品专区| 欧美色综合久久| 欧美日韩一区二区三区四区 | 久久综合丝袜日本网| 国产白丝网站精品污在线入口| 亚洲视频一区在线观看| 欧美性做爰猛烈叫床潮| 久久成人免费电影| 亚洲精品视频一区| 精品国精品国产| 欧洲一区二区三区免费视频| 紧缚奴在线一区二区三区| 中文字幕在线观看不卡| 欧美一区二区在线免费播放| 懂色中文一区二区在线播放| 日韩福利电影在线观看| 国产精品视频线看| 日韩一区二区电影| 色美美综合视频| 精品在线播放午夜| 亚洲二区在线视频| 国产精品天美传媒| 久久久久久久综合狠狠综合| 欧美一区二区美女| 国产激情视频一区二区在线观看| 夜夜亚洲天天久久| 久久精品人人做人人爽人人| 欧美精品1区2区| 91视视频在线观看入口直接观看www | 亚洲综合在线五月| 日本一区二区三区国色天香| 欧美精品视频www在线观看| caoporn国产一区二区| 极品销魂美女一区二区三区| 亚洲第一精品在线| 亚洲欧美国产77777| 国产精品久久夜| 久久亚洲影视婷婷| 五月综合激情网| 色噜噜狠狠成人网p站| 麻豆久久久久久| 一区二区三区久久| 国产精品免费久久久久| 26uuu欧美| 日韩一区二区在线播放| 欧美日韩亚洲综合在线 | 亚洲高清三级视频| 亚洲日本韩国一区| 中文字幕一区二区三区不卡在线| 久久久国际精品| 精品国产污污免费网站入口| 欧美一区二区视频在线观看2022| 欧美性猛交xxxx乱大交退制版 | 国产电影一区在线| 国产一区二区久久| 亚洲国产毛片aaaaa无费看| 国产午夜精品福利| 欧美国产综合色视频| 久久精品视频网| 中文一区在线播放| 国产精品国产三级国产普通话99 | 成人18精品视频| 成人av午夜电影| 欧美精品久久天天躁| 欧美日韩性生活| 91精品国产91综合久久蜜臀| 91精品国产综合久久香蕉麻豆| 欧美夫妻性生活| 久久女同互慰一区二区三区| 国产亚洲成av人在线观看导航| 欧美激情中文字幕一区二区| 中文字幕亚洲在| 亚洲一区二区在线视频| 日韩国产在线一| 极品瑜伽女神91| 99久久婷婷国产综合精品电影| 日本韩国欧美在线| 91精品国产aⅴ一区二区| 久久精品视频一区二区| 亚洲精品美腿丝袜| 日韩福利电影在线| 高清国产一区二区| 日本二三区不卡| 日韩欧美国产电影| 国产精品毛片高清在线完整版 | 美国欧美日韩国产在线播放| 国产一区二区三区久久悠悠色av| 成人污视频在线观看| 欧美中文字幕一区二区三区亚洲| 日韩一区二区三区视频在线| 国产欧美一区二区三区在线老狼| 亚洲视频小说图片| 麻豆久久久久久| 色婷婷亚洲综合| 欧美精品一区二区久久久| 亚洲另类在线制服丝袜| 麻豆精品一区二区| 色屁屁一区二区| 久久看人人爽人人| 亚洲国产精品久久不卡毛片| 国产福利一区在线| 欧美色网一区二区| 中文无字幕一区二区三区| 日韩黄色小视频| 一本大道久久a久久精品综合| 久久综合99re88久久爱| 亚洲成人精品一区| 成人av在线资源网站| 精品国产乱码久久久久久夜甘婷婷 | 国产精品99久| 欧美精品乱码久久久久久| 国产精品高潮久久久久无| 美女网站视频久久| 欧美日韩另类一区| 亚洲美女淫视频| 成人午夜激情影院| 久久夜色精品国产噜噜av| 日韩精品五月天| 欧美网站大全在线观看| 日韩美女视频19| 成人久久久精品乱码一区二区三区 | 国产欧美日韩久久| 国内精品免费**视频| 日韩欧美在线综合网| 亚洲一区二区三区视频在线播放 | 精品精品国产高清一毛片一天堂| 亚洲国产精品久久久久婷婷884 | 日本一区二区成人在线| 久久超碰97中文字幕| 日韩一级高清毛片| 日韩制服丝袜先锋影音| 精品视频999| 一区二区国产盗摄色噜噜| aaa欧美日韩| 国产精品成人网| 91免费版pro下载短视频| 成人欧美一区二区三区小说 | 久久精品99国产精品| 欧美一二区视频| 精品一区二区三区久久久|