#include <Recognizer.hpp>
Public Member Functions | |
void | arrangePatternsAccordingToTreeHeight () |
void | clearData () |
PatternNameAndVotingSpaceTuple | getBufferedVotingSpace () |
std::map< ObjectPtr, std::vector< VotedPosePtr > > | getVotingCache () |
const std::vector< RecognitionResultPtr > | recognizePattern (const ObjectSetPtr &objectSet, const double filterThreshold=0.0, const int resultsPerPattern=-1, const std::string targetPatternName="") |
Recognizer (const std::string &dbfilename, double bin_size, double maxProjectionAngleDeviation, bool enabledSelfVoteCheck, int raterType=0) | |
void | setObjectTypes (std::set< std::string > objectTypes) |
void | setPatternDefinitions (ISM::PatternNameToPatternMap patternDefinitions) |
void | setVoteSpecifiersPerObject (ISM::ObjectTypeToVoteMap voteSpecifiersPerObject) |
void | setVotingSpaceToBeBuffered (std::string patternName) |
Private Member Functions | |
PosePtr | calculatePoseFromVote (const PosePtr &pose, const VoteSpecifierPtr &vote) const |
void | calculateVotedPosesForAllObjects () |
void | fillAndEvalVotingSpaceAtTreeHeight (unsigned int treeHeight) |
void | getPatternDefinitions () |
int | objectAlreadyInSet (const ObjectPtr &o) |
int | resultAlreadyExisting (const RecognitionResultPtr &res) |
Static Private Member Functions | |
static std::vector< RecognitionResultPtr > | assembleIsmTrees (const std::vector< RecognitionResultPtr > &ismResults, const double filterThreshold, const int resultsPerPattern, const std::string targetPatternName) |
static std::vector< RecognitionResultPtr > | getSubPatternsForResult (RecognitionResultPtr result, std::map< std::string, std::vector< RecognitionResultPtr > > patternNameToResults) |
Private Attributes | |
double | bin_size |
bool | enabledSelfVoteCheck |
ObjectSetPtr | inputSet |
std::vector< RecognitionResultPtr > | ismResults |
double | maxProjectionAngleDeviation |
const int | mRaterType |
std::set< std::string > | objectTypes |
PatternNameToPatternMap | patternDefinitions |
std::string | patternForVotingSpaceViz |
TreeHeightToPatternName | patternPerTreeHeight |
PatternNameToVotedPoses | patternToVotedPoses |
TableHelperPtr | tableHelper |
ObjectTypeToVoteMap | voteSpecifiersPerObject |
std::map< ObjectPtr, std::vector< VotedPosePtr > > | votingCache |
PatternNameAndVotingSpaceTuple | votingSpaceBuffer |
Recognizer class. Class in which scene recognition with (non-)hierarchical isms is performed based on a hough voting scheme and vote backprojection. See Meissner et al. 2013 in Section IV and V (B).
Definition at line 35 of file Recognizer.hpp.
ISM::Recognizer::Recognizer | ( | const std::string & | dbfilename, |
double | bin_size, | ||
double | maxProjectionAngleDeviation, | ||
bool | enabledSelfVoteCheck, | ||
int | raterType = 0 |
||
) |
Create recognition interface to an sqlite db.
dbfilename | File containing scenes we want to be able to detect with this recognizer. |
bin_size | Side length of cubes (bins) making up voxel grid in which hough voting is performed. Maximal accepted distance between scene reference hypotheses of different objects in a bin. |
maxProjectionAngleDeviation | Maximal accepted difference in orientations of scene reference hypotheses of different objects in a bin. |
enabledSelfVoteCheck | Self-Vote-Check: Ensures the use of votedPose from a selfvoting object as originForFitting, if such an object exist. |
raterType | Objective function that is used for rating how well votedPoses in voxel grid match each other (especially in recognition results). |
Definition at line 37 of file Recognizer.cpp.
void ISM::Recognizer::arrangePatternsAccordingToTreeHeight | ( | ) |
Definition at line 263 of file Recognizer.cpp.
|
staticprivate |
Definition at line 355 of file Recognizer.cpp.
|
private |
Definition at line 243 of file Recognizer.cpp.
|
private |
Definition at line 69 of file Recognizer.cpp.
|
inline |
Definition at line 123 of file Recognizer.hpp.
|
private |
Definition at line 140 of file Recognizer.cpp.
|
inline |
Definition at line 140 of file Recognizer.hpp.
|
private |
Definition at line 248 of file Recognizer.cpp.
|
staticprivate |
Definition at line 419 of file Recognizer.cpp.
|
inline |
Definition at line 96 of file Recognizer.hpp.
|
private |
Definition at line 232 of file Recognizer.cpp.
const std::vector< RecognitionResultPtr > ISM::Recognizer::recognizePattern | ( | const ObjectSetPtr & | objectSet, |
const double | filterThreshold = 0.0 , |
||
const int | resultsPerPattern = -1 , |
||
const std::string | targetPatternName = "" |
||
) |
Find instances of scenes (or scene models) loaded beforehand in a spatial configuration of objects provided to this method. Returns hypotheses on existing scenes as subsets of that configuration that match a model during scene recognition by our hough voting scheme. Hyptheses are rated by confidences being the percentage of objects in the scene we detected in the provided object configuration.
objectSet | Object configuration in which scenes are tried to be detected. |
filterThreshold | Minimum confidence that a recognition result must dispose of, to be returned. |
resultsPerPattern | Maximum number of recognition results for each scene in db loaded beforehand. |
patternName | name of pattern which should be recognized. |
Definition at line 47 of file Recognizer.cpp.
|
private |
Definition at line 220 of file Recognizer.cpp.
|
inline |
Definition at line 108 of file Recognizer.hpp.
|
inline |
Definition at line 113 of file Recognizer.hpp.
|
inline |
Definition at line 103 of file Recognizer.hpp.
|
inline |
Definition at line 135 of file Recognizer.hpp.
|
private |
Definition at line 43 of file Recognizer.hpp.
|
private |
Definition at line 59 of file Recognizer.hpp.
|
private |
Definition at line 40 of file Recognizer.hpp.
|
private |
Definition at line 64 of file Recognizer.hpp.
|
private |
Definition at line 44 of file Recognizer.hpp.
|
private |
Definition at line 62 of file Recognizer.hpp.
|
private |
Definition at line 47 of file Recognizer.hpp.
|
private |
Definition at line 52 of file Recognizer.hpp.
|
private |
Definition at line 68 of file Recognizer.hpp.
|
private |
Definition at line 55 of file Recognizer.hpp.
|
private |
Definition at line 57 of file Recognizer.hpp.
|
private |
Definition at line 38 of file Recognizer.hpp.
|
private |
Definition at line 50 of file Recognizer.hpp.
|
private |
Definition at line 66 of file Recognizer.hpp.
|
private |
Definition at line 70 of file Recognizer.hpp.