Re: [問題] 影像處理DFT已回收

看板MATLAB作者 (倒空自己歸向主)時間16年前 (2009/05/07 17:50), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串2/3 (看更多)
※ 引述《cs312gay (小時候不懂事)》之銘言: : %做DFT轉換 : for (u=1:N) : for (v=1:N) : for (x=1:N) : for (y=1:N) : temp1 = temp1 + f(x,y) * exp(-2 * pi * i * (u-1) * (x-1) / M ); ^ i 沒給定 %讀取影像 f1 = imread('lena.bmp'); F1 = f1; %初始化 N = 256; M = N*N; f = double(f1); F = f; F(1:N,1:N) = zeros(N,N); %做DFT轉換 % Given k s = sum(f)/M; F(1,1:N) = s; a = exp(-2*pi*k/M); d = zeros(N,N-1); d(1,:) = 1; for i = 2 : N; d(i,1) = d(i-1,1) * a; end; for i = 2 : N-1; d(:,i) = d(:,1) .* d(:,i-1); end; s1 = sum(f,2)' * d/M; % size(s1) = [1 N-1]; for u = 2 : N; F(u,1:N) = s1(u-1); end; %印出spectrum imshow(uint8(F)); %作IDFT轉換 s = sum(F)/M; f(1,1:N) = s; a = exp(2*pi*k/M); d = zeros(N,N-1); d(1,:) = 1; for i = 2 : N; d(i,1) = d(i-1,1) * a; end; for i = 2 : N-1; d(:,i) = d(:,1) .* d(:,i-1); end; s2 = sum(F,2)' * d/M; for u = 2 : N; f(u,1:N) = s2(u-1); end; %印出輸出影像 imshow(uint8(f)); -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.7.59

05/07 22:12, , 1F
請問k值要怎麼給...他的值好像是變動的..
05/07 22:12, 1F

05/08 00:46, , 2F
007@@ 被你發現了...
05/08 00:46, 2F
文章代碼(AID): #1A0gxzoY (MATLAB)
文章代碼(AID): #1A0gxzoY (MATLAB)