#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.