200 void drawLine (
unsigned char start,
unsigned char end);
232 Skeleton (cv::Mat & rgbImage, cv::Mat & distanceImage, cv::Mat & skeletonImage, Json::Value
skeletonData);
BodyKeypoint
Enumeration for body keypoints produced from OpenPose.
Skeleton class is used for skeleton creations and manipulations.
cv::Mat getRGB_Image(void)
Get the RGB Image object.
void setSkeletonPoints3D_RS(std::vector< Point3D * > skeletonPoints3D_RS)
Set the SkeletonPoints3D RS vector.
std::vector< BodyKeyPoint > getBodyKeyPoints(void)
Get the Body Key Points vector.
std::vector< BodyKeyPoint > bodyKeyPoints
A vector that contains each body joint retrieved from OpenPose.
float getConsistency(void)
Get the Consistency float value.
void setSkeleton_Image(cv::Mat &skeleton_Image)
Set the Skeleton-only Image object.
cv::Mat skeleton_Image
A frame that contains only skeleton information such as green legs and red dots, representing connect...
void setRGB_Image(cv::Mat &rgbImage)
Set the RGB Image object.
void setBodyKeyPoints(std::vector< BodyKeyPoint > &bodyKeyPoints)
Set the Body Key Points vector.
~Skeleton(void)
Destroy the Skeleton object.
std::vector< Point3D * > * getSkeletonPoints3D(void)
Get the Skeleton Points3D vector's pointer.
void setBodyKeyPointsMap(std::vector< bool > &bodyKeyPointsMap)
Set the Body Key Points Map vector.
void setDistance_Image(cv::Mat &distanceImage)
Set the Distance Image object.
void drawCircle(cv::Point center)
Draw a circle at the specified point as a parameter.
void setConsistency(float consistency)
Set the Consistency float value.
std::vector< bool > bodyKeyPointsMap
A vector that contains for each body joint retrieved from OpenPose a corresponding boolean that means...
std::vector< bool > getBodyKeyPointsMap(void)
Get the BodyKeyPoints Map vector.
void calcBodyEdges(void)
Calculate Skeleton and invoke methods to draw it on the image according to OpenPose skeleton structur...
Json::Value getSkeletonData(void)
Get the Skeleton Data JSON object.
void deprojectSkeletonPoints3D(void)
Deprojection operation takes a 2D pixel location on a stream's images, as well as a depth,...
void writeCoordinates(void)
Write specific joint points' coordinates on the RGB image.
std::vector< Point3D * > skeletonPoints3D_RS
A vector that contains a set of pointers to Point3D. These points have coordinates whose domain is de...
void calcBodyKeypoints(void)
Retrieve BodyKeyPoints vector and the BodyKeyPoints Map bool vector from OpenPose output,...
std::vector< Point3D * > * skeletonPoints3D
A pointer to a vector that contains a set of pointers to Point3D. These points have coordinates in wh...
Skeleton(cv::Mat &rgbImage, cv::Mat &distanceImage, cv::Mat &skeletonImage, Json::Value skeletonData)
Construct a new Skeleton object.
cv::Mat rgb_Image
RGB frame related to the frame in which the skeleton may appears.
void setSkeletonPoints3D(std::vector< Point3D * > *skeletonPoints3D)
Set the Skeleton Points3D pointer to vector.
Json::Value skeletonData
Represents a Skeleton JSON value. This class is a discriminated union wrapper that can represent a:
void drawLine(unsigned char start, unsigned char end)
Draw a line that starts from a point and ends at another point. The points are specified as unsigned ...
void setSkeletonData(Json::Value skeletonData)
Set the Skeleton Data JSON object.
cv::Mat distance_Image
Distance frame related to the frame in which the skeleton may appears.
float consistency
Consistency is a value that represents how accurate is the OpenPose detection for this skeleton....
void generateSkeleton(void)
A high-level method that abstracts all the internal structure and operations of the Skeleton class....
cv::Mat getSkeleton_Image(void)
Get the Skeleton-only Image object.
cv::Mat getDistance_Image(void)
Get the Distance Image object.
std::vector< Point3D * > getSkeletonPoints3D_RS(void)
Get the SkeletonPoints3D RS vector.