How to train or approach the image datasets with different resolution in Deep Learning Image classification:

I am having a data set of image collection more than 10k but even though all are the same image but taken in different sizes (pixels into pixels) some are in square and some are in a rectangle. When I am trying to make them similar, I have planned to zoom to the image exactly where my learning is concentrated but I don't know how to do this.

Note these are color images.

I don't whether this is the good approach or any approach is appreciable.
You don't need to change their size. You can zero pad the images when you feed them into the Network. Zero padding creates a "frame of zeros" around each image, so that they all take equal shape.

conv layers in Keras / TensorFlow 2.0 come with already built-in zero padding arguments.