
文章插图
可能有人会问,车距是怎么算出来的?其实车距计算采用的是透视变换原理 , 使用opencv的getPerspectiveTransform方法通过将驾驶过程中拍摄的直视图转换成俯视图计算车距 。此外,用来拍摄行驶画面的相机也影响车距的计算 。需要查找相机的内外参矩阵 , 结合畸变系数用相机标定技术将图像中的距离信息映射为客观世界中的真实距离,从而计算出与其他车的距离 。这几个参数如何查找可以参考文末的视频链接 。
我们的项目代码全部开源 , 感兴趣的小伙伴可以下拉到文末直接访问源码 。当前开发的这个AI辅助驾驶小应用,针对分辨率1280x720、帧率29.97、时长16秒的视频,单帧图像在昇腾AI处理器上的纯推理时长为14.19毫秒,但由于图像的前处理和后处理是在CPU上进行的,因此影响整体性能,可通过以下方式改进:
1. 前处理和后处理根据CPU数量和处理时长使用多个线程并行处理,提高昇腾AI处理器使用率 。

文章插图
2. 使用多个昇腾AI处理器进行多路推理,进一步提升性能 。3. 优化代码算法,将后处理部分由CPU下沉到昇腾AI处理器减少后处理耗时,如何下沉可参考https://gitee.com/ascend/samples/tree/master/python/level2_simple_inference/2_object_detection/YOLOV3_coco_detection_picture_with_postprocess_op4. 使用Auto Tune工具 , 对模型进行调优,减少模型单次推理时长5. 使用Profiling工具 , 分析模型中耗时算子,对算子进行优化
欢迎小伙伴一起参与项目改进 , 如有疑问也欢迎在gitee互动留言!
总结如今很多汽车、高铁和飞机上都搭载了辅助驾驶系统,不仅可以减轻驾驶员的负担,同时还降低了事故发生的概率 。随着越来越多的行业汇入AI这条道路,昇腾CANN也将凭借技术优势大大降低企业和个人开发者的使用门槛,通过不断创新打造昇腾AI极致性能体验,加速AI应用行业落地步伐,助力合作伙伴在未来AI之路上越走越远!
相关链接在线体验链接:https://www.hiascend.com/zh/developer/mindx-sdk/driveassistGitee源码链接:https://gitee.com/ascend/samples/tree/master/python/level2_simple_inference/2_object_detection/YOLOV4_coco_detection_car_videoYOLOv4原论文:https://arxiv.org/abs/2004.10934YOLO原论文:https://arxiv.org/pdf/1506.02640.pdfYOLOv4模型实现:https://github.com/AlexeyAB/darknet相机参数查找方法:https://www.bilibili.com/video/BV1Fq4y1H7sx/
点击关注,第一时间了解华为云新鲜技术~
推荐阅读
- 基于PL022 SPI 控制器 海思3516系列芯片SPI速率慢问题深入分析与优化
- 基于vite3+tauri模拟QQ登录切换窗体|Tauri自定义拖拽|最小/大/关闭
- 基于tauri+vue3.x多开窗口|Tauri创建多窗体实践
- 提高工作效率的神器:基于前端表格实现Chrome Excel扩展插件
- 基于雪花算法的增强版ID生成器
- 基于QT和C++实现的翻金币游戏
- Mysql单表访问方法,索引合并,多表连接原理,基于规则的优化,子查询优化
- 基于tauri打造的HTTP API客户端工具-CyberAPI
- 基于纯前端类Excel表格控件实现在线损益表应用
- 知识图谱实体对齐2:基于GNN嵌入的方法