【TensorFlow系列】【五】利用inception v3 pb模型文件作預測

本文介紹如何利用imagenet比賽上訓練好的inception v3凍結的pb模型進行inference。python

1.下載inception v3 pb文件。session

2.導入pb到TensorFlow。code

3.獲取輸入與預測Tensor。圖片

4.加載圖片get

5.進行inferenceinput

【一】先看代碼it

import tensorflow as tf
import numpy as np
'''
下載訓練好的pb文件
'http://download.tensorflow.org/models/image/imagenet/inception-2015-12-05.tgz'
'''
pb_path = r"D:\TensorFlow-model\inception-2015-12-05\classify_image_graph_def.pb"
with tf.gfile.FastGFile(pb_path,'rb') as f:
    graph_def = tf.GraphDef()
    graph_def.ParseFromString(f.read())
    tf.import_graph_def(graph_def, name='')
with tf.Session() as session:
    #獲取pb文件中模型的全部op,主要是爲了得到input與output
    print(tf.get_default_graph().get_operations())
    image = "D:\TensorFlow-model\inception-2015-12-05\cropped_panda.jpg"
    #解碼圖片做爲inference的輸入
    image_data = tf.gfile.FastGFile(image, 'rb').read()
    softmax_tensor = session.graph.get_tensor_by_name('softmax:0')
    predictions = session.run(softmax_tensor,
                           {'DecodeJpeg/contents:0': image_data})
    index = np.argmax(predictions,1)
    print(index)

結果以下:io

label爲169,從文件中找到169是哪一個類別ast

如下圖片中的文件,來自於上述代碼連接中下載的壓縮包解壓後的文件。class

該文件說明了label屬於哪一個分類

再在以下文件中查找:

是說:該圖片是一直熊貓

相關文章
相關標籤/搜索