opencv图像增强算法python
时间: 2023-10-08 09:13:00 浏览: 100
OpenCV中有很多图像增强算法,以下是其中一些常用的:
1. 直方图均衡化:
```python
import cv2
# 读取图像
img = cv2.imread("image.jpg")
# 将图像转换为灰度图像
gray_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 直方图均衡化
equalized_img = cv2.equalizeHist(gray_img)
# 显示原始图像和均衡化后的图像
cv2.imshow("Original Image", gray_img)
cv2.imshow("Equalized Image", equalized_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
2. 自适应直方图均衡化:
```python
import cv2
# 读取图像
img = cv2.imread("image.jpg")
# 将图像转换为灰度图像
gray_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 自适应直方图均衡化
clahe = cv2.createCLAHE(clipLimit=2.0, tileGridSize=(8,8))
equalized_img = clahe.apply(gray_img)
# 显示原始图像和均衡化后的图像
cv2.imshow("Original Image", gray_img)
cv2.imshow("Equalized Image", equalized_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
3. 均值滤波:
```python
import cv2
# 读取图像
img = cv2.imread("image.jpg")
# 均值滤波
blurred_img = cv2.blur(img, (5, 5))
# 显示原始图像和滤波后的图像
cv2.imshow("Original Image", img)
cv2.imshow("Blurred Image", blurred_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
4. 中值滤波:
```python
import cv2
# 读取图像
img = cv2.imread("image.jpg")
# 中值滤波
median_img = cv2.medianBlur(img, 5)
# 显示原始图像和滤波后的图像
cv2.imshow("Original Image", img)
cv2.imshow("Median Filtered Image", median_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
5. 高斯滤波:
```python
import cv2
# 读取图像
img = cv2.imread("image.jpg")
# 高斯滤波
gaussian_img = cv2.GaussianBlur(img, (5, 5), 0)
# 显示原始图像和滤波后的图像
cv2.imshow("Original Image", img)
cv2.imshow("Gaussian Filtered Image", gaussian_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
阅读全文