ros
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
ros [2010/08/11 15:22] – 131.159.18.233 | ros [2011/11/03 13:27] – NBCwkRVV 60.30.113.232 | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== ROS ====== | + | Ri3J9k , [url=http://egkwysadeody.com/]egkwysadeody[/url], [link=http://terzzheoywai.com/]terzzheoywai[/link], http://vvpeiegmcxks.com/ |
- | + | ||
- | ===== Introduction ===== | + | |
- | + | ||
- | * Read the documentation here: http://www.ros.org/wiki/ROS/ | + | |
- | + | ||
- | ===== Installation ===== | + | |
- | + | ||
- | * Take an overview of the installation instructions from here: http://www.ros.org/wiki/ | + | |
- | * Install rosinstall: | + | |
- | + | ||
- | sudo easy_install -U rosinstall | + | |
- | + | ||
- | * Create a directory where you want to store ros: | + | |
- | + | ||
- | cd local/src | + | |
- | mkdir ros | + | |
- | + | ||
- | * As of 10.08.2010 is better (more stable, sufficiently new) to use cturtle ros distribution. | + | |
- | + | ||
- | rosinstall ros http:// | + | |
- | + | ||
- | * In the last step rosinstall will try to download and compile cturtle. If you get some errors is because you may be missing some dependencies. Look at the error messages and find out the name of the packages that you have to install in debian, then try rosintall command again until you don't get any errors. | + | |
- | * Create a file called .bashrc.ros Put inside the following: | + | |
- | + | ||
- | export ROS_ROOT=${HOME}/ | + | |
- | export PATH=${ROS_ROOT}/ | + | |
- | export PYTHONPATH=${ROS_ROOT}/ | + | |
- | export OCTAVE_PATH=${ROS_UP}/ | + | |
- | #if [ ! " | + | |
- | if [ ! " | + | |
- | export ROS_PACKAGE_PATH=${HOME}/ | + | |
- | #export ROS_STACK_PATH=${ROS_ROOT}: | + | |
- | + | ||
- | #source `rosstack find ias_semantic_mapping`/ | + | |
- | + | ||
- | NUM_CPUS=`cat / | + | |
- | let " | + | |
- | export ROS_PARALLEL_JOBS=" | + | |
- | + | ||
- | export ROS_LANG_DISABLE=roslisp: | + | |
- | + | ||
- | export ROS_IP=`ip addr show \`/ | + | |
- | #export ROS_IP=192.168.137.2 | + | |
- | # | + | |
- | #if [[ " | + | |
- | + | ||
- | alias kcart_left=" | + | |
- | alias kcart_right=" | + | |
- | + | ||
- | . ${ROS_ROOT}/ | + | |
- | + | ||
- | * Adjust the ROS_MASTER_URI to point to the computer where the rosmaster that you want to use is. | + | |
- | * Inside of your .bashrc add de following line: | + | |
- | + | ||
- | alias env_ros=' | + | |
- | + | ||
- | * Logout and login again to reload your .bashrc | + | |
- | * Run env_ros | + | |
- | * Now you can use the ros utilities | + | |
- | + | ||
- | ===== Installing extra ros packages ===== | + | |
- | + | ||
- | In the ros directory there is a subdirectory called stacks this is where you can put extra packages. You just have to download somehow this packages and put them there. | + | |
- | + | ||
- | Example: Gstreamer video adquisition: | + | |
- | + | ||
- | * Search for gstreamer in http://www.ros.org/ | + | |
- | * cd into the stacks directory | + | |
- | + | ||
- | cd $ROS_ROOT | + | |
- | cd ../stacks | + | |
- | + | ||
- | * Download the code there: | + | |
- | + | ||
- | svn co http:// | + | |
- | + | ||
- | * Now you can compile the code. | + | |
- | + | ||
- | rosmake gscam | + | |
- | + | ||
- | * Rosmake deals with ros dependencies. It will automatically compile any other necessary ros packages that are dependencies. | + | |
- | * Rosmake is pretty slow checking dependencies, | + | |
- | + | ||
- | ===== Gscam ===== | + | |
- | + | ||
- | Captures images from gstreamer video sources and sends them to a ros topic. | + | |
- | + | ||
- | * Test your webcam: | + | |
- | + | ||
- | gst-launch --gst-debug=v4l2: | + | |
- | + | ||
- | * You should see a windows with the webcam image. Close this program. | + | |
- | + | ||
- | * Start using gscam: | + | |
- | + | ||
- | export GSCAM_CONFIG=" | + | |
- | rosrun gscam gscam | + | |
- | + | ||
- | * To look at the image: | + | |
- | + | ||
- | rosmake image_view | + | |
- | rosrun image_view image_view image: | + | |
- | + | ||
- | ==== Improving image quality with some cameras ==== | + | |
- | + | ||
- | With a Logitech webcam C600 one can get better image quality (less noisy) setting the video mode to YUV. In gst-launch: | + | |
- | + | ||
- | gst-launch --gst-debug=v4l2: | + | |
- | + | ||
- | For gscam: | + | |
- | + | ||
- | export GSCAM_CONFIG=" | + | |
- | + | ||
- | the last conversion is necessary because gscam only takes rgb images. | + | |
- | Please carefully notice that for the gscam GSCAM_CONFIG export there are no back-slashes for the format " | + | |
- | + | ||
- | One can use gst-inspect to check the capabilities of the different gstreamer filters. | + | |
- | + | ||
- | ===== Camera calibration ===== | + | |
- | + | ||
- | * Compile and calibrate camera. (you need to be running gscam before) | + | |
- | + | ||
- | rosmake camera_calibration | + | |
- | rosrun camera_calibration cameracalibrator.py --size 5x4 --square 0.02464 image: | + | |
- | + | ||
- | * Last command uses the calibration board that comes with the pr2 robot. | + | |
- | * Move the board until the calibration button activates, try to move slow so that the calibrator don't chose any blurred image, also move the board to the corners of the image, this is where the distortion is more evident. | + | |
- | * Save the calibration. This will create a file in /tmp with the calibration parameters inside. | + | |
- | * Commit the calibration. This will create a file called camera_parameters.txt one directory up where gscam is running. | + | |
- | + |
ros.txt · Last modified: 2021/02/01 05:55 by 127.0.0.1