how to do logarithmic image normalization?

116 ビュー (過去 30 日間)
mahesh chathuranga
mahesh chathuranga 2013 年 10 月 13 日
コメント済み: Adam Nustian 2016 年 6 月 19 日
what is logarithmic image normalization?how to do it?(range is 0-255)

採用された回答

Image Analyst
Image Analyst 2013 年 10 月 13 日
編集済み: Image Analyst 2013 年 10 月 15 日
I suppose you just get a new image where the image is the log of the pixel value. It's used to enhance dark areas by expanding their range, while not clipping bright areas. Run the code below for a demo.
workspace; % Make sure the workspace panel is showing.
% Read in and display the original gray scale image.
grayImage = imread('Cameraman.tif');
grayImage = double(grayImage);
subplot(2,1,1);
imshow(grayImage, []);
axis on;
title('Original Image', 'FontSize', 15);
% Enlarge figure to full screen.
set(gcf, 'Units', 'Normalized', 'OuterPosition', [0 0 1 1]);
% Give a name to the title bar.
set(gcf, 'Name', 'Demo by ImageAnalyst', 'NumberTitle', 'Off')
% Take the log of it. Add 1 to avoid taking log of zero.
logImage = log(grayImage+1);
% Normalize to the range 0-1.
normalizedImage = mat2gray(logImage);
% Display it.
subplot(2,1,2);
imshow(normalizedImage, []);
axis on;
title('Log Image', 'FontSize', 15);
% If you want a uint8 version, then you can multiply by 255
% uint8Image = uint8(255 * normalizedImage);
msgbox('Note how the coat has more details');
  1 件のコメント
Adam Nustian
Adam Nustian 2016 年 6 月 19 日
ImageAnalyst Are you available to review a paper on Log. Image Processing for an international conference?
Thanks

サインインしてコメントする。

その他の回答 (1 件)

Anand
Anand 2013 年 10 月 14 日
It sounds like you want to just take the log of the image and rescale the range from 0 to 255. This is something you might want to do to visualize a frequency domain signal. Here's how you can do that:
% take logarithm of image.
imLog = log(im);
% normalize
minLog = min(imLog(:));
maxLog = max(imLog(:));
imLogNorm = 255 * (imLog - minLog)./(maxLog-minLog);

カテゴリ

Help Center および File ExchangeImage Filtering and Enhancement についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by