我需要使用矩陣的每個連續行的傅立葉函數來避免使用for
循環。我嘗試使用單元格數組,但不知道如何合適地使用它。 我的計劃是如何將matlab擬合函數應用於矩陣的每一行
I=imread('test.tif','tif');
I=double(I);
nat=num2cell(I,1);
wy_I=cellfun(@size,nat, 'UniformOutput', false);
we_I=cellfun(@(x)1:x(1), wy_I, 'UniformOutput', false);
wyn=cellfun(@(x,y)fit(x',y,'fourier1'), we_I, nat);
它給??? Error using ==> cellfun cfit type is not currently implemented.
大概單元陣列是不是這個問題的解決方案。 如何解決這個問題? 感謝
更新
wyn=cellfun(@(x,y)fit(x',y,'fourier1'), we_I, nat, 'UniformOutput',false);
作品沒有錯誤,但WYN只有空單元格
我測試了一行
j=cell2mat(we_I(1,1))
k=cell2mat(nat(1,1))
z=fit(j',k,'fourier1')
和z
包含模型
我良好的價值觀在cellfun中使用語法做錯了什麼,但不知道什麼
對一個圖像的每一行擬合一個函數是一個非常好的for循環。只要調用'cellfun',你就會失去可讀性,但不會有明顯的性能提升。 – Jonas 2011-04-06 20:37:27