- 博客(30)
- 收藏
- 关注
原创 多雷达标定(有/无共视区域均可)
先占个坑,后面有时间补全,有共视区域不想说了,所以,只讲无共视区的。先放图,自己看,这是两个窄视场角的tof点云数据,没有共视区域标出来的。(对啊,无共视区,为啥点云重合?占坑!!!)...
2021-09-30 10:43:57
677
1
原创 Shell脚本定时器压缩文件
运行方式:chmod +x timer.sh./time.sh同时终端会要求输入分钟和秒,都为整数,如下:之后便进入倒数计时阶段,我这里设置的是1min0sec;以此作为shell脚本学习的第一个小任务。脚本代码如下:#!/bin/bash#n=0n=1#while(($n<=2))read -p "please input minutes:" minread -p "please input seconds:" seci=min*60+secwhile(($n!=0)
2021-08-20 20:08:12
531
原创 rosbag点云数据保存为bin,ply,pcd文件
本文基于ros将rosbag中的点云数据一帧一帧保存成对应的文件,并比对各个文件占用空间大小。阉割版的如下,能用,但是少了一些功能,旨在记录保存下来的各种点云文件。废话不说,直接上代码:#include <ros/ros.h>#include <sensor_msgs/PointCloud2.h>#include <pcl/io/io.h>#include <pcl/io/pcd_io.h>#include <pcl/io/ply_io.h
2021-08-15 12:34:55
5320
9
原创 Tcp通讯(C++版)
好忙啊,,,,0.0,而且我好菜啊!算了不扯其他了,最近需要用到tcp作为arm和PC之间通讯的桥梁,所以要搞一下,大致看了看,好像也不是太难,简单整理一下思路,后续有空丰富细节知识:服务器加载套接字库,创建套接字。绑定套接字到一个IP地址和一个端口上。监听指定端口。等待客户端请求,若收到请求,建立一个对应于此次连接的套接字。接收客户端数据。向客户端发送数据。客户端加载套接字库,创建套接字。向服务器发出连接请求。与服务器之间进行数据传输。关闭套接字,关闭加载的套接字库。先放
2021-08-01 20:02:47
1454
原创 GTSAM学习教程
**1.用gtsam实现卡尔曼滤波(EKF)**代码命名为test8.cpp#include <gtsam/nonlinear/ExtendedKalmanFilter.h>#include <gtsam/inference/Symbol.h>#include <gtsam/slam/PriorFactor.h>#include <gtsam/slam/BetweenFactor.h>#include <gtsam/geometry/Po
2021-05-18 14:24:46
1218
原创 ORB_SLAM2加载地图并重定位详细流程(ros版本)
1.开发背景 :看第一篇去!地图保存链接2.写作动力:被网友催了。最近真挺忙,不催我都忘了我还差一篇没写呢。3.废话不多讲,开始搞,,,,,,额,还是先上图吧,如下加载后重定位效果,测试还不错。数据总量500s,从200s处加载地图后播放数据,直接定位上了,当然,还测试过数据中其他时间点的重定位效果,都是一次性定上位的4.步骤:4.1.InitKeyFrame.h和InitKeyFrame.cc的创建创建SystemSetting.h:#define SYSTEMSETTING_H #in
2021-04-10 11:00:08
4003
28
原创 ORB_SLAM2保存地图详细流程(ros版本)
1.开发背景首先,之前提到过的博主最近换了工作,以后打算努力学习slam,之前做激光嘛,当然,也是个菜鸟,现在突然做视觉SLAM-orbslam,接触起来的第一感觉是:哇,好大一个工程。反正既然做了,就认真学嘛,项目老哥要求把地图保存并加载,所以,这一篇就记录一下保存地图的流程。2. 软硬件环境传感器:azure-kinect-sdk,驱动用的是v1.4(当初搭建这个ros版本的驱动可真是折磨死我了,不过后来总结了一下经验,搭建起来也不是太费劲了,需要的话,后面我再写一篇讲搭建linux下ros驱动的
2021-03-26 11:21:24
4957
23
原创 用RGBD相机跑LOAM
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar
2021-03-13 13:59:20
563
16
原创 Xsens的ROS使用
最近博主刚得到一个IMU :Xsens。该器件广泛应用于机器人姿态测量或SLAM系统中。本章主要讲述如何在PC上用ROS将Xsens跑起来。安装驱动博主使用的Xsens型号是MTI-300。首先安装其驱动(kinetic/melodic我都安装成功),以melodic安装为例,方法相同。sudo apt install ros-melodic-xsens-driver查看原始数据(此步骤可以省略,因为博主拿到这个IMU 很旧了,而且存储不当,害怕是坏的,所以此步骤主要是为了查看这个器件是否正常
2020-12-07 16:31:47
2239
5
原创 学会用git 管理自己的项目
git完整使用方法及错误:1.创建文件夹或者进入已有文件夹中如:gitLearning(不能嵌套两个git init的工作目录)2.cd gitLearning3.全局设置(可进入git网页上对应的项目文件中查看)git config --global user.name “xxxx”git config --global user.email “xxx”4.添加ssh 密钥:1。点击网页上添加ssh密钥提示。2。把RSA SSH keys中生成的密钥复制如:ssh-keygen -t rs
2020-09-28 15:45:00
245
原创 激光聚类算法-depth_clustering安装运行
由于指导老师的要求,最近要看一下深度学习聚类的算法,当然,都是基于velodyne激光雷达来做的,如果要改用其他雷达,那就需要自己进行适配了。废话不多说!1.项目地址项目链接:depth_clustering我的安装环境:ubuntu 1804 ,ros-melodic以及:sudo apt install libopencv-dev libqglviewer-dev-qt5 freeglut3-dev qtbase5-dev2.安装git clone https://github.com/P
2020-09-21 10:13:23
1611
12
原创 记录找不到g2o_viewer的问题的解决方法
跑slam十四讲的g2o_viewer时出现了出现了找不到g2o_viewer的问题,但是编译其实都过了。所以应该时环境的问题。记录一下:1.环境:ubuntu 18042.第一次编译过了,但是运行找不到g2o_viewer,那我们看一下如下文件,我们看一下FindQGLViewer.cmake文件,发现需要额外的依赖来能顺利安装g2o_viewer。find_package(Qt5 COMPONENTS Core Xml OpenGL Gui Widgets)3.我查了很多博客,有些博主还会删除
2020-09-19 11:38:26
623
转载 Yolo v4移植ROS
1、建立名为catkin_ws的工作空间$ mkdir -p catkin_ws/src$ cd catkin_ws/src/$ catkin_init_workspace$ cd ..$ catkin_make2、下载darknet_ros包$ cd src/$ git clone https://github.com/leggedrobotics/darknet_ros3、下载Yolo v4源码下载好了之后,可以看到darknet_ros中有3个文件夹:darknet、darkn
2020-09-16 19:58:36
1648
3
原创 Autoware之激光和图像联合标定
说明:联合标定需要提前标定好相机的内外参,这个推荐也用autoware,个人觉得没什么难度,就不写文章了,也没什么时间!联合标定的话,好久没搞了,写一篇博客以防老年痴呆忘记了!!一:环境说明1.ubuntu 18042.ros-melodic版本3.image_view2二:下载安装包,并编译默认大家都下载并安装好了autoware!!!(其实是我懒得上传百度云这个文件了~0~)三:联合标定方法1.试运行cd autoware.aisource install/setup.bashro
2020-09-16 19:37:05
3174
15
转载 Python-pcl的安装
由于Python脚本的便利性,加上总是要分析雷达数据,所以在考虑能不能安装Python版本的pcl库,从而避开繁琐的c++编写。各路安装方法参见https://github.com/strawlab/python-pcl,在此仅记录linux下的安装:1.安装依赖sudo add-apt-repository ppa:v-launchpad-jochen-sprickerhof-de/pcl sudo apt-get update sudo apt-get install libpcl-all
2020-08-04 13:23:35
1242
原创 激光SLAM之NDT算法(2)-建图
最近的项目里用到了室外激光SLAM进行定位,所以我总结一下项目经验,顺便根据项目最终效果说一下自己对于算法源码中这段代码的理解。首先,算法框架中用到了不止一种传感器,包括IMU,odometry和GPS等。所有的传感器数据都是为了能构造一个合理且较好的激光里程计。这段代码很好理解,我大致讲一下流程吧,首先当第一帧点云输入时,我们构造一个位姿向量,x=0,y=0,z=0,旋转角初始化为0,存入map)中,并将其设置为ndt的target参数。当第二针点云进来时,进行点云匹配得到这堆点云的位姿(以lidar
2020-07-27 19:42:00
3513
2
转载 激光SLAM之NDT算法(1)算法原理
无人车激光SLAM系统简单可以分为建图和定位两部分,无人车的定位问题,实际上就是要找出无人车当前在地图的那个位置(并且要求精度在厘米级别)。其中有一类方法被称为即时定位与地图构建(simultaneous localization and mapping,SLAM),它能够实现导航定位而不需要地图,然而,真正实现无人车的SLAM是非常困难的,作为交通工具,远距离的行驶会使得实时构建地图的偏差变大。所以,在已经拥有高精度地图的前提下去做无人车的定位,是更加现实,简单的。NDT就是一类利用已有的高精度地图和激光
2020-07-27 19:21:49
9928
1
原创 cartographer定位结果的数据分析
最近忙着做实车定位,所以好久没写博客了,鉴于有博友问我一些关于carto的数据分析的问题,这里抽空写些简短的东西给大家,顺便分享一下自己写的(辣鸡)脚本,希望对各位有帮助。首先,我们需要做好自己的定位,并录下自己定位数据的bag,因为我们的项目目前是考虑到了GPS信号不好时切换至slam 定位,所以,我这里只做一些SLAM和gps 的数据分析对比。那么,明确自己的bag中gps和SLAM结果的话题是刚需,比我的bag中,就是/trajectory_node_list和/gpsposition这两个话题。
2020-07-15 16:31:58
2592
10
原创 Velodyne 16线激光雷达-多雷达版本
今天由于工作原因,进行了一番velodyne16线激光雷达的配置,也是第一次自己配置这个牌子的雷达。如下,人家的霸气履带车,跟我们自己的无人车比,确实霸气多了。我就不放全图了,还在开发中,不方便露脸。注意:velodyne雷达的驱动已经集成在了ROS中,所以你接通激光雷达后,保证雷达IP和你电脑的IP在同一个网段下就可以直接启动:roslaunch velodyne_pointcloud VLP16_points.launch是的,这么简单我还写博客干啥,记录一下不容易的地方,比如,不同网段怎么
2020-05-20 14:36:54
3562
8
原创 cartographer基于3d地图的纯定位模式
关于纯定位模式呢,本人试过2d和3d,怎么说呢,有条件的话,建议直接上3d,因为博主当初在做定位时针对室内和室外都尝试过,2d只在室内环境下效果会很棒,但是在室外就呵呵啦!所以这里直接讲解3d室外定位(建图篇请自己查看我之前的博客:[3d建图](https://blog.csdn.net/qq_40216084/article/details/105531983)看了我之前的博客大概知道配置文件和源文件路径了,我这里就不把路径写出来了,挺麻烦的。直接讲怎么做把,有不懂的留言,看到了我一定知无不言。**首
2020-05-12 22:50:10
4672
31
原创 ROS之自动驾驶相关模块安装
(此文章为自动驾驶软件环境安装备份,便于查找记录!)安装流程:依赖环境安装1 ROS安装2 OpenCV安装3 Qt安装4 编译bug解决方法1 ROS安装安装的是kinetic(Ubuntu16.04),可以参考官方教程,网上也有不错的中文安装版,比官网讲的更详细一点——ROS不能再详细的安装教程1.1. 安装grid_map,sudo apt-get install r...
2020-05-07 11:20:02
649
原创 大疆Livox_mid 40雷达初体验
为了解决无人车上镭神雷达FOV小而导致的车前3m内无法看到锥形桶问题,东家给公司邮寄了一台大疆的mid40雷达,不得不说,颜值真的高.(光看颜值,就甩镭神几条街)...
2020-04-29 17:02:01
6804
33
转载 矩阵的实质意义(3)
版权声明:本文为CSDN博主「myan」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/myan/article/details/1865397首先来总结一下前面两部分的一些主要结论:首先有空间,空间可以容纳对象运动的。一种空间对应一类对象。有一种空间叫线性空间,线性空间是容纳向量对象运动...
2020-04-16 09:39:52
1514
转载 矩阵的实质意义(2)
版权声明:本文为CSDN博主「myan」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/myan/article/details/649018接着理解矩阵。上一篇里说“矩阵是运动的描述”,到现在为止,好像大家都还没什么意见。但是我相信早晚会有数学系出身的网友来拍板转。因为运动这个概念,在数学和物理里...
2020-04-16 09:36:56
830
原创 cartographer跑自己的数据+3d建图篇(Lidar+imu)
接上篇2d建图(那个,参数解释,网上太多了,我真的懒得写了,大家自己去官网查吧,最近好忙)老规矩,按步走,做好笔记防止以后忘记!!!
2020-04-15 12:41:56
8380
30
原创 cartographer跑自己的数据包-2d建图篇(laser+Imu建图篇)
相信大家装cartographer都可以跑通官网上的示例教程,所以,博主就在这里写一些跑自己数据包的经验,一呢,作为记录,预防自己老年健忘,二呢,跟大家分享一下经验。如标题所示,博主用的是激光雷达数据和IMU数据进行建图。改动文件建议自己复制源文件进行新建文件改动,源文件作为保留用。废话不多说...
2020-03-27 12:15:23
8051
35
原创 cartographer安装过程记录
博主在安装时主要参考如下两位的安装方法,附上其链接1.(https://blog.csdn.net/lxn9492878lbl/article/details/88553834)2.(https://www.cnblogs.com/lvchaoshun/p/9824528.html)宝典:如果有哪个一步下载速度巨慢,4G手机开热点下载,我用第一遍用电信的手机搞定了0.0...
2020-02-26 09:25:48
342
2
原创 rosdep init与update报错解决(一定成功的方法)
安装ROS安装的是kinetic(Ubuntu16.04),可以参考官方教程http://wiki.ros.org/kinetic/Installation/Ubuntu, 网上也有不错的中文安装版,比官网讲的更详细一点——ROS不能再详细的安装教程https://www.cnblogs.com/liu-fa/p/5779206.html.其中,最容易出问题大概都是这两步.原因大概都是因为...
2020-01-03 15:25:57
704
原创 暗通道理论详解及的Python实现
本文参靠何凯明博士,暗通道理论论文及网上大量代码.不说废话,上干货,以下为图像暗通道实现.暗通道原理可参考:白马负金羁 的博文,讲的很清楚了.https://blog.csdn.net/baimafujinji/article/details/27206237有什么不懂的留言交流.公式推导建议自己推一遍,何凯明博士论文原文:链接: https://pan.baidu.com/s/1Of...
2020-01-03 14:53:20
5876
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人