磨脚器厂家
免费服务热线

Free service

hotline

010-00000000
磨脚器厂家
热门搜索:
成功案例
当前位置:首页 > 成功案例

英特尔®RealSense™摄像头基于ROS的实现与封装

发布时间:2022-06-06 16:18:09 阅读: 来源:磨脚器厂家
英特尔®RealSense™摄像头基于ROS的实现与封装

技术背景

深度摄像头能够像人类感知方式一样捕捉现实世界的相机无论是在色彩还是距离上。许多应用场景离不开深度摄像头的支持,比如3D人脸身份验证,基于3D信息的2D照片美化,物体速度方向的检测,背景移除等等。本文将向您介绍基于IntelRealSense™的ROS开发包的功能及其使用方法,您可以利用物体深度信息开发出更多应用,并和其他ROS节点无缝连接,为您的机器人装上敏锐的眼睛。

Intel3DRealSense摄像头和传统2D摄像头相比,增加了深度信息,给各种设备提供了看到、理解、感知世界的新途径,使各种基于3D信息的新应用成为可能。在机器人研究领域,人们广泛采用ROS框架,这一框架下的各个应用通常采用消息(message)和话题(topic)的方式进行通信。在这种特殊情况下,针对libRealsense做进一步的ROS封装才能使其无缝工作在ROS系统中。该项目目前已经在github上开源,ROS2的封装正在开发中,也即将与您见面。

项目介绍

1.软件架构设计

图1.ROS/ROS2RealSense

图2.RGBD点云生成图

2.运行条件

运行Ubuntu16.04的x86_64计算机

ROSKinetic

RealSense™D400/SR300系列摄像头

RealSense™SDK2.0

具体环境配置可以参考这里。

3.编译与安装

下载源码到本地ROS工作区,切换到最新发布,编译、安装。

$mkdirp~/catkin_ws/src

$cdcatkin_ws/src/

$catkin_init_workspace

$cd..

$catkin_makeclean

$catkin_makeDCATKIN_ENABLE_TESTING=FalseDCMAKE_BUILD_TYPE=Release

$catkin_makeinstall

4.运行演示程序

插入RealSense摄像头,运行启动命令:

#在控制台#1启动rviz

$source/opt/ros/kinetic/setup.bash

$rosrunrvizrviz

#在控制台#2启动realsense2_camera

$source~/catkin_ws/devel/setup.bash

$roslaunchrealsense2_camerars_camera.launchenable_pointcloud:=true

#或在控制台#2启动生成高质量的点云信息的命令

$roslaunchrealsense2_camerars_rgbd.launch

图3.RGB(左上),深度(左下),红外1(右上),红外2(右下),点云(中)

图4.高质量点云图

应用领域

本项目提供的RGBD信息,可以运用于多种机器人使用场景,例如:

场景中的物体分割定位

分析RealSense的点云信息,将场景中的不同物体进行分割,再进行物体3D定位。

物体速度分析

根据RealSense提供的连续的深度信息,进行物体定位,再计算出物体速度的大小及方向,合理规划路径达到智能避障。

人脸身份验证

如果只是用二维信息进行身份验证,安全性和正确性将大打折扣。比如,有人会用照片来欺骗认证系统。带有三维信息的实时人脸识别将有效地解决这个问题。

2D图像美化

基于3D信息,对2D的图像美化将更加自然真实。甚至可以对拍摄对象进行旋转以达到期望的角度,配合装饰图片,给你全新的自拍体验。

展望

本项目目前开发到v2.0.2版本,基于RealSenseSDK的不断演进,本产品也在不断迭代开发当中。同时由于ROS2相对ROS具有更好的安全性和实时性,我们计划移植项目到ROS2中。

人才招聘H5模板
培训招生H5模板