自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 收藏
  • 关注

原创 比较好的基础知识讲解汇总(持续更新中)

基础知识讲解汇总

2022-11-09 14:39:10 206 2

原创 工作常用易忘指令汇总(持续更新中)

vim添加多行注释在linux中,文本每一行的起始标志是^,结束标志为$,因此使用vim搜索并替换为#即可。例如:把1-10行注释掉(g表示替换,将起始标志^替换为#)1,10s/^/#/g取消注释1,10s/^#//g...

2020-04-10 16:23:50 224

原创 slam中用到的数学知识

泰勒展开式:理解泰勒展开的推导和意义协方差及协方差矩阵:协方差,协方差矩阵牛顿法:注意链接右边的几幅图,让人更容易懂牛顿法高斯牛顿法列文伯格-马夸尔特法图优化...

2018-06-19 18:12:28 1717

原创 slam常用方法概念理解

orb特征:关键点+描述子(fast角点检测,尺度不变性,BRIEF描述子,旋转不变性(orb中没有实际解决,opencv中通过图像金字塔模型来改善))。 ORB原理 图像金字塔模型2.点云配准: 广义点云配准的方法,迭代最近邻算法(ICP),ICP初始值R,t的计算 点云配准,也介绍了ICP ICP算法...

2018-06-13 20:39:15 1056

原创 刚体运动知识

点,向量,坐标内积:描述向量间的投影关系,结果是一个实数(点乘) 外积:外积的方向垂直于这两个向量,是两个向量张成的四边形的有向面积(叉乘)旋转:用一个向量来描述三维空间中两个向量的旋转关系。在右手法则下,我们用右手的四个指头从a向量转到b向量,大拇指朝向就是旋转向量的方向,也就是外积的方向,其大小由a向量和b向量的夹角决定。欧式变换:由旋转和平移两部分组成,同一个向量在各个坐标系下的长...

2018-06-08 11:17:30 1195

原创 概率机器人贝叶斯滤波的理解

滤波其实就是一个预测+修正的过程,在讲概率机器人贝叶斯滤波之前要先了解一些概率的知识。1.贝叶斯公式: 先验概率:事情还没有发生,要求这件事发生的可能性的大小,是先验概率,是根据以往经验和分析得到的概率。如上式中的后验概率:事情已经发生,要求这件事情发生的原因是由某个因素引起的可能性的大小,是后验概率,执果求因。如上式中的条件概率:事件y在另一个事件x已发生条件下的发生概率 。如上式

2018-01-29 20:29:46 3891

原创 自己看的一些比较好的资料和网站(不断更新)

1.SLAM学习资料整理:相关资料 2.创客智造:http://www.ncnynl.com/ 3.ros官网:http://wiki.ros.org/ 4.高博博客:https://www.cnblogs.com/gaoxiang12/ 5.古月居博客:http://www.guyuehome.com/ 6.ros机器人语音交互:ros语音交互 7.ros小课堂:ros小课堂视频

2018-01-25 16:07:35 741

原创 ros工作空间编译问题

最近做实验,在ros工作空间中新增功能包,然后进行编译时,编译成功,但是没有效果。使用单独编译新增功能包或者强制编译都没有效果,把build和devel文件夹删除进行编译,结果报错。将删除的文件夹恢复,重新编译,能通过,但感觉修改的部分没有进行编译,一直找不到原因。不知道是不是原来的工作空间中的功能包太多,最后新建了一个工作空间,将修改的包加进去,进行编译,然后解决了问题。

2017-11-30 14:14:43 3333 3

原创 ROS之URDF模型

1.所有的URDF/Xacro文件都会以以下两个标签作为开头。所有在标签后的内容都是在定义我们的组件,而整个文件会以标签结束(注:robot中的name可以自己根据具体内容进行自命名,如下面的为base)。<? xml version="1.0"? ><robot name="base" xmlns:xacro="http://ros.org/wiki/xacro">

2017-11-16 16:01:44 2816

原创 ros常用工具汇总

1.view_frames:生成pdf文件,来显示整棵tf树的信息rosrun tf view_framesevince frames.pdf2.map_saver:保存地图到磁盘,-f选项为输出文件提供一个不同的基础名字rosrun map_server map_saver -f mymap

2017-10-25 10:48:59 1165 2

原创 机器人与贝叶斯准则

贝叶斯公式:p(x|y)=p(y|x)p(x)/p(y) 如果x是一个希望由y推测出来的数值,则概率p(x)称为先验概率分布。其中,y称为数据,也就是传感器测量值。分布p(x)总结了在综合数据y之前已经有的关于x的信息。概率p(x|y)称为在X上的后验概率分布。贝叶斯准则通过逆条件概率p(y|x)和先验概率p(x)一起去计算后验概率p(x|y)。换句话说,如果想从传感器数据y推断x的值,贝叶

2017-09-05 14:19:33 782

原创 rosbridge小结

1.rosbridge rosbridge(rosbridge_suite)是ros官方为开发者提供的一个用于非ros系统和ros系统进行交互通信的功能包。rosbridge主要包含两个部分,Rosbridge Protocol和Rosbridge Implementation。其中Protocol部分提供了非ros系统和ros系统通信的具体格式,包括话题的订阅,消息的发布,服务的调用,参数的设置

2017-07-09 23:35:54 8870 1

原创 使用MoveIt Setup Assistant进行配置

首先在终端运行以下代码,打开moveit配置助手:roslaunch moveit_setup_assistant setup_assistant.launch点击create new moveit configuration package来创建新的配置包,选择你要配置的urdf文件,然后点击load files载入文件。 依照setup assistant左边的顺序,依次进行如下配置: 1

2017-05-02 17:34:17 3329

原创 MoveIt简析

moveit是ros中一系列移动操作的功能包的组成,主要包含运动规划,碰撞检测,运动学,3D感知,操作控制等功能。1.move_group是moveit的核心部分,可以综合机器人的各独立组件,为用户提供一系列的动作指令和服务。move_group类似于一个积分器,本身并不具备丰富的功能,主要做各功能包和插件的集成。它通过消息或服务的形式接收机器人上传的点云信息,joints的状态消息,还有机器人的t

2017-05-02 15:23:21 13917

原创 ros中编译moveit_tutorials出错

最近在学习ros中的moveit模块,在github上下载了moveit_tutorials包,但是编译的时候出错:CMake Error at /opt/ros/indigo/share/catkin/cmake/catkinConfig.cmake:83 (find_package): Could not find a package configuration file provided

2017-05-02 11:39:05 4163 3

原创 ros激光雷达建图基本步骤

1.先根据雷达类型,下载相应的雷达驱动; 2.创建激光雷达的串口别名(这一步不是必要步骤,只不过方便后面程序文件中的表示,比ttyUSB端口更容易辨认); 3.制作雷达驱动启动文件,以rplidar为例:<launch> <node name="rplidarNode" pkg="rplidar_ros" type="rplidarNode" output="screen

2017-03-30 16:05:24 21626 2

原创 网络知识小结

1.网络设备中,设备归为几层如何定义: 层次是从OSI模型来的,例如二层交换机就是工作在数据链路层,三层交换机就是工作在网络层。2.关于ping的问题: *a. 如果是同处于一个内部网络环境的,就是一个大局域网。比如192.168.0.1/24和192.168.1.1/24,他们并不在一个网段内所以无法直接ping通。这时候你可以把2台电脑接入路由器设置静态或者动态路由,计算机网关指向路由,这样

2017-03-28 11:04:04 333

原创 ros定义srv服务

在beginner_tutorials,新建srv服务目录,新建AddTwoInts.srv文件$ roscd beginner_tutorials$ mkdir srv$ cd srv$ touch AddTwoInts.srv$ rosed beginner_tutorials AddTwoInts.srvsrv文件分为请求和响应两部分,由’—’分隔。手工输入代码:int64 Aint

2017-03-12 16:57:17 933

原创 关于Python报错:IndentationError:expected an indented block

Python语言是一款对缩进非常敏感的语言,给很多初学者带来了困惑,即便是很有经验的Python程序员,也可能陷入陷阱当中。最常见的情况是tab和空格的混用会导致错误,或者缩进不对,而这是用肉眼无法分别的。在编译时会出现这样的错IndentationError:expected an indented block说明此处需要缩进,你只要在出现错误的那一行,按空格或Tab(但不能混用)键缩进就行。

2017-03-12 10:43:24 315

原创 python 中的if _ _name_ _=='_ _main_ _'

一个python的文件有两种使用的方法,第一是直接作为脚本执行,第二是import到其他的python脚本中被调用(模块重用)执行。因此if name == ‘main’: 的作用就是控制这两种情况执行代码的过程,在if name == ‘main’: 下的代码只有在第一种情况下(即文件作为脚本直接执行)才会被执行,而import到其他脚本中是不会被执行的。每个python模块都包含内置的变量nam

2017-03-12 10:03:45 739 2

原创 ros定义msg消息

在自己创建的包中,如beginner_tutorials,新建msg消息目录,新建Num.msg文件:$ roscd beginner_tutorials$ mkdir msg$ cd msg$ touch Num.msg$ rosed beginner_tutorials Num.msg在Num.msg文件中,手工输入代码:int64 num打开beginner_tutorials 包下的

2017-03-11 11:27:56 1189

原创 NP问题

以前常听老师讲NP问题,但一直不太理解,最近看了一点这方面的书籍,下面记录几个概念。 P类问题(polynomial):一类能够用确定性算法在多项式时间内求解的判断问题。 NP类问题(Nondeterministic Polynomial):对于某问题,很难找到其多项式时间的算法(或许根本不存在),但是如果给了该问题的一个答案,则可以在多项式时间内判断或验证这个答案是否正确。这种可以在多项式时间

2017-03-06 21:17:10 727

原创 Cmake总结

Cmake可以帮助我们简化对多个文件的同时编译,使得项目构建变得简单起来。Cmake的主要特点是跨平台,并可生成native编译配置文件,在Linux/Unix平台,生成makefile,在苹果平台,可以生成xcode,在Windows平台,可以生成MSVC的工程文件。简化编译构建过程和编译过程,Cmake的工具链非常简单:cmake+make。 1.cmake变量引用的方式: cmake

2017-03-06 20:08:14 288

原创 ubuntu下用ffmpeg录制音频文件

ubuntu下用ffmpeg命令可以录制视频文件和音频文件,其中录制音频文件很简单,其基本格式为:ffmpeg -f alsa <input_options> -i <input_device> .. output.wav其中,ffmpeg命令的主要参数有: -i 设定输入流 -f 设定输出格式 -ss 开始时间关于音频的参数主要有: -ar 设定采样率 -ac 设定声音的channel可

2017-02-26 18:42:54 3230 1

原创 常见git命令

1.git init 把目录变成git可以管理的仓库2.git add filename 添加文件 git commit -m,-m后面输入的是本次提交的说明,可以输入任意内容,最好是有意义的。3.git branch 查看分支,该命令会列出所有分支,当前分支会标一个*号 git branch name 创建分支 git branch -d name 删除分支4.git

2017-02-26 15:20:04 217

原创 关于roslaunch文件的注意点

roslaunch文件可以同时启动多个节点,对于一些要启动多个节点的项目来说可以很方便的实现,而不用打开多个终端来运行rosrun命令。1.任何启动文件的核心都是一系列的节点元素,每个节点元素指向一个需要启动的节点,节点元素的基本形式为:<nodepkg=”package-name”type=”executable-name”name=”node-name”/>pkg:指明节点所在的包名;

2017-02-20 15:35:33 2644 2

原创 关于ros的节点问题

1.运行ros节点 rosrun [package_name] [node_name] ,其中package_name是包名,是当时用catkin_create_pkg命令创建的,[node_name]是节点名,是 CMakeLists.txt文件中类似于## Declare a C++ executable add_executable(tts_voice_node src/xf_t

2017-02-14 15:01:02 1327

原创 Problem with catkin_make

最近在用catkin_make 编译时,出现 ImportError: “from catkin_pkg.topological_order import topological_order” failed: No module named ‘catkin_pkg’ Make sure that you have installed “catkin_pkg”, it is up to

2017-02-12 13:49:59 1048

原创 ubuntu 同时安装多个版本的python

ubuntu可以同时安装多个版本的python,具体使用及版本之间的切换参考:http://blog.csdn.net/qq_27657429/article/details/53482595

2016-12-19 16:42:37 5002

原创 ros中遇到的一些小问题

最近在ArbotiX模拟器上对ros的导航,路径规划和SLAM进行模拟,在用roslaunch启动文件时提示map_server和move_base节点无法启动,查了好多资料后发现是因为没有安装和编译map_server和move_base等节点,于是在github上下载了ros的navigation包,但是在编译的时候出现了错误无法进行编译。 1. package ‘orocos-bfl’ no

2016-10-29 13:38:00 1729

原创 如何使用github来下载你需要使用的ros资源

使用ros系统,需要用到许多数据包,有些时候你需要使用的ROS数据包并没有Debian包的形式,这时你需要从数据源安装它。代码开发人员通常使用的有三种主流的版本控制系统:SVN,Git和Mercurial。下面介绍一下如何使用Git来下载你需要的代码资源。 首先创建并编译好你需要使用的工作空间,然后执行下面的操作: cd ~/catkin_ws/src //此处为你

2016-10-28 12:07:58 7119

原创 ROS程序包的创建和编译

ROS程序包的创建和编译

2016-10-18 12:07:07 5816

原创 linux下编程实现wav文件播放注意的小问题

1.在linux的声卡驱动中存在两种架构,一种是OSS(开放声音系统),一种是ALSA(先进Linux声音架构),对于两种驱动我们都可以编程实现wav文件的播放,但是由于OSS没有得到积极维护,并且落后于新的声卡技术,现在广泛应用ALSA,甚至OSS在后面版本中被移除。 2.基于linux ALSA音频驱动的wav文件解析及播放要先下载alsa的libasound-dev的库。 3.编译链接时需

2016-10-18 11:53:15 1938

原创 讯飞sdk语音合成测试用例(linux版)

由于最近要做语音交互方面的开发,而国内讯飞在语音开发这方面做的非常好,所以打算使用讯飞的sdk。但是下载下来发现压缩包中的文件和讯飞官网的说明不同,大概是官网文档没有进行更新,所以接下来介绍一下语音合成的测试用例。 1.首先注册账号,下载语音合成的sdk,我选择的是linux平台的。 2.下载好之后,在examples文件夹下,将ttsdemo.c中的用户名和密码参数修改成你自己的用户名和密码。

2016-10-17 12:44:19 4890

原创 ROS---catkin编译系统的四个步骤

ROS—catkin编译系统的四个步骤 1.声明依赖库。 首先,我们需要声明程序所依赖的其他功能包。 为了给出依赖库,编辑包目录下的 CMakeLists.txt 文件。该文 件的默认版本含有如下行: find_package(catkin REQUIRED) 所依赖的其他 catkin 包可以添加到这一行的 COMPONENTS 关键字 后面,如下所示: find_package(c

2016-10-10 22:37:24 2881

空空如也

空空如也

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

TA关注的人

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