• 图像像素类型转换与归一化


    图像类型在opencv中以8位无符号字符存储

    4种归一化方法

     

    2. normalize 函数介绍

    函数原型:

        void normalize(InputArray src,OutputArraydst, double alpha = 1, double beta = 0, intnorm_type = NORM_L2, int dtype = -1, InputArray mask = noArray() )

        该函数归一化输入数组使它的范数或者数值范围在一定的范围内。

    Parameters:

    src

        输入数组

    dst

        输出数组,支持原地运算

    alpha

        range normalization模式的最小值

    beta 

        range normalization模式的最大值,不用于norm normalization(范数归一化)模式。

    normType

        归一化的类型,可以有以下的取值:

        NORM_MINMAX:数组的数值被平移或缩放到一个指定的范围,线性归一化,一般较常用。

        NORM_INF:此类型的定义没有查到,根据OpenCV 1的对应项,可能是归一化数组的C-范数(绝对值的最大值)

        NORM_L1 :  归一化数组的L1-范数(绝对值的和)

        NORM_L2: 归一化数组的(欧几里德)L2-范数

    dtype

        dtype为负数时,输出数组的type与输入数组的type相同;

    否则,输出数组与输入数组只是通道数相同,而tpye=CV_MAT_DEPTH(dtype).

    mask

        操作掩膜,用于指示函数是否仅仅对指定的元素进行操作。

    void convertTo( OutputArray m, int rtype, double alpha=1, double beta=0 ) const;

      

    m       – 目标矩阵。如果m在运算前没有合适的尺寸或类型,将被重新分配。

    rtype – 目标矩阵的类型。因为目标矩阵的通道数与源矩阵一样,所以rtype也可以看做是目标矩阵的位深度。如果rtype为负值,目标矩阵和源矩阵将使用同样的类型。

    alpha – 尺度变换因子(可选)。

    beta   – 附加到尺度变换后的值上的偏移量(可选)。

      函数将源矩阵中的像素值转换为目标类型。最后会使用溢出保护函数 saturate_cast<> ,以避免转换过程中可能出现的溢出。

    type类型枚举

      16:8uc3

      21:32fc3

    imshow可以显示浮点数,但取值范围必须在0-1之间,所以需要经过归一化处理

       

  • 相关阅读:
    kubernetes构架及组件介绍
    二进制部署k8s
    Git
    Redis sentinel
    redis主从复制
    k8s安装
    基于Jenkins实现可腹部回滚的cicd平台
    Redis基础命令和持久化
    构建自动发现的Docker服务架构
    Redis
  • 原文地址:https://www.cnblogs.com/KAVEI/p/14618214.html
Copyright © 2020-2023  润新知