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

How to use pcl (+ cuda modules) with ROS

asked 2019-02-07 08:29:22 -0600

ipgvl gravatar image

updated 2019-02-12 02:24:26 -0600


I want to use pcl and openCV with cuda. I know now that I have to install another version of openCV (since the default version of openCV in ROS kinetic does not include cuda modules) and then call catkin_make -DOpenCV_DIR=... to use the new version. But now I have to use cuda with pcl too, and I have seen that there are no cuda modules in the default ROS installation (same as openCV). Do I need to install pcl outside ROS like with openCV? And then how can I use it?

Thank you.

edit retag flag offensive close merge delete


@ahendrix Sorry but don't know why it has to be closed. Since the only thing I want to know is how to use/link pcl with ROS, it is a ROS question. Is it supposed that I have to register all the webs involved to ask any question? If someone wants to answer me, why not to do it here? With all respect.

ipgvl gravatar image ipgvl  ( 2019-02-08 01:20:53 -0600 )edit

PCL is installed outside of ROS, and you question is "how do I compile PCL with cuda support?" I don't expect many users on the ROS forums to know that. You're more likely to get a good answer by asking the PCL community directly.

ahendrix gravatar image ahendrix  ( 2019-02-08 10:55:38 -0600 )edit

Sorry if my question is not clear but what I want to know is if I have to install a version of pcl that contains cuda and how to use with ROS, how to link it with ROS, etc.(I already know how to install cuda and pcl outside) If I wanted to know how to use it outside ROS I would not write it here.

ipgvl gravatar image ipgvl  ( 2019-02-11 01:22:47 -0600 )edit

Sorry; it was unclear from your question that you already know how to build and install PCL with cuda support.

ahendrix gravatar image ahendrix  ( 2019-02-11 11:49:53 -0600 )edit

1 Answer

Sort by » oldest newest most voted

answered 2019-02-11 14:25:50 -0600

ahendrix gravatar image

ROS treats PCL and OpenCV in much the same way; as third-party packages that are built and installed outside of ROS.

I'm not sure what the exact build flags for ROS will be, but if you build and install a version of PCL with CUDA support, you should be able to use that from your ROS packages.

Note that the same caveats apply to using custom versions of both PCL and OpenCV: you will need to rebuild every ROS package you use that depends on OpenCV or PCL. Otherwise, you can end up with different libraries using different versions of PCL or OpenCV, both linked into the same final binary. When that happens, only one version of PCL is used, and any ABI differences will cause hard-to-debug segfaults.

edit flag offensive delete link more


Ok, thank you!

ipgvl gravatar image ipgvl  ( 2019-02-12 01:01:30 -0600 )edit

@ipgvl any success with that approach?

joao.aguizo gravatar image joao.aguizo  ( 2022-03-10 14:44:49 -0600 )edit

Question Tools



Asked: 2019-02-07 08:29:22 -0600

Seen: 1,497 times

Last updated: Feb 12 '19