diff options
Diffstat (limited to 'tracker-easy/preview.h')
-rw-r--r-- | tracker-easy/preview.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/tracker-easy/preview.h b/tracker-easy/preview.h new file mode 100644 index 00000000..fc7ec9c9 --- /dev/null +++ b/tracker-easy/preview.h @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2019 Stephane Lenclud + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + */ + + +#pragma once + +#include "tracker-easy-api.h" + +#include <opencv2/core.hpp> +#include <QImage> + +struct Preview +{ + Preview(int w, int h); + + Preview& operator=(const cv::Mat& frame); + QImage get_bitmap(); + void draw_head_center(numeric_types::f x, numeric_types::f y); + + operator cv::Mat&() { return iFrameResized; } + operator cv::Mat const&() const { return iFrameResized; } + +private: + static void ensure_size(cv::Mat& frame, int w, int h, int type); + +public: + cv::Mat iFrameResized, frame_out; + cv::Mat iFrameRgb; +}; + + |