s1071452 Homework#5
學號: s1071452 姓名: 熊震
主題: Run-Length Based Image Compression 影像壓縮練習
專案目標:
撰寫一個OpenCV程式,可以讓使用者將讀取輸入的影像以基於Run-Length的壓縮方法進行無失真壓縮並存檔
Run-Length encoding是基於變動長度來取代連續重複出現的原始資料,適合用於壓縮重複性高的資料
假設原始資料為: aaaaabbbbccccdddeef
壓縮後資料為: a5b4c4d3e2f1
開發環境:
Windows11,
Visual Studio 2022, OpenCV-4.9.0, C++
程式架構及說明:
1.
首先讀取目標圖片
2.
將圖片資料分成三個channel(BGR)
3.
對三個channel的資料進行Run-Length方法的壓縮
4.
儲存壓縮檔案並計算圖片壓縮率
5.
讀取以儲存的壓縮檔案並復原成原圖片後儲存
成果展示與討論:
Compression ratio = (0.15 + 0.24 + 0.14) /
3 = 0.17
留言
張貼留言