matlab高手请指点迷津——关于鱼眼镜头的校正代码

黄有度和苏化明的方法《一种鱼眼图像到透视投影图像的变换模型a=imread('1.PNG');I=rgb2gray(a);figure(1),imshow(a);I=rg... 黄有度和苏化明的方法《一种鱼眼图像到透视投影图像的变换模型

a=imread('1.PNG');
I=rgb2gray(a);
figure(1),imshow(a);
I=rgb2gray(a);
[m,n]=size(a);
c=ones(size(a));
for i=1:m
for j=1:n
u=307.32*i/sqrt(i.^2+j.^2+10);
v=307.32*j/sqrt(i.^2+j.^2+10);
a=ceil(u);
b=ceil(v);
e=a-u;
f=b-v;
if u==fix(u)&v==fix(v)
c(i,j)=I(u,v);
else if 0<u<=1&0<v<=1
c(i,j)=I(1,1);
else if 0<u<=1&v>1
c(i,j)=e*(1-f)*I(a,b-1)+e*f*I(a,b);
else if 0<v<=1&u>1
c(i,j)=(1-e)*f*I(a-1,b)+e*f*I(a,b);
else c(i,j)=(1-e)*(1-f)*I(a-1,b-1)+(1-e)*f*I(a-1,b)+e*(1-f)*I(a,b-1)+e*f*I(a,b)
end
end
end
J=mat2gray(c);
image(J);
我的程序有什么问题呢,初学matlab图像处理,忘各位大侠帮忙

??? Error: File: D:\D\matlab\work\Untitled1.m Line: 31 Column: 10
This statement is incomplete.
变换的模型是u=R*i/sqrt(i.^2+j.^2+Z.^2)
v=R*j/sqrt(i.^2+j.^2+Z.^2)
其中(u,v)是鱼眼图像上的点,(i,j,Z)是正常图像的点。还有Z的具体取值应该为多少呀?我试了小值 和大值都不合适。
展开
 我来答
若以下回答无法解决问题,邀请你更新回答
百度网友260ef34f1
2011-05-21 · TA获得超过2170个赞
知道小有建树答主
回答量:1466
采纳率:50%
帮助的人:1549万
展开全部
错误在哪行
更多追问追答
追问
我改了好久 不知道为什么错了 还有end的次数应该是三次的吧,我改为六次就不出现错误 但运行出来的校正图像是空白图像
追答
你看看你的.m文件里31行是那句话
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
崔笑南2K
2012-09-08 · TA获得超过184个赞
知道小有建树答主
回答量:420
采纳率:0%
帮助的人:432万
展开全部
哈咯,,我最近也在做这个,也是参考的和你一样的文献呢。。不知道你做出来了么??我出来的图不太对呀!!求指导!!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式