智能车制作

标题: 求解提取黑线核心 [打印本页]

作者: 机遇    时间: 2012-7-10 14:06
标题: 求解提取黑线核心
       
提取黑线核心
for(i=start_lie; i>=10; i--)
        {
                ////////////////////////////////////////找左邊界點
                for(j=pre_left_point-3;j<=pre_left_point+10;j++)
                {
                        if((image_data[i][j]|image_data[i][j+1]|image_data[i][j+2]|image_data[i][j+3]==1)&&(image_data[i][j-1]&image_data[i][j-2]&image_data[i][j-3]&image_data[i][j-4]==0))
                        {
                                Left_point=j;
                                pre_left_point=j;
                                border_line[i][left_border]=j;
                        }
                }

                ////////////////////////////////////////找右邊界點
                for(j=pre_right_point+3;j>=pre_right_point-10;j--)
                {
                        if((image_data[i][j]&image_data[i][j+1]&image_data[i][j+2]&image_data[i][j+3]==0)&&(image_data[i][j-1]|image_data[i][j-2]|image_data[i][j-3]|image_data[i][j-4]==1))
                        {
                                Right_point=j;
                                pre_right_point=j;
                                border_line[i][right_border]=j;
                        }
                }

                y=Left_point/2+Right_point/2;
                border_line[i][mid_border]=Left_point/2+Right_point/2;
                DrawPoint(y+75,i+10,0);//在液晶屏上描繪出中線

        }

这里的数组位或和位与我不是很懂 就解


作者: 机遇    时间: 2012-7-10 14:08
大概的意思是寻找跳变点 ,可是我不懂数组的位或和位与如何实现
作者: 疯狂的赛车    时间: 2012-7-10 15:05
边缘检测
作者: ゞ_____壞ぺ    时间: 2012-7-14 19:32
求解。。。。看不懂呢
作者: cui094    时间: 2012-12-10 23:23
有时候黑线只有一两个像素点,这么找跳变点行吗?
作者: wkhuahuo    时间: 2013-4-8 02:19
他是在你之前已经找到的左边沿线的附近找是否有跳变,有的话就记录。他连续检测了好几个点,确保它的附近的点都很小,这才说明这里是黑线。这也是为了排除干扰。
他的名字叫跟踪提取黑线
作者: 1518591585    时间: 2013-7-10 00:25
wkhuahuo 发表于 2013-4-8 02:19
他是在你之前已经找到的左边沿线的附近找是否有跳变,有的话就记录。他连续检测了好几个点,确保它的附近的 ...

我这样检测的,但是为什么左右边界寄存器的值总为0,就是没有找到黑线





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