Advertisement
kdelemme

Finding Face Algorithm

Apr 1st, 2012
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.08 KB | None | 0 0
  1. void findFace(DonneesImageRGB *img, int *xMin, int *yMin, int *xMax, int *yMax) {
  2.     int i,j;
  3.     float h,s,v;
  4.     float r,g,b;
  5.    
  6.     for (i=img->hauteurImage/8; i<img->hauteurImage; i++)
  7.         for (j=img->largeurImage/3; j<img->largeurImage*2/3; j++)
  8.         {
  9.             b = (float)(img->donneesRGB[(i*img->largeurImage + j)*3]) / 256 ;
  10.             g = (float)(img->donneesRGB[(i*img->largeurImage + j)*3 + 1]) / 256 ;
  11.             r = (float)(img->donneesRGB[(i*img->largeurImage + j)*3 + 2]) / 256 ;
  12.             if (r > 0.4 && r < 0.6 && g > 0.22 && g < 0.33 && r > g && g > (1-r)/2)
  13.             {
  14.                 convertRGBtoHSV(r,g,b,&h,&s,&v);
  15.                 if (h > 0 && h < 0.2 && s > 0.3 && s < 0.7 && v > 0.22 && v < 0.8)
  16.                 {
  17.                     if (j < *xMin)
  18.                         *xMin = j;
  19.                     if (i < *yMin)
  20.                         *yMin = i;
  21.                     if (j > *xMax)
  22.                         *xMax = j;
  23.                     if (i > *yMax)
  24.                         *yMax = i;
  25.                 }
  26.             }
  27.         }
  28. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement