s1091455 作業6
環境:
environment: Ubuntu 22.04
Language: Python 3.10.6
Package: openCV 4.7.0
題目說明:
附件中為三張利用將晶片高度以色彩視覺化後的圖片。
請設計一個基於 Run-Length 的壓縮法方,對圖檔作無失真壓縮後儲存成新檔案。
部落格上應敘述你的壓縮方法,提供壓縮檔之格式,並計算三張圖的平均壓縮率
(compression ratio)。
實作:
1. 首先將圖片分析,將其分為三個色素進行處理,如圖
2. 接著分別對 b, g, r 進行處理壓縮處理,以 RLE 的方式將重複的像素進行紀錄並以
(數量,像素值) 的方式進行儲存。 ex: [ 0,0,0,0,255,255 ] => [ (4,0), (2,255) ]
3. 分別將壓縮後的資料寫進檔案中,這邊使用 txt 檔紀錄。
4. 計算壓縮率及平均壓縮率。
5. 解壓縮的方式按照原理推回去就可以了。
結果展示:
留言
張貼留言