PosturePerfection
Namespaces | Macros | Functions
post_processor.cpp File Reference
#include "post_processor.h"
#include "iir.h"
#include "intermediate_structures.h"
Include dependency graph for post_processor.cpp:

Namespaces

 PostProcessing
 Smoothen the results of inference and average body parts since the system assumes a side-on profile.
 

Macros

#define MIN_CONF_THRESH   0.0
 
#define MAX_CONF_THRESH   1.0
 
#define NUM_FILTERS_PER_BODY_PART   3
 

Functions

PostProcessing::Coordinate intelligent_mean_body_parts (PostProcessing::Coordinate left, PostProcessing::Coordinate right)
 Take the mean of two body parts. More...
 

Macro Definition Documentation

◆ MAX_CONF_THRESH

#define MAX_CONF_THRESH   1.0

◆ MIN_CONF_THRESH

#define MIN_CONF_THRESH   0.0

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

◆ NUM_FILTERS_PER_BODY_PART

#define NUM_FILTERS_PER_BODY_PART   3

Function Documentation

◆ intelligent_mean_body_parts()

PostProcessing::Coordinate intelligent_mean_body_parts ( PostProcessing::Coordinate  left,
PostProcessing::Coordinate  right 
)

Take the mean of two body parts.

Intended for use with two body parts that lie left and right of the spine (as an axis of symmetry). As the system is for use with the person in profile, these should overlap, but there may be slight differences.

If both input PostProcessing::Coordinates are PostProcessing::Trustworthy the arithmetic mean of the two is returned (x and y coordinates are averaged independently). If only one body part is PostProcessing::Trustworthy only that body part is returned, i.e., no averaging takes place. In the case where both are PostProcessing::Untrustworthy, the mean is returned, although this may not be particularly meaningful as indicated by the Untrustworthy flag.

Parameters
lefta Inference::Coordinate
righta Inference::Coordinate
Returns
PostProcessing::Coordinate the "intelligent" mean