s1081423 作業4

 一、作業說明

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



二、程式功能

(1) 輸出原圖

        (2) 輸出頻譜圖,透過點選欲去除雜訊之位置生成notch mask

(3) 列印出notch mask圖片

(4) 列印去除雜訊之圖像  


(左上)原圖 (右上)頻譜圖

(左下) notch mask (右下) 還原圖像

三、開發環境

    Windows 10

    Visual Studio 2022

    OpenCV 4.7.0

 

四、實作討論

(1)以灰階模式讀取影像並顯示,經過傅立葉轉換後顯示頻譜圖片(作法同HW3),並且提供點選雜訊位置,點選完畢後按下任意按鍵,將座標儲存在notch_pos_arr陣列中。

注意 : 只需點選圖像上半部,下半部之對稱點會自動加入

()原圖  ()頻譜圖  () 點選之座標點





(2)製作notch mask並顯示

根據剛剛點選的座標繪製出notch mask,其中synthesizeFilterH()為繪製出下半對稱點之函式。

(上圖)notch mask


(3)notch mask與原圖進行filtering(函式filter2DFreq())

filter2DFreq()中執行步驟為:

    a.以原圖大小製作出雙通道儲存實數與複數的圖像complexI,並經過dft()

    b.同理將norch mask 製作成複數通道的complexH

注意:由於先前notch mask是在經過象限轉換之圖像上所進行,故此處使用notch mask之前有先進行象限轉換來還原。

    c.complexIcomplexH進行點積計算,獲得complexIH

    d.透過idft()還原圖像,並轉為CV_8U格式以供顯示


(4)處理剩餘雜訊,獲得最後輸出圖

先進行高斯模糊,再經過銳化來過濾雜訊

(上圖)notch filtering後之圖像,仍存在部分雜訊

高斯模糊 :


銳化 : 使用sharpen_op(如下)對圖像進行卷積計算

最後獲得之圖像









 

留言

這個網誌中的熱門文章

rzwang Homework #1

s1101438 Homework #1

s1093309 作業6