Ubuntu18.04安装Autoware1.15(解决Openplanner无法绕障的问题:Openplanner2.5)

2023-11-20


在Autoware1.14配置的环境基础上安装Autoware1.15,解决一些14和15经常出现的报错
环境配置参考Autoware1.14的安装教程:Ubuntu18.04安装autoware 1.14(GPU版) 完整教程(包含环境搭建)

一、下载Autoware1.15源码

下载地址(注意包含了完整的Autoware,并不是只有Openplanner):https://github.com/hatem-darweesh/autoware.ai.openplanner

cd autoware
mkdir src

下载代码:

vcs import src < openplanner.1.15.repos

二、安装依赖

sudo apt-get install libnl-3-dev libnl-genl-3-dev
sudo apt-get install ros-melodic-tvm-vendor 
sudo apt-get install ros-melodic-lanelet2-io ros-melodic-lanelet2-core ros-melodic-lanelet2-maps ros-melodic-lanelet2-projection ros-melodic-lanelet2-routing ros-melodic-lanelet2-validation

三、修改CUDA版本

src/autoware/common/autoware_build_flags/cmake下的CUDA版本改为11.4(或者你电脑上的版本)
在这里插入图片描述

四、编译以及报错解决

编译

AUTOWARE_COMPILE_WITH_CUDA=1 colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release
# 编译特定的包
AUTOWARE_COMPILE_WITH_CUDA=1 colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release --packages-select lidar_kf_contour_track
(1)报 undefined reference to cv::Mat::Mat() 的错就按照下面方式改相应包:
find_package(OpenCV 3.4 REQUIRED)

include_directories( ${OpenCV_INCLUDE_DIRS} )

target_link_libraries(target ${OpenCV_LIBS})

在这里插入图片描述

(2)遇到OpenCV的CV_RGB、IplImage报错:

error: could not convert 'cv::Scalar_<double>((double)0,(double)255,(double)255,(double)0,)' from 'cv::Scalar {aka cv::Scalar_<double>}' to 'CvScalar' error:conversion from 'cv::Mat' to non-scalar type 'IplImage {aka _IplImage}' requested

在这里插入图片描述

  • CV_RGB改为cvScalar
  • 使用cvIplImage()函数将类型转换一下:

在这里插入图片描述

(3)报错:error: conversion from ‘cv::Mat’ to non-scalar type ‘CvMat’ requested,将报错那句改为:

在这里插入图片描述

CvMat* cvmat;
for(size_t i=0; i< sum_mat.rows; ++i)
	for(size_t j=0; j< sum_mat.cols; ++j)
		{
			((double*)(cvmat->data.ptr + i*cvmat->step))[j] = sum_mat.at<double>(i,j);
		}
(4)报错error: no match for ‘operator=’ (operand types are ‘CvPoint’ and ‘cv::Point {aka cv::Point_<int>}’,将下面这句中的cv::Point改为cvPoint
// textOrg = cv::Point(ctx.topLeft.x, ctx.botRight.y + baseline);
textOrg = cvPoint(ctx.topLeft.x, ctx.botRight.y + baseline);

或者改为:

// textOrg = cv::Point(ctx.topLeft.x, ctx.botRight.y + baseline);
textOrg.x = ctx.topLeft.x;
textOrg.y = ctx.botRight.y + baseline;
(5)报找不到cuDNN头文件的错:

/usr/local/cuda-11.4/include/cudnn.h:61:10: fatal error: cudnn_ops_infer.h: No such file or directory CMake Error at op_tlr_generated_network_kernels.cu.o.Release.cmake:225 (message):
在Autoware1.14环境配置时,安装cuDNN把所有的头文件都复制过去:

# sudo cp include/cudnn.h /usr/local/cuda/include/ 
sudo cp include/cudnn*.h /usr/local/cuda/include/ 
(6)报错, op_tlr包未找到cuDNN的库:

/usr/bin/ld: cannot find -lcudart /usr/bin/ld: cannot find -lcublas /usr/bin/ld: cannot find -lcurand /usr/bin/ld: cannot find -lcudnn

发现是Cmakelists.txt中CUDA的库文件包含路径错误,在op_tlr包中改成自己的CUDA版本在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ubuntu18.04安装Autoware1.15(解决Openplanner无法绕障的问题:Openplanner2.5) 的相关文章

随机推荐

  • 等级测评——定级、等级划分及测评时间

    定级 在等级保护中 定级这个步骤很关键 首先我们需要知道我们这个资产是什么样的一个级别 一级二级三级 因为不同的级别表示着我们要对这个资产做相应的保护 那么我们这个定级是怎么么定级呢 参考的又是什么标准呢 首先我们需要先确认定级对象 这个对
  • R----stringr包介绍学习

    1 stringr介绍 stringr包被定义为一致的 简单易用的字符串工具集 所有的函数和参数定义都具有一致性 比如 用相同的方法进行NA处理和0长度的向量处理 字符串处理虽然不是R语言中最主要的功能 却也是必不可少的 数据清洗 可视化等
  • Verilog中$timeformat的用法

    Verilog中 timeformat的用法 更新历史 20200807 首次发布 语法 timeformat的语法如下 timeformat units number precision number suffix string mini
  • (转发)西门子S7-1200PLC之间TCP通信实例步骤

    1 软件组态 新建两个CPU 在组态界面的网络视图手绘连接两个PLC的以太网口 如下 2 在两个CPU以太网口的属性中设置IP地址 设置同一网段 方便调试 3 在PLC 1程序块中添加个背景数据块 新建接收数组跟发送数组 以方便存放接收或发
  • mysql本机地址_mysql连接时用的IP地址是不是电脑本机上的IP地址呢!

    展开全部 是root用户的话 IP就是或 lt 127 0 0 1 gt 只是代表使用本机 不是代表本机IP地址 操作方法如下62616964757a686964616fe58685e5aeb931333433623737 1 首先 利用N
  • 【工具类】比较优雅的在工具类中,用泛型方法获取枚举的值

    目录 痛点 解决 优化更灵活的泛型 痛点 在代码中 经常用到枚举 也经常用到枚举获取code 获取type 通常我们写的代码如下 public enum Status YES 1 是 NO 2 否 private int code priv
  • 科技云报道:云安全的新战场上,如何打破“云威胁”的阴霾?

    科技云报道原创 近年来 在云计算和网络安全产业的蓬勃发展下 我国云安全行业市场规模呈现高速增长态势 在网络安全市场总体规模中占比不断上升 据统计 近5年我国云安全市场保持高速增长 2021年我国云安全市场规模达到了117 7亿元 2022年
  • 移除wordpress前端自带的js和css

    wordpress在其wp head和wp foot函数中 会自动加载一些js和css 但这些js和css往往在我们实际的使用中却无法用到 这就造成了一些资源的浪费 会将我们的网站速度拖慢 我们之前发布了一篇文章清理header的文章 但是
  • lightGBM筛选特征及建模(系列文章二)

    新网银行杯 数据科学竞赛记录 之前写过一篇参加这个比赛过程中用xgboost的调参的文章 今天再记录一下用lightGBM作为特征筛选模型以及训练数据的过程 1 数据准备 新网的这个比赛主办方总共提供了三个数据集 命名分别为 train x
  • redis的持久化

    第一章 redis的持久化 1 1 持久化概述 持久化可以理解为将数据存储到一个不会丢失的地方 Redis 的数据存储在内存中 电脑关闭数据就会丢失 所以放在内存中的数据不是持久化的 而放在磁盘就算是一种持久化 为解决这个问题 redis提
  • visio交换机图标_一个完整的项目工程,交换机需要做哪些配置了?

    交换机是企业组网的重要设备 掌握交换机配置是作为网管的必备技能 这里以三层交换机的配置为例子 说一说配置的步骤 step1 配置管理地址 每个交换机需要配置一个管理地址 方便后期的远程维护 网络中的所有交换机等网络设备 可以使用一个管理VL
  • 3. Python 面向对象编程

    文章目录 Python 面向对象编程 1 3 1 面向对象编程理论 1 3 1 1 对象 1 3 1 2 类 1 3 1 3 面向对象编程的特点 1 3 2 Python 面向对象编程 1 3 2 1 Python 类与对象 1 3 2 2
  • javascript试题

    练习题 1 找到数组 1 2 1 10 4 5 8 中的最大值 至少写出两种方法 var arr 1 2 1 10 4 5 8 第一种 var max1 Math max apply null arr 第二种 var max2 arr so
  • 【计算机网络】湖科大微课堂笔记 p38-40 以太网交换机的生成树协议STP、虚拟局域网VLAN概述和实现机制

    以太网交换机的生成树协议STP 如何提高以太网的可靠性 若出现了链路故障 则可能会无法通信 可以通过添加冗余链路提高以太网可靠性 但是 冗余链路可能会形成网络环路 可能会带来网络风暴 使得帧在网络中反复转发 分别成顺时针和逆时针 可以类比图
  • C++——STL常用类总结笔记

    目录 一 STL发展历程 二 iterator 三 list 四 Vector 五 queue 六 容器 七 操作元素算法 一 STL发展历程 STL Standard Template Library标准模板库 惠普实验室开发的一系列软件
  • 期货反跟单软件介绍与反跟单交易中的骗局

    1 跟单软件以及交易通道是反跟单交易过程中由始至终困扰着广大投资者的问题 今天我来和大家详细的进行讲解一下 望帮助到所有从事反跟单交易的朋友们 2 跟单软件市面上目前分为镜像零滑点软件以及传统的跟单软件 3 镜像零滑点软件是近两年市面上新推
  • 教你如何试用华为云服务器

    华为云服务器的使用 1 引言 2 部署的目的 3 购买华为云 4 利用Xshell连接远程服务器 5 安装node并配置环境变量 6 安装依赖管理常用工具并修改数据源 7 安装git 8 git配置与使用 参考文献 1 引言 本来说不写文章
  • 征税编程c语言,C语言编写一个计算个人所得税的程序,要求输入收入金额,能够输出应缴的...

    编写一个计算个人所得税的程序 要求输入收入金额 能够输出应缴的 个人所得税 个人所得税征收办法如下 起征点为3500元 不超过1500元部分 征收3 超过1500 4500元部分 征收10 超过4500 9000元部分 征收20 超过900
  • cmake命令之set_property和get_property

    一 set property 在指定域中设置一个命名属性 set property
  • Ubuntu18.04安装Autoware1.15(解决Openplanner无法绕障的问题:Openplanner2.5)

    文章目录 一 下载Autoware1 15源码 二 安装依赖 三 修改CUDA版本 四 编译以及报错解决 编译 1 报 undefined reference to cv Mat Mat 的错就按照下面方式改相应包 2 遇到OpenCV的C