智能车制作

标题: 摄像头组起始线的识别 [打印本页]

作者: 徐达    时间: 2013-7-11 06:30
标题: 摄像头组起始线的识别
摄像头检测起始线用跳变沿感觉容易误判,而且成功率低,希望大神帮忙

作者: 被遗忘的乌托邦    时间: 2013-7-11 08:34
扫两边线内的 黑点数 吧
作者: 徐达    时间: 2013-7-11 09:25
被遗忘的乌托邦 发表于 2013-7-11 08:34
扫两边线内的 黑点数 吧

试了黑点数和跳变沿成功概率都挺低的,你们的成功率高么?

作者: 被遗忘的乌托邦    时间: 2013-7-11 10:51
徐达 发表于 2013-7-11 09:25
试了黑点数和跳变沿成功概率都挺低的,你们的成功率高么?

一开始 成功率不高 后来试着改了一下阈值 基本上不出错了  你们也是OV7620么?

作者: 徐达    时间: 2013-7-11 12:04
被遗忘的乌托邦 发表于 2013-7-11 10:51
一开始 成功率不高 后来试着改了一下阈值 基本上不出错了  你们也是OV7620么?

是的,OV7620,这个阈值
[attach]47879[/attach]

作者: 徐达    时间: 2013-7-11 12:09
被遗忘的乌托邦 发表于 2013-7-11 10:51
一开始 成功率不高 后来试着改了一下阈值 基本上不出错了  你们也是OV7620么?

对了,可以参靠一下起跑线程序吗?void startline() {  char qi_paox,qi_paoy,stop_flag1=0,stop_flag2=0;
  for(qi_paox=54;qi_paox>42;qi_paox--) {
     stop_flag1=0;
     stop_flag2=0;
   for(qi_paoy=56;qi_paoy>30;qi_paoy--){
    if(Image_Data[qi_paox][qi_paoy]<fa_zhi) {
    stop_flag1++;
    }

  }
   for(qi_paoy=60;qi_paoy<86;qi_paoy++){
    if(Image_Data[qi_paox][qi_paoy]<fa_zhi) {
    stop_flag2++;
    }

  }

   if(stop_flag1>12&&stop_flag2>12) {
   PWMDTY01=2806;
   PWMDTY3=55;
   PWMDTY5=0;
   delay1();
   //delay1();
   PWMDTY5=0;
   PWMDTY3=0;
   for(;;);
  }

  }

  }
帮我看一下,先谢了!


作者: tearedice    时间: 2013-7-11 12:39
徐达 发表于 2013-7-11 12:09
对了,可以参靠一下起跑线程序吗?void startline() {  char qi_paox,qi_paoy,stop_flag1=0,stop_flag2=0 ...

……
作者: tearedice    时间: 2013-7-11 12:39
徐达 发表于 2013-7-11 12:09
对了,可以参靠一下起跑线程序吗?void startline() {  char qi_paox,qi_paoy,stop_flag1=0,stop_flag2=0 ...

……{:soso_e141:}
作者: p141592653    时间: 2013-7-11 16:52
附上代码,成功率90以上,只要车子不要太偏
int check_star_line()
{
  char i,j;
  find=0;
  struct start_line line_start={0,0,0,0};
  for(i=85;i>65;i--)
  {
    if(LEFT[i]==-1 && RIGHT[i]==l)
      break;
    line_start.left_blank=0;
    line_start.left_black=0;
    line_start.blank=0;
    line_start.right_black=0;
    for(j=LEFT[i]+3;j<RIGHT[i]-3;j++)
    {
          if(photos1[i][j]==255 && line_start.left_black==0)
          {
            line_start.left_blank++;
            if(line_start.left_blank>10)
            {
              break;
            }
          }
          else if(photos1[i][j]==0 && line_start.left_blank && line_start.blank==0)
          {
            line_start.left_black++;
          }
          else if(photos1[i][j]==255 && line_start.left_black)
          {
            line_start.blank++;
           
          }
          else if(line_start.blank)
          {
            line_start.right_black++;
          }
    }
    if(line_start.right_black>0 && line_start.blank>12 && line_start.blank<21)
    {
      find++;
    }
  }
  if(find>1 && find<7  && check_start_line_time>3000 && check)
  {
     gpio_turn(PORTC,2);
    return 1;
  }
  else
    return 0;
}
作者: 徐达    时间: 2013-7-11 17:52
p141592653 发表于 2013-7-11 16:52
附上代码,成功率90以上,只要车子不要太偏
int check_star_line()
{

谢谢,尝试一下。

作者: 极速漂移    时间: 2016-6-20 16:57
请问一下  你说的识别起跑线是不是就是终点识别啊
作者: 徐达    时间: 2016-6-25 16:57
当时是
作者: g847279681    时间: 2016-6-26 10:19
徐达 发表于 2016-6-25 16:57
当时是

楼主毕业了吧,这都能回复





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