1、均值法

计算图片的色彩平均值,然后大于阈值的设置为255,小于阈值的设置为0。

2、OTSU

通过寻找类内最小方差:即先将图像按照色彩画出直方图。按色彩值分成两个大类,使每个类的方差最小。

3、三角法

代码如下:

def binary_segmetation_demo():src = cv.imread("D:/pythonTest/img/1.jpg",cv.IMREAD_GRAYSCALE)cv.imshow("input",src)ret,dst = cv.threshold(src,0,255,cv.THRESH_BINARY | cv.THRESH_OTSU)#ret用于接收算法得出的阈值cv.imshow("output",dst)print(ret)

上面的代码的OTSU的效果如下:

全局阈值的缺点:对光照不均匀的图像容易出现错误的二值分割。

自适应阈值是先对图像进行模糊求差值,再二值化。

代码如下:

def binary_segmetation_demo():src = cv.imread("D:/pythonTest/img/1.jpg",cv.IMREAD_GRAYSCALE)cv.imshow("input",src)#ret,dst = cv.threshold(src,0,255,cv.THRESH_BINARY | cv.THRESH_OTSU)dst = cv.adaptiveThreshold(src,255,cv.ADAPTIVE_THRESH_MEAN_C,cv.THRESH_BINARY,25,10)#倒数第二个参数是blocks,必须是奇数#ret用于接收算法得出的阈值cv.imshow("output",dst)

上述代码的效果如下:

先去噪(用高斯模糊等)再二值化会有较好的效果,代码如下:

src = cv.GaussianBlur(src,(7,7),0)
dst = cv.adaptiveThreshold(src,255,cv.ADAPTIVE_THRESH_MEAN_C,cv.THRESH_BINARY,25,10)

全局阈值和自适应阈值相关推荐

  1. opencv c++ 二值图像、阈值计算方法、全局阈值、自适应阈值

    1.图像定义: 彩色图像 :三通道,像素值一般为0~255: 灰度图像:单通道,像素值一般为0~255: 二值图像:单通道,像素值一般为0(黑色).255(白色): 彩色图像颜色范围查询表: 2.图像 ...

  2. cv2.threshholding()简单阈值、自适应阈值,Octus阈值

    @[TOC](cv2.threshholding()简单阈值.自适应阈值,Octus阈值 这篇博客将延续上一篇简单阈值处理,继续介绍自适应阈值及Octus阈值: 简单阈值详情见: https://bl ...

  3. OpenCV与图像处理学习七——传统图像分割之阈值法(固定阈值、自适应阈值、大津阈值)

    OpenCV与图像处理学习七--传统图像分割之阈值法(固定阈值.自适应阈值.大津阈值) 一.固定阈值图像分割 1.1 直方图双峰法 1.2 OpenCV中的固定阈值分割 二.自动阈值图像分割 2.1 ...

  4. OpenCV-Python学习笔记(八):图像阈值:简单阈值、自适应阈值、 Otsu's阈值

    目标 • 本节你将学到简单阈值,自适应阈值, Otsu's 二值化等 • 将要学习的函数有 cv2.threshold, cv2.adaptiveThreshold 等. 1.简单阈值 与名字一样,这 ...

  5. 6.2 阈值处理-- 自适应阈值处理和 阈值Otsu处理

    <OpenCV 轻松入门 面向Python> 学习笔记 阈值处理 自适应阈值处理 阈值 Otsu 处理 自适应阈值处理 与 OTSU阈值处理 的差异: 自适应阈值处理 对于色彩均衡的图像来 ...

  6. 【千律】OpenCV基础:图像阈值分割 -- 自适应阈值分割 -- 代码实现

    环境:Python3.8 和 OpenCV 内容:自适应阈值分割代码实现 import cv2 as cv import numpy as np import matplotlib.pyplot as ...

  7. 利用阈值分割原理,对给定图像编程实现二值、反二值、截断、反截断、大津阈值、自适应阈值等类型阈值图像分割,给出实现源码和结果图像。

    程序 import cv2 import numpy as np from matplotlib import pyplot as pltimg = cv2.imread('1.jpg', 0) # ...

  8. 【图像处理】——图像的二值化操作及阈值化操作(固定阈值法(全局阈值法——大津法OTSU和三角法TRIANGLE)和自适应阈值法(局部阈值法——均值和高斯法))

    目录 一.二值化的概念(实际上就是一个阈值化操作) 1.概念: 2.实现方法 3.常用方法 二.阈值类型 1.常见阈值类型(主要有五种类型) (1)公式描述 (2)图表描述 2.两种特殊的阈值算法(O ...

  9. OpenCV —— 阈值分割(直方图技术法,熵算法,Otsu,自适应阈值算法)

    阈值分割 1. 全局阈值分割 直方图技术法 熵算法 Otsu算法 2. 局部阈值分割 自适应阈值 阈值的分割的核心就是如何选取阈值,选取正确的阈值时分割成功的关键.可以使用手动设置阈值,也可以采用直方 ...

最新文章

  1. AO安装需要Microsoft Visual Studio 2013?
  2. tiny4412 linux+qtopia nfs网络文件系统的挂载
  3. linux怎么查看sklearn版本,Sklearn——Sklearn的介绍与安装
  4. Linux unit14
  5. python线性回归实例_python线性回归示例
  6. Command ‘ifconfig‘ not found, but can be installed with: sudo apt install net-tools VM Ubuntu 解决方案
  7. Linux:(ubuntu)命令行下显示方框的问题
  8. 在Eclipse中配置DOS(cmd)窗口
  9. linux解压压缩命令
  10. matlab2009安装教程
  11. ubuntu20.04 LTS安装谷歌拼音输入法
  12. java barchart类,JavaFX BarChart条形图颜色
  13. c语言生成exe文件,打开exe文件闪退怎么办
  14. 路由器linux+开机启动,路由器里设置FRP开机启动教程
  15. Java中正则表达式的基本使用
  16. 基于Spark的案例:同义词识别
  17. [附源码]SSM计算机毕业设计政府公用车辆管理系统JAVA
  18. PMOS管用作电源开关注意事项
  19. 计算机学习资料(全)——含视频资料
  20. Android加密算法

热门文章

  1. pci内存控制器_内存超频与主板有什么关联呢?
  2. java.security.cert.CertificateException: No name matching IP found
  3. CentOS 6.8 64bit 环境 初始化 MySQL 5.7.17成功示例(验证时间2017-01-08)
  4. 查询江苏丹阳高考成绩2021,2021年镇江高考状元是谁分数多少分,历年镇江高考状元名单...
  5. 监狱人太多!英国考虑半年刑期以下的犯人不用坐牢
  6. SpringBoot配置外部tomcat启动时发生Caused by: java.nio.charset.MalformedInputException: Input length = 1错误
  7. 禁止服务器的协议,电脑怎么阻止Internet控制消息协议ICMP?
  8. SAP中关于发票日期和凭证日期的异同原因分析
  9. spyder代码折叠
  10. 3.5 讲一讲关于小红书的搜索引流技巧【玩赚小红书】