cv2.normalize()该函数参数解析和使用
时间: 2024-05-10 16:14:50 浏览: 95
用opencv的dnn模块实现人脸口罩检测包含C++和Python源码+模型+说明.zip
`cv2.normalize()` 函数是 OpenCV 中的一个图像处理函数,用于将图像数组的像素值缩放到指定范围内,通常用于图像增强、对比度调整和色彩平衡。其函数原型如下:
```python
cv2.normalize(src, dst, alpha, beta, norm_type, dtype, mask)
```
其中,各参数的含义如下:
- `src`:输入图像数组。
- `dst`:输出图像数组,数组大小和类型与输入数组相同。
- `alpha`:规范化的下界,一般为 0。
- `beta`:规范化的上界,一般为 255。
- `norm_type`:规范化类型,可选值为 `cv2.NORM_INF`、`cv2.NORM_L1`、`cv2.NORM_L2`、`cv2.NORM_MINMAX`。
- `dtype`:输出数组的数据类型,通常为 `cv2.CV_8U` 或 `cv2.CV_32F`。
- `mask`:掩膜数组,用于指定哪些像素应该被规范化,可选参数。
其中,规范化类型 `norm_type` 的含义如下:
- `cv2.NORM_INF`:取所有像素点的绝对值中的最大值作为缩放因子。
- `cv2.NORM_L1`:对每个像素点取绝对值,然后所有像素点的绝对值之和除以像素点总数作为缩放因子。
- `cv2.NORM_L2`:计算每个像素点的平方和,然后对这个值开方,作为缩放因子。
- `cv2.NORM_MINMAX`:将像素值线性缩放到一个给定的范围内,通常为 `[0, 255]`。
使用示例:
```python
import cv2
# 读取图像
img = cv2.imread('test.jpg')
# 将像素值缩放到 [0, 255] 范围内
dst = cv2.normalize(img, None, 0, 255, cv2.NORM_MINMAX, cv2.CV_8U)
# 显示图像
cv2.imshow('src', img)
cv2.imshow('dst', dst)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
阅读全文