2011-05-14 4 views
0
im = im2double(imread('rice.png')); 

[X Y]= meshgrid(1:size(im,1),1:size(im,2)); 

surf(zeros(size(im)),X,Y,im,'EdgeColor','none'); 

quand je lance ce script, il me fonctionnait bien mais quand j'ai essayé de changer l'image à l'image RVB me donne cette 2 erreurs« dimensions de données doivent être d'accord » Erreur

??? Error using ==> surf at 78 Data dimensions must agree. 

Error in ==> CoOrdinating at 6 surf(zeros(size(im)),X,Y,im,'EdgeColor','none'); 

i essayé de convertir l'image en niveaux de gris mais cela n'a pas fonctionné avec moi et m'a donné les mêmes erreurs

toute aide?

Répondre

0

Je vous un drôle de sentiment oublié de passer l'image en niveaux de gris au reste des fonctions, parce que je l'ai fait à ma première tentative d'exécution de ce code: P

im = im2double(imread('rice.png')); 

if (isrgb (im)) 
    im2 = rgb2gray (im); 
else 
    im2 = im; 
end 

[X Y] = meshgrid (1:size(im2,1), 1:size(im2,2)); 
surf(zeros (size(im2)),X,Y,im2,'EdgeColor','none') 

Cela a fonctionné pour moi (avec une image rgb et une image en niveaux de gris)

Questions connexes