s1101327 Homework #3

 

1122 Digital Image Processing Assignment #3 報告

學號:1101327   姓名:柯翔崴

主題傅立葉轉換與影像復原處理

專案目標:

阿發與貝塔因被貨車撞而穿越到了異世界,並拍攝回兩張照片傳給嘎瑪。由於影像在傳遞過程受到雜訊干擾,使得圖片出現些許橫紋線條似的雜訊,嘎瑪希望使用所學的頻域濾波技術對這張影像進行處理,盡可能地恢復照片原始狀態呈現較清晰的景物,以便將照片刊登在著名的CS362異世界冒險雜誌上。

 

開發平台:Microsoft Windows 10, Visual Studio Code, OpenCV 4.9.0, numpy 1.16.4, matplotlib 3.8.4, Python 3.9.18

 

程式架構與功能說明:

Assignment1資料夾內含有codeimageres等資料夾,code為存放此專案的程式碼(main.py)image內放入所有想處理的圖像檔;res為存放修復後的圖像。



        程式碼的主要原理是利用傅立葉變換將圖像轉換為頻率域表示,然後通過低通濾波器過濾掉高頻部分,最終將處理後的頻率域表示轉換回圖像域。這樣可以去除圖像中的高頻雜訊,從而達到圖像平滑和去噪的效果。

 


1.      低通濾波器函數(LPF_processing):這個函數用於將原始圖像中的高頻部分過濾掉,設計出一個低通濾波器。該函數使用傅立葉變換將圖像轉換為頻率域表示形式,然後應用一個mask以過濾掉高頻部分,最後使用反傅立葉變換將處理後的頻率域表示轉換回圖像域並回傳。

2.      主程式:在主程式中,首先要求使用者輸入圖像的檔名,接著讀取該張圖像,並將其轉換為灰度圖像。接著,進行傅立葉轉換得到振幅頻譜(Magnitude Spectrum)和相位頻譜(Phase Spectrum),然後將原始圖像通過低通濾波器函數進行處理,得到過濾後的圖像,並透過中值濾波器將圖像去噪,最後利用 Matplotlib 在一個畫布中顯示原始圖像、振幅頻譜、相位頻譜以及過濾後的圖像。

 

成果展示與討論:

範例一:



範例二:



 

範例三:



 

 

影片:


 

留言

這個網誌中的熱門文章

rzwang Homework #1

s1093350 Homework #2

s1091537 Homework #1