如题,我猜测是量化的时候损失精度太多?
我也测试Demo程序,发现识别精度一样很差。。应该怎么提高精度阿?
还有一个问题就是,Demo程序偶尔会出现崩溃的问题。
@zhakangning 那你可以需要自己优化模型结构,从浮点转换成整型是会丢失掉一部分精度的。这毕竟是一个近似转换,这里提供几个思路
- demo里面对图片只进行了1次risize,方式是伸缩变形,这会造成一些精度损失,建议改成2次resize,改成按比例缩放并填充黑色,这样子精度会有提升
- 调整你转换时的参数,看看能不能提升精度,你可以研究下转换参数,不同参数是会有不同的效果的
- 优化yolov3的cfg文件,再重新训练
@zhakangning 崩溃的问题,我会测试验证。这个仅仅是demo,仅供参考,要实际应用,还是要自己写应用的
可以不量化直接转换模型到板子上运行吗?
凑字数凑字数凑子
@zhakangning 不量化,那你就需要自己在后续的C++源码中去处理这个过程,建议是在转换过程中量化
意思转换过程中不量化,后续程序运行的时候还是需要把32位浮点型转化为8位的过程吗?
换句话说,咱们这个VIM3的NPU可以支持32位浮点型的计算吗?
@zhakangning NPU只支持整型
哦,明白了,谢谢!
00000000000000000000000
@Frank 这个Demo除了那张1080p.bmp的示例照片,我用其他照片测试都没有检测正确的。。是我哪里操作不对吗?
@zhakangning 图片检测的这个,确认存在问题,你可以先使用摄像头的demo,那边是正常啊的。或者回退git到这个commit: 1c3380a97606b85dbe3c087bf0f0576dbf7793b3
我这里没有摄像头,可以直接给我发一个正常的图片识别的Demo程序源码吗?
326482852@qq.com
感谢!
@zhakangning 回退代码到1c3380a97606b85dbe3c087bf0f0576dbf7793b3这个commit就行,但是这个是使用opencv做resize,不是用ge2d的
软解码是解jpg吗?
这个github链接是哪个?我记得有一个只包含demo程序的https://gitlab.com/khadas/aml_npu_demo_binaries
有一个是包含demo源码的
可执行程序是这个仓库https://gitlab.com/khadas/aml_npu_demo_binaries
回退到这个commit: 1c3380a97606b85dbe3c087bf0f0576dbf7793b3
测试完可以了,最新版本是Demo是哪一层出问题了?
根据我的研究有3层,最上层是detect_demo,中间是libnn_detect.so,底层是libnn_yolo.so
@zhakangning 应用层处理图片的地方有问题,与库无关
@Frank 这个应用层代码的bug有计划修复吗?或者能提供一份以前正常的应用层代码吗?我这边需要根据这个代码来修改,实现自己的业务逻辑。
@zhakangning 在计划中,但是没这么快,最快下周处理。你可以回退到79429a1565a5d0c3dda8f2a24792127de628eeca