find-object icon indicating copy to clipboard operation
find-object copied to clipboard

One object but detect it from different direction

Open daniellee8527 opened this issue 6 years ago • 5 comments

I select the interested region of the image, and then try to detect . It detects very well when the camera direction is original , but if I move the camera or stand little far , and still detect the same object, the result sometimes can't be detected or the bounding box is tilted. Is there any method to solve this problem or improve the accurate ? Screenshot 2019-09-14 16:39:01

After I move the camera to right side Screenshot 2019-09-14 16:39:50

daniellee8527 avatar Sep 14 '19 08:09 daniellee8527

This object doesn't have a lot of visual features, and some of them are repetitive. It is kinda the limit to this type of approach. Sticking papers with random patterns could help to find more features, and better estimation when the point of view of the camera is different. You can also try to reduce the hessian threshold of SURF to extract more features. Another approach is to take pictures of the object in different orientations (similarly to object tracking approaches of opencv).

cheers, Mathieu

matlabbe avatar Sep 14 '19 15:09 matlabbe

Thank for your answer, I use IntelRealsense D435i for detection, and I will try to reduce the threshold. Is this threshold can modify on the GUI, after I typeroslaunch find_object_2d find_object_3d.launch? Because I saw the website of Find-Object, its GUI showed some toolbar for user to adjust parameter, but in ROS environment , the GUI didn't show those toolbar. So, where can I adjust the threshold? It is the GUI on introduction website, on Mac system, the right side shows some slider for user to adjust parameter. image

daniellee8527 avatar Sep 14 '19 20:09 daniellee8527

Yes, you can change parameters on ROS too. The Parametes panel is not shown by default, you can open it by clicking in the menu View->Parameters. Under Feature2D panel, if SURF is selected, the hessian threshold parameter should visible.

matlabbe avatar Sep 15 '19 22:09 matlabbe

Thank for your answer, I finally found them in GUI after I set full screen mode . By the way , does SURF algorithm suit for door and door handle detection? Because I want to use this to let robotic arm do the job such as opening the door.

daniellee8527 avatar Sep 17 '19 07:09 daniellee8527

I would say no, unless the door has a lot of visual features. You could stick a paper with a random pattern over the handle though. Template matching could be used though, see this paper: http://www.willowgarage.com/sites/default/files/m2.pdf

The vision basedhandle detection uses the Viola and Jones object classifiercascade [23] as implemented by OpenCV’sHaarClassifier-Cascademethods. The classifier is trained on a set of doorhandle images (we used over 200 in our experiments) thatcapture different viewing angles and changes in illuminationof the door handles present in our building. We use a lowdetection threshold to always detect the handle, at the costof a relatively high number of false positives. The 3D rangeinformation from the stereo camera is then used to filter outthe false positives by checking whether 3D points are presentat the detected location. Handles found at the wrong height,scale, or depth variation are rejected. Finally, we repeat thedetection process across 7 consecutive frames and use spatialvoting to filter out spurious false positives. Figure 5 showsa visualization of the handle detection process.

matlabbe avatar Sep 17 '19 13:09 matlabbe