cant add matrices of same dimensions

2 次查看(过去 30 天)
im trying to add an image to a matrix of ones for which i have used the following code:
c=imread('C:\Users\Richik\Desktop\ima.png');
[x,y]=size(c)
m=ones(x,y);
g=m+c;
but even when the matrix dimensions are same,im getting this error:
??? Error using ==> plus
Matrix dimensions must agree.
i cant figure out why this is happening.....

采纳的回答

Walter Roberson
Walter Roberson 2015-10-12
Chances are that your PNG image is an RGB image and so is 3 dimensional. You should look at
s = size(c)
[x,y] = size(c)
and I think you will find that y is not equal to s(2). Read the documentation for size() to understand why not.
  4 个评论
Walter Roberson
Walter Roberson 2015-10-12
A change of 1/256 in the brightness of an image is not necessarily going to be very noticeable, especially if you have not used a full 256 entry colormap
colormap(gray(256))

请先登录,再进行评论。

更多回答(1 个)

Eng. Fredius Magige
Eng. Fredius Magige 2015-10-12
Hi It has to follow its rule, and might be g=[m,c];
  1 个评论
Walter Roberson
Walter Roberson 2015-10-12
That would, if it worked, append c after m, not add 1 to each element of c.

请先登录,再进行评论。

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by