[数字图像处理](三)对数变换

图像处理(三)

对数变换


可以拉伸范围较窄的低灰度值,同时压缩范围较宽的高灰度值。可以用来扩展图像中的暗像素值,同时压缩亮像素值。

简而言之是对图像中低灰度细节进行增强

在灰度直方图中的显示就为,靠近0的数值变少,靠近1的数值变多

Matlab

clc;
close all;
clear all;


%   首先是对灰度图片进行对数变换
imGray = imread('g1.png');
%   把图像转变为(0~1)的double类型数值,便于进行计算
imGray = im2double(imGray);
subplot(4,2,1);
imshow(imGray);
subplot(4,2,2);
%   显示直方图
imhist(imGray);


imTrans = 1.6 * log(1 + imGray);

subplot(4,2,3);
imshow(imTrans)
subplot(4,2,4);
imhist(imTrans);
%   对彩色图片进行对数变换
imRgb = imread('rgb1.png');

imRgb = im2double(imRgb);
imTransRgb = 2.0 * log( 1 + imRgb );

subplot(4,2,5);
imshow(imTransRgb);
subplot(4,2,6);
imhist(imTransRgb);

subplot(4,2,7);
imshow(imRgb);
subplot(4,2,8);
imhist(imRgb);
原文地址:https://www.cnblogs.com/hoppz/p/14789863.html