看板 MATLAB 關於我們 聯絡資訊
小弟目前正在在練習做motion blur 在把圖片f(x,y)先shift 以後call fft2 得到F(u,v) 然後在frequency domain 把F(u,v)乘上motion blur H(u,v) 假設得到的結果是 G(u,v) 然後我把他再轉回來 取real part 並shift回去,得到一張模糊的圖片 但問題來了 當我不做任何操作再用一樣的方法把這張模糊的圖片轉回frequency domain的時候 假設這張圖是G'(u,v) 他的值好像變得跟G(u,v)不太一樣,從matlab workspace看,至少Min值就不一樣 而且對G(u,v)對H(u,v)做反濾波會得到原始正常的圖片 但是對G'(u,v)做反濾波沒辦法還原,圖片會整個像爆炸一樣亂七八糟 想請教一下關於這裡fft 及ifft 為什麼互相轉換完以後無法得回一樣的結果呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.114.253.51 ※ 文章網址: http://www.ptt.cc/bbs/MATLAB/M.1417375669.A.A6B.html
wyc2010: 1.underflow 12/01 03:33
wyc2010: 2.你取了real part 12/01 03:34
jimmyoic: 為什麼會有under flow的問題呢?? 12/01 03:51
jimmyoic: 還有我改成frequency domain 做shift 就算不取real 12/01 03:52
jimmyoic: 結果一樣不同 12/01 03:52
wyc2010: H裡面的值是否sparse? 除以零當然會爆炸 12/01 12:47
wyc2010: 你拿[ones(200,100) zeros(200,100)]轉轉看就知道了 12/01 12:48
jimmyoic: 有處理過H 避免0值出現的情況 12/01 13:41