MATLAB: Enhance grayscale image using normalization factor

grayscale imgimage processingImage Processing Toolboxnormalization

sir,
I have a gray scale image in the range {0,1}.I want to enhance this gray scale image using normalization factor alpha in order to transform the range from [0.15-0.4] to
[0-0.4]
ie, the pixel values of enhanced gray scale image should be,
fr(x,y)={ 0; if fg(x,y)<=0.15
alpha * fg(x,y) ; if 0.15<fg(x,y)<= 0.4
fg(x,y) ; else } Where fg(x,y) is the gray scale image in the range{0,1}

Best Answer

Try this
img = rgb2gray(im2double(imread('pears.png')));
img(img<0) = 0;
mask = (0.15<=img)&(img<=0.4);
img(mask) = interp1([0.15 0.4], [0 0.4], img(mask));