s1101421 Homework #5

1122 Digital Image Processing Assignment #5 報告

                              學號:s1101421 姓名:陳昱翔 

主題:

Run-Length Based Image Compression 影像壓縮練習

專案目標:

   程式需使用基於Run-length的壓縮方法,對圖檔作無失真壓縮後計算壓縮率並將圖片輸出給使用者,使用者可以自己決定要壓縮什麼圖片,並且一次壓縮三張。

 

開發平台:Microsoft Windows 11, Visual Studio Code, OpenCV 4.90, Python 

功能說明:

1.    使用者須輸入要壓縮的三張圖片檔名。



2.    程式會開始壓縮並計算壓縮率。



3.    輸出壓縮後的三張圖片。




程式架構

1.    讓使用者輸入圖片檔名後,用迴圈存取圖片送至相對應的function壓縮。

2.    我分別設計三個function : encode_run_lengthcompressdecompress,分別處理壓縮與解壓縮。

3.       encode_run_length :

這個函數對給定的數據進行 Run-Length 編碼,將連續相同的像素值和它們的像素數量進行壓縮。

4.    compress :

這個函數對給定的圖像進行壓縮,將每個通道的數據進行 Run-Length 編碼後寫入文件。同時計算原始圖像和壓縮文件的大小,並返回壓縮比。

5.    decompress :

這個函數對給定的壓縮文件進行解壓縮,讀取文件中的數據並根據 Run-Length 編碼生成原始圖像數據。然後將這些數據轉換為圖像,並返回。

留言

這個網誌中的熱門文章

rzwang Homework #1

s1093350 Homework #2

s1061637 作業6