智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 13479|回复: 37
打印 上一主题 下一主题

[采集类] 摄像头图像还原

  [复制链接]

0

主题

12

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
229
威望
185
贡献
22
兑换币
0
注册时间
2009-2-26
在线时间
11 小时
跳转到指定楼层
1#
发表于 2009-5-13 23:04:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1贡献
请问如何能把摄像头采集的非真实图像还原成真实的图像?就是说摄像头采集的图像在现实中的真实形状如何确定?请大家慷慨赐教,谢谢了!!!!

14

主题

929

帖子

1

精华

功勋会员

WJ

Rank: 10Rank: 10Rank: 10

积分
6304

特殊贡献奖章

威望
1456
贡献
4674
兑换币
17
注册时间
2008-4-6
在线时间
87 小时
2#
发表于 2009-5-14 08:43:40 | 只看该作者
这个变形是由于非行垂直拍摄的,其结果是远处小近处大,只能通过程序校正,
但是:
没有必要,所谓前瞻,只是大概了解,不需要精确,如果你用曲率去做控制决策,那么你必须做修正,这个修正应该是调试时不断测试,但同时计算量也不小.
回复

使用道具 举报

0

主题

12

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
229
威望
185
贡献
22
兑换币
0
注册时间
2009-2-26
在线时间
11 小时
3#
 楼主| 发表于 2009-5-14 09:21:00 | 只看该作者
是的,我是准备用曲率去做控制决策的,这个修正有没有公式啊之类的资料啊?
回复

使用道具 举报

1

主题

102

帖子

0

精华

游客

积分
878
威望
479
贡献
151
兑换币
30
注册时间
2009-1-6
在线时间
124 小时
4#
发表于 2009-5-14 14:19:32 | 只看该作者
第三届的华南理工的报告有讲这个的,但是我感觉计算量挺大的,嘿嘿
回复

使用道具 举报

9

主题

358

帖子

42

精华

金牌会员

Rank: 6Rank: 6

积分
1296
威望
80
贡献
506
兑换币
206
注册时间
2008-9-18
在线时间
355 小时
5#
发表于 2009-5-14 20:18:15 | 只看该作者
回复

使用道具 举报

0

主题

12

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
229
威望
185
贡献
22
兑换币
0
注册时间
2009-2-26
在线时间
11 小时
6#
 楼主| 发表于 2009-5-16 22:13:11 | 只看该作者
哦,这样啊,那你们都用什么方法啊?
回复

使用道具 举报

7

主题

56

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1319
QQ
威望
276
贡献
983
兑换币
22
注册时间
2009-3-26
在线时间
30 小时
7#
发表于 2009-5-23 14:17:12 | 只看该作者
我自己用自己的算法做过
后来实际用的时候给去了。。
没有必要要那么精确,我固定只用几个点。。。
我以前的方法是解一个三角形。最后用MATLAB 计算出挑选的行坐标。。。行坐标大致的一个规律。
不过个人觉得,没有必要把图片校正。。。。。

MATLAB  给你 参考下。。。


global img;
y=zeros(255);
for i=1:1:35
    for j=1:1:100
       y(img(i,j))= y(img(i,j))+1;   
    end
end
subplot(4,2,1);
imshow(uint8(img));

subplot(4,2,3);
plot(y);

imk=edge(img,'canny',[0.1 0.57]);
subplot(4,2,5);
imshow(imk);
ax=zeros(35,100);
ay=zeros(35,100);

axmag=zeros(35,100);
aymag=zeros(35,100);

for i=1:1:34
    for j=1:1:99
       if(img(i,j)-img(i+1,j)>40)
           axmag(i,j)=abs(img(i,j)-img(i+1,j));
           ax(i,j)=1;
       elseif(img(i,j)-img(i+1,j)<-40)
           axmag(i,j)=abs(img(i,j)-img(i+1,j));
           ax(i,j)=1;
       end
      
       if(img(i,j)-img(i,j+1)>40)
           aymag(i,j)=abs(img(i,j)-img(i,j+1));
           ay(i,j)=1;
       elseif(img(i,j)-img(i,j+1)<-40)
           aymag(i,j)=abs(img(i,j)-img(i,j+1));
           ay(i,j)=1;
       end
      
       j=j+1;
    end
    i=i+1;
end
subplot(4,2,7);
imshow(ax);

subplot(4,2,2);
imshow(ay);

mag=sqrt((axmag.*axmag)+(aymag.*aymag));
subplot(4,2,4);
imshow(mag);
回复

使用道具 举报

7

主题

56

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1319
QQ
威望
276
贡献
983
兑换币
22
注册时间
2009-3-26
在线时间
30 小时
8#
发表于 2009-5-23 14:18:23 | 只看该作者
不好意思啊 ,贴错了

clear
clc
((atan(113/32))/pi)*180;

((acos(32/34))/pi)*180;

x=(atan(113/32)-acos(32/34))/100;
for i=1:1:100
    j=99-i;
    r(i)=113-(32*tan(j*x+acos(32/34)));
end

r=r.*1.06;
r=r-10;
r=round(r);
for i=1:1:99
    if(r(i)==r(i+1))
        u(i)=0;
    else
        u(i)=r(i);
    end
end
a=1;
for i=1:1:99
   
  if(u(i)~=0)
      q(a)=u(i);
      a=a+1;
  end
end
q=q+2;
%for i=1:1:71
%    q(i)=u(i+1)-u(i);
%end
fid=fopen('add.txt','wt');
fprintf(fid,'%d,',q);
fclose(fid);
回复

使用道具 举报

20

主题

187

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2478
威望
412
贡献
1638
兑换币
4
注册时间
2009-9-10
在线时间
214 小时
9#
发表于 2010-3-3 18:48:49 | 只看该作者
用曲率去做控制决策,真的必须做修正吗???
回复

使用道具 举报

3

主题

123

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
435
威望
357
贡献
50
兑换币
4
注册时间
2010-1-22
在线时间
14 小时
10#
发表于 2010-3-22 08:04:05 | 只看该作者
学习
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-12-25 02:08 , Processed in 0.115922 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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