Matlab SCILAB中图像的三维绘图

Matlab SCILAB中图像的三维绘图,matlab,scilab,Matlab,Scilab,我试图在Scilab中使用plot3d绘制灰色图像,以下是我的代码: clear; clc; direc='C:\Users\engine\Documents\EYE'; cd(direc) stacksize('max'); fileName = '50.jpg'; rgb= ReadImage(fileName); img = RGB2Gray(rgb); Histogram = CreateHistogram(img); figure(1); plot( 0:255,Histogram)

我试图在Scilab中使用
plot3d
绘制灰色图像,以下是我的代码:

clear;
clc;
direc='C:\Users\engine\Documents\EYE';
cd(direc)
stacksize('max');
fileName = '50.jpg';
rgb= ReadImage(fileName);
img = RGB2Gray(rgb);
Histogram =  CreateHistogram(img);
figure(1); plot( 0:255,Histogram);

plot3d(1:length(img(:,1)),1:length(img(1,:)),img(:,:));
imshow(img);
运行此代码时,会收到以下错误消息:

!--error 246 
Function not defined for given argument type(s),

  check arguments or define function %i_plot3d for overloading.

知道如何解决这个问题吗?

我发现了错误。我应该将灰色图像转换为双值,绘图效果良好,然后:

clear;
clc;
direc='C:\Users\engine\Documents\EYE';
cd(direc)
stacksize('max');
fileName = '50.jpg';
rgb= ReadImage(fileName);
img = RGB2Gray(rgb);
img2 = im2double(img);
img2 =img2*250;
plot3d(1:1024,1:1280,img2(:,:));

此行中至少有一个错误:
plot3d(1:lennth(img(:,1))、1:length(img(1,:)、img(:,:)。你写的是
lenth
,而不是
length
。我已经改正了,我仍然会得到同样的错误!