我有一個250 x 250的圖像,我想有一個散點圖的強度的每個像素及其最近的鄰域。這是我的代碼:'向量必須是相同的長度'錯誤
I = imread(image);
i = [1,249];
j = [1,250];
X = I(i,j);
Y = I(i+1,j);
scatter(X,Y);
爲什麼我得到「X和Y向量必須是相同的長度」錯誤?他們是相同的長度!
我有一個250 x 250的圖像,我想有一個散點圖的強度的每個像素及其最近的鄰域。這是我的代碼:'向量必須是相同的長度'錯誤
I = imread(image);
i = [1,249];
j = [1,250];
X = I(i,j);
Y = I(i+1,j);
scatter(X,Y);
爲什麼我得到「X和Y向量必須是相同的長度」錯誤?他們是相同的長度!
因爲scatter(X, Y)
只用於向量,而不是矩陣。在你的例子中,X和Y都是2×2矩陣,而不是向量。
散射(X,Y)在由矢量X和Y這種類型的曲線圖也被稱爲一個氣泡圖中指定的位置顯示的社交圈。
編輯:如果你想繪製矩陣,使用plotmatrix()
代替:
plotmatrix(X,Y)
散點圖(X,Y)僅用於作爲herohuyongtao正確提到的載體。你可以試着做到以下幾點:
m = 250;
X = I(m+1:end);
Y = I(1:end-m);
scatter(X,Y);
您將您的圖像矩陣我到一個向量X而忽略了第一列,並在向量Y而忽略了最後一欄。 X(n)因此是右邊的Y(n)的鄰居。
我希望這有助於!