Skip to content

Multiple fix and proposals to better handle yolo network

Charles Villard requested to merge silvanosky/aidge_onnx:feature/yolo into dev

Context

In the objective of handling Yolov10 for the compression module, import and export of the Yolov10 onnx is required. Some opetators and type handling were missing. For compatibility with other libraries like ultralytics for benchmark, the input and output tensors of the network must be the same.

Modified files

  • aidge_onnx/onnx_import.py
  • aidge_onnx/onnx_export.py
  • aidge_onnx/node_import/onnx_converters/cast.py
  • aidge_onnx/node_export/aidge_converters/slice.py
  • aidge_onnx/node_export/aidge_converters/sigmoid.py
  • aidge_onnx/node_export/aidge_converters/resize.py
  • aidge_onnx/node_export/aidge_converters/div.py
  • aidge_onnx/node_export/aidge_converters/cast.py
  • aidge_onnx/dtype_converter.py

Detailed major modifications

  • Added export of operators cast, sigmoid, resize.

  • Added attributes for div operators.

  • Removed the need of empty tensor for the slice operators, empty connection seems to be better handled by other inference frameworks.

  • Fixed type converted typing.

Major modification:

Instead of using "{aidge_node.name()}_in{i}" naming for connections, the naming is handled by aidge_core. This allows to keep the names of input onnx when exporting without additional nodes. This needs <aidge_core!371 (merged)>

Merge request reports

Loading