我新在MATLAB我試圖定義一個函數,我不斷收到此錯誤輸入參數「IP」是不確定的錯誤
「輸入參數‘IP’是不確定的。
在==錯誤>在2 size_ip edge_mapping =尺寸(IP(:,:,1));「
這裏是我的代碼
function[op1,op2,op3] = edge_mapping(ip)
size_ip = size(ip(:,:,1));
s=size_ip(1);
op1= cat(3,zeros(s),zeros(s),zeros(s),zeros(s),zeros(s),zeros(s),zeros(s),zeros(s),zeros(s),zeros(s));
op2= cat(3,zeros(s),zeros(s),zeros(s),zeros(s),zeros(s),zeros(s),zeros(s),zeros(s),zeros(s),zeros(s));
op3= cat(3,zeros(s),zeros(s),zeros(s),zeros(s),zeros(s),zeros(s),zeros(s),zeros(s),zeros(s),zeros(s));
for i = 1 : 10
op1(:,:,i)=edge(ip(:,:,i),'sobel');
op2(:,:,i)=edge(ip(:,:,i),'prewitt');
op3(:,:,i)=edge(ip(:,:,i),'canny');
end
有沒有一個原因讓你重複連接10次零而不是像'零(s * 10,s)'這樣的東西?同樣,你將'op1,op2,op3'初始化爲同一個矩陣 - 爲什麼重複定義三次?定義'op1'然後複製,'op2 = op1; op3 = op1'。 – 2012-03-29 03:35:41