matlab histeq cy源代码,matlab histeq函数介绍(示例代码)
时间: 2023-11-02 08:17:03 浏览: 45
MATLAB中的`histeq`函数是一种直方图均衡化方法,用于增强图像的对比度。该函数将图像的直方图拉伸到整个动态范围内,使得亮度分布更加平衡。以下是该函数的示例代码:
```matlab
% 加载图像
img = imread('example.jpg');
% 将图像从RGB转换为灰度
gray_img = rgb2gray(img);
% 对灰度图像进行直方图均衡化
eq_img = histeq(gray_img);
% 显示原始图像和直方图均衡化后的图像
subplot(1,2,1);
imshow(gray_img);
title('Original Image');
subplot(1,2,2);
imshow(eq_img);
title('Equalized Image');
```
该代码将加载一个名为“example.jpg”的图像,并将其从RGB格式转换为灰度格式。然后,使用`histeq`函数对灰度图像进行直方图均衡化,并将结果显示在两个子图中。左侧子图显示原始图像,右侧子图显示直方图均衡化后的图像。
另外,该函数的底层C源代码可参考MATLAB中的`histeqmex.c`文件。
相关问题
matlab histeq
histeq函数是Matlab中用于直方图均衡化的函数。它可以对输入的灰度图像进行变换,使得输出的图像具有更均匀分布的灰度级。直方图均衡化通过增强图像的对比度来提高图像的视觉效果和质量。
histeq函数的调用格式为J = histeq(I,hgram),其中I是输入的灰度图像,hgram是目标直方图。该函数会将输入图像I的直方图变换成与目标直方图hgram近似匹配的直方图,并返回变换后的图像J。
直方图均衡化的过程如下:
1. 计算输入图像的直方图,将每个灰度级的像素数目归一化为概率密度。
2. 计算累积分布函数,即将每个灰度级的概率密度累加起来。
3. 对累积分布函数进行线性变换,使得输出图像具有更均匀分布的灰度级。
4. 将变换后的灰度级映射回到原始图像中,得到最终的输出图像。
histeq函数matlab
histeq函数是Matlab中用于对图像进行直方图均衡化的函数。它将图像的像素值进行重新分布,以使像素值的频率分布更加均匀,从而增强图像的对比度和亮度。
使用方法为:
```matlab
J = histeq(I);
```
其中,I为原始图像,J为直方图均衡化后的图像。
示例代码:
```matlab
% 读取原始图像
I = imread('lena.png');
% 对图像进行直方图均衡化
J = histeq(I);
% 显示原始图像和直方图均衡化后的图像
subplot(1,2,1),imshow(I)
title('原始图像')
subplot(1,2,2),imshow(J)
title('直方图均衡化后的图像')
```
该函数还可以接受一个参数,用于指定输出图像的灰度级数。如:
```matlab
J = histeq(I,256);
```
表示输出图像的灰度级数为256级。