本设计方案致力于解决目标:建设包容、安全、有抵御灾害能力和可持续的城市和人类住区中的交通问题,在此提出一种基于OpenHarmony实现道路维护的方案,通过深度学习的方式对道路的裂缝进行实时检测,增加道路的可持续使用性。
由于传统的道路裂缝检测精度和距离有限,大部分仍需要人工检测,而人工裂缝检测的过程又十分的繁琐,检测的实时性与高效性普遍较低。本方案基于海思HI3516DV300图像化处理方法,并部署深度学习模型,对道路裂缝进行检测。
话不多说,我们先上图上视频:检测电路正视图:
./darknet detector train hand.data cfg/resnet18.cfg
3.3 YOLO v2受到faster rcnn的启发,引入了anchor。同时使用了K-Means方法,对anchor数量进行了讨论,在精度和速度之间做出折中。并且修改了网络结构,去掉了全连接层,改成了全卷积结构。在训练时引入了世界树结构,将检测和分类问题做成了一个统一的框架,并且提出了一种层次性联合训练方法。3.4 检测训练数据本次检测网选择了2000张带有道路裂缝的图像进行标注,在搭建好的服务器进行30200次迭代,直至模型收敛。
# subdivisions=1
# Testing
batch=48
subdivisions=8
height-384
width=640
channels=3
momentum=0.9
decay=0.0005
angle=0
saturation = 1.5
exposure = 1.5
hue=0.1
learning rate=0.01
burn in=10000
max batches = 300200
policy=steps
steps=100000, 200000, 250001
scales=.1,.1,.1
3.6 模型训练IOU值接近0.98 class值接近0.99999 Obj值在0.003以下。
代码地址:https://github.com/ChenYingpeng/darknet2caffe
转换命令:python darknet2caffe.py resnet18.cfg resnet18_new_final.weights resnet18.prototxt resnet18.caffemodel
5.1.2 分类网得到的权重转换分类网得到的权重转换为caffe模型需要在caffe环境下并需要依赖torch和torchvison代码地址:https://codeload.github.com/xxradon/PytorchToCaffe/zip/refs/heads/master
转换命令:python example/resnet_pytorch_2_caffe.py
5.2 开发环境本次采用windows+ubuntu混合开发,具体操作流程可参考HarmonyOS Device社区:
https://device.harmonyos.com/cn/docs/documentation/guide/ide-install-windows-ubuntu-0000001194073744
5.3 模型量化得到的caffe模型后使用Ruyistudio工具对.prototxt进行量化,并在此之前修改prototxt文件进行适配使得NNIE(编者注:是Neural Network Inference Engine 神经网络计算引擎的英文缩写)能够支持网络结构,最终生成WK文件。5.4 板端适配将得到的WK文件在OpenHarmony中基于SDK sampled的网络进行修改,适配 ,配置依赖 ,编译(在此之前OpenHarmony小型系统的主干代码已经整体编译通过),最终生成可执行文件,并挂在到HI3516DV300板端。5.5 加载文件检测网生成的WK文件在OpenHarmony中编译后得到可执行文件,并挂载板端,启动开发板应用驱动,加载可执行文件
驱动命令 :insmod hi_mipi_tx.ko
加载文件 :./ohos_yolov2_creak_demo 1
分类网生成的WK文件在OpenHarmony中编译后得到可执行文件,并挂载板端,启动开发板应用驱动,加载可执行文件驱动命令:insmod hi_mipi_tx.ko
加载文件:./ohos_cnn_creak_demo 0
6. 实验效果6.1 检测效果:
6.2 Creak分类效果:
Creak分类效果高达100%
6.3 NoCreak分类效果:
NoCreak分类效果高达97%
![]() |
原文标题:玩嗨OpenHarmony:基于OpenHarmony的道路维护方案
文章出处:【微信公众号:开源技术服务中心】欢迎添加关注!文章转载请注明出处。
全部0条评论
快来发表一下你的评论吧 !