- 博客(51)
- 收藏
- 关注
原创 ORCA-3D避障代码和原理解析
如果 timeHorizon 值较小,智能体会更靠近其他智能体时才做出速度调整,这样它的速度选择会更加灵活,但也可能导致更频繁或更剧烈的速度变化,增加碰撞的风险。如果 timeHorizon 值较大,智能体会较早地预测与其他智能体的潜在碰撞并做出反应,从而可以有更早的速度调整。如果 timeStep 为 0.1 秒,则表示每隔 0.1 秒,仿真系统会更新智能体的状态并计算新的速度和位置。timeHorizon 决定了智能体在计算避免与其他智能体碰撞时的时间范围,即预测多久之后可能会发生碰撞。
2024-09-13 20:01:03
1250
4
原创 基于激光雷达的无人机相互避障
首先,#include可能难以直接定位到UAVPosVel.h,需要在cmakelist中的include_directories添加其生成路径,即xxx/devel/include/package_name。其次,UAVPosVel.h中的类不叫UAVPosVel,他生成了一个模板函数,所以使用时应该重新定义。但c++和python自定义消息稍有不同,不能直接引用头文件,然后直接用消息名称使用,如下。ORCA需要一个自定义话题的输入,也就是一个包含速度和位置的消息。ORCA是主要的避障算法。
2024-09-03 19:10:36
1146
原创 Ubuntu: GIT push 遇到 Access denied 问题
再次使用``命令查看并复制公钥在“设置”-“安全设置”-“SSH公钥”中添加公钥。遇到 Access denied ,通常与SSH认证或者权限设置有关。如果这个文件不存在,需要生成一个新的SSH密钥(需要连续按三次空格)如果是HTTPS地址,需要改成SSH地址。公钥格式如下,全部复制进来。
2024-09-03 10:32:01
746
原创 Ego-planner:三维建图 grid_map.cpp 与 路径规划解析
膨胀后的栅格地图占据状态,膨胀指的是在原本的障碍物栅格上增加一圈无人机的体积,这样可以把无人机看成一个质点处理。:初始的栅格地图占据状态,一维数组。他是把空间的3维数据映射到1维去处理的;数据来进行转换填充的,(没错,ego也可以利用点云来建图,也就是无需d435i进行输入,可以替换为激光雷达):用于记录raycast过程中射线经过该栅格的次数,也就是命中和未命中的总次数。ego避障里面比较重要的功能是对环境进行栅格地图进行避障。: 三维栅格地图的体积,是地图尺寸/分辨率获得的。
2024-08-28 14:35:03
2685
3
原创 线性/非线性最小二乘 与 牛顿/高斯牛顿/LM 原理及算法
求解的时候需要求解的是f(x)的最小值,其实求解的就是f(x)'=0的地方。求解非线性最小二乘,就需要用到牛顿法,高斯牛顿法,或者LM法。最小二乘分为线性最小二乘和非线性最小二乘。目标函数都是min||f(x)||牛顿法是将f(x)进行二阶泰勒展开。最小二乘目标函数都是。牛顿法/高斯梯度下降。
2024-05-14 10:39:03
1010
原创 ubuntu外置网卡配置AP模式
Failed to restart hostapd.service: Unit hostapd.service is masked.
2024-04-30 16:21:46
1575
原创 opencv 存储像素值为浮点数的图像 (.tiff)
在存储深度图像时,怎么也存储不对存储成png形式时,会自动把转换成查阅资料才发现可以通过来存储像素值为浮点数的图片在python和c++的opencv库中都能实现。
2024-04-22 21:55:27
1036
2
原创 Gazebo中手动建立模型 + realsense模型深度修改
control + x 退出,并选择save and exit保存模型。z由上图编辑界面的level1和level2决定。然后画墙体x和y的位置,点击右键暂停画图。control + B建立墙体。
2024-04-13 14:40:55
654
原创 无人机群ros通信
在ROS基础上,配置主机和从机,实现主机和从机的话题联通。在主机roscore启动,可以看到无人机所有话题。在一个局域网内获取无人机的机载电脑ip。通过地面站ssh到机载电脑,实现通信。
2024-01-11 16:22:04
1174
原创 自动驾驶:基于光流法的相机初始标定
x1构建重投影误差,优化H来进一步得到相机之间的变化Rt,然后根据车辆坐标系的移动Rt,可以计算出相机到车辆的标定Rt。x1,其中x1和x2分别是上一帧和当前帧相机坐标系下的点(x,y,1),我们可以根据x2 - H。X1表示三维坐标点,在平面P上,因此X1沿着平面法向量n的投影距离为d。frame1中的点可以由以下公式转换到frame2中。Ax = xB问题求解,旋转和平移分步求解法。假设相机在两个不同位置拍摄同一个平面(路面)因此我们就得到了平面的单应性矩阵。提取出连续两帧之间的稀疏光流。
2023-12-04 15:48:28
1496
原创 多传感器融合SLAM论文调研
从传统分类的角度来看,所有的多模态数据融合方法都可以分为数据级融合(前融合)、特征级融合(深度融合)和目标级融合(后融合)三种模式。
2023-11-27 17:08:52
515
原创 激光雷达&毫米波雷达
Lidar采样率一定,因此帧率越高,角分辨率越低;反之帧率越低,角分辨率越高。角分辨率:点云图像中相邻两个点之间的夹角(应该是同一个激光束扫描得到的)采样率:激光雷达每秒进行有效采集的此书,也就是1s内产生的点云数量。扫描频率/帧率:是转速的意思,10Hz就是1s转10圈。分辨率(激光光束夹角越小分辨率越高,0.1度)通过发射接受信号的频率差,计算目标距离和速度。反射率(一般探测10%以上反射率的目标)线数(32/64/128)探测距离:0.3-200m。
2023-11-27 11:59:06
1852
原创 vscode/ros GDB调试 段错误
首先配置json文件,注意environment是程序需要的某些共享文件库so的目录。program是可执行的gdb程序。
2023-11-10 15:58:25
328
原创 ego-planner实际测试bug修改
中如下的订阅代码,可以得知remap这个配置是用于更改在 C++ 代码中订阅的 grid_map/depth 话题的名称,使其变成 /iris_查看各自的深度图像,可以看出仿真里面的远景是黑色的,白色的是树干;而实际的深度相机近景手是黑色的,所以考虑深度图取反。2)仿真里面存在点云,避障正常,实机映射点云之后,点云错误。1)仿真里面存在点云,可以避障,但实机没有点云。
2023-11-09 14:29:10
952
原创 Jetson AGX ORIN配置运行vins-fusion-gpu(Zed/D435)
jetson,vins-gpu,d435i,zed
2023-05-23 15:18:04
2053
1
原创 ubuntu18配置ZED+ros
选择recommended版本的驱动。测试cuda是否安装成功。查看适配自己显卡的驱动。安装匹配版本的cuda。去cuda官网,选择。
2023-04-05 15:11:47
568
原创 orb-slam3:优化状态量是camera坐标系下RPV还是body坐标系下RPV探究
orb-slam3 优化参数是camera坐标系还是body坐标系探究
2022-11-16 17:31:18
658
2
原创 D435i+vins-Fusion+ego-planner+yolo无人机避障实测
无人机避障+目标检测实测(D435i+ego+vins+yolo)
2022-09-08 20:02:45
7407
3
原创 ubuntu ‘filesystem root‘空间不足解决办法
1、查看磁盘空间占用情况df -h显示如下,根目录已经占用98%的空间2、空间扩容安装gparted sudo apt-get install gparted启动gpartedsudo gparted将右上角调到dev/sda,因为是dev/sdb10空间不足后续参考http://wang22ti.com/2019/01/29/%E8%A7%A3%E5%86%B3Ubuntu%E6%A0%B9%E7%9B%AE%E5%BD%95%E7%A9%BA%E9%97%B4%E4%B8%8
2022-05-16 20:24:51
4594
2
原创 Promethues: swarm_control解读
标签可以对节点分组,具有 ns 属性,可以让节点归属某个命名空间<group ns="iris_0"> <group ns="iris_0"> <!-- VINS-Fusion --> <node pkg="vins" type="vins_node" name="vins_estimator" args="$(find vins)/../config/xtdrone_sitl/iris_0_px4_sitl_config.
2022-05-10 16:04:46
710
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人