999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

行程編碼壓縮實驗

2016-05-14 22:12:41陳凱
中國信息技術教育 2016年9期
關鍵詞:符號

陳凱

行程編碼的原理很容易理解,在一幅圖像中,常常有連續出現相同顏色像素的情況,所以可以用一個數字值代表連續出現該顏色像素的個數,再用一個值代表顏色。舉一個簡單的例子,aaabbcccccdeee可以表示為3a2b5c1d3e,這里用一個ASCII碼的十進制數表示連續符號的個數,用另一個ASCII碼表示顏色,至于具體是什么顏色,當然還需要另外規定。本文以XPM格式的圖片作為行程編碼壓縮實驗的對象,這樣做的好處是:第一,因為XPM格式圖像是使用ASCII碼符號編制而成的,在實施壓縮實驗時,得以回避二進制數據的存儲問題;第二,在XPM圖像文件中,可規定不使用數字符號來代表顏色,這樣在解壓縮時就不會產生混淆,如888a一定代表了888個a,而不是8個“8”和8個“a”;第三,可以直接用寫字板觀察編碼調整的效果。

與上一期的文章一樣,本文仍使用二色的XPM格式的蒙娜麗莎圖片來做壓縮實驗,用寫字板打開XPM格式的蒙娜麗莎圖片文件,抽出《蒙娜麗莎》圖像文件點陣中的某一行來說明問題,其實與上一期文章所處理的數據完全相同:“`````````````````................``````..```.....````````````````````````````............................”(如圖1)。

但這次并不是純手工壓縮,而是要體驗計算機對數據自動化進行行程編碼的過程。例如,這串符號一開始是17個反引號,可以表示為“17`”,其后是16個點,可以表示為“16.”,以此類推,對應的行程編碼是“17`16.6` 2.3`5.28`28.”。那么,怎么才能讓計算機自動把17個反引號變成“17`”,把16個點變成“16.”呢?

● 最主流的方法——編寫程序

很容易想到,可以編寫一個計算機程序,將符號串轉化為行程編碼,完全自己編寫代碼有點耗時間,不過可以在rosettacode.org網站上搜索“Run-length_encoding”,找到各種主流程序語言下的行程編碼代碼。其中比較有意思的是Ruby語言,該語言本身就提供了行程編碼的函數,所以要編寫出行程代碼的程序,只需要寥寥數行(如圖2)。

如圖3所示,在Ruby語言環境中實現行程編碼,結果被保存在一個二維的數組中,www.tutorialspoint.com/execute_ruby_online.php網頁提供了在線運行Ruby的環境。

● 最偷懶的方法——網絡在線行程編碼生成器

比編寫程序更省事的辦法,是直接使用在線的編碼生成工具。例如,網址為www.mathcelebrity.com/runlencode.php的在線編碼生成工具,編碼速度可以說是秒殺級的(如圖4)。

甚至還可以使用一款叫做look and say的小游戲來幫助實現行程編碼,因為look and say的游戲規則其實和行程編碼完全一致,若想知道“look and say”是什么意思,不妨到http://www.se16.info/js/looknsay.htm網頁上在線玩一回。

● 最燒腦也最鍛煉思維的方法——借助電子表格

還可以借助電子表格。例如,用Excel將符號串轉化為行程編碼,具體實現的辦法有很多種,所謂八仙過海,各顯神通,十分具有探索性,下面筆者給出一個比較簡單的方法:①首先把整個符號串復制到Excel中的第一行第二列,即B1單元格,注意空出第一列;②在第二行第二列,即在B2單元格中輸入數字1,C2單元格中輸入2,利用Excel的自動填充功能,自動生成該行后續的自然數,多一些也沒關系;③在第三行第一列,即在A3單元格中輸入數字1;④在第三行第二列,即在B3單元格輸入公式“=IF(MID($B1,B2,1)=MID($B1,C2,1),A3+1,1)”,然后利用自動填充功能,自動生成該行后續單元格中的數據,公式的功能是判斷相鄰符號是否相同,如果相同則做累加,如不同則累加器清零;⑤在B4單元格中輸入公式“=IF(B3=1,A3&MID ($B1,B2,1),"")”,將后續單元格自動填充即可(如圖5);⑥此時電子表格的第五行數據,其實就是圖像的行程編碼,但這些編碼分散在電子表格的各列上。為了看得更清楚,可以將這一行數據復制粘貼到Word文檔中,最后實施合并單元格操作并用“查找”“替換”功能刪除段落符號后,就得到了圖像的行程編碼“17`16.6`2.3`5.28`28.”,這么一來,105個字節被壓縮到了僅有20個字節,效果相當明顯。

當然,利用電子表格,將以上行程編碼還原為原始圖像也完全沒有問題,有興趣的朋友可以自己試試。

猜你喜歡
符號
幸運符號
符號神通廣大
學符號,比多少
幼兒園(2021年6期)2021-07-28 07:42:14
“+”“-”符號的由來
靈魂的符號
散文詩(2017年17期)2018-01-31 02:34:20
怎樣填運算符號
變符號
倍圖的全符號點控制數
圖的有效符號邊控制數
草繩和奇怪的符號
主站蜘蛛池模板: 国产网站一区二区三区| 看看一级毛片| 欧美成人综合视频| 久久精品国产免费观看频道| 伊在人亚洲香蕉精品播放| 尤物午夜福利视频| 免费看a级毛片| 午夜不卡视频| 制服丝袜在线视频香蕉| 国产精品三级专区| 亚洲男人在线| 高清不卡一区二区三区香蕉| a毛片免费在线观看| 亚洲区一区| 伊伊人成亚洲综合人网7777| 成人毛片在线播放| 亚洲国产清纯| 五月天丁香婷婷综合久久| 欧美不卡视频一区发布| 亚洲一区二区无码视频| 精品三级网站| 亚洲中文字幕无码爆乳| 国产欧美精品一区二区| 欧美特黄一免在线观看| 无码国产伊人| 亚洲无线国产观看| 夜夜操国产| 国产午夜无码片在线观看网站| 福利在线不卡一区| 亚洲全网成人资源在线观看| 欧美区日韩区| 青青青草国产| 亚洲久悠悠色悠在线播放| 日韩精品无码免费专网站| 中国一级毛片免费观看| 99成人在线观看| www精品久久| 欧美日韩国产系列在线观看| 色屁屁一区二区三区视频国产| 超清无码一区二区三区| 亚洲国产成人精品青青草原| 日韩精品一区二区深田咏美| 国产成人1024精品下载| 成人中文在线| 美女毛片在线| 亚洲天堂久久| 成年人视频一区二区| 午夜福利视频一区| 国产麻豆精品久久一二三| 欧美日韩在线观看一区二区三区| 91小视频在线观看| 青草娱乐极品免费视频| 亚洲日本精品一区二区| 国产精品天干天干在线观看| 91精品伊人久久大香线蕉| 找国产毛片看| 国产免费a级片| 欧美成一级| 最新国产你懂的在线网址| 成人一级免费视频| 无码福利视频| 午夜a级毛片| 99久久国产综合精品女同| 日本国产精品一区久久久| 色婷婷亚洲十月十月色天| 无码一区二区三区视频在线播放| 久一在线视频| 内射人妻无码色AV天堂| 亚洲国产欧美国产综合久久| 久久亚洲中文字幕精品一区 | 国产免费怡红院视频| 亚洲欧洲自拍拍偷午夜色无码| 97se亚洲综合| 91精品国产一区| 国产中文一区a级毛片视频| 69免费在线视频| 国产在线观看第二页| 九九热视频精品在线| 久久国产拍爱| 国产精品伦视频观看免费| 免费三A级毛片视频| 亚洲国产成人麻豆精品|