ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
4

Are there any viewers for ImageMarker?

asked 2011-11-17 11:17:09 -0600

updated 2022-02-01 19:18:06 -0600

Mike Scheutzow gravatar image

I've noticed an ImageMarker message type in visualization_msgs. However in searching for ImageMarker in all my installed stacks and via google, I've found no reference to any package using it anywhere.

Is there some viewer that uses this? Has it been superseded by something else?

edit retag flag offensive close merge delete

3 Answers

Sort by » oldest newest most voted
1

answered 2011-11-17 12:13:49 -0600

Patrick Mihelich gravatar image

There aren't. In fact, rosmsg users visualization_msgs/ImageMarker comes up completely dry.

The problem with ImageMarker is that there's a very simple alternative: just draw your markers/annotations on the input image, publish that as a new topic, and watch in image_view. Why use ImageMarker then?

Pros:

  • Maybe you save bandwidth if you need both the original and marked-up images.

Cons:

  • You get a very limited set of operations.
  • It's cumbersome. If I want to draw circles around a bunch of feature points in an image, it's actually more work to publish a bunch of ImageMarkers than to use cv::circle().
  • Now you have synchronization issues between the marker and image messages.

So, I don't see the use case. You add complexity without gaining a whole lot. Probably ImageMarker was a bad idea from the beginning.

By contrast, visualization_msgs/Marker is useful because it lets you talk to rviz, and because it describes the world. Marker can be understood on its own. rviz integrates data about the world from an arbitrary number of sources, so a Marker topic is just one more channel. Whereas an ImageMarker is useless without the source image, so why separate the two?

edit flag offensive delete link more

Comments

I see utility in much the same way Marker is (if there was a viewer). These plenty of case for being able to turn on and off marker layers IMO. There's a good case for ImageMarker where the original image is processed into several forms (HSV, edge, etc) and especially were by several separate nodes.
Asomerville gravatar image Asomerville  ( 2011-11-18 05:57:28 -0600 )edit
3

answered 2019-07-06 13:59:18 -0600

jtbandes gravatar image

updated 2021-08-12 17:09:58 -0600

I work on an app called Foxglove Studio that supports ImageMarkers. Check it out at: https://foxglove.dev/blog/annotate-yo...

(It was originally based on the Webviz project from Cruise.)

To publish multiple markers at once, you can use foxglove_msgs/ImageMarkerArray.

edit flag offensive delete link more
0

answered 2022-01-29 02:53:04 -0600

ijnek gravatar image

updated 2022-01-29 07:38:18 -0600

A new RQt Image Overlay Plugin I have released is an alternative to the method Patrick describes, with the following advantages:

  • Drawing is done in the rqt plugin, and not by an intermediate "drawing node" - faster and saves bandwidth.
  • Not limited to the ImageMarker msg type, can draw any custom msg type
  • Freedom to draw the msg however you like
  • Can turn layers on and off from within RQt
edit flag offensive delete link more

Comments

1

If you are the author / one of the maintainers, it's OK to write "we've released / made available a new RQT plugin which ..".

The way you describe it now is overly 'objective', which doesn't seem to be needed.

gvdhoorn gravatar image gvdhoorn  ( 2022-01-29 07:26:57 -0600 )edit

Although the objective grammar just comes from being used to writing everything in third person, I can make it clear that I am the author of the package.

ijnek gravatar image ijnek  ( 2022-01-29 07:36:16 -0600 )edit

Question Tools

1 follower

Stats

Asked: 2011-11-17 11:17:09 -0600

Seen: 1,363 times

Last updated: Jan 29 '22