技术背景
深度摄像头能够像人类感知方式一样捕捉现实世界的相机—无论是在色彩还是距离上。许多应用场景离不开深度摄像头的支持,比如3d人脸身份验证,基于3d信息的2d照片美化,物体速度方向的检测,背景移除等等。本文将向您介绍基于intelrealsense™的ros开发包的功能及其使用方法,您可以利用物体深度信息开发出更多应用,并和其他ros节点无缝连接,为您的机器人装上敏锐的“眼睛”。
intel 3drealsense摄像头和传统2d摄像头相比,增加了深度信息,给各种设备提供了看到、理解、感知世界的新途径,使各种基于3d信息的新应用成为可能。在机器人研究领域,人们广泛采用ros框架,这一框架下的各个应用通常采用消息(message)和话题(topic)的方式进行通信。在这种特殊情况下,针对librealsense做进一步的ros封装才能使其无缝工作在ros系统中。该项目目前已经在github上开源,ros2的封装正在开发中,也即将与您见面。
项目介绍
1.软件架构设计
图1. ros/ros2 realsense
图2.rgbd点云生成图
2.运行条件
·运行ubuntu16.04的x86_64计算机
·ros kinetic
·realsense™ d400/sr300系列摄像头
·realsense™ sdk 2.0
具体环境配置可以参考这里。
3.编译与安装
下载源码到本地ros工作区,切换到最新发布,编译、安装。
$ mkdir -p~/catkin_ws/src
$ cdcatkin_ws/src/
$ catkin_init_workspace
$ cd ..
$ catkin_make clean
$ catkin_make -dcatkin_enable_testing=false -dcmake_build_type=release
$ catkin_make install
4.运行演示程序
插入realsense摄像头,运行启动命令:
#在控制台#1启动rviz
$source/opt/ros/kinetic/setup.bash
$ rosrun rviz rviz
#在控制台#2启动realsense2_camera
$source~/catkin_ws/devel/setup.bash
$ roslaunch realsense2_camera rs_camera.launch enable_pointcloud:=true
#或在控制台#2启动生成高质量的点云信息的命令
$ roslaunch realsense2_camera rs_rgbd.launch
图3. rgb(左上),深度(左下),红外1(右上),红外2(右下),点云(中)
图4.高质量点云图
应用领域
本项目提供的rgbd信息,可以运用于多种机器人使用场景,例如:
场景中的物体分割定位
分析realsense的点云信息,将场景中的不同物体进行分割,再进行物体3d定位。
物体速度分析
根据realsense提供的连续的深度信息,进行物体定位,再计算出物体速度的大小及方向,合理规划路径达到智能避障。
人脸身份验证
如果只是用二维信息进行身份验证,安全性和正确性将大打折扣。比如,有人会用照片来欺骗认证系统。带有三维信息的实时人脸识别将有效地解决这个问题。
2d图像美化
基于3d信息,对2d的图像美化将更加自然真实。甚至可以对拍摄对象进行旋转以达到期望的角度,配合装饰图片,给你全新的自拍体验。
展望
本项目目前开发到v2.0.2版本,基于realsensesdk的不断演进,本产品也在不断迭代开发当中。同时由于ros2相对ros具有更好的安全性和实时性,我们计划移植项目到ros2中。
转载:中国机器人网(原始来源:评论:0)
以上是网络信息转载,信息真实性自行斟酌。










