基于matlab直方图均衡化与自适应直方图均衡化在图像增强中的效果
时间: 2024-06-17 08:04:39 浏览: 21
基于Matlab的直方图均衡化和自适应直方图均衡化都是常用的图像增强方法。
直方图均衡化是一种常用的图像增强方法,可以增加图像的对比度和亮度。它通过对图像的灰度级进行重新分配,使得图像中的灰度值更加均匀地分布在整个灰度范围内。这样可以增强图像的细节信息,提高图像的视觉效果。
自适应直方图均衡化是一种改进的直方图均衡化方法。它考虑到了不同区域之间的灰度分布不同,因此对不同的区域采用不同的直方图均衡化方法。这样可以避免过度增强某些区域,同时保留图像的细节信息。
总体来说,自适应直方图均衡化相比于简单的直方图均衡化具有更好的效果,可以在增强图像对比度的同时避免出现过度增强或者失真等问题。
相关问题
批量自适应直方图均衡化图像增强matlab
以下是批量自适应直方图均衡化图像增强的matlab代码:
```matlab
% 批量读取所有图片
fileList = dir('*.jpg');
numFiles = length(fileList);
for i = 1:numFiles
% 读取图片
img = imread(fileList(i).name);
% 进行自适应直方图均衡化增强
img_eq = adapthisteq(img);
% 显示原图和增强后的图像
subplot(1,2,1);
imshow(img);
title('Original Image');
subplot(1,2,2);
imshow(img_eq);
title('Enhanced Image');
% 保存增强后的图像
imwrite(img_eq, ['enhanced_' fileList(i).name]);
end
```
这段代码假定所有要增强的图像都在当前目录下,并且以.jpg格式保存。代码首先使用dir函数获取当前目录下所有以.jpg结尾的文件,然后使用一个循环依次读取每个文件。对于每个文件,调用adapthisteq函数进行自适应直方图均衡化增强,并使用subplot函数显示原图和增强后的图像。最后,使用imwrite函数将增强后的图像保存到磁盘上。
批量对彩色图像进行自适应直方图均衡化Matlab
可以使用Matlab中的"adapthisteq"函数来实现批量对彩色图像进行自适应直方图均衡化。
首先,需要将所有的彩色图像读入Matlab中,可以使用"imread"函数实现:
```
img_folder = 'img_path'; % 图像文件夹路径
file_list = dir([img_folder, '\*.jpg']); % 获取文件夹中所有jpg文件
num_files = length(file_list); % 图像文件数量
for i = 1:num_files
file_name = [img_folder, '\', file_list(i).name]; % 获取当前图像文件名
img = imread(file_name); % 读取图像
% 在这里进行自适应直方图均衡化操作
end
```
然后,对于每个读入的彩色图像,可以使用"adapthisteq"函数进行自适应直方图均衡化操作。需要注意的是,"adapthisteq"函数只能处理灰度图像,因此需要将彩色图像转换为灰度图像。可以使用"rgb2gray"函数实现:
```
gray_img = rgb2gray(img); % 将彩色图像转换为灰度图像
eq_img = adapthisteq(gray_img); % 进行自适应直方图均衡化操作
```
最后,将处理后的灰度图像转换回彩色图像,并保存到指定文件夹中。可以使用"imwrite"函数实现:
```
color_eq_img = cat(3, eq_img, eq_img, eq_img); % 将灰度图像转换为彩色图像
save_name = ['save_path\', file_list(i).name]; % 保存文件名
imwrite(color_eq_img, save_name); % 保存图像
```
将上述代码整合起来,就可以实现批量对彩色图像进行自适应直方图均衡化的操作:
```
img_folder = 'img_path'; % 图像文件夹路径
file_list = dir([img_folder, '\*.jpg']); % 获取文件夹中所有jpg文件
num_files = length(file_list); % 图像文件数量
for i = 1:num_files
file_name = [img_folder, '\', file_list(i).name]; % 获取当前图像文件名
img = imread(file_name); % 读取图像
gray_img = rgb2gray(img); % 将彩色图像转换为灰度图像
eq_img = adapthisteq(gray_img); % 进行自适应直方图均衡化操作
color_eq_img = cat(3, eq_img, eq_img, eq_img); % 将灰度图像转换为彩色图像
save_name = ['save_path\', file_list(i).name]; % 保存文件名
imwrite(color_eq_img, save_name); % 保存图像
end
```
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)