@@ -5,6 +5,22 @@ using std::placeholders::_1;
55
66ImageFilteringNode::ImageFilteringNode (const rclcpp::NodeOptions& options)
77 : Node(" image_filtering_node" , options) {
8+
9+ declare_parameters ();
10+ check_and_subscribe_to_image_topic ();
11+ set_filter_params ();
12+ initialize_parameter_handler ();
13+
14+ rmw_qos_profile_t qos_profile = rmw_qos_profile_sensor_data;
15+ auto qos_sensor_data = rclcpp::QoS (
16+ rclcpp::QoSInitialization (qos_profile.history , 1 ), qos_profile);
17+
18+ std::string pub_topic = this ->get_parameter (" pub_topic" ).as_string ();
19+ image_pub_ = this ->create_publisher <sensor_msgs::msg::Image>(
20+ pub_topic, qos_sensor_data);
21+ }
22+
23+ void ImageFilteringNode::declare_parameters () {
824 this ->declare_parameter <std::string>(" sub_topic" );
925 this ->declare_parameter <std::string>(" pub_topic" );
1026 this ->declare_parameter <std::string>(" output_encoding" );
@@ -27,19 +43,6 @@ ImageFilteringNode::ImageFilteringNode(const rclcpp::NodeOptions& options)
2743 this ->declare_parameter <double >(" filter_params.otsu.gsc_weight_b" );
2844 this ->declare_parameter <int >(" filter_params.otsu.erosion_size" );
2945 this ->declare_parameter <int >(" filter_params.otsu.dilation_size" );
30-
31- rmw_qos_profile_t qos_profile = rmw_qos_profile_sensor_data;
32- auto qos_sensor_data = rclcpp::QoS (
33- rclcpp::QoSInitialization (qos_profile.history , 1 ), qos_profile);
34-
35- check_and_subscribe_to_image_topic ();
36- set_filter_params ();
37-
38- initialize_parameter_handler ();
39-
40- std::string pub_topic = this ->get_parameter (" pub_topic" ).as_string ();
41- image_pub_ = this ->create_publisher <sensor_msgs::msg::Image>(
42- pub_topic, qos_sensor_data);
4346}
4447
4548void ImageFilteringNode::set_filter_params () {
0 commit comments