20 #ifndef FRAME_EXTRACTION_H 21 #define FRAME_EXTRACTION_H 47 #include <experimental/filesystem> 48 namespace fs = std::experimental::filesystem;
53 #include "opencv2/opencv.hpp" 54 #include "opencv2/ximgproc.hpp" 161 #ifndef DOXYGEN_SHOULD_SKIP_THIS 432 static Mat
shift_frame(Mat in_frame,
int shiftx,
int shifty);
433 static Mat
corner_matching(Mat in_frame, vector<Point> contour,
int plusx,
int plusy);
434 static vector <int>
test_edges(Mat in_frame, vector<Point> contour,
int te_ret);
436 static vector <int>
edge_width(vector<Point> contour);
437 static vector <int>
edge_height(vector<Point> contour);
440 static Mat
traditional_centering(Mat in_frame, vector <vector<Point>> contours,
int largest, Rect box);
441 static int first_frame(Mat in_frame,
int framecnt);
444 static Mat
apply_dynamic_mask(Mat in_frame, vector<vector<Point>> contours,
int maskwidth);
447 static int box_finder(Mat in_frame,
bool do_thresh);
448 static int box_data(Rect box,
int framecnt);
450 static vector <Point>
qhe_bigone(Mat in_frame);
451 static vector <vector<Point>>
quiet_halo_elim(vector <vector<Point>> contours, vector <Point> bigone);
452 static int tier_one(
int cnt, Mat in_frame, vector <Point> bigone);
453 static int tier_two(
int cnt, Mat in_frame, vector <Point> bigone);
454 static int tier_three(
int cnt, Mat in_frame, Mat old_frame, vector <Point> bigone);
455 static int tier_four(
int cnt, Mat in_frame, Mat old_frame, vector <Point> bigone);
463 int main(
int argc,
char* argv[]);