AnswerBun.com

Convolutional neural network with 1 channel images/1 input channel

Data Science Asked on October 24, 2020

I’m following a tutorial on tensorflow using a convolutional neural network for images, but I’m looking to do it with grayscale images. How would the code posted there be different if it was for grayscale images instead of colored images with 3 channels?

model = models.Sequential()
model.add(layers.Conv2D(32, (3, 3), activation='relu', input_shape=(32, 32, 3)))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))

2 Answers

The following will be the updated code for grayscale images:

model = models.Sequential()
model.add(layers.Conv2D(32, (3, 3), activation='relu', input_shape=(32, 32, 1)))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))

Why?

Because for an RGB image, there are 3 channels, 'R', 'G' and 'B' So, the input shape will be (height, width, 3)

But since grayscale has only one channel, the input shape becomes (height, width, 1)

Note that if you are using Keras with Tensorflow backend, then the data_format is channels_last, which means that the input shape should be (height, width, channels).

Otherwise, if you are using Theano as the backend, then the input shape should be (channels, height, width) since Theano uses the channels_first data format.

Hope this is of help. Please upvote if helpful.

Answered by Fortfanop on October 24, 2020

input_shape=(32, 32, 3)))

will become

 input_shape=(32, 32, 1)))


Channel is the last argument by default

"...When using this layer as the first layer in a model, provide the keyword argument input_shape (tuple of integers, does not include the sample axis), e.g. input_shape=(128, 128, 3) for 128x128 RGB pictures in data_format="channels_last..."

Ref - Keras Docs

Answered by 10xAI on October 24, 2020

Add your own answers!

Related Questions

Semantic text similarity using BERT

2  Asked on January 31, 2021 by devarshi-goswami

     

How multi-scale CNN selects final output map

1  Asked on January 31, 2021 by saeed-masoomi

 

How to deal with imbalanced text data

1  Asked on January 30, 2021 by glowingdoodle

       

Continuous Estimated Time of Arrival

1  Asked on January 30, 2021 by kevin-w-johnson

 

Orange cost sensitive classifier

0  Asked on January 30, 2021

   

How to add previous predictions for new predictions in LSTM?

1  Asked on January 29, 2021 by user145959

   

Ask a Question

Get help from others!

© 2023 AnswerBun.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP