Livox-mid360激光雷达运行fast-lio2
所用的环境: Linux版本:Ubuntu 20.04 ROS版:Noetic 1. mid-360配置 将mid-360通过网口与电脑相连,然后给mid360上电 设置有线连接的IPv4地址: 地址设为192.168.1.50 子网掩码设为255.255.255.0 网关设为192.168.1.1 2. 安装Livox SDK2 2.1 源码安装 git clone https://github.com/Livox-SDK/Livox-SDK2.git cd Livox-SDK2/ mkdir build && cd build cmake .. make -j sudo make install 2.2 运行Livox-SDK2示例 进入Livox-SDK2/samples/livox_lidar_quick_start这个文件夹,找到mid360_config.json,把 host_ip 改成 192.168.1.50 进入Livox-SDK2/build/samples/livox_lidar_quick_start这个文件夹运行如下代码 ./...
第十一章TRPO算法
TRPO算法的重点体现在策略函数的更新方式上 策略目标部分理论推导请参考强化学习教程相关章节 策略函数差异的约束主要体现在线性搜索部分 共轭梯度法的讲解见求解对称正定线性方程组的共轭梯度法
第十章Actor-Critic算法
虽然采用时序差分法来指导网络学习,但是此算法仍是在一个episode结束后才进行网络更新
第九章策略梯度算法
理论讲解部分过于简单,可参考强化学习教程相关章节
AEDE参数解读
1. localPlanner中的参数 pathFolder 存放离线待选路径的位置 vehicleLength,/vehicleWidth 车辆尺寸,用于近距离旋转碰撞检测 sensorOffsetX / sensorOffsetY 传感器转换到车辆参考点 twoWayDrive 能否倒车行驶 laserVoxelSize / terrainVoxelSize 激光雷达点云/地形点云的降采样体素网格大小。较大值会更强下采样,减少点云量,提高速度但丢细节;较小值保留更多点但计算量增大。 useTerrainAnalysis 是否启用地形分析,决定了是使用原始激光雷达点云还是预处理后的地形点云进行障碍物检测和路径决策 checkObstacle 是否启用障碍物检测 checkRotObstacle 是否检测车辆旋转时车身与障碍物的碰撞风险 adjacentRange 路径规划时考虑障碍物的最大范围和路径搜索范围 obstacleHeightThre 障碍物高度阈值,当点云的intensity即地形高度超过该阈值时,视为障碍物 groundHeightThre 地面高度阈值...
TARE代码解读
本代码主只是用来做自主探索时的上层路径规划和重定位 exploration_path keypose_graph navigation_boundary_publisher rolling_grid tare_planner_node utils graph lidar_model planning_env rolling_occupancy_grid tare_visualizer viewpoint grid_world local_coverage_planner pointcloud_manager sensor_coverage_planner tsp_solver viewpoint_manager 1. exploration_path 实现探索路径的类 2. keypose_graph 3. navigation_boundary_publisher 在Matterport3D 仿真环境时,从src/tare_planner/data/boundary.ply文件读取探索边界信息并发送出去 输入为空 输出为/navigation_boundary 4. rol...
AEDE代码解读
本代码主只是用来做局部路径规划和小范围避障 1. joystick_drivers 包含不同手柄遥操作的各种代码,实车部署不需要,可以删去 2. loam_interface 用来桥接不同slam算法,通过修改loam_interface.launch可以使此项目适配各种slam算法。修改规则可参考State Estimation Setup Notes 输入为不同slam算法输出的stateEstimationTopic和registeredScanTopic 输出为/state_estimastion和/registered_scan话题名 3. sensor_scan_generation 将世界坐标系下的点云转换至传感器Lidar坐标系下,并以与扫描消息相同的频率和时间戳发布状态估计消息。这些信息会提供给上层规划模块使用 输入为/state_estimation和/registered_scan 输出为/state_estimation_at_scan(等同于/state_estimation)和/sensor_scan(世界坐标系下的点云转换至传感器Lidar坐标系下...
使用uv
1. uv安装 直接使用Python自带的pip安装,兼容性最佳 pip install uv 随后将pip安装的包导入到环境变量中,在.bashrc或者.zshrc中添加 export PATH="$HOME/.local/bin:$PATH" 使用source ~/.zshrc刷新 2. 基础用法 2.1 创建项目 首先设定python版本 uv python pin 3.13 uv init 2.2 添加依赖 添加numpy库 uv add numpy 添加指定版本的numpy库 uv add numpy>=2.0.2 2.3 移除依赖 移除numpy库 uv remove numpy 2.4 查看项目的依赖树 uv tree 2.5 创建虚拟环境 创建一个虚拟环境,并指定Python版本 uv venv my-name --python 3.11 2.6 激活虚拟环境 source .venv/bin/activate 2.7 退出虚拟环境 deactivate 2.8 在uv中使用pip uv pip install 3. 换源 uv换源包括三个方面一个是依赖包的源一个...
Linux创建新用户
1. 创建用户 1.1 法一:使用 adduser 命令创建新用户 在某些基于Debian的Linux发行版中,可以使用adduser命令,会提供交互式操作。 sudo adduser 新用户名 1.2 法二:使用 useradd 命令创建新用户 在 Linux 系统中,可以使用useradd这个通用命令来创建新用户 sudo useradd -m -s /bin/bash 新用户名 -d 指定用户的家目录 -s 指定用户的默认shell,可写为/bin/zsh -m 为新用户在 /home 目录下创建一个新的家目录 给新用户设置一个密码 sudo passwd 新用户名 2. 赋予root权限 2.1 法一:使用 adduser 命令 在某些基于Debian的Linux发行版中,可以使用adduser命令 sudo adduser newuser sudo 2.2 法二:修改/etc/sudoers文件 sudo vim /etc/sudoers 在文件中找到如下命令 ## Allow root to run any commands anywhere root AL...