0
$\begingroup$

Rosanswers logo

Until now I have successfully compiled object_recognition against ROS diamondback installation using the following .rosinstall configuration:

- svn: {local-name: object_recognition, uri: 'https://code.ros.org/svn/wg-ros-pkg/branches/trunk_diamondback/stacks/object_recognition'}
- svn: {local-name: object_recognition_experimental, uri: 'https://code.ros.org/svn/wg-ros-pkg/branches/trunk_diamondback/stacks/object_recognition_experimental'}
- svn: {local-name: perception_pcl_addons, uri: 'https://code.ros.org/svn/ros-pkg/stacks/perception_pcl_addons/trunk'}
- svn: {local-name: vslam, uri: 'https://code.ros.org/svn/ros-pkg/stacks/vslam/trunk'}
- svn: {local-name: opencv_candidate, uri: 'https://code.ros.org/svn/wg-ros-pkg/branches/trunk_diamondback/stacks/vision_bleeding/opencv_candidate'}
- other: {local-name: /opt/ros/diamondback/ros}
- other: {local-name: /opt/ros/diamondback/stacks}

where I installed diamondback as a .deb package in Ubuntu, following these instructions. After a SVN update of object_recognition and its dependencies (except ROS Diamondback) I am running into errors when using recognizer in tod_detecting. I receive "OpenCV errors" (some assertions fail).

  • I wonder whether I am compiling the object_recognition stack against the same ROS installation and OpenCV version as the object_recognition developers?
  • Or should I compile against SVN version of ROS?
  • Is there a .rosinstall file for the object_recognition stack that relieves me of the burden to find the right dependencies for making object_recognition?

It would be helpful to have a similar setup like the object_recognition stack developers.

Background:

([ INFO] [1300976281.637313973]: LSH matching :1.66269
OpenCV Error: Assertion failed (CV_IS_MAT(objectPoints) && CV_IS_MAT(imagePoints) && CV_IS_MAT(A) && CV_IS_MAT(rvec) && CV_IS_MAT(tvec)) in cvFindExtrinsicCameraParams2, file /tmp/buildd/ros-diamondback-vision-opencv-1.4.1/debian/ros-diamondback-vision-opencv/opt/ros/diamondback/stacks/vision_opencv/opencv2/build/opencv-svn/modules/calib3d/src/calibration.cpp, line 1156)

I'd like to know whether this is regression or whether I just need to adapt my environment.


Originally posted by Julius on ROS Answers with karma: 960 on 2011-03-24

Post score: 1


Original comments

Comment by Julius on 2011-03-28:
See also https://code.ros.org/trac/wg-ros-pkg/ticket/5083

Comment by Julius on 2011-03-28:
It seems that the problem is not with the wrong OpenCV version I used, as both the recent SVN version from OpenCV and Diamondback's lead to failure.

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

It's a regression, revert to the version that worked for you: the code was working because it was assuming that the camera parameters were the training ones if none were given.

This was a dangerous assumption so i removed it. I did not notice it as the Kinect is giving us the data and I am working with the Kinect mostly. There is no way to input those parameters through the test file for now. We are cleaning a lot of stuff these days, and we are trying to clean the parameter files too so that should be done shortly I hope.

We are not really improving performance these days, just cleaning, so there is no point in svn up this week or next week.

Regards, Vincent


Originally posted by Vincent Rabaud with karma: 1111 on 2011-03-28

This answer was ACCEPTED on the original site

Post score: 1


Original comments

Comment by Julius on 2011-04-11:
I found two of the related bugs, see https://code.ros.org/trac/wg-ros-pkg/ticket/5083 for a quick&dirty workaround.

Comment by Julius on 2011-04-11:
I'd really like to SVN update to get the refactored version of the GuessGenerator, but it's two weeks gone and it still is an issue. I guess the camera matrix is not initialized. I'll post another comment if I get anywhere.

Comment by Julius on 2011-03-28:
Thanks for confirmation. Regression introduced with revision 50321. But after all, except for the cleanups, looking at the code in the recent revisions, I got the impression that 3d to 3d matching has been implemented in GuessGenerator.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.