In [9]:
# ------------------------------------------------- +
# Using Pre-Trained Model without modifications
# > py36, tf, keras, opencv, pillow
# ------------------------------------------------- +

import tensorflow as tf
import keras as keras

In [10]:
from keras.applications import ResNet50
from keras.applications import InceptionV3
from keras.applications import Xception # TensorFlow ONLY
from keras.applications import VGG16
from keras.applications import VGG19
from keras.applications import imagenet_utils
from keras.applications.inception_v3 import preprocess_input
from keras.preprocessing.image import img_to_array
from keras.preprocessing.image import load_img
import numpy as np
import argparse
import cv2

In [11]:
# https://keras.io/applications/

model = VGG19(weights="imagenet")

In [12]:
inputShape = (224, 224)
preprocess = imagenet_utils.preprocess_input

if model in ("inception", "xception"):
    inputShape = (299, 299)
    preprocess = preprocess_input

In [13]:
img = load_img('images/tv.png', target_size=(224,224))
x = img_to_array(img)
x = np.expand_dims(x, axis=0)
x = preprocess(x)

In [14]:
preds = model.predict(x)
print('Predicted:', imagenet_utils.decode_predictions(preds))


Predicted: [[('n03529860', 'home_theater', 0.83738166), ('n03290653', 'entertainment_center', 0.067848064), ('n04404412', 'television', 0.040259611), ('n03782006', 'monitor', 0.012622411), ('n03691459', 'loudspeaker', 0.0063791634)]]

In [ ]:
# --