Image Classifier Rock Paper Scissors

Image classifier of rock-paper-scissors picture using CNN with python TensorFlow and Keras.

Photo by Fadilah N. Imani on Unsplash


The project will talk about the use of a Convolutional Neural Network for Image Classification of rock-paper-scissors images. Python was used as the programming language and I utilized Tensorflow and Keras packages.‍


1. Data Preprocessing using Image Augmentation with this setting: rescale-1./255, rotation range-20, horizontal flip-True, shear range-0.2, fill mode-wrap, validation split-0.4.

2. After creating the Image Augmentation, I generate the augmented data to the train and validation generator. I also resize the image to a smaller target size.

3. Built the CNN architecture.

4. Compile the model and set the loss function also the optimizer.

5. I use callback for early stopping and set the model to stop when it achieved an accuracy of 98%.

6. Train the model.

7. Make model inference from the file browser.


The training process stop at epoch 17 and achieved a 98.75% accuracy score. This is the example of the model inference using this Image Classifier model:

Model Inference
Other projects: