TI中文支持网
TI专业的中文技术问题搜集分享网站

SK-TDA4VM: 怎样将edgeai-yolov5训练出的网络在TDA4上的运行?

Part Number:SK-TDA4VM

edgeai-yolov5使用命令:python train.py –data coco.yaml –cfg yolov5s6.yaml –weights '' –batch-size 64

训练出网络runs/train/exp2/weights/best.pt

 使用如下命令将其转换成onnx:python export.py –weights pretrained_models/yolov5s6_640_ti_lite/weights/best.pt –img 640 –batch 1 –simplify –export-nms –opset 11

但生成onnx的同时没有同步生成对应的.prototxt文件,请问这个prototxt文件该如何生成?
没有prototxt文件,则无法使用edgeai-tidl-tool生成xx.bin文件,望答复,谢谢!

Cherry Zhou:

您好我们已收到您的问题并升级到英文论坛,因感恩节假期,预计答复您的时间将稍晚。敬请谅解!

,

xiaofei cai:

您好!请崔一下吧

,

Cherry Zhou:

很抱歉,已帮您催促工程师,有新的消息会尽快给到您。

,

Cherry Zhou:

您好,请您参阅以下信息:如果您正在关注该GitHub,您可以在以下压缩文件中找到该原型文件:https://github.com/TexasInstruments/edgeai-yolov5/tree/master/pretrained_models/modelartifacts/8bits

,

xiaofei cai:

这个文件我早已看过了,对不上啊,我想知道这个prototxt文件是如何生成的,里面的数字是怎么计算出来的

,

Cherry Zhou:

抱歉回复晚了。

请您先查看yolov5:的example prototxt files:

https://github.com/TexasInstruments/edgeai-yolov5/tree/master/pretrained_models/models

您是在找这个model吗?

https://github.com/TexasInstruments/edgeai-yolov5/tree/master/pretrained_models/models/yolov5s6_640_ti_lite/weights

NOTE: .link 文件是text file,打开之后您可以获取实际文件的 URL ,然后用 wget 下载。

此外您能否提供已经导出的onnx moel以及您在使用shared protocol导入时出现的错误?

,

xiaofei cai:

恩,里面的数值终于对上了,显示效果正常了

,

Cherry Zhou:

好的,感谢您的反馈,请问您还需要其他技术支持吗?

,

xiaofei cai:

有的,我在使用edgeai-tidl-tools,把语义分割的网络的onnx文件转化成bin的时候,运行的命令python onnxrt_ep.py -c,生成的.bin文件在TDA4上表现特别差,我注意到转化过程中有警告提示:WARNING: [TIDL_E_DATAFLOW_INFO_NULL] ti_cnnperfsim.out fails to allocate memory in MSMC. Please look into perfsim log. This model can only be used on PC emulation, it will get fault on target.

  还有一句看起来异常的提示:substitute string tidl_net_ not found  不知道是不是这个原因导致的,为什么会出现这样的警告?麻烦您帮我确认一下

,

Cherry Zhou:

您好,您能提供下ONNX model和相应的prototxt吗?非常感谢!

,

xiaofei cai:

http://software-dl.ti.com/jacinto7/esd/modelzoo/gplv3/08_00_00_05/edgeai-yolov5/pretrained_models/models/yolov5s6_384_ti_lite/weights/yolov5s6_384_ti_lite_32p8_51p2.onnx

http://software-dl.ti.com/jacinto7/esd/modelzoo/gplv3/08_00_00_05/edgeai-yolov5/pretrained_models/models/yolov5s6_384_ti_lite/weights/yolov5s6_384_ti_lite_metaarch.prototxt

试下这个吧

,

Cherry Zhou:

谢谢您的反馈,已跟进给工程师,预计下个工作日会给您答复。

,

Cherry Zhou:

您好,工程师那边试了下这个model,可以正常工作。 这些由TI分享的models和prototxt是经过验证的。根据pytorch和ONNX版本, prototxt可能需要进行一些更改。

 所以您能否提供确切的model和prototxt?这对我们帮助解决您的问题非常有帮助。

,

Cherry Zhou:

第一个误差是发生在校准期间,当modeil运行一个 epoch of floating point inference,应该是没问题的,不会在校准错误后出现。

第二个警告可以忽略掉。

问题应该应该是有关于正确定义prototxt, 如果没能正确定义该prototxt,某些layer会进入 ARM 并导致高延迟。

,

xiaofei cai:

多谢回复,只是这个prototxt里面的数据该如何确定,我并没有找到相关文档

,

Cherry Zhou:

帮您再跟进给工程师问下哈,同时温馨提示您由于圣诞以及新年假期,英文论坛的回复将稍慢,敬请谅解!

,

Cherry Zhou:

您好,非常抱歉回复晚了。

您可以从以下链接中获取最新的代码:

 https://github.com/TexasInstruments/edgeai-yolov5.

导出ONNX model时,也会导出相应的prototxt file。

希望以上回答对您有所帮助。

赞(0)
未经允许不得转载:TI中文支持网 » SK-TDA4VM: 怎样将edgeai-yolov5训练出的网络在TDA4上的运行?
分享到: 更多 (0)