include
jsk_perception
subtract_mask_image.h
Go to the documentation of this file.
1
// -*- mode: C++ -*-
2
/*********************************************************************
3
* Software License Agreement (BSD License)
4
*
5
* Copyright (c) 2017, 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
* subtract_mask_image.h
37
* Author: Yuki Furuta <furushchev@jsk.imi.i.u-tokyo.ac.jp>
38
*/
39
40
41
#ifndef JSK_PERCEPTION_SUBTRACT_MASK_IMAGE_H__
42
#define JSK_PERCEPTION_SUBTRACT_MASK_IMAGE_H__
43
44
#include <jsk_topic_tools/diagnostic_nodelet.h>
45
#include <sensor_msgs/Image.h>
46
47
#include <
message_filters/subscriber.h
>
48
#include <
message_filters/synchronizer.h
>
49
#include <
message_filters/sync_policies/exact_time.h
>
50
#include <
message_filters/sync_policies/approximate_time.h
>
51
52
namespace
jsk_perception
53
{
54
class
SubtractMaskImage:
public
jsk_topic_tools::DiagnosticNodelet
55
{
56
public
:
57
typedef
message_filters::sync_policies::ExactTime
<
58
sensor_msgs::Image,
59
sensor_msgs::Image >
SyncPolicy
;
60
typedef
message_filters::sync_policies::ApproximateTime
<
61
sensor_msgs::Image,
62
sensor_msgs::Image >
ApproxSyncPolicy
;
63
64
SubtractMaskImage
(): DiagnosticNodelet(
"SubtractMaskImage"
) {}
65
virtual
~SubtractMaskImage
();
66
protected
:
67
virtual
void
onInit
();
68
virtual
void
subscribe
();
69
virtual
void
unsubscribe
();
70
virtual
void
subtract
(
71
const
sensor_msgs::Image::ConstPtr& src1_msg,
72
const
sensor_msgs::Image::ConstPtr& src2_msg);
73
74
bool
approximate_sync_
;
75
int
queue_size_
;
76
ros::Publisher
pub_
;
77
message_filters::Subscriber<sensor_msgs::Image>
sub_src1_
;
78
message_filters::Subscriber<sensor_msgs::Image>
sub_src2_
;
79
boost::shared_ptr<message_filters::Synchronizer<SyncPolicy>
>
sync_
;
80
boost::shared_ptr<message_filters::Synchronizer<ApproxSyncPolicy>
>
async_
;
81
};
82
}
83
84
#endif // SUBTRACT_MASK_IMAGE_H__
ros::Publisher
boost::shared_ptr
jsk_perception::SubtractMaskImage::onInit
virtual void onInit()
Definition:
subtract_mask_image.cpp:82
jsk_perception::SubtractMaskImage::unsubscribe
virtual void unsubscribe()
Definition:
subtract_mask_image.cpp:120
jsk_perception::SubtractMaskImage::sync_
boost::shared_ptr< message_filters::Synchronizer< SyncPolicy > > sync_
Definition:
subtract_mask_image.h:143
jsk_perception::SubtractMaskImage::subtract
virtual void subtract(const sensor_msgs::Image::ConstPtr &src1_msg, const sensor_msgs::Image::ConstPtr &src2_msg)
Definition:
subtract_mask_image.cpp:126
jsk_perception::SubtractMaskImage::queue_size_
int queue_size_
Definition:
subtract_mask_image.h:139
jsk_perception::SubtractMaskImage::ApproxSyncPolicy
message_filters::sync_policies::ApproximateTime< sensor_msgs::Image, sensor_msgs::Image > ApproxSyncPolicy
Definition:
subtract_mask_image.h:126
message_filters::Subscriber< sensor_msgs::Image >
jsk_perception::SubtractMaskImage::subscribe
virtual void subscribe()
Definition:
subtract_mask_image.cpp:104
jsk_perception
Definition:
add_mask_image.h:48
message_filters::sync_policies::ApproximateTime
jsk_perception::SubtractMaskImage::sub_src2_
message_filters::Subscriber< sensor_msgs::Image > sub_src2_
Definition:
subtract_mask_image.h:142
subscriber.h
jsk_perception::SubtractMaskImage::~SubtractMaskImage
virtual ~SubtractMaskImage()
Definition:
subtract_mask_image.cpp:92
exact_time.h
jsk_perception::SubtractMaskImage::async_
boost::shared_ptr< message_filters::Synchronizer< ApproxSyncPolicy > > async_
Definition:
subtract_mask_image.h:144
synchronizer.h
jsk_perception::SubtractMaskImage::pub_
ros::Publisher pub_
Definition:
subtract_mask_image.h:140
approximate_time.h
jsk_perception::SubtractMaskImage::sub_src1_
message_filters::Subscriber< sensor_msgs::Image > sub_src1_
Definition:
subtract_mask_image.h:141
message_filters::sync_policies::ExactTime
jsk_perception::SubtractMaskImage::approximate_sync_
bool approximate_sync_
Definition:
subtract_mask_image.h:138
jsk_perception::SubtractMaskImage::SyncPolicy
message_filters::sync_policies::ExactTime< sensor_msgs::Image, sensor_msgs::Image > SyncPolicy
Definition:
subtract_mask_image.h:123
jsk_perception::SubtractMaskImage::SubtractMaskImage
SubtractMaskImage()
Definition:
subtract_mask_image.h:128
jsk_perception
Author(s): Manabu Saito, Ryohei Ueda
autogenerated on Fri May 16 2025 03:11:17