Batch Normalization and Input Normalization in CNN
Its is basically not really important to rescale your input to [0,1]. Your input data should simply be in the same range. So [0,255] would be also a legit range.
BN should be different to interpret. It helps to keep your activations through the whole network on the same level. It is especially helpfull when we talk about deeper archtitectures. 
Actually when you spend some extra time/iterations, your network should also converge without BN.