Why output shape of Conv2D is (None, 30, 30, 32) instead of (None, 30, 30, 32, 3) when input image of (32*32*3) is passed? I am new to CNN deep learning. I was checking the summary of the model which i have built (as shown below). The input shape of our data is 32, 32, 3. Why output shape of Conv2D is (None, 30, 30, 32) instead of (None, 30, 30, 32, 3) when image of (32323) is passed?
 Layer (type)                Output Shape              Param #   
=================================================================
 conv2d (Conv2D)             (None, 30, 30, 32)        896       
                                                                 
 max_pooling2d (MaxPooling2D  (None, 15, 15, 32)       0         
 )                                                               
                                                                 
 conv2d_1 (Conv2D)           (None, 13, 13, 64)        18496     
                                                                 
 max_pooling2d_1 (MaxPooling  (None, 6, 6, 64)         0         
 2D)                                                             
                                                                 
 conv2d_2 (Conv2D)           (None, 4, 4, 64)          36928     
                                                                 
=================================================================


Let your input image be of shape $(h, w, c)$ where $h,w,c$ denote height and width of the image and the number of channels, respectively. Applying 2D covolutional layer to this actually means applying $c$ different filters indepedently to each of the channels and then summing up the results. That's why you don't see the dimension $c$ in the result. See this related question on why we do that.
