直方图统计量增强python代码
时间: 2023-10-13 15:19:43 浏览: 39
以下是一个简单的直方图统计量增强的Python代码示例:
```python
import cv2
import numpy as np
import matplotlib.pyplot as plt
# 读取图像
img = cv2.imread('lena.jpg', 0)
# 计算直方图
hist, bins = np.histogram(img.flatten(), 256, [0, 256])
# 计算累积分布函数
cdf = hist.cumsum()
cdf_normalized = cdf * hist.max() / cdf.max()
# 计算等化映射
equ = np.interp(img.flatten(), bins[:-1], cdf_normalized)
# 将图像还原到2D
equ = equ.reshape(img.shape)
# 绘制原图和直方图均衡化后的图像
plt.subplot(121)
plt.imshow(img, cmap='gray')
plt.title('Original Image')
plt.subplot(122)
plt.imshow(equ, cmap='gray')
plt.title('Equalized Image')
plt.show()
```
该代码将读取名为“lena.jpg”的灰度图像并对其进行直方图均衡化。它首先计算图像的直方图,然后计算累积分布函数以及其归一化版本。接下来,它使用插值函数计算等化映射。最后,它将等化图像还原为2D格式并显示原始图像和均衡化后的图像。
相关问题
python 直方图均衡
直方图均衡化是一种用于增强图像对比度的方法,它通过重新分配图像的灰度级来扩展像素值的动态范围。在Python中,可以使用numpy和skimage库来实现直方图均衡化。
下面是利用numpy和skimage库实现直方图均衡化的步骤:
1. 导入所需的库:
```python
import numpy as np
from skimage import exposure, data
```
2. 加载图像:
```python
image = data.camera() * 1.0
```
3. 使用numpy计算直方图:
```python
hist1 = np.histogram(image, bins=256)
```
4. 使用skimage计算直方图:
```python
hist2 = exposure.histogram(image, nbins=256)
```
5. 打印直方图统计量:
```python
print(hist1)
print(hist2)
```
通过以上步骤,你可以获得图像的直方图统计量。其中,`hist1`是使用numpy计算得到的直方图,`hist2`是使用skimage计算得到的直方图。
opencv python直方图欧氏距离
OpenCV是一个开源的计算机视觉库,提供了大量的图像处理和计算机视觉相关的功能,包括直方图计算和比较。
直方图是一种对数据分布情况的描述方法,可以将一副图像的像素值按照灰度或者颜色分布统计出来。欧氏距离是一种衡量两个向量之间距离的方法,它可以用来比较两幅图像的直方图之间的相似度。
在OpenCV中,可以使用cv2.calcHist()函数来计算直方图,使用cv2.compareHist()函数来比较直方图之间的相似度,其中可以选择不同的方法来计算相似度,其中包括欧氏距离等。
因此,使用OpenCV Python实现直方图欧氏距离可以通过以下步骤实现:
1. 使用cv2.calcHist()函数计算两幅图像的直方图。
2. 使用cv2.compareHist()函数比较两幅图像的直方图之间的相似度,其中选择使用欧氏距离方法。
3. 根据比较结果确定两幅图像之间的相似度程度。
相关推荐
![](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)
![](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)