2022年6月1日 星期三

s1081528 作業6

 作業說明

附件中為三張利用將晶片高度以色彩視覺化後的圖片。

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

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

開發環境

  • Windows 11
  • Visual Studio Code
  • Anaconda 4.11.0
  • OpenCV 4.5.5

程式說明

I. 壓縮
      i. 用imread讀取檔案後,以spilt()將RGB通道分開
     ii. 使用flatten(),將二維變成一維
    iii. 用RLE這個function,分別對R、G、B通道進行處理,再把三通道壓縮後的資料放在一起,並變成tif檔



II. 解壓縮
    用RLE_decode這個function解壓縮,使用reshape將三通道復原,並用merge合併,得出無失真圖檔


III. 平均壓縮率
個別算出圖檔的壓縮率,最後相加並平均,得出平均壓縮率

實作結果

解壓縮後的圖檔




各圖的壓縮率與平均壓縮率


沒有留言:

張貼留言