SmartSpectra C++ SDK
Measure human vitals from video with SmartSpectra C++ SDK.
Loading...
Searching...
No Matches
opencv_value_indicator.hpp
1
2// opencv_value_indicator.hpp
3// Created by greg on 12/16/24.
4// Copyright (C) 2024 Presage Security, Inc.
5//
6// This program is free software; you can redistribute it and/or
7// modify it under the terms of the GNU Lesser General Public
8// License as published by the Free Software Foundation; either
9// version 3 of the License, or (at your option) any later version.
10//
11// This program is distributed in the hope that it will be useful,
12// but WITHOUT ANY WARRANTY; without even the implied warranty of
13// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14// Lesser General Public License for more details.
15//
16// You should have received a copy of the GNU Lesser General Public License
17// along with this program; if not, write to the Free Software Foundation,
18// Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
20
21// === standard library includes (if any) ===
22// === third-party includes (if any) ===
23#include <opencv2/imgproc.hpp>
24#include <absl/status/status.h>
25// === local includes (if any) ===
26
27
28namespace presage::smartspectra::gui {
29
31public:
32 OpenCvValueIndicator(int x, int y, int width, int height, int precision_digits = 1);
33 ~OpenCvValueIndicator() = default;
34 absl::Status Render(cv::Mat& image, float value, cv::Scalar color);
35 absl::Status RenderNA(cv::Mat& image, cv::Scalar color);
36 static const float min_value;
37 static const float max_value;
38private:
39 cv::Rect2i indicator_area;
40 double font_scale;
41 cv::Point2i text_origin;
42 const int font_face = cv::FONT_HERSHEY_DUPLEX;
43 int precision_digits;
44
45};
46
47} // namespace presage::smartspectra::gui
OpenCvValueIndicator(int x, int y, int width, int height, int precision_digits=1)
Definition opencv_value_indicator.cpp:43