Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 类型错误:graph_def必须是GraphDef原型_Python_Tensorflow_Keras_Proto_Tensorrt - Fatal编程技术网

Python 类型错误:graph_def必须是GraphDef原型

Python 类型错误:graph_def必须是GraphDef原型,python,tensorflow,keras,proto,tensorrt,Python,Tensorflow,Keras,Proto,Tensorrt,我将keras model.h5转换为freezed_graph.pb,以便在jetson上进行优化和运行。但是优化冻结的_graph.pb会产生错误 raise TypeError('graph_def必须是GraphDef proto')类型错误: graph_def必须是GraphDef原型 代码: import tensorflow.contrib.tensorrt as trt frozen_graph = './model/frozen_model.pb' output_names

我将keras model.h5转换为freezed_graph.pb,以便在jetson上进行优化和运行。但是优化冻结的_graph.pb会产生错误

raise TypeError('graph_def必须是GraphDef proto')类型错误: graph_def必须是GraphDef原型

代码:

import tensorflow.contrib.tensorrt as trt

frozen_graph = './model/frozen_model.pb'
output_names = ['conv2d_59','conv2d_67','conv2d_75']

trt_graph = trt.create_inference_graph(
    input_graph_def=frozen_graph,
    outputs=output_names,
    max_batch_size=1,
    max_workspace_size_bytes=1 << 25,
    precision_mode='FP16',
    minimum_segment_size=50
)

graph_io.write_graph(trt_graph, "./model/",
                     "trt_graph.pb", as_text=False)

您必须首先解析文件中的内容,然后将其作为参数传递:

导入tensorflow.contrib.tensorrt作为trt
冻结的_图='。/model/freezed_model.pb'
输出_名称=['conv2d_59'、'conv2d_67'、'conv2d_75']
#读取图形定义(二进制格式)
将开放(冻结的_图,'rb')作为f:
冻结图\u gd=tf.GraphDef()
冻结的\u图形\u gd.ParseFromString(f.read())
#如果冻结图形为文本格式,请按如下方式加载它
#导入google.protobuf.text_格式
#将开放(冻结的_图,'r')作为f:
#freezed_graph_gd=google.protobuf.text_format.Parse(f.read(),tf.GraphDef())
trt\u图=trt.create\u推断图(
输入_graph_def=freezed_graph_gd,#将解析后的图形定义传递到此处
输出=输出名称,
最大批量大小=1,

max\u workspace\u size\u bytes=1这是我得到的:tensorflow.python.framework.errors\u impl.InvalidArgumentError:无法导入元图,请查看错误日志以了解更多信息。@SaiKrishnadas这似乎是另一个错误,没有更多信息很难判断,是从
trt引发的异常。是否也创建推理图