zoukankan      html  css  js  c++  java
  • cvThreshold二值化函数

    1.图像二值化:

    就是将图像上的像素点的灰度值设置为0或255,也就是将整个图像呈现出明显的黑白效果。所有灰度大于或等于阈值的像素被判定为属于特定物体,其灰度值为255表示,否则这些像素点被排除在物体区域以外,灰度值为0,表示背景或者例外的物体区域。

    2.cvThreshold函数
    函数cvThreshold对单通道数组应用固定阈值操作。该函数的典型应用是对灰度图像进行阈值操作得到二值图像(cvCmpS也可以达到此目的) 或者是去掉噪声,例如过滤很小或很大像素值的图像点。本函数支持的对图像取阈值的方法由threshold_type 确定。

    形式:
    void cvThreshold
    ( const CvArr* src,CvArr* dst,double threshold,double max_value, int threshold_type );

    src: 原始数组 (单通道 , 8-bit of 32-bit 浮点数)。
    dst: 输出数组,必须与 src 的类型一致,或者为 8-bit。
    threshold: 阈值
    max_value: 使用 CV_THRESH_BINARY 和 CV_THRESH_BINARY_INV 的最大值。
    threshold_type: 

    CV_THRESH_BINARY   dst(x,y) = max_value, if src(x,y)>threshold 0, otherwise.//

    CV_THRESH_BINARY_INV   dst(x,y) = 0, if src(x,y)>threshold; dst(x,y) = max_value, otherwise.

    CV_THRESH_TRUNC   dst(x,y) = threshold, if src(x,y)>threshold;   dst(x,y) = src(x,y), otherwise.

    CV_THRESH_TOZERO   dst(x,y) = src(x,y), if (x,y)>threshold ;  dst(x,y) = 0, otherwise.

    CV_THRESH_OTSU   

    CV_THRESH_TOZERO_INV dst(x,y) = 0, if src(x,y)>threshold ;  dst(x,y) = src(x,y), otherwise

    0: THRESH_BINARY 当前点值大于阈值时,取max_value,也就是第四个参数,否则设置为0

    1: THRESH_BINARY_INV 当前点值大于阈值时,设置为0,否则设置为max_value

    2: THRESH_TRUNC 当前点值大于阈值时,设置为阈值,否则不改变

    3: THRESH_TOZERO 当前点值大于阈值时,不改变,否则设置为0

    4: THRESH_TOZERO_INV 当前点值大于阈值时,设置为0,否则不改变

  • 相关阅读:
    关于jQuery的选择器
    解读position定位
    html5新增的功能。
    关于ajax的同步异步
    响应式布局由来和剖析
    jQuery的效果函数及如何运用
    jQuery的选择器
    position定位的解析与理解
    HTML5与CSS3中新增的属性详解
    对Ajax的解析
  • 原文地址:https://www.cnblogs.com/yangxuebing/p/6734346.html
Copyright © 2011-2022 走看看