autoware.ai中检测模块lidar_detector caffe

2023-10-19 03:20

本文主要是介绍autoware.ai中检测模块lidar_detector caffe,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

lidar_apollo_cnn_seg_detect模块:该模块主要是调用百度apollo的目标分割。
1.需要安装caffe进行实现:
caffe安装步骤:

git clone https://github.com/BVLC/caffe
cd caffe && mdkir build && cd build
cmake ..

出现报错:

CMake Error at cmake/Cuda.cmake:227 (message):   cuDNN version >3 is required.

修改方法:

in Openpose change the cmake/cuda.cmake file and the /cmake/modules/FindCuDNN.cmake file.
Find the line that reads:
file(READ {CUDNN_INCLUDE}/cudnn.h CUDNN_VERSION_FILE_CONTENTS) change to: file(READ {CUDNN_INCLUDE}/cudnn_version.h CUDNN_VERSION_FILE_CONTENTS)

出现报错:

Could NOT find Atlas (missing: Atlas_CLAPACK_INCLUDE_DIRAtlas_CBLAS_LIBRARY Atlas_BLAS_LIBRARY)
Call Stack (most recent call first):/usr/share/cmake-3.10/Modules/FindPackageHandleStandardArgs.cmake:378 (_FPHSA_FAILURE_MESSAGE)cmake/Modules/FindAtlas.cmake:43 (find_package_handle_standard_args)cmake/Dependencies.cmake:121 (find_package)CMakeLists.txt:49 (include)

解决方法:

sudo apt-get install libatlas-base-dev

出现报错:

Please set them or make sure they are set and tested correctly in the CMake files:
CUDA_cublas_device_LIBRARY (ADVANCED)linked by target "caffe" in directory

解决方法:出现该问题是因为cmake版本不匹配:
cuda10 可以用cmake-3.14.3
cuda10.2 可以用cmake-3.17
我安装的是cuda 11.6,对应的cmake版本为cmake3.18.1,最新版本3.27.4不可用
由于安装ros后存在cmake,如果进行删除将会导致大量ros依赖被卸载,因此并未进行卸载,执行步骤为:

wget https://cmake.org/files/v3.18/cmake-3.18.1-Linux-x86_64.tar.gz
tar zxvf cmake-3.18.1-Linux-x86_64.tar.gz
mv cmake-3.18.1-Linux-x86_64 /opt/cmake-3.18.1
ln -sf /opt/cmake-3.18.1/bin/*  /usr/bin/
cmake --version  # 应该显示3.18.1

caffe 需要用make进行安装:
关于hdf5的问题:
Makefile中

LIBRARIES +=  hdf5_hl hdf5

改为

LIBRARIES += hdf5_serial_hl hdf5_serial

将Makefile.config中的路径:

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include 
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib

改为

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib

执行make报错:编译Caffe时遇到的错误:leveldb/db.h文件找不到

sudo apt-get update
sudo apt-get install libleveldb-dev

寻找Makefile文件

LIBRARIES += leveldb
make clean
make

/usr/bin/ld: cannot find -lleveldb
/usr/bin/ld: cannot find -lsnappy
/usr/bin/ld: cannot find -lcblas
/usr/bin/ld: cannot find -latlas

sudo apt-get install libsnappy-devsudo apt-get install libatlas-base-dev

注:如果不清楚自己opencv版本型号,输入下面命令产看版本

pkg-config opencv --modversion

如果opencv有报错把这个解开

改为(根据自己OpenCV版本来,我的是3.2.0):
OPENCV_VERSION :=3

CUDA_ARCH := -gencode需要改成自己型号
https://developer.nvidia.com/cuda-gpus

运行lidar_apollo_cnn_seg_detect.launch 报错:

error while loading shared libraries: libcaffe.so.1.0.0: cannot open shared object file: No such file or directory 运行时报错(caffe)

caffe安装好后lib没有配置到/usr/lib或/usr/local/lib中,需手动配置:

 export LD_LIBRARY_PATH=/path_to_your_caffe/distribute/lib/:$LD_LIBRARY_PATH

lidar_euclidean_cluster_detect模块:该模块主要是用的欧式聚类算法进行聚类
出现报错:

error while loading shared libraries: libopencv_imgcodecs.so.4.3: cannot open shared object file : No such file or directory

解决办法:

$ find ~/ -name "libopencv_imgcodecs.so.407"

结果

/home/xxx/xxx/opencv-4.7.0/build/lib/libopencv_imgcodecs.so.407

将exprot LD_LIBRARY_PATH 插在~/.bashrc最后

export LD_LIBRARY_PATH=/home/xxx/xxx/opencv-4.7.0/build/lib/libopencv_imgcodecs.so.407
export LD_LIBRARY_PATH=*******:$LD_LIBRARY_PATH                                             

*******为之前的路径

这篇关于autoware.ai中检测模块lidar_detector caffe的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/236952

相关文章

Qt spdlog日志模块的使用详解

《Qtspdlog日志模块的使用详解》在Qt应用程序开发中,良好的日志系统至关重要,本文将介绍如何使用spdlog1.5.0创建满足以下要求的日志系统,感兴趣的朋友一起看看吧... 目录版本摘要例子logmanager.cpp文件main.cpp文件版本spdlog版本:1.5.0采用1.5.0版本主要

基于Flask框架添加多个AI模型的API并进行交互

《基于Flask框架添加多个AI模型的API并进行交互》:本文主要介绍如何基于Flask框架开发AI模型API管理系统,允许用户添加、删除不同AI模型的API密钥,感兴趣的可以了解下... 目录1. 概述2. 后端代码说明2.1 依赖库导入2.2 应用初始化2.3 API 存储字典2.4 路由函数2.5 应

Python使用date模块进行日期处理的终极指南

《Python使用date模块进行日期处理的终极指南》在处理与时间相关的数据时,Python的date模块是开发者最趁手的工具之一,本文将用通俗的语言,结合真实案例,带您掌握date模块的六大核心功能... 目录引言一、date模块的核心功能1.1 日期表示1.2 日期计算1.3 日期比较二、六大常用方法详

Spring AI ectorStore的使用流程

《SpringAIectorStore的使用流程》SpringAI中的VectorStore是一种用于存储和检索高维向量数据的数据库或存储解决方案,它在AI应用中发挥着至关重要的作用,本文给大家介... 目录一、VectorStore的基本概念二、VectorStore的核心接口三、VectorStore的

python中time模块的常用方法及应用详解

《python中time模块的常用方法及应用详解》在Python开发中,时间处理是绕不开的刚需场景,从性能计时到定时任务,从日志记录到数据同步,时间模块始终是开发者最得力的工具之一,本文将通过真实案例... 目录一、时间基石:time.time()典型场景:程序性能分析进阶技巧:结合上下文管理器实现自动计时

Spring AI集成DeepSeek三步搞定Java智能应用的详细过程

《SpringAI集成DeepSeek三步搞定Java智能应用的详细过程》本文介绍了如何使用SpringAI集成DeepSeek,一个国内顶尖的多模态大模型,SpringAI提供了一套统一的接口,简... 目录DeepSeek 介绍Spring AI 是什么?Spring AI 的主要功能包括1、环境准备2

Spring AI集成DeepSeek实现流式输出的操作方法

《SpringAI集成DeepSeek实现流式输出的操作方法》本文介绍了如何在SpringBoot中使用Sse(Server-SentEvents)技术实现流式输出,后端使用SpringMVC中的S... 目录一、后端代码二、前端代码三、运行项目小天有话说题外话参考资料前面一篇文章我们实现了《Spring

Spring AI与DeepSeek实战一之快速打造智能对话应用

《SpringAI与DeepSeek实战一之快速打造智能对话应用》本文详细介绍了如何通过SpringAI框架集成DeepSeek大模型,实现普通对话和流式对话功能,步骤包括申请API-KEY、项目搭... 目录一、概述二、申请DeepSeek的API-KEY三、项目搭建3.1. 开发环境要求3.2. mav

C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)

《C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)》本文主要介绍了C#集成DeepSeek模型实现AI私有化的方法,包括搭建基础环境,如安装Ollama和下载DeepS... 目录前言搭建基础环境1、安装 Ollama2、下载 DeepSeek R1 模型客户端 ChatBo

Node.js net模块的使用示例

《Node.jsnet模块的使用示例》本文主要介绍了Node.jsnet模块的使用示例,net模块支持TCP通信,处理TCP连接和数据传输,具有一定的参考价值,感兴趣的可以了解一下... 目录简介引入 net 模块核心概念TCP (传输控制协议)Socket服务器TCP 服务器创建基本服务器服务器配置选项服