matrix Dimension Must Agree

please some suggest me Where I am going wrong, I want to add periodic noise in my Image
if true
tw=imread('twins.tif');
t=rgb2gray(tw);
%Creating Periodic noise
s=size(t);
[x,y]=meshgrid(1:s(1),1:s(2));
p=(sin(x/3+y/5)+1);
t_pn=(im2double(t)+(p/2)/2);
imshow(t),figure,imshow(t_pn);
% code
end

2 commentaires

Walter Roberson
Walter Roberson le 10 Mar 2013
Which line is the problem appearing on?
Error using +
Matrix dimensions must agree.
Error in saltpepper (line 14)
t_pn=(im2double(t)+(p/2)/2);

Connectez-vous pour commenter.

 Réponse acceptée

Wayne King
Wayne King le 10 Mar 2013

0 votes

Without more information about your image size, which you don't provide, it's hard to say, but try transposing the p matrix as I've done below:
tw=imread('twins.tif');
t=rgb2gray(tw);
%Creating Periodic noise
s=size(t);
[x,y]=meshgrid(1:s(1),1:s(2));
p=(sin(x/3+y/5)+1)';
t_pn=(im2double(t)+(p/2)/2);

3 commentaires

Walter Roberson
Walter Roberson le 10 Mar 2013
Ah, or using ndgrid() instead of meshgrid() and not doing the transpose.
Muhammad Ali Qadar
Muhammad Ali Qadar le 10 Mar 2013
Worked !!!! Thanks a lot, can you Please Tell me how could you figure out this trick.
Wayne King
Wayne King le 10 Mar 2013
Glad it worked, not a trick, I think Walter's comment is instructive here.

Connectez-vous pour commenter.

Plus de réponses (0)

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by