python opencv图像阈值处理

Posted bandend

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python opencv图像阈值处理相关的知识,希望对你有一定的参考价值。


#########################################################

学习函数 cv2.threshold, cv2.adaptiveThreshold等等


简单阈值:

原理很直接,如果像素值大于一个阈值,那么久将它赋值一个数,否则赋值成另外一个数。函数使用cv2.threshold
第一参数是原图像,而且这个图像应该是一个灰度图像。第二个参数用来区分像素的阈值。第三个参数是像素值大于阈值时的上限。opencv提供了不同样式的阈值并且由第四个参数决定。类型如下
cv2.THRESH_BINARY
cv2.THRESH_BINARY_INV
cv2.THRESH_TRUNC
cv2.THRESH_TOZERO
cv2.THRESH_TOZERO_INV

#########################################################


import
cv2 import numpy as np from matplotlib import pyplot as plt img = cv2.imread(sta.jpg,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 range(6): plt.subplot(2,3,i+1),plt.imshow(images[i],gray) plt.title(titles[i]) plt.xticks([]),plt.yticks([]) plt.show()

技术图片

 

以上是关于python opencv图像阈值处理的主要内容,如果未能解决你的问题,请参考以下文章

OpenCV图像处理应用(面向Python)之阈值与平滑处理

python-opencv 图像二值化,自适应阈值处理

OpenCV图像处理应用(面向Python)之阈值与平滑处理

OpenCV-Python实战——OpenCV用于图像分割的阈值技术(含大量示例,建议收藏)

#yyds干货盘点# Python Opencv实战之图像阈值和模糊处理,万字实战,收藏起来吧~

Python使用openCV把原始彩色图像转化为灰度图使用OpenCV把图像二值化(仅仅包含黑色和白色的简化版本)基于自适应阈值预处理(adaptive thresholding)方法