zoukankan      html  css  js  c++  java
  • OpenCV之图像归一化(normalize)

    什么图像归一化

    通俗地讲就是将矩阵的值通过某种方式变到某一个区间内

    图像归一化的作用

    1. 目前能理解的就是归一化到某个区间便于处理,希望高人可以指点

    opencv文档中的介绍

    C++: void normalize(InputArray src, InputOutputArray dst, double alpha=1, double beta=0, int norm_type=NORM_L2, int dtype=-1, InputArray mask=noArray() )
    C++: void normalize(const SparseMat& src, SparseMat& dst, double alpha, int normType)
    
    Python: cv2.normalize(src[, dst[, alpha[, beta[, norm_type[, dtype[, mask]]]]]]) → dst
    
    Parameters:	
    src – input array.
    dst – output array of the same size as src .
    alpha – norm value to normalize to or the lower range boundary in case of the range normalization.
    beta – upper range boundary in case of the range normalization; it is not used for the norm normalization.
    normType – normalization type (see the details below).
    dtype – when negative, the output array has the same type as src; otherwise, it has the same number of channels as src and the depth =CV_MAT_DEPTH(dtype).
    mask – optional operation mask.
    

    norm_type有NORM_INF, NORM_MINMAX,NORM_L1和NORM_L2四种。
    1、在 NORM_MINMAX 模式下,alpha表示归一化后的最小值,beta表示归一化后的最大值。
    2、在NORM_L1、NORM_L2、NORM_INF 模式下,alpha表示执行相应归一化后矩阵的范数值,beta不使用。
    3、稀疏矩阵归一化仅支持非零像素

    NORM_MINMAX

    数组的数值被平移或缩放到一个指定的范围,线性归一化。

    $dst(i, j) = frac{(src(i, j) - min(src(x, y))) * (beta - alpha)}{max(src(x, y)) - min(src(x, y))} + alpha$
    $${x}over{y}$$

    NORM_INF

    分母为L∞范数 ,即矩阵各元素绝对值的最大值(切比雪夫距离)

    NORM_L1

    分母为L1-范数,即矩阵元素的绝对值之和(曼哈顿距离)

    NORM_L2

    分母为L2-范数,即矩阵各元素的欧几里德距离之和

  • 相关阅读:
    mogodb学习
    rman list incarnation
    Java创建对象的四种方式
    JAVA 8 函数式接口--Consumer
    Linux中VIM的使用
    JRE 和 JDK 的区别
    tengine-2.3.1 增加ngx_http_upstream_check_module 模块
    k8s的coredns 增加外部dns解析记录
    Dockerfile的CMD总结
    redis数据转移随笔
  • 原文地址:https://www.cnblogs.com/huluwa508/p/11356196.html
Copyright © 2011-2022 走看看