Clear Filters
Clear Filters

how to Scale the pixel values of the image so that the minimum value be- comes 0 and the maximum value becomes 255

24 views (last 30 days)
how to do it with loops or what function can i use

Answers (2)

DGM on 24 Mar 2023
Edited: DGM on 25 Mar 2023
You can do this with imadjust().
outpict = imadjust(inpict,stretchlim(inpict,0));
That will work for gray or RGB images of any standard image class. The output class will be inherited from the input. If the input is RGB, each channel will be scaled independently.
There are also less convenient ways to do it
outpict = im2uint8(mat2gray(inpict));
That will work for gray or RGB images of any class, but the output will always be uint8, regardless of the input class. If the input is RGB, the entire array will be scaled as a whole.

Image Analyst
Image Analyst on 25 Mar 2023
output = uint8(rescale(inputImage, 0, 255));

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!