@@ -3,9 +3,9 @@ Line Features Tutorial {#tutorial_line_descriptor_main}
3
3
4
4
In this tutorial it will be shown how to:
5
5
6
- - use the * BinaryDescriptor* interface to extract lines and store them in * KeyLine* objects
7
- - use the same interface to compute descriptors for every extracted line
8
- - use the * BynaryDescriptorMatcher* to determine matches among descriptors obtained from different
6
+ - Use the * BinaryDescriptor* interface to extract the lines and store them in * KeyLine* objects
7
+ - Use the same interface to compute descriptors for every extracted line
8
+ - Use the * BynaryDescriptorMatcher* to determine matches among descriptors obtained from different
9
9
images
10
10
11
11
Lines extraction and descriptors computation
@@ -18,7 +18,7 @@ displayed using random colors for octave 0.
18
18
19
19
@includelineno line_descriptor/samples/lsd_lines_extraction.cpp
20
20
21
- This is the result obtained for famous cameraman image:
21
+ This is the result obtained from the famous cameraman image:
22
22
23
23
![ alternate text] ( pics/lines_cameraman_edl.png )
24
24
@@ -54,7 +54,7 @@ choosing the one at closest distance:
54
54
@includelineno line_descriptor/samples/matching.cpp
55
55
56
56
Sometimes, we could be interested in searching for the closest * k* descriptors, given an input one.
57
- This requires to modify slightly previous code:
57
+ This requires modifying previous code slightly :
58
58
59
59
@code {.cpp}
60
60
// prepare a structure to host matches
@@ -66,7 +66,7 @@ bdm->knnMatch( descr1, descr2, matches, 6 );
66
66
67
67
In the above example, the closest 6 descriptors are returned for every query. In some cases, we
68
68
could have a search radius and look for all descriptors distant at the most * r* from input query.
69
- Previous code must me modified:
69
+ Previous code must be modified like :
70
70
71
71
@code {.cpp}
72
72
// prepare a structure to host matches
@@ -76,23 +76,23 @@ std::vector<std::vector<DMatch> > matches;
76
76
bdm->radiusMatch( queries, matches, 30 );
77
77
@endcode
78
78
79
- Here's an example om matching among descriptors extratced from original cameraman image and its
79
+ Here's an example of matching among descriptors extracted from original cameraman image and its
80
80
downsampled (and blurred) version:
81
81
82
82
![ alternate text] ( pics/matching2.png )
83
83
84
84
Querying internal database
85
85
--------------------------
86
86
87
- The * BynaryDescriptorMatcher* class, owns an internal database that can be populated with
88
- descriptors extracted from different images and queried using one of the modalities described in
87
+ The * BynaryDescriptorMatcher* class owns an internal database that can be populated with
88
+ descriptors extracted from different images and queried using one of the modalities described in the
89
89
previous section. Population of internal dataset can be done using the * add* function; such function
90
- doesn't directly add new data to database, but it just stores it them locally. The real update
91
- happens when function * train* is invoked or when any querying function is executed, since each of
90
+ doesn't directly add new data to the database, but it just stores it them locally. The real update
91
+ happens when the function * train* is invoked or when any querying function is executed, since each of
92
92
them invokes * train* before querying. When queried, internal database not only returns required
93
- descriptors, but, for every returned match, it is able to tell which image matched descriptor was
93
+ descriptors, but for every returned match, it is able to tell which image matched descriptor was
94
94
extracted from. An example of internal dataset usage is described in the following code; after
95
95
adding locally new descriptors, a radius search is invoked. This provokes local data to be
96
- transferred to dataset, which, in turn, is then queried.
96
+ transferred to dataset which in turn, is then queried.
97
97
98
98
@includelineno line_descriptor/samples/radius_matching.cpp
0 commit comments