Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
W
wolf_ros_node
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_ros
wolf_ros_node
Merge requests
!7
Draft: Resolve "add_falko_publisher"
Code
Review changes
Check out branch
Download
Patches
Plain diff
Closed
Draft: Resolve "add_falko_publisher"
4-add_falko_publisher
into
devel
Overview
0
Commits
19
Pipelines
0
Changes
3
Closed
Sergi Pujol Badell
requested to merge
4-add_falko_publisher
into
devel
4 years ago
Overview
0
Commits
19
Pipelines
0
Changes
3
Expand
Closes
#4 (closed)
0
0
Merge request reports
Compare
devel
version 8
dd25acc9
3 years ago
version 7
1dcb8e16
3 years ago
version 6
73f9fb53
3 years ago
version 5
ea20319a
4 years ago
version 4
c27cd1c9
4 years ago
version 3
e02ac952
4 years ago
version 2
203e2276
4 years ago
version 1
606f7bc7
4 years ago
devel (base)
and
latest version
latest version
eec104df
19 commits,
3 years ago
version 8
dd25acc9
18 commits,
3 years ago
version 7
1dcb8e16
15 commits,
3 years ago
version 6
73f9fb53
14 commits,
3 years ago
version 5
ea20319a
12 commits,
4 years ago
version 4
c27cd1c9
11 commits,
4 years ago
version 3
e02ac952
7 commits,
4 years ago
version 2
203e2276
6 commits,
4 years ago
version 1
606f7bc7
1 commit,
4 years ago
3 files
+
470
−
1
Inline
Compare changes
Side-by-side
Inline
Show whitespace changes
Show one file at a time
Files
3
Search (e.g. *.vue) (Ctrl+P)
include/publisher_falko_bsc.h
0 → 100644
+
92
−
0
Options
#ifndef PUBLISHER_FALKO_BSC_H
#define PUBLISHER_FALKO__BSC_H
/**************************
* WOLF includes *
**************************/
#include
"core/problem/problem.h"
#include
"publisher.h"
/**************************
* ROS includes *
**************************/
#include
<ros/ros.h>
#include
<geometry_msgs/PoseArray.h>
#include
<geometry_msgs/PoseWithCovarianceStamped.h>
#include
<visualization_msgs/Marker.h>
#include
<tf/transform_listener.h>
#include
<sensor_msgs/LaserScan.h>
#include
<visualization_msgs/MarkerArray.h>
/**************************
* laserscanutils includes *
**************************/
#include
"laser/capture/capture_laser_2d.h"
#include
"laser/feature/feature_scene_falko.h"
namespace
wolf
{
class
PublisherFalkoBsc
:
public
Publisher
{
bool
pose_array_
,
marker_
,
pose_with_cov_
;
int
max_points_
;
visualization_msgs
::
Marker
marker_msg_falko_scene
;
std_msgs
::
ColorRGBA
marker_color_target_
;
std_msgs
::
ColorRGBA
marker_color_reference_
;
bool
extrinsics_
;
SensorBasePtr
sensor_
;
std
::
string
frame_id_
,
map_frame_id_
;
FrameBasePtr
last_frame
;
FrameBasePtr
KF_old
;
ros
::
Publisher
pub_keypoints_
;
ros
::
Publisher
pub_marker_scene_target_
;
ros
::
Publisher
pub_marker_scene_reference_
;
ros
::
Publisher
pub_marker_associations_
;
// Reference scene info
std
::
map
<
CaptureBasePtr
,
visualization_msgs
::
Marker
>
map_markers_reference_scenes_
;
public:
PublisherFalkoBsc
(
const
std
::
string
&
_unique_name
,
const
ParamsServer
&
_server
,
const
ProblemPtr
_problem
);
WOLF_PUBLISHER_CREATE
(
PublisherFalkoBsc
);
virtual
~
PublisherFalkoBsc
(){};
void
initialize
(
ros
::
NodeHandle
&
nh
,
const
std
::
string
&
topic
)
override
;
void
publishDerived
()
override
;
void
publishScene
(
std
::
vector
<
falkolib
::
FALKO
>
&
_keypoints
,
laserscanutils
::
LaserScan
&
_scan
,
Eigen
::
Vector3d
&
_p_rob
,
Eigen
::
Quaterniond
&
_q_rob
,
ros
::
Publisher
&
_pub_lines
,
std_msgs
::
ColorRGBA
_marker_color
,
int
&
_id
,
CaptureBasePtr
cap
);
void
publishEmpty
();
void
publishAssociations
(
std
::
vector
<
std
::
pair
<
int
,
int
>>
&
associations_
,
CaptureBasePtr
&
cap_target
,
CaptureBasePtr
&
cap_reference
);
void
getKeypointsAndScan
(
FrameBasePtr
&
_frame
,
laserscanutils
::
LaserScan
&
_scan
,
std
::
vector
<
falkolib
::
FALKO
>
&
_keypoints
);
void
getPosition
(
Eigen
::
Vector3d
&
p
,
Eigen
::
Quaterniond
&
q
,
VectorComposite
current_state
);
protected
:
bool
listenTf
();
Eigen
::
Quaterniond
q_frame_
;
Eigen
::
Vector3d
t_frame_
;
tf
::
TransformListener
tfl_
;
int
id_old_
=
1
;
std
::
map
<
FrameBasePtr
,
VectorComposite
>
map_frame_states
;
};
WOLF_REGISTER_PUBLISHER
(
PublisherFalkoBsc
)
}
// namespace wolf
#endif
Loading