赞
踩
拐点分为下拐点和上拐点。
我们可以看到上拐点类似于一个L形状。
这是我们人肉眼俯视图所看到的。
这是我们摄像头看到的十字形状。
而我们放大上拐点的形状
没错是这样一个形状,有人问你怎么知道,你可以证明一下。
怎么证明简单说一下,定义一个数组,从下往上扫描,扫描到黑点把此坐标的纵坐标放到数组里。然后你可以看数组里的值,你就知道这个拐点的形状了。
然后怎么找这个拐点,我们看这个拐点,以横坐标来看这条线上的坐标持续增大,无明显特征点。
以纵坐标来看,此拐点纵坐标最大。即我们根据这个特征点来找拐点。
怎么找,前面我们讲过啦,从下往上找,找到第一个黑点,把此点的纵坐标放到一个数组里,然后,比较这个数组的大小,如果出现减小或增大的,记录此点,立即退出循环(break)。
- /************************************************************
-
- 【函数名称】portrait_line
- 【功 能】纵向巡线函数
- 【参 数】无
- 【返 回 值】无
- 【实 例】portrait_line();
- 【注意事项】无
- ***********************************************************/
- void portrait_line(void)
- {
- uint8 i,j;
- for(i=0;i<Col;i++)
- {
- for(j=Row-1;j>=0;j--)
- {
- if(Pixle[j][i]==0||j==0)
- {
- above_arr[i]=j;
- break;
- }
- }
- }
- }
纵向巡线方便寻找上拐点。
下拐点相对简单哈。
我们摄像头从边界数组里来寻找,大家开始处理元素应该都寻过线,然后有左右边线数组。
以左边线数组为例,直接遍历出最大值,即为拐点。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。