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; +}; + + | 
