Advertisement
Guest User

Untitled

a guest
Nov 19th, 2019
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.40 KB | None | 0 0
  1. void detectieVideoFace(){
  2. VideoCapture cap(0); // open the default camera
  3. if (!cap.isOpened()) // check if we succeeded
  4. return;
  5.  
  6. String face_cascade_name = "haarcascade_frontalface_alt.xml";
  7.  
  8. // Load the cascades
  9. if (!face_cascade.load(face_cascade_name))
  10. {
  11. printf("Error loading face cascades !\n");
  12. return;
  13. }
  14.  
  15. Mat frame_gray;
  16. namedWindow("camera", 1);
  17. for (;;)
  18. {
  19. std::vector<Rect> faces;
  20. Mat frame;
  21. cap >> frame; // get a new frame from camera
  22. cvtColor(frame, frame_gray, CV_BGR2GRAY);
  23. //GaussianBlur(edges, edges, Size(7, 7), 1.5, 1.5);
  24. equalizeHist(frame_gray, frame_gray);
  25. int minFaceSize = 30;
  26. int minEyeSize = minFaceSize / 5;
  27. face_cascade.detectMultiScale(frame_gray, faces, 1.1, 2, 0 | CV_HAAR_SCALE_IMAGE,
  28. Size(minFaceSize, minFaceSize));
  29.  
  30.  
  31. for (int i = 0; i < faces.size(); i++)
  32. {
  33. // get the center of the face
  34. Point center(faces[i].x + faces[i].width*0.5, faces[i].y + faces[i].height*0.5);
  35. // draw circle around the face
  36. //ellipse(frame, center, Size(faces[i].width*0.5, faces[i].height*0.5), 0, 0,
  37. //360, Scalar(255, 0, 255), 4, 8, 0);
  38. Point stanga_sus(faces[i].x, faces[i].y);
  39. Point dreapta_jos(faces[i].x + faces[i].height, faces[i].y + faces[i].width);
  40.  
  41. rectangle(frame, stanga_sus, dreapta_jos, Scalar(255, 0, 255), 1, 8, 0);
  42.  
  43.  
  44. }
  45. imshow("camera", frame);
  46. if (waitKey(30) >= 0) break;
  47. }
  48.  
  49. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement