functions.h 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. #ifndef FUNCTIONS_H
  2. #define FUNCTIONS_H
  3. #include <QMainWindow>
  4. #include <QObject>
  5. #include <QWidget>
  6. #include <QImage>
  7. #include <QDebug>
  8. #include <iostream>
  9. #include <opencv2/highgui/highgui.hpp>
  10. #include <opencv2/imgproc/imgproc.hpp>
  11. #include <opencv2/objdetect/objdetect.hpp>
  12. #include <opencv2/videoio/videoio.hpp>
  13. #include <opencv2/dnn/dnn.hpp>
  14. typedef enum
  15. {
  16. GREY8,
  17. RGB8,
  18. BRG8,
  19. BGR8,
  20. }Color_type;
  21. class functions : public QMainWindow
  22. {
  23. Q_OBJECT
  24. public:
  25. explicit functions(QWidget *parent = nullptr);
  26. int init_detect_visages(void);
  27. cv::Mat detect_visages(cv::Mat frame, Color_type type);
  28. int init_dnn(void);
  29. cv::Mat dnn_test(cv::Mat frame);
  30. cv::Mat frame_fake_gray;
  31. cv::Mat frame_gray;
  32. cv::Mat frame;
  33. std::vector<cv::Rect> faces;
  34. std::vector<cv::Rect> eyes;
  35. /** Global variables */
  36. cv::String face_cascade_name = "haarcascade_frontalface_alt.xml";
  37. cv::String eyes_cascade_name = "haarcascade_eye_tree_eyeglasses.xml";
  38. cv::CascadeClassifier face_cascade;
  39. cv::CascadeClassifier eyes_cascade;
  40. private:
  41. };
  42. #endif // FUNCTIONS_H