0
$\begingroup$

Rosanswers logo

Hello,

I've been spending some time trying to figure out the puzzle, and I need some help: I'd love to try the ECTO-based framework for object recognition, but I've a hard time installing all the pieces.

I've tried on 2 boxes (one is Ubuntu 10.04, the other one is Ubuntu 12.04), on both electric and fuerte.

I understand these tools are new and everything is not stabilized yet. I summarize below my current experience. Hopefully it may help sorting out the documentation :-)

(for each step, I've referenced the link to the corresponding documentation)

  • On Ubuntu 10.04, electric:

I went for:

$ sudo apt-get install ros-electric-object-detection [1]
$ roslaunch openni_camera openni_node.launch
$ rosrun object_recognition_core orb_template.py -o my_textured_plane [2]

=> ImportError: No module named ecto

-> no package ros-electric-ecto (how ros-electric-object-recognition can work, then?), so I went for a manual installation of ecto.

$ cd ~/ros-dev-electric
$ git clone git://github.com/plasmodic/ecto_kitchen.git
$ cd ecto_kitchen
$ git submodule init
$ git submodule update

[here, the doc on [3] forget a few steps that are mentionned in README.rst, in the ecto_kitchen repo]

$ git submodule foreach git checkout master
$ ln -s ./catkin/toplevel.cmake CMakeLists.txt
$ mkdir build && cd build && cmake ../ && make -j4

It takes some time, but eventually everything compile.

[3] mentions python_path.sh that does not exist anymore. I've sourced instead ~/ros-dev-electric/ecto_kitchen/setup.sh which allows to import ecto in python.

$ rosrun object_recognition_core orb_template.py -o my_textured_plane

=> from ecto_image_pipeline.io.source import create_source
=> ImportError: No module named io.source

Here, I'm stuck. I do not know to install ecto_image_pipeline. I've tried to clone it from https://github.com/wg-perception/ecto_image_pipeline.git to ~/ros-dev-electric/ecto_kitchen, and then rebuild ecto_kitchen, but it fails at configuration (with a KeyError: 'ecto_image_pipeline').

  • On Ubuntu 10.04, fuerte:

No package for object recognition, but ecto is packaged:

$ sudo apt-get install ros-fuerte-ecto ros-fuerte-ecto-opencv ros-fuerte-ecto-pcl

Then, I've installed the recognition_kitchen [4]:

$ unset PYTHONPATH LD_LIBRARY_PATH ROS_PACKAGE_PATH
$ source /opt/ros/fuerte/setup.sh
$ cd ~/ros-dev-fuerte
$ git clone git://github.com/wg-perception/recognition_kitchen.git
$ cd recognition_kitchen
$ rosinstall . /opt/ros/fuerte ./install/rosinstall_main ./install/rosinstall_pipelines ./install/rosinstall_ros

Which fails after cloning all repos with: rosmake: error: no such option: --rosdep-install. After a while, I've figured out that I was still using rosinstall-0.5. I went a bit further with rosinstall-0.6:

$ mkdir build && cd build && cmake ..

=> CMake fails with:
[...]
-- Generating .msg files for action object_recognition_msgs/ObjectRecognition /home/slemaign/ros-dev-fuerte/recognition_kitchen/object_recognition_msgs/action/ObjectRecognition.action
/opt/ros/fuerte/share/genmsg/cmake/pkg-genmsg.cmake.em:33: error: <type 'exceptions.IOError'>: 
[Errno 2] No such file or directory: '/home/slemaign/ros-dev-fuerte/recognition_kitchen/object_recognition_msgs//home/slemaign/ros-dev-fuerte/recognition_kitchen/object_recognition_msgs/srv/GetObjectInformation.srv'

For some reason, @ARG_SERVICES@ in /opt/ros/fuerte/share/genmsg/cmake/pkg-genmsg.context.in get configured in recognition_kitchen` with a duplicated path.

I've stopped here...

  • On Ubuntu 12.04:

Ubuntu 12.04 ships with its own libopencv 2.3 which conflicts with the one from WG (because, amongst other issues, WG links against libjpeg62 and Ubuntu's one uses libjpeg8). So I could not install much.

[1] http://ecto.willowgarage.com/recognition/release/latest/#get-object-recognition

[2] http://ecto.willowgarage.com/recognition/release/latest/capture/index.html#platform-specific-instructions

[3] http://ecto.willowgarage.com/releases/amoeba-beta4/README.html

[4] https://github.com/wg-perception/recognition_kitchen


Originally posted by severin on ROS Answers with karma: 240 on 2012-04-03

Post score: 3


Original comments

Comment by sam on 2012-10-28:
The four link of ubuntu 12.04 seems disappeared. Where are them? Thank you~

$\endgroup$

2 Answers 2

0
$\begingroup$

Rosanswers logo

I installed ECTO object recognition on Ubuntu 11.10 / ROS Electric and finally managed to get some of the tools working (template tracking and capturing preview). I did open my own question (it says: can this be done easier?), you might want to have a look: http://answers.ros.org/question/32015/running-ecto-object-recognition-on-ubuntu-1110-ros


Originally posted by Julius with karma: 960 on 2012-04-17

This answer was ACCEPTED on the original site

Post score: 2


Original comments

Comment by sam on 2012-10-28:
How @severin solve these questions? Thank you~

$\endgroup$
0
$\begingroup$

Rosanswers logo

A lot of questions here :) The short answer is to please file bug reports as mentioned on: http://www.ros.org/wiki/object_recognition

A lot of infrastructure changes happened lately due to a full move to catkin (the new Fuerte build infrastructure) and trying to make it work on Electric.

Your problems on electric should have been fixed by now.

Your problem on Lucid fuerte requires a new genmsg release which will happen after the official release. Object recognition is a very complete stack and we still need to release new versions of some core packages to make it compile fully; the priority is on release fuerte for now. The commit that fixes genmsg is: https://github.com/ros/genmsg/commit/0f70b4608c11eb3940a85f17cd89dc9adcc9c8a5

Your problem on Precise fuerte got fixed and there are now ecto packages for Precise (or just update your rosdep).


Originally posted by Vincent Rabaud with karma: 1111 on 2012-04-18

This answer was NOT ACCEPTED on the original site

Post score: 1

$\endgroup$

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.