Python使用opencv图片增强
时间: 2024-09-24 07:11:17 浏览: 64
在Python中,OpenCV是一个广泛用于计算机视觉的强大库,可以对图像进行各种预处理和增强操作。以下是一些常见的图像增强技术:
1. **亮度/对比度调整**:使用`cv2.convertScaleAbs()`函数改变像素值,提高对比度或亮度。
```python
import cv2
img = cv2.imread('image.jpg')
new_img = cv2.convertScaleAbs(img, alpha=1.5, beta=30)
```
2. **色彩空间转换**:如将BGR转换为HSV,便于特定颜色的检测。
```python
hsv_img = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
```
3. **直方图均衡化**:通过计算并修改像素分布来改善图像对比度。
```python
clahe = cv2.createCLAHE(clipLimit=2.0, tileGridSize=(8,8))
eq_img = clahe.apply(img)
```
4. **锐化/模糊**:使用`cv2.GaussianBlur()`或`cv2.sharpen()`函数增加细节或降低噪声。
```python
blurred_img = cv2.GaussianBlur(img, (5, 5), 0)
sharpened_img = cv2.addWeighted(img, 1.5, blurred_img, -0.5, 0)
```
5. **裁剪/缩放**:改变图像尺寸以便于展示或进一步分析。
```python
resized_img = cv2.resize(img, (int(img.shape[1] * 0.5), int(img.shape[0] * 0.5)))
```
6. **二值化**:用于突出目标区域,常用于边缘检测。
```python
gray_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
_, binary_img = cv2.threshold(gray_img, 127, 255, cv2.THRESH_BINARY_INV)
```
阅读全文