MATLAB: How to use imcrop() on an image without losing resolution

image processingImage Processing Toolbox

I use imcrop() but I lose resolution of image.

Best Answer

The spatial resolution will be the same, in terms of the details you can resolve in the image. The image matrix will be smaller (fewer pixels) of course.
Axes controls will auto-size, to some extent, when you call imshow(). You can change the 'InitialMagnification' parameter if you want to magnify the image upon display but leave the cropped image intact (the same size).
imshow(croppedImage, 'InitialMagnification', 1600);
You can call imresize() if you want to change the number of rows and columns in the cropped image to be something else.
bigImage = imresize(croppedImage, [3000, 4000]);
imshow(bigImage, []);
Be aware though that it may shrink it down to fit into axes that you have on the screen.