aihot  2017-05-18 19:17:53  OpenCV |   查看评论   

OpenCV代码提取: threshold函数的实现

 

  阈值算法:最简单的图像分割方法。

所有阈值算法将源图像(src)和阈值(thresh)作为输入,并通过将源像素(x,y)处的像素值与阈值进行比较来产生输出图像(dst)。如果src(x,y)> thresh,则dst(x,y)被分配一些值。否则dst(x,y)被分配一些其他值。

大津二值化:简单来说,它自动计算双峰图像的图像直方图中的阈值。(对于不是双峰的图像,二值化将不准确)。使用双峰图像,Otsu的算法找到阈值(t),其最小化加权的类内方差。它实际上发现一个t的值位于两个峰之间,使得两个等级的差异最小。

Otsu的阈值方法涉及迭代所有可能的阈值,并且计算阈值的每一侧的像素级的扩展的度量,即落在前景或背景中的像素。目的是找到阈值,其中,前景和背景差距是最小的。

三角算法:在亮度bmax的直方图的最大值和图像中的最小值bmin之间建立一条线。对于从b = bmin到b = bmax的所有b值计算线和直方图h [b]之间的距离d。h [bo]和行之间的距离最大的亮度值bo是阈值,即threshold = bo。当对象像素在直方图中产生弱峰时,该技术特别有效。

图像二值化就是将图像上的像素点的灰度值设置为两个值,一般为0,255或者指定的某个值。

Otsu:

目前fbc_cv库中支持uchar和float两种数据类型,经测试,与OpenCV3.1结果完全一致。

 

除特别注明外,本站所有文章均为 赢咖4注册 原创,转载请注明出处来自OpenCV代码提取: threshold函数的实现

留言与评论(共有 0 条评论)
   
验证码:
[lianlun]1[/lianlun]