python - 在自适应阈值中给出 block 大小值的基础是什么?

标签 python opencv image-processing

我不太了解在自适应阈值中使用 block 大小的目的。并且还想知道将值分配为 block 大小的基础。 考虑代码:

gaussian=cv2.adaptiveThreshold(grayscaledImage,255,cv2.ADAPTIVE_THRESH_GAUSSIAN_C,cv2.THRESH_BINARY,115,1)

在这里,我试图获得灰度图像的自适应高斯阈值。当我将 block 大小分配为 115 时,就像上面的代码一样,代码运行良好。

但是如果 ,我将 block 大小分配为 114 或 116,例如:

gaussian=cv2.adaptiveThreshold(grayscaledImage,255,cv2.ADAPTIVE_THRESH_GAUSSIAN_C,cv2.THRESH_BINARY,116,1)

此代码出错。现在我的主要问题是,我如何理解我应该将哪个值作为 block 大小?

最佳答案

来自文档:

https://docs.opencv.org/2.4/modules/imgproc/doc/miscellaneous_transformations.html

blockSize – Size of a pixel neighborhood that is used to calculate a threshold value for the pixel: 3, 5, 7, and so on.

一个 block 以一个像素为中心,因此它必须是奇数才有意义。 3,5,7等表示奇数>1

请阅读文档。他们会告诉您如何正确使用东西。

关于python - 在自适应阈值中给出 block 大小值的基础是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47368311/

相关文章:

python用唯一数字替换列表中的元素

android - 使用相机查找对象的尺寸(高度,宽度)

java - 如何使用java制作图像的渐变边框?

python - Python中给定月份的季度的第一个月

python - 如果cardNumberArray [0] == 4 : IndexError: list index out of range

OpenCV 如何将相机失真应用于图像

python - OpenCV findContours() 只返回一个外部轮廓

algorithm - OpenCV 计算图像平方 Assertion failed 错误

python - PyTorch 中的数据增强

python - Python 何时会/不会暂停协程的执行?