opencv圖像分析與處理(16)- 圖像壓縮中的編碼方法:LZW編碼

本節爲opencv數字圖像處理(15):圖像壓縮的第二小節,圖像壓縮中的編碼方法:LZW編碼,主要包括:LZW編解碼實例與實現代碼

  這種編碼目的在於消除圖像中的空間冗餘,是一種無誤差的壓縮方法,其將定長碼字分配給邊長新源符號序列。考慮一個大小爲4×44\times 4的8比特垂直邊緣圖像:
在這裏插入圖片描述
  假設有一個大小爲512字帶有0-255灰度值一一映射的字典,位置256到511開始時未使用。圖像按從左到右、從上到下處理像素的方法來編碼,十六個像素的編碼過程如下表所示:
在這裏插入圖片描述
  也就是說上面的十六個像素39 39 126 126 39 39 126 126 39 39 126 126 39 39 126 126被編碼爲39 39 126 126 256 258 260 259 257 126,最終字典新增加了9條規則。
  LZW解碼比編碼複雜,考慮上面的問題我們有編碼序列39 39 126 126 256 258 260 259 257 126,字典只有原始的沒有更新規則前的,即大小爲512字帶有0-255灰度值一一映射的字典,位置256到511未使用。解碼步驟如下:
在這裏插入圖片描述
  另外,在多數實際應用中,需要處理字典溢出的策略,最簡單的方法就是字典已滿時刷新或重新初始化該字典,並使用一個新初始化後的字典繼續編碼。較爲複雜的策略可以是監控壓縮性能,性能低下時刷新字典,需要時,可以跟蹤並替換使用最少的字典詞條。


歡迎掃描二維碼關注微信公衆號 深度學習與數學   [每天獲取免費的大數據、AI等相關的學習資源、經典和最新的深度學習相關的論文研讀,算法和其他互聯網技能的學習,概率論、線性代數等高等數學知識的回顧]
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章