草庐IT

Realsense-ros

全部标签

Realsense d435i深度相机+Aruco+OpenCV手眼标定全过程记录

文章目录前言一、前期准备1.1手眼标定原理1.2Aruco返回位姿的原理1.3生成一个ArucoMarker1.4安装aruco_ros包1.5安装realsense_ros包二、实验环境三、实验过程3.1配置Arucolaunch文件3.2获取Aruco相对于相机的位姿3.3获取机械臂末端的位姿:3.4Opencv求解手眼矩阵3.5实验结果四、相关思考总结4.1多种姿态的表示方法4.2机器人的末端坐标系4.3如何提升精度五、参考文献前言最近在做手眼标定,发现像realsense这样的深度相机(自带相机内参),可以用aruco码直接返回目标的在相机坐标系下的位姿,省去了用棋盘格求解位姿的步骤。

Realsense d435i深度相机+Aruco+OpenCV手眼标定全过程记录

文章目录前言一、前期准备1.1手眼标定原理1.2Aruco返回位姿的原理1.3生成一个ArucoMarker1.4安装aruco_ros包1.5安装realsense_ros包二、实验环境三、实验过程3.1配置Arucolaunch文件3.2获取Aruco相对于相机的位姿3.3获取机械臂末端的位姿:3.4Opencv求解手眼矩阵3.5实验结果四、相关思考总结4.1多种姿态的表示方法4.2机器人的末端坐标系4.3如何提升精度五、参考文献前言最近在做手眼标定,发现像realsense这样的深度相机(自带相机内参),可以用aruco码直接返回目标的在相机坐标系下的位姿,省去了用棋盘格求解位姿的步骤。

虚拟机安装+Ubuntu安装+ROS安装

目录一.虚拟机和双系统选择二.虚拟机的安装1.安装VMware2.创建虚拟机 三.安装Ubuntu  1.打开虚拟机2.正式安装 3.安装工具 4.安装功能包(用于实现和Windows之间复制粘贴)四.ROS的安装1.设置下载源到这里就完成了虚拟机、Ubuntu、ros的安装,每一步都亲自试验过,都没有问题,包含其中所有细节以及步骤,照着一步一步做肯定没有问题的。 一.虚拟机和双系统选择 Ubuntu对于电脑的Windows系统是一个新的操作系统,因此安装时有两种方法,一个是利用虚拟机,另一种是在电脑上安装双系统,那么两个方法应该如何选择呢,两者又有什么区别呢?经过查阅网上资料我了解到了两者的

虚拟机安装+Ubuntu安装+ROS安装

目录一.虚拟机和双系统选择二.虚拟机的安装1.安装VMware2.创建虚拟机 三.安装Ubuntu  1.打开虚拟机2.正式安装 3.安装工具 4.安装功能包(用于实现和Windows之间复制粘贴)四.ROS的安装1.设置下载源到这里就完成了虚拟机、Ubuntu、ros的安装,每一步都亲自试验过,都没有问题,包含其中所有细节以及步骤,照着一步一步做肯定没有问题的。 一.虚拟机和双系统选择 Ubuntu对于电脑的Windows系统是一个新的操作系统,因此安装时有两种方法,一个是利用虚拟机,另一种是在电脑上安装双系统,那么两个方法应该如何选择呢,两者又有什么区别呢?经过查阅网上资料我了解到了两者的

ROS的depthimage_to_laserscan剖析

当我们想把RGBD相机的深度图转成单线激光雷达来使时,经常考虑到使用depthimage_to_laserscan的ros包。RGBD极坐标系下的极限角其中有关于通过深度图和相机内参转成基于极坐标系下的单线激光雷达最大和最小角度这两个参数,用到的代码如下:doubleDepthImageToLaserScan::magnitude_of_ray(constcv::Point3d&ray)const{returnsqrt(pow(ray.x,2.0)+pow(ray.y,2.0)+pow(ray.z,2.0));}doubleDepthImageToLaserScan::angle_betwee

ROS的depthimage_to_laserscan剖析

当我们想把RGBD相机的深度图转成单线激光雷达来使时,经常考虑到使用depthimage_to_laserscan的ros包。RGBD极坐标系下的极限角其中有关于通过深度图和相机内参转成基于极坐标系下的单线激光雷达最大和最小角度这两个参数,用到的代码如下:doubleDepthImageToLaserScan::magnitude_of_ray(constcv::Point3d&ray)const{returnsqrt(pow(ray.x,2.0)+pow(ray.y,2.0)+pow(ray.z,2.0));}doubleDepthImageToLaserScan::angle_betwee

基于ROS机器人的3D物体识别与三维重建(三)基于ROS的3D物体识别

Kinect2相机标定与点云数据获取1、介绍2基于Gazebo搭建物体识别仿真环境2.1Gazebo简介2.2创建仿真环境3三维物体识别3.1基于模板匹配的物体识别流程3.2基于二维模板的物体识别3.3基于三维模型的物体识别4桌面物体检测4.1桌面物体检测流程4.2算法实现相关的代码资料:https://github.com/Rayso777(后续会陆续整理上传)视频:1、ElasticFusionTUM数据集&buntu16.04+kinect2演示流程.2、RTAB-MAP实时三维重建-Kinect23、RTAB-MAP三维重建-基于gazebo仿真4、ORB-SLAM2室内稀疏三维重建-

基于ROS机器人的3D物体识别与三维重建(三)基于ROS的3D物体识别

Kinect2相机标定与点云数据获取1、介绍2基于Gazebo搭建物体识别仿真环境2.1Gazebo简介2.2创建仿真环境3三维物体识别3.1基于模板匹配的物体识别流程3.2基于二维模板的物体识别3.3基于三维模型的物体识别4桌面物体检测4.1桌面物体检测流程4.2算法实现相关的代码资料:https://github.com/Rayso777(后续会陆续整理上传)视频:1、ElasticFusionTUM数据集&buntu16.04+kinect2演示流程.2、RTAB-MAP实时三维重建-Kinect23、RTAB-MAP三维重建-基于gazebo仿真4、ORB-SLAM2室内稀疏三维重建-

ROS机器人外网远程控制(一种基于Frp内网穿透,使用websocket/http通信方式)

ROS机器人只能在内网访问?遇到这样一个需求,希望在公司访问控制到客户的机器人,需要获得摄像头图像以及远程控制机器人。想到采用的方案有以下几种:采用frp进行内网穿透采用蒲公英进行组网添加一张4G网卡使其具有公网IP那么对比这三种方案很明显我们不想花钱做这个事情。我们采用Frp搭建内网穿透尝试该方案是否可行。先决条件:需要一台公网服务器(没钱的可以去白嫖移动云一个月)ROS机器人frp软件(注意客户端和服务端版本需要保持一致)验证测试:因为机器人不方便测试,我采用在虚拟机里面安装一个ROS,然后跑起来小乌龟,当用公网服务器能控制小乌龟进行移动则证明实验成功。首先在公网服务器和虚拟机(机器人)中

ROS机器人外网远程控制(一种基于Frp内网穿透,使用websocket/http通信方式)

ROS机器人只能在内网访问?遇到这样一个需求,希望在公司访问控制到客户的机器人,需要获得摄像头图像以及远程控制机器人。想到采用的方案有以下几种:采用frp进行内网穿透采用蒲公英进行组网添加一张4G网卡使其具有公网IP那么对比这三种方案很明显我们不想花钱做这个事情。我们采用Frp搭建内网穿透尝试该方案是否可行。先决条件:需要一台公网服务器(没钱的可以去白嫖移动云一个月)ROS机器人frp软件(注意客户端和服务端版本需要保持一致)验证测试:因为机器人不方便测试,我采用在虚拟机里面安装一个ROS,然后跑起来小乌龟,当用公网服务器能控制小乌龟进行移动则证明实验成功。首先在公网服务器和虚拟机(机器人)中