Linux 35.5 + JetPack v5.1.3@FC-Planner编译安装

Linux 35.5 + JetPack v5.1.3@FC-Planner编译安装

  • 1. 源由
  • 2. 编译&安装
    • Step 1:依赖库安装
    • Step 2:克隆工程
    • Step 3:编译工程
    • Step 4:LKH编译
    • Step 5:安装工程
  • 3. 问题汇总
    • 3.1 Killed signal terminated program cc1plus
    • 3.2 swarm_exploration/plan_env - OpenCV
    • 3.3 FC-Planner替换LKH
    • 3.4 程序异常退出
  • 4. 总结
  • 5. 附录
    • 5.1 LKH-3安装
    • 5.2 FC-Planner采用三方库(推荐)
    • 5.3 YSU-STAR/FC-Planner

1. 源由

FC-Planner是一种复杂三维场景快速空中覆盖规划框架。

这个就是非常吸引人的东东,因为之前有简单呃呃了解过手持式三维光学扫描:(当然应该不仅限这几家,很多国外公司)

  • 思看科技(杭州)
  • 先临三维(杭州)
  • 海克斯康(青岛)

据了解手持式三维扫描主要是光学的扫描和建模,主要是精度和误差方面的问题。

而这个可以大面积、体积下的进行3D重建,对于今后的三维空间重建,包括虚拟化AR/VR都会有很大的处境,尤其是快速建模方面。

PS:相信大家在异形上看到过普罗米修斯那集,哪个探测球,就是利用这种三维技术,快速对外星飞船进行了3D重建。

2. 编译&安装

注1:不清楚ROS版本的,请先查看下版本,注意要ROS而非ROS2。

$ rosversion --distro
noetic

注2:基于FC-Planner最新github上的代码版本。

$ git log -n 1
commit bf57e48414b9de547b18d294f665d23cb3986fee (HEAD -> master, origin/master, origin/HEAD)
Author: Chen-Albert-FENG <chen835110460@qq.com>
Date:   Thu May 23 01:19:29 2024 +0800[pref]: remove deprecated functions

Step 1:依赖库安装

$ sudo apt-get install cpufrequtils libompl-dev

Step 2:克隆工程

$ git clone https://github.com/HKUST-Aerial-Robotics/FC-Planner.git

注:若存在网络问题,请使用git协议clone代码。git协议始终比https稳定,但需要注意ssh key的安装问题。

Step 3:编译工程

$ cd FC-Planner
$ catkin config -DCMAKE_BUILD_TYPE=Release
$ catkin build --cmake-args -Wno-dev

Step 4:LKH编译

这里埋下一个伏笔:因为笔者一开始并未注意这个,而且在RACER上面,这个LKH3.0.6版本已经安装,所以压根没有运行下面以下命令。

$ cd src/hierarchical_coverage_planner/solution/LKH
$ make

人总是有固定的思维逻辑,并且人总是容易忽视一些感觉自己知道的事情。如果严格的按照CheckList思想来做,这里就已经出问题了。

注:如果遇到了这个问题,可以参考补充里面笔者的处理方法。或者根据3.2章节的内容进行代码版本确认。

Step 5:安装工程

略,因为暂时不涉及软件的部署应用,相关模拟命令参考:

  • 运行Rviz虚拟环境
$ source devel/setup.bash && roslaunch hierarchical_coverage_planner rviz.launch
  • 运行模拟程序
$ source devel/setup.bash && roslaunch hierarchical_coverage_planner mbs.launch
  • 操作:先点击[2D Nav Goal]操作;然后点击[2D Pose Estimate]操作。
    在这里插入图片描述

在这里插入图片描述

3. 问题汇总

3.1 Killed signal terminated program cc1plus

[ 91%] Building CXX object hierarchical_coverage_planner/CMakeFiles/hcplanner_exec.dir/src/hcplanner.cpp.o
c++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
make[2]: *** [hierarchical_coverage_planner/CMakeFiles/hcplanner_exec.dir/build.make:63: hierarchical_coverage_planner/CMakeFiles/hcplanner_exec.dir/src/hcplanner.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:2916: hierarchical_coverage_planner/CMakeFiles/hcplanner_exec.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 92%] Linking CXX executable /home/daniel/HKUST/FC-Planner/FC-Planner/devel/lib/viewpoint_manager/viewpoint_manager_node
[ 93%] Linking CXX executable /home/daniel/HKUST/FC-Planner/FC-Planner/devel/lib/viewpoint_manager/skeleton_viewpoint_node
/usr/bin/ld: warning: libopencv_features2d.so.4.2, needed by /usr/lib/aarch64-linux-gnu/libopencv_calib3d.so.4.2.0, may conflict with libopencv_features2d.so.409
[ 93%] Built target skeleton_viewpoint_node
[ 93%] Built target viewpoint_manager_node
[ 95%] Building CXX object hierarchical_coverage_planner/CMakeFiles/hcplanner.dir/src/hcopp.cpp.o
[ 95%] Building CXX object hierarchical_coverage_planner/CMakeFiles/hcplanner.dir/src/hcsolver.cpp.o
[ 95%] Building CXX object hierarchical_coverage_planner/CMakeFiles/hcplanner.dir/src/hctraj.cpp.o
[ 96%] Linking CXX shared library /home/daniel/HKUST/FC-Planner/FC-Planner/devel/lib/libhcplanner.so
[ 96%] Built target hcplanner
make: *** [Makefile:141: all] Error 2
Invoking "make -j6 -l6" failed

解决方案: c++: fatal error: Killed signal terminated program cc1plus on Jetson Orin Nano #9

$ catkin_make -j1

3.2 swarm_exploration/plan_env - OpenCV

$ git diff FC-Planner/src/plan_env/CMakeLists.txt
diff --git a/FC-Planner/src/plan_env/CMakeLists.txt b/FC-Planner/src/plan_env/CMakeLists.txt
index 06cc294..14773af 100755
--- a/FC-Planner/src/plan_env/CMakeLists.txt
+++ b/FC-Planner/src/plan_env/CMakeLists.txt
@@ -47,4 +47,5 @@ add_library( plan_envtarget_link_libraries( plan_env${catkin_LIBRARIES}${PCL_LIBRARIES}
+    ${OpenCV_LIBS})

3.3 FC-Planner替换LKH

直接替换LKH3.0.6版本二进制:

$ pwd
/home/daniel/HKUST/FC-Planner/FC-Planner/src/hierarchical_coverage_planner/solution/LKH
$ cp /usr/local/bin/LKH LKH

3.4 程序异常退出

  • c++: fatal error: Killed signal terminated program cc1plus on Jetson Orin Nano #9
  • Jetson Orin Nano | FC-Planner Demo Exception Quit

**解决方案:**使用d47fe78和6d9b2d6之后的版本。

或者采用笔者的方法,将RACER下的LKH-3.0.6复制到对应的目录下替换LKH可执行文件,请参考:《Linux 35.5 + JetPack v5.1.3@RACER编译安装》

4. 总结

总体来说,非常高兴看到这个效果,后续逐步研究深入吧。

  • How to change a different structure, such as a bridge to do the simulation? #10
  • FC-Planner is extended to multi-UAV autonomous reconstruction as FC-Hetero

Jetson Orin Nano | FC-Planner simulation

5. 附录

5.1 LKH-3安装

LKH-3 是 LKH-2 的扩展,用于解决受约束的旅行商和车辆路径问题。

注:推荐LKH-3.0.6,当前最新版本LKH-3.0.9。

$ wget http://akira.ruc.dk/~keld/research/LKH-3/LKH-3.0.6.tgz
$ tar xvfz LKH-3.0.6.tgz
$ cd LKH-3.0.6
$ make
$ sudo cp LKH /usr/local/bin

5.2 FC-Planner采用三方库(推荐)

修改LKH相关脚本和路径(理论上,未尝试过):

./hierarchical_coverage_planner/src/hcsolver.cpp:97:      string command_ = "cd " + GlobalSolver_ + " && ./LKH " + GlobalPar_;
./hierarchical_coverage_planner/src/hcsolver.cpp:987:    local_command_ = "cd " + GlobalSolver_ + " && ./LKH " + LocalParF_;
./hierarchical_coverage_planner/launch/pipe.launch:96:  <param name="hcplanner/global_solver" value="$(find hierarchical_coverage_planner)/solution/LKH" type="string"/>
./hierarchical_coverage_planner/launch/mbs.launch:96:  <param name="hcplanner/global_solver" value="$(find hierarchical_coverage_planner)/solution/LKH" type="string"/>
./hierarchical_coverage_planner/launch/christ.launch:97:  <param name="hcplanner/global_solver" value="$(find hierarchical_coverage_planner)/solution/LKH" type="string"/>

5.3 YSU-STAR/FC-Planner

$ git log -n 1
commit 6c7677d46563cc2f2d2e771b07ffe2642ecd26b1 (HEAD -> master, origin/master, origin/HEAD)
Author: Chen-Albert-FENG <chen835110460@qq.com>
Date:   Thu Jun 6 00:29:56 2024 +0800[docs]: add pacifico demo

上述git版本存在问题汇总里面同样的问题,估计后续的版本会更新吧。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/24769.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Unity】 HTFramework框架(五十一)代码片段执行器

更新日期&#xff1a;2024年6月8日。 Github源码&#xff1a;[点我获取源码] Gitee源码&#xff1a;[点我获取源码] 索引 Code Snippet Executer 代码片段执行器使用 Code Snippet Executer打开 Code Snippet Executer动态执行&#xff08;代码片段&#xff09;静态执行&#x…

MySQL——C语言连接数据库

MySQL Connection ​ 连接数据库的客户端除了命令行式的还有图形化界面版本&#xff0c;网页版本&#xff0c;当然也包括语言级别的库或者是包&#xff0c;能够帮助我们直接连接数据库&#xff1b; 一、语言连接库下载 方式一&#xff1a;不建议使用&#xff0c;需要自己配置…

记录项目使用ts时引入js文件后导致项目运行空白问题

主要原因&#xff1a; 使用ts后开启了eslint检测&#xff0c;而js压缩文件引入的位置在eslint检测的文件内。导致eslint检测认为该文件为很大的文件&#xff0c;或eslint认为此文件内存在无法处理的语法结构等问题。 解决方法&#xff1a; 1、把文件移到eslint检测外的文件引入…

R语言数据探索和分析23-公共物品问卷分析

第一次实验使用最基本的公共物品游戏&#xff0c;不外加其他的treatment。班里的学生4人一组&#xff0c;一共44/411组。一共玩20个回合的公共物品游戏。每回合给15秒做决定的时间。第十回合后&#xff0c;给大家放一个几分钟的“爱心”视频&#xff08;链接如下&#xff09;&a…

物证管理系统|DW-S404实现物证科学化管理

随着社会的进步和科技的发展&#xff0c;信息化和数字化已经成为各个行业的必然趋势。在众多领域中&#xff0c;物证管理系统逐渐受到广泛的关注和应用。 物证是公安机关处理案件的关键凭证&#xff0c;针对过去物证管理分散、损毁遗失等严重问题&#xff0c;集驰电子JIONCH推…

红队神器Evil-winrm的使用

前言 Evil-winrm 工具最初是由 Hackplayers 团队开发的。开发该工具的目的是尽可能简化渗透测试&#xff0c;尤其是在 Microsoft Windows 环境中。 Evil-winrm 使用 PowerShell 远程协议 (PSRP)&#xff0c;且系统和网络管理员经常使用Windows Remote Management 协议进行上传和…

DDei在线设计器-DDeiCore-布局插件

DDei-Core-布局 如需了解详细的API教程以及参数说明&#xff0c;请参考DDei文档 标准布局 经典的框架结构布局&#xff0c;包含了顶部菜单栏、控件工具项、画布、属性面板和底部工具栏等功能面板&#xff0c;通过插件配置可以调整每个部分的顺序和内容。 效果截图 使用方式…

基于JSP技术的文物管理系统

你好呀&#xff0c;我是计算机学长猫哥&#xff01;如果有相关需求&#xff0c;文末可以找到我的联系方式。 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;JSP技术 工具&#xff1a;IDEA/Eclipse、Navicat、Maven 系统展示 首页 管理员界面 用户前台…

【庞加莱几何-02】反演定理和证明

文章目录 一、说明二、 inversion和 reflection三、圆反演的定义四、广义的圆反演成圆 关键词&#xff1a;inversion、reflection 一、说明 这里是庞加莱几何的第二篇文章&#xff0c;是庞加莱基本几何属性的研究。本篇主要说清楚&#xff0c;什么是反演&#xff0c;在反演情况…

【面试官】知道synchronized锁升级吗

一座绵延在水上的美术馆——白鹭湾巧克力美术馆。它漂浮于绿水之上&#xff0c;宛如一条丝带轻盈地伸向远方 文章目录 可重入锁synchronized实现原理 synchronized缺点保存线程状态锁升级锁升级优缺点 1. 可重入锁 面试官&#xff1a;知道可重入锁有哪些吗? 可重入意味着获取…

HTTPS缺失?如何轻松解决IP地址访问时的“不安全”警告

一、问题现象 如果访问网站时出现以下任何一种情况&#xff0c;则说明该网站需要立即整改&#xff1a; 1.浏览器地址栏那里出现“不安全”字样&#xff1b; 2.小锁标志被红叉&#xff08;&#xff09;、斜线&#xff08;&#xff3c;&#xff09;等标志为不可用&#xff1b;…

sub_mch_id 与 sub_appid 不匹配怎么解决

小程序在支付的时候&#xff0c;有时候会碰到&#xff1a;sub_mch_id 与 sub_appid 不匹配的问题。这个问题意味着小程序微信支付时所使用的 sub_mch_id&#xff08;子商户号&#xff09;和 sub_appid&#xff08;小程序的appId&#xff09;不对应。下面就具体介绍如何核对是否…

武汉理工大学嵌入式系统应用之临时抱佛脚复习

其实大学很多课程的期末冲刺复习非常简单&#xff0c;就是在大脑中构建一个redis数据库就行了&#xff0c;缓存下一大堆键值对&#xff0c;然后考试的时候输出&#xff0c;很没意思。 嵌入式系统的定义 以应用为中心&#xff0c;以计算机技术为基础&#xff0c;软件硬件可裁剪…

LabVIEW控制PLC的实现方式

LabVIEW与PLC的结合可以充分发挥两者的优点&#xff0c;实现更高效、灵活和可靠的自动化控制系统。本文将详细介绍LabVIEW控制PLC的实现方式&#xff0c;包括通信接口、数据交换、编程方法及实际应用案例&#xff0c;帮助用户理解并应用这一技术。 通信接口 常见通信协议 La…

LabVIEW与PLC的区别

LabVIEW和PLC是工业自动化领域中常见的两种控制和测控方案&#xff0c;各自有独特的优点和适用场景。本文将从多角度比较两者&#xff0c;帮助用户在选择控制系统时做出更明智的决策。 技术背景 LabVIEW LabVIEW是由National Instruments公司开发的图形化编程环境&#xff0…

ChatGPT-4o, 腾讯元宝,通义千问对比测试中文文化

国内的大模型应用我选择了国内综合实力最强的两个&#xff0c;一个是腾讯元宝&#xff0c;一个是通义千问。其它的豆包&#xff0c;Kimi&#xff0c;文心一言等在某些领域也有强于竞品的表现。 问一个中文文化比较基础的问题,我满以为中文文化chatGPT不如国内的大模型。可事实…

2021 hnust 湖科大 操作系统课设 报告+原代码+指导书+流程图源文件

2021 hnust 湖科大 操作系统课设 报告原代码指导书流程图源文件 详情 目录 验证类实验&#xff1a; 1 实验一&#xff1a;Windows进程管理 1 一、 实验题目&#xff1a; 1 二、 实验目的 1 三、 实验内容 1 四、 实验结果与分析 2 五、 小结与心得体会 5 实验二&#xff1a;L…

Javascript全解(基础篇)

语法与数据类型 语法 var\let\const var 声明一个变量&#xff0c;可选初始化一个值。 let 声明一个块作用域的局部变量&#xff0c;可选初始化一个值。 const 声明一个块作用域的只读常量。 用 var 或 let 语句声明的变量&#xff0c;如果没有赋初始值&#xff0c;则其值为 …

人工智能系统越来越擅长欺骗我们?

人工智能系统越来越擅长欺骗我们&#xff1f; 一波人工智能系统以他们没有被明确训练过的方式“欺骗”人类&#xff0c;通过为他们的行为提供不真实的解释&#xff0c;或者向人类用户隐瞒真相并误导他们以达到战略目的。 发表在《模式》(Patterns)杂志上的一篇综述论文总结了之…

店匠科技亮相VivaTech,新零售解决方案引关注

在中法建交60周年之际,两国关系持续发展并共同推动双方在人工智能和全球治理领域达成重要合作。同时,浙江-法国高新产业创新合作对接会在巴黎顺利举行,进一步促进了中法两国在高新技术领域的交流与合作。 紧跟此次访问的步伐,众多中国科技创新企业齐聚巴黎,于5月22日至25日在法…