新闻动态

良好的口碑是企业发展的动力

cv.threshold

发布时间:2024-01-05 08:35:45 点击量:193
苏州网站建设

 

cv.threshold 函数是 OpenCV 在图像处理中常用的一个函数,用于将一副灰度图像进行阈值分割。该函数可以将图像的像素值与用户指定的阈值进行比较,并根据像素值与阈值的大小关系对图像进行二值化处理。

 

cv.threshold 函数的函数原型如下:

 

```python

retval

dst = cv.threshold(src

thresh

maxval

type[

dst])

```

 

具体参数说明如下:

 

- `src`:源图像,灰度图像,即输入图像。

- `thresh`:阈值,用于将像素值与之进行比较的值。

- `maxval`:*值,用于进行像素值的二值化处理,将大于阈值的像素值设置为该值。

- `type`:阈值分割类型,用于指定图像是进行二值化还是反二值化,以及二值化类型的选择。

 

阈值分割类型有以下几种选择:

 

- `cv.THRESH_BINARY`:二值化操作,对于图像中的每个像素值,大于阈值的像素值设置为 `maxval`,小于等于阈值的像素值设置为 0。

- `cv.THRESH_BINARY_INV`:反二值化操作,对于图像中的每个像素值,大于阈值的像素值设置为 0,小于等于阈值的像素值设置为 `maxval`。

- `cv.THRESH_TRUNC`:截断操作,对于图像中的每个像素值,大于阈值的像素值设置为阈值,小于等于阈值的像素值保持不变。

- `cv.THRESH_TOZERO`:反二值化操作,对于图像中的每个像素值,大于阈值的像素值保持不变,小于等于阈值的像素值设置为 0。

- `cv.THRESH_TOZERO_INV`:二值化操作,对于图像中的每个像素值,大于阈值的像素值设置为 0,小于等于阈值的像素值保持不变。

 

返回值说明:

 

- `retval`:计算得到的阈值值。

- `dst`:输出图像,灰度图像,即阈值分割后的二值化图像。

 

除了返回值外,该函数还可以通过参数 `dst` 来传入一个与源图像形状相同的矩阵,用于指定输出图像的大小。

 

下面是一个使用 cv.threshold 函数对一副图像进行二值化处理的示例代码:

 

```python

import cv2 as cv

import numpy as np

 

# 读取图像

img = cv.imread('input.png'

0)

 

# 对图像进行二值化处理

ret

thresh = cv.threshold(img

127

255

cv.THRESH_BINARY)

 

# 显示原图和阈值分割后的图像

cv.imshow('Original'

img)

cv.imshow('Thresholded'

thresh)

cv.waitKey(0)

cv.destroyAllWindows()

```

 

该示例代码中,通过 `cv.imread` 函数读取一副图像,并将其转换为灰度图像。然后,使用 `cv.threshold` 函数对图像进行二值化处理,将像素值大于 127 的像素设置为 255,小于等于 127 的像素设置为 0。*,使用 `cv.imshow` 函数分别显示原图和阈值分割后的图像。

 

以上就是 cv.threshold 函数的简要介绍。希望对你理解该函数有所帮助!

免责声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,也不承认相关法律责任。如果您发现本社区中有涉嫌抄袭的内容,请发送邮件至:dm@cn86.cn进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。本站原创内容未经允许不得转载。
上一篇: vim自动补全
下一篇: linux 查询ip