Public Types | Static Public Member Functions | Static Public Attributes | Private Member Functions
pano::MoleculeProcessor Class Reference

#include <MoleculeProcessor.h>

List of all members.

Public Types

enum  TFinder { DIJKSTRA }

Static Public Member Functions

static void create_num_steps_map (const ImageMolecule &mol, const cv::Ptr< ImageAtom > anchor_atom, const cv::Ptr< ImageAtom > &atom, std::map< cv::Ptr< ImageAtom >, size_t > &num_steps_map, std::map< cv::Ptr< ImageAtom >, std::set< std::string > > atoms_queried, std::map< cv::Ptr< ImageAtom >, bool > &node_lock, const std::string &graphvizDbgFilename=std::string(""))
 create the map that tells how many pairs it takes to travel along longest route from atom1 to atom2 of the anchor_pair. Recursive function.
static void findAndSetTrinsics (ImageMolecule &mol, TFinder WAY)
static void getCyclePairsAndAtoms (const ImageMolecule &mol, const std::map< cv::Ptr< ImageAtom >, size_t > &num_steps, const cv::Ptr< ImageAtom > &in_atom, std::map< cv::Ptr< ImageAtom >, AtomPair > &atom_to_pair_map, std::list< cv::Ptr< ImageAtom > > &atomchain, std::list< AtomPair > &cyclePairs)
 work backward from 'atom2' in anchor pair, store list of pairs and atoms along the way until getting back to atom1 anchor. kept hidden to discourage improper external usage.
static AtomPair matchwithFitter (cv::Ptr< ImageAtom > atom1, cv::Ptr< ImageAtom > atom2, ModelFitter &modelfitter)
static AtomPair matchwithFitter (cv::Ptr< ImageAtom > atom1, cv::Ptr< ImageAtom > atom2, cv::Ptr< ModelFitter > modelfitter)
static std::list< AtomPairqueryWithAtom (const ImageMolecule &molecule, cv::Ptr< ImageAtom > atom2, cv::Ptr< ModelFitter > modelfitter, float angle_thresh=-1.0)

Static Public Attributes

static const std::string GRAPHVIZ_FILENAME = "pairgraph.viz"
static const std::string SHOW_PAIRS = "SHOW_PAIRS"
static const std::string VERBOSE_GRAPHVIZ_FILENAME = "pairgraph.verbose.viz"

Private Member Functions

 MoleculeProcessor ()

Detailed Description

A container for algorithms that run on a molecule. For now does not store any particular data. In the future it might have some settings stored.

Definition at line 24 of file MoleculeProcessor.h.


Member Enumeration Documentation

Enumerator:
DIJKSTRA 

Definition at line 75 of file MoleculeProcessor.h.


Constructor & Destructor Documentation

Definition at line 29 of file MoleculeProcessor.cpp.


Member Function Documentation

static void pano::MoleculeProcessor::create_num_steps_map ( const ImageMolecule mol,
const cv::Ptr< ImageAtom anchor_atom,
const cv::Ptr< ImageAtom > &  atom,
std::map< cv::Ptr< ImageAtom >, size_t > &  num_steps_map,
std::map< cv::Ptr< ImageAtom >, std::set< std::string > >  atoms_queried,
std::map< cv::Ptr< ImageAtom >, bool > &  node_lock,
const std::string &  graphvizDbgFilename = std::string("") 
) [static]

create the map that tells how many pairs it takes to travel along longest route from atom1 to atom2 of the anchor_pair. Recursive function.

this finds and sets the TM and confidence for each atom in the molecule

Parameters:
mol

Definition at line 180 of file MoleculeProcessor.cpp.

static void pano::MoleculeProcessor::getCyclePairsAndAtoms ( const ImageMolecule mol,
const std::map< cv::Ptr< ImageAtom >, size_t > &  num_steps,
const cv::Ptr< ImageAtom > &  in_atom,
std::map< cv::Ptr< ImageAtom >, AtomPair > &  atom_to_pair_map,
std::list< cv::Ptr< ImageAtom > > &  atomchain,
std::list< AtomPair > &  cyclePairs 
) [static]

work backward from 'atom2' in anchor pair, store list of pairs and atoms along the way until getting back to atom1 anchor. kept hidden to discourage improper external usage.

static AtomPair pano::MoleculeProcessor::matchwithFitter ( cv::Ptr< ImageAtom atom1,
cv::Ptr< ImageAtom atom2,
ModelFitter modelfitter 
) [static]

Take two atoms and a generic modelfitter, create ImageAtomPair. success/failure of the matching is stored inside the ImageAtomPair.

static AtomPair pano::MoleculeProcessor::matchwithFitter ( cv::Ptr< ImageAtom atom1,
cv::Ptr< ImageAtom atom2,
cv::Ptr< ModelFitter modelfitter 
) [inline, static]

Definition at line 43 of file MoleculeProcessor.h.

std::list< AtomPair > pano::MoleculeProcessor::queryWithAtom ( const ImageMolecule molecule,
cv::Ptr< ImageAtom atom2,
cv::Ptr< ModelFitter modelfitter,
float  angle_thresh = -1.0 
) [static]

Using a 'fit method' to align <this> atom with input atom

Parameters:
atom2: incoming atom to match
modelfitter,:a type of fit scheme to match Does NOT change molecule, generates list of pairs containing atom2 and atoms in molecule that atom2 wants to bind to.

Definition at line 45 of file MoleculeProcessor.cpp.


Member Data Documentation

const std::string pano::MoleculeProcessor::GRAPHVIZ_FILENAME = "pairgraph.viz" [static]

default filename for saving meta data to graphviz 'dot' file

Definition at line 34 of file MoleculeProcessor.h.

const std::string pano::MoleculeProcessor::SHOW_PAIRS = "SHOW_PAIRS" [static]

show pairs while matching (e.g. point correspondence)

Definition at line 31 of file MoleculeProcessor.h.

const std::string pano::MoleculeProcessor::VERBOSE_GRAPHVIZ_FILENAME = "pairgraph.verbose.viz" [static]

default filename for saving meta data to verbose graphviz 'dot' file

Definition at line 37 of file MoleculeProcessor.h.


The documentation for this class was generated from the following files:


pano_core
Author(s): Ethan Rublee
autogenerated on Wed Aug 26 2015 16:34:01