title: Keras Conv2D input Shape
body: <p>I am using Keras for my CNN Model. In that model, I am training it using images. My images are in shape 256*256. However I trained it as 64*64. When I resize my images as 64*64 and trained again my accuracy rate was decreased drastically. What am I missing ?</p>
  
  <p>When I arrange Convolution2D input shape as </p>
  
  <pre><code>classifier.add(Convolution2D(32,3,3,input_shape = (256,256), activation ='relu'))
  </code></pre>
  
  <p>It takes many time. Because of that I arranged my Convolution2D as <code>classifier.add(Convolution2D(32,3,3,input_shape = (64,64), activation ='relu'))</code> and I trained my first model. It predicting very well.</p>
  
  <p>When I resized my input images shape as 64*64 and training with Convolution2D as</p>
  
  <pre><code>classifier.add(Convolution2D(32,3,3,input_shape = (64,64) 
  </code></pre>
  
  <p>my accuracy rate was decreased. What is the problem ?</p>
  
  <p>Here is the code</p>
  
  <pre><code>classifier = Sequential()
  classifier.add(Convolution2D(32,3,3,input_shape = (64,64,3), activation ='relu'))
  classifier.add(MaxPooling2D(pool_size=(2,2)))
  classifier.add(Flatten())
  classifier.fit_generator(
          training_set,
          steps_per_epoch=8000,
          epochs=10,
          validation_data=test_set,
          validation_steps=800)
  </code></pre>
  
  <p>Here is the my reshape code</p>
  
  <pre><code>from PIL import Image
  import os
  path = 'TestForTrain2'
  for file in os.listdir('TestForTrain2'):
      img = Image.open(os.path.join('TestForTrain2', file))
      width, height = img.size
      stringName = str(file)
      print(width," === ",height)
      print(stringName)
      f, e = os.path.splitext(path + file)
      imResize = img.resize((64, 64), Image.ANTIALIAS)
      imResize.save( stringName + '.jpg', 'JPEG', quality=90)
  </code></pre>