我需要在以前存在的矩阵中添加一个新矩阵,但是在他的维度坐标上.我知道这很难理解,所以让我们看一个例子:
我有一个像这样的矩阵:
480x640x3
Run Code Online (Sandbox Code Playgroud)
我想添加以下内容:
480x640x6
Run Code Online (Sandbox Code Playgroud)
结果如下:(6 + 3 = 9)
480x640x9
Run Code Online (Sandbox Code Playgroud)
正如你所看到的,它增加了第三维度.
我需要kmeans在rgb图像上使用该功能.算法的每个元素需要具有3个维度,每个维度对应于图像的每个通道.元素的数量将是图像的总像素数.我需要kmeans在群集#5上使用.
所以这就是我的尝试:
img = imread('mypic.jpg');
red = img(:,:,1);
green = img(:,:,2);
blue = img(:,:,3);
kmeans(red,5)
Run Code Online (Sandbox Code Playgroud)
我不知道我是否正确地做到了.我有这个错误:
??? Error using ==> plus
Integers can only be combined with integers of the same class, or scalar doubles.
Error in ==> kmeans>distfun at 704
D(:,i) = D(:,i) + (X(:,j) - C(i,j)).^2;
Error in ==> kmeans at 313
D = distfun(X, C, distance, 0);
Error in ==> mysegmentation at 9
kmeans(R,2)
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮我一把吗?谢谢