做網(wǎng)站銷售的話術(shù)app推廣軟件
目錄
- 前言
- 一、準(zhǔn)備工作
- 1.安裝autoware1.15
- 2.安裝依賴
- 3.把`src/autoware/common/autoware_build_flags/cmake`文件夾下的CUDA版本改為11.4(或者你電腦上的版本)
- 二、解決報(bào)錯(cuò)
- 錯(cuò)誤類型1
- 錯(cuò)誤類型2
- 錯(cuò)誤類型3
- 錯(cuò)誤類型4
- 錯(cuò)誤類型5
- 錯(cuò)誤類型6
前言
本文參考鏈接:Ubuntu18.04安裝Autoware1.15(解決Openplanner無(wú)法繞障的問(wèn)題:Openplanner2.5)
因?yàn)殡娔X已經(jīng)安裝過(guò)autoware1.14版本,所以一些環(huán)境以及庫(kù)都裝過(guò),就不再此介紹了,autoware所需要的一些環(huán)境可以參考以下兩篇鏈接
Ubuntu18.04安裝autoware 1.14(GPU版) 完整教程(包含環(huán)境搭建)
工控機(jī)(arm + ubuntu18.04)搭建Autoware 1.14環(huán)境以及源碼編譯(GPU版)詳細(xì)步驟外加官方demo運(yùn)行
一、準(zhǔn)備工作
1.安裝autoware1.15
autoware1.15地址:https://github.com/hatem-darweesh/autoware.ai.openplanner
新建文件夾
mkdir -p autoware.ai.openplanner.1.15/src
將上述鏈接中的文件下載下來(lái),將openplanner.1.15.repos
文件放到autoware.ai.openplanner.1.15
文件夾下,然后打開(kāi)終端輸入
vcs import src < openplanner.1.15.repos
2.安裝依賴
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
3.把src/autoware/common/autoware_build_flags/cmake
文件夾下的CUDA版本改為11.4(或者你電腦上的版本)
二、解決報(bào)錯(cuò)
錯(cuò)誤類型1
undefined reference to cv::Mat::Mat()
解決辦法:按照下面方式改相應(yīng)包的CMakeLists.txt
find_package(OpenCV 3.4 REQUIRED)include_directories(${OpenCV_INCLUDE_DIRS}
)target_link_libraries(target ${OpenCV_LIBS})
需要修改的包匯總:calibration_publisher
,data_preprocessor
,integrated_viewer
,object_map
,points_preprocessor
,trafficlight_recognizer
錯(cuò)誤類型2
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()
函數(shù)將類型轉(zhuǎn)換一下:
需要修改的文件匯總:vision_lane_detect.cpp
,vision_darknet_detect.cpp
,region_tlr.cpp
,op_tlr_core.cpp
錯(cuò)誤類型3
error: conversion from ‘cv::Mat’ to non-scalar type ‘CvMat’ requested
將報(bào)錯(cuò)那句改為:
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);}
需要修改的文件匯總:detection.h
錯(cuò)誤類型4
error: no match for ‘operator=’ (operand types are ‘CvPoint’ and ‘cv::Point {aka cv::Point_<int>}
按照下面的修改
// textOrg = cv::Point(ctx.topLeft.x, ctx.botRight.y + baseline);
textOrg = cvPoint(ctx.topLeft.x, ctx.botRight.y + baseline);
需要修改的文件匯總:region_tlr.cpp
錯(cuò)誤類型5
/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環(huán)境配置時(shí),安裝cuDNN時(shí),需要把所有的頭文件都復(fù)制過(guò)去:
# sudo cp include/cudnn.h /usr/local/cuda/include/
sudo cp include/cudnn*.h /usr/local/cuda/include/
錯(cuò)誤類型6
/usr/bin/ld: cannot find -lcudart /usr/bin/ld: cannot find -lcublas /usr/bin/ld: cannot find -lcurand /usr/bin/ld: cannot find -lcudnn
發(fā)現(xiàn)是Cmakelists.txt中CUDA的庫(kù)文件包含路徑錯(cuò)誤,在op_tlr包中改成自己的CUDA版本