Hi Renee, For now you will have to add models to the database by hand - we will have some tutorials coming out probably next week on how to do that. Matei On Wed, Jul 14, 2010 at 3:14 AM, René Ladan wrote: > Hi, > > is there currently any node available to input custom models? > The model_assembler node seems to have vanished in thin air. > > Regards, > Rene > > 2010/7/13 Matei Ciocarlie : >> That's hard to quantify precisely... I would say that you should not >> worry about precision too much, any reasonably lifelike mesh will do. >> >> It also depends what else is in the database of models: if you only >> have your own models, then only those will be fitted against. You will >> be able to recognize fewer objects, but at least other models will not >> get in the way. You can also play with the thresholds in >> tabletop_object_detector/src/tabletop_node.cpp to make the recognition >> more forgiving. >> >> Matei >> >> On Tue, Jul 13, 2010 at 9:24 AM, René Ladan wrote: >>> Hi Matei, >>> >>> I get it now ;) >>> >>> If I want to model my own objects (for any reason), how precise and >>> complete must the triangle meshes be for the object detection to work? >>> >>> Regards. >>> Rene >>> >>> 2010/7/13 Matei Ciocarlie : >>>> Hi Rene, >>>> >>>> The models are stored in the database as triangle meshes. For display, >>>> we found it more clear to render them as wireframe rather than >>>> triangle meshes, as the wireframe still allows the original point >>>> cloud to show trough a little bit. >>>> >>>> The detection is done by comparing the perceived point cloud against >>>> the triangle mesh stored in the database. >>>> >>>> Best, >>>> Matei >>>> >>>> On Tue, Jul 13, 2010 at 9:03 AM, René Ladan wrote: >>>>> Hi Matei, >>>>> >>>>> so the wireframe is only used for display reasons and to store the models >>>>> more efficiently in the database. Is the detection then realized by comparing >>>>> perceived pointcloud with the pointcloud version of the database models? >>>>> >>>>> Regards, >>>>> Rene >>>>> >>>>> 2010/7/13 Matei Ciocarlie : >>>>>> Hi Rene, >>>>>> >>>>>> That's generally correct, except for the transformation of the point >>>>>> cloud into wireframe. The tabletop_object_detector uses sensor data >>>>>> directly as point clouds. You might see a wireframe displayed on the >>>>>> screen but that's only after a database model has been recognized. The >>>>>> wireframe is that of the model, superimposed on the point cloud that >>>>>> has been recognized. >>>>>> >>>>>> Matei >>>>>> >>>>>> On Tue, Jul 13, 2010 at 4:59 AM, René Ladan wrote: >>>>>>> Hi, >>>>>>> >>>>>>> below is a text I intend to include in a report. Do I get the basic ideas right? >>>>>>> >>>>>>> Regards, >>>>>>> Rene >>>>>>> >>>>>>> Object handling consists of several steps, which are performed by the >>>>>>> tabletop_object_detector (and other) nodes. >>>>>>> •       Get an image of the object (e.g. a pool ball) from e.g. a stereo >>>>>>> camera with texturing or e.g. a laser range finder. >>>>>>> •       Transform the image (either a stereo-photo or a “sphere” of >>>>>>> distances) into a point cloud. A point cloud is a collection of >>>>>>> points, where all points have a number of pre-defined attributes, like >>>>>>> spatial coordinates, color, or neighborhood density. Point clouds are >>>>>>> the universal data structures for performing 3-dimensional algorithms >>>>>>> within ROS. TODO: figure out the algorithm >>>>>>> •       Transform the point cloud into a wireframe. TODO: figure out which >>>>>>> algorithm is used for this. >>>>>>> •       Now that an approximate wireframe model of the object is available, >>>>>>> (because the camera images are probably imperfect), this model can be >>>>>>> compared to a database of existing, perfect wireframe models. Because >>>>>>> the models are stored as blobs in the database, the approximation is >>>>>>> done in the ROS node. The database is thus only used a storage >>>>>>> backend. >>>>>>> •       The comparison algorithm, given the actual model at one side and the >>>>>>> database models at the other side, is able to calculate the likelihood >>>>>>> that the presented object matches a or multiple objects in the >>>>>>> database (e.g. for a ping-pong ball, it could say “90% pool ball, 8% >>>>>>> bottle cap, and 2% unknown”). >>>>>>> >>>>>>> -- >>>>>>> http://www.rene-ladan.nl/ >>>>>>> >>>>>>> GPG fingerprint = E738 5471 D185 7013 0EE0  4FC8 3C1D 6F83 12E1 84F6 >>>>>>> (subkeys.pgp.net) >>>>>>> _______________________________________________ >>>>>>> ros-users mailing list >>>>>>> ros-users@code.ros.org >>>>>>> https://code.ros.org/mailman/listinfo/ros-users >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Matei Ciocarlie >>>>>> Research Scientist >>>>>> Willow Garage Inc. >>>>>> 650-475-9780 >>>>>> _______________________________________________ >>>>>> ros-users mailing list >>>>>> ros-users@code.ros.org >>>>>> https://code.ros.org/mailman/listinfo/ros-users >>>>>> >>>>> _______________________________________________ >>>>> ros-users mailing list >>>>> ros-users@code.ros.org >>>>> https://code.ros.org/mailman/listinfo/ros-users >>>>> >>>> >>>> >>>> >>>> -- >>>> Matei Ciocarlie >>>> Research Scientist >>>> Willow Garage Inc. >>>> 650-475-9780 >>>> _______________________________________________ >>>> ros-users mailing list >>>> ros-users@code.ros.org >>>> https://code.ros.org/mailman/listinfo/ros-users >>>> >>> _______________________________________________ >>> ros-users mailing list >>> ros-users@code.ros.org >>> https://code.ros.org/mailman/listinfo/ros-users >>> >> >> >> >> -- >> Matei Ciocarlie >> Research Scientist >> Willow Garage Inc. >> 650-475-9780 >> _______________________________________________ >> ros-users mailing list >> ros-users@code.ros.org >> https://code.ros.org/mailman/listinfo/ros-users >> > _______________________________________________ > ros-users mailing list > ros-users@code.ros.org > https://code.ros.org/mailman/listinfo/ros-users > -- Matei Ciocarlie Research Scientist Willow Garage Inc. 650-475-9780