TransWikia.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!

Ask a Question

Get help from others!

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