Denníček - február 2020

Zo stránky Robotický krúžok
Verzia z 15:08, 4. február 2020, ktorú vytvoril Palo (diskusia | príspevky) (Vytvorená stránka „Oliver naprogramoval prvú verziu rozpoznávania lopty: <syntaxhighlight lang="C"> int je_lopta(uint8_t r, uint8_t g, uint8_t b) { float h, s, v, max, min; h = 0;...“)
(rozdiel) ← Staršia verzia | Aktuálna úprava (rozdiel) | Novšia verzia → (rozdiel)
Skočit na navigaci Skočit na vyhledávání

Oliver naprogramoval prvú verziu rozpoznávania lopty:

int je_lopta(uint8_t r, uint8_t g, uint8_t b)
{

  float h, s, v, max, min;
  h = 0;
 
   if (r < b){
    if(r < g){
      min = r;
    }
    else{
      min = g;
    }
  }
  else{
    if (b < g){
      min = b;
    }
    else{
      min = g;
    }
  }



  if (r > b){
    if(r > g){
      max = r;
      if (max!= min){
        h = 60*((g-b)/(max-min));
      }
    }
    else{
      max = g;
      if (max!= min){
        h = 60*(2+(b-r)/(max-min));
      }
    }
  }
  else{
    if (b > g){
      max = b;
      if (max!= min){
        h = 60*(4+(r-g)/(max - min));
      } 
    }
    else{
      max = g;
      if (max!= min){
        h = 60*(2+(b-r)/(max - min));
      }
    }
  }
 
  v = max;

  s = (max-min)/max;
  if (h < 0){
    h = h + 360;
  }
  if (h < 28 && h > 8 && s > 0.5 && v > 100){
    return 1;
  }
  return 0;
}

//------------------
if (je_lopta(r,g,b) == 1)
{
   cnt++;                      
}