python-opencv-cv2.threshold()二值化函数的使用
作者:木心心以向荣
这篇文章主要介绍了python-opencv-cv2.threshold()二值化函数的使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
1.cv2.threshold()参数说明
cv2.threshold(src, thresh, maxval, type[, dst]) → retval, dst
参数 | 描述 |
---|---|
src | 表示的是图片源 |
thresh | 表示的是阈值(起始值) |
maxval | 表示的是最大值 |
type | 表示的是这里划分的时候使用的是方法选择参数 |
常用值为0(cv2.THRESH_BINARY)
第四个是一个方法选择参数,常用的有:
cv2.THRESH_BINARY
(黑白二值)cv2.THRESH_BINARY_INV
(黑白二值反转)cv2.THRESH_TRUNC
(得到的图像为多像素值)cv2.THRESH_TOZERO
cv2.THRESH_TOZERO_INV
该函数有两个返回值,retVal:得到的阈值,dst:阈值化后的图像
公式中0代表黑,设置最大阈值maxval为255(白)就可以进行二值化处理
2.代码示例
import cv2 import numpy as np # 读取照片 img=cv2.imread('D:\\Patrick_Star.jpg') # 图像缩放 img = cv2.resize(img,None,fx=0.1,fy=0.1) cv2.imshow('img',img)) # 灰度处理 gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) cv2.imshow('gray',gray) # cv2.threshold()二值化 _,thres = cv2.threshold(gray, 180, 255, cv2.THRESH_BINARY_INV) cv2.imshow('thres',thres) # 展示图片 cv2.waitKey(0) cv2.destroyAllWindows()
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。