基于Ultra的车道线检测在地平线旭日X3派上的部署和测试(Python版本和C++版本)

电脑端的测试环境搭建

代码和虚拟机百度网盘链接:

链接:https://pan.baidu.com/s/1WX5a8WPdTXMeMuVeuQscvg?pwd=l9vd 提取码:l9vd 

参考:基于Ultra的车道线检测在地平线旭日X3派上的部署和测试(Python版本和C++版本)---金书世界

github:https://github.com/cfzd/Ultra-Fast-Lane-Detection

conda create -n wyj_lane python=3.7
conda activate wyj_lane
pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu117
pip install -r requirements.txt
#测试
python demo.py configs/culane.py --test_model path_to_culane_18.pth

github上下在的Ultra内不包含测试的数据集,可以下载本人报读网盘内的测试程序包括我修改的模型转换代码和下载后配置好的测试数据集:ultra车道线检测->文件->Ultra-Fast-Lane-Detection-master.rar

模型转换(pth->onnx)

搭建好git上的测试工程后找到一下位置,添加一下代码运行一下测试就可以保存出onnx模型

https://github.com/cfzd/Ultra-Fast-Lane-Detection

在demo.py文件中找到net.load_state_dict()函数

在上述的net.load_state_dict()函数后添加一下代码

print("wyj=============================================================================================",net)
    dummy_input = torch.randn(1, 3,288,800)
    dummy_input = dummy_input.cuda()
    torch.onnx.export(net,dummy_input,"culane_18.onnx",opset_version=11,verbose=True)
    print("wyj=============================================================================================end")

运行一下测试就可以将onnx模型保存在当前的文件夹下

测试指令(测试时需要测试数据,这部分需要下载CULane数据集)

python demo.py configs/culane.py –test_model path_to_culane_18.pth

下载后的数据集放置在当前文件夹下就可以。数据自行百度下载,下载后的文件。(感谢网友的分享)

模型转换(onnx-bin)

使用的虚拟机(Ubuntu 64_kkX3_OCR)

使用教程

#激活虚拟环境
conda activate x3model

#进入到指定的测试路径
cd /home/kkx3/wyj/x3/TransModel/horizon_model_convert_sample/04_detection/09_lane/mapper

将需要转换的模型放置在一下路径下

01_check.sh文件的配置如下所示

#执行模型检查
bash 01_check.sh

修改配置配置文件02_preprocess.sh

#执行
bash 02_preprocess.sh 

修改配置文件

#执行
bash 03_build.sh

转换后的模型保存路径(/home/kkx3/wyj/x3/TransModel/horizon_model_convert_sample/04_detection/09_lane/mapper/model_output/culane_18.bin)

将上述转换后的模型上传到板端就可以测试了

板端的测试(python)

使用的文件是:10_lane_sample.rar,解压后放到板端并执行一下测试的指令就可以完成python版本的测试,在板端的实测推理时间约是43ms,实测的截图如下所示:

#上述的压缩包解压后复制到板端
cd /app/pydev_demo/10_lane_sample
#运行
./test_yolov5.py

运行后结果保存在当前的文件夹下,图片的名称为:lane_result.png

测试图片

测试结果

板端的测试(C++)

使用的文件是:bpu_lane.rar,解压后放到板端并执行一下测试的指令就可以完成python版本的测试,

#测试路径
/app/cdev_demo/bpu_lane
#编译
cd /app/cdev_demo/bpu_lane/src
make clean 
make 
#运行
cd /app/cdev_demo/bpu_lane/src/bin
./sample -f /app/model/basic/culane_18.bin -m 0

测试的结果视频

基于Ultra的车道线检测在地平线X3上是的测试视频

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值