2022年5月26日 星期四

s1083332 作業6

一、 作業說明

    請設計一個基於Run-Length的壓縮方法,對圖檔作無失真壓縮後儲存成新檔案。

    部落格上應敘述你的壓縮方法,提供壓縮檔之格式,並計算三張圖的平均壓縮率。 

二、 開發環境

Windows 10

Python 3.9.7

OpenCV - 4.5.5

三、 實作方法

        1. 讀入圖片,並利用split(),分成r, g, b channel

        2. 將各個channel降成一維

        3. 利用Run-Length方法,得到最新壓縮後的資料(img_color, data_color)

        4. 利用原資料與最新資料計算每張圖的壓縮率及平均壓縮率

        5. 將壓縮後的資料解壓縮,得到原圖 (無失真)

四、 執行結果

    

compression ratio

output_img1.bmp

output_img2.bmp
      

output_img3.bmp

沒有留言:

張貼留言