智能车制作

标题: OV7620寻两条线 [打印本页]

作者: dongyunlong    时间: 2012-3-23 12:50
标题: OV7620寻两条线
本帖最后由 sonwendi 于 2012-3-23 13:23 编辑

有人用78列就能寻到两条线跑,我用了160列都不行,请问这是怎么回事呢?7620有640列,是不是在开头取39列,在末尾再取39列,也就是在开头和末尾各取39列,中间的不采集数据????用78列采集两条黑线,谁能给个思路?谢谢了!

作者: dongyunlong    时间: 2012-3-23 12:51
悬赏怎么弄呀???怎么成售价了???
作者: zjh3123629    时间: 2012-3-23 16:29
楼主摄像头采集这块还得补补啊。

中间不采数据,好吧,那万一你车不是开在正中央,那黑线会不会跑到中间去?那你又不要中间数据,那不就死球了?

近端的数据,100列的话,2.5mm的黑线对应4个点左右,如果你采集200列呢,=>2.5mm对应8个点是吧。
远端的数据道理也是一样,1.2m的位置因为近大远小的关系,所以黑线边细了,100列的话只能采集到一个点了,那200列的话就是2个点。
综上所述:提高你列的分辨率可以让你不会丢线。

但是你有提到你采集的点数为160列了,这我就蛋疼了,我120列都能看到2m,并且黑线占两个点左右,你这。。。

所以只能说你程序的问题或者你摄像头安装的问题了,和采集列数木有关系了。
作者: dongyunlong    时间: 2012-3-23 18:42
呵呵 用采集卡看时,摄像头能看见整张kt板,用串口调试助手看采集的数据时,车放在中间不动时,能看见两条黑线,就是车稍微拐弯时,就只能看见一条边了,这是怎么回事呢?
作者: Storm    时间: 2012-3-31 21:14
zjh3123629 发表于 2012-3-23 16:29
楼主摄像头采集这块还得补补啊。

中间不采数据,好吧,那万一你车不是开在正中央,那黑线会不会跑到中间 ...

采集程序怎样写更好啊,我用的OV6620可是只能采到90点左右,宽度才49厘米。求教啊..
作者: zjh3123629    时间: 2012-4-1 09:07
Storm 发表于 2012-3-31 21:14
采集程序怎样写更好啊,我用的OV6620可是只能采到90点左右,宽度才49厘米。求教啊..

这和采集程序没关系,这应该是属于梯形失真那块了,也就是我们的近大远小。

1:采集点数的话可以增加。
    1:缩短延迟函数;
    2:提高总线频率;
    3:使用指针,不使用for循环,比如buffer[row][collumn++];delay(); 这样写N个。
         因为for的话要多一步比较的语句。
    上述都能提高你的采集点数。但是我试过100个,1.2m远的黑线能有1到2个点,所以你的点数还OK。为什么是1.2m呢?因为小S的周期大概就是1.2m,能辨别出小S,那路径就比较优化了。

2:宽度49CM,对吧,那是你的第一行,那你看看第二行,是不是变大了,那第十行呢,是不是很大了,可能有60cm了,那如果你把第十行的当做第一行来使,那不就OK了?

    反正就是自己试试,想想就OK了,呵呵,不知道有没有解决你的疑惑,好好调试吧。

作者: Storm    时间: 2012-4-1 23:34
zjh3123629 发表于 2012-4-1 09:07
这和采集程序没关系,这应该是属于梯形失真那块了,也就是我们的近大远小。

1:采集点数的话可以增加。 ...

可是把远处的当做第一行那近处的就不能兼顾了啊,这不好控制车子?
作者: Storm    时间: 2012-4-1 23:43
zjh3123629 发表于 2012-4-1 09:07
这和采集程序没关系,这应该是属于梯形失真那块了,也就是我们的近大远小。

1:采集点数的话可以增加。 ...

用指针怎么写啊,求教?完整的采集程序...




欢迎光临 智能车制作 (http://111.231.132.190/) Powered by Discuz! X3.2