SSD环境搭建
环境
Ubuntu 22.04 LTS + GCC 11/12
官网使用的是Ubuntu 16.04-12.04,所以操作会有所不同。
源码
此源码已经3年没有更新了,还是自己编译吧
首先下载源码
1 |
|
此源码是官方源码,但是已经3年没有更新了,无法适应当前的系统和环境。所以使用别人适配CUDNN8的版本,此版本fork的就是ssd分支。
1 |
|
编译操作在此版本源码中进行
依赖
安装编译依赖
1 |
|
需要将opencv/hdf5路径添加到环境变量
CUDA/CUDNN
目标检测需要应用硬件加速,硬件需要GPU支持,GPU需要CUDA/CUDNN。
Ubuntu 22.04 LTS在线软件源中的CUDA/CUDNN为11.5/8.2.4,无法运行,因为编译错误。报错parameter packs not expanded with '...'
官方最新版是12.5/9.1.1无法运行,因为编译错误。新版本报错blockIdx/__syncthreads()/__syncthreads_and() was not declared in this scope
11.7/8.9.7.29无法运行因为编译错误,11.8/8.9.7.292无法运行,因为编译错误。11.x版本的CUDA因为上游部分头文件已经不在,导致DKMS模块无法正常编译安装。
最终排查出12.3/8.9.7.29,可以正常支持编译。
按照正常流程安装CUDA 12.3 CUDNN 8.9.7.29。
编译
配置
先复制配置文件
1 |
|
设置CUDA路径,根据硬件修改CUDA_ARCH值,修改Python相关版本号为系统默认的3.10
编译
执行命令编译
1 |
|
测试用例结果为
编译Python库
执行命令编译
1 |
|
测试用例结果为
Python库没有问题需要把库添加到系统路径,以便使用。
添加环境变量
1 |
|
最好把库放在不常用的地方,防止误删。
测试
进入python导入库,注意这里导入的不是ssd或者caffe-ssd而是caffe。
1 |
|