我试图使用tensorflow lite-toco转换器来获得tflite图。我使用toco命令行来获取tflite图。在转换过程中,我没有收到任何错误,但是,我的转换似乎包含垃圾(输出为nans)。我想知道如何调试这个转换。
我做以下步骤:
>
加载. ckpt文件并转换为frozen_graph:
使用g.as_default(),g.device(device_t),\tf。Session(config=soft\u config)作为sess:batch\u shape=(batch\u size,)img\u shape img\u占位符=tf。占位符(tf.float32,shape=batch\u shape,name='img\u占位符')
preds = transform(img_placeholder)
saver = tf.train.Saver()
saver.restore(sess, checkpoint_dir)
frozen_graph_def = tf.graph_util.convert_variables_to_constants(sess,sess.graph_def,['transformer/up-sample/mul'])
with open('frozeen_graph.pb', 'wb') as f:
f.write(frozen_graph_def.SerializeToString())
Quastion:上面的代码是eqevatent的脚本的用法tenstorflow/python/工具/freeze_graph.py?
当我使用上面的代码时,我也通过laoding冻结图来检查冻结,并通过它传递输入图像,输出看起来不错。所以冷冻似乎起作用了。
toco \--graph_def_file=frozeen_graph。pb\
--输出文件=转换的图形。lite \--输入\格式=TENSORFLOW \ GRAPHDEF \--输出\格式=TFLITE \--输入\形状=1256256,3 \--输入\数组=img \ U占位符:0 \--输出\数组=转换器/上采样/多:0 \--推理\类型=浮点\--输入\数据\类型=浮点
当我执行上面的行时,我没有得到任何错误。请注意,我更改了图形,以消除一些“不支持的操作”错误。
接下来,我使用tenstorflow lite解释器来测试转换后的图形(使用python API):
tflite_graph_filename = 'converted_graph.lite'
# Load TFLite model and allocate tensors.
interpreter =
tf.contrib.lite.Interpreter(model_path=tflite_graph_filename)
interpreter.allocate_tensors()
# Get input and output tensors.
input_details = interpreter.get_input_details()
output_details = interpreter.get_output_details()
input_shape = input_details[0]['shape']
X = np.zeros(input_shape,np.float32)
X[0] = content_image
input_data = X
interpreter.set_tensor(input_details[0]['index'], input_data)
interpreter.invoke()
output_data = interpreter.get_tensor(output_details[0]['index'])
不幸的是output_data都是Nanes
有人能给我一些关于调试的建议或者做这种转换的正确方法吗?
多谢了瓦迪姆
一个简单的方法来转换您的。铅进入。答案如下:
https://stackoverflow.com/a/58583419/11517841
为了确保您不会犯任何与架构相关的错误,这里有一个供参考的“小心”:
https://stackoverflow.com/a/58583602/11517841
我已经使用tensorflow后端训练了一个DNN,我想在FireBase中托管它。训练好的模型被保存为.meta文件,我尝试使用下面的代码将模型转换为tflite,但我遇到了一些错误。那么我如何将这个模型转换成Tensorflow Lite呢?
我想在Tensorflow中将整数量化的tflite模型转换为冻结图(.pb)。我通读并尝试了许多有关StackOverflow的解决方案,但没有一个有效。具体来说,toco不起作用(输出格式不能是TENSORFLOW\u GRAPHDEF)。 我的最终目标是通过tf2onnx获得量化的ONNX模型,但tf2onnx不支持tflite作为输入(只支持保存的_模型、检查点和图形_定义)。但是,在使用
我是Tensorflow的初学者,请原谅我这个简单的问题,但我在哪里都找不到这个答案。我正致力于将mobilenet分段模型(http://download.tensorflow.org/models/deeplabv3_mnv2_pascal_trainval_2018_01_29.tar.gz)转换为Tensorflow-lite,用于移动推理,已经用了一个多星期了,但没有成功。我无法正确定义
我目前在转换张量流时遇到问题。pb模型到TFlite格式。我目前正在遵循谷歌代码实验室的指示,错误说 Traceback(最近调用的最后一次):文件/usr/local/bin/tflite_convert,第5行,在tensorflow.lite.python.tflite_convert导入主重要错误:没有模块命名lite.python.tflite_convert 我正在使用谷歌提供的命令
问题内容: 我遇到了ConcurrentModificationException,通过查看它,我看不到它发生的原因。引发异常的区域和所有修改集合的地方都被包围 我试图抓住讨厌的线程,但我能钉钉子(通过在异常中设置断点)是投掷线程拥有监视器,而另一个线程(程序中有两个线程)处于睡眠状态。 我应该如何进行?遇到类似的线程问题时,通常会做什么? 问题答案: 它可能与同步块无关。当您在迭代集合的元素时修
如何调试 在快速开始文档里十分简略的描述了调试过程,本文将详细描述如何调试QAP工程。为了更加方便的调试,请安装Chrome浏览器。 进入根目录 cd /path/to/your project 对于还来得及创建工程的开发者,可以使用qap create hello_world命令创建最简单的工程,然后cd ./hello_world。 或者使用qap的示例工程,qap demo --NukeU