图像处理19:简单阈值
来源:互联网 发布:手机淘宝开店不成功 编辑:程序博客网 时间:2024/06/14 21:08
这种方法非常简单。但像素值高于阈值时,给这个像素赋予一个新值(可能是白色),否则给它赋予另外一种颜色(也许是黑色)。 这个函数就是cv2.threshhold()。这个函数的第一个参数就是原图像,原图像应该是灰度图。第二个参数就是用来对像素值进行分类的阈值。第三个参数就是当像素值高于(有时是小于)阈值时应该被赋予的新的像素值。OpenCV 提供了多种不同的阈值方法,这是有第四个参数来决定的。这些方法包括:
• cv2.THRESH_BINARY
• cv2.THRESH_BINARY_INV
• cv2.THRESH_TRUNC
• cv2.THRESH_TOZERO
• cv2.THRESH_TOZERO_INV
#coding:utf-8import cv2import numpy as npfrom matplotlib import pyplot as pltimg = cv2.imread('F:/black.png',0)ret, thresh1 = cv2.threshold(img,127,255,cv2.THRESH_BINARY)ret, thresh2 = cv2.threshold(img,127,255,cv2.THRESH_BINARY_INV)ret, thresh3 = cv2.threshold(img,127,255,cv2.THRESH_TRUNC)ret, thresh4 = cv2.threshold(img,127,255,cv2.THRESH_TOZERO)ret, thresh5 = cv2.threshold(img,127,255,cv2.THRESH_TOZERO_INV)titles = ['Original Image','BINARY','BINARY_INV','TRUNC','TOZERO','TOZERO_INV']images = [img, thresh1, thresh2, thresh3, thresh4, thresh5]for i in xrange(6): plt.subplot(2,3,i+1),plt.imshow(images[i],'gray') plt.title(titles[i]) plt.xticks([]),plt.yticks([])plt.show()
结果图:
注意:为了同时在一个窗口中显示多个图像,我们使用函数 plt.subplot()。你 可以通过查看 Matplotlib 的文档获得更多详细信息。2表示两行,3表示3列,i+1表示第几个。三个数字可以写成2,3,1,也可以写成231
阅读全文
0 0
- 图像处理19:简单阈值
- Delphi图像处理 -- 设置阈值
- [matlab图像处理] 阈值分割
- Matlab 图像分割 (阈值处理)
- 图像处理------基于阈值模糊
- 图像的阈值处理(Python)
- 图像处理20:自适应阈值
- opencv10-图像分割-阈值处理
- 灰度图像--图像分割 阈值处理之平均阈值
- 灰度图像--图像分割 阈值处理之P-Tile阈值
- 灰度图像--图像分割 阈值处理之OTSU阈值
- 灰度图像--图像分割 阈值处理之局部阈值
- 灰度图像--图像分割 阈值处理综述
- 图像处理基本算法 动态阈值分割
- 图像处理-基本算法之阈值变换
- 图像处理之基于阈值模糊
- 图像处理之基于Otsu阈值二值化
- 图像处理------基于Otsu阈值二值化
- 小白入门---Ajax编程
- 拖动无标题栏的cef3窗口
- 计算机经典书籍
- org.apache.spark.shuffle.FetchFailedException:Failed to connect to异常
- 由前序遍历和中序遍历重构二叉树
- 图像处理19:简单阈值
- AOP用AspectJ开发
- JAVA编程思想学习记录(一)
- C++学习之库函数<algorithgm>(2)
- MySQL查询权限
- 异常
- Java学习第十天
- CNN中参数计算公式
- 整理对Spark SQL的理解