python-opencv-cv2.threshold()二值化函数的使用

 更新时间:2022年11月09日 10:48:23   作者:木心心以向荣  
这篇文章主要介绍了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()

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

最新评论