问题1:
对yolov8进行了修改,将主干修改为convnextv2,并导出为onnx。
随后放入unity后报错,Unknown type ReduceL2 encountered
原因在于截止到最新的barracuda3.0,仍未支持ReduceL2(Unity的捞逼效率
在这里可以查看目前支持的onnx层类型
https://docs.unity3d.com/Packages/com.unity.barracuda@3.0/api/Unity.Barracuda.Layer.Type.html
convnextv2中,作者设计的新BLock中存在一个GRN层,里面用到了torch.norm,这个东西转成ONNX会变成ReduceL2。
我这里只是为了跑通流程,所以解决方法简单粗暴。直接把用到GRN层的地方注释掉,这样会导致网络精度下降等一系列问题,后续有时间我会重构一下这里
注释完之后重新导出为onnx即可正常使用。