s1093320 作業4

 1.題目敘述:

    附件中的image4 似乎受到某種頻域雜訊干擾,撰寫一個程式嘗試復原此圖像(將圖中雜訊去除)。

2.開發環境:

python 3.11.1

opencv 4.6.0

vscode

win10

3.實作方法:

1. 先進行傅立葉轉換並center。

2. 計算出頻譜並normalize,轉格式。

3. 將頻譜圖進行二值化,這裡取高於185的

4. 後面使用mask把中心亮光處去掉,會出現下圖



5. 使用cv2.findContours找出白點輪廓,得出輪廓後遍歷全部輪廓得出每個輪廓的中心點存入notch_filter_arr
6. 接下來對notch_filter_arr裡的所有點使用circle,以便將圓內的頻率刪除。
7. 將得出來的notch_filter乘上一開始中心化過的傅立葉轉換圖,然後再反轉將中心點移回角落,再逆傅立葉轉換,再轉格式,得出reconstructed圖。
8. 其實這樣就可以了,但加上高斯模糊會更好。

輸出結果:






留言

這個網誌中的熱門文章

rzwang Homework #1

s1093350 Homework #2

s1061637 作業6