diff --git a/node_script/node.py b/node_script/node.py
index 932b10b..985a3b6 100644
--- a/node_script/node.py
+++ b/node_script/node.py
@@ -9,6 +9,7 @@
DeticSegResponse)
from detic_ros.wrapper import DeticWrapper
from jsk_recognition_msgs.msg import LabelArray, VectorArray
+from jsk_topic_tools.transport import ConnectionBasedTransport
from rospy import Publisher, Subscriber
from sensor_msgs.msg import Image
from std_srvs.srv import Empty, EmptyRequest, EmptyResponse
@@ -16,7 +17,7 @@
import torch
-class DeticRosNode:
+class DeticRosNode(ConnectionBasedTransport):
is_active: bool
detic_wrapper: DeticWrapper
sub: Subscriber
@@ -33,6 +34,8 @@ class DeticRosNode:
pub_info: Optional[Publisher]
def __init__(self, node_config: Optional[NodeConfig] = None):
+ super(DeticRosNode, self).__init__()
+
if node_config is None:
node_config = NodeConfig.from_rosparam()
@@ -51,11 +54,11 @@ def __init__(self, node_config: Optional[NodeConfig] = None):
# https://answers.ros.org/question/220502/image-subscriber-lag-despite-queue-1/?answer=220505?answer=220505#post-id-22050://answers.ros.org/question/220502/image-subscriber-lag-despite-queue-1/?answer=220505?answer=220505#post-id-220505
self.sub = rospy.Subscriber('~input_image', Image, self.callback_image, queue_size=1, buff_size=2**24)
if node_config.use_jsk_msgs:
- self.pub_segimg = rospy.Publisher('~segmentation', Image, queue_size=1)
- self.pub_labels = rospy.Publisher('~detected_classes', LabelArray, queue_size=1)
- self.pub_score = rospy.Publisher('~score', VectorArray, queue_size=1)
+ self.pub_segimg = self.advertise('~segmentation', Image, queue_size=1)
+ self.pub_labels = self.advertise('~detected_classes', LabelArray, queue_size=1)
+ self.pub_score = self.advertise('~score', VectorArray, queue_size=1)
else:
- self.pub_info = rospy.Publisher('~segmentation_info', SegmentationInfo,
+ self.pub_info = self.advertise('~segmentation_info', SegmentationInfo,
queue_size=1)
if node_config.out_debug_img:
diff --git a/package.xml b/package.xml
index 5b62045..7a55b45 100644
--- a/package.xml
+++ b/package.xml
@@ -17,6 +17,7 @@
std_srvs
jsk_common
jsk_recognition_msgs
+ jsk_topic_tools
cv_bridge
python3-rospkg