aruco_node.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2016, Lukas Pfeifhofer <lukas.pfeifhofer@devlabs.pro>
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions are met:
7  *
8  * 1. Redistributions of source code must retain the above copyright notice,
9  * this list of conditions and the following disclaimer.
10  *
11  * 2. Redistributions in binary form must reproduce the above copyright notice,
12  * this list of conditions and the following disclaimer in the documentation
13  * and/or other materials provided with the distribution.
14  *
15  * 3. Neither the name of the copyright holder nor the names of its contributors
16  * may be used to endorse or promote products derived from this software without
17  * specific prior written permission.
18  *
19  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
23  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29  * POSSIBILITY OF SUCH DAMAGE.
30  */
31 
32 #ifndef TUW_ARUCO_ARUCO_NODE_H
33 #define TUW_ARUCO_ARUCO_NODE_H
34 
35 #include "ros/ros.h"
38 #include <marker_msgs/MarkerDetection.h>
39 #include <marker_msgs/FiducialDetection.h>
40 
41 #include <cv_bridge/cv_bridge.h>
42 #include <opencv2/highgui/highgui.hpp>
43 
44 #include <dynamic_reconfigure/server.h>
45 #include <tuw_aruco/ArUcoConfig.h>
46 
47 #include "aruco.h"
48 #include "tuw_aruco/aruco_base.h"
49 
50 class ArUcoNode {
51 public:
53 
54  ~ArUcoNode();
55 
56 private:
58 
61 
65 
66  dynamic_reconfigure::Server<tuw_aruco::ArUcoConfig> configServer_;
67  dynamic_reconfigure::Server<tuw_aruco::ArUcoConfig>::CallbackType configCallbackFnct_;
68 
70 
71  void imageCallback(const sensor_msgs::ImageConstPtr &image_msg, const sensor_msgs::CameraInfoConstPtr &camer_info_);
72 
73  void publishMarkers(const std_msgs::Header &header, vector<ArUcoMarkerPose> &markerPoses);
74 
75  void publishFiducials(const std_msgs::Header &header, vector<aruco::Marker> &markers, const sensor_msgs::CameraInfoConstPtr &camer_info_);
76 
77  void configCallback(tuw_aruco::ArUcoConfig &config, uint32_t level);
78 };
79 
80 #endif // TUW_ARUCO_ARUCO_NODE_H
image_transport::ImageTransport imageTransport_
Definition: aruco_node.h:59
image_transport::CameraSubscriber cameraSubscriber_
Definition: aruco_node.h:60
void publishMarkers(const std_msgs::Header &header, vector< ArUcoMarkerPose > &markerPoses)
Definition: aruco_node.cpp:99
ros::NodeHandle n_
Definition: aruco_node.h:57
tf::TransformBroadcaster transformBroadcaster_
Definition: aruco_node.h:62
void imageCallback(const sensor_msgs::ImageConstPtr &image_msg, const sensor_msgs::CameraInfoConstPtr &camer_info_)
Definition: aruco_node.cpp:177
void configCallback(tuw_aruco::ArUcoConfig &config, uint32_t level)
Definition: aruco_node.cpp:229
ros::Publisher pub_fiducials_
Definition: aruco_node.h:64
dynamic_reconfigure::Server< tuw_aruco::ArUcoConfig >::CallbackType configCallbackFnct_
Definition: aruco_node.h:67
ArUcoBase base_
Definition: aruco_node.h:69
ros::Publisher pub_markers_
Definition: aruco_node.h:63
void publishFiducials(const std_msgs::Header &header, vector< aruco::Marker > &markers, const sensor_msgs::CameraInfoConstPtr &camer_info_)
Definition: aruco_node.cpp:139
dynamic_reconfigure::Server< tuw_aruco::ArUcoConfig > configServer_
Definition: aruco_node.h:66
ArUcoNode(ros::NodeHandle &n)
Definition: aruco_node.cpp:42


tuw_aruco
Author(s): Lukas Pfeifhofer
autogenerated on Mon Jun 10 2019 15:40:45