- 博客(11)
- 资源 (3)
- 收藏
- 关注
原创 ROS全覆盖规划算法逻辑整理笔记
ROS提供了计算生成全覆盖路径的代码,在经历了一段时间的代码研究与优化后,决定将部分思路整理成笔记,方便以后查看。
2021-02-25 17:39:39 15125 36
原创 ROS生成弓字形覆盖路径点逻辑分析
前面提到,在经过分区,计算区间的遍历顺序后,接下来的操作就是按照遍历顺序,依次生成每一个子区间内的弓字形覆盖路径,路径点选取策略直接影响到做路径跟随的效果。对每一个区间生成弓字形覆盖路径前,会对每一个区间计算最佳旋转角度。生成弓字形覆盖路径的过程分为两部分:(1)从上到下生成直线覆盖路径,每一个区间都会生成一或多条覆盖线。(2)根据当前点到区间四个顶点的距离长短,选用距离最近的顶点作为弓字形路径起始点,连接当前覆盖直线最后一个路径点与下一条。...
2021-06-21 14:41:29 4433 6
原创 ROS计算TSP遍历顺序
前面介绍了ROS计算全覆盖路径的整体流程,在完成区间分割之后,就需要计算区间之间的遍历顺序,本篇会对这部分的代码功能做一个分析记录。
2021-03-03 19:52:18 1736 4
原创 ROS区间分割算法实现逻辑分析
在上一篇中,简单介绍了ROS执行全覆盖路径规划的整体逻辑,其中有一个关键的步骤,是对输入的地图进行区间分割,区间分割的结果直接影响到后续的区间顺序计算以及直线覆盖路径的生成,故本篇对这部分的代码进行分析。
2021-03-01 15:32:30 3692
原创 实现阿里云发送手机验证码功能——golang+redis
使用阿里云短信服务发送手机验证码,并简单结合redis实现验证码有效期功能。本篇侧重于讲解阿里云短信服务,redis相关的知识点后续再补上。基础知识想使用阿里云短信服务,需要先注册一个账号,在此就不过多讲解,可以访问阿里云短信服务官方文档以及具体的阿里云短信服务文档使用指引获取相关的知识点。其完整的流程可以引用官方的使用流程图展示:在完成注册,开通短信服务等功能后,可以在短...
2019-09-05 10:10:41 2107
原创 go-micro 微服务学习笔记(2)
go-micro 微服务学习笔记(2)使用protobuf传输数据使用protobuf传输数据 通过.proto自动生成json接口数据时,会默认添加omitempty,此时若字段为空(例如空串,0,nil),则返回的json数据会忽略该字段,如下图自动生成的数据。 通过查阅其源码(路径protoc-gen-micro/generator/generator.go),可以其生成...
2019-09-04 17:25:12 188
原创 go-micro 微服务学习笔记(1)
最近接了一个项目,需要用到go微服务架构开发,由于本人是初次接触go语言,也是第一次自己搭建实现微服务框架,故对其实现细节先不进行深入解析,仅记录基本开发步骤。在经过一段时间的初步调研,决定选择go-micro为本次的开发框架,go-micro的基本原理网上有很多资料,再此就不过多阐述。想要了解的可以访问micro文档,其基本框架可以引用官方的一个框架图说明:其中各个子模块的说如...
2019-09-04 10:26:24 421
原创 C++基础加固(1)
本篇文章仅做个人学习加固C++基础记录。char,signed char 和unsigned char 三种是不同的,char 在某些机器上可能是signed char,在某些机器上可能就是unsigned char ,这三者都只占一个字节。 以U为后缀的十进制数,八进制数或十六进制数都将从 unsigned int,unsigned long 和 unsigned long long...
2019-09-04 09:03:03 328
原创 QT 使用QPushButton实现Z轴移动控制
在一些应用场景如控制机器的Z轴升降,我们需要一个按钮能实现以下功能:当你单次点击该按钮时,移动一段固定的距离。 当你在该按钮上一直按着鼠标不放时,则一直往一个方向移动,直到鼠标松开。关键点在实现该功能时,有两个关键点,分别如下:当鼠标按下一个button时,先触发的是pressed信号,然后松开鼠标后触发released信号,接着才触发clicked信号。 如果启用QPu...
2019-05-30 21:02:38 1393 1
原创 opencv 提取多边形mask区域
最近在项目中需要提取多边形区域,并传入到算子中计算,故记录一下对多边形mask区域的提取方法。#include <opencv2\opencv.hpp>using namespace cv;int main(){ Mat src = imread(R"(E:\picture\picture_for_test\8.jpg)", 1); // repla...
2019-05-09 23:05:33 4780 1
原创 leetcode刷题心得分享
转眼就快要大四了,感叹时间飞快的同时也想开始追求一些新东西了,这次是本人第一次发表博客,各位大神看到请忽略。leetcode上有这样一道题目,虽说难度不大,但第一次遇到的时候感觉挺新奇的,题目的要求是将罗马数字转换为十进制数(输入罗马数字范围限制在3999以内,这点很重要),原题目链接如下:https://leetcode.com/problems/roman-to-integer/要做这道...
2016-05-01 10:44:38 814
chromium 消息循环跨线程通信使用案例(C++)
2018-04-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人