用python实现图像局部自适应二值化

2025-12-02 14:34:19

1、常规的二值化,不能解决图片在不同的地方亮度深浅不一的情形:

def erzhihua(img,b,c):

……

其中的img是图片转化成的数组,b和c分别是二值化的阈值范围。

用python实现图像局部自适应二值化

2、给出下面的图片。

用python实现图像局部自适应二值化

3、对上面的图片进行二值化处理:

erzhihua(a,100,255)

看下面的图片,部分细节消失掉了。

用python实现图像局部自适应二值化

4、erzhihua(a,150,255)

效果不佳。

用python实现图像局部自适应二值化

5、erzhihua(a,200,255)

很糟糕的处理结果。

用python实现图像局部自适应二值化

6、erzhihua(a,50,255)

用python实现图像局部自适应二值化

1、通过上面的例子,可以看到,这个图片无论怎么调整阈值范围,所得到的二值化结果都不如意。

所以,需要局部二值化处理。

def jubuzishiyingerzhihua(a,n):

……

用python实现图像局部自适应二值化

2、用局部自适应二值化处理图片:

U=jubuzishiyingerzhihua(a,6)

把图片分成了36(6*6=36)个小块,分别用每一块的平均亮度作为阈值,执行二值化。

用python实现图像局部自适应二值化

3、分成100个小块:

U=jubuzishiyingerzhihua(a,10)

用python实现图像局部自适应二值化

4、分成1296个小块,效果反而变差了:

U=jubuzishiyingerzhihua(a,36)

由此可见,并不是细分的越碎越好。

用python实现图像局部自适应二值化

5、分成10000个小碎片:

U=jubuzishiyingerzhihua(a,100)

用python实现图像局部自适应二值化

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢