yolov5模型转换om模型的时候,我看了带NMS算子和不带NMS算子的转换案例。两个案例在第一步export.py脚本输出onnx之前,都会修改yolo.py,在detect.forwary方法中,添加self.training = True 。我的第一个问题就是:可不可以不添加training=True.
带NMS算子的om模型转换案例,会执行modify_model.py 在onnx模型中添加后处理算子。(参考https://gitee.com/ascend/modelzoo-GPL/blob/master/built-in/ACL_Pytorch/Yolov5_for_Pytorch/common/util/modify_model.py)
在添加两个输出节点时,有些参数不太理解
- box_out节点:6*1024, 我理解1024就是box的个数, 6应该就是 每个框的坐标个数,但是每个框的坐标个数应该4(x1, x2,y1, y2)+ obj_conf +cls_num,不应该是6
- box_out_num节点: [bs, 8], 为什么是8 ,代表什么
yolov5模型转换om模型的时候,我看了带NMS算子和不带NMS算子的转换案例。两个案例在第一步export.py脚本输出onnx之前,都会修改yolo.py,在detect.forwary方法中,添加self.training = True 。我的第一个问题就是:可不可以不添加training=True.
带NMS算子的om模型转换案例,会执行modify_model.py 在onnx模型中添加后处理算子。(参考https://gitee.com/ascend/modelzoo-GPL/blob/master/built-in/ACL_Pytorch/Yolov5_for_Pytorch/common/util/modify_model.py)
在添加两个输出节点时,有些参数不太理解
box_out = helper.make_tensor_value_info("box_out", onnx.TensorProto.FLOAT, [bs, 6 * 1024]) box_out_num = helper.make_tensor_value_info("box_out_num", onnx.TensorProto.INT32, [bs, 8])