- 博客(195)
- 资源 (6)
- 收藏
- 关注
原创 已知两点经纬度求航向
struct PointLB{ double lat; double lon;};double getAzimuth(PointLB pA, PointLB pB){ double a = (90 - pB.lat) * PI / 180; double b = (90 - pA.lat) * PI / 180; double AOC_BOC = (pB.lon - pA.lon) * PI / 180; double cosc = cos(a) *
2020-10-20 10:01:11
5261
原创 严恭敏老师的博客
搞惯导、组合导航领域的专家严恭敏老师,在新浪博客上有一系列专业文章。这里记录下博客地址:http://blog.sina.com.cn/s/articlelist_1089338825_0_1.html
2020-05-08 10:48:09
8708
原创 卡尔曼滤波五个公式推导
一、两个方程1,系统的状态方程(预测方程)xk=Akxk−1+Bkuk+wkx_k = A_kx_{k-1} + B_ku_k + w_kxk=Akxk−1+Bkuk+wk2,测量方程zk=Hkxk+vkz_k = H_kx_k+v_kzk=Hkxk+vk其中: xkx_kxk是状态向量; AkA_kAk是状态转移矩阵; uku_kuk是状态...
2020-03-11 20:52:28
24100
7
原创 matlab中用setdiff删除矩阵中指定的一行元素
1,知道该行的行号删除第2行a = [1 1; 2 2; 3 3; 4 4];a(2,:) = [];得到:a = [1 1; 3 3; 4 4]2,不知道行号,删除指定的元素a = [1 1; 2 2; 3 3; 4 4; 2 2];b = [3 3];c = setdiff(a,b,'row','stable');得到:c = [1 1; 2 2; 4 4; 2 2];...
2019-12-04 17:39:20
2755
原创 C++通过CMakeLists使用Eigen库
代码中通过#include<Eigen/Eigen>即可引入Eigen库,但是直接g++编译的时候是通不过的。提示 Eigen/Eigen: No such file or directory。这里需要将Eigen库加入到库中,可以通过CMakeLists实现,如下:CMakeLists.txtcmake_minimum_required(VERSION 2.8 FATAL_ERR...
2019-11-22 16:08:27
14923
原创 matlab通过save将雷达点云生成xyz.txt格式文件
例如pcData 是10000*3的点云坐标数组.如果是一帧点云。data_temp = pcData(:,1:3);save('test_xyz.txt', 'data_temp', '-ascii');如果在for循环中,需要写入多帧点云到同一个文件中。data_temp = pcData(:,1:3);save('test_xyz.txt', 'data_temp', '-as...
2019-10-31 11:14:34
2484
原创 matlab中通过pcwrite将xyz数据转换成pcd格式文件
一、处理激光雷达点云过程中的数据例如pcData 是10000*3的点云坐标数组ptCloud = pointCloud(pcData(:,1:3));pcwrite(ptCloud, 'test.pcd', 'Encoding', 'ascii'); %将程序中的xyz数据写入pcd文件中pc = pcread('test.pcd');pcshow(pc); %显示点云二、将xyz...
2019-10-31 10:15:53
5807
4
原创 简单的CMakeLists撰写示例(以pcl库为例)
vs code 写代码时需要引入pcl库,如下:#include <iostream>#include <pcl/ModelCoefficients.h>#include <pcl/io/pcd_io.h>#include <pcl/point_types.h>#include <pcl/sample_consensus/method...
2019-10-30 18:39:39
3199
原创 log记录函数
开发中需要对软件运行中的一些数据及状态进行log记录,这里简单写下。一、最简单的模式#include <iostream>#include <fstream>int main(){ FILE* fp; fp = fopen("log.txt", "a"); fprintf(fp, "hello world!\n"); fclose...
2019-09-18 20:32:30
777
原创 C语言——读取串口数据,并处理
本文主要内容包含:1.接收串口数据程序的编程逻辑示意图;2.接收串口数据程序要用到的通用函数模块(可直接引用,无需更改);3.接收串口数据程序的示例。1.接收串口数据程序的编程逻辑示意图:2.与串口有关的函数模块及数组(可直接引用到自己的程序中):main.c#include <stdio.h>#include <string.h>#include &l...
2019-09-17 00:21:49
30875
2
原创 判断点是否在多边形内部的pnpoly算法
如下:int pnpoly(int n, double pos_x, double pos_y, double vert[][2]){ int i, j, c = 0; for (i = 0, j = n - 1; i < n; j = i++) { if (((vert[i][1] > pos_y) != (vert[j][1] > pos_y)) &a...
2019-08-17 16:20:02
3584
原创 c++中fstream用法实例
用来读取txt文档中的指定信息,比如txt中的文档内容如下:#INSPVAXA,COM3,0,54.0,FINESTEERING,2060,199947.720,02008000,471d,14970;INS_SOLUTION_GOOD,INS_RTKFIXED,30.48279810362,114.16884102924,32.9221,-15.0000,-0.0016,-0.0011,0....
2019-07-16 20:05:39
1976
原创 linux学习——ubuntu 16.04官方阿里云下载地址
ubuntu 16.04官方阿里云下载地址为:http://mirrors.aliyun.com/ubuntu-releases/16.04/选择ubuntu-16.04.6-desktop-amd64.iso 版本下载即可。
2019-06-03 09:04:59
6437
1
原创 速腾激光雷达采集到的pacp包转换成pcd格式的文件
1,采集pcap文件通过rsview上位机采集激光雷达的动态数据,得到pcap原始文件。2,ros上回放pcap文件在ros上,修改ros_rslidar中的rs_lidar_16.launch文件,回放pcap,修改内容如下:<param name="pcap" value="your.pcap"/> //your.pcap为第一步采集到的pcap包地址然后,打开一个终端...
2019-05-30 00:05:02
6436
1
转载 标准C++中的string类的用法总结
转自:http://www.cnblogs.com/xFreedom/archive/2011/05/16/2048037.html相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用。但是如果离开了MFC框架,还有没有这样使用起来非常方便的类呢?答案是肯定的。也许有人会说,即使不用MFC框架,也可以想办法使用MFC中的...
2019-03-09 09:33:36
285
转载 C语言 文件
1. 需要了解的概念需要理解的知识点包括:数据流、缓冲区、文件类型、文件存取方式 1.1 数据流:指程序与数据的交互是以流的形式进行的。进行C语言文件的存取时,都会先进行“打开文件”操作,这个操作就是在打开数据流,而“关闭文件”操作就是关闭数据流。1.2 缓冲区(Buffer):指在程序执行时,所提供的额外内存,可用来暂时存放做准备执行的数据。它的设置是为了提高存取...
2019-02-20 13:40:07
342
原创 Robosense 激光雷达slam建图(3):使用hector_slam建图
1,安装hector_slam2,修改tutorial.launch文件cd ~/catkin_ws/src/hector_slam/hector_slam_launch/launchgedit tutorial.launch将原来的文件改为如下:&lt;?xml version="1.0"?&gt;&lt;launch&gt; &lt;arg name=&quo
2018-12-07 17:38:16
10080
13
原创 Robosense 激光雷达slam建图(2):使用pointcloud_to_laserscan包实现三维转二维
在上一篇博文中,我们在linux中测试了Robosense 16线激光雷达。详见:Robosense 16线激光雷达在ROS上进行测试最终我们是要实现slam功能,而slam需要的是2D激光雷达,因此我们首先需要将3D线束转换成2D线束。可以通过pointcloud_to_laserscan包实现。1,安装pointcloud_to_laserscan包cd ~/catkin_ws/src...
2018-12-07 17:11:15
19118
52
原创 Robosense 激光雷达slam建图(1):在ROS上进行测试
手头有一个Robosense 16线激光雷达,按照文档很容易在Windows平台上进行测试。现在在linux上进行下测试。环境:1、Robosense 16线激光雷达;2、笔记本电脑;3、Ubuntu 16.04;4、ROS Kinetic。1、安装雷达驱动下载源码cd ~/catkin_ws/srcgit clone https://github.com/RoboSense-...
2018-12-06 22:28:44
12971
8
转载 ROS之发布传感器数据(LaserScan和PointCloud)
参考:http://wiki.ros.org/cn/navigation/Tutorials/RobotSetup/Sensors在ROS上正确地发布从传感器获取的数据对导航功能包集的安全运行很重要。如果导航功能包集无法从机器人的传感器接收到任何信息,那么它就会盲目行事,最有可能的是发生碰撞。 有许多传感器可用于为导航功能包集提供信息:激光、摄像头、声纳、红外线、碰撞传感器等等。然而,目前导航功...
2018-12-06 14:30:15
4123
1
原创 Rplidar A2 激光雷达使用hector_slam进行建图
手头上有一个Rplidar A2 激光雷达,通过其进行slam建图,如下。环境:1、Rplidar A2 激光雷达;2、笔记本电脑;3、Ubuntu 16.04;4、ROS Kinetic。1、安装雷达驱动sudo apt-get install ros-kinetic-rplidar-ros2、更改com port 权限sudo chmod 666 /dev/ttyUSB0...
2018-12-05 15:57:47
8111
8
原创 C++类模板练习
练习编写了一个vector类模板,代码记录在这里吧。/*test.h*/#pragma once#include <iostream> using namespace std;template <typename T>class Array{public: Array(int m_len); Array(const Array &a); ...
2018-12-03 23:48:33
759
原创 C++中的数组指针和指针数组
using namespace std;int main(){ //a) 一个整型数( An integer) int a; //b) 一个指向整型数的指针( A pointer to an integer) int *b; //c) 一个指向指针的的指针,它指向的指针是指向一个整型数( A pointer to a pointer to an ...
2018-12-01 12:49:22
4471
4
原创 C++ 错误提示:无法将参数1从const char [8] 转换为char *
#include &amp;amp;amp;lt;iostream&amp;amp;amp;gt; using namespace std;void test(char * p){ cout &amp;amp;amp;lt;&amp;amp;amp;lt; p &amp;amp;amp;lt;&amp;amp;amp;lt; endl;}int main(void){ test(&am
2018-12-01 00:28:31
23365
2
原创 Ubuntu 16.04上安装ROS机器人操作系统(kinetic版本)
安装平台Thinkpad T480,原系统win10,在电脑上安装的是双系统Ubuntu16.04,具体安装教程参考我的上一篇博文:https://blog.youkuaiyun.com/geerniya/article/details/831450791,安装源sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -...
2018-10-25 16:19:46
2935
原创 ThinkPad T480笔记本中Win10+Ubuntu16.04双系统安装方法(UEFI引导模式)
该安装教程参考如下博客,一次安装成功:https://blog.youkuaiyun.com/davidhopper/article/details/78884196——————————————————————————分割线——————————————————————————本人有一台ThinkPad T480型笔记本电脑,有一块128G的固态硬盘和512G的机械硬盘,原厂Win10系统安装在固态硬盘上...
2018-10-18 13:21:06
13700
3
转载 用Python进行数据分析之金融和经济数据应用
金融经济数据方面应用Python非常广泛,也可以算是用Python进行数据分析的一个实际应用。数据规整化方面的应用时间序列与截面对齐 在处理金融数据时,最费神的一个问题就是所谓的“数据对齐” (data alignment)问题。两个相关的时间序列的索引可能没有很好的对齐,或两个DataFrame对象可能含有不匹配的列或行。Pandas可以在算术运算中自动对齐数据。在实际工作中,...
2018-06-01 10:25:37
17404
转载 Python数据分析之数据可视化
数据可视化是数据分析很重要的一部分,它能帮助我们更好的从繁杂的数据中更直观更有效的获取信息。 matplotlib是用来创建图表的工具包之一。其目的是为Python构建一个Matlab式的绘图接口,初次接触的时候我就感觉这货跟matlab画的图表很相似。虽说其直接创建的图不是那么的高大上,但是matplotlib确是可视化必须要掌握的基础。matplotlib API入门引入:#...
2018-05-31 22:15:12
32042
1
原创 用python将百度地图API集成到网页中去
我们很多时候需要在网页中插入地图元素,比如.外卖餐厅的地址、楼盘位置等等,这个时候我们可以直接调用百度地图API的接口,将其显示出来。当然,对于指定的位置信息,都可以调用这个接口进行展示。首先给出百度地图API的源码:http://developer.baidu.com/map/jsdemo.htm#a1_21、创建个人秘钥在进行开发之前,首先需要取得百度地图开放平台的 访问应用(AK...
2018-05-31 18:01:39
5179
3
原创 supervisord-monitor集群管理服务器进程
在一台服务器上通过supervisor对该服务器的进程进行管理,很容易实现。网上有很多教程,比如我之前的博客:supervisor的使用教程如果在多台服务器上都部署了supervisor做进程守护,每个supervisor都有各自的web管理,那么如果要管理多台服务器上的程序时,岂不是要登陆多个supervisor页面控制台吗?如果能把它们集合在一个页面上统一进行控制,那该有多好呢?是的,已经...
2018-04-27 14:36:54
4906
转载 nginx配置访问密码,让用户输入用户名密码才能访问
如果我们在 nginx 下搭建了一些站点,但是由于站点内容或者流量的关系,我们并不想让所有人都能正常访问,那么我们可以设置访问认证。只有让用户输入正确的用户名和密码才能正常访问。效果如下:在 nginx 下,提供了 ngx_http_auth_basic_module 模块实现让用户只有输入正确的用户名密码才允许访问web内容。默认情况下,nginx 已经安装了该模块。所以整体的一个过程就...
2018-04-27 10:50:51
2609
原创 Python3 中 configparser 模块解析配置的用法详解
configparser 简介configparser 是 Pyhton 标准库中用来解析配置文件的模块,并且内置方法和字典非常接近。Python2.x 中名为 ConfigParser,3.x 已更名小写,并加入了一些新功能。 配置文件的格式如下:[DEFAULT]ServerAliveInterval = 45Compress...
2018-04-25 17:44:48
6509
转载 supervisor的使用教程
原文链接:http://blog.youkuaiyun.com/xyang81/article/details/51555473Supervisor(http://supervisord.org/)是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统。它可以很方便的监听、启动、停...
2018-04-19 14:46:03
5471
转载 python学习——Python中的logging模块
最近修改了项目里的logging相关功能,用到了python标准库里的logging模块,在此做一些记录。主要是从官方文档和stackoverflow上查询到的一些内容。基本用法下面的代码展示了logging最基本的用法。# -*- coding: utf-8 -*-import loggingimport sys# 获取logger实例,如果参数为空则返回root lo...
2018-04-17 18:38:24
578
原创 django学习——实例说明middleware中间件的用法
关于django的中间件,网上有很多详细的解释,这里我们就不在赘述了。直接给几个链接:https://blog.youkuaiyun.com/alvine008/article/details/50249777 https://www.cnblogs.com/jasonwang-2016/p/5910479.html我这里以实际工作中的某个例子来举例说明它的用法。实例一:在用django做接...
2018-04-16 16:12:56
1211
转载 python学习——Python基础之封装
学习过程中总是听说封装、封装, 各种封装,但是具体是什么意思,怎么实现,有什么好处,还是一头雾水。直到看到这篇文章,详细的讲了python函数、类的封装,并用具体的例子来举例说明,可以说是很好的一篇文章了,特转载过来。原文链接:https://www.cnblogs.com/Michael–chen/p/6740455.html一、什么是封装在程序设计中,封装(Encapsulation)是对具体对
2018-04-13 18:39:11
27017
原创 python学习——CMD中快速执行python文件
有时我们在做一些语法验证时,需要执行一些小的python程序,最方便的做法当然是在各种IDE里执行。但是有时我们需要单独保存该文件,那么如何在CMD中对该文件进行执行呢?很简单,我们通过如下如法即可:python 文件路径比如我们想要执行桌面的test.py文件,直接输入如下语法即可得到执行结果:python C:\Users\Administrator\Desktop\tes...
2018-04-12 09:39:45
4578
原创 Python学习——使用七牛云存储照片等文件
我们在做网站开发时,有时需要用户上传文件,比如说最常见的照片。此时如果我们将文件直接存储在数据库中,一来会使得数据文件过多,二来用户在访问文件时会加剧数据库的负担。为此,我们可以将数据文件存放在网上,在访问文件时直接访问网上文件的链接即可。这里我们采用七牛云来存储文件,我们拿照片类文件来举例。1、注册七牛云账号作为开发者的话,我们是需要注册成为开发者账号的。七牛的官网链接为: http...
2018-04-08 13:04:25
3773
2
转载 django数据模型中关于on_delete的使用
一、外键的删除 关于on_delete的总结1、常见的使用方式(设置为null)class BookModel(models.Model): """ 书籍表 """ book_name = models.CharField(max_length=100, verbose_name='书名'...
2018-04-06 09:00:33
2675
卡尔曼滤波及其在INS-GPS组合导航组合导航中的应用.pdf
2020-05-05
Pandar40_产品手册_禾赛.pdf
2020-04-08
NaveGo a simulation framework for low-cost integrated navigation systems.pdf
2020-04-08
Robosense 16线激光雷达用户手册
2018-12-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人