[問題] fft和ifft已回收

看板MATLAB作者 (你是另一個我)時間14年前 (2010/04/16 02:02), 編輯推噓2(206)
留言8則, 4人參與, 最新討論串1/4 (看更多)
剛剛做了一個小測試,如下所示: clear all pic=[30 55 60; 20 48 76; 87 39 57];%原影像 imwrite(uint8(pic),'original.gif');%以uint8格式儲存,存成不壓縮的gif格式 ,不要存成jpg imshow('original.gif') Fpic = fftshift(fft2(pic)); pic1=ifft(Fpic); imshow(pic1) 為什麼ifft轉換回來之後不等於原圖呢?? 問題到底出在哪? 希望有高手能指點我一下>"< 感激不盡~~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.66.130.37

04/16 10:10, , 1F
不要做fftshift
04/16 10:10, 1F

04/16 18:52, , 2F
樓上正解
04/16 18:52, 2F

04/16 20:05, , 3F
而且你ifft之後會是複數
04/16 20:05, 3F

04/16 21:49, , 4F
我把它改成Fpic = fft2(pic);
04/16 21:49, 4F

04/16 21:49, , 5F
pic1=ifft(Fpic);
04/16 21:49, 5F

04/16 21:50, , 6F
imshow(abs(pic1))還是無法轉換回原圖耶@@
04/16 21:50, 6F

04/16 21:51, , 7F
轉換回來的圖一片空白
04/16 21:51, 7F

04/17 23:54, , 8F
pic1處理完要從double轉成uint8
04/17 23:54, 8F
文章代碼(AID): #1BnrJ4P0 (MATLAB)
文章代碼(AID): #1BnrJ4P0 (MATLAB)