matlab 中的报错,求大神帮忙指点一二。。 5
%显示坐标刻度iptsetpref('ImshowAxesVisible','on');%创建图像并显示I=zeros(100,100);I(25:75,25:75)=1...
%显示坐标刻度
iptsetpref('ImshowAxesVisible','on');
%创建图像并显示
I=zeros(100,100);
I(25:75,25:75)=1;
figure(1);
imshow(I);title('原始图像');
%定义方向并计算Radon变换
theta=0:180;
[R,xp]=radon(I,theta);
%结果显示
figure(2);
imshow(theta,xp,R,[],'InitialMagnification','fit');
title('Radon变换结果');
xlabel('\theta(degree)');
ylabel('x''');
colormap(hot),colorbar
上面这段程序为什么运行不出来呢???Radon变换之后的图像显示不出来,是怎么回事????改了半天也没改对。。。。 展开
iptsetpref('ImshowAxesVisible','on');
%创建图像并显示
I=zeros(100,100);
I(25:75,25:75)=1;
figure(1);
imshow(I);title('原始图像');
%定义方向并计算Radon变换
theta=0:180;
[R,xp]=radon(I,theta);
%结果显示
figure(2);
imshow(theta,xp,R,[],'InitialMagnification','fit');
title('Radon变换结果');
xlabel('\theta(degree)');
ylabel('x''');
colormap(hot),colorbar
上面这段程序为什么运行不出来呢???Radon变换之后的图像显示不出来,是怎么回事????改了半天也没改对。。。。 展开
1个回答
展开全部
程序后面两句有问题,可这样改:
%显示坐标刻度
iptsetpref('ImshowAxesVisible','on');
%创建图像并显示
I=zeros(100,100);
I(25:75,25:75)=1;
figure(1);
imshow(I);title('原始图像');
%定义方向并计算Radon变换
theta=0:180;
[R,xp]=radon(I,theta);
%结果显示
figure(2);
%imshow(theta,xp,R,[],'InitialMagnification','fit');
imshow(R,[],'Xdata',theta,'Ydata',xp,'InitialMagnification','fit')
title('Radon变换结果');
xlabel('\theta(degree)');
ylabel('x''');
colormap(gca,hot),colorbar
%显示坐标刻度
iptsetpref('ImshowAxesVisible','on');
%创建图像并显示
I=zeros(100,100);
I(25:75,25:75)=1;
figure(1);
imshow(I);title('原始图像');
%定义方向并计算Radon变换
theta=0:180;
[R,xp]=radon(I,theta);
%结果显示
figure(2);
%imshow(theta,xp,R,[],'InitialMagnification','fit');
imshow(R,[],'Xdata',theta,'Ydata',xp,'InitialMagnification','fit')
title('Radon变换结果');
xlabel('\theta(degree)');
ylabel('x''');
colormap(gca,hot),colorbar
追问
能解释一下为什么这样改吗?
(我用的是MATLAB2014版本,原程序在MATLAB7.0版本上可以运行出来,在2014版本上老是提示错误。而且我发现两个程序中只有imshow 函数的调用方式改变了,课本上写的是imshow(x,y,A)格式,但是这种格式在2014中就提示错误。)能解释一下吗?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询