自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

罗宾酱的博客

工作备忘录。

  • 博客(37)
  • 收藏
  • 关注

原创 ubuntu离线安装nvidia-container-toolkit

这个地址是nvidia在github的软件地址,因为没有我需要的版本号,因此没有使用,放这以供需要的人使用。引用的第一篇文章说顺序不能错,第二篇文章没要求顺序,保险起见,按照第一篇文章顺序安装。这块就是把相关配置写入daemon.json文件,直接在文件中写入也可以。五、设置docker默认使用nvidia-runtime。从上述地地址——进入对应系统——下载自己所需的版本号。最后两个可以选择不下载、不安装。三、运行命令以安装软件。四、查看是否安装成功。六、重启docker。

2025-02-28 16:45:22 1256 1

原创 docker离线安装记录

以上github为数据源地址,在csdn文章的评论区,将所述。这个文章写了如何创建daemon.json文件及其位置。(一)创建json文件。

2025-02-24 14:25:05 441

原创 linix20.04安装nvidia显卡驱动+cuda+cudnn的步骤

https://blog.youkuaiyun.com/qqnl2323223/article/details/143602410

2025-02-14 13:09:33 123

原创 关于QAC代码规范化的一点心得

3. 使用setZero()等有返回值,但不想调用返回值的函数。1. 注意C++类型与ros类型的不同,需要进行强制类型转换。4. 光标指向出现违背问题的地方,精准定位问题;2. 使用resize(a,b)函数。

2024-11-22 14:48:46 278

原创 鱼香ros一键安装

【代码】鱼香ros一键安装。

2024-02-07 15:55:15 716

原创 ros::spin()和ros::spinOnce()

目的:Ros自带的时间同步函数存在着“当一个输入缺失,就无法进入回调函数,也无法处理数据”的缺点,所以决定不再使用系统自带函数;自己手撕一段时间同步的代码;发现:1.关于ros::spin()和ros::spinOnce();在这之前,我一直以为ros::spin()是订阅消息/回调函数的专属语句;ros::spinOnce()是发布函数的专属语句;实际上,这两者都是回调函数的专属语句…回调函数的工作原理:回调函数的作用是接受订阅的消息,但是所接到的消息并不是立刻就被处理,而是必须要等到ros

2021-08-25 17:02:46 1079

转载 点云到平面的映射

#include #include <pcl/io/pcd_io.h>#include <pcl/point_types.h>#include <pcl/ModelCoefficients.h>#include <pcl/filters/project_inliers.h>#include <pcl/visualization/pcl_visualizer.h>using namespace pcl;using namespace s

2021-08-19 15:29:52 698

转载 点云处理方法

https://blog.youkuaiyun.com/xiaoxiaowenqiang/article/details/79873816所有的内容都在:https://github.com/Ewenwan/MVision/tree/master/PCL_APP/Basic/Segmentation点云分割是根据空间,几何和纹理等特征对点云进行划分,使得同一划分内的点云拥有相似的特征,点云的有效分割往往是许多应用的前提,例如逆向工作,CAD领域对零件的不同扫描表面进行分割,然后才能更好的进行空洞修复曲面重建,特征描

2021-08-18 11:00:46 3573

原创 点是否位于区域内的位置判断

文章目录前言一、“引射线法”是什么?二、实现1.方法一2.方法二总结前言目的:本文主要记录如何判断点是否位于ROI区域内部。常见判断方法:面积和判断法;夹角和判断法;凸多边形判断法;引射线法;各判断方法适用性:面积和判断法、夹角和判断法:【优势】实现较为简单,效率高,不需要循环所有的roi的边,主要参与计算的是多边形的几个顶点;【劣势】需要多边形是规则的直边,对弧形的多边形则无法处理;凸多边形判断法:【优势】实现不难,就是逆时针判断目标点是否一直在各个相邻点形成的边的左侧.

2021-07-26 16:11:23 3827

原创 坐标旋转实现

文章目录前言一、点绕点旋转1.二维平面2.三维平面(点绕轴旋转)1.二维平面2.三维平面总结前言本文旨在记录旋转的问题,旋转存在两种情况:1.点绕点旋转;2.平面绕轴旋转;区别:点绕轴旋转:坐标系不动,点动;平面绕轴旋转:点不动,坐标系动;两者一般是变换矩阵中内部符号的变化,极易混淆。可参考:1.https://www.cnblogs.com/kljfdsa/p/9084598.html2.全篇可参考:https://blog.youkuaiyun.com/hbsyaaa/article/.

2021-07-21 16:08:12 2217 1

原创 Rviz——Marker

一个立方体模拟目标,添加文字描述位置、速度,目标航向的例子;void SubscribeAndPublish::pub_radarlist_func(){ int R_col=R.cols(); visualization_msgs::MarkerArray A; A.markers.resize(R_col);//marker矩阵的大小 visualization_msgs::MarkerArray A_Text; A_Text.markers.resi

2021-05-19 09:15:21 1265

转载 Ros发布图像/视频流消息

目的:Opencv处理后的图像,将其转变为Ros消息发布出来,就可以在Rviz中Add话题从而显示了。实现:1 创建一个发布者节点不断发布图像1.1 程序 #include <ros/ros.h> #include <image_transport/image_transport.h> #include <opencv2/highgui/highgui.hpp> #include <cv_bridge/cv_bridge.h>

2021-05-17 10:38:17 2650

原创 时间同步及在回调函数中发布ROS消息

1、五种时间同步方法(粗略同步)本文介绍的是时间粗略同步,时间精准同步的函数是:ExactTime,将ApproximateTime换成ExactTime即可;#include <ros/ros.h>#include <message_filters/subscriber.h>#include <message_filters/time_synchronizer.h> //法1的头文件#include <message_filt

2021-05-12 18:52:34 2462 9

原创 一、东西

目录1 包含其他人定义的msg2 查看及杀死线程3 … …正文1 包含其他人定义的msg情况1: 你的sub节点中,需要接收其他节点发布的ROS消息,用在

2021-05-04 15:30:13 202

转载 resize()和reserve()

首先分清楚两个概念:1.capacity:该值在容器初始化时赋值,指的是容器能够容纳的最大的元素的个数。还不能通过下标等访问,因为此时容器中还没有创建任何对象。2.size:指的是此时容器中实际的元素个数。可以通过下标访问0-(size-1)范围内的对象。就比如说一个瓶子的容量是600ml,意思是它最多可以装600ml,而不是说现在瓶子里就有600ml,这里的600ml就相当于capacity;而说现在瓶子的size为300ml,就是说它真的装有300ml。那么就可以分清楚resize和reserv

2021-03-26 16:57:00 638

原创 c++文件输入输出操作

在进行编程时,不可避免的要将程序运算结果输出到文件中,或者将文件中的数据读取到程序中,网上好多这个类继承那个类什么什么的,我也看不懂,所以总结、记录一下简单又实用的方法。《一》在介绍这个方法之前,先说一下string和int/double…类型的数据转换1、包含头文件—— #include sstream2、关键词:stringstrem3、使用:(1)string转intint a,b;string s(" 123 456");stringstream ss; //stringstre

2021-03-25 15:18:47 631

转载 Ubuntu上Qt安装以及配置完整步骤

(1)安装 Qt:第一步:到官网http://download.qt.io/archive/qt/下载 Qt 安装包,此处本人安装的是 qt-opensource-linux-x64-5.7.0.run;第二步:打开终端,输入命令:“sudo chmod -R 777 qtopensource-linux-x64-5.7.0.run”,赋予安装包权限;第三步:开始安装 Qt,输入命令“./qt-opensource-linux-x64-5.7.0.run”或者“sudo ./qt-opensource

2021-03-02 15:43:51 6691 2

原创 scp的使用

一 在没有网络下使用网线实现两台电脑的数据交互1 准备工作(1)假设电脑A 为远程电脑,电脑B 为本地电脑;(2)使用网线将两台linux系统的电脑A 和电脑B 连接起来;(3)设置两个的以太网的ip地址,假设电脑A 的ip为10.2.13.10,电脑B 的ip 为10.2.13.11(可随意设置,只需要保证前三个数值相同即可);(4)在电脑B 中打开终端terminal输入: ping 10.2.13.10 查看是否有效连接;如可以ping 通,那么进行步骤22 scp传输工作1、假设

2021-02-25 15:30:57 1212

原创 最近邻目标关联算法

1 最近邻目标关联算法前言:就我所知,关联或匹配方法(如:匈牙利算法、最近邻目标关联算法、回溯法等)都是以获取两者之间的距离或其他标准(如网上回溯法的例子大部分是给工人分配工作,要求完成时间最少,那么这个标准就是时间,但是时间也可以看作是一种距离)为前提的,这个距离的获取可以是一些几何距离计算方法(如:欧式距离、标准欧式距离、自定义加权欧式距离、马氏距离等)、IOU等。只不过有的关联或匹配方法只需要求解两两之间的距离就可以了,如回溯法和最近邻目标关联算法,只需要知道每个工人完成某项工作所需的时间或者两

2021-02-19 15:08:07 4108 2

原创 关于联邦滤波器

将联邦滤波器整理如下,但因为可参考的材料太少,所以也并不一定完全正确,仅供参考。目录: 联邦滤波器 关键技术 一般结构 工作流程1 联邦滤波器联邦滤波器:是一种两级滤波器,由1个主滤波器和n个子滤波器组成,子滤波器之间是平行结构。主滤波器功能:时间更新;(n+1)个滤波器的结果融合;子滤波器功能:独立的进行时间更新和状态更新/量测更新(可以选择不同的滤波算法);2 关键技术联邦滤波器的关键技术:方差上界消除相关;统一的信息分配原则;方差上界消除技术:首先假设子滤波器和主滤波

2021-02-18 16:14:16 8083 22

原创 多传感器系统的信息融合滤波

1.信息融合信息融合: 联合标定 [ 时间同步( 硬同步、软同步 ( 精准、大致 ) )、空间同步 ( 旋转、平移矩阵 ) ] 目标匹配/关联 [ 相似性度量 / 距离计算( 标准欧式距离等 )、匹配 / 关联方法 ( 匈牙利算法 / 回溯法 / 指派法等 ) ] 目标状态估计 [ 多传感器数据加权融合 ( 按矩阵、按对角矩、按标量 ) ( 常用于实时多传感器观测数据 )、预测和观测状态融合 ( KF/EKF/UKF ) ( 常用于上一帧和现在帧的处理 ) ]...

2021-02-10 14:47:07 954 2

原创 如果使用复制过来的pkg包

在复制或者下载了程序时,src下的CmakeLists.txt是复制不了的,那么该如何处理呢?创建工作空间及其下的: src mkdir -p ~/fanmin_ws(可自定义工作空间)/src #递归创建目录进入到工作空间中: cd ~/catkin_ws #切换至创建的工作空间中编译: catkin_make #此时src内部生成CmakeLists.txt将下载或者复制过来的pkg放到src里边,重新 catkin_

2020-12-28 10:50:01 253

转载 Linux常用命令

参考:https://blog.youkuaiyun.com/weixin_44985880/article/details/108399357https://www.runoob.com/linux/linux-command-manual.html本文主要记录一些常用的Linux命令。1、系统信息显示arch 显示机器的处理器架构uname 显示当前操作系统信息 uname -a 显示全部信息,可采用uname --help查看每个单独功能如何实现,显示如下: -a, --all

2020-10-28 16:06:05 121 2

原创 相似度判断及C++实现

一、 欧式距离欧氏距离是最常见的距离度量,衡量的是多维空间中点之间的绝对距离。1.手动输入数组中数据个数,保证了数组中数据数量相同,所以没有再次进行数量判断,在实际应用时,如果是读取的数据,则应该进行数量是否相等的判断。2.定义一个距离判断的类,在类的构造函数中调用距离计算的成员函数,#include<iostream>#include<cmath>usi......

2020-10-26 09:11:55 1160 1

转载 Eigen Matrix删除矩阵某一行或某一列

删除矩阵某一行:void RemoveRow(Eigen::Matrix3Xd& matrix, unsigned int rowToRemove) { unsigned int numRows = matrix.rows() - 1; unsigned int numCols = matrix.cols(); if( rowToRemove < numRows ) { matrix.block(rowToRemove,0,numRows-rowToRemove,nu

2020-10-05 09:53:42 2899

原创 角点检测和亚像素检测

pro文件:INCLUDEPATH += /usr/local/include \ /usr/local/include/opencv \ /usr/local/include/opencv2LIBS += /usr/local/lib/libopencv_highgui.so \ /usr/local/lib/libopencv_core.so \ /usr/local/lib/libopencv_im

2020-07-09 09:33:37 331

原创 Autoware的安装及使用

挖一个安装及使用autoware的坑,最近来填。

2020-04-29 09:50:07 7436 22

原创 回溯法

Time : 2020.01.16这是一篇关于“回溯法”的文章。/************************************************************************** 功能: 将n个作业分配给n个人完成,使得总花费时间最短(回溯法)******************************************************...

2020-01-17 19:37:24 189

原创 匈牙利算法

Time:2020.01.16这是一篇以“工作记录——2”为基础的,实现匈牙利算法的工作记录。程序是参照二分图匹配实现的,他的前提就是已经确定两个集合之间的吸引情况,即0或者1。但是我通过几何距离算法得到的是两个集合之间的距离,所以我主观的将最小的和次之的数设置为1,其余的设置为0。总感觉这种方法带入了主观判断,有一些缺陷,因此接下来要考虑对数组采用“指派法”或者“回溯法”实现。#inc...

2020-01-16 15:56:49 243 1

原创 数据的最小值和次小值

Time:2020.01.16PART One这里首先定义了一个5*5的数组,目的是求解数组每行的最小的和次之的两个数据,该程序实现了矩阵每行最小的两个值的程序。目的:为了求矩阵中每行最小的和次之的两个数据的位置,考虑先找到目标数据,然后对其定位。int main() { nx=5; ny=5; // int b=100,a=30; vector...

2020-01-16 14:31:27 1208

转载 ROS Marker工具的使用

上海硅步ROS连载系列43期 RViz工具使用实操https://mp.weixin.qq.com/s?__biz=MzA5NjkyMzI2OA==&mid=2651197718&idx=2&sn=8d070f799a1af5e61fe733d4b027c89f&chksm=8b5a0afdbc2d83eb769a9940cc75cb659caae47b721a2...

2020-01-02 11:17:47 3027 5

原创 launch文件启动多个节点

当编写的程序中存在多个节点时,每次都使用“rosrun 功能包名 节点名”一个个开启节点是很麻烦的,因此开始学习如何采用xxx.launch文件启动多个节点,并记录下在编写的过程中踩过的雷。1 一个简单的launch文件1.1 将 launch文件放在哪里?在“功能包名”(我用catkin_create_pkg创建的包名为package) 目录下,创建**.launch文件(我是为了启动im...

2019-12-25 10:30:03 5121 5

原创 ROS 创建及使用msg和srv(二)

ROS 创建及使用msg和srv(一)介绍了如何创建和编译msg及srv文件,接下来将介绍如何使用。1. 使用新建的msg上一章work/src/myros/msg目录下建立了num.msg文件,现在要使用num.msg创建两个节点,在myros/src目录下新建exa1.cpp和exa2.cpp,同时调用num.msg。1.1 exa1.cpp:#include "ros/ros.h"...

2019-12-13 11:11:53 634

原创 ROS 创建及使用msg和srv(一)

1. 什么是msg文件和srv文件1.1 msg文件msg是一个简单的txt文件,每行定义一个信息域。其格式为:类型 名称类型 包括:int8, int16, int32, int64 (plus uint*)float32, float64stringtime, durationother msg files可变长度array[ ] and 固定长度array[C]Head...

2019-12-11 18:33:03 675 4

转载 ROS发布及订阅消息简单实践(二)

一.在catkin_ws/src/pkg_name/src下创建talker.cpp和listener.cpp.分别编辑三个文件:1.你创建的publisher(talker.cpp):#include#include<ros/ros.h>#include<std_msgs/String.h>int main(int argc,char** argv){ros...

2019-12-10 19:39:01 593 1

原创 ROS发布及订阅消息简单实践(一)

ROS发布及订阅消息简单实践为了便于理解ROS消息发布是如何实现的,结合上一章的实现流程,在此实现一下。1. 创建catkin_ws工作空间2. 在工作空间下建立src目录1.2 可通过递归方式创建:mkdir -p ~/catkin_ws/src3. 在src目录下建立包名目录首先,进入到src目录: cd ~/catkin_ws/src在src目录下创建包mypackag...

2019-12-10 10:59:37 942 4

转载 ROS 发布及订阅消息

ROS之 发布及订阅消息大目标:学会使用ROS发布及订阅消息。小目标:(1)CMakeLists.txt的建立(2)package.xml的建立原因:在理解、实现 ROS中发布及订阅消息程序时,发现头文件单纯包含#include<ros/ros.h>是不可行的,通过查阅资料发现需要首先包含CMakeLists.txt及package.xml。1. 安装和配置ROS环境按...

2019-12-09 16:52:14 1486

空空如也

空空如也

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

TA关注的人

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