#include <TripleMatchSetLineSeg.h>

Public Types | |
| enum | { NoMatch = -1 } |
Public Member Functions | |
| TripleMatchSetLineSeg () | |
| TripleMatchSetLineSeg (LineSegSet &lines1, LineSegSet &lines2, LineSegSet &lines3) | |
| TripleMatchSetLineSeg (const PairMatchSetLineSeg &, const PairMatchSetLineSeg &) | |
| void | set (LineSegSet &lines1, LineSegSet &lines2, LineSegSet &lines3) |
| PairMatchSetLineSeg * | get_matches12 () |
| PairMatchSetLineSeg * | get_matches23 () |
| LineSegSet * | get_linesegs1 () |
| LineSegSet * | get_linesegs2 () |
| LineSegSet * | get_linesegs3 () |
| PairMatchSetLineSeg const * | get_matches12 () const |
| PairMatchSetLineSeg const * | get_matches23 () const |
| LineSegSet const * | get_linesegs1 () const |
| LineSegSet const * | get_linesegs2 () const |
| LineSegSet const * | get_linesegs3 () const |
| void | extract_matches (vcl_vector< HomgLineSeg2D > &linesegs1, vcl_vector< int > &lineseg_index_1, vcl_vector< HomgLineSeg2D > &linesegs2, vcl_vector< int > &lineseg_index_2, vcl_vector< HomgLineSeg2D > &linesegs3, vcl_vector< int > &lineseg_index_3) const |
| Copy inliers to three arrays, and record the original indices. | |
| void | extract_matches (vcl_vector< HomgLineSeg2D > &linesegs1, vcl_vector< HomgLineSeg2D > &linesegs2, vcl_vector< HomgLineSeg2D > &linesegs3) const |
| Copy inliers to three arrays. | |
| void | clear_matches () |
| Remove all tuples. | |
| void | clear_nontriplets () |
| int | count () const |
| Return the number of triplets. O(n). | |
| bool | add_match (int i, int ii, int iii) |
| Add triplet (i1, i2, i3) to the matchset. | |
| bool | delete_match (int i1, int i2, int i3) |
| bool | contains (int i1, int i2, int i3) |
| bool | get_1 (int i1, int *i1out, int *i2out, int *i3out) const |
| Select(1 = c). | |
| bool | get_2 (int i2, int *i1out, int *i2out, int *i3out) const |
| Select(2 = c). | |
| bool | get_3 (int i3, int *i1out, int *i2out, int *i3out) const |
| Select(3 = c). | |
| int | get_match_12 (int i1) const |
| Select(1 = i1).2, meaning take the 2nd component of the tuples in which the first component equals i1. | |
| int | get_match_23 (int i2) const |
| Select(2 = i2).3 Complexity O(1). | |
| int | get_match_31 (int i3) const |
| Select(3 = i3).1 Complexity O(n). | |
| int | get_match_21 (int i2) const |
| Select(2 = i2).1 Complexity O(n). | |
| int | get_match_32 (int i3) const |
| Select(3 = i3).2 Complexity O(n). | |
| int | get_match_13 (int i1) const |
| Select(1 = i1).3. | |
| int | get_match_123 (int i1, int i2) const |
| Select({1,2} = {i1, i2}).3. | |
| void | set (PairMatchSet *match12, PairMatchSet *match23) |
| Destroy current PairMatchSets and adopt two new ones. | |
| void | set_from_pairwise_matches (const PairMatchSet &matches12, const PairMatchSet &matches23) |
| Join two PairMatchSets on their 2nd and 1st columns respectively. | |
| void | write_ascii (vcl_ostream &s) const |
| Write as three ascii columns. | |
| bool | read_ascii (vcl_istream &s) |
| Read from ascii vcl_istream. | |
| void | update_feature_match_data () |
| int | size () const |
| bool | get_match (int at, int *i1, int *i2, int *i3) const |
| iterator | begin () const |
Static Public Member Functions | |
| static bool | matchp (int i) |
| Return true if i is not the "NoMatch" value. | |
Protected Attributes | |
| PairMatchSet * | match12_ |
| PairMatchSet * | match23_ |
Definition at line 24 of file TripleMatchSetLineSeg.h.
anonymous enum [inherited] |
Definition at line 29 of file MatchSet.h.
| TripleMatchSetLineSeg::TripleMatchSetLineSeg | ( | ) |
Definition at line 17 of file TripleMatchSetLineSeg.cxx.
| TripleMatchSetLineSeg::TripleMatchSetLineSeg | ( | LineSegSet & | lines1, |
| LineSegSet & | lines2, | ||
| LineSegSet & | lines3 | ||
| ) |
Definition at line 22 of file TripleMatchSetLineSeg.cxx.
| TripleMatchSetLineSeg::TripleMatchSetLineSeg | ( | const PairMatchSetLineSeg & | match12, |
| const PairMatchSetLineSeg & | match23 | ||
| ) |
Definition at line 30 of file TripleMatchSetLineSeg.cxx.
| bool TripleMatchSet::add_match | ( | int | i1, |
| int | i2, | ||
| int | i3 | ||
| ) | [inherited] |
Add triplet (i1, i2, i3) to the matchset.
Any existing matches of the form (i1, *, *) are removed. O(1).
Definition at line 127 of file TripleMatchSet.cxx.
| iterator TripleMatchSet::begin | ( | ) | const [inline, inherited] |
Definition at line 102 of file TripleMatchSet.h.
| void TripleMatchSet::clear_matches | ( | ) | [inherited] |
Remove all tuples.
Definition at line 156 of file TripleMatchSet.cxx.
| void TripleMatchSet::clear_nontriplets | ( | ) | [inherited] |
Definition at line 245 of file TripleMatchSet.cxx.
| bool TripleMatchSet::contains | ( | int | i1, |
| int | i2, | ||
| int | i3 | ||
| ) | [inherited] |
| int TripleMatchSet::count | ( | ) | const [inherited] |
Return the number of triplets. O(n).
Definition at line 147 of file TripleMatchSet.cxx.
| bool TripleMatchSet::delete_match | ( | int | i1, |
| int | i2, | ||
| int | i3 | ||
| ) | [inherited] |
Definition at line 281 of file TripleMatchSet.cxx.
| void TripleMatchSetLineSeg::extract_matches | ( | vcl_vector< HomgLineSeg2D > & | linesegs1, |
| vcl_vector< int > & | lineseg_index_1, | ||
| vcl_vector< HomgLineSeg2D > & | linesegs2, | ||
| vcl_vector< int > & | lineseg_index_2, | ||
| vcl_vector< HomgLineSeg2D > & | linesegs3, | ||
| vcl_vector< int > & | lineseg_index_3 | ||
| ) | const |
Copy inliers to three arrays, and record the original indices.
Definition at line 44 of file TripleMatchSetLineSeg.cxx.
| void TripleMatchSetLineSeg::extract_matches | ( | vcl_vector< HomgLineSeg2D > & | linesegs1, |
| vcl_vector< HomgLineSeg2D > & | linesegs2, | ||
| vcl_vector< HomgLineSeg2D > & | linesegs3 | ||
| ) | const |
Copy inliers to three arrays.
| bool TripleMatchSet::get_1 | ( | int | c, |
| int * | i1, | ||
| int * | i2, | ||
| int * | i3 | ||
| ) | const [inherited] |
Select(1 = c).
{1,2,3}. Complexity O(1). Returns true iff a match was found.
Definition at line 214 of file TripleMatchSet.cxx.
| bool TripleMatchSet::get_2 | ( | int | c, |
| int * | i1, | ||
| int * | i2, | ||
| int * | i3 | ||
| ) | const [inherited] |
| bool TripleMatchSet::get_3 | ( | int | c, |
| int * | i1, | ||
| int * | i2, | ||
| int * | i3 | ||
| ) | const [inherited] |
| LineSegSet* TripleMatchSetLineSeg::get_linesegs1 | ( | ) | [inline] |
Definition at line 36 of file TripleMatchSetLineSeg.h.
| LineSegSet const* TripleMatchSetLineSeg::get_linesegs1 | ( | ) | const [inline] |
Definition at line 43 of file TripleMatchSetLineSeg.h.
| LineSegSet* TripleMatchSetLineSeg::get_linesegs2 | ( | ) | [inline] |
Definition at line 37 of file TripleMatchSetLineSeg.h.
| LineSegSet const* TripleMatchSetLineSeg::get_linesegs2 | ( | ) | const [inline] |
Definition at line 44 of file TripleMatchSetLineSeg.h.
| LineSegSet* TripleMatchSetLineSeg::get_linesegs3 | ( | ) | [inline] |
Definition at line 38 of file TripleMatchSetLineSeg.h.
| LineSegSet const* TripleMatchSetLineSeg::get_linesegs3 | ( | ) | const [inline] |
Definition at line 45 of file TripleMatchSetLineSeg.h.
| bool TripleMatchSet::get_match | ( | int | at, |
| int * | i1, | ||
| int * | i2, | ||
| int * | i3 | ||
| ) | const [inline, inherited] |
Definition at line 74 of file TripleMatchSet.h.
| int TripleMatchSet::get_match_12 | ( | int | i1 | ) | const [inherited] |
Select(1 = i1).2, meaning take the 2nd component of the tuples in which the first component equals i1.
Complexity O(1).
Definition at line 165 of file TripleMatchSet.cxx.
| int TripleMatchSet::get_match_123 | ( | int | i1, |
| int | i2 | ||
| ) | const [inherited] |
| int TripleMatchSet::get_match_13 | ( | int | i1 | ) | const [inherited] |
| int TripleMatchSet::get_match_21 | ( | int | i2 | ) | const [inherited] |
Select(2 = i2).1 Complexity O(n).
Definition at line 184 of file TripleMatchSet.cxx.
| int TripleMatchSet::get_match_23 | ( | int | i2 | ) | const [inherited] |
Select(2 = i2).3 Complexity O(1).
Definition at line 178 of file TripleMatchSet.cxx.
| int TripleMatchSet::get_match_31 | ( | int | i3 | ) | const [inherited] |
Select(3 = i3).1 Complexity O(n).
Definition at line 190 of file TripleMatchSet.cxx.
| int TripleMatchSet::get_match_32 | ( | int | i3 | ) | const [inherited] |
Select(3 = i3).2 Complexity O(n).
Definition at line 196 of file TripleMatchSet.cxx.
| PairMatchSetLineSeg* TripleMatchSetLineSeg::get_matches12 | ( | ) | [inline] |
Definition at line 33 of file TripleMatchSetLineSeg.h.
| PairMatchSetLineSeg const* TripleMatchSetLineSeg::get_matches12 | ( | ) | const [inline] |
Definition at line 40 of file TripleMatchSetLineSeg.h.
| PairMatchSetLineSeg* TripleMatchSetLineSeg::get_matches23 | ( | ) | [inline] |
Definition at line 34 of file TripleMatchSetLineSeg.h.
| PairMatchSetLineSeg const* TripleMatchSetLineSeg::get_matches23 | ( | ) | const [inline] |
Definition at line 41 of file TripleMatchSetLineSeg.h.
| static bool MatchSet::matchp | ( | int | i | ) | [inline, static, inherited] |
Return true if i is not the "NoMatch" value.
Definition at line 32 of file MatchSet.h.
| bool TripleMatchSet::read_ascii | ( | vcl_istream & | s | ) | [inherited] |
Read from ascii vcl_istream.
Definition at line 77 of file TripleMatchSet.cxx.
| void TripleMatchSetLineSeg::set | ( | LineSegSet & | lines1, |
| LineSegSet & | lines2, | ||
| LineSegSet & | lines3 | ||
| ) |
Definition at line 39 of file TripleMatchSetLineSeg.cxx.
| void TripleMatchSet::set | ( | PairMatchSet * | match12, |
| PairMatchSet * | match23 | ||
| ) | [inherited] |
Destroy current PairMatchSets and adopt two new ones.
Definition at line 41 of file TripleMatchSet.cxx.
| void TripleMatchSet::set_from_pairwise_matches | ( | const PairMatchSet & | matches12, |
| const PairMatchSet & | matches23 | ||
| ) | [inherited] |
Join two PairMatchSets on their 2nd and 1st columns respectively.
I.e. make the TripleMatchSet which contains (i1,i2,i3) iff
matches12.contains(i1, i2) and matches23.contains(i2, i3)
Definition at line 54 of file TripleMatchSet.cxx.
| int TripleMatchSet::size | ( | ) | const [inherited] |
Definition at line 300 of file TripleMatchSet.cxx.
| void TripleMatchSet::update_feature_match_data | ( | ) | [inherited] |
Definition at line 306 of file TripleMatchSet.cxx.
| void TripleMatchSet::write_ascii | ( | vcl_ostream & | s | ) | const [inherited] |
Write as three ascii columns.
Definition at line 67 of file TripleMatchSet.cxx.
PairMatchSet* TripleMatchSet::match12_ [protected, inherited] |
Definition at line 107 of file TripleMatchSet.h.
PairMatchSet* TripleMatchSet::match23_ [protected, inherited] |
Definition at line 108 of file TripleMatchSet.h.
1.7.5.1