44
#ifndef OPENCV_OBJDETECT_DBT_HPP
45
#define OPENCV_OBJDETECT_DBT_HPP
47
#include <opencv2/core.hpp>
63
int
minDetectionPeriod;
73
maxObjSize(INT_MAX, INT_MAX),
78
virtual
void
detect(
const
cv::Mat& image, std::vector<cv::Rect>& objects) = 0;
96
float
getScaleFactor()
100
void
setScaleFactor(
float
value)
104
int
getMinNeighbours()
106
return
minNeighbours;
108
void
setMinNeighbours(
int
value)
110
minNeighbours = value;
126
virtual
void
resetTracking();
128
virtual
void
process(
const
cv::Mat& imageGray);
134
typedef
std::pair<cv::Rect, int> Object;
135
virtual
void
getObjects(std::vector<cv::Rect>& result)
const;
136
virtual
void
getObjects(std::vector<Object>& result)
const;
140
DETECTED_NOT_SHOWN_YET,
142
DETECTED_TEMPORARY_LOST,
151
:id(_id), location(_location), status(_status)
155
virtual
void
getObjects(std::vector<ExtObject>& result)
const;
158
virtual
int
addObject(
const
cv::Rect& location);
161
class
SeparateDetectionWork;
163
friend
void* workcycleObjectDetectorFunction(
void* p);
167
int
numLastPositionsToTrack;
168
int
numStepsToWaitBeforeFirstShow;
169
int
numStepsToTrackWithoutDetectingIfObjectHasNotBeenShown;
170
int
numStepsToShowWithoutDetecting;
172
float
coeffTrackingWindowSize;
173
float
coeffObjectSizeToTrack;
174
float
coeffObjectSpeedUsingInPrediction;
183
typedef
std::vector<cv::Rect> PositionsVector;
185
PositionsVector lastPositions;
187
int
numDetectedFrames;
188
int
numFramesNotDetected;
193
lastPositions.push_back(rect);
197
static
int
getNextId()
205
std::vector<TrackedObject> trackedObjects;
207
std::vector<float> weightsPositionsSmoothing;
208
std::vector<float> weightsSizesSmoothing;
212
void
updateTrackedObjects(
const
std::vector<cv::Rect>& detectedObjects);
213
cv::Rect
calcTrackedObjectPositionToShow(
int
i)
const;
214
cv::Rect
calcTrackedObjectPositionToShow(
int
i, ObjectStatus& status)
const;
215
void
detectInRegion(
const
cv::Mat& img,
const
cv::Rect& r, std::vector<cv::Rect>& detectedObjectsInRegions);
Definition:
detection_based_tracker.hpp:69
Definition:
detection_based_tracker.hpp:58
n-dimensional dense array class
Definition:
mat.hpp:802
Template class for 2D rectangles
Definition:
core/types.hpp:421
Template class for specifying the size of an image or rectangle.
Definition:
core/types.hpp:316
CV_EXPORTS_W void max(InputArray src1, InputArray src2, OutputArray dst)
Calculates per-element maximum of two arrays or an array and a scalar.
CV_EXPORTS_W void min(InputArray src1, InputArray src2, OutputArray dst)
Calculates per-element minimum of two arrays or an array and a scalar.
"black box" representation of the file storage associated with a file on disk.
Definition:
aruco.hpp:75
Definition:
detection_based_tracker.hpp:146
Definition:
detection_based_tracker.hpp:166
Definition:
detection_based_tracker.hpp:61
Definition:
detection_based_tracker.hpp:182
Definition:
cvstd_wrapper.hpp:74