示例#1
0
文件: glx-tfp.c 项目: blaztinn/piglit
static GLboolean
check_results(GLboolean has_alpha, int x, int y, int w, int h)
{
	GLboolean pass = GL_TRUE;

	pass &= check_pixel(has_alpha, tex_data[0],
			    x + w * 1 / 4, y + h * 1 / 4);
	pass &= check_pixel(has_alpha, tex_data[1],
			    x + w * 3 / 4, y + h * 1 / 4);
	pass &= check_pixel(has_alpha, tex_data[2],
			    x + w * 1 / 4, y + h * 3 / 4);
	pass &= check_pixel(has_alpha, tex_data[3],
			    x + w * 3 / 4, y + h * 3 / 4);

	return pass;
}
示例#2
0
static int check_all_funcs( int cpu_ref, int cpu_new )
{
    return check_pixel( cpu_ref, cpu_new )
         + check_dct( cpu_ref, cpu_new )
         + check_mc( cpu_ref, cpu_new )
         + check_intra( cpu_ref, cpu_new )
         + check_deblock( cpu_ref, cpu_new )
         + check_quant( cpu_ref, cpu_new )
         + check_cabac( cpu_ref, cpu_new );
}
示例#3
0
void tracking_findConnectedness(image_t image, trackedObject_t * objects)
{

  pixel_t cp;
  unsigned char i;
  unsigned short currLineStart   = 0;
  unsigned short currLineFinish  = 0; 
  unsigned char  lastLineXStart  = 0;
  unsigned char  lastLineXFinish = 255;  
  unsigned short runLength[7]    = {1,1,1,1,1,1,1};
  unsigned short currPixel;
  unsigned char  start_detect[7] = {0,0,0,0,0,0,0};
  bool_t colorConnected;	


  for(trackedLineCount = 0; trackedLineCount < 251; trackedLineCount++){
    currLineStart   = 0;
    currLineFinish  = 0; 
    start_detect[0] = 0;
    start_detect[1] = 0;
    runLength[0]    = 1;
    runLength[1]    = 1;
    for(currPixel = 0; currPixel < ACTUAL_NUM_PIXELS_IN_A_LINE; currPixel++){
      colorConnected = FALSE;
      get_pixel(&image, currPixel, trackedLineCount, &cp);
      for (i=0; i<2; i++){
        if( (check_pixel( &objects[i], cp ) == 1 ) ) { //&& ( (objects[i].y1 == (trackedLineCount - 1) ) )
          runLength[i]++;
          if(runLength[i] > MIN_OBJECT_TRACKING_WIDTH){
            if(start_detect[i] == 0){ 
              currLineStart  = currPixel;
              currLineFinish = currPixel;
            }
            else
              currLineFinish = currPixel;

            if ( ( (currLineStart  >= lastLineXStart) && (currLineStart  <= lastLineXFinish) ) ||  // I.
                 ( (currLineFinish >= lastLineXStart) && (currLineFinish <= lastLineXFinish) ) ||  // II.
                 ( (currLineStart  <= lastLineXStart) && (currLineFinish >= lastLineXFinish) ) )   // III.
            {
              objects[i].lastLineXStart   = currLineStart;
              objects[i].lastLineXFinish  = currLineFinish;

              /* check if the bounding box needs to be updated */
              if( (objects[i].x0) > currLineStart){
                objects[i].x0 = currLineStart;
              }
              if( ( objects[i].x1) < currLineFinish){
                objects[i].x1 = currLineFinish;
              }
              if( (objects[i].y0) > trackedLineCount){
                objects[i].y0 = trackedLineCount;
              }
              if( ( objects[i].y1) < trackedLineCount){
                objects[i].y1 = trackedLineCount;
              }
              colorConnected = TRUE;
            }
            start_detect[i] = 1;
          }
          if(colorConnected = FALSE){

          }
          

        }
      } 
    }
  }


}