OpenPose 1.0.0rc2 OpenPose: A Real-Time Multi-Person Key-Point Detection And Multi-Threading C++ Library

- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
op::FaceExtractorNet Class Referenceabstract

`#include <faceExtractorNet.hpp>`

Inherited by op::FaceExtractorCaffe.

## Public Member Functions
| FaceExtractorNet (const Point< int > &netInputSize, const Point< int > &netOutputSize, const std::vector< HeatMapType > &heatMapTypes={}, const ScaleMode heatMapScale=ScaleMode::ZeroToOne)
virtual | ~FaceExtractorNet ()
void | initializationOnThread ()
virtual void | forwardPass (const std::vector< Rectangle< float >> &faceRectangles, const cv::Mat &cvInputData)=0
Array< float > | getHeatMaps () const
Array< float > | getFaceKeypoints () const
bool | getEnabled () const
void | setEnabled (const bool enabled)

## Protected Member Functions
virtual void | netInitializationOnThread ()=0

## Protected Attributes
const Point< int > | mNetOutputSize
Array< float > | mFaceImageCrop
Array< float > | mFaceKeypoints
Array< float > | mHeatMaps
const ScaleMode | mHeatMapScaleMode
const std::vector< HeatMapType > | mHeatMapTypes
std::atomic< bool > | mEnabled

## Detailed Description

Face keypoint extractor class.

## Constructor & Destructor Documentation

op::FaceExtractorNet::FaceExtractorNet | ( | const Point< int > & | netInputSize,
|  | const Point< int > & | netOutputSize,
|  | const std::vector< HeatMapType > & | heatMapTypes = `{}`,
|  | const ScaleMode | heatMapScale = `ScaleMode::ZeroToOne`
| ) |  |
| explicit

Constructor of the FaceExtractorNet class.

Parameters

  netInputSize | Size at which the cropped image (where the face is located) is resized.
  netOutputSize | Size of the final results. At the moment, it must be equal than netOutputSize.

virtual op::FaceExtractorNet::~FaceExtractorNet | ( |  | ) |
| virtual

Virtual destructor of the HandExtractor class. Required to allow inheritance.

## Member Function Documentation

virtual void op::FaceExtractorNet::forwardPass | ( | const std::vector< Rectangle< float >> & | faceRectangles,
|  | const cv::Mat & | cvInputData
| ) |  |
| pure virtual

This function extracts the face keypoints for each detected face in the image.

Parameters

  faceRectangles | location of the faces in the image. It is a length-variable std::vector, where each index corresponds to a different person in the image. Internally, a op::Rectangle<float> (similar to cv::Rect for floating values) with the position of that face (or 0,0,0,0 if some face is missing, e.g., if a specific person has only half of the body inside the image).
  cvInputData | Original image in cv::Mat format and BGR format.

Implemented in op::FaceExtractorCaffe.

bool op::FaceExtractorNet::getEnabled | ( |  | ) | const

Array<float> op::FaceExtractorNet::getFaceKeypoints | ( |  | ) | const

This function returns the face keypoins. VERY IMPORTANT: use getFaceKeypoints().clone() if the keypoints are going to be edited in a different thread.

Returns
  A Array with all the face keypoints. It 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).

Array<float> op::FaceExtractorNet::getHeatMaps | ( |  | ) | const

void op::FaceExtractorNet::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.

virtual void op::FaceExtractorNet::netInitializationOnThread | ( |  | ) |
| protected pure virtual

Implemented in op::FaceExtractorCaffe.

void op::FaceExtractorNet::setEnabled | ( | const bool | enabled | ) |

## Member Data Documentation

std::atomic<bool> op::FaceExtractorNet::mEnabled
| protected

Array<float> op::FaceExtractorNet::mFaceImageCrop
| protected

Array<float> op::FaceExtractorNet::mFaceKeypoints
| protected

Array<float> op::FaceExtractorNet::mHeatMaps
| protected

const ScaleMode op::FaceExtractorNet::mHeatMapScaleMode
| protected

const std::vector<HeatMapType> op::FaceExtractorNet::mHeatMapTypes
| protected

const Point<int> op::FaceExtractorNet::mNetOutputSize
| protected

The documentation for this class was generated from the following file:

- /home/travis/build/CMU-Perceptual-Computing-Lab/openpose/include/openpose/face/faceExtractorNet.hpp