CondLaneNet复现

bash 复制代码
lsb_release -a

Distributor ID: Ubuntu

Description: Ubuntu 18.04.4 LTS

Release: 18.04

Codename: bionic

安装cuda

不需要安装driver,如果勾选着可能会安装失败,取消driver的选项即可。
https://developer.nvidia.com/cuda-toolkit-archive

bash 复制代码
sh cuda_10.2.89_440.33.01_linux.run
bash 复制代码
vim ~/.bashrc 
bash 复制代码
export PATH=/usr/local/cuda-10.2/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64:$LD_LIBRARY_PATH
bash 复制代码
source ~/.bashrc
nvcc -V

nvcc: NVIDIA (R) Cuda compiler driver

Copyright (c) 2005-2019 NVIDIA Corporation

Built on Wed_Oct_23_19:24:38_PDT_2019

Cuda compilation tools, release 10.2, V10.2.89

安装annoconda

下载之前版本的,查找网站https://repo.anaconda.com/archive/

annoconda自带python版本,参考https://github.com/koverholt/anaconda-version-map

bash 复制代码
sh Anaconda3-2020.02-Linux-x86_64.sh

安装完成后,重新打开终端就可以使用了。通过conda create创建新的环境。

安装 pytorch

bash 复制代码
pip3 install torch==1.8.1+cu102 torchvision==0.9.1+cu102 torchaudio===0.8.1 -f https://download.pytorch.org/whl/torch_stable.html

可以测试一下

python 复制代码
import torch
 
print(torch.__version__)
print(torch.cuda.is_available())
 
x = torch.randn(1)
if torch.cuda.is_available():
    device = torch.device("cuda")
    y = torch.ones_like(x, device=device)
    x = x.to(device)
    z = x + y
    print(z)
    print(z.to("cpu", torch.double))

安装opencv

bash 复制代码
apt-get update
apt-get install -y libsm6 libxext6 libxrender-dev
pip install opencv-python==4.1.1.26

报错: ImportError: libGL.so.1: cannot open shared object file: No such file or directory

bash 复制代码
pip install opencv-python-headless==3.4.11.43

安装mmcv

原始代码中用的mmcv和mmdet还是非正式版本,现在都找不到哪里可以下载,放弃了,使用新版本,还修改了原来代码中对mmdet的某些引用,替换成了os库中的。

选择mmdet之前版本的说明文档,可以看到mmdet和mmcv的版本兼容对应。
https://mmdetection.readthedocs.io/zh-cn/v2.24.0/get_started.html

从官方的网站上,下载之前的mmcv版本,下载whl文件后自己安装比较快。https://download.openmmlab.com/mmcv/dist/cu102/torch1.8.0/index.html

bash 复制代码
pip install mmcv_full-1.3.0-cp37-cp37m-manylinux1_x86_64.whl

安装mmdet(不需要,但我瞎安了好久)

这个真的巨麻烦,各种版本的不匹配,代码的不可用...

但是原本代码里是自带mmdet 2.0.0的,版本很低,和mmcv不匹配..反正都是坑。

报错:note: This error originates from a subprocess, and is likely not a problem with pip.

error: legacy-install-failure

安装cython的低版本,之后正常安装。

bash 复制代码
pip3 install cython==0.29.33 -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
pip install mmdet==2.11.0

运行

bash 复制代码
git clone https://github.com/aliyun/conditional-lane-detection.git
cd conditional-lane-detection
bash 复制代码
pip install -r requirements/build.txt
python setup.py develop

albumentations==0.4.6 竟然需要opencv-python==4.1.1以上,我真的吐血。所以前面安装opencv的时候装的4.1.1.26。

mmcv==0.5.6我不知道怎装,之前版本只找到了arm架构的安装包,没有x86的,很吐血,我装的是1.1.3,之前描述了。所以会遇到问题

报错:KeyError: 'ConvWS is already registered in conv layer'

修改下文件就行了

conditional-lane-detection/mmdet/ops/conv_ws.py"

python 复制代码
@CONV_LAYERS.register_module('ConvWS')
修改为:
@CONV_LAYERS.register_module(name='ConvWS', force=True)

创建tusimple的label

bash 复制代码
python generate_seg_tusimple.py --root /opt/data/private/msl/Testmodel/tusimple

运行测试代码

bash 复制代码
python tools/condlanenet/tusimple/test_tusimple.py /opt/data/private/shaohua/TestModel/conditional-lane-detection/configs/condlanenet/tusimple/tusimple_small_test.py  tusimple_small.pth

测试tusimple_large的时候会报错,需要修改test文件中的内容。参考
TuSimple Test: The model and loaded state dict do not match exactly. · Issue #16 · aliyun/conditional-lane-detection · GitHub

相关推荐
余生H1 小时前
transformer.js(三):底层架构及性能优化指南
javascript·深度学习·架构·transformer
罗小罗同学1 小时前
医工交叉入门书籍分享:Transformer模型在机器学习领域的应用|个人观点·24-11-22
深度学习·机器学习·transformer
孤独且没人爱的纸鹤1 小时前
【深度学习】:从人工神经网络的基础原理到循环神经网络的先进技术,跨越智能算法的关键发展阶段及其未来趋势,探索技术进步与应用挑战
人工智能·python·深度学习·机器学习·ai
阿_旭1 小时前
TensorFlow构建CNN卷积神经网络模型的基本步骤:数据处理、模型构建、模型训练
人工智能·深度学习·cnn·tensorflow
羊小猪~~1 小时前
tensorflow案例7--数据增强与测试集, 训练集, 验证集的构建
人工智能·python·深度学习·机器学习·cnn·tensorflow·neo4j
极客代码1 小时前
【Python TensorFlow】进阶指南(续篇三)
开发语言·人工智能·python·深度学习·tensorflow
zhangfeng11331 小时前
pytorch 的交叉熵函数,多分类,二分类
人工智能·pytorch·分类
Seeklike1 小时前
11.22 深度学习-pytorch自动微分
人工智能·pytorch·深度学习
YRr YRr2 小时前
如何使用 PyTorch 实现图像分类数据集的加载和处理
pytorch·深度学习·分类
不去幼儿园3 小时前
【MARL】深入理解多智能体近端策略优化(MAPPO)算法与调参
人工智能·python·算法·机器学习·强化学习