概念

通过灰度变换函数,调整输入低质图像的灰度值范围。将图像的低灰度值部分扩展,高灰度值部分压缩。借此强调图像低灰度部分,达到增强图像的目的。

对数变换公式:S=c log(1+r) , c为常数。

输入图像



数字图像处理——函数灰度变换_灰度值


数字图像处理——函数灰度变换_计算机视觉_02


代码

close all; clear; clc; 
set(gcf,'color','white');
f = imread('../img/LenaRGB.bmp');  
 
G=mat2gray(log(1+double(f))); 
% matlab中数值一般采用double型(64位)存储和运算。mat2gray对图像灰度进行归一化处理
 
subplot(1,2,1);  
imshow(f);  
xlabel(' a). 原始图像');  
subplot(1,2,2);  
imshow(G,[]);   % 自动调整数据的范围以便于显示 
xlabel(' b). 对数变换');

结果

数字图像处理——函数灰度变换_matlab_03


数字图像处理——函数灰度变换_计算机视觉_04