直方图规定化matlab代码
时间: 2023-11-25 15:01:36 浏览: 106
以下是基于MATLAB的直方图规定化代码示例:
1. 首先,加载原始图像并显示它:
```matlab
originalImage = imread('original_image.jpg'); % 加载原始图像
figure;
imshow(originalImage); % 显示原始图像
title('Original Image');
```
2. 然后,计算原始图像的直方图并显示它:
```matlab
originalHistogram = imhist(originalImage); % 计算原始图像的直方图
figure;
bar(originalHistogram); % 显示原始图像的直方图
title('Original Image Histogram');
```
3. 接下来,加载参考图像并显示它:
```matlab
referenceImage = imread('reference_image.jpg'); % 加载参考图像
figure;
imshow(referenceImage); % 显示参考图像
title('Reference Image');
```
4. 然后,计算参考图像的直方图并显示它:
```matlab
referenceHistogram = imhist(referenceImage); % 计算参考图像的直方图
figure;
bar(referenceHistogram); % 显示参考图像的直方图
title('Reference Image Histogram');
```
5. 接下来,使用`histeq`函数对原始图像进行直方图均衡化:
```matlab
equalizedImage = histeq(originalImage); % 对原始图像进行直方图均衡化
figure;
imshow(equalizedImage); % 显示均衡化后的图像
title('Equalized Image');
```
6. 然后,使用`histeq`函数和参考图像的直方图对均衡化后的图像进行直方图规定化:
```matlab
normalizedImage = histeq(equalizedImage, referenceHistogram); % 对均衡化后的图像进行直方图规定化
figure;
imshow(normalizedImage); % 显示规定化后的图像
title('Normalized Image');
```
完成上述步骤后,您将获得规定化后的图像。
阅读全文