自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(110)
  • 资源 (14)
  • 收藏
  • 关注

原创 ros学习笔记

目录1.如何直接添加源:2.如何git clone 一个功能包后编译这个功能包3.如何创建工作空间4.如何创建功能包5.ros工作空间介绍6.创建了功能包,里面会包含一个CMakeLists.txt文件和package.xml7.如何用.launch 同时运行多个节点8.安装vim 应用9.节点查看 1.如何直接添加源: 一般在运行一...

2018-05-13 19:55:18 3420

原创 realsense d455 运行vins-mono,vins-rgbd

vins-rgb方法相同,精度也差不多,rgbd有场景图(不要关pose_graph,关了只有vins_estimator),在vins-Mono基础上修改了,rgbd对特征点深度校验,在feature_manger.cpp的深度三角化中,optimazation将深度校验的进行const。插上设备输入0,读取内参,分辨率88(640*480 rgb8)修改realsense_color_config.yaml。读取realsense的内外参,也可以自己标定。修改rs_camera.launch 文件。

2024-02-28 17:15:28 355

原创 slam 点云退化

参考:论文:由的作者发表在2016年上的一篇关于优化问题的退化处理,该思想在LOAM源码中也有体现(源码的话我看的是的1026行开始是退化的处理)。在三维点云定位时,需要根据点云的情况进行协方差调整,考虑是否将点云融合状态进行更新。二维激光雷达的约束为两个方向,为点云最大梯度方向,如果想通过雷达进行定位,需要保证点云的主要分布方向为2个,三维定位添加了z方向的约束,如果机器在平面运动则需考虑点云退化方向是否为z方向,如果不是则此时点云对位姿的约束存在错误方向。

2023-09-18 10:31:31 755 5

原创 slam git地址

一、Geometric SLAM(23 项)这一类是传统的基于特征点、直接法或半直接法的几何 SLAM。1. PTAM论文:Klein G, Murray D. Parallel tracking and mapping for small AR workspaces[C]//Mixed and Augmented Reality, 2007. ISMAR 2007. 6th IEEE and ACM International Symposium on. IEEE, 2007: 225-234.

2023-09-13 19:06:38 459

原创 fast-lio2添加wheel在发散时轨迹约束

fast-lio2中状态量为pos rot offsetR offsetT vel bg ba g,速度的观测量为x方向,imu坐标系为右前上,将轮速计转化到imu坐标系为y方向,后轮驱动,imu在前方为,Imu的实际速度与车的长度有关。fast-lio2主要算法为迭代误差卡尔曼滤波算法,imu作为预测,点云更新,当点云发散时输出位姿异常,漂移很大,后端在融合出现崩溃情况,加入轮速计约束发散时位姿。左边为未添加轮速计的轨迹,中间为实际轨迹,右侧为添加轮子后的轨迹。1.订阅wheel话题。

2023-09-13 14:19:04 400

原创 固态激光雷达zvision_lidar lio-sam与fast-lio2对比

机械式激光雷达,可以根据ring提取边和面特征,固态式激光雷达实现特征检查需要的工作比较多,可以将降采样的都做为面特征进行处理。lio-sam将结果反馈到Imu预积分中,如果特征匹配较差会发散,导致imu预积分也发散。总结:fast-lio在固态激光雷达处理上更快,鲁棒性更好。修改launch不需要运行featureExtration。在预处理函数中添加zvison_lidar处理函数。一、imageProjection.cpp。二、mapOptmization.cpp。

2023-08-10 10:06:15 567

原创 Linux 终端rostopic pub消息

ros终端

2023-06-21 17:27:54 234

原创 opencv QR 二维码识别

【代码】opencv QR 二维码识别。

2022-12-02 15:45:15 456 1

原创 linxu c++ 压缩/解压缩 zip

运行脚本build.sh,在build下会生成ziplib库,运行程序时引用,也可直接装入系统中。c++ linux压缩文件及解压缩,用到的库为zip。

2022-12-02 15:24:36 2598

原创 linxu c++ md5校验

【代码】linxu c++ md5校验。

2022-12-02 15:14:04 344

原创 linux c++删除文件夹

在C++编程中有时需要删除一些文件或者文件夹。

2022-12-02 15:11:26 1135

原创 c++文件简单加密

简单加密方式为将要加密的文件,通过设置的密码加和计算一个值,将这个值与原始文件相加,并将初始的密码存入文件的前十个字节。解密为读取文件的前十个字节,加和,将加密值减和写入文件。

2022-11-30 15:50:41 1691

原创 linux opencv flann 与pcl flann冲突

解决方法:将opencv的flann名重命名为flann2,mv /usr/include/opencv2/flann /usr/include/opencv2/flann2。2.修改flann2/miniflann.hpp。1.需改features2d.hpp中。3.修改flann.hpp。

2022-11-18 17:08:36 886

原创 apritag 定位记录 C++ opencv 3.4.5

AprilTag是一种视觉基准系统,类似的视觉基准标签还有:ArUco、ARTag、TopoTag等。而AprilTag因其对旋转、光照、模糊具有良好的鲁棒性,因此被广泛应用于目标跟踪、室内定位、增强现实等领域。本文主要展示使用AprilTag标签,分别获取AprilTag标签在相机坐标系下和世界坐标系下位置。生成AprilTag不同家族标签图像教程。

2022-11-17 11:53:43 4331 2

原创 通讯加密base64简单用法

编译:gcc main1.c base64.h base64.c -o main1。

2022-10-12 16:04:04 330

原创 vins Freatrack遮罩c++ 实现

vins featrue track 实现

2022-09-16 16:05:00 891

原创 C++从文件读取配置参数

参数更改较频繁,若将参数写入到程序内,每次更改都需编译验证,为减少编译可在程序初始化过程中,从文件读取参数,可进行调参。从a.yaml文件读取数据,若不存在返回第三个默认值。

2022-09-15 13:39:36 1184

原创 Linux 下轻量级显示程序imgui+ros

imgui+ros

2022-09-14 15:49:32 1463

原创 Linux nanomsg tcp sub pub

nanomsg例子,通讯封装ros sub pub模式

2022-09-14 15:25:27 745

原创 ros spinonce机制

ros spinonce 回调函数

2022-08-18 19:45:11 811

原创 VSLAM fast Tomas角点检测

vslam前端角点检测对比

2022-08-08 14:34:10 348

原创 ros图片转bag包

image转bag

2022-08-08 14:32:32 1255

原创 cmake记录

CMAKE

2022-06-08 11:31:40 195

原创 脚本bash

脚本测试

2022-06-08 10:16:34 337

原创 C++记录

C++简单记录

2022-06-07 20:04:04 148

原创 U盘格式化

fdisk -l #查看盘符df -h #查看盘符选取操作的盘,操作系统会根据外设的情况挂载硬盘 /dev/sda /dev/sdb /dev/sdc ......../dev/sdb1后面的数字表示此盘的分区号#首先对盘进行操作fdisk /dev/sdbm #查看命令p #查看盘符分区d #删除已有分区n #新建分区t #改盘符格式标志 输入l可以查看编号如83为linux系统w #将更改写入硬件格式化u盘mkfs.ext4 /dev/sdb1 #..

2022-05-11 17:54:14 735

原创 TX2 安装ros-melodic opencv3.4.5 ceres1.14.0 Eigen3.3.9 gtsam cv_bridge

#!/bin/bash1.安装rossudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBA

2022-04-20 20:20:17 2584

原创 VINS记录

euroc.launch<launch> <arg name="config_path" default = "$(find feature_tracker)/../config/euroc/euroc_config.yaml" /> <arg name="vins_path" default = "$(find feature_tracker)/../config/../" /> <node name="feature_tra

2022-03-24 18:53:18 414

原创 从当前年月日+天秒到1970年1月1日0点0分0秒之间的秒数

time_daysec=GetSecNumBetweenTwoYear(Time_frame_p->ucYear,1970,Time_frame_p->ucMonth,Time_frame_p->ucDay)+Time_frame_p->MsOneDay/1000;/***********************************************************************功能描述: 计算任意两年之间的秒数*输入参数: iFirstYea.

2022-03-24 18:23:16 445

原创 uint8_t/unsigned char 与string互转

一、uint8_t转string#include <iostream>using namespace std;int main() { typedef uint8_t U8; U8 Data[] = { 0x48, 0x65, 0x6C, 0x6C, 0x6F,0x2E }; std::string temp; for (uint8_t i : Data) { temp += i;

2022-03-24 18:18:04 4045

原创 CRC32校验

CRC有不同的算法,共21种,实现CRC校验有两种方式:查表与直接计算直接计算是根据多项式方程进行,直接计算。查表是将上述结果保存,进行相应计算。一、直接计算GitHub - whik/crc-lib-c: 基于C语言的CRC校验库,包括常用的21个CRC参数模型实现crcLib.h#ifndef __CRCLIB_H__#define __CRCLIB_H__#include "stdint.h"uint8_t crc4_itu(uint8_t *data, uint1

2022-03-24 18:01:18 4545 2

原创 TX2 gpio c++ ros读取通过文件方式读取

1.TX2 gpio图2.sysfs gpio值如GPIO26,值为gpio388cd /sys/class/gpio/echo 388 > export #使能端口cd gpio388cat direction #方向cat value #输出值3.通过c++实现#include <iostream>#include <fstream>using namespace std;int main(int argc,char** ar.

2022-03-16 18:01:15 2093

原创 C++ log4cpp(tx2)

一、log4cpp概述 Log4cpp是一个开源的C++类库,它提供了C++程序中使用日志和跟踪调试的功能,它的优点如下:1.1提供应用程序运行上下文,方便跟踪调试;1.2可扩展的、多种方式记录日志,包括命令行、文件、回卷文件、内存、syslog服务器、Win事件日志等;1.3 可以动态控制日志记录级别,在效率和功能中进行调整;1.4 所有配置可以通过配置文件进行动态调整;1.5多语言支持,包括Java(log4j),C++(log4cpp、log4cplus),C(log4c),p...

2022-03-09 17:21:28 786

原创 报错解决:Unable to create temporary cache file /home/ubuntu/.ros/.rospack_cache.Qku9tA:Permission denied

1.修改文件所属权限报错解决:Unable to create temporary cache file /home/ubuntu/.ros/.rospack_cache.Qku9tA:Permission denied_JasonLi的博客-CSDN博客https://blog.csdn.net/weixin_45929038/article/details/116327264原因分析:根据提示 Permission denied 可知此问题的本质是权限问题,再查看前面报错目录为 ~/.ros ,

2022-02-10 16:58:57 1058

原创 ubuntu root开机自登录 与 ros 节点自启

ubuntu开机自动登录root - 简书ROS节点开机自启动 - 古月居

2022-02-07 10:36:14 768

原创 linux ros USB阻塞与非阻塞记录

一、USB口满足可同时读写,符号标识O_RDWR : 可读可写O_NDELAY :这个程序不关心DCD信号线所处的状态,端口的另一端是否激活或者停止。如果用户不指定了这个标志,则进程将会一直处在睡眠状态,直到DCD信号线被激活。O_NOCTTY :表示打开的是一个终端设备,程序不会成为该端口的控制终端。如果不使用此标志,任务一个输入(eg:键盘中止信号等)都将影响进程。O_NONBLOCK :阻塞与非阻塞方式标识符阻塞方式-read- 实现: 在阻塞型驱动程序中,r...

2022-01-13 11:18:16 1182

原创 ros uint8 send

#include "ros/ros.h" //包含了使用ROS节点的必要文件#include "std_msgs/String.h" //包含了使用的数据类型#include "std_msgs/UInt8MultiArray.h"#include "std_msgs/MultiArrayDimension.h"#include <sstream>#include <iostream>void float2u8Arry(uint8_t *u8Arry, f.

2022-01-04 15:29:50 1277

原创 linux 文件权限

linux下文件权限更改_技术小白-CSDN博客_linux 修改文件权限linux修改文件或目录的所有者(chown)和用户组_华的专栏-CSDN博客_chown修改文件所有者-rw-r--r-- 分别代表:user的权限rw,group的权限r,other权限:r权限分为 r读 w写 x执行nvidia:文件所属用户nvidia:文件所属组1.修改文件权限:1.1通过缩写修改u g o a:user,group,other,all(所有人)+ - =:添加,删..

2021-12-22 14:56:22 189

原创 多传感器融合记录

多传感器信息融合的典型应用_多传感器融合中的时间硬同步1-论文阅读_weixin_39606911的博客-CSDN博客gps/imu融合(卡尔曼滤波)学习笔记_归去来兮哈的博客-CSDN博客_gps imu融合定位算法

2021-12-14 16:48:12 2703

原创 ros相机广播订阅

1.广播1.usb读取摄像头,并广播出去catkin_create_pkg camera_pub cv_bridge roscpp sensor_msgs image_transport std_msgscamera_pub.cpp注意:此文件为了方便更改相机串口号设置的为launch文件读设备号,如果不需要,可将下面cv::VideoCapture cap(usb_number);将usb_number设为需要的值。#include <ros/ros.h>#in

2021-12-09 19:42:05 868

实验10 输入捕获实验.zip

STM32F103ZET6 两定时器4通道捕获PWM,库函数版本,定时器捕获8路PWM信号,实验了6路,对应TIM4-PB6789,TIM3-PC6789(重映射),可实现8路PWM信号采集

2020-06-01

STM32F103ZET6 两定时器两通道CH1与CH2,寄存器版本,定时器捕获2路PWM信号

STM32F103ZET6 两定时器两通道CH1与CH2,寄存器版本,定时器捕获2路PWM信号

2020-06-01

MFC学习案例SaleSystem.zip

包含登录页面,密码输入,库存管理,库存添加、库存删除.

2020-04-17

20200415tcpclient.zip

TCP客户端配合STM32+ESP8266 WIFI模块,可实现1/2/3/4/5/6传输形式为ASCII码,

2020-04-16

20200409直流+wifi.zip

使用STM32F103精英版配合ESP8266+WIFI模块实现数据接收与显示,配合MFC或者网络调试助手实现远程遥控,有四个高低电信号和2个PWM信号,

2020-04-16

网络调试助手4.3NetAssist.exe

网络调试助手V4.3,连接网络TCP客户端,服务端,可进行STM32网络模块测试

2020-04-13

stm32f7使用手册

stm32f7使用手册

2020-04-13

11stm32中文手册.zip

STM32F1使用手册

2020-04-13

ADAMS_MATLAB_Simulation.rar

matlab 与adams联合仿真一些文档教程总结,哪里可以设置0积分啊

2019-10-12

MATLAB2015+ADAMS2013联合仿真motion.docx

matlab adams联合仿真参考,百度上有免费下载

2019-10-12

stm32测试ps2遥控器读按键ID

通过stm32读取按键值,需要lcd 或者led显示屏,同时可读遥杆值,模式分为数字值和模拟值

2018-04-12

stm32-can-485-ps2(sony遥控器)

通过遥控器远程遥控can和485的小车,需要4个带can的驱动器,4个伺服电机,4个轮毂电机带can的,将遥控器分别接电源和地,其余四个接入pb12.pb13.pb14.b15,即可完成控制,轮毂电机速度模式已完成,位置控制

2018-04-12

linux多串口通信,usb-can控制八个电机,usb-485(胜为)读编码器

通过linux串口usb-can发送指令控制电机,通过usb-485去编码器,usb-can有串口协议帧头0x00 0xe0帧尾0x55

2018-04-12

stm32+can+485

通过stm32can总线控制4个转向电机4个轮毂电机+485读取4个modbus-64-256编码器

2018-04-12

空空如也

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

TA关注的人

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