图像灰度变换 MATLAB实现
时间: 2023-09-20 10:12:22 浏览: 105
matlab实现图像灰度处理
图像灰度变换是将图像的灰度级进行变换,从而改变图像的对比度、亮度等特性,常见的图像灰度变换包括线性变换、非线性变换等。
以下是Matlab实现图像灰度变换的示例代码:
1. 线性变换:
```matlab
% 读取图像
img = imread('lena.jpg');
% 线性变换,增强图像对比度
a = 1.5; % 增益因子
b = 50; % 亮度调整
img_new = a * img + b; % 公式:g(x,y) = a*f(x,y) + b
% 显示原始图像和变换后的图像
subplot(1,2,1);
imshow(img);
title('原始图像');
subplot(1,2,2);
imshow(img_new);
title('线性变换后的图像');
```
2. 非线性变换:
```matlab
% 读取图像
img = imread('lena.jpg');
% 对数变换,增强图像低灰度部分的细节
c = 50; % 常数
img_new = c * log(1 + double(img)); % 公式:g(x,y) = c * log(1 + f(x,y))
% 显示原始图像和变换后的图像
subplot(1,2,1);
imshow(img);
title('原始图像');
subplot(1,2,2);
imshow(uint8(img_new));
title('对数变换后的图像');
```
以上代码仅供参考,实际应用中可以根据具体需求进行参数调整和变换方法选择。
阅读全文