自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(64)
  • 资源 (8)
  • 收藏
  • 关注

原创 主成分分析

https://zhuanlan.zhihu.com/p/37777074http://blog.codinglabs.org/articles/pca-tutorial.html

2023-07-14 19:19:06 171

原创 动图表情包制作

1,使用剪辑软件剪出相应的片段和尺寸2,将MP4导成gift,网址链接3,压缩gift,网址链接

2021-12-04 14:59:52 376

原创 Ubuntu18.04 ROS melodic安装 cartographer

Ubuntu18.04 ROS melodic安装 cartographercartographer是Google开发的建图的包,笔者在Ubuntu16.04安装过hit版本的cartographer,但是在Ubuntu16.04的环境下,会报出很多的错误,因此不再采用。安装cartographer最大的问题就是需要翻墙,CSDN上的包现在基本不靠谱。经过一番折腾,还是科学上网,参考官方的教程。不需要ROS需要ROS若直接安装Compiling Cartographer ROS这个教程,很可能出现c

2021-09-23 14:25:21 354

原创 野外移动机器人的导航-导航算法调研

1

2021-07-05 20:50:47 614 4

原创 野外移动机器人的导航-建图调研

octomap中3d-rrt路径规划octomap中进行路径规划基于UAV的源码

2021-07-01 23:08:52 546

原创 《基于RGBD相机的Active SLAM的研究》-实物平台的搭建

使用的平台采用的是kobuki的机器人底盘,上位机采用nuc

2021-06-18 22:19:55 185 2

原创 《基于RGBD相机的Active SLAM的研究》-RRT*

本文将介绍ompl库中,RRT*算法在路径导航中的应用设置2D导航地图中的边界条件,机器人的状态可以用(x,y,theta)来描述 // set the bounds for the A=R^6 ob::RealVectorBounds Qbounds(n); Qbounds.setLow(0, MIN_X); // x_min Qbounds.setHigh(0, MAX_X); // x_max Qbounds.setLow(1, MIN_Y); // y_min Qbounds.setH

2021-05-11 09:00:03 269

原创 《基于RGBD相机的Active SLAM的研究》-仿真

搭建的仿真环境roslaunch /home/jianzhuozhu/catkin_ws/src/Active-ORB-SLAM2-master/Examples/ROS/ORB_SLAM2/launch/turtlebot_world.launchroslaunch turtlebot_teleop keyboard.launch

2021-05-06 11:20:26 244 1

原创 《基于RGBD相机的Active SLAM的研究》-Active-ORB-SLAM2源码安装

github地址:https://github.com/XinkeAE/Active-ORB-SLAM2安装步骤Clone the repository:git clone https://github.com/XinkeAE/Actuve-ORB-SLAM2.gitcd Active-ORB-SLAM2chmod +x build.sh./build.shThis will create libORB_SLAM2.so at lib folder and the executable

2021-03-06 15:24:33 612 1

原创 《基于RGBD相机的Active SLAM的研究》-orb_slam2源码解读

注:本文使用的代码为orb_slam2_ros详见:https://github.com/electech6/ORB_SLAM2_detailed_comments1,线程trackingtrack线程在文件Tracking.cc中间,包含两部分:估计运动、跟踪局部地图Step 1:初始化mState为tracking的状态,包括 SYSTME_NOT_READY, NO_IMAGE_YET, NOT_INITIALIZED, OK, LOST,在初始化之后,如果跟踪正常,这个状态量为OKSt

2021-03-02 18:58:34 336

原创 《基于RGBD相机的Active SLAM的研究》-模型建立

基于RGBD相机的Active SLAM的研究系统状态向量的协方差系统的状态空间模型视觉SLAM系统的数学描述系统状态向量的协方差状态协方差矩阵P就是状态之间的协方差组成的矩阵,对角线元素是各个状态的方差,其余元素是相应元素的协方差系统的状态空间模型这是小车Body的状态向量,代表小车在世界坐标系下面的位姿而在本体坐标系下面,仅有两个控制量我们将这两个本体坐标系下面的量映射到世界坐标系下面去,按照zyx的顺序,构成一个旋转矩阵得到的运动学模型如下将面这个式子离散化,变成运动方程

2021-03-01 10:07:32 149

原创 《基于RGBD相机的Active SLAM的研究》-PNP方法

针对map_frame到camera_frame的转换的问题,打算采用基于PNP的ORB_SLAM2,故有必要对PNP好好回顾一下。1,P3P在 SLAM 当中,通常的做法是先使用 P3P/EPnP 等方法估计相机位姿,然后构建最小二乘优化问题对估计值进行调整(Bundle Adjustment)。顾名思义,P3P仅仅使用3对匹配点,如图由余弦定理可知x2+y2−2xycos⟨a,b⟩=AB2/OC2y2+1−2ycos⟨b,c⟩=BC2/OC2x2+1−2xcos⟨a,c⟩=AC2/OC2x

2020-12-18 11:08:12 390 1

原创 Batch normalization实践

输入数据,一元二次函数,加上高斯噪声y=x2−5y=x^2-5y=x2−5x_data = np.linspace(-7, 10, 500)[:, np.newaxis]noise = np.random.normal(0, 8, x_data.shape)y_data = np.square(x_data) - 5 + noise建立7层神经网络,每一层都使用 relu作为激励函数,7层,每层30个神经元。这是输入数据不对输入层norm每层的数据分布误差曲线对输入数据也norm

2020-12-12 20:26:44 199

原创 《基于RGBD相机的Active SLAM的研究》-前期准备

1,地图显示基于octomap八叉树的显示比较好打开奥比中光深度相机roslaunch astra_launch astra.launch打开octomap的启动配置文件 roslaunch octomaptransform.launch其中的内容如下<launch> <node pkg="octomap_server" type="octomap_server_node" name="octomap_server"> <!-- resolut

2020-12-07 21:14:00 308 2

原创 《SLAM十四讲》阅读笔记-《2D Grid Mapping and Navigation with ORB SLAM》

Though this point cloud can be useful for obtaining the 3D structure of the environment, it is not as useful for path planning and navigation using algorithms that need a 2D occupancy grid map as input.The point cloud produced by ORB SLAM is somewhat sp.

2020-11-28 20:44:36 1339 4

原创 《SLAM十四讲》阅读笔记-ORB_SLAM2实践

1,安装ORB_SLAM2参考安装,不是一番风顺会有一些坑2,安装astra相机注意要安装openin,再去安装功能包安装3,RGB-D实时跑参考启动相机roslaunch astra_camera astra.launch启动SLAMrosrun ORB_SLAM2 RGBD /home/jianzhuozhu/catkin_ws/src/ORB_SLAM2/Vocabulary/ORBvoc.txt /home/jianzhuozhu/catkin_ws/src/ORB_SLA

2020-11-28 14:41:19 211

原创 《slam十四讲》阅读笔记-视觉里程计

1,尺度不变性计算机视觉界引入了尺度不变特征的概念。 它的理念是, 不仅在任何尺度下拍摄的物体都能检测到一致的关键点,而且每个被检测的特征点都对应一个尺度因子。 理想情况下,对于两幅图像中不同尺度的的同一个物体点, 计算得到的两个尺度因子之间的比率应该等于图像尺度的比率。注意ORB并没有解决尺度不变性的问题,需要再加上图像金字塔的才能达到尺度不变性。2,ORB特征匹配ORB特征匹配,相比SIFT,SUFT来说更快,但是降低了一定的精度和健壮性。ORB使用FAST关键点和BRIEF描述子,匹配方法使

2020-11-12 16:25:01 168 1

原创 解决opencv在vs code中头文件找不到的问题

在一段程序中,有引用opencv头文件#include <iostream>#include <opencv2/core/core.hpp>#include <opencv2/features2d/features2d.hpp>#include <opencv2/highgui/highgui.hpp>尽管cmake会通过,但这时候vs code在这些下面会出现红色波浪线无法打开 源 文件 "opencv2/core/core.hpp"无法打开

2020-11-09 21:05:28 9282 3

原创 《slam十四讲》阅读笔记-非线性优化

1,对似然函数的理解似然性(likelihood)与概率(possibility)同样可以表示事件发生的可能性大小,但是二者有着很大的区别:而所谓最大似然估计(Maximize Likelihood Estimation, MLE)是指在给定的观测数据下,找出参数θ\thetaθ ,使得生成观测数据xxx的概率函数P(x∣θ)P(x|\theta)P(x∣θ)最大,表示为在状态估计问题中,状态变量xxx成为参数,这个时候表示为在这种情况下,可以理解成“在什么样的状态下,最可能产生现在观测到的数

2020-11-07 10:52:56 487

原创 movebase局部规划调参

这个介绍的比较清楚局部规划调参简书里面一共有5个有关的,movebase写的比较好

2020-10-23 17:08:59 457

原创 Ubuntu18.04+openv-2.4.9

ubuntu18.04安装openv-2.4.9会出现很多问题安装教程参考安装踩坑亲测有效

2020-10-21 20:58:34 91

原创 双系统删除Ubuntu,出现grub无法正常启动的解决办法

https://blog.csdn.net/Liuss2/article/details/80384563

2020-10-18 16:18:42 266

原创 vrep_ros_bridge

vrep_ros_bridge

2020-09-23 11:16:35 157

原创 自主导航系列20-cartographer排雷

1.安装kinetic+cartographer+turtlebot3仿真Cartograrher的安装首先在ubuntu主目录下建立cartographer的工作环境“google_ws”$mkdir google_ws1.安装依赖$ cd google_ws$ sudo apt-get update$ sudo apt-get install -y python-wstool python-rosdep ninja-build2.初始化工作空间$ cd catkin_ws$ wst

2020-09-14 08:52:33 219 1

原创 自主导航系列21-layered论文阅读

自主导航系列21-costmap2020-9-101.costmap论文研究Costmaps for Context-Sensitive Navigation 这篇论文阐述了layered maps相对于Monolithic的优点,解读了layered costmap的构造和他的生成过程标准的layered costmap分为4层static map layer:静态层,是master costmap的底层,可以使用预先生成的静态地图,也可以创建空白地图obstacles layer:激光

2020-09-14 08:51:56 229

原创 python学习之旅1-win入门

python学习之旅1-win入门1,安装官方的安装实在是太慢了,推荐这个网址下载3.8.2,安装好,记得添加python的地方要勾选!运行python的文件的时候输入命令python test.py即可。用#号作注释2,数据类型在给变量赋值的时候,不需要声明数据类型,赋什么类型的值,就是什么类型如,如c='ddd d dcd'print(c)a,b,c,d=1,2,3,4print(a,b,c,d)注意变量的命名不能以数字开头元组类型b=()列表类型c=[]字典类型

2020-09-08 09:43:40 197

原创 自主导航系列19-costmap与rostopic

自主导航系列19-costmap与rostopic2020-9-41,插件安装新建一个ros功能包,catkin_make的时候输出成库文件在move_base里面修改参数配置文件,使得move_base引用这个插件自行新建一个发布坐标点的节点配置文件添加以下代码costmap_common_paramsobstacles: observation_sources: scan scan: {data_type: LaserScan, topic: /scan, marki

2020-09-04 16:29:01 248

原创 自主导航系列18-ros插件机制

自主导航系列18-ros插件2020-9-31,一个bug在编译sub1= n.subscribe("/cmd_vel", 1,SimpleLayer::openpoints);时,出现报错no matching function for call to ‘ros::NodeHandle::subscribe(使用sub1= n.subscribe("/cmd_vel", 1, & SimpleLayer::openpoints,this);编译通过。主要的问题在于在类里

2020-09-04 16:28:30 358

原创 自主导航系列17-costmap

自主导航系列17-costmap日期:2020-9-11,movebase总体框架2,仿真环境下的结构关系需要修改的部分[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pUTnjJBv-1599208020713)(/home/jianzhuozhu/.config/Typora/typora-user-images/image-20200901091640714.png)]rostopic info /move_base_node/global_costma

2020-09-04 16:27:13 176

原创 自主导航系列16-rrt源码

自主导航系列16-rrt源码参考1,理论基础简单来说,Rapidly Exploring Random Trees 快速探索随机树是基于随机采样的规划算法。RRT的起点为一个根节点root拓展根节点的方法为随机采样+步长限制+碰撞检测,每一轮迭代都会由父节点产生子节点N轮迭代后,我们已经获得了一颗如下图所示的随机树,这时我们发现此时的随机采样点竟然幸运地落在了终点的步长限制范围内,并且二者之间不存在障碍物总结一下就是生成一个随机采样点NewNode,并判断采样点是否位于自由区域遍历随机树,

2020-08-30 21:57:24 153

原创 自主导航系列15-cartographer源码

自主导航系列15-cartographer源码1,关于cartographer的一点小错误这种情况laser与map有不正常的关系我们启动

2020-08-28 16:46:40 200

原创 自主导航系列14-Cartographer

本来打算用gmapping的但是odom的偏差巨大,只好使用Cartographer。先试一下装的时候挺复杂的Cartographer库目前只支持到Ubuntu16.04版本,所以不能安装更高版本。最好是新开一个工作空间,因为他的编译方式1.安装所有依赖项sudo apt-get install -y google-mock libboost-all-dev libeigen3-dev libgflags-dev libgoogle-glog-dev liblua5.2-dev libproto

2020-08-24 16:54:49 481

原创 视觉slam系列3-相机

视觉slam系列3-相机针孔相机模型我们直接贴出公式K表示相机的内参矩阵,是由相机出厂就设置好的。自己确定相机的内参称之为标定。转换到世界坐标系,更有T为它的外参矩阵,若对Pc归一化,则可以在等式坐标消除Z参数。...

2020-08-21 19:12:26 111

原创 视觉slam系列2-数学基础

视觉slam系列2-数学基础1.齐次坐标齐次坐标最大的用途就是将坐标变换形式上的线性化,这是一个数学上的技巧但是区分齐次和非齐次坐标的符号令我们厌烦。在不引起歧义的情况下,以后我们就直接把它写成 b = T a 的样子,默认其中是齐次坐标了最后,为了保持符号的简洁,在不引起歧义的情况下,我们以后不区别齐次坐标与普通的坐标的符号,默认我们使用的是符合运算法则的那一种。例如,当我们写 T a 时,使用的是齐次坐标(不然没法计算)。而写 Ra 时,使用的是非齐次坐标。如果写在一个等式中,我们就

2020-08-19 18:32:59 361

原创 视觉slam系列1-编程基础

视觉slam系列1-编程基础1,g++指定输出名g++ helloSLAM.cpp -o [输出可执行文件名,后缀不重要]2,cmake根据CmakeLists.txt用 cmake 命令生成一个 makefile 文件,然后,用 make命令,根据这个 makefile 文件的内容,编译整个工程以.a和.so为尾缀的都是库文件,其中.a为静态库,.so为共享库文件,可以使用# 添加一个共享库add_library(hello_shared SHARED src/libHell

2020-08-16 21:03:34 128

原创 自主导航系列13-实际调试

自主导航系列13-实际调试1,四元数---transforms: - header: seq: 0 stamp: secs: 261 nsecs: 185000000 frame_id: "map" child_frame_id: "odom" transform: translation: x: -0.0188482053885 y: -...

2020-08-13 15:27:50 145

原创 自主导航系列11-理论补充

自主导航系列11-理论补充1,robot_pose_ekf核心是使用扩展的卡尔曼滤波器// 根据以上建立一个新的高斯分布,再用这个高斯分布建立新的扩展卡尔曼滤波器prior_ = new Gaussian(prior_Mu,prior_Cov);filter_ = new ExtendedKalmanFilter(prior_);卡尔曼滤波器的原理2,仿真参考古月居的教程...

2020-07-31 15:33:46 101

原创 自主导航系列11-gazebo的模型建立

自主导航系列11-gazebo的模型建立昨天在做有关robpt_pose_ekf的时候,发现自己gazebo的知识极度欠缺,反正这段时间比较闲,我可以学一下这些基础的东西使用robot_pose_ekf如果不使用这个包可能会出现“卡墙”之前的节点关系我试着与move_base结合,这个图使用的是基于turtlebot3融合之后的产物完成后的/tf长这样修改的turtlebot3_roboot_pose_ekf如下<launch><i.

2020-07-28 20:50:17 569 1

原创 自主导航系列10-robot_pose_ekf

自主导航系列10-robot_pose_ekf1,基本准备工作运行一个带有/imu和/odom融合的包roslaunch turtlebot3_gazebo turtlebot3_house.launchrostopic/clock/cmd_vel/gazebo/link_states/gazebo/model_states/gazebo/parameter_descriptions/gazebo/parameter_updates/gazebo/set_link_sta

2020-07-27 11:08:28 315

原创 自主导航系列9-/odom

自主导航系列9-/odom主要学习有关move_base的launch文件的常用node与launch1,成员nodegmapping包,我们不赘述了<node pkg="gmapping" type="slam_gmapping" name="slam_gmapping" output="screen" >move_base参数设置<node pkg="move_base" type="move_base" respawn="false" name="move

2020-07-25 21:40:04 836

(matlab)对比UKF与PF的性能

(matlab)对比UKF与PF的性能,带报告分析

2021-11-13

matlab实现图像上采样_凸优化方法(cvx).rar

采用凸优化的方法实现图像的上采样,带图像可用,采用PSNR与原图像进行评估

2021-11-12

Active-ORB-SLAM2-master.rar

基于orb-slam2的主动SLAM方法

2021-07-01

文件备份2020-11-4

备份了16.04的相关文件,

2020-11-03

上下文敏感的导航分层代价地图.pdf

高清PDf

2020-09-10

base_controller.tar.gz

可以将串口中的信息打包发给上位机,包括odom里程计,tf等信息 电脑只需发送/cmd_vel到ros中即可 代码非常清晰,亲测有效

2019-12-18

teleop_twist_keyboard.tar.gz

键盘控制,放在工作空间的src目录下,可以用于发布/cmd_vel 官方的代码包 亲测可用 用之前请先修改.py文件的权限

2019-12-18

trace.tar.gz

使用adaboost算法识别人体,修改好cascade的路径即可用 最好用绝对路径 还可以订阅激光雷达的信息 亲测可用

2019-12-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除