Use of batch normalization in assignment exercise-1?

I was doing the programming assignment 2 of week 1 “Convolution_model_Application”. In exercise 1 while building sequential model we are using batch normalization for axis 3. As per my understanding axis 3 is for channels.
Q1) Why is batch normalization being used specifically for axis 3?

Also after running the command happy_model.summary(), it was shown that the params for batch normalization were 128.
Q2) How did batch normalization resulted in creating parameters?

. Here 128 is specifying the parameters.

Hello @Aryan06,

Please inspect the output of the following code that will show you some names of the parameters

import tensorflow as tf
X = np.random.rand(10,64,64,32)
l = tf.keras.layers.BatchNormalization()
_ = l(X)
print(l.weights)

then, read the documentation for the explanation of those parameters.

Because this will give us a set of normalization parameters per channel (or per feature (map))

Raymond