Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
G
gnss
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Deploy
Releases
Model registry
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor 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
plugins
gnss
Commits
459c065d
Commit
459c065d
authored
5 years ago
by
Joan Vallvé Navarro
Browse files
Options
Downloads
Patches
Plain Diff
less prints
parent
9272176f
No related branches found
No related tags found
2 merge requests
!28
release after RAL
,
!27
After 2nd RAL submission
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
src/processor/processor_tracker_gnss.cpp
+27
-19
27 additions, 19 deletions
src/processor/processor_tracker_gnss.cpp
with
27 additions
and
19 deletions
src/processor/processor_tracker_gnss.cpp
+
27
−
19
View file @
459c065d
...
...
@@ -24,7 +24,7 @@ void ProcessorTrackerGnss::preProcess()
GnssUtils
::
SnapshotPtr
inc_snapshot
=
std
::
static_pointer_cast
<
CaptureGnss
>
(
incoming_ptr_
)
->
getSnapshot
();
WOLF_INFO
(
"preprocess: initial observations: "
,
inc_snapshot
->
getObservations
()
->
size
()
)
;
int
n_initial
=
inc_snapshot
->
getObservations
()
->
size
();
// compute satellites positions
if
(
!
inc_snapshot
->
satellitesComputed
())
...
...
@@ -49,7 +49,7 @@ void ProcessorTrackerGnss::preProcess()
WOLF_DEBUG
(
"TS: "
,
incoming_ptr_
->
getTimeStamp
(),
" - Fix solution (ECEF): "
,
fix_incoming_
.
pos
.
transpose
(),
" - Fix solution (GEO): "
,
fix_incoming_
.
lat_lon
.
transpose
());
WOLF_INFO
(
"preprocess: RTKLIB excluded observations: "
,
fix_incoming_
.
discarded_sats
.
size
());
//
WOLF_INFO("preprocess: RTKLIB excluded observations: ", fix_incoming_.discarded_sats.size());
// filter observations (available ephemeris, constellations and elevation&SNR)
inc_snapshot
->
filterObservations
(
fix_incoming_
.
discarded_sats
,
// discarded sats
fix_incoming_
.
sat_azel
,
...
...
@@ -57,7 +57,7 @@ void ProcessorTrackerGnss::preProcess()
false
,
// check carrier phase
params_tracker_gnss_
->
gnss_opt
);
WOLF_INFO
(
"preprocess: filtered observations: "
,
inc_snapshot
->
getObservations
()
->
size
());
//
WOLF_INFO("preprocess: filtered observations: ", inc_snapshot->getObservations()->size());
// compute corrected Ranges
inc_snapshot
->
computeRanges
(
fix_incoming_
.
sat_azel
,
...
...
@@ -75,7 +75,11 @@ void ProcessorTrackerGnss::preProcess()
untracked_incoming_features_
[
feat
->
satNumber
()]
=
feat
;
}
WOLF_INFO
(
"preprocess: untracked incoming features: "
,
untracked_incoming_features_
.
size
());
WOLF_INFO
(
"ProcessorTrackerGnss::preProcess()"
,
"
\n\t
initial observations: "
,
n_initial
,
"
\n\t
RTKLIB discarded: "
,
fix_incoming_
.
discarded_sats
.
size
(),
"
\n\t
gnssutils discarded: "
,
n_initial
-
untracked_incoming_features_
.
size
()
-
fix_incoming_
.
discarded_sats
.
size
(),
"
\n\t
detected incoming features: "
,
untracked_incoming_features_
.
size
());
}
unsigned
int
ProcessorTrackerGnss
::
trackFeatures
(
const
FeatureBasePtrList
&
_features_in
,
...
...
@@ -86,7 +90,7 @@ unsigned int ProcessorTrackerGnss::trackFeatures(const FeatureBasePtrList& _feat
if
(
_features_in
.
empty
())
return
0
;
WOLF_INFO
(
"tracking "
,
_features_in
.
size
()
,
" features..."
);
//
WOLF_INFO("tracking " , _features_in.size() , " features...");
assert
(
_capture
==
incoming_ptr_
);
...
...
@@ -107,7 +111,7 @@ unsigned int ProcessorTrackerGnss::trackFeatures(const FeatureBasePtrList& _feat
}
}
WOLF_INFO
(
"
Tracked features: "
,
_features_out
.
size
()
);
WOLF_INFO
(
"
ProcessorTrackerGnss::trackFeatures: tracked "
,
_features_out
.
size
(),
" (of "
,
_features_in
.
size
(),
")"
);
return
_features_out
.
size
();
}
...
...
@@ -119,7 +123,7 @@ bool ProcessorTrackerGnss::voteForKeyFrame() const
// too old origin
if
(
origin_ptr_
==
nullptr
or
(
last_ptr_
->
getTimeStamp
()
-
origin_ptr_
->
getTimeStamp
())
>
params_tracker_gnss_
->
max_time_span
)
{
WOLF_
INFO
(
"Vote for KF because of time span or null origin"
);
WOLF_
DEBUG
(
"Vote for KF because of time span or null origin"
);
return
true
;
}
...
...
@@ -128,7 +132,7 @@ bool ProcessorTrackerGnss::voteForKeyFrame() const
if
(
known_features_incoming_
.
size
()
<
params_tracker_feature_
->
min_features_for_keyframe
and
!
untracked_last_features_
.
empty
())
{
WOLF_
INFO
(
"Vote for KF because of too less known_features_incoming and not empty untracked in last"
);
WOLF_
DEBUG
(
"Vote for KF because of too less known_features_incoming and not empty untracked in last"
);
return
true
;
}
...
...
@@ -539,17 +543,21 @@ void ProcessorTrackerGnss::removeOutliers(FactorBasePtrList fac_list, CaptureBas
fac
->
remove
();
}
WOLF_INFO
(
"ProcessorTrackerGnss::removeOutliers:"
,
"
\n\t
Pseudorange: "
,
outliers_pseudorange_
,
"
\t
( "
,
(
100.0
*
outliers_pseudorange_
)
/
(
outliers_pseudorange_
+
inliers_pseudorange_
),
" %)"
,
"
\n\t
TDCP: "
,
outliers_tdcp_
,
"
\t
( "
,
(
100.0
*
outliers_tdcp_
)
/
(
outliers_tdcp_
+
inliers_tdcp_
),
" %)"
,
"
\n\t
sats:"
);
std
::
string
sat_out_str
(
""
);
for
(
auto
sat_out
:
sat_outliers_
)
{
const
int
&
sat
=
sat_out
.
first
;
int
sys
=
satsys
(
sat
,
NULL
);
const
unsigned
int
&
outliers
=
sat_out
.
second
;
std
::
cout
<<
"
\t\t
sat "
<<
sat
<<
"("
<<
sys
<<
"): "
<<
outliers
<<
std
::
endl
;
}
"
\n\t
Pseudorange: "
,
outliers_pseudorange_
,
"
\t
( "
,
(
100.0
*
outliers_pseudorange_
)
/
(
outliers_pseudorange_
+
inliers_pseudorange_
),
" %)"
);
if
(
params_tracker_gnss_
->
gnss_opt
.
tdcp
.
enabled
and
params_tracker_gnss_
->
remove_outliers_tdcp
)
std
::
cout
<<
"
\t
TDCP: "
<<
outliers_tdcp_
<<
"
\t
( "
<<
(
100.0
*
outliers_tdcp_
)
/
(
outliers_tdcp_
+
inliers_tdcp_
)
<<
" \%)
\n
"
;
//std::cout << "\tsats:";
//for (auto sat_out : sat_outliers_)
//{
// const int& sat = sat_out.first;
// int sys = satsys(sat,NULL);
// const unsigned int& outliers = sat_out.second;
// std::cout << "\t\tsat " << sat << "(" << sys << "): " << outliers << std::endl;
//}
}
}
// namespace wolf
...
...
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