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
















留言

這個網誌中的熱門文章

rzwang Homework #1

s1093350 Homework #2

s1081444 Homework #7