python对数图像增强
时间: 2023-10-28 10:07:08 浏览: 103
Python中常用的图像增强方法有直方图均衡化、对比度拉伸、滤波等。
其中,直方图均衡化是一种常用的增强方法,可以通过增加图像的对比度来提高图像的质量。在Python中,可以使用OpenCV库中的equalizeHist()函数来实现直方图均衡化。
示例代码如下:
```python
import cv2
# 读取图像
img = cv2.imread('image.jpg', 0)
# 直方图均衡化
equ = cv2.equalizeHist(img)
# 显示原图和增强后的图像
cv2.imshow('Original Image', img)
cv2.imshow('Enhanced Image', equ)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
除了直方图均衡化外,还可以使用对比度拉伸来增强图像。对比度拉伸是通过调整图像的像素值范围来增加图像的对比度。在Python中,可以使用NumPy库中的clip()函数来实现对比度拉伸。
示例代码如下:
```python
import cv2
import numpy as np
# 读取图像
img = cv2.imread('image.jpg', 0)
# 对比度拉伸
a = 0
b = 255
c = np.min(img)
d = np.max(img)
equ = (img - c) * ((b - a) / (d - c)) + a
equ = np.clip(equ, a, b).astype(np.uint8)
# 显示原图和增强后的图像
cv2.imshow('Original Image', img)
cv2.imshow('Enhanced Image', equ)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
阅读全文