图像的对数变换:

将图像的低灰度值部分扩展,高灰度值部分压缩。借此强调图像低灰度部分。

该法用于图像增强的原理:

显示器无法显示大范围灰度值时,许多灰度细节会被丢失掉,

对数变换可将其动态范围变换到一个合适的区间,就可以显示更多细节。

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

对代码中调用函数等知识点不熟悉可查看:基础知识点

采用对数变换对图像进行增强,代码实现:

%主函数
function Logtransformation()
f = imread(\'lena.png\');  
I=im2double(f); % matlab中数值一般采用double型(64位)存储和运算。
I2=log_transform(I); %使用对数变换函数
subplot(1,2,1);  
imshow(f);  
xlabel(\' a). Original Image\');  
subplot(1,2,2);  
imshow(I2,[]);   % 自动调整数据的范围以便于显示 
xlabel(\' b). Log Transformation\');  
end

%自定义对数变换函数
function A = log_transform(I)

[m,n]=size(I);
a=I;
for i=1:m
    for j=1:n
        a(i,j)=log(I(i,j)+1);
    end
end
A=a;
end

运行结果:

相关文章:

  • 2021-11-29
  • 2021-09-02
  • 2021-12-08
  • 2021-09-02
  • 2021-09-02
  • 2021-12-01
  • 2021-09-02
  • 2021-11-12
猜你喜欢
  • 2021-09-02
  • 2021-11-28
  • 2021-11-06
  • 2021-09-06
  • 2021-09-02
  • 2021-11-05
相关资源
相似解决方案