我不太了解在自适应阈值中使用 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/