Esempio n. 1
0
void QOpenCvImageBox::putImage(IplImage *cvimage) {
    if (isHsvAllImageConvertedEnabled()) {
        // HSV conversion
        hsvReduce(cvimage);
    }

    // Objs detection
    if (isDetectionEnabled()) {  // If I have a cascade file
        if (detected_objs_array!=NULL) {  // release the memory
            delete [] detected_objs_array;
        }
        detected_objs_array=detect_objs(cvimage, storage, cascade, od_image_scale, objs_found, od_calc_time);
        draw_objs(cvimage, objs_found, detected_objs_array, CV_RGB(255,0,0), od_image_scale, 0, 0);

        // Sub Objs detection
        if (isSubDetectionEnabled()) {  // If I have a cascade file
            for (int c=0; c<objs_found; c++) {
                // Finding the image part
                IplImage *cvSubImage=cvCreateImage(cvSize(detected_objs_array[0].width*od_image_scale, detected_objs_array[0].height*od_image_scale), IPL_DEPTH_8U, 3);

                // Adapt the rect to the scale
                CvRect scaledRect = cvRect(detected_objs_array[0].x*od_image_scale, detected_objs_array[0].y*od_image_scale, detected_objs_array[0].width*od_image_scale, detected_objs_array[0].height*od_image_scale);

                // Setting the ROI
                cvSetImageROI(cvimage, scaledRect);

                // Copying a sub part
                cvCopyImage(cvimage, cvSubImage);

                // Resetting the ROI
                cvResetImageROI(cvimage);

                if (detected_sub_objs_array!=NULL) {  // release the memory
                    delete [] detected_sub_objs_array;
                }
                detected_sub_objs_array=detect_objs(cvSubImage, sub_storage, sub_cascade, sub_od_image_scale, sub_objs_found, sub_od_calc_time);

                ui->imageLabel->setPixmap(QPixmap::fromImage(convertToQImage(cvSubImage)));

                draw_objs(cvimage, objs_found, detected_sub_objs_array, CV_RGB(0,255,0), sub_od_image_scale, scaledRect.x, scaledRect.y);
            }
        }
    }

    lucasKanadeOF(cvimage);

    // Image conversion
    ui->imageLabel->setPixmap(QPixmap::fromImage(convertToQImage(cvimage)));
}
Esempio n. 2
0
int		fill_img(t_mlx *win, t_elem *elem)
{
  int		y;
  int		x;

  y = 0;
  while (y < WIN_Y)
    {
      x = 0;
      while (x < WIN_X)
  	{
	  win->eye_t.x = 100;
	  win->eye_t.y = ((WIN_X / 2) - x);
	  win->eye_t.z = ((WIN_Y / 2) - y);
	  win->V_eye.x = (win->eye_t.x - win->eye.x);
	  win->V_eye.y = (win->eye_t.y - win->eye.y);
	  win->V_eye.z = (win->eye_t.z - win->eye.z);
  	  calc_items(win, &elem);
  	  ppti(win, x, y, draw_objs(win, elem));
  	  ++x;
  	}
      gere_expose(win);
      ++y;
    }
  return (1);
}