include
jsk_perception
snake_segmentation.h
Go to the documentation of this file.
1
// -*- mode: c++ -*-
2
/*********************************************************************
3
* Software License Agreement (BSD License)
4
*
5
* Copyright (c) 2015, JSK Lab
6
* All rights reserved.
7
*
8
* Redistribution and use in source and binary forms, with or without
9
* modification, are permitted provided that the following conditions
10
* are met:
11
*
12
* * Redistributions of source code must retain the above copyright
13
* notice, this list of conditions and the following disclaimer.
14
* * Redistributions in binary form must reproduce the above
15
* copyright notice, this list of conditions and the following
16
* disclaimer in the documentation and/or other materials provided
17
* with the distribution.
18
* * Neither the name of the JSK Lab nor the names of its
19
* contributors may be used to endorse or promote products derived
20
* from this software without specific prior written permission.
21
*
22
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
23
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
24
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
25
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
26
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
27
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
28
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
29
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
30
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
32
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
33
* POSSIBILITY OF SUCH DAMAGE.
34
*********************************************************************/
35
36
37
#ifndef JSK_PERCEPTION_SNAKE_SEGMENTATION_H_
38
#define JSK_PERCEPTION_SNAKE_SEGMENTATION_H_
39
40
#include <jsk_topic_tools/diagnostic_nodelet.h>
41
#include <sensor_msgs/Image.h>
42
#include <jsk_perception/SnakeSegmentationConfig.h>
43
#include <dynamic_reconfigure/server.h>
44
45
namespace
jsk_perception
46
{
47
class
SnakeSegmentation:
public
jsk_topic_tools::DiagnosticNodelet
48
{
49
public
:
50
typedef
SnakeSegmentationConfig
Config
;
51
SnakeSegmentation
(): DiagnosticNodelet(
"SnakeSegmentation"
) {};
52
protected
:
53
virtual
void
onInit
();
54
virtual
void
subscribe
();
55
virtual
void
unsubscribe
();
56
virtual
void
segment
(
const
sensor_msgs::Image::ConstPtr& image_msg);
57
virtual
void
configCallback
(
Config
&config, uint32_t level);
58
59
boost::shared_ptr <dynamic_reconfigure::Server<Config>
>
srv_
;
60
ros::Publisher
pub_debug_
;
61
ros::Subscriber
sub_
;
62
boost::mutex
mutex_
;
63
65
// parameters
67
double
alpha_
;
68
double
beta_
;
69
double
gamma_
;
70
int
window_size_
;
71
int
max_iterations_
;
72
double
epsilon_
;
73
private
:
74
75
};
76
}
77
78
#endif
ros::Publisher
jsk_perception::SnakeSegmentation::srv_
boost::shared_ptr< dynamic_reconfigure::Server< Config > > srv_
Definition:
snake_segmentation.h:123
boost::shared_ptr
jsk_perception::SnakeSegmentation::sub_
ros::Subscriber sub_
Definition:
snake_segmentation.h:125
jsk_perception::SnakeSegmentation::epsilon_
double epsilon_
Definition:
snake_segmentation.h:136
jsk_perception::SnakeSegmentation::configCallback
virtual void configCallback(Config &config, uint32_t level)
Definition:
snake_segmentation.cpp:93
jsk_perception::SnakeSegmentation::SnakeSegmentation
SnakeSegmentation()
Definition:
snake_segmentation.h:115
jsk_perception
Definition:
add_mask_image.h:48
jsk_perception::SnakeSegmentation::segment
virtual void segment(const sensor_msgs::Image::ConstPtr &image_msg)
Definition:
snake_segmentation.cpp:123
jsk_perception::SnakeSegmentation::unsubscribe
virtual void unsubscribe()
Definition:
snake_segmentation.cpp:118
jsk_perception::SnakeSegmentation::onInit
virtual void onInit()
Definition:
snake_segmentation.cpp:80
jsk_perception::SnakeSegmentation::pub_debug_
ros::Publisher pub_debug_
Definition:
snake_segmentation.h:124
jsk_perception::SnakeSegmentation::alpha_
double alpha_
Definition:
snake_segmentation.h:131
jsk_perception::SnakeSegmentation::max_iterations_
int max_iterations_
Definition:
snake_segmentation.h:135
jsk_perception::SnakeSegmentation::gamma_
double gamma_
Definition:
snake_segmentation.h:133
jsk_perception::SnakeSegmentation::Config
SnakeSegmentationConfig Config
Definition:
snake_segmentation.h:114
jsk_perception::SnakeSegmentation::window_size_
int window_size_
Definition:
snake_segmentation.h:134
ros::Subscriber
jsk_perception::SnakeSegmentation::beta_
double beta_
Definition:
snake_segmentation.h:132
jsk_perception::SnakeSegmentation::mutex_
boost::mutex mutex_
Definition:
snake_segmentation.h:126
jsk_perception::SnakeSegmentation::subscribe
virtual void subscribe()
Definition:
snake_segmentation.cpp:111
jsk_perception
Author(s): Manabu Saito, Ryohei Ueda
autogenerated on Fri May 16 2025 03:11:17