Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
wolf
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container Registry
Model registry
Operate
Environments
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
mobile_robotics
wolf_projects
wolf_lib
wolf
Commits
dc1acdd8
Commit
dc1acdd8
authored
7 years ago
by
Joan Solà Ortega
Browse files
Options
Downloads
Patches
Plain Diff
Fix warnings and error msgs
parent
0f6da631
No related branches found
No related tags found
1 merge request
!157
Kfpackmanager
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
src/processor_tracker_feature.cpp
+4
-14
4 additions, 14 deletions
src/processor_tracker_feature.cpp
src/processor_tracker_feature.h
+2
-4
2 additions, 4 deletions
src/processor_tracker_feature.h
with
6 additions
and
18 deletions
src/processor_tracker_feature.cpp
+
4
−
14
View file @
dc1acdd8
...
@@ -112,31 +112,21 @@ void ProcessorTrackerFeature::reset()
...
@@ -112,31 +112,21 @@ void ProcessorTrackerFeature::reset()
unsigned
int
ProcessorTrackerFeature
::
processNew
(
const
unsigned
int
&
_max_new_features
)
unsigned
int
ProcessorTrackerFeature
::
processNew
(
const
unsigned
int
&
_max_new_features
)
{
{
// std::cout << "ProcessorTrackerFeature::processNew()" << std::endl;
/* Rationale: A keyFrame will be created using the last Capture.
/* Rationale: A keyFrame will be created using the last Capture.
* First, we create the constraints from the existing Features in last,
* First, we work on the last Capture to detect new Features,
* because the ones that we want to detect later on will not be constrained by anyone yet.
* Then, we work on this last Capture to detect new Features,
* When done, we need to track these new Features to the incoming Capture.
* When done, we need to track these new Features to the incoming Capture.
* At the end, all new Features are appended to the lists of known Features in
* At the end, all new Features are appended to the lists of known Features in
* the last and incoming Captures.
* the last and incoming Captures.
*/
*/
// Populate the last Capture with new Features. The result is in new_features_last_.
// Populate the last Capture with new Features. The result is in new_features_last_.
unsigned
int
n
=
detectNewFeatures
(
_max_new_features
);
unsigned
int
n
=
detectNewFeatures
(
_max_new_features
);
// std::cout << "detected " << n << " new features!" << std::endl;
// Track new features from last to incoming. This will append new correspondences to matches_last_incoming
// Track new features from last to incoming. This will append new correspondences to matches_last_incoming
if
(
incoming_ptr_
!=
last_ptr_
&&
incoming_ptr_
!=
nullptr
)
// we do not do it the first time.
trackFeatures
(
new_features_last_
,
new_features_incoming_
,
matches_last_from_incoming_
);
{
trackFeatures
(
new_features_last_
,
new_features_incoming_
,
matches_last_from_incoming_
);
// Append all new Features to the incoming Captures' list of Features
// Append all new Features to the incoming Captures' list of Features
incoming_ptr_
->
addFeatureList
(
new_features_incoming_
);
incoming_ptr_
->
addFeatureList
(
new_features_incoming_
);
}
// Append all new Features to the last Captures' list of Features
// Append all new Features to the last Captures' list of Features
last_ptr_
->
addFeatureList
(
new_features_last_
);
last_ptr_
->
addFeatureList
(
new_features_last_
);
...
...
This diff is collapsed.
Click to expand it.
src/processor_tracker_feature.h
+
2
−
4
View file @
dc1acdd8
...
@@ -137,14 +137,12 @@ class ProcessorTrackerFeature : public ProcessorTracker
...
@@ -137,14 +137,12 @@ class ProcessorTrackerFeature : public ProcessorTracker
virtual
unsigned
int
processNew
(
const
unsigned
int
&
_max_features
);
virtual
unsigned
int
processNew
(
const
unsigned
int
&
_max_features
);
/** \brief Detect new Features
/** \brief Detect new Features
* \param _capture_ptr Capture for feature detection. Defaults to incoming_ptr_.
* \param _max_features maximum number of features detected
* \param _new_features_list The list of detected Features. Defaults to member new_features_list_.
* \return The number of detected Features.
* \return The number of detected Features.
*
*
* This function detects Features that do not correspond to known Features/Landmarks in the system.
* This function detects Features that do not correspond to known Features/Landmarks in the system.
*
*
* The function sets the member new_features_list_, the list of newly detected features,
* The function sets the member new_features_last_, the list of newly detected features.
* to be used for landmark initialization.
*/
*/
virtual
unsigned
int
detectNewFeatures
(
const
unsigned
int
&
_max_features
)
=
0
;
virtual
unsigned
int
detectNewFeatures
(
const
unsigned
int
&
_max_features
)
=
0
;
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment