Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save waqaskhan409/f1c14a36e81c3adb162f80914980ca09 to your computer and use it in GitHub Desktop.

Select an option

Save waqaskhan409/f1c14a36e81c3adb162f80914980ca09 to your computer and use it in GitHub Desktop.
# coding: utf-8
# In[1]:
from keras import Sequential
import os
import sys as system
# In[2]:
model = Sequential()
# In[3]:
Image = system.argv[1]
from keras.layers import Dense, Activation, Dropout, Flatten,Conv2D, MaxPooling2D
from keras.layers.normalization import BatchNormalization
model.add(Conv2D(filters=96, input_shape=(224,224,3), kernel_size=(11,11),strides=(4,4), padding='valid'))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2,2), strides=(2,2), padding='valid'))
model.add(BatchNormalization())
model.add(Conv2D(filters=256, kernel_size=(11,11), strides=(1,1), padding='valid'))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2,2), strides=(2,2), padding='valid'))
model.add(BatchNormalization())
model.add(Conv2D(filters=384, kernel_size=(3,3), strides=(1,1), padding='valid'))
model.add(Activation('relu'))
model.add(BatchNormalization())
model.add(Conv2D(filters=384, kernel_size=(3,3), strides=(1,1), padding='valid'))
model.add(Activation('relu'))
model.add(BatchNormalization())
model.add(Conv2D(filters=256, kernel_size=(3,3), strides=(1,1), padding='valid'))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2,2), strides=(2,2), padding='valid'))
model.add(BatchNormalization())
model.add(Flatten())
model.add(Dense(4096, input_shape=(224*224*3,)))
model.add(Activation('relu'))
model.add(Dropout(0.4))
model.add(BatchNormalization())
model.add(Dense(4096))
model.add(Activation('relu'))
model.add(Dropout(0.4))
model.add(BatchNormalization())
model.add(BatchNormalization())
model.add(Activation('relu'))
model.add(Dropout(0.4))
model.add(BatchNormalization())
model.add(Dense(17))
model.add(Activation('softmax'))
# model.summary()
model.compile(loss='sparse_categorical_crossentropy', optimizer='adam', metrics=['accuracy'])
# In[63]:
import numpy as np
import keras.preprocessing.image as image
# x = np.array(([ 'c:/lol/test/notSweet/badS176.jpg' , 'c:/lol/test/notSweet/badS176.jpg' , 'c:/lol/test/notSweet/badS205.jpg' , 'c:/lol/test/notSweet/notSweetS101.jpg']))
x = Image
# In[25]:
def categorizeModel(x):
for value in range(len(x)):
if x[value] == 0:
print("notSweet")
else:
print("sweet")
def load_image(img_path, show=False):
img = image.load_img(img_path, target_size=(224, 224))
img_tensor = image.img_to_array(img) # (height, width, channels)
img_tensor = np.expand_dims(img_tensor, axis=0) # (1, height, width, channels), add a dimension because the model expects this shape: (batch_size, height, width, channels)
img_tensor /= 255. # imshow expects values in the range [0, 1]
if show:
plt.imshow(img_tensor[0])
plt.axis('off')
plt.show()
return img_tensor
# In[64]:
y0 = load_image(x)
# y1 = load_image(x[1])
# y2 = load_image(x[2])
# y3 = load_image(x[3])
# In[65]:
images = np.vstack([y0])
# In[66]:
model.load_weights(os.path.abspath('//Users//macbook//Documents//ALexNet.h5'))
# In[67]:
categorizeModel(model.predict_classes(images , batch_size=10))
# In[68]:
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment