声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2112|回复: 1

[编程技巧] [求助]总在运行中出现相同的错误,请教下,谢谢

[复制链接]
发表于 2006-4-9 10:43 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
在程序运行中总出现这样的提示A function declaration cannot appear within a script M-file.
源代码如下:
  1. a=imread('go.tif');
  2. z=rgb2gray(a);
  3. gradephase(z)
  4. function gradephase(x)
  5. [m,n]=size(x);
  6. bw=edge(x,'sobel');
  7. gy=x(1:m-1,1:n-1)-x(2:m,1:n-1);
  8. gx=x(1:m-1,1:n-1)-x(1:m-1,2:n);
  9. g=gy./(gx+eps);
  10. ph=atan(g)+(sign(gx)<0&sign(gy)>0)*pi+(sign(gx)<0&sign(gy)<0)*pi+(sign(gx)>0&sign(gy)<0)*2*pi+(sign(gx)==0)*pi;
  11. grdgp=floor(ph/pi*4)+1;
  12. cn=0;s=[];
  13. In_spt=cell(1,1);
  14. pline=[];
  15. for i=2:m-1
  16. for j=2:n-1
  17. if bw(i,j)~=0&grdgp(i,j)~=0
  18. ph_cp=grdgp(i,j);grdgp(i,j);bw(i,j);
  19. cn=cn+1;p=[i,j]';
  20. while ~isempty(s)
  21. [cs,rs]=size(s);
  22. ps=s(:,rs);s=s(:,1:rs-1);
  23. col=ps(1,1);row=ps(2,1);
  24. if legal(cil+1,row,m,n)&grdgp(col+1,row)==ph_cp
  25. s=[s,[col+1,row]'];In_spt{cn}=[In_spt{cn},[col+1,row]'];
  26. bw(col+1,row)=0;grdgp(col+1,row)=0;
  27. end
  28. if legal(col+1,row+1,m,n)&grdgp(col+1,row+1)==ph_cp
  29. s=[s,[col+1,row+1]'];In_spt{cn}=[In_spt{cn},[col+1,row+1]'];
  30. bw(col+1,row+1)=0;grdgp(col+1,row+1)=0;
  31. end
  32. if legal(col,row+1,m,n)&grdgp(col,row+1)==ph_cp
  33. s=[s,[col,row+1]'];In_spt{cn}=[In_spt{cn},[col,row+1]'];
  34. bw(col,row+1)=0;grdgp(col,row+1)=0;
  35. end
  36. if legal(col-1,row+1,m,n)&grdgp(col-1,row+1)==ph_cp
  37. s=[s,[col-1,row+1]'];In_spt{cn}=[In_spt{cn},[col-1,row+1]'];
  38. bw(col-1,row+1)=0;grdgp(col-1,row+1)=0;
  39. end
  40. if legal(col-1,row,m,n)&grdgp(col-1,row)==ph_cp
  41. s=[s,[col-1,row]'];In_spt{cn}=[In_spt{cn},[col-1,row]'];
  42. bw(col-1,row)=0;grdgp(col-1,row)=0;
  43. end
  44. if legal(col-1,row-1,m,n)&grdgp(col-1,row-1)==ph_cp
  45. s=[s,[col-1,row-1]'];In_spt{cn}=[In_spt{cn},[col-1,row-1]'];
  46. bw(col-1,row-1)=0;grdgp(col-1,row-1)=0;
  47. end
  48. if legal(col,row-1,m,n)&grdgp(col,row-1)==ph_cp
  49. s=[s,[col,row-1]'];In_spt{cn}=[In_spt{cn},[col,row-1]'];
  50. bw(col,row-1)=0;grdgp(col,row-1)=0;
  51. end
  52. if legal(col+1,row-1,m,n)&grdgp(col+1,row-1)==ph_cp
  53. s=[s,[col+1,row-1]'];In_spt{cn}=[In_spt{cn},[col+1,row-1]'];
  54. bw(col+1,row-1)=0;grdgp(col+1,row-1)=0;
  55. end
  56. end
  57. if length(In_spt{cn})<=10
  58. In_spt{cn}=[];
  59. cn=cn-1;
  60. else
  61. plne=draw_l(In_spt{cn});
  62. pline=[pline,plne];
  63. c(i)=lengh(In_spt{cn});
  64. end
  65. end
  66. end
  67. end
复制代码
回复
分享到:

使用道具 举报

发表于 2006-4-9 11:51 | 显示全部楼层
http://forum.vibunion.com/thread-9974-1-1.html

happy 不是已经给你改了么?
还有错误么?
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-10-4 23:34 , Processed in 0.052472 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表