vgg16 on keras for tensorflow

来源:互联网 发布:网络优化培训班 编辑:程序博客网 时间:2024/06/05 15:39

测试用

from keras.models import Sequentialfrom keras.layers.core import Flatten, Dense, Dropoutfrom keras.layers.convolutional import Convolution2D, MaxPooling2D, ZeroPadding2Dfrom tensorflow.contrib.keras.python.keras.optimizers import SGDimport  numpy as np
Using TensorFlow backend.
import cv2%pwd
'D:\\ai'
from tensorflow.contrib.keras.python.keras.applications.vgg16 import VGG16
model = VGG16('vgg16_weights.h5')sgd = SGD(lr=0.1, decay=1e-6, momentum=0.9, nesterov=True)#model.compile(optimizer=sgd, loss='mean_squared_error')model.compile(loss='mean_squared_error', optimizer=sgd)
def load_image(imageurl):    im = cv2.resize(cv2.imread(imageurl),(224,224)).astype(np.float32)    #im[:,:,0] -= 103.939    #im[:,:,1] -= 116.779    #im[:,:,2] -= 123.68    #im = im.transpose((2,0,1))    im = np.expand_dims(im,axis=0)    return im
f = open('synset_words.txt','r')lines = f.readlines()f.close()
def predict(url):    im = load_image(url)    pre = np.argmax(model.predict(im))    print(lines[pre])
%pylab inline
Populating the interactive namespace from numpy and matplotlibD:\Anaconda3\lib\site-packages\IPython\core\magics\pylab.py:161: UserWarning: pylab import has clobbered these variables: ['f']`%matplotlib` prevents importing * from pylab and numpy  "\n`%matplotlib` prevents importing * from pylab and numpy"
from IPython.display import Image
Image('airplane.jpg')

jpeg

predict('liuyan.jpg')
n10148035 groom, bridegroom
原创粉丝点击