# ROS Wrapper for Intel® RealSense™ Devices
These are packages for using Intel RealSense cameras (D400 series SR300 camera and T265 Tracking Module) with ROS.
## Installation Instructions
The following instructions support ROS Indigo, on **Ubuntu 14.04**, and ROS Kinetic, on **Ubuntu 16.04**.
#### The simplest way to install on a clean machine is to follow the instructions on the [.travis.yml](https://github.com/intel-ros/realsense/blob/development/.travis.yml) file. It basically summerize the elaborate instructions in the following 3 steps:
### Step 1: Install the latest Intel® RealSense™ SDK 2.0
- #### Install from [Debian Package](https://github.com/IntelRealSense/librealsense/blob/master/doc/distribution_linux.md#installing-the-packages) - In that case treat yourself as a developer. Make sure you follow the instructions to also install librealsense2-dev and librealsense-dkms packages.
#### OR
- #### Build from sources by downloading the latest [Intel® RealSense™ SDK 2.0](https://github.com/IntelRealSense/librealsense/releases/tag/v2.24.0) and follow the instructions under [Linux Installation](https://github.com/IntelRealSense/librealsense/blob/master/doc/installation.md)
### Step 2: Install the ROS distribution
- #### Install [ROS Kinetic](http://wiki.ros.org/kinetic/Installation/Ubuntu), on Ubuntu 16.04
### Step 3: Install Intel® RealSense™ ROS from Sources
- Create a [catkin](http://wiki.ros.org/catkin#Installing_catkin) workspace
```bash
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src/
```
- Clone the latest Intel® RealSense™ ROS from [here](https://github.com/intel-ros/realsense/releases) into 'catkin_ws/src/'
```bashrc
git clone https://github.com/IntelRealSense/realsense-ros.git
cd realsense-ros/
git checkout `git tag | sort -V | grep -P "^\d+\.\d+\.\d+" | tail -1`
cd ..
```
- Make sure all dependent packages are installed. You can check .travis.yml file for reference.
- Specifically, make sure that the ros package *ddynamic_reconfigure* is installed. If *ddynamic_reconfigure* cannot be installed using APT, you may clone it into your workspace 'catkin_ws/src/' from [here](https://github.com/pal-robotics/ddynamic_reconfigure/tree/kinetic-devel) (Version 0.2.0)
```bash
catkin_init_workspace
cd ..
catkin_make clean
catkin_make -DCATKIN_ENABLE_TESTING=False -DCMAKE_BUILD_TYPE=Release
catkin_make install
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc
```
## Usage Instructions
### Start the camera node
To start the camera node in ROS:
```bash
roslaunch realsense2_camera rs_camera.launch
```
This will stream all camera sensors and publish on the appropriate ROS topics.
Other stream resolutions and frame rates can optionally be provided as parameters to the 'rs_camera.launch' file.
### Published Topics
The published topics differ according to the device and parameters.
After running the above command with D435i attached, the following list of topics will be available (This is a partial list. For full one type `rostopic list`):
- /camera/color/camera_info
- /camera/color/image_raw
- /camera/depth/camera_info
- /camera/depth/image_rect_raw
- /camera/extrinsics/depth_to_color
- /camera/extrinsics/depth_to_infra1
- /camera/extrinsics/depth_to_infra2
- /camera/infra1/camera_info
- /camera/infra1/image_rect_raw
- /camera/infra2/camera_info
- /camera/infra2/image_rect_raw
- /camera/gyro/imu_info
- /camera/gyro/sample
- /camera/accel/imu_info
- /camera/accel/sample
The "/camera" prefix is the default and can be changed. Check the rs_multiple_devices.launch file for an example.
If using D435 or D415, the gyro and accel topics wont be available. Likewise, other topics will be available when using T265 (see below).
### Launch parameters
The following parameters are available by the wrapper:
- **serial_no**: will attach to the device with the given serial number. Default, attach to available RealSense device in random.
- **rosbag_filename**: Will publish topics from rosbag file.
- **initial_reset**: On occasions the device was not closed properly and due to firmware issues needs to reset. If set to true, the device will reset prior to usage.
- **align_depth**: If set to true, will publish additional topics with the all the images aligned to the depth image.</br>
The topics are of the form: ```/camera/aligned_depth_to_color/image_raw``` etc.
- **filters**: any of the following options, separated by commas:</br>
- ```colorizer```: will color the depth image. On the depth topic an RGB image will be published, instead of the 16bit depth values .
- ```pointcloud```: will add a pointcloud topic `/camera/depth/color/points`. The texture of the pointcloud can be modified in rqt_reconfigure (see below) or using the parameters: `pointcloud_texture_stream` and `pointcloud_texture_index`. Run rqt_reconfigure to see available values for these parameters.</br>
The depth FOV and the texture FOV are not similar. By default, pointcloud is limited to the section of depth containing the texture. You can have a full depth to pointcloud, coloring the regions beyond the texture with zeros, by setting `allow_no_texture_points` to true.
- The following filters have detailed descriptions in : https://github.com/IntelRealSense/librealsense/blob/master/doc/post-processing-filters.md
- ```disparity``` - convert depth to disparity before applying other filters and back.
- ```spatial``` - filter the depth image spatially.
- ```temporal``` - filter the depth image temporally.
- ```hole_filling``` - apply hole-filling filter.
- ```decimation``` - reduces depth scene complexity.
- **enable_sync**: gathers closest frames of different sensors, infra red, color and depth, to be sent with the same timetag. This happens automatically when such filters as pointcloud are enabled.
- ***<stream_type>*_width**, ***<stream_type>*_height**, ***<stream_type>*_fps**: <stream_type> can be any of *infra, color, fisheye, depth, gyro, accel, pose*. Sets the required format of the device. If the specified combination of parameters is not available by the device, the stream will not be published. Setting a value to 0, will choose the first format in the inner list. (i.e. consistent between runs but not defined). Note: for gyro accel and pose, only _fps option is meaningful.
- **enable_*<stream_name>***: Choose whether to enable a specified stream or not. Default is true. <stream_name> can be any of *infra1, infra2, color, depth, fisheye, fisheye1, fisheye2, gyro, accel, pose*.
- **tf_prefix**: By default all frame's ids have the same prefix - `camera_`. This allows changing it per camera.
- **base_frame_id**: defines the frame_id all static transformations refers to.
- **odom_frame_id**: defines the origin coordinate system in ROS convention (X-Forward, Y-Left, Z-Up). pose topic defines the pose relative to that system.
- **All the rest of the frame_ids can be found in the template launch file: [nodelet.launch.xml](realsense2_camera/launch/includes/nodelet.launch.xml)**
- **unite_imu_method**: The D435i and T265 cameras have built in IMU components which produce 2 unrelated streams: *gyro* - which shows angular velocity and *accel* which shows linear acceleration. Each with it's own frequency. By default, 2 corresponding topics are available, each with only the relevant fields of the message sensor_msgs::Imu are filled out.
Setting *unite_imu_method* creates a new topic, *imu*, that replaces the default *gyro* and *accel* topics. Under the new topic, all the fields in the Imu message are filled out.
- **linear_interpolation**: Each message contains the last original value of item A interpolated with the previous value of item A, combined with the last original value of item B on last item B's timestamp. Items A and B are accel and gyro interchangeably, according to which type recently arrived from the sensor. The idea is to give the most recent information, united and without repetitions.
- **copy**: Fo
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
中国机器人大赛通用比赛(gpsr).zip (2000个子文件)
test.abnf 368B
home_final.abnf 234B
MoveToPose.action 255B
HomeRecognize.action 132B
TTS.action 121B
robot_bnf.bnf 4KB
home.bnf 2KB
robot_home.bnf 2KB
gpsr_question_bak.bnf 2KB
gpsr_one.bnf 2KB
home_test.bnf 1KB
call.bnf 892B
GPSR_ONE.bnf 877B
GPSR.bnf 783B
gpsr_three.bnf 682B
home_generated_confirmed.bnf 631B
home_generated.bnf 546B
home_final.bnf 449B
home_final_bak.bnf 398B
supermarket.bnf 278B
guest.bnf 245B
region.c 501KB
lsd.c 44KB
data.c 44KB
parser.c 43KB
go.c 43KB
image.c 41KB
classifier.c 34KB
network.c 30KB
detector.c 28KB
lstm_layer.c 24KB
region.c 23KB
lock.c 21KB
region_layer.c 19KB
convolutional_layer.c 18KB
darknet.c 18KB
pf.c 16KB
attention.c 15KB
rnn.c 15KB
linuxrec.c 15KB
utils.c 14KB
gru_layer.c 13KB
nightmare.c 13KB
coco.c 13KB
yolo_layer.c 12KB
pf_kdtree.c 12KB
speech_recognizer.c 11KB
yolo.c 11KB
connected_layer.c 11KB
captcha.c 11KB
compare.c 11KB
demo.c 10KB
batchnorm_layer.c 10KB
detection_layer.c 10KB
rnn_layer.c 10KB
deconvolutional_layer.c 10KB
blas.c 9KB
crnn_layer.c 9KB
local_layer.c 9KB
box.c 8KB
gemm.c 8KB
cifar.c 8KB
segmenter.c 8KB
regressor.c 7KB
rnn_vid.c 7KB
pf_vector.c 6KB
eig3.c 5KB
normalization_layer.c 5KB
pf_pdf.c 5KB
cost_layer.c 5KB
reorg_layer.c 5KB
map_store.c 5KB
voxel.c 5KB
layer.c 4KB
writing.c 4KB
tag.c 4KB
matrix.c 4KB
pf_draw.c 4KB
cuda.c 4KB
map_draw.c 4KB
maxpool_layer.c 4KB
route_layer.c 4KB
tree.c 4KB
super.c 4KB
dice.c 4KB
activations.c 3KB
softmax_layer.c 3KB
upsample_layer.c 3KB
option_list.c 3KB
map_range.c 3KB
shortcut_layer.c 3KB
crop_layer.c 3KB
swag.c 2KB
logistic_layer.c 2KB
map.c 2KB
avgpool_layer.c 2KB
l2norm_layer.c 2KB
activation_layer.c 2KB
dropout_layer.c 2KB
art.c 1KB
共 2000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
资源评论
天天501
- 粉丝: 617
- 资源: 5906
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功