提交 0cd95062 编写于 作者: Q qiaolongfei

add onnx init file

上级 db44c87e
from __future__ import absolute_import
from __future__ import division
from __future__ import print_function
from __future__ import unicode_literals
import google.protobuf.message
from .onnx_pb2 import ModelProto
def load(obj):
'''
Loads a binary protobuf that stores onnx model
@params
Takes a file-like object (has "read" function)
or a string containing a file name
@return ONNX ModelProto object
'''
if hasattr(obj, 'read') and callable(obj.read):
s = obj.read()
else:
with open(obj, 'rb') as f:
s = f.read()
return load_from_string(s)
def load_from_string(s):
'''
Loads a binary string that stores onnx model
@params
Takes a string object containing protobuf
@return ONNX ModelProto object
'''
model = ModelProto()
decoded = model.ParseFromString(s)
# in python implementation ParseFromString returns None
if decoded is not None and decoded != len(s):
raise google.protobuf.message.DecodeError(
"Protobuf decoding consumed too few bytes: {} out of {}".format(
decoded, len(s)))
return model
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册