(一)图像分割技术

cv2.thresh阈值分割函数及参数

1.函数
  ret, dst = cv2.thresh(src, thresh, maxval, type)
2.参数说明
  src*表示输入的图片, thresh表示阈值, maxval表示最大值, type表示阈值的类型,常用的有:

cv2.THRESH_BINARY   表示阈值的二值化操作,大于阈值使用maxval表示,小于阈值使用0表示
cv2.THRESH_BINARY_INV  表示阈值的二值化翻转操作,大于阈值的使用0表示,小于阈值的使用最大值表示
cv2.THRESH_TRUNC    表示进行截断操作,大于阈值的使用阈值表示,小于阈值的不变
cv2.THRESH_TOZERO   表示进行化零操作,大于阈值的不变,小于阈值的使用0表示
cv2.THRESH_TOZERO_INV  表示进行化零操作的翻转,大于阈值的使用0表示,小于阈值的不变

3.代码及说明

import cv2
import matplotlib.pyplot as plt

img = cv2.imread('cat.jpg')

#用于绘制图像
plt.subplot(2, 3, 1)
plt.imshow(img)
plt.title("ORIGINAL")

# 1.进行阈值二值化操作,大于阈值127的,使用255表示, 小于阈值127的,使用0表示
ret, thresh1 = cv2.threshold(img, 127, 255, cv2.THRESH_BINARY)
plt.subplot(2, 3, 2)
plt.imshow(thresh1)
plt.title("BINARY")

# 2. 进行阈值二值化翻转操作, 大于阈值127的,使用0表示,小于阈值127的,使用255表示
ret, thresh2 = cv2.threshold(img, 127, 255, cv2.THRESH_BINARY_INV)
plt.subplot(2, 3, 3)
plt.imshow(thresh2)
plt.title("BINARY_INV")

# 3. 进行截断阈值表示,大于阈值127的使用127表示,小于阈值127的不变
ret, thresh3 = cv2.threshold(img, 127, 255, cv2.THRESH_TRUNC)
plt.subplot(2, 3, 4)
plt.imshow(thresh3)
plt.title("TRUNC")

# 4. 对阈值进行0值化表示,大于127的不变,小于127阈值的,用0表示
ret, thresh4 = cv2.threshold(img, 127, 255, cv2.THRESH_TOZERO)
plt.subplot(2, 3, 5)
plt.imshow(thresh4)
plt.title("TOZERO")

# 5. 对阈值进行0值化反向操作, 大于127的用0表示,小于127的不变
ret, thresh5 = cv2.threshold(img, 127, 255
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Huaping Guo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值