【LaneNet】Towards End-to-End Lane Detection: an Instance Segmentation Approach 代码复现

准备工作

Tensorflow版本1.14

安装tensorflow1.14步骤

1.新建虚拟环境

conda create --name 环境名称 python=3.6

2.切换虚拟环境

conda activate 环境名称

3.安装cudatoolkit

conda install cudatoolkit=10.1

4.安装cudnn

conda install cudnn=7.6.5

5.安装tensorflow-gpu版本

conda install tensorflow-gpu==1.14.0

6.检测是否安装完成

conda list

在这里插入图片描述
7.其他图像处理库也需要安装

数据集:tusimple数据集
复现代码lanenet-lane-detection-master
本地项目代码路径F:\car\code\lanenet-lane-detection-master
本地数据集路径F:\car\dataset\tusimple
vgg.npy下载放在项目路径的data目录中链接:
百度网盘链接提取码:3qm0

权重文件 百度网盘链接提取码:sj5t
项目下载下来需要加载权重文件,放在model文件夹
在这里插入图片描述

执行项目文件,脚本如下
src_dir是你自己的数据集的目录

cd lanenet-lane-detection/tools
python tools/generate_tusimple_dataset.py --src_dir=F:/car/dataset/tusimple/train_set

运行效果如下:
在这里插入图片描述

执行完毕之后会在F:\car\dataset\tusimple\train_set\training下生成train.txt文件
文件内容是打乱的图片路径:
在这里插入图片描述

将生成的train.txt文件,我们可以手动分割一下train set和val set,也就是剪切train.txt中的一部分到一个新建的val.txt文件中。该数据集共包含 3626 × 3 = 10878 3626\times 3 = 108783626×3=10878 张图片,我们选取1200张图片作为验证集(test:val约9:1)的比例。
执行以下代码

python data_provider/lanenet_data_feed_pipline.py --dataset_dir F:/car/dataset/tusimple/train_set/training --tfrecords_dir .\data\training_data_example\tfrecords

会在数据集目录下的training下生成val.txt和test.txt
在这里插入图片描述
另外也会在你的项目文件下的tfrecords文件夹生成如下文件
在这里插入图片描述
注意事项
ModuleNotFoundError: No module named ‘config’
如果出现上述错误,请在报错的地方加上
在这里插入图片描述

import sys 
sys.path.append('F:/car/code/lanenet-lane-detection-master')
sys.path.append('F:/car/code/lanenet-lane-detection-master/config')
sys.path.append('F:/car/code/lanenet-lane-detection-master/data_provider')
sys.path.append('F:/car/code/lanenet-lane-detection-master/lanenet_model')
sys.path.append('F:/car/code/lanenet-lane-detection-master/tools')

或者


import sys,os
sys.path.append(os.path.dirname(__file__) + os.sep + '../')

训练
下载VGG16网络的预训练权重vgg16.npy,下载完成以后将vgg16.npy放在data目录下,然后使用脚本tools/train_lanenet.py开始训练

python tools/train_lanenet.py --dataset_dir ./data/training_data_example --multi_gpus False --net_flag vgg

也可以用脚本

python tools/train_lanenet.py 
--net vgg 
--dataset_dir ./data/training_data_example
-m 0

效果
在这里插入图片描述
也可以使用加了预训练权重的模型

python tools/train_lanenet.py 
--net vgg 
--dataset_dir data/training_data_example/ 
--weights_path path/to/your/last/checkpoint
-m 0

如果训练过程中自己断了,或者是被别人挤掉了,可以执行下面的代码继续上次中断的地方开始训练。

python tools/train_lanenet.py 
--net vgg 
--dataset_dir data/training_data_example/ 
 
###后面的.data .index  .meta    不需要写
--weights_path ./model/tusimple_lanenet_vgg/tusimple_lanenet_vgg_****-**-**-**-**-**.ckpt-*****  
 
-m 0

使用tensorboard查看训练过程:

cd tboard/tusimple_lanenet_vgg/
tensorboard --logdir=.

车道线检测

python tools/test_lanenet.py --weights_path model/New_Tusimple_Lanenet_Model_Weights/tusimple_lanenet_vgg.ckpt  --image_path data/tusimple_test_image/0.jpg

运行结束后会跳出四张图片,保存即可。
在这里插入图片描述

参考博文

  • 2
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值