Face Engine SDK  5.14.0
A face detection, recognition and tracking engine.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
ICrowdEstimator.h
1 #pragma once
2 
3 #include <fsdk/Def.h>
4 #include <fsdk/FSDKError.h>
5 #include <fsdk/IRefCounted.h>
6 #include <fsdk/Types/Image.h>
7 #include <fsdk/Types/Ref.h>
8 #include <fsdk/Types/Result.h>
9 #include <fsdk/Types/Span.h>
10 
11 namespace fsdk {
12 
13 #ifndef DOXYGEN_SHOULD_SKIP_THIS
14  DECLARE_SMARTPTR(ICrowdEstimator);
15 #endif
16 
29  CET_COUNT
30  };
31 
36  struct CrowdEstimation {
37  size_t count;
38  };
39 
56  virtual Result<FSDKError>
57  estimate(
58  const Image& image,
59  const Rect& rect,
60  CrowdEstimation& estimation) const noexcept = 0;
61 
74  virtual Result<FSDKError>
75  estimate(
76  Span<const Image> images,
77  Span<const Rect> rects,
78  Span<CrowdEstimation> estimations) const noexcept = 0;
79 
91  virtual Result<FSDKError>
92  validate(
93  Span<const Image> images,
94  Span<const Rect> rects,
95  Span<Result<FSDKError>> errors) const noexcept = 0;
96 
102  virtual CrowdEstimatorType
103  getType() const noexcept = 0;
104  };
106 } // namespace fsdk
#define DECLARE_SMARTPTR(X)
Smart ptr declaration helper macro.
Definition: Def.h:59
A structure that encapsulates an action result enumeration.
Definition: Result.h:29
virtual CrowdEstimatorType getType() const noexcept=0
Returns a type of the estimator.
Crowd estimation structure.
Definition: ICrowdEstimator.h:36
size_t count
The number of peoples (heads) on the image.
Definition: ICrowdEstimator.h:37
Common SDK error codes.
Single network mode - only Crowd estimation will be used.
Definition: ICrowdEstimator.h:27
Base strong reference counted object interface.
Definition: IRefCounted.h:36
Default type which is specified in config file.
Definition: ICrowdEstimator.h:26
virtual Result< FSDKError > estimate(const Image &image, const Rect &rect, CrowdEstimation &estimation) const noexcept=0
Estimates the crowd on the target image.
Common SDK definitions.
Double network mode - Crowd + HeadDetector.
Definition: ICrowdEstimator.h:28
Crowd estimator interface.
Definition: ICrowdEstimator.h:46
Image.
Definition: Image.h:39
virtual Result< FSDKError > validate(Span< const Image > images, Span< const Rect > rects, Span< Result< FSDKError >> errors) const noexcept=0
Validate input of multiple frames in a single function call.
Span. Not owning data view. It incapsulated pointer to the continuous array with one or more T objec...
Definition: Span.h:14
Reference counted object interface.
CrowdEstimatorType
CrowdEstimator type enumeration.
Definition: ICrowdEstimator.h:25