作者hardman1110 (笨小孩)
看板C_and_CPP
標題[問題]用OpenCV實作高通濾波器by FFT
時間Sat Jun 11 14:12:07 2016
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
VC 2015
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
opencv 2.4.9
問題(Question):
http://0rz.tw/N7PWX
我參考以上網頁做了FFT,最後的結果是 magnitude log只是方便圖片顯示而改變值域
我想問的是如果我對magnitude 用高通濾波遮罩濾掉低頻部分,那我要如何得到
濾波後的實部跟虛部好讓我用 IDFT 轉回到空間域來觀看處理的效果呢?
餵入的資料(Input):
480x160的灰階圖
預期的正確結果(Expected Output):
將輸入圖片的低頻濾除,凸顯高頻區域
錯誤結果(Wrong Output):
程式碼(Code):(請善用置底文網頁, 記得排版)
補充說明(Supplement):
http://www.mdpi.com/1424-8220/11/12/11357/htm
想做出上面網頁中Figure 5的結果 藉由他的H(x,y)
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.132.89.186
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1465625532.A.CD5.html
→ Caesar08: 先縮網址 06/11 14:16
※ 編輯: hardman1110 (220.132.89.186), 06/11/2016 14:32:03
推 bxxl: 修過DSP嗎? 要轉回來就不能取mag,請在複數狀態下作 06/11 21:47
推 bxxl: 如果一定要在mag上作filter, 那就先把phase存起來,濾完後 06/11 21:50
→ bxxl: 把phase加回去 06/11 21:50
→ hardman1110: 感謝 所以不轉mag把實部跟虛部濾波 06/11 22:07
→ hardman1110: 這樣? 06/11 22:07