[ros-users] small text for report which includes object detection
René Ladan
r.c.ladan at gmail.com
Wed Jul 14 10:14:13 UTC 2010
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 <matei at willowgarage.com>:
> 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 <r.c.ladan at gmail.com> 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 <matei at willowgarage.com>:
>>> 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 <r.c.ladan at gmail.com> 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 <matei at willowgarage.com>:
>>>>> 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 <r.c.ladan at gmail.com> 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 at 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 at code.ros.org
>>>>> https://code.ros.org/mailman/listinfo/ros-users
>>>>>
>>>> _______________________________________________
>>>> ros-users mailing list
>>>> ros-users at 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 at code.ros.org
>>> https://code.ros.org/mailman/listinfo/ros-users
>>>
>> _______________________________________________
>> ros-users mailing list
>> ros-users at 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 at code.ros.org
> https://code.ros.org/mailman/listinfo/ros-users
>
More information about the ros-users
mailing list