34 squaredSigma = -0.735534 * bin_size * -0.735534 * bin_size;
45 positionScore = exp(-0.5 * (data->backProjectionSquaredDistance /
squaredSigma));
49 double orientationScore;
55 double poseScore = positionScore * orientationScore;
57 double totalScore = votedPose->weight - 1.0 + poseScore;
74 std::cout <<
"Doesn't support reference -> APORater score=0.0" << std::endl;
81 positionScore = exp(-0.5 * (data->backProjectionSquaredDistance /
squaredSigma));
85 double orientationScore;
91 double poseScore = positionScore * orientationScore;
94 if (votedPose->source->type.find(
"_sub") != std::string::npos)
96 totalScore = votedPose->weight - 1.0 + poseScore;
100 totalScore = poseScore;
106 std::cout <<
"APORater score=" << totalScore <<
" with" 107 <<
"\n\tPositionScore=" << positionScore <<
" with squaredDistance=" << data->backProjectionSquaredDistance <<
" maxSquaredDistancepDeviation=" << (
squaredSigma * 9) <<
" squaredSigma=" <<
squaredSigma 108 <<
"\n\tOrientationScore=" << orientationScore <<
" with angleDeviation=" << data->angleDeviation <<
" maxAngleDeviation=" <<
maxAngleDeviation 109 <<
"\nNormalized score=" << totalScore/votedPose->weightDenominator <<
" with denominator: " << votedPose->weightDenominator << std::endl;
const double maxAngleDeviation
bool isVoteSupportingReference(VotedPosePtr &votedPose, PosePtr &refPose, RatingDataPtr data)
boost::shared_ptr< RatingData > RatingDataPtr
virtual void printRatingAtBackProjectionLevel(VotedPosePtr &votedPose, PosePtr &refPose, RatingDataPtr data)
boost::shared_ptr< VotedPose > VotedPosePtr
virtual double rateAtBackProjectionLevel(VotedPosePtr &votedPose, RatingDataPtr data)
boost::shared_ptr< Pose > PosePtr
this namespace contains all generally usable classes.
APORater(double bin_size, double maxAngleDeviation)