智能车制作

 找回密码
 注册

扫一扫,访问微社区

楼主: 王怀玉
打印 上一主题 下一主题

小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

查看全部评分

30

主题

477

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4940

论坛元老奖章

威望
705
贡献
4087
兑换币
0
注册时间
2009-6-14
在线时间
74 小时
2#
 楼主| 发表于 2010-6-18 19:48:47 | 显示全部楼层
为什么最近上传不了附件了啊
回复 支持 反对

使用道具 举报

30

主题

477

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4940

论坛元老奖章

威望
705
贡献
4087
兑换币
0
注册时间
2009-6-14
在线时间
74 小时
3#
 楼主| 发表于 2010-6-19 17:54:36 | 显示全部楼层
回复 7# dongy


你可以适当的减小p和i的调节量
回复 支持 反对

使用道具 举报

30

主题

477

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4940

论坛元老奖章

威望
705
贡献
4087
兑换币
0
注册时间
2009-6-14
在线时间
74 小时
4#
 楼主| 发表于 2010-6-20 10:09:03 | 显示全部楼层
回复 11# 善良的魔头


    都是大家交流出来的 呵呵
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-6 04:23 , Processed in 0.064265 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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