How normalization aids CNN?

I am new to CNN and PyTorch. I am working on the classification of diabetic ulcers. I have achieved some results using ResNet. I want to do regularization- one of the techniques I am using is augmentation. How normalization helps CNN? The batch below is without normalization and is visually more perceivable to the human eye.

Below is the normalized one, which is not well perceivable visually. Then how is it helping CNN?

How do we choose the values for normalize?

transforms.Normalize((0.485, 0.456, 0.406), (0.229, 0.224, 0.225)

First of all Regularization and Normalization are two different terms. Regularization is used to prevent overfitting by either knocking out few parameters to zero(L1) or bringing some parameters very close to being zero(L2). Normalization is used to bring the data to desired centered mean( Gaussian Distribution). Normalization basically bounds the data to be in a specific distribution rather than having outliers and other stuff which in turns helps your model to learn the parameters efficiently.

Actually, my question is that how the normalized version is better for CNN as compared non-normalized version? As the visually non-normalized version is more perceivable.

Normalization actually makes the data have a mean of 0 and a Standard deviation of 1. Most of the times normalization aids in speeding up the training process by making the model converge faster. You can even train in your network without normalization but normalization is highly recommended.