【问题标题】:Questions for adaptiveThreshold()AdaptiveThreshold() 的问题
【发布时间】:2019-11-07 10:53:31
【问题描述】:

// 1.使用_的目的是什么,

import cv2 as cv
import numpy as np

img = cv.imread('sudoku.png',0)


 _,th1 =cv.threshold(img,127,255,cv.THRESH_BINARY)  

// 2. 2nd value(255), 5th (11), 6th (2) 是什么意思? 如果我们改变它们中的每一个会发生什么?

 th2=cv.adaptiveThreshold
(img,255,cv.ADAPTIVE_THRESH_MEAN_C,cv.THRESH_BINARY,11,2)

 cv.imshow("Image",img)
 cv.imshow("th1",th1)
 cv.imshow("th2",th2)

 cv.waitKey(0)
 cv.destroyAllWindows()

// 3. 如果我们不使用“cv.destroyAllWindows()”会发生什么?

【问题讨论】:

  • 1.: _ 表示忽略第一个输出参数。
  • 关于_,请参阅stackoverflow.com/questions/5893163/…,关于您的其他问题,您阅读过文档吗?
  • 您可以通过阅读 openCV 文档轻松找到所有这些答案。
  • 大家好。我确实阅读了文档 doe openCV,但我仍然很困惑如果我们更改它或不使用它怎么办?感谢所有答案!

标签: python numpy opencv threshold


【解决方案1】:

第二个值 (255) 是用于最大值的值。

_,th1 =cv.threshold(img,127,255,cv.THRESH_BINARY)
np.max(th1)

将返回 255。 如果你把它设置成这样的东西

_,th2 =cv.threshold(img,127,200,cv.THRESH_BINARY)
np.max(th2)

它将返回 200

这里很好地解释了其他两个参数:OpenCV 2.4 docs

但 5h 值是块大小,用作不同自适应阈值的邻域。

第 6 个值是从平均值或加权平均值中减去的常数值。

【讨论】:

    猜你喜欢
    • 2015-01-16
    • 1970-01-01
    • 1970-01-01
    • 2014-04-23
    • 1970-01-01
    • 2015-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多