软件开发 | 如何写软件开发文档

1. 需求规格说明

依据什么需求,开发出什么

2. 系统设计

2.1 开发环境

硬件开发平台:NVIDIA Jetson TX2
工业相机:***
操作系统:Ubuntu 16.04
开发平台:ROS
编程语言:Python、C++

2.2 总体设计

系统包含:数据采集、算法实现、结果输出

2.2.1 数据采集

在某某硬件平台上安装某某操作系统,安装ROS,安装驱动,采集数据

2.2.2 算法实现

采用深度学习、机器学习算法实现某某功能

2.2.3 结果输出

针对某某进行输出

3. 编程实现

程序流程图绘制

4.集成

集成包括内部模块的集成和与外部其他模块的集成。
内部模块的集成,主要包括实时采集图像,输入到检测模块处理,然后保存结果供调试使用,最后将检测结果发送出去。
与外部模块的集成,即决策模块,是通过ROS完成的,红绿灯识别模块和决策模块分别为两个节点,红绿灯识别节点发布带有检测结果的话题,决策节点订阅这个话题就可以获取检测结果。

5.测试

测试分为离线测试和在线测试。
离线测试为搭建环境,训练模型,编程实现,测试结果,主要是在线测试前的准备过程。
在线测试需要在真实场景下进行实车测试,检验方案的有效性

6.维护

此方案主要针对特定地点路口红绿灯的识别问题,如果场景变化,还要重新采集数据集进行训练。
目前版本对GPU依赖较高,同时存在实时性不高的问题,后期会优化模型,使用或研发性能更好的框架进行模型的训练。

参考链接:https://blog.csdn.net/learning_tortosie/article/details/79959969

发布了394 篇原创文章 · 获赞 562 · 访问量 48万+

猜你喜欢

转载自blog.csdn.net/qq_15698613/article/details/102568538
今日推荐