DeepSight SDK  3.0.0
DeepSight SDK - crowd face analysis
ds_deepsight.h
Go to the documentation of this file.
1 /*
2  * DeepSight face analysis SDK
3  * Copyright (C) 2013-2023 Raydiant Inc. - All Rights Reserved
4  *
5  * This file is subject to the terms and conditions defined in
6  * the 'LICENSE.txt' file, which is part of this source code package.
7  *
8  */
9 
10 #ifndef DS_DEEPSIGHT_H
11 #define DS_DEEPSIGHT_H
12 
13 #include "ds_exports.h"
14 #include "ds_person.h"
15 #include "ds_settings.h"
16 
17 #include <memory>
18 #include <string>
19 #include <vector>
20 #include <chrono>
21 
22 #include <opencv2/core/core.hpp>
23 
24 namespace ds {
25 
26 DS_API std::string getVersion();
27 
29 {
30 public:
31  DeepSight( const ds::Settings & settings );
32  ~DeepSight() noexcept;
33 
34  DeepSight( DeepSight && ds ) noexcept;
35  DeepSight & operator=( DeepSight && ds ) noexcept;
36 
37  void authenticate();
38 
39  void setSettings( const ds::Settings & settings );
40  ds::Settings getSettings() const;
41 
42  std::vector<ds::Person> analyze( const cv::Mat & image );
43  std::vector<ds::Person> analyzeSingleImage( const cv::Mat & image );
44  std::vector<ds::Body> analyzeBodies( const cv::Mat & image );
45 
46  std::vector<cv::Rect> getTrackedBoxes();
47 
48  int getLicenseTimeLeft() const;
49  int getCountOfFaces() const;
50  int getCountOfBodies() const;
51 
52  void resetTracker( bool resetCount );
53  void resetBodyTracker( bool resetCount );
54 
55 private:
56  class DeepSightImpl;
57  std::unique_ptr<DeepSightImpl> mDeepSightImpl;
58 };
59 } /* namespace ds */
60 
61 #endif /* DS_DEEPSIGHT_H */
DS_API
#define DS_API
Controls the importing of the SDK symbols.
ds::DeepSight
DeepSight SDK engine class.
Definition: ds_deepsight.h:28
ds::Settings
DeepSight SDK settings class.
Definition: ds_settings.h:19
ds_person.h
ds_settings.h
ds::getVersion
DS_API std::string getVersion()
return the DeepSight SDK version string.
ds_exports.h