- 作業說明
設計一個基於Run-Length的壓縮法方,對圖檔作無失真壓縮後儲存成新檔案。
提供壓縮方法、壓縮檔之格式,並計算三張圖的平均壓縮率(compression
ratio)。
- 開發環境
Windows 10
Visual Studio 2017
OpenCV - 4.5.0
- 實作方式
讀取圖檔,依據圖片大小將所有像素的R G B三個通道分別存在陣列中。依序做Run-Length encoding,紀錄連續顏色的數值及連續的數量,將這兩個值為一組存入新陣列中。將新陣列中的值和圖檔的長與寬一起寫入txt檔。最後用原本的圖檔檔案大小除以壓縮檔大小來計算壓縮率。解碼還原的方式為,用壓縮檔裡面的資料,以壓縮的原理還三個顏色通道的值,再合併為一張圖,即可得到無失真影像。
- 結果
平均壓縮率: ( 2.46887428858+1.43345137639+2.69067086354)/3 = 2.19766550932
沒有留言:
張貼留言