Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from keras.preprocessing.image import ImageDataGenerator
- from keras.models import Sequential
- from keras.layers import Flatten, Dense, Conv2D, MaxPooling2D, Convolution2D
- from keras.preprocessing import image
- import numpy as ny
- test_image= image.load_img('test_image.jpg',target_size=(256,256))
- test_image= image.img_to_array(test_image)
- test_image= ny.expand_dims(test_image,axis=0)
- traintest_dir = '/data/traintest/'
- train_datagen = ImageDataGenerator(rescale=1./255,zoom_range=0.5,horizontal_flip=True)
- test_datagen = ImageDataGenerator(rescale=1./255)
- training_set = train_datagen.flow_from_directory(traintest_dir,(256,256),batch_size=64,class_mode='binary')
- test_set = test_datagen.flow_from_directory(traintest_dir,(256,256),batch_size=64,class_mode='binary')
- model = Sequential()
- model.add(Convolution2D(32,3,3,input_shape=(img_width,img_height),activation='relu'))
- model.add(MaxPooling2D(pool_size=(2,2)))
- model.add(Flatten())
- model.add(Dense(output_dim=128,activation='relu'))
- model.add(Dense(output_dim=1,activation='sigmoid'))
- model.compile(loss='binary_crossentropy',optimizer='adam',metrics=['accuracy'])
- model.fit_generator(training_set,steps_per_epoch=12000,epochs=20,validation_data=test_set,validation_steps=12000)
- result=model.predict(test_image)
- training_set.class_indices
- if result[0|0] >= 0.5:
- prediction = 'dog'
- else:
- prediction = 'cat'
- print(prediction)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement