s1093348 作業4

 影像還原練習

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

語言:c++
開發環境: Windows 10 + Visual Studio 2019 + OpenCV 4.5.4

a.用notch filter去除雜訊

在作業3時做的圖象經傅立葉轉換後,依照頻譜圖上較明顯的亮點(某種頻域雜訊的位置)製作一個notch filter,套用在經dft後的transform_image上(直接在transform_image上畫上黑點,而畫的位置看頻譜圖上的亮點)




 畫上黑點方式:用滑鼠事件

當在某視窗有滑鼠事件發生時呼叫on_mouse函式,在on_mouse裡用得到的x、y座標來畫圖


C++中,event的對應事件為

enum { CV_EVENT_MOUSEMOVE =0,//滑動 CV_EVENT_LBUTTONDOWN =1,//左鍵點選 CV_EVENT_RBUTTONDOWN =2,//右鍵點選 CV_EVENT_MBUTTONDOWN =3,//中鍵點選 CV_EVENT_LBUTTONUP =4,//左鍵放開 CV_EVENT_RBUTTONUP =5,//右鍵放開 CV_EVENT_MBUTTONUP =6,//中鍵放開 CV_EVENT_LBUTTONDBLCLK =7,//左鍵雙擊 CV_EVENT_RBUTTONDBLCLK =8,//右鍵雙擊 CV_EVENT_MBUTTONDBLCLK =9//中鍵雙擊 };

來源:https://www.796t.com/content/1544463018.html

b.逆傅立葉轉換

接下來再接續做逆傅立葉轉換,照作業3步驟將圖轉化回來
成果圖
Demo影片:


留言

這個網誌中的熱門文章

rzwang Homework #1

s1093350 Homework #2

s1061637 作業6