wg-perception / linemod

An OR pipeline based on LINE-MOD from OpenCV
47 stars 54 forks source link

Trouble using linemod #22

Open JimmyDaSilva opened 8 years ago

JimmyDaSilva commented 8 years ago

Hi, I am having trouble detecting the tutorial's coke can.

The /real_icpin_ref seems to have the coke can + a single point (See the green dot in the images). I don't really understand where this dot comes from.

screenshot from 2016-01-20 15 30 18 screenshot from 2016-01-20 15 30 53

nlyubova commented 8 years ago

Hello, Linemod requires a mesh with an origin in the center of an object (that is not a case for the coke mesh in the tutorial) that is the reason of a small shift between the meshes (in green and blue) You could try to open your mesh (in a Blender, for example) and move the origin to its centermass

JimmyDaSilva commented 8 years ago

Thanks @nlyubova. That will probably help :)

JimmyDaSilva commented 8 years ago

Hello, @nlyubova , I shitfed the mesh so that the origin is set in the center of mass. Also tried shifting it to the bottom of the can. In any case I get the same result. It contains two issues :

I have a few other problems:

Thanks for your help, Jimmy

nlyubova commented 8 years ago

You should shift the origin to teh center of the object (center of mass) but not to the bottom (only Tabletop required a mesh with an origin at the bottom).

The shift and wrong orientation can be due to several problems: either the origin of mesh is shifted or the image frame_id is wrong ! For the second, it can be your case. check the frame_id of you depth and RGB images and check if it corresponds to the one in the conf file (especially under the parameter depth_frame_id: '.....'

ANother thing to check is the image resolution in the training conf file. Doe sit correspond to the image resolution during recognition? AN example from the conf file: renderer_width: 320 renderer_height: 240

Regarding false-positives, try to play with thresholds; also icp thresholds

and for the KinectV2, what is the reolution of color and depth images and what is the format 8U/16U/32F?

Let me know !

JimmyDaSilva commented 8 years ago

@nlyubova thank you for your concern!

I shifted the mesh accordingly it indeed resolved my orientation problem. I posted a PR(https://github.com/wg-perception/ork_tutorials/pull/10) on ork_tutorials with the shifted mesh. The green real_icp_model is still shifted though, not really a problem but still.

My mouse, or my arm would still give false-positives with quite high scores (~92). How are you supposed to tweak the following params :

How do you specify the renderer's width and height? I added your lines in training.conf but it didn't changed the renderer window's size, or the display.

Concerning the KinectV2, HD images are 1920x1080, QHD images are 960x540, SD images are 512x424

screenshot from 2016-02-04 15 02 38 screenshot from 2016-02-04 15 04 22

Again thanks for the help :)