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

Aruco marker crash (ubuntu14.4)

asked 2018-07-25 10:57:39 -0600

-LD- gravatar image


i want to detect markers and there position. I found the acuro markers and the ROS nodes that sounded promising. I found these two tutorials (one, two). Both seem to use the same package and almost the same launch file. But both tutorials seem to use a different Ubuntu (I'm using 14.04), since in my registry the following for example is not found (apt-get update already tried):

  • sudo apt-get install ros-indigo-usb-cam
  • the openCV-lib (can't find the terminal line anymore)

So i installed openCV with the help of one of the forum members (thanks again), but had to change some of the constants defined in openCV2 to the new ones used in openCV3 and also installed the usb-cam-lib. With the launch files of the tutorials i managed to get some images out of the cam (viewed in rviz) and even calibrated the cam with this tutorial (no mater how well it worked, at least i was able to finish all the steps):

> (everything normal here)

roslaunch my_robot usb_cam_stream.launch
> (...)
> Starting 'head_camera' (/dev/video0) at 640x480 via mmap (mjpeg) at 30 FPS
> [ WARN] [1532530276.439567317]: sh: 1: v4l2-ctl: not found
> [ WARN] [1532530276.443605906]: sh: 1: v4l2-ctl: not found

rostopic list 
> /rosout
> /rosout_agg
> /usb_cam/camera_info
> /usb_cam/image_raw
> /usb_cam/image_raw/compressed
> /usb_cam/image_raw/compressed/parameter_descriptions
> /usb_cam/image_raw/compressed/parameter_updates
> ...

Now to the part that's not working. So far everything was just the preparation for the real node from Arcuro. But when i start the launch file from one of the tutorials mentioned at the beginning, the following happens:

roslaunch aruco_ros single.launch 
> (...) 
>  * /aruco_single/camera_frame: base_link
>  * /aruco_single/corner_refinement: LINES
>  * /aruco_single/image_is_rectified: True
>  * /aruco_single/marker_frame: aruco_marker_frame
>  * /aruco_single/marker_id: 582
>  * /aruco_single/marker_size: 0.034
>  * /aruco_single/reference_frame: aruco_ref_frame
>  * /rosdistro: indigo
>  * /rosversion: 1.11.21
> (...)
> core service [/rosout] found
> process[aruco_single-1]: started with pid [26729]
> [aruco_single-1] process has died [pid 26729, exit code -11, 
   cmd /home/lukas/catkin_ws/devel/lib/aruco_ros/single/camera_info:=/usb_cam/camera_info 
   /image:=/usb_cam/image_raw __name:=aruco_single 
> log file: /home/lukas/.ros/log/f9e14154-8ffb-11e8-a1c7-14b31f1cb5de/aruco_single-1*.log
> all processes on machine have died, roslaunch will exit
> shutting down processing monitor...
> ... shutting down processing monitor complete

Even when i try to start the node directly it's not working:

rosrun aruco_ros single 
> Segmentation fault (core dumped)

which is one of the most useless errors i got in the last weeks - so short. Google told me that it might be some errors/warnings during catkin_make, but no errors at all and warnings occur only at nodes i wrote myself and are not launched right now, nor required by the aruco's nodes.

Anybody has a hint, what's going wrong? How can i find out what the real error is?

Like the last time: Thanks everybody reading through this and for every help. Lukas

edit retag flag offensive close merge delete


Can you post the content of the file '/home/lukas/.ros/log/f9e14154-8ffb-11e8-a1c7-14b31f1cb5de/aruco_single-1*.log' ? It could contains more information about the error

rdelgadov gravatar image rdelgadov  ( 2018-07-25 23:45:16 -0600 )edit

Took me awhile to find that file since it's hidden (indicated by the leading "." on ".ros" as i now know). There is only one file that sounds right in that folder: "aruco_single-1-stdout.log". And it's empty. Not an empty doc, but with a size of 0 Byte. Therefore can't open it.

-LD- gravatar image -LD-  ( 2018-07-27 06:30:27 -0600 )edit

I tried various Aruco ROS packages and found aruco_detect worked best for me. The only problem I found is that you need to make sure the frame rate is not too high. I used the drop node in topic_tools to reduce the image frame rate into aruco_detect.

Mark Rose gravatar image Mark Rose  ( 2018-07-28 12:55:30 -0600 )edit

Unfortunately aruco_detect is just for ROS-kinetik and i'm bound to indigo :(

-LD- gravatar image -LD-  ( 2018-07-30 06:07:50 -0600 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2018-07-30 09:28:25 -0600

-LD- gravatar image

Ok, don't ask me why, but it somehow runs now.

I did many things: downloaded a couple of other packages, tried them, removed them, catkin_make from stretch, tried them again, ...

finally a was ready to program everything myself just to see that the actual error is. i tried a very simple example of the cv_bridge since i need to read the images in openCV and also report them back to ROS. The example failed since i hadn't cv_bridge ?!?!

added cb_bridge to the catkin_ws. Finally, as the example was working and i was able to draw a circle in the image and display it in rviz, i tried the aruco again and guess what, the code ran the first time till the point where a camera frame is needed. Well from there on it was just a peace of cake, add a frame, get the image, try a marker and be happy like i wasn't for a couple of weeks as the coordinate frame was added to the image by the aruco code.

So, sorry for everybody else coming across this problem, i can't tell you what causes the error. But maybe just cv_bridge is missing ...

edit flag offensive delete link more

Question Tools



Asked: 2018-07-25 10:57:39 -0600

Seen: 927 times

Last updated: Jul 30 '18