首先十分感谢Wy001大佬对我之前帖子的回答,没有他,我不可能完成的这么顺利
在昨天成功将yolo官方的模型转换成了kmodel并部署到了k230上,onnx的转换是用yolo的库,kmodel以及接下来的部署都是按照嘉楠官方文档操作(yolo大作战部分),目前问题是效果并不好:
这是直接用yolo11n.pt的预测结果:
这是部署到k230的预测结果:
可见还是有些差别的,并没有原版的这么准确。
想请问一些问题:
1.如何提高精度?我认为但是我.pt文件预测没问题,但是部署到k230就不太好了,那应该是我在经过onnx,kmodel转换时精度有损失,请问我这个思路对不对?
2.如果真是如此,在转换成kmodel过程中有没有什么参数是可以调整的?有没有说明文档讲解kmodel转换的原理以及参数优化?以及还想问个问题,kmodel量化所需要的数据集需不需要标签,是不是数据集的格式和训练时一样在一个文件夹里有标签和图片?
3.我看官方代码也是用python写的,有没有相关资料可以让进行源码部分的学习?
4.kmodel输出的张量格式是什么样子的,有没有相关资料,是和onnx输出的一样的吗?因为后续我可能要根据检测到的结果位置控制电机,想了解一下如何取kmodel输出的数据(也就是后处理部分)
5.获取kmodel后我根据官方文档说明进行了验证代码如下:(其中输入是640 640的)
python simulate.py --model ./yolo11n.onnx --model_input onnx_input_float32.bin --kmodel ./yolo11n.kmodel --kmodel_input kmodel_input_uint8.bin --input_width 640 --input_height 640
但程序并没有正常运行有以下报错:
最后再次感谢各位(尤其是Wy001大佬),开发者社区很好,帮助到了我很多!
移植后,感觉效果差很多,我搞的小目标检测,从test_onnx开始就没效果