【学习OpenCV4】图像像素数据类型的转换与归一
一、什么是归一化
归一化就是要把需要处理的数据经过处理后(通过某种算法)限制在一定范围的之内。为了后面数据处理的方便,其次是保证程序运行时收敛加快。
归一化的目的,是使得没有可比性的数据变得具有可比性,同时又保持相比较的两个数据之间的相对关系,如大小关系;或是为了作图,原来很难在一张图上作出来,归一化后就可以很方便的给出图上的相对位置等。
二、归一化的方式
2.1 基本API
1 | void normalize( |
参数 | 作用 |
---|---|
src | 输入数组 |
dst | 输出数组 |
alpha | 归一化最小值 |
beta | 归一化最大值 |
norm_type | 归一化的类型 |
dtype | 负数时输出数组的type与输入数组的type相同 |
mask | 指示函数是否仅仅对指定的元素进行操作 |
其中norm_type有以下几种类型:
- NORM_MINMAX:数组的数值被平移或缩放到一个指定的范围,线性归一化,一般较常用。
- NORM_INF:此类型的定义没有查到,根据OpenCV 1的对应项,可能是归一化数组的C-范数(绝对值的最大值)
- NORM_L1 : 归一化数组的L1-范数(绝对值的和)
- NORM_L2: 归一化数组的(欧几里德)L2-范数
2.2 示例程序
1 | void MyDemo::normalize_Demo(Mat& image) { |
评论