无人机-SLAM-D435i
文章平均质量分 61
诗筱涵
邮箱:1372740910@qq.com 微信公众号:诗筱涵 技术交流群:960668018
展开
-
D435i的/camera/imu没有发出来,可能是因为librealsense realsense-ros D435i的固件版本不匹配的原因
D435i的/camera/imu没有发出来,可能是因为librealsense realsense-ros D435i的固件版本不匹配的原因。确实用2.50.0的realsense-viewer就读不出,用其他版本的realsense-viewer就读得出imu数据。要想完全卸载之前二进制安装过的librealsense(有两种方式,一种二进制直接安装librealsense,一种二进制安装realsense2_camera间接安装了librealsense)在合众NX上遇见过这样的情况,所以记录下来。原创 2024-07-17 17:17:38 · 510 阅读 · 0 评论 -
关于ros里的时钟同步
飞基于飞控imu的vins的时候,实际是通过ros做的时间同步,所以不用专门弄时间同步了, ros时间同步,图像和Imu时间还有微小偏移靠kalibr标定解决,所以vins的配置文件里里面就有参数设定图像和imu两者间的延时,应该就是针对ros时间同步后还存在的延时或者说偏移。原创 2024-07-11 18:50:04 · 183 阅读 · 0 评论 -
在Orin NX ubuntu20.04上源码编译安装librealsense和realsense-ros
对realsense2_camera功能包的cmakelists的更改是三个地方,下面红框标出的三个地方,改完保存,在catkin_make,再 通过rs_camera.launch起D430就不会有报错挂掉了,可以发出深度图话题。再源码编译安装realsense-ros,注意版本和librealsense对应,这里2.50.0的librealsense对应2.3.2的realsense-ros。这么编译完没有报错,但是通过rs_camera.launch起D430会有报错挂掉,需要按照这篇博文。原创 2024-05-13 13:27:40 · 632 阅读 · 0 评论 -
ROS2下使D435i发出640 480分辨率灰度图和200hz imu话题的launch文件设置
在/opt/ros/foxy/share/realsense2_camera/launch目录下,找到rs_launch.py,修改rs_launch.py使得其启动D435i可以发出30hz的分辨率640*480双目灰度图话题和200hz的/camera/imu话题,给vins节点订阅使用。修改后的可以发出30hz的分辨率640*480双目灰度图话题和200hz的/camera/imu话题和rs_launch.py如下。修改rs_launch.py前需要先赋予权限。原创 2024-04-30 18:35:11 · 331 阅读 · 0 评论 -
一个cpp读取T265图像和位姿数据 不基于ros
【代码】一个cpp读取T265图像和位姿数据 不基于ros。转载 2024-03-28 16:32:34 · 69 阅读 · 0 评论 -
自己弄基于opencv的sgbm输出双目深度图的一些坑点注意点整理
还有目前经过一番研究,认为D435i的深度图显示,是做了手脚的,就是不是按照原本的深度值去显示的,也不是按照对应等比例的8位灰度图去显示的,所以才看着层次感明显,应该是按照实际的最大深度值再相应缩放显示,这样使得不管看哪里,深度图的黑白层次都比较明显(看D435i的bag包,里面深度图的颜色变化发现的,同样的距离,会因为视野里看到的最大距离不同,而显示的灰度深浅不同)。5 自己弄两张图的深度图估计,得到的深度图左边有一竖块是没有深度值的,这个是正常的,因为单纯靠两张图片,必然左侧有一部分是没有视差的。原创 2024-03-28 09:02:49 · 1386 阅读 · 0 评论 -
D435i关闭红外光点的方法
之前是通过修改launch文件关掉的,但是默认的rs_camera.launch里面没有那个参数,比较不方便。今天我参考这篇给的方法把D435i的红外光点关掉了。原创 2024-03-27 12:02:35 · 313 阅读 · 0 评论 -
为什么MVS和立体匹配里面的视差喜欢谈亚像素精度
视差是离散的整数,换算出的深度也是离散的,同样是间隔一个视差,离这个相机越远,这个深度间隔就越来越大了。深度越大的时候,同样一个像素对应的深度范围越来越大。如果我的算法精度是一个像素,我稍微偏了一个像素,离相机越远,深度就会偏得越远,同样一个算法,离相机越远,空间精度就会越差。看了下面这个图,就能比较好理解为什么亚像素视差这么重要了,没有亚像素视差 深度图真的理应是台阶状的!视差细化也是立体匹配的基本步骤之一 ,确实如下面所说,得到的视差一般是整数,就是像素坐标差嘛,这么看亚像素可能是有必要的。原创 2024-03-27 08:25:03 · 454 阅读 · 0 评论 -
pip install pyrealsense2显示 Could not find a version that satisfies the requirement pyrealsense2 原因解析
点进去可以看到2.50.0版本的pyrealsense2的whl文件的下载,不过全部看完会发现,并没有aarch64对应版本的,现在也就理解为什么不管怎么折腾,pip install pyrealsense2都显示 Could not find a version that satisfies the requirement pyrealsense2 (from versions: none)的原因了,确实2.50.0版本的pyrealsense2没有aarch64平台的!和源啊网络啊没有什么关系。原创 2024-03-21 23:30:23 · 1067 阅读 · 0 评论 -
rqt_image_view显示与保存深度图的坑点
深度图一般都是16位的,到那时深度图的存储显示就是一般是8位,rqt_image_view的深度图显示是做了手脚的,所以才看着层次感明显,它既不是按照原始的深度值显示,也不是按照比例缩放后显示,应该是按照实际的最大深度值在相应缩放显示,这样使得不管看哪里,深度图的黑白层次都比较明星。原创 2024-03-11 20:09:27 · 532 阅读 · 0 评论 -
自己实现一下基于T265+D435i的octomap建图20220515
,同时复制octomap_mapping.launch并重名为octomap_mapping_maxi1.launch,octomap_mapping_maxi1.launch内需要修改的地方下面红线有标出,非常关键的一点是,如果要建增量式地图,那么需要frame_id是构建的全局地图的坐标系,这是非常关键的一点。因为现在启动rs_d400_t265.launch了,里面有tf发布了,所以octomap_mapping_maxi1.launch里的tf删掉,不然会冲突导致节点挂掉。原创 2024-03-11 11:53:26 · 1341 阅读 · 5 评论 -
普通深度图像素值是以毫米为单位的一些证据(除开TUM数据集的深度图)
除开TUM数据集的深度图,是0.2毫米为单位,这么做也有道理,因为深度图最大值一般也到不了65米,以毫米为单位也浪费了点,以0.2毫米为单位最大表示距离十几米,正好。depthMap ----深度图,16位无符号单通道,CV_16UC1。//基线距离65mm。别人写的把视差图转为深度图的函数,里面深度图就是用16UC1定义的。dispMap ----视差图,8位单通道,CV_8UC1。kinect的深度图的深度值也是以毫米mm为单位的。K ----内参矩阵,float类型。原创 2024-03-10 21:45:07 · 865 阅读 · 0 评论 -
16位深度图显示和存储时要转为8位的灰度图的原因
16位深度图显示和存储时要转为8位的灰度图,因为256种灰度已经很多了,很难说弄出65536层次的灰度出来进行显示对不对,感觉也没有那么大的必要。原创 2024-03-10 17:13:34 · 378 阅读 · 0 评论 -
用rs-enumerate-devices -c命令可以查看D435i所有可以支持的分辨率,帧率,所有的相机内参外参
用rs-enumerate-devices -c命令可以查看D435i所有可以支持的分辨率,帧率,所有的相机内参外参。所以改launch文件里面的分辨率和帧率是不能乱改的,得改为D435i支持的分辨率帧率。rs-enumerate-devices在realsense的github上有介绍。原创 2024-03-09 15:40:48 · 520 阅读 · 0 评论 -
视差转深度公式中变量单位的确定
而且深度图是16UC1(我看到的视差图转深度图函数用的深度图对应的变量类型就是16UC1,以及D435i的深度图也是16UC1),也就是最大表示2的16次方65536的距离,对应单位正好是毫米,也就是65米左右的距离,对深度图而言这个范围正好够了,650米和6.5米都不合适,所以深度图的像素值代表的深度单位就是毫米。实际写视差图转深度图的代码时,必然要严格确认每个变量的单位。对深度公式进行了推导,推导不难,利用相似三角形原理。视差图转深度图参考代码,摘自下面博客。深度公式2是深度公式1的特殊形式。原创 2024-03-03 17:03:37 · 565 阅读 · 0 评论 -
D435i部分话题内容整理(开发参考)
跑vins-fusion需要: D435i双目灰度图像话题1 /camera/infra1/image_rect_raw D435i双目灰度图像话题2 /camera/infra2/image_rect_raw D435i IMU话题 /camera/imu。跑ego-planner需要: D435i深度图像话题 /camera/depth/image_rect_raw。实际D435i的 /camera/imu话题打印截图。备注:实际使用时,可能需要更改以上话题发布频率。原创 2024-03-01 21:46:09 · 1105 阅读 · 0 评论 -
自己基于D435i跑rtabmap 20230721
然后我二进制装了下 sudo apt-get install ros-noetic-rtabmap ros-noetic-rtabmap-ros。这样不依赖于T265,是真正的rtabmap 看来RTABmap满足增量建图需求,有没有GPU加速的RTABMAP。确实可以用rtabmap-databaseViewer ~/.ros/rtabmap.db这个命令查看。rtabmap地图似乎自动保存到~/.ros/rtabmap.db里面就可以了。它这rtabmap需要配合T265一起!原创 2024-02-20 11:31:14 · 627 阅读 · 0 评论 -
realsense的ros2功能包
depth_module.profile改为1280,720,30之后,启动rs_launch.py,发出的灰度图的分辨率也是变为了1280*720了。现在好像没有专门改灰度图分辨率的地方了,试了下,就是在改深度图分辨率的地方改灰度图分辨率也就是depth_module.profile这参数。查看D435i有哪些帧率和分辨率,用的命令:rs-enumerate-device。realsense-viewer也可以查看有哪些可选分辨率或者设置。ros2打开rqt_image_view这么打开。原创 2024-02-18 08:00:30 · 583 阅读 · 0 评论 -
【VINS-Fusion入门之一】让系统跑起来
转载自:【VINS-Fusion入门之一】让系统跑起来 - 程序员大本营【VINS-Fusion入门之一】让系统跑起来技术标签:SLAMVINS港科大无人机开源文章目录简介 配置 执行 单目 + IMU 双目 + IMU 双目相机 双目 + GPS 落地 备注:简介VINS,英文缩写Visual-Inertial Systems.是一个实时视觉SLAM框架,2017年由香港科技大学开源的一个VIO算法。官方提供的下载链接:http...转载 2021-12-03 01:22:36 · 2363 阅读 · 0 评论 -
Ubuntu18.04安装Kalibr各种问题总结
转载自:Ubuntu18.04安装Kalibr各种问题总结_qq_38204986的博客-CSDN博客近期需要作相机与IMU的联合标定,安装Kallibr过程遇到好多问题,前前后后折腾了3天,终于可以标定了。这里记录一下问题,希望可以帮助更多人。1.catkin_make过程中下载SuiteSparse时间过长甚至失败参考https://www.jianshu.com/p/b48e74f4b21f或https://blog.csdn.net/u010003609/article/deta..转载 2021-11-21 09:15:16 · 773 阅读 · 3 评论 -
将ros的图像 转换成 opencv的图像并求距离
转载自:将ros的深度图像 转换成 opencv的图像 并求距离_月照银海似蛟龙的博客-CSDN博客将ros的图像 转换成 opencv的图像并求距离 参考的博客 概念 将ROS图像消息转换为OpenCV图像 示例 计算距离 参考的博客ROS学习笔记47(ROS图像和OpenCV图像之间的转换(C ++))如何使用ROS的service读取Kinect图像使用kinect2进行目标跟踪-ROS平台深度图从ros数据类型转换成了opencv数据类型转载 2021-11-01 14:32:37 · 521 阅读 · 0 评论 -
关于树莓派4B装realsense
树莓派4B 使用 Intel Realsense D435i 深度相机指南_发哥爱开源的博客-CSDN博客树莓派4b连接RealSense T265_千人斩的博客-CSDN博客原创 2021-10-20 13:44:18 · 517 阅读 · 0 评论 -
注意更换烧录D435i固件版本的时候也需要看一下realsense-viewer的版本
注意更换D435i固件版本的时候也需要看一下realsense-viewer的版本,可能有的realsense-viewer的版本比较高,它就觉得这个固件版本不能,不能烧录。我用2.36.0版本的realsense-viewer烧5.12.6的固件给D435i烧成了,但是用2.48.0的realsense-viewer烧5.12.6的固件给D435i显示不能烧这个。而且同一个D435i插到不同版本的realsense-viewer上面显示的最低固件版本也不同,是否有误这限制了比这个最低版本低原创 2021-10-17 14:28:36 · 608 阅读 · 0 评论 -
跑ego-planner的时候,不同D435i固件版本会造成rs_d400_and_t265.launch启动后不同的现象,有报错,或者节点挂掉。
跑ego-planner的时候,不同D435i固件版本会造成不同的现象。固件版本升级到节点挂掉,没有深度图固件版本为5.12.6 没有报错固件版本5.11.01 有报错,但有深度图。原创 2021-10-17 13:30:34 · 775 阅读 · 8 评论 -
librealsense和realsense-ros的版本确实有对应关系,对应关系体现在realsense2_camera功能包的camkelists里面有写要找哪个版本的librealsense。
librealsense和realsense-ros的版本确实有对应关系,对应关系体现在realsense2_camera功能包的camkelists里面有写要找哪个版本的librealsense。可以从这确定两者版本的对应关系。你就算已经安装了librealsense,但是版本和realsense-ros不对,那么编译realsense-ros(指下载源码编译安装realsense-ros的时候)的之后依旧会编译报错说找不到对应版本的librealsense。我们可以通过打开realsense-vie原创 2021-10-15 15:36:43 · 3477 阅读 · 2 评论 -
源码编译安装realsense-ros可能会出现说缺少ddynamic_reconfigure功能包
我看很多人都出现这种情况了,一般二进制安装这个功能包应该就够了。catkin_make安装realsense D435I的ROS包报错:not find... ddynamic_reconfigureConfig.cmake_复古蓝的博客-CSDN博客realsense D435安装时出现Invoking "cmake" failed,not found ddynamic_reconfigure etc. - 新裤子 - 博客园melodic的下源码编译安装可以参考这...原创 2021-10-15 14:39:17 · 3649 阅读 · 0 评论 -
用不合格的tpye-c线(包括手机数据线)连接D435i和板载或者笔记本会造成识别不到D435i或者只能识别到USB2.0的口。
用不合格的tpye-c线连接D435i和板载或者笔记本会造成识别不到D435i或者只能识别到USB2.0的口。插Ubuntu上后用rs-sensor-control查看只能看到USB2.0启动launch文件后有报错。插windows上打开realsense-viewer会没法识别,或者realsense-viewer卡死。换成小米手机的充电线也是不行的然后我用我自己买的D435i和官方的线,插板载Ubuntu上就OK。我这两天的测试情况是...原创 2021-10-15 10:38:01 · 1259 阅读 · 3 评论 -
使用D435i的一些奇怪的现象
使用D435i的一些奇怪的现象装好librealsense之后打开realsense-viewer检测不到D435i或者T265,但是装好sudo apt-get install ros-melodic-realsense2-camera 再roslaunch都正常,图像话题都有。这种情况一次是我之前在树莓派上,一次是今天在NUC上。roslaunch realsense2_camera rs_camera.launch后,终端会有这些error,但似乎不影响D435i的使用,之前也就.原创 2021-10-11 16:38:55 · 971 阅读 · 0 评论 -
realsense D435i gazebo slam(px4)仿真(转载)
转载自:https://blog.csdn.net/weixin_41469272/article/details/117919845?utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.essearch_pc_relevant&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTR转载 2021-09-02 23:40:07 · 1894 阅读 · 2 评论 -
尝试解决一下Ubuntu自己折腾后识别不到D435i和T265
Timestamp: 1629722596114.067383Severity: WarnDescription: Multiple realsense udev-rules were found! :1:/etc/udev/rules.d/99-realsense-libusb.rules2: /lib/udev/rules.d/60-librealsense2-udev-rules.rulesMake sure to remove redundancies!https://blog.c原创 2021-08-23 20:49:53 · 6275 阅读 · 4 评论 -
解放双手|教你进行相机与IMU外参的在线标定
转载自:https://mp.weixin.qq.com/s/6ivMgxsI45eadAZGhieUxA解放双手|教你进行相机与IMU外参的在线标定原创 沈玥伶 计算机视觉life 2019-06-22点击上方“计算机视觉life”,选择“星标”快速获得最新干货一、相机与IMU的融合在SLAM的众多传感器解决方案中,相机与IMU的融合被认为具有很大的潜力实现低成本且高精度的定位与建图。这是因为这两个传感器之间具有互补性:相机在快速运动、光照改变等情况下容易失效。而IMU能够高频转载 2021-08-23 16:22:51 · 2543 阅读 · 1 评论 -
在Intel nuc上配置D435i、运行VINS-Mono及问题记录(转载)
转载自:https://blog.csdn.net/AnChenliang_1002/article/details/108737351在Intel nuc上配置D435i、运行VINS-Mono及问题记录标签:Intel nucVINS-MonoIntel D435iubuntulinux参考网址:https://blog.csdn.net/weixin_44580210/article/details/89789416问题1:安装测试librealsense SDK 2....转载 2021-08-21 03:04:48 · 2549 阅读 · 5 评论 -
技术分享 | 带你解读Kalibr和VINS标定参数(转载自阿木)
转载自:https://mp.weixin.qq.com/s/Hqi6iUS-VGIQTmAB0Xa_nQ技术分享 | 带你解读Kalibr和VINS标定参数原创 阿木实验室 阿木实验室 昨天我们通过上次的IMU和双目相机联合标定已经得到了一些文件,我们仅需要使用里面的一些文件,下面就带大家看下。标定完大概会得到下面这几个文件,其中下面画红色圈的是最为重要的。1.相机标定参数解读我们打开第一个文件后,可以看到这个就是IMU和左目之间的变换矩阵,是最为重转载 2021-08-14 01:42:24 · 606 阅读 · 0 评论 -
T265/D435i相机和相机与IMU参数获取,也可以通过realsense-viewer直接获取
T265相机和相机与IMU参数获取参考这篇博文https://blog.csdn.net/crp997576280/article/details/109544456原创 2021-08-12 23:34:14 · 6390 阅读 · 8 评论 -
无人机自主导航13 自主导航】硬件篇-飞行平台参数设定与飞行调试
转载自:https://dgzc.ganahe.top/ganahe/2021/wrjfxpttsyykfx.html无人机自主导航13 自主导航】硬件篇-飞行平台参数设定与飞行调试Linux GanAHE 2个月前 (05-04) 24次浏览 已收录 0个评论 扫描二维码文章目录[隐藏]一、VINS-Fusion与Fast-Planner结合运行 二、遥控飞行:Offboard模式切换稳定性、可控性测试 三、任务发布与主从机控制飞行 其他 四、通过ssh启动机载电脑任务与监控 五转载 2021-08-12 14:07:53 · 969 阅读 · 0 评论 -
技术分享 | 带你实现IMU和双目相机的联合标定
转载自:https://mp.weixin.qq.com/s/578zLmelTqxrPggOakxkVw技术分享 | 带你实现IMU和双目相机的联合标定原创 阿木实验室 阿木实验室 今天紧接着上次我们讲解了VINS的基本原理,这次需要做的就是VINS落地之前的参数配置,我们先标定IMU和双目相机。联合标定是指,将IMU和双目相机之间的变换矩阵以及其他一些无法估计的Bias标定出来。变换矩阵对于VINS极为重要,如果精度过低,整个系统就会变得极为不鲁棒。1.imu_utils标定IM转载 2021-08-06 20:33:18 · 1344 阅读 · 0 评论 -
在ros环境下的RealsenceT265标定以及Vins mono运行
转载自:https://mp.weixin.qq.com/s/U4gY7l-YV3sp8-thJrIlUg在ros环境下的RealsenceT265标定以及Vins mono运行原创 lovely_yoshino 古月居 今天相机标定对于t265而言,虽然官方提供了标定的出厂内参rs-enumerate-devices -c可以获得,但是我们在vins和orbslam中仍然有可能需要自己标定数据,这里给出教程。首先我们要明确适用的模型,一般普通相机小孔模型即可,而鱼眼镜头则是适用转载 2021-07-31 17:29:41 · 1270 阅读 · 0 评论 -
获取RealSense-SR300相机的内参
转载自:https://www.cnblogs.com/zhengzian/p/14175135.html获取RealSense-SR300相机的内参 插入相机后,输入以下命令:rs-sensor-control选择0然后选择1然后选择2就会出现一系列的选项,选择一项适合自己的,输入序号:...转载 2021-07-22 12:31:40 · 298 阅读 · 0 评论 -
realsense相机内参获得方法
转载自:https://www.it610.com/article/1296417297711308800.htmhttps://blog.csdn.net/mystyle_/article/details/109353870realsense相机内参如何获得+python pipeline+如何通过python script获取realsense相机内参(windows下可用)硬件 命令:~$ rs-sensor-control=============================转载 2021-07-22 12:29:43 · 6799 阅读 · 2 评论 -
萌新谈相机与IMU的标定(转载)
我发现这里所给的标定板也是这个转载自:https://zhuanlan.zhihu.com/p/44424457萌新谈相机与IMU的标定熊勒个猫社会太复杂了,我还是喜欢熊猫比较安全本文主要包括相机标定和imu_camera 标定,另附上imu标定文章(非本人)。先从摄像头的标定开始讲起吧,SLAM新手上路,第一个要玩的肯定是ORBSLAM,光跑数据肯定不够过瘾啊,所以就要用自己的摄像头转一圈。下面进入正题,前提条件:一个笔记本,一个能用摄像头(单目或者双目).转载 2021-07-22 10:37:10 · 1459 阅读 · 0 评论