看板 MATLAB 關於我們 聯絡資訊
第一次在這邊發文,還是MATLAB生手,如果有哪邊不妥當的請告知 我現在在處理的是N*M*N*M的四維矩陣C 1. 如果想將座標對應前兩個跟後兩個交換有沒有不用迴圈的寫法? H = ones(N,M,N,M); for h1=1:N for h2=1:M H(h1,h2,:,:) = C(:,:,h1,h2); end; end; 2. 之所以想做上面的那個調整是因為fft2好像只能對一個四維矩陣的前兩維運算 就是fft2(C)相當於分別做C(:,:,1,1) C(:,:,1,2) ... 的二維Fourier transform 那有辦法只挑後兩個維度來轉換嗎? 3. 想將一個向量中元素分別指定到四維矩陣中有沒有不用迴圈的寫法? x = fftshift( (0:N-1)-N/2 ); Rx = ones(N,M,N,M); for s1=1:N Rx(:,:,s1,:) = x(s1); end; 謝謝 -- 「如果昨天到了明天會變成兩天前,試問後天應該是今天或是昨天?」 ◥████◤ ◥██◤ ~時間操縱緒論期末考 陶拉里亞大學院 ◥◤ Time is a marvelous plaything ◢◣ http://magiccards.info/9e/en/102.html ◢██◣ http://magiccards.info/avr/en/81.html ◢████◣ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.116.72.86 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1436284826.A.DAB.html
celestialgod: 1. permute 07/08 00:17
shadowblade: 感謝 07/08 00:18
celestialgod: 3. 感覺reshape一下input應該可以一次處理 07/08 00:24
shadowblade: 思考中 07/08 00:34
shadowblade: 解決了,多謝 07/08 03:16