基于AidLux的项目实战之 智能预警在AidLux上的部署与应用

1.YOLOP模型onnx转换部署

YOLOP导出onnx模型

执行命令:

python3 export_onnx.py --height 640 --width 640

执行完成后,会在weights文件夹下生成转换成功的onnx模型

基于AidLux的自动驾驶智能预警应用方案_python

2.AidLux模型转换工具Al Model Optimizer

通过该工具对onnx模型转换成pt模型

基于AidLux的自动驾驶智能预警应用方案_预处理_02

3.YOLOP模型在AidLux上部署与应用

将项目上传到home文件夹,执行命令: pip install -r requirements.txt安装依赖环境,并通过demo.py验证推理效果。

基于AidLux的自动驾驶智能预警应用方案_帧率_03

4.智能预警系统代码实战

智能预警系统包含3个任务:目标检测,可行驶区域检测,车道线检测

1.输入:读取视频图像作为输入,图像尺寸1920*1080

基于AidLux的自动驾驶智能预警应用方案_帧率_04

2.预处理

2.1 将输入尺寸19201080 resize+padding到640640

2.2 归一化

2.3 6406403 -->13640*640

3.使用onnx模型进行推理

读取模型-->准备数据-->推理

得到det_out, da_seg_out, ll_seg_out,shape分别为:(1,n,6)(1,2,640,640)(1,2,640,640)

4.后处理

4.1将检测结果,可行驶区域检测结果,车道线检测结果,合并到一张图像上,分别用不同的颜色标记出来4.2将检测的帧数,帧率,车辆数等信息显示在图像上

基于AidLux的自动驾驶智能预警应用方案_帧率_05

5.输出

获取最终融合的图像,并保存成视频,图像尺寸、帧率、编码是原视频尺寸、帧率和编码

基于AidLux的自动驾驶智能预警应用方案_python_06

实战视频效果见下方链接

基于AidLux的自动驾驶智能预警应用方案_哔哩哔哩_bilibili