智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 32360|回复: 34
打印 上一主题 下一主题

小S处理解析(摄像头)

    [复制链接]

30

主题

477

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4940

论坛元老奖章

威望
705
贡献
4087
兑换币
0
注册时间
2009-6-14
在线时间
74 小时
跳转到指定楼层
1#
发表于 2010-6-18 19:47:30 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
本人不才,望高手看了别见笑。
     最近在看北科第二届,第三届,第四届的时候,有惊奇的发现。
        我来说说我的理解。
    当我们忙着如何处理S的时候,最简单的方法貌似就是穷举发了,所谓的穷举法就是将各种可能性都总结出来,知道找到自己想要的结果。其实有的时候我们跑S也是一个道理。讲过大量的数理统计也一样可以解决穿S的问题。
   如果你有北科的技术报告你现在可以打开看看,现在看北科的第三届技术报告的第31页下面和第32页上面
   for(n = (MAX_VIDEO_USEDLINE - 1); n >= 0; n --)
{
if(g_BlackPositionCenter[n] != 250)
{
if(0 == g_ValidLine)
{
g_DirectionControl = 0;
}
g_ValidLine ++;
g_BlackLineTotal += g_BlackPositionCenter[n];
//============加权平均===================
g_center = g_SolutedBlackPositionCenter[n];
//g_center = g_BlackPositionCenter[n];
32
g_DirectionControlLine += g_coeff[n];
g_DirectionControl += g_coeff[n] * g_center;
}
//======= ========
if(n == 30)
{
if(g_ValidLine >= 10)
{
g_BottomMiddle = g_BlackLineTotal / g_ValidLine;
}
}
}
  有这样一段程序大家注意一下。
    for(i = 0; i < MAX_VIDEO_USEDLINE; i++)
       {
        g_coeff = (MAX_VIDEO_USEDLINE - i) * (MAX_VIDEO_USEDLINE - i) * (MAX_VIDEO_USEDLINE - i);
      // g_coeff = (MAX_VIDEO_USEDLINE - i) * (MAX_VIDEO_USEDLINE - i);
       }
还有有这样一段程序大家注意一下。
我说的有点复杂,有时间的可以好好分析一下这部分程序
如果没有时间,看看这样一个表格

nn*nn*n*nn*n*n*nxnxn*n*xn*n*n*xn*n*n*n*xX2-X1X3-X2(X2-X1)-(X3-X2)
11116565656565
24816631262525041008-2
3927816118354916474941-2-20
4166425659236944377615104-2-20
525125625572851425712535625-2-20
63621612965533019801188071280-2-20
749343240153371259718179127253-2-20
864512409651408326426112208896-2-20
981729656149441396935721321489-2-20
1010010001000047470470047000470000-2-20
1112113311464145495544559895658845-2-20
1214417282073643516619274304891648-2-20
13169219728561415336929900771171001-2-20
141962744384163954676441070161498224-2-20
152253375506253755583251248751873125-2-20
162564096655363556089601433602293760-2-20
172894913835213356195371621292756193-2-20
18324583210497631558100441807923254256-2-20
19361685913032133627119132263474300593220
20400800016000035700140002800005600000220
结合这个表格你就会发现那段程序的秘密了。
n:摄像头由近及远是图像的行数。我设的n=50;
x:是每行的黑线位置。我选择0到140之间变化。
执行完g_DirectionControlLine += g_coeff[n];
g_DirectionControl += g_coeff[n] * g_center;
这段代码后就会发现S弯被滤掉了好多。
具体的你可以查看一下g_DirectionControl 的值。弯道和直到,还有S的重心就会得到很好的处理
然后将值给多舵机就可以了
说的不太清楚。可以给我发邮件讨论
315531799

评分

1

查看全部评分

0

主题

770

帖子

0

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
9280
威望
5224
贡献
3388
兑换币
3559
注册时间
2016-9-1
在线时间
334 小时
毕业学校
西南某校
35#
发表于 2017-7-9 11:50:05 | 只看该作者
回复 5# dongy
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

注册会员

Rank: 2

积分
101
QQ
威望
58
贡献
25
兑换币
26
注册时间
2016-9-13
在线时间
9 小时
毕业学校
桂林理工大学
34#
发表于 2017-7-9 11:47:55 | 只看该作者
楼主好强大
回复 支持 反对

使用道具 举报

8

主题

67

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1715
威望
857
贡献
544
兑换币
568
注册时间
2016-11-23
在线时间
157 小时
毕业学校
黑龙江工业学院
33#
发表于 2017-4-22 14:35:47 | 只看该作者
大神您处理后效果怎么样啊
回复 支持 反对

使用道具 举报

1

主题

14

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
368
威望
202
贡献
98
兑换币
123
注册时间
2013-1-16
在线时间
34 小时
毕业学校
海南师范大学
32#
发表于 2013-5-5 12:07:37 | 只看该作者
弱弱的问一句:直到控制中要用到加权平均值,距离摄像头多远的距离的数据参考才有作用
回复 支持 反对

使用道具 举报

9

主题

54

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
375
威望
205
贡献
88
兑换币
0
注册时间
2011-11-3
在线时间
41 小时
31#
发表于 2011-12-31 12:52:59 | 只看该作者
顶楼主!!很强大~~
回复 支持 反对

使用道具 举报

1

主题

9

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
214
威望
163
贡献
39
兑换币
0
注册时间
2011-10-20
在线时间
6 小时
30#
发表于 2011-11-3 18:25:33 | 只看该作者
很好
回复 支持 反对

使用道具 举报

20

主题

531

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3796
威望
1906
贡献
1056
兑换币
202
注册时间
2011-8-12
在线时间
417 小时
29#
发表于 2011-10-29 14:39:25 | 只看该作者
必须顶这个。。。
回复 支持 反对

使用道具 举报

2

主题

19

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
307
QQ
威望
246
贡献
21
兑换币
0
注册时间
2011-3-4
在线时间
20 小时
28#
发表于 2011-7-5 14:44:23 | 只看该作者
分析的很好啊
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-26 03:47 , Processed in 0.149727 second(s), 39 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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