智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 6610|回复: 16
打印 上一主题 下一主题

参加完比赛的你,是否还愿意继续研究技术?

  [复制链接]

44

主题

1485

帖子

0

精华

版主

早川队队长

Rank: 9Rank: 9Rank: 9

积分
20210

资源大师奖章论坛骨干奖章推广达人奖章论坛元老奖章活跃会员奖章优秀会员奖章在线王奖章优秀版主奖章

QQ
威望
5864
贡献
12698
兑换币
630
注册时间
2009-8-18
在线时间
824 小时
跳转到指定楼层
1#
发表于 2011-8-26 18:02:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 sonwendi 于 2011-8-26 18:07 编辑

比完了,轻松了一下,感觉有失有得,自己也打了不少的酱油,好多新想法新技术都闷在肚子里,现在挺后悔没有早点尝试。

准备开学了继续做一做没有做完的工作,再钻研一下,没有了比赛,做做技术也是很快乐的

祝大家在能够享受到工作的快乐

另外,大家用的摄像头估计多多少少有点失真,斜着放会有梯形失真,用广角会有桶形失真,下面是解决桶形失真的一段matlab算法和C++代码,可以解决失真问题,但是会把图像拉小,可以在此基础上改进一下移植单片机也可以。仅供参考:

matlab代码:
  1. %% 镜头桶形失真校正(短焦镜头)

  2. img_origin1 = imread('cap56.bmp');
  3. img_origin = rgb2gray(img_origin1);

  4. k1 = -0.00000037;   % 形变参数,根据实际情况调整
  5. k2 = -0.00000037;

  6. img_size = size( img_origin );
  7. img_undist = zeros( img_size );
  8. img_undist = uint8( img_undist );


  9. for l1 = 1:img_size(1)  % 垂直方向
  10.    
  11.     y = l1 - img_size(1)/2;
  12.    
  13.     for l2 = 1:img_size(2)  % 水平方向
  14.         
  15.         x = l2 - img_size(2)/2;
  16.         
  17.         x1 = round( x * ( 1 + k1 * x * x + k2 * y * y ) );
  18.         y1 = round( y * ( 1 + k1 * x * x + k2 * y * y ) );
  19.         y1 = y1 + img_size(1)/2;
  20.         x1 = x1 + img_size(2)/2;
  21.         
  22.         img_undist(l1,l2) = img_origin(y1, x1);
  23.         
  24.     end
  25. end


  26. figure(1);
  27. subplot(121); imshow(img_origin);
  28. subplot(122); imshow(img_undist);
复制代码
C++代码:
  1. // 镜头校正查找表
  2. CvPoint CorrInd[480][640];

  3. // 镜头径向畸变校正初始化
  4. void LensCorrectInit( double k1 = -0.00000035, double k2 = -0.00000035 );


  5. // 镜头径向畸变校正初始化
  6. void LensCorrectInit( double k1, double k2 )
  7. {
  8.         int imgWidth = camera.GetWidth();   // 获得摄像头图像尺寸
  9.         int imgHeight = camera.GetHeight();

  10.         int imgWd2 = imgWidth>>1;
  11.         int imgHd2 = imgHeight>>1;

  12.         int it;
  13.         int jt;
  14.         int it2;
  15.         int jt2;

  16.         for( int i=0; i<imgHeight; i++ )
  17.         {
  18.                 it = ( i + 1 ) - imgHd2; // (i+1) 是其真正的图像坐标
  19.                 for( int j=0; j<imgWidth; j++ )
  20.                 {
  21.                         double temp;

  22.                         jt = ( j + 1 ) - imgWd2; // (j+1) 是其真正的图像坐标
  23.                         temp = 1 + k1*it*it + k2*jt*jt;
  24.                         it2 = (int)(temp * it);
  25.                         jt2 = (int)(temp * jt);

  26.                         it2 = it2 + imgHd2 + 1;
  27.                         jt2 = jt2 + imgWd2 + 1;

  28.                         CorrInd[i][j].x = jt2;
  29.                         CorrInd[i][j].y = it2;
  30.                 }
  31.         }
  32. }




  33. // 镜头径向畸变校正
  34. void LensCorrect( IplImage* src, IplImage* dst )
  35. {
  36.         int imgWidth = dst->width;
  37.         int imgHeight = dst->height;

  38.         int it2;
  39.         int jt2;

  40.         for( int i=0; i<imgHeight; i++ )
  41.         {
  42.                 uchar *pdstdata = (uchar*)(dst->imageData) + i*dst->widthStep;

  43.                 for( int j=0; j<imgWidth; j++ )
  44.                 {
  45.                         it2 = CorrInd[i][j].y;
  46.                         jt2 = CorrInd[i][j].x;

  47.                         uchar * psrcdata = cvPtr2D( src, it2, jt2 );

  48.                         *(pdstdata++) = *(psrcdata++);
  49.                         *(pdstdata++) = *(psrcdata++);
  50.                         *(pdstdata++) = *(psrcdata++);
  51.                 }
  52.         }
  53. }
复制代码

5

主题

54

帖子

0

精华

高级会员

Rank: 4

积分
533
威望
376
贡献
87
兑换币
4
注册时间
2011-3-7
在线时间
35 小时
2#
发表于 2011-8-26 18:27:13 | 只看该作者
好东西 顶一个
回复 支持 反对

使用道具 举报

203

主题

1964

帖子

2

精华

超级版主

平凡的小人物

Rank: 10Rank: 10Rank: 10

积分
223736

特殊贡献奖章论坛骨干奖章推广达人奖章热心会员奖章优秀版主奖章论坛元老奖章优秀会员奖章资源大师奖章活跃会员奖章在线王奖章

QQ
威望
125337
贡献
92073
兑换币
4298
注册时间
2010-9-29
在线时间
3163 小时
3#
发表于 2011-8-26 19:05:30 | 只看该作者
谢谢分享!
回复 支持 反对

使用道具 举报

56

主题

4914

帖子

3

精华

顶级版主

北京科技大学智能汽车队公共主页管理员

Rank: 11Rank: 11Rank: 11Rank: 11

积分
56131

特殊贡献奖章资源大师奖章论坛骨干奖章推广达人奖章优秀版主奖章热心会员奖章论坛元老奖章在线王奖章活跃会员奖章优秀会员奖章

威望
19568
贡献
13933
兑换币
3365
注册时间
2010-7-22
在线时间
11315 小时
4#
发表于 2011-8-26 20:18:15 | 只看该作者
肯定得继续啊
回复 支持 反对

使用道具 举报

44

主题

1485

帖子

0

精华

版主

早川队队长

Rank: 9Rank: 9Rank: 9

积分
20210

资源大师奖章论坛骨干奖章推广达人奖章论坛元老奖章活跃会员奖章优秀会员奖章在线王奖章优秀版主奖章

QQ
威望
5864
贡献
12698
兑换币
630
注册时间
2009-8-18
在线时间
824 小时
5#
 楼主| 发表于 2011-8-26 21:21:18 | 只看该作者
回复 4# aytc100


    总是感觉讨论技术的不多

  挺喜欢上ourdev网站,觉得那里到处都是探讨技术
回复 支持 反对

使用道具 举报

56

主题

4914

帖子

3

精华

顶级版主

北京科技大学智能汽车队公共主页管理员

Rank: 11Rank: 11Rank: 11Rank: 11

积分
56131

特殊贡献奖章资源大师奖章论坛骨干奖章推广达人奖章优秀版主奖章热心会员奖章论坛元老奖章在线王奖章活跃会员奖章优秀会员奖章

威望
19568
贡献
13933
兑换币
3365
注册时间
2010-7-22
在线时间
11315 小时
6#
发表于 2011-8-26 23:24:41 | 只看该作者
回复 5# sonwendi


   这里讨要技术的倒是不少……供需严重不平衡
回复 支持 反对

使用道具 举报

27

主题

229

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3086
威望
849
贡献
1515
兑换币
2
注册时间
2009-12-5
在线时间
361 小时
7#
发表于 2011-9-1 16:43:40 | 只看该作者
回复 5# sonwendi


    已经上了3年了。。。。
回复 支持 反对

使用道具 举报

49

主题

3751

帖子

1

精华

顶级版主

Rank: 11Rank: 11Rank: 11Rank: 11

积分
27953

资源大师奖章论坛骨干奖章推广达人奖章优秀版主奖章热心会员奖章论坛元老奖章在线王奖章活跃会员奖章优秀会员奖章技术大牛奖章

威望
10635
贡献
10966
兑换币
4566
注册时间
2010-11-23
在线时间
3176 小时
8#
发表于 2011-9-1 17:15:07 | 只看该作者
我上our_dev喜欢看一个疯子到处吹牛逼。
回复 支持 反对

使用道具 举报

44

主题

1485

帖子

0

精华

版主

早川队队长

Rank: 9Rank: 9Rank: 9

积分
20210

资源大师奖章论坛骨干奖章推广达人奖章论坛元老奖章活跃会员奖章优秀会员奖章在线王奖章优秀版主奖章

QQ
威望
5864
贡献
12698
兑换币
630
注册时间
2009-8-18
在线时间
824 小时
9#
 楼主| 发表于 2011-9-28 20:32:35 | 只看该作者
木有人对摄像头标定感兴趣么?你们都是怎么解决广角镜头的?
回复 支持 反对

使用道具 举报

13

主题

177

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1886

优秀会员奖章活跃会员奖章

威望
755
贡献
903
兑换币
62
注册时间
2011-10-23
在线时间
114 小时
10#
发表于 2011-10-30 13:13:40 | 只看该作者
好东西啊
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-13 05:20 , Processed in 0.108523 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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