看板 CSSE 關於我們 聯絡資訊
※ 引述《jmren (學生)》之銘言: : ※ 引述《jmren (學生)》之銘言: : : 請問各位先進 : : 有人使用過以bit為單位的現成無失真compressor嗎 : : 網路上找到的大部份都是以byte為單位...囧 : : 感謝^^" : 應該說現在假如有0001110010100001110010101010等bit 字串 : 現成的compressor都是以byte為單位下去壓縮 : 所以想問說 : 有那種以bit為基準的去壓縮的嗎... 很多壓縮法都是用字典的方式. 那字典是由很多個字組成, 字是由很多個字母組成. 那你把0和1當成字母, 然後再由這些字母找出字, 然後用這些字去組一個字典. 所以現在很多的壓縮的演算法都可以套用, 只是要自己改code而已......把Byte的operation變成bit的operation XD -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.230.125
jmren:和老師說的不謀而合,正在努力coding LZW...囧 05/10 00:44
jmren:只是問問有沒有人會sparse matrix的壓縮法...沒有那就算了 05/10 00:49
幫你做實驗, 加強你的信心. XD 我用rand()產生資料 (25%為1, 75%為0) bit-1.txt是每一個bit為一筆資料. bit-8.txt是每一個byte為一筆資料, 資料只有"0"和"1"兩種. 16384 bit-1.txt 131072 bit-8.txt 15222 bit-1.txt.bz2 15222/16384 =92.9% 16699 bit-8.txt.bz2 16699/131072=12.74% 所以......還是努力coding吧. :P ※ 編輯: gwliao 來自: 140.112.230.125 (05/10 00:55) ※ 編輯: gwliao 來自: 140.112.230.125 (05/10 00:55)
jmren:bz2是什麼壓縮法,竟然比LZMA還厲害...QQ 05/10 01:12
jmren:呵,這實驗我已經做了n次了...QQ,8byte是12.5%,1bit是84% 05/10 01:14
jmren:但還是感謝你的熱心回應喲:) 05/10 01:14
WalkingIce:bz2 --> bzip2 ?? http://www.bzip.org/ 05/10 01:49
reader:bz2 是使用 BWT 的壓縮法, 請參考 #66 05/10 02:19
jmren大哥, 你會錯意了. 我想表達的是.......原本的壓縮法對你的資料其實是很有用的. ( 只是要將byte operation改成bit operation. XD ) 而不是哪個壓縮法很有用. 實際試一下, 發現.....這些方法是很不錯. :) 再秀一些資料. gz表示用gzip壓, 7z......你應該知道. XD (gzip -9) 13743 bit-1.txt.gz 83.88% 17392 bit-8.txt.gz 13.26% (7z, 64Mb, 48 Bit) 14054 bit-1.txt.7z 85.78% 15774 bit-8.txt.7z 12.03% ※ 編輯: gwliao 來自: 140.112.230.125 (05/10 08:06)
jmren:感謝感謝^^",但是其實那個以byte為單位存檔後再壓縮,他的 05/10 09:08
jmren:壓縮率不能這樣算喲,因為原始資料只有131072bits,把每個 05/10 09:09
jmren:bit改成byte下去存,所以變成131072byte,再拿去壓縮,故壓 05/10 09:11
jmren:縮率應該是15774*8(bits) / 131072 (bits),是96.27% :) 05/10 09:11
gwliao:我知道, 所以我說"這實驗是加強信心用的" XD 05/10 09:12
jmren:上述分母是原始資料大小,而分子則是你壓縮結果:) 05/10 09:13
gwliao:只是秀一下, 假如你的資料是以byte的形式出現的話 05/10 09:14
gwliao:可以能壓多少. 05/10 09:15
jmren:soga...呵,很感謝你熱心幫我^^" 05/10 09:15
gwliao:那些演算法都是以byte為單位撰寫, 所以把你的data也用 05/10 09:16
gwliao:data也用來表現, 試試現有的方法的表現, 用以估計... 05/10 09:16
gwliao:用以估計那個程式是不是要寫下去. XD 所以是加強信心. 05/10 09:17
gwliao:這麼有少字....Orz data也用"byte"來表現, 05/10 09:18