#include <handExtractorNet.hpp>
Hand keypoint extractor class.
Definition at line 13 of file handExtractorNet.hpp.
◆ HandExtractorNet()
Constructor of the HandExtractorNet class.
- Parameters
-
netInputSize | Size at which the cropped image (where the hand is located) is resized. |
netOutputSize | Size of the final results. At the moment, it must be equal than netOutputSize. |
numberScales | Number of scales to run. The more scales, the slower it will be but possibly also more accurate. |
rangeScales | The range between the smaller and bigger scale. |
◆ ~HandExtractorNet()
virtual op::HandExtractorNet::~HandExtractorNet |
( |
| ) |
|
|
virtual |
Virtual destructor of the HandExtractorNet class. Required to allow inheritance.
◆ forwardPass()
virtual void op::HandExtractorNet::forwardPass |
( |
const std::vector< std::array< Rectangle< float >, 2 >> |
handRectangles, |
|
|
const Matrix & |
cvInputData |
|
) |
| |
|
pure virtual |
This function extracts the hand keypoints for each detected hand in the image.
- Parameters
-
handRectangles | location of the hands in the image. It is a length-variable std::vector, where each index corresponds to a different person in the image. Internally the std::vector, a std::array of 2 elements: index 0 and 1 for left and right hand respectively. Inside each array element, a op::Rectangle<float> (similar to cv::Rect for floating values) with the position of that hand (or 0,0,0,0 if some hand is missing, e.g., if a specific person has only half of the body inside the image). |
cvInputData | Original image in Mat format and BGR format. |
Implemented in op::HandExtractorCaffe.
◆ getEnabled()
bool op::HandExtractorNet::getEnabled |
( |
| ) |
const |
◆ getHandKeypoints()
std::array<Array<float>, 2> op::HandExtractorNet::getHandKeypoints |
( |
| ) |
const |
This function returns the hand keypoins. VERY IMPORTANT: use getHandKeypoints().clone() if the keypoints are going to be edited in a different thread.
- Returns
- A std::array with all the left hand keypoints (index 0) and all the right ones (index 1). Each Array<float> follows the pose structure, i.e., the first dimension corresponds to all the people in the image, the second to each specific keypoint, and the third one to (x, y, score).
◆ getHeatMaps()
std::array<Array<float>, 2> op::HandExtractorNet::getHeatMaps |
( |
| ) |
const |
◆ initializationOnThread()
void op::HandExtractorNet::initializationOnThread |
( |
| ) |
|
This function must be call before using any other function. It must also be called inside the thread in which the functions are going to be used.
◆ netInitializationOnThread()
virtual void op::HandExtractorNet::netInitializationOnThread |
( |
| ) |
|
|
protectedpure virtual |
◆ setEnabled()
void op::HandExtractorNet::setEnabled |
( |
const bool |
enabled | ) |
|
◆ mEnabled
std::atomic<bool> op::HandExtractorNet::mEnabled |
|
protected |
◆ mHandImageCrop
Array<float> op::HandExtractorNet::mHandImageCrop |
|
protected |
◆ mHandKeypoints
std::array<Array<float>, 2> op::HandExtractorNet::mHandKeypoints |
|
protected |
◆ mHeatMaps
std::array<Array<float>, 2> op::HandExtractorNet::mHeatMaps |
|
protected |
◆ mHeatMapScaleMode
const ScaleMode op::HandExtractorNet::mHeatMapScaleMode |
|
protected |
◆ mHeatMapTypes
const std::vector<HeatMapType> op::HandExtractorNet::mHeatMapTypes |
|
protected |
◆ mMultiScaleNumberAndRange
const std::pair<int, float> op::HandExtractorNet::mMultiScaleNumberAndRange |
|
protected |
◆ mNetOutputSize
const Point<int> op::HandExtractorNet::mNetOutputSize |
|
protected |
The documentation for this class was generated from the following file: