能力说明:
了解Python语言的基本特性、编程环境的搭建、语法基础、算法基础等,了解Python的基本数据结构,对Python的网络编程与Web开发技术具备初步的知识,了解常用开发框架的基本特性,以及Python爬虫的基础知识。
能力说明:
掌握计算机基础知识,初步了解Linux系统特性、安装步骤以及基本命令和操作;具备计算机基础网络知识与数据通信基础知识。
暂时未有相关云产品技术能力~
暂无个人介绍
DefaultRobotHWSim::initSim函数详解
gazebo里 关节是如何动起来的
ROS 终端 常用指令
ros_control 脱胎于pr2 的 硬件封装层部分 pr2_mechanism,经过pal-robotics 和 hidof 两个公司的工程师进行了改写,变得适用于所有机器人的硬件封装库,负责统一管理硬件驱动与传感器底层细节,处理异常,分配资源,向上提供统一接口。作为一个end2end的ROS 机器人系统集成解决方案
在计算机领域,插件是很常用的术语。插件是一种模块化的软件,可以在现有应用软件的基础上增加一些新的功能。
在hector_quadrotor-kinetic-devel里的hector_quadrotor_demo功能包,该功能包应该是可以在gazebo中仿真无人机飞行的。里面的launch文件夹里的launch文件应该可以直接执行相应功能。
## 仿真步骤 - 配置机器人模型 - 创建仿真环境 - 开始仿真
ros中与gazebo仿真关系很大的功能包 ros_control功能包 也是ros_control软件框架
ArbotiX是一款控制电机、舵机的硬件控制板 提供了相应的ROS功能包 提供了一个差速控制器,通过接收速度控制指令,更新机器人的里程计状态
URDF 模型存在问题 - 模型冗长,重复内容过多 - 参数修改麻烦,不便于二次开发 - 没有参数计算功能 # xacro模型文件 URDF模型的进化版本---xacro模型文件
ROS学习不必须非要机器人硬件平台,需要了解如何创建机器人的模型 如何使用ROS中的URDF工具创建机器人的模型
国际标准化组织(ISO) 机器人定义: 1、机器人的动作机构具有类似于人或其它生物体的某些器官(肢体、感受等)的功能 2、机器人具有通用性,工作种类多样,动作程序灵活易变; 3、机器人具有不同程度的智能性,如记忆、感知、推理、决策、学习等; 4、机器人具有独立性,完整的机器人系统在工作中可以不依赖于人的干预。
topic是ROS中的一种单向的异步通信方式。Service是一种请求-反馈的通信机制。请求的一方通常被称为客户端,提供服务的一方叫做服 务器端。 Service机制相比于Topic的不同之处在于: 1. 消息的传输是双向的,有反馈的,而不是单一的流向。 2. 消息往往不会以固定频率传输,不连续,而是在需要时才会向服务器发起请求。
Topic是ROS里一种异步通信的模型,,一般是节点间分工明确,有的只负责发送,有的只负责 接收处理。对于绝大多数的机器人应用场景,比如传感器数据收发,速度控制指令的收发, Topic模型是最适合的通信方式。
计算机程序在存储数据时必须跟踪3种属性 1、信息存储在何处 2、存储的值是多少 3、存储的信息是什么类型 指针是一个变量,其存储的是值的地址,而不是值本身。 获取常规变量地址 使用&——地址运算符
之前做串口解析,CRC校验一直用和校验,就是吧各个位加在一起,新来一个串口协议,是CRC-16 MODBUS的形式校验,不会呀,从网上找了找资源,没有找到源码,都要下载,分享出来。
opencv调用yolov3模型进行深度学习目标检测,以实例进行代码详解
训练集制作:以指定帧间隔截取视频为图片,并保存指定路径及名称
批量将yolo-v3检测结果在原图上画矩形框显示
yolo-v3模型测试及测试结果转化
用darknet框架中的YOLOv3对自己的数据集进行训练和预测
预积分量约束相邻两帧的状态量(位置、速度、姿态),同时考虑到IMU的零偏的性质,即短时间内变换速率比较慢,因此可以认为两帧之间的零偏不变,也就是还可以约束两帧的零偏变换。 同时,在slam问题中,IMU预积分通常会和其它传感器的约束一起构建一个优化问题 无论是VIO还是LIO,IMU和其它传感器的标定结果往往对最终的里程记和建图性能有着显著的影响。同样,在多传感器融合算法中,传感器之间的标定结果的精度对多传感器融合的效果也有着非常大的影响。 在lidar-imu融合的算法中,lidar和IMU之间的外参标定非常重要,在一些数据集上往往有着经过良好标定的结果,然而,绝大多数情况下,或者实际
STM32F4 的定时器功能十分强大,有TIME1 和 TIME8 等高级定时器,也有 TIME2-TIME5,TIM9-TIM14 等通用定时器,还有 TIME6 和 TIME7 等基本定时器,总共达 14 个定时器之多。
脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制。 PWM是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。
- 介绍 Blackfly S相机使用的色彩校正矩阵(CCM,color correction matrix) - 并展示了如何计算出自定义的CCM。 - 通过代码进行颜色校正和自定义CCM配置
白平衡是图像基础颜色强度(红色、绿色和蓝色通道)的调整。 白平衡也称为色彩平衡或灰平衡,用于根据各种照明条件改变图像的整体表现,以反映我们眼睛所看到的内容。 照明条件在图像的表现中起着重要作用。白平衡缩放图像中的三个颜色分量 (RGB) 以适应照明条件。
自动曝光通过调整增益和曝光时间来优化图像的亮度。 自动曝光在相机中进行的话则减少了CPU后期的处理运算。
希尔排序可以看作是分组排序的排序方法。把全部元素分成几组(等距元素分到一组),在每一组内进行直接插入排序。然后继续减少间距,形成新的分组,进行排序,直到间距为1时停止。
快速排序是冒泡排序的改进算法,主要思想是在待排序列中取一个元素(通常为第一个)作为参照,将序列分为两个子序列,比参照值小的元素和比参照值大的元素各自组成一个子序列。每趟排序会使参照元素归位,并得到两个子序列。在子序列中继续执行该步骤,直到子序列的长度为0或1.
索引查找主要分为基本索引查找和分块查找,核心思想是对于无序的数据集合,先建立索引表,使得索引表有序或分块有序,结合顺序查找与索引查找的方法,完成查找。
由于在插入排序的过程中,已经生成了一个(排好的元素组成)有序数列。所以插入待排元素时可以使用折半查找的方式,更快速的确定新元素的位置,当元素个数较多时,折半插入排序优于直接插入排序。
查找也被称为检索,算法的主要目的是在某种数据结构中,找出满足给定条件的元素(以等值匹配为例)。如果找打满足条件的元素,则代表查找成功,否则查找失败。 在进行查找时,对于不同的数据结构以及元素集合状态,会有相对匹配的算法,在使用时也需要注意算法的前置条件。在元素查找相关文章中只讨论数据元素只有一个数据项的情况,即关键字(key)就是对应数据元素的值,对应到具体的数据结构,可以理解为一维数组。
选择排序的核心思想是:每一趟从无序区中选出关键字最小的元素,按顺序放在有序区的最后,新生成的有序区元素个数加1,无序区元素个数减1,知道全部排完为止。
查找也被称为检索,算法的主要目的是在某种数据结构中,找出满足给定条件的元素(以等值匹配为例)。如果找打满足条件的元素,则代表查找成功,否则查找失败。 在进行查找时,对于不同的数据结构以及元素集合状态,会有相对匹配的算法,在使用时也需要注意算法的前置条件。在元素查找相关文章中只讨论数据元素只有一个数据项的情况,即关键字(key)就是对应数据元素的值,对应到具体的数据结构,可以理解为一维数组。
交换排序的核心思想是,每次将元素两两比较,如果不满足正确的相对排序(如:较小的应该在前)则进行交换。不断的根据某个规律进行比较和交换,知道全部满足为止,此时也就得到了一个有序的序列。
Blackfly S 采用业内先进的冰块外形传感器。 具有强大功能,可以轻松生成所需的精确图像,并加速应用程序开发。 包括对图像捕获和相机预处理的自动和精确手动控制。 Blackfly S 提供GigE、USB3、套装和板级版本。 精确图像 索尼CMOS传感器中的选择包括:全局快门、偏振和高灵敏度BSI传感器。
Blackfly S 采用业内先进的冰块外形传感器。 具有强大功能,可以轻松生成所需的精确图像,并加速应用程序开发。 包括对图像捕获和相机预处理的自动和精确手动控制。 Blackfly S 提供GigE、USB3、套装和板级版本。 精确图像 索尼CMOS传感器中的选择包括:全局快门、偏振和高灵敏度BSI传感器。
本文档概述了 Blackfly S 相机中的计数器和定时器的使用方法。 Blackfly S 采用业内先进的冰块外形传感器。 具有强大功能,可以轻松生成所需的精确图像,并加速应用程序开发。 包括对图像捕获和**相机预处理的自动和精确手动控制**。 Blackfly S 提供GigE、USB3、套装和板级版本。 精确图像 索尼CMOS传感器中的选择包括:全局快门、偏振和高灵敏度BSI传感器。
其中 a, b, c 为曲线的参数,w 为高斯噪声 明显这是一个非线性模型 如果有N个 x,y的对应数据,根据该数据求 a、b、c对应的参数,就是曲线拟合的过程。 可以转化为下面的最小二乘问题
本片介绍一个NLopt的实例,用的C++语言。 在实例之前,先介绍下NLopt支持的算法,以及算法使用的注意事项
NLopt(nonlinear optimization)是一个免费的开源的库,提供了很多种非线性优化算的使用接口。
查找也被称为检索,算法的主要目的是在某种数据结构中,找出满足给定条件的元素(以等值匹配为例)。如果找打满足条件的元素,则代表查找成功,否则查找失败。 在进行查找时,对于不同的数据结构以及元素集合状态,会有相对匹配的算法,在使用时也需要注意算法的前置条件。在元素查找相关文章中只讨论数据元素只有一个数据项的情况,即关键字(key)就是对应数据元素的值,对应到具体的数据结构,可以理解为一维数组。
查找也被称为检索,算法的主要目的是在某种数据结构中找出满足给定条件的元素(以等值匹配为例)。如果找到满足条件的元素则代表查找成功,否咋查找失败。 在进行查找时,对于不同的数据结构以及元素集合状态,会有相对匹配的算法,在使用时也需要注意算法的前置条件。在元素查找相关文章中只讨论数据元素只有一个数据项的情况,即关键字就是对应数据元素的值,对应到具体的数据结构,可以理解为一维数组。
任何被明确定义的计算过程可以称作算法,它将某个值活一组值作为输入,并产生莫格值或一组值作为输出。所以算法可以被称作将输入转为输出的一系列的计算步骤。 这样的概况是比较抽象和标准的,其实说白了就是步骤明确的解决问题的方法。由于是在计算机中执行,所以通常先用伪代码表示,清晰的表达出思路和步骤。这样真正执行的时候,就可以使用不同的语言来实现出相同的兄啊过给。 概况的说,算法就是解决问题的工具。在描述一个算法时,我们关注的是输入与输出。也就是说只要把原始数据和结果描述清楚了,那么算法所作的事情也就清楚了。
**LIO-SAM**的全称是:**Tightly-coupled Lidar Inertial Odometry via Smoothing and Mapping** 从全称上可以看出,该算法是一个紧耦合的雷达惯导里程计(Tightly-coupled Lidar Inertial Odometry),借助的手段就是利用GT-SAM库中的方法。 **LIO-SAM** 提出了一个利用GT-SAM的紧耦合激光雷达惯导里程计的框架。 实现了高精度、实时的移动机器人的轨迹估计和建图。 **框架的构成**: 通过相对观测(两帧间的估计)及绝对观测(GPS),还包括回环检测,构成因子图。 这
**LeGO-LOAM**的全称是 Lightweight and Ground-Optimized Lidar Odometry and Mapping on Variable Terrain 其中LeGO就是轻量级和利用地面优化,轻量级的实现就是通过两步的优化方式,利用地面优化的部分也在两步优化的第一步中。 和原始LOAM一样,通过前后两帧点云来估计两帧之间的运动,从而累加得到前端里程计的输出,和上述方法使用线面约束同时优化六自由度帧间位姿不同,LeGO-LOAM的前端分成两个步骤,每个步骤估计三自由度的变量。 通过这种方式进行帧间里程计的运算,可以提供运算效率,使得可以在嵌入式平台
## 广度优先遍历(BFS)算计介绍 广度优先遍历(BFS)和深度优先遍历(DFS)同属于两种经典的图遍历算法 **广度优先遍历算法**:首先从某个节点出发,一层一层的遍历,下一层必须等到上一层节点全部遍历完之后才会开始遍历 **基本思想**:尽最大程度辐射能够覆盖的节点,并对其进行访问。
**地面点提取方法** LeGO-LOAM中前端改进中很重要的一点就是充分利用地面点,本片博客主要讲解 如何进行地面点提取 如下图所示,相邻的两个scan的同一列,打在地面上,形成两个点A和B。
![在这里插入图片描述](https://img-blog.csdnimg.cn/348d0b4467a24296a22413207566c67e.png) 论文的标题是:**LeGO-LOAM: Lightweight and Ground-Optimized Lidar Odometry and Mapping on Variable Terrain** - 标题给出的应用场景是 **可变地形** - 重点是 **轻量级** 并 利用 **地面优化** - 本质依然是一个 **激光雷达里程计和建图**
LeGO-LOAM 的英文全称是 **lightweight and ground optimized lidar odometry and mapping**。轻量化具有地面优化的激光雷达里程计和建图 ![在这里插入图片描述](https://img-blog.csdnimg.cn/eea194f4d9a6426d9231e310ec18c37c.png) 其框架如下,大体和LOAM是一致的 ![在这里插入图片描述](https://img-blog.csdnimg.cn/29f5f9ee21544be48aad35b99f6b4e27.png) LeGO-LOAM是基于LOAM的改进版本