KinFu with ROS

classic Classic list List threaded Threaded
44 messages Options
123
Reply | Threaded
Open this post in threaded view
|

KinFu with ROS

Michael Korn
Hello,

I'm interested to use Kinfu and Kinfu Large Scale with ROS.
Did someone this before? Has someone experience or code to share?

Otherwise I would start with kinfu_app.cpp/kinfuLS.cpp and remove alle parts that are no longer needed and add the ROS code to the rest.
Does anybody have a better idea?

Thanks
Michael





_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: KinFu with ROS

fheredia
Hello Michael, 


I'm not sure if this has been integrated with ROS, but it may also help for the robotics application :)


Cheers,
Francisco


On Fri, Oct 5, 2012 at 3:49 PM, Michael Korn <[hidden email]> wrote:
Hello,

I'm interested to use Kinfu and Kinfu Large Scale with ROS.
Did someone this before? Has someone experience or code to share?

Otherwise I would start with kinfu_app.cpp/kinfuLS.cpp and remove alle parts that are no longer needed and add the ROS code to the rest.
Does anybody have a better idea?

Thanks
Michael





_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users



--
Francisco Javier Heredia Soriano, MSc.
[hidden email]
Twitter: @panchoenlared


_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: KinFu with ROS

Julius Kammerl
In reply to this post by Michael Korn
Hi Michael,

that sounds interesting! Please let me know if you need help with this.
It would be great to have a ROS wrapper integrated into the
perception_pcl stack.

Cheers,
Julius

On 10/05/2012 06:49 AM, Michael Korn wrote:

> Hello,
>
> I'm interested to use Kinfu and Kinfu Large Scale with ROS.
> Did someone this before? Has someone experience or code to share?
>
> Otherwise I would start with kinfu_app.cpp/kinfuLS.cpp and remove alle parts that are no longer needed and add the ROS code to the rest.
> Does anybody have a better idea?
>
> Thanks
> Michael
>
>
>
>
>
> _______________________________________________
> [hidden email] / http://pointclouds.org
> http://pointclouds.org/mailman/listinfo/pcl-users
>

_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: KinFu with ROS

mouser58907
In reply to this post by Michael Korn
Michael,

I've actually been trying to achieve this all weekend with no luck. I was able to compile everything at one point, but I would get a crash when shifting. Have you made any progress?

Craig

From: Michael Korn <[hidden email]>
To: Point Cloud Library (PCL) Users <[hidden email]>
Sent: Friday, October 5, 2012 8:49 AM
Subject: [PCL-users] KinFu with ROS

Hello,

I'm interested to use Kinfu and Kinfu Large Scale with ROS.
Did someone this before? Has someone experience or code to share?

Otherwise I would start with kinfu_app.cpp/kinfuLS.cpp and remove alle parts that are no longer needed and add the ROS code to the rest.
Does anybody have a better idea?

Thanks
Michael





_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users



_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: KinFu with ROS

Michael Korn
In reply to this post by Julius Kammerl
THX,
kinfu_app.cpp/kinfuLS.cpp has over 1000 lines of code, so it will be a
lot of work, but on the whole it can be done.

Cheers,
Michael


On Fri, 2012-10-05 at 21:59 -0700, Julius Kammerl wrote:

> Hi Michael,
>
> that sounds interesting! Please let me know if you need help with this.
> It would be great to have a ROS wrapper integrated into the
> perception_pcl stack.
>
> Cheers,
> Julius
>
> On 10/05/2012 06:49 AM, Michael Korn wrote:
> > Hello,
> >
> > I'm interested to use Kinfu and Kinfu Large Scale with ROS.
> > Did someone this before? Has someone experience or code to share?
> >
> > Otherwise I would start with kinfu_app.cpp/kinfuLS.cpp and remove alle parts that are no longer needed and add the ROS code to the rest.
> > Does anybody have a better idea?
> >
> > Thanks
> > Michael
> >
> >
> >
> >
> >
> > _______________________________________________
> > [hidden email] / http://pointclouds.org
> > http://pointclouds.org/mailman/listinfo/pcl-users
> >
>
> _______________________________________________
> [hidden email] / http://pointclouds.org
> http://pointclouds.org/mailman/listinfo/pcl-users
>

_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: KinFu with ROS

Michael Korn
In reply to this post by mouser58907
Hi Craig,

In fact, I will not write the wrapper on my own. One of my student needs
it for his diploma thesis. So he writes the code and I advise him.
Unfortunately, he made only modest progress.
How far are you? Have you the subscriber(e.g. kinect data) and some
publisher ready?

Michael


On Mon, 2012-10-08 at 14:27 -0700, Craig Mouser wrote:

> Michael,
>
>
> I've actually been trying to achieve this all weekend with no luck. I
> was able to compile everything at one point, but I would get a crash
> when shifting. Have you made any progress?
>
>
> Craig
>
>
> ______________________________________________________________________
> From: Michael Korn <[hidden email]>
> To: Point Cloud Library (PCL) Users <[hidden email]>
> Sent: Friday, October 5, 2012 8:49 AM
> Subject: [PCL-users] KinFu with ROS
>
>
> Hello,
>
> I'm interested to use Kinfu and Kinfu Large Scale with ROS.
> Did someone this before? Has someone experience or code to share?
>
> Otherwise I would start with kinfu_app.cpp/kinfuLS.cpp and remove alle
> parts that are no longer needed and add the ROS code to the rest.
> Does anybody have a better idea?
>
> Thanks
> Michael
>
>
>
>
>
> _______________________________________________
> [hidden email] / http://pointclouds.org
> http://pointclouds.org/mailman/listinfo/pcl-users
>
>
>
> _______________________________________________
> [hidden email] / http://pointclouds.org
> http://pointclouds.org/mailman/listinfo/pcl-users

_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: KinFu with ROS

mouser58907
Michael,

I have not made much progress. I think adding the subscribers and publishers will be simple. However I'm struggling to build KinfuLS with rosmake. I've gotten it to compile, but it crashes every time I shift. I get a "Segmentation Fault (core dumped)" error at different places every time. I haven't been able to figure out the cause yet.

Craig


From: Michael Korn <[hidden email]>
To: [hidden email]
Sent: Tuesday, October 9, 2012 10:15 AM
Subject: Re: [PCL-users] KinFu with ROS

Hi Craig,

In fact, I will not write the wrapper on my own. One of my student needs
it for his diploma thesis. So he writes the code and I advise him.
Unfortunately, he made only modest progress.
How far are you? Have you the subscriber(e.g. kinect data) and some
publisher ready?

Michael


On Mon, 2012-10-08 at 14:27 -0700, Craig Mouser wrote:

> Michael,
>
>
> I've actually been trying to achieve this all weekend with no luck. I
> was able to compile everything at one point, but I would get a crash
> when shifting. Have you made any progress?
>
>
> Craig
>
>
> ______________________________________________________________________
> From: Michael Korn <[hidden email]>
> To: Point Cloud Library (PCL) Users <[hidden email]>
> Sent: Friday, October 5, 2012 8:49 AM
> Subject: [PCL-users] KinFu with ROS
>
>
> Hello,
>
> I'm interested to use Kinfu and Kinfu Large Scale with ROS.
> Did someone this before? Has someone experience or code to share?
>
> Otherwise I would start with kinfu_app.cpp/kinfuLS.cpp and remove alle
> parts that are no longer needed and add the ROS code to the rest.
> Does anybody have a better idea?
>
> Thanks
> Michael
>
>
>
>
>
> _______________________________________________
> [hidden email] / http://pointclouds.org
> http://pointclouds.org/mailman/listinfo/pcl-users
>
>
>
> _______________________________________________
> [hidden email] / http://pointclouds.org
> http://pointclouds.org/mailman/listinfo/pcl-users

_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users



_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: KinFu with ROS

Michael Korn
Hi Craig,
       
I can't confirm this issue. It works fine.
What I did:
- I did a checkout of perception_pcl_unstable/
- I modified pcl17/Makefile to compile (-DBUILD_CUDA=ON \-DBUILD_GPU=ON)
- rosmake pcl17
       
kinfuLS works with r7515, too.
       
Michael
Reply | Threaded
Open this post in threaded view
|

Re: KinFu with ROS

mouser58907
Michael,

Thanks for the response. I tried following your instructions and everything compiles fine. However, when I run KinfuLS I get this error.

craig@craig-ubuntu:~$ rosrun pcl17 pcl_kinfu_largeScale
/home/craig/ros/perception_pcl_unstable/pcl17/bin/pcl_kinfu_largeScale: symbol lookup error: /home/craig/ros/perception_pcl_unstable/pcl17/bin/pcl_kinfu_largeScale: undefined symbol: _ZN5pcl177console11find_switchEiPPcPKc

Did you have to do something for this?

I have no problem compiling normally. Everything will run fine then. It's only when I use pcl with ROS that I get a problem.
Reply | Threaded
Open this post in threaded view
|

Re: KinFu with ROS

Michael Korn
Craig,

This is maybe a problem with linking. The files are created in pcl17/build/pcl_trunk/build/bin and with "make install" copied to pcl17/bin.
Can you start KinfuLS in pcl17/build/pcl_trunk/build/bin?

Michael
Reply | Threaded
Open this post in threaded view
|

Re: KinFu with ROS

mouser58907
Michael, I really appreciate the help. Launching it from that folder does indeed launch the program, but then I get the crash when I'm shifting that I was getting before. It's on the line that calls CudaDeviceSynchronize().

Error: unspecified launch failure /home/craig/ros/perception_pcl_unstable/pcl17/build/pcl_trunk/gpu/kinfu_large_scale/src/cuda/tsdf_volume.cu:695

I'm not sure why I am getting this error when running it out of the ROS SVN but not when using just the trunk. I'd like to try it on another computer but unfortunately this is the only one available to me with a CUDA GPU.
Reply | Threaded
Open this post in threaded view
|

Re: KinFu with ROS

mouser58907
Okay, re-installing my nvidia drivers seems to have fixed the crash. I've completely redownloaded and recompiled pcl17 and am still getting that linking error from before. I'll continue working on it through the night.
Reply | Threaded
Open this post in threaded view
|

Re: KinFu with ROS

mouser58907
Okay, triple post alert. The crash is back. I've tried reinstalling, recompiling, restarting. I'm so stumped at this point. I really need to get this working in the next week or so too. I'm considering reinstalling ubuntu just to see if it helps but I'll lose a lot of time recompiling and reinstalling everything. Does anyone have any suggestions?

The error:
Error: unspecified launch failure /home/craig/ros/perception_pcl_unstable/pcl17/build/pcl_trunk/gpu/kinfu_large_scale/src/cuda/tsdf_volume.cu:695
Reply | Threaded
Open this post in threaded view
|

Re: KinFu with ROS

Michael Korn
I cant' reproduce this error, so I will not be a great help.
Does kinfu without ROS work (from svn.pointclouds.org/pcl/trunk)?
Maybe you have to set the correct CUDA_ARCH_BIN.
Reply | Threaded
Open this post in threaded view
|

Re: KinFu with ROS

mouser58907
I tried setting the CUDA_ARCH_BIN and it didn't seem to help. I totally reinstalled Ubuntu 12.04 in case something was wrong but I'm getting the same error. Can you shed some light on your hardware setup, or can someone else try and see if they also get my problem?

I'm using Ubuntu 12.04 32 bit. CUDA 4.2 with NVIDIA 295.40 drivers and ROS Fuerte. I'm using a GTX 480 GPU.

Also, are you working on receiving the RGB-D images through a ROS topic?
Reply | Threaded
Open this post in threaded view
|

Re: KinFu with ROS

Michael Korn
Craig,

I'm using Ubuntu 12.04 64 bit, GTX 680 and the cuda 5.0.35 package.

Did you modified the code? Have you change the voxel grid size? I can't reproduce your problem.

We have a ROS wrapper, but with poor functionality. We subscribe the depth image from the openni node and we publish the generated image from kinfuLS. KinfuLS runs without any problems and shifting works, too.

Michael
Reply | Threaded
Open this post in threaded view
|

Re: KinFu with ROS

mouser58907
I have not modified anything. I followed these instructions you provided earlier:

- I did a checkout of perception_pcl_unstable/
- I modified pcl17/Makefile to compile (-DBUILD_CUDA=ON \-DBUILD_GPU=ON)
- rosmake pcl17

I still get the linking error as I mentioned previously. I'm going to try with 64 bit tonight. If that doesn't work I will try another computer with a 560 GTX card. Would you be willing to share your code for subscribing to the OpenNI depth image? It may be beneficial to create it as a separate project with a dependency on pcl17.

Thanks for your help through this.

Craig
Reply | Threaded
Open this post in threaded view
|

Re: KinFu with ROS

mouser58907
After finding this quote:
Ubuntu 64bit is the default development environment at Willow Garage. At this point things are more likely to fail on 32 bit than 64 bit.
I'm hoping 64 bit will fix my problem. However, I'm getting a different linking error now. I can rosmake pcl17 with no problems, but when I rosrun pcl17 pcl_kinfu_largescale I get this error:

/home/craig/ros_ws/perception_pcl_unstable/pcl17/bin/pcl_kinfu_largeScale: error while loading shared libraries: libpcl_common.so.1.7: cannot open shared object file: No such file or directory

These libraries exist in the lib build/pcl_trunk/build/lib folder within pcl17. Any more advice?


Reply | Threaded
Open this post in threaded view
|

Re: KinFu with ROS

Radu B. Rusu
Administrator
See http://dev.pointclouds.org/issues/854. Known issue :)

Cheers,
Radu.
--
http://openperception.org

On 10/29/2012 03:58 PM, mouser58907 wrote:

> After finding this quote:
>
>> Ubuntu 64bit is the default development environment at Willow Garage. At
>> this point things are more likely to fail on 32 bit than 64 bit.
>
> I'm hoping 64 bit will fix my problem. However, I'm getting a different
> linking error now. I can rosmake pcl17 with no problems, but when I rosrun
> pcl17 pcl_kinfu_largescale I get this error:
>
> /home/craig/ros_ws/perception_pcl_unstable/pcl17/bin/pcl_kinfu_largeScale:
> error while loading shared libraries: libpcl_common.so.1.7: cannot open
> shared object file: No such file or directory
>
> These libraries exist in the lib build/pcl_trunk/build/lib folder within
> pcl17. Any more advice?
>
>
>
>
>
>
> --
> View this message in context: http://www.pcl-users.org/KinFu-with-ROS-tp4022789p4023437.html
> Sent from the Point Cloud Library (PCL) Users mailing list mailing list archive at Nabble.com.
> _______________________________________________
> [hidden email] / http://pointclouds.org
> http://pointclouds.org/mailman/listinfo/pcl-users
>
_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: KinFu with ROS

mouser58907
Oh man it works! It finally works! I still have to run it from the bin directory because of the pcl17::console::find_switch linking error but at least it works. Thanks for all your help everyone!
123