Checker with simple ONNX model structure. Simple Structure Checker for ONNX.
https://github.com/PINTO0309/simple-onnx-processing-tools
- Analyzes and displays the structure of huge size models that cannot be displayed by Netron.
### option
$ echo export PATH="~/.local/bin:$PATH" >> ~/.bashrc \
&& source ~/.bashrc
### run
$ pip install -U onnx rich onnxruntime \
&& pip install -U ssc4onnx \
&& python -m pip install onnx_graphsurgeon \
--index-url https://pypi.ngc.nvidia.com
https://github.com/PINTO0309/simple-onnx-processing-tools#docker
$ ssc4onnx -h
usage:
ssc4onnx [-h]
-if INPUT_ONNX_FILE_PATH
optional arguments:
-h, --help
show this help message and exit.
-if INPUT_ONNX_FILE_PATH, --input_onnx_file_path INPUT_ONNX_FILE_PATH
Input onnx file path.
>>> from ssc4onnx import structure_check
>>> help(structure_check)
Help on function structure_check in module ssc4onnx.onnx_structure_check:
structure_check(
input_onnx_file_path: Union[str, NoneType] = '',
onnx_graph: Union[onnx.onnx_ml_pb2.ModelProto, NoneType] = None
) -> Tuple[Dict[str, int], int]
Parameters
----------
input_onnx_file_path: Optional[str]
Input onnx file path.
Either input_onnx_file_path or onnx_graph must be specified.
Default: ''
onnx_graph: Optional[onnx.ModelProto]
onnx.ModelProto.
Either input_onnx_file_path or onnx_graph must be specified.
onnx_graph If specified, ignore input_onnx_file_path and process onnx_graph.
Returns
-------
op_num: Dict[str, int]
Num of every op
model_size: int
Model byte size
$ ssc4onnx -if deqflow_b_things_opset12_192x320.onnx
from ssc4onnx import structure_check
structure_check(
input_onnx_file_path="deqflow_b_things_opset12_192x320.onnx",
)
https://github.com/PINTO0309/ssc4onnx/releases/download/1.0.6/deqflow_b_things_opset12_192x320.onnx
Kazam_screencast_00002_.mp4
- https://github.com/onnx/onnx/blob/main/docs/Operators.md
- https://docs.nvidia.com/deeplearning/tensorrt/onnx-graphsurgeon/docs/index.html
- https://github.com/NVIDIA/TensorRT/tree/main/tools/onnx-graphsurgeon
- https://github.com/PINTO0309/simple-onnx-processing-tools
- https://github.com/PINTO0309/PINTO_model_zoo
https://github.com/PINTO0309/simple-onnx-processing-tools/issues