#include <handExtractorCaffe.hpp>
|
| HandExtractorCaffe (const Point< int > &netInputSize, const Point< int > &netOutputSize, const std::string &modelFolder, const int gpuId, const int numberScales=1, const float rangeScales=0.4f, const std::vector< HeatMapType > &heatMapTypes={}, const ScaleMode heatMapScaleMode=ScaleMode::ZeroToOneFixedAspect, const bool enableGoogleLogging=true) |
|
virtual | ~HandExtractorCaffe () |
|
void | netInitializationOnThread () |
|
void | forwardPass (const std::vector< std::array< Rectangle< float >, 2 >> handRectangles, const Matrix &inputData) |
|
Public Member Functions inherited from op::HandExtractorNet |
| HandExtractorNet (const Point< int > &netInputSize, const Point< int > &netOutputSize, const int numberScales=1, const float rangeScales=0.4f, const std::vector< HeatMapType > &heatMapTypes={}, const ScaleMode heatMapScaleMode=ScaleMode::ZeroToOneFixedAspect) |
|
virtual | ~HandExtractorNet () |
|
void | initializationOnThread () |
|
std::array< Array< float >, 2 > | getHeatMaps () const |
|
std::array< Array< float >, 2 > | getHandKeypoints () const |
|
bool | getEnabled () const |
|
void | setEnabled (const bool enabled) |
|
Hand keypoint extractor class for Caffe framework.
Definition at line 13 of file handExtractorCaffe.hpp.
◆ HandExtractorCaffe()
op::HandExtractorCaffe::HandExtractorCaffe |
( |
const Point< int > & |
netInputSize, |
|
|
const Point< int > & |
netOutputSize, |
|
|
const std::string & |
modelFolder, |
|
|
const int |
gpuId, |
|
|
const int |
numberScales = 1 , |
|
|
const float |
rangeScales = 0.4f , |
|
|
const std::vector< HeatMapType > & |
heatMapTypes = {} , |
|
|
const ScaleMode |
heatMapScaleMode = ScaleMode::ZeroToOneFixedAspect , |
|
|
const bool |
enableGoogleLogging = true |
|
) |
| |
Constructor of the HandExtractorCaffe 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. |
modelFolder | Folder where the models are located. |
gpuId | The GPU index (0-based) which the deep net will use. |
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. |
◆ ~HandExtractorCaffe()
virtual op::HandExtractorCaffe::~HandExtractorCaffe |
( |
| ) |
|
|
virtual |
Virtual destructor of the HandExtractor class. Required to allow inheritance.
◆ forwardPass()
void op::HandExtractorCaffe::forwardPass |
( |
const std::vector< std::array< Rectangle< float >, 2 >> |
handRectangles, |
|
|
const Matrix & |
inputData |
|
) |
| |
|
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). |
inputData | Original image in Mat format and BGR format. |
Implements op::HandExtractorNet.
◆ netInitializationOnThread()
void op::HandExtractorCaffe::netInitializationOnThread |
( |
| ) |
|
|
virtual |
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.
Implements op::HandExtractorNet.
The documentation for this class was generated from the following file: