opencv 阈值分割的具体使用


Posted in Python onJuly 08, 2020

阈值分割

像素图
原始图像像素图 见下面
红色线:标注一条阈值线

opencv 阈值分割的具体使用

二进制阈值化
首先设定一条阀值线 如127
大于127的像素点灰度值设为最大(如unit8的格式为255)
小于127的像素点灰度值设为0

opencv 阈值分割的具体使用

反二进制阈值化
首先设定一条阀值线 如127
大于127的像素点灰度值设为最小为0
小于127的像素点灰度值设为最大(如unit8的格式为255)

opencv 阈值分割的具体使用

截断阈值化
首先选定一个阀值,大于该阈值的像素点呗设定为该阈值,小于该阈值的不变
如:阈值127,大于127的像素点值为127;小于127的不变

opencv 阈值分割的具体使用

反阈值化为0
先选定一个阈值,然后做如下处理:
大于等于该阈值的像素点变为0,
小于该阈值的像素点不变。

opencv 阈值分割的具体使用

阈值化为0
先选定一个阈值,然后做如下处理:
大于等于该阈值的像素点不变,
小于该阈值的像素点变为0。

opencv 阈值分割的具体使用

threshold函数

threshold:中文阈值
方法:
retval,dst=cv2.threshold(src,thresh,maxval,type)
retval:阈值 一般和thresh相同
dst:处理结果的图像

src:原始图像
thresh:阈值,阈值线,对应上文的红线
maxval:最大值,阈值分割后指定的最大值,有1和255。最大值为1对应是二值化图像数据
type:类型,指定那种阈值

threshold 二进制阈值
把亮的处理成白色,暗的处理成黑色

区别二值化阈值:二值化只有0,1。
二进制阈值:可以有其他两个数。二值化是特殊的二进制阈值。

cv2.THRESH_BINARY

算例:设定阈值为127

import cv2

a=cv2.imread('lenacolor.png')#
r,b=cv2.threshold(a,127,255,cv2.THRESH_BINARY)
print('r',r)
cv2.imshow('a',a)
cv2.imshow('b',b)
cv2.waitKey(0)
cv2.destroyAllWindows()

结果:
图中 像素只有0,255
print(b)

opencv 阈值分割的具体使用

opencv 阈值分割的具体使用

opencv 阈值分割的具体使用

threshold 反二进制阈值
把亮的处理成黑色,暗的处理成白色
修改前文代码

cv2.THRESH_BINARY_INV

opencv 阈值分割的具体使用

threshold 截断阈值
亮的不能太亮,有上限,暗的不变
cv2.THRESH_TRUNC

opencv 阈值分割的具体使用

threshold 反阈值化为0
把比较亮的部分处理成0成黑色,小于等于阈值的像素点不变
cv2.THRESH_TOZERO_INV

opencv 阈值分割的具体使用

threshold 阈值化为0
比较亮的部分不变,比较暗的部分处理成黑色为0
cv2.THRESH_TOZERO

opencv 阈值分割的具体使用

到此这篇关于opencv 阈值分割的具体使用的文章就介绍到这了,更多相关opencv 阈值分割内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python实现根据月份和日期得到星座的方法
Mar 27 Python
在Ubuntu系统下安装使用Python的GUI工具wxPython
Feb 18 Python
Python使用django搭建web开发环境
Jun 09 Python
使用Python写一个贪吃蛇游戏实例代码
Aug 21 Python
Python编程实现的简单神经网络算法示例
Jan 26 Python
python如何把嵌套列表转变成普通列表
Mar 20 Python
spark: RDD与DataFrame之间的相互转换方法
Jun 07 Python
Python for循环与range函数的使用详解
Mar 23 Python
处理python中多线程与多进程中的数据共享问题
Jul 28 Python
Python队列RabbitMQ 使用方法实例记录
Aug 05 Python
Python selenium自动化测试模型图解
Apr 15 Python
python数据抓取3种方法总结
Feb 07 Python
如何表示python中的相对路径
Jul 08 #Python
如何卸载python插件
Jul 08 #Python
python中数字是否为可变类型
Jul 08 #Python
如何让python的运行速度得到提升
Jul 08 #Python
opencv 图像加法与图像融合的实现代码
Jul 08 #Python
opencv 图像轮廓的实现示例
Jul 08 #Python
opencv 图像滤波(均值,方框,高斯,中值)
Jul 08 #Python
You might like
PHP连接MongoDB示例代码
2012/09/06 PHP
PHP_Cooikes不同页面无法传递的解决方法
2014/03/07 PHP
javascript+php实现根据用户时区显示当地时间的方法
2015/03/11 PHP
PHP SPL标准库之数据结构栈(SplStack)介绍
2015/05/12 PHP
PHP接入支付宝接口失效流程详解
2020/11/10 PHP
读jQuery之十四 (触发事件核心方法)
2011/08/23 Javascript
js DOM 元素ID就是全局变量
2012/09/20 Javascript
Jquery选中或取消radio示例
2013/09/29 Javascript
利用javascript实现全部删或清空所选的操作
2014/05/27 Javascript
js正则表达式中exec用法实例
2015/07/23 Javascript
jquery实现超简洁的TAB选项卡效果代码
2015/08/28 Javascript
那些精彩的JavaScript代码片段
2017/01/12 Javascript
获取url中用&隔开的参数实例(分享)
2017/05/28 Javascript
详解Vue2.0配置mint-ui踩过的那些坑
2018/04/23 Javascript
详解React+Koa实现服务端渲染(SSR)
2018/05/23 Javascript
详解Angular中通过$location获取地址栏的参数
2018/08/02 Javascript
JavaScript实现连连看连线算法
2019/01/05 Javascript
浅谈React中组件逻辑复用的那些事儿
2020/05/21 Javascript
JS+CSS实现炫酷光感效果
2020/09/05 Javascript
[54:25]Ti4 循环赛第三日LGD vs MOUZ
2014/07/12 DOTA
[05:36]DOTA2 2015国际邀请赛中国区预选赛第四日TOP10
2015/05/29 DOTA
[01:56]无止竞 再出发——中国军团出征2017年DOTA2国际邀请赛
2017/07/05 DOTA
python实现dijkstra最短路由算法
2019/01/17 Python
浅谈Python大神都是这样处理XML文件的
2019/05/31 Python
windows下python虚拟环境virtualenv安装和使用详解
2019/07/16 Python
python 非线性规划方式(scipy.optimize.minimize)
2020/02/11 Python
python中wx模块的具体使用方法
2020/05/15 Python
解决Keras中Embedding层masking与Concatenate层不可调和的问题
2020/06/18 Python
详解使用postMessage解决iframe跨域通信问题
2019/11/01 HTML / CSS
人事部主管岗位职责
2013/12/26 职场文书
2014年医学生毕业自我鉴定
2014/03/26 职场文书
职务任命书范本
2014/06/05 职场文书
党员志愿者活动方案
2014/08/28 职场文书
2014年技术员工作总结
2014/11/18 职场文书
《圆的周长》教学反思
2016/02/17 职场文书
大学生军训心得体会5篇
2019/08/15 职场文书