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

Best 3D object recognition package

asked 2011-12-22 22:12:32 -0600

karthik gravatar image

Hi, I came across few object detection/recognition packages in ros

  1. tabletop_objects
  2. steder11icra
  3. roboearth
  4. find_object

I find some of them are built on cturtle and when i try to checkout these packages they accompany with lot of other packages of cturtle along with them. I have ros-electric and would like to recognize some objects like laptop, bottle and books etc using 3D pointclouds from Kinect. So can someone suggest the best package that is stable and working.

Thanks, Karthik

edit retag flag offensive close merge delete

Comments

hey we are also working on object detection/identification using 3D pointclouds from kinect. so can you suggest the best package/database for this purpose..? thank!

youga gravatar image youga  ( 2012-03-29 23:43:24 -0600 )edit

As of now i am using PCL and writing a simple package myself to recognize object. You may check the documentation of PCL and its tutorials for the same.

karthik gravatar image karthik  ( 2012-03-30 02:34:03 -0600 )edit

hi, it's that any suggestion or recommendation for me to lean how to detect the a object? and I'm more comfortable with python......so any suggestion for me? thank you so much.

Zero gravatar image Zero  ( 2018-07-12 20:55:52 -0600 )edit

5 Answers

Sort by ยป oldest newest most voted
1

answered 2012-01-03 07:09:34 -0600

hsiao gravatar image

The current tabletop detector works well for well-separated, rotationally-symmetric objects on a flat surface such as a table. It won't work for laptops and books unless they're in exactly the same orientation as in the database (tabletop detection is only doing 2D ICP).

TOD works well for highly textured objects (from views in which the texture is actually visible and not just a tiny patch of fuzzy pixels that humans can't even make out), but I wouldn't say that it's quite stable yet. Should be available and stable for Fuerte Turtle.

Can't say about the others, I haven't tried them.

edit flag offensive delete link more

Comments

Does it work with Kinect as the sensor?
karthik gravatar image karthik  ( 2012-01-09 02:43:44 -0600 )edit
tabletop detector works with either Kinect or narrow stereo; TOD requires Kinect.
hsiao gravatar image hsiao  ( 2012-01-09 04:58:45 -0600 )edit
TOD seems to be there only in diamondback. Am i missing something here.
karthik gravatar image karthik  ( 2012-01-09 05:38:43 -0600 )edit
3

answered 2011-12-26 05:17:33 -0600

dejanpan gravatar image

updated 2011-12-26 05:19:59 -0600

I'd also suggest to have a look at VFH-based matching: http://pointclouds.org/documentation/tutorials/vfh_recognition.php#vfh-recognition We at TUM are rather happy with it.

For the textured objects Willow's TOD seems to be very promising (though I am still evaluating it): http://ecto.willowgarage.com/recognition

edit flag offensive delete link more
3

answered 2011-12-22 22:31:32 -0600

Ugo gravatar image

I ran roboearth on electric and was quite happy with it. The good thing is that you can easily teach your own objects to be recognized. The recognition success rate was not as high as I expected though.

edit flag offensive delete link more

Comments

could you tell me what objects worked for you?
karthik gravatar image karthik  ( 2011-12-22 22:33:22 -0600 )edit
I was recognizing a specific connector used in a nuclear plant :) (which I learnt using their excellent learning node)
Ugo gravatar image Ugo  ( 2011-12-22 22:36:57 -0600 )edit
Ok thanks :)
karthik gravatar image karthik  ( 2011-12-22 22:37:34 -0600 )edit
3

answered 2012-01-03 03:23:31 -0600

Hououin Kyouma gravatar image

I tried both roboearth and the tabletop detector and I think the tabletop detector works better at the moment in terms of recognizing the objects. However, adding models into a local database is easier in roboearth than in tabletop, but when I tried roboearth it often failed to find the marker template so a model could not be created. If you have to choose between these two, I'd recommend using the tabletop detector because of the higher success rate, but you'll have to find out how to add objects properly to the database (I'm also looking into that now).

edit flag offensive delete link more

Comments

Take a look at this question : http://answers.ros.org/question/388/household_objects_database-new-entries, it may help you adding new entries to the database.
Guido gravatar image Guido  ( 2012-01-03 06:53:35 -0600 )edit
Yeah I also posted something there, insert_model.cpp worked for me but the model I created was probably faulty. I think I have to create a new model using 3DSom or something alike. I'll post a new question on the forum regarding this, thanks for your comment!
Hououin Kyouma gravatar image Hououin Kyouma  ( 2012-01-03 21:51:27 -0600 )edit
I wonder if a model created with roboearth could easily be inserted in the household database. Someone already tried this ?
Guido gravatar image Guido  ( 2012-01-03 23:04:57 -0600 )edit
I also thought about doing something like that, but I haven't tried it. Roboearth creates models as pointclouds, while tabletop uses the ply format. Unfortunately, I don't know any applications that are able to convert pointcloud models to ply models.
Hououin Kyouma gravatar image Hououin Kyouma  ( 2012-01-03 23:31:45 -0600 )edit
2

answered 2017-05-12 00:16:19 -0600

fivef gravatar image

updated 2019-04-17 00:53:52 -0600

jayess gravatar image

All of the answers are outdated. Please completely forget ork, you will just waste your time on it for poor results on all pipelines.

Use v4r for a solution at least 10 times better than everything mentioned before. Install it from debians and use the multishot version. It works with textured an untextured objects (SIFT and SHOT based) .

A neural network alternative is YOLO but it has no pose estimation afaik.

Another try is this package

edit flag offensive delete link more

Comments

I can't compile v4r on Ubuntu Xenial, tryed all branches and it seems that it requires Boost 1.48 but default to Xenial is 1.58... Do you know exactly which version of v4r and v4r_ros_wrappers to install? it looks like their project is paused or something.

Danilo_BR gravatar image Danilo_BR  ( 2019-04-16 15:02:14 -0600 )edit

Yes unfortunately the project looks dead. I remember that I also had problems building v4r. Have you tried installing from debians as described in the readme? https://rgit.acin.tuwien.ac.at/v4r/v4...

fivef gravatar image fivef  ( 2019-04-16 23:29:09 -0600 )edit

Yes, it installs but when I start the camera it gives an error about shared pointers in the boost library.

Danilo_BR gravatar image Danilo_BR  ( 2019-04-23 14:12:17 -0600 )edit

Not an answer, but I have rejuvenated this question here

jorge gravatar image jorge  ( 2019-06-16 14:51:58 -0600 )edit

Question Tools

9 followers

Stats

Asked: 2011-12-22 22:12:32 -0600

Seen: 6,691 times

Last updated: Apr 17 '19