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

36 visualizzazioni (ultimi 30 giorni)
how to do it with loops or what function can i use

Risposte (2)

DGM
DGM il 24 Mar 2023
Modificato: DGM il 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 il 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!

Translated by