• 基于局部阈值化的图像二值化


     较为常用的图像二值化方法有:1)全局固定阈值;2)局部自适应阈值;3)OTSU等。

    全局固定阈值很容易理解,就是对整幅图像都是用一个统一的阈值来进行二值化;

    1. / 全局二值化  
    2.     int th = 100;   
    3.     cv::Mat global;  
    4.     cv::threshold(image, global, th, 255, CV_THRESH_BINARY_INV);  

     局部自适应阈值则是根据像素的邻域块的像素值分布来确定该像素位置上的二值化阈值。这样做的好处在于每个像素位置处的二值化阈值不是固定不变的,而是由其周围邻域像素的分布来决定的。亮度较高的图像区域的二值化阈值通常会较高,而亮度较低的图像区域的二值化阈值则会相适应地变小。不同亮度、对比度、纹理的局部图像区域将会拥有相对应的局部二值化阈值。常用的局部自适应阈值有:1)局部邻域块的均值;2)局部邻域块的高斯加权和。

    1.  // 局部二值化  
    2.   
    3.     int blockSize = 25;  
    4.     int constValue = 10;  
    5.     cv::Mat local;  
    6.     cv::adaptiveThreshold(image, local, 255, CV_ADAPTIVE_THRESH_MEAN_C, CV_THRESH_BINARY_INV, blockSize, constValue);  
  • 相关阅读:
    python 开源机器学习包
    linux hadoop 集群安装步骤
    bbc 大数据
    微信小程序弹出可填写框两种方法
    js 一个对象的属性名是一个变量怎么处理?
    解决微信小程序使用switchTab跳转后页面不刷新的问题
    SQL 和 NoSQL 的区别
    IndexedDB API
    jQuery jsonp跨域请求
    关于setInterval返回值问题
  • 原文地址:https://www.cnblogs.com/Peit/p/6485907.html
Copyright © 2020-2023  润新知