-
大小: 8KB文件類型: .zip金幣: 2下載: 0 次發(fā)布日期: 2021-05-16
- 語言: Python
- 標(biāo)簽: Python??機(jī)器學(xué)習(xí)??Transorflow??深度學(xué)習(xí)??
資源簡介
最好聯(lián)系書本學(xué)習(xí),input是輸入文件,evaluateCatorDog是主文件,traning是訓(xùn)練文件,model模型文件

代碼片段和文件信息
#-*-?coding:utf-8?–*-
import?tensorflow?as?tf?
from?PIL?import?Image??
import?matplotlib.pyplot?as?plt
import?input_data?
import?numpy?as?np
import?model
import?os?
??
#從訓(xùn)練集中選取一張圖片?
def?get_one_image(train):?
????files?=?os.listdir(train)
????n?=?len(files)
????ind?=?np.random.randint(0n)
????img_dir?=?os.path.join(trainfiles[ind])??
????image?=?Image.open(img_dir)??
????plt.imshow(image)
????plt.show()
????image?=?image.resize([208?208])??
????image?=?np.array(image)
????return?image??
??
??
def?evaluate_one_image():??
????train?=?‘train‘
??
????#?獲取圖片路徑集和標(biāo)簽集
????image_array=get_one_image(train)
??????
????with?tf.Graph().as_default():??
????????BATCH_SIZE?=?1??#?因?yàn)橹蛔x取一副圖片?所以batch?設(shè)置為1
????????N_CLASSES?=?2??#?2個(gè)輸出神經(jīng)元,[1,0]?或者?[0,1]貓和狗的概率
????????#?轉(zhuǎn)化圖片格式
????????image?=?tf.cast(image_array?tf.float32)??
????????#?圖片標(biāo)準(zhǔn)化
????????image?=?tf.image.per_image_standardization(image)
????????#?圖片原來是三維的?[208?208?3]?重新定義圖片形狀?改為一個(gè)4D??四維的?tensor
????????image?=?tf.reshape(image?[1?208?208?3])??
????????logit?=?model.inference(image?BATCH_SIZE?N_CLASSES)??
????????#?因?yàn)?inference?的返回沒有用激活函數(shù),所以在這里對(duì)結(jié)果用softmax?激活
????????logit?=?tf.nn.softmax(logit)??
????????
????????#?用最原始的輸入數(shù)據(jù)的方式向模型輸入數(shù)據(jù)?placeholder
????????x?=?tf.placeholder(tf.float32?shape=[208?208?3])??
????????
????????#?you?need?to?change?the?directories?to?yours.??
????????logs_train_dir?=?‘/Data/savemodel‘????
????????#?定義saver?
????????saver?=?tf.train.Saver()??
??????????
????????with?tf.Session()?as?sess:??
??????????????
????????????print(“從指定的路徑中加載模型。。。。“)
????????????#?將模型加載到sess?中?
????????????ckpt?=?tf.train.get_checkpoint_state(logs_train_dir)??
????????????if?ckpt?and?ckpt.model_checkpoint_path:??
????????????????global_step?=?ckpt.model_checkpoint_path.split(‘/‘)[-1].split(‘-‘)[-1]??
????????????????saver.restore(sess?ckpt.model_checkpoint_path)??
????????????????print(‘模型加載成功?訓(xùn)練的步數(shù)為?%s‘?%?global_step)??
????????????else:??
????????????????print(‘模型加載失敗,,,文件沒有找到‘)??
????????????#?將圖片輸入到模型計(jì)算
????????????prediction?=?sess.run(logit?feed_dict={x:?image_array})
????????????#?獲取輸出結(jié)果中最大概率的索引
????????????max_index?=?np.argmax(prediction)??
????????????if?max_index==0:??
????????????????print(‘貓的概率?%.6f‘?%prediction[:?0])??
????????????else:??
????????????????print(‘狗的概率?%.6f‘?%prediction[:?1])?
#?測試
evaluate_one_image()
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件????????2839??2018-04-30?16:09??evaluateCatOrDog.py
?????文件????????1558??2018-05-03?14:42??input_data.cpython-36.pyc
?????文件????????2583??2018-04-09?15:09??input_data.py
?????文件????????2934??2018-05-03?14:42??model.cpython-36.pyc
?????文件????????5541??2018-04-09?15:09??model.py
?????文件????????2886??2018-05-02?17:08??training.py
評(píng)論
共有 條評(píng)論