测试用
from keras.models import Sequential
from keras.layers.core import Flatten, Dense, Dropout
from keras.layers.convolutional import Convolution2D, MaxPooling2D, ZeroPadding2D
from tensorflow.contrib.keras.python.keras.optimizers import SGD
import 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 matplotlib
D:\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