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

 时间:2024-10-30 15:23:18

这里,粗浅的介绍一下图像局部自适应二值化的算法,用python3.6(anaconda)来实现算法。

工具/原料

电脑

anaconda(python3.6)

常规二值化

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实现图像局部自适应二值化
  • Matlab实现图像高斯滤波
  • 视觉图像:matlab纹理分割编程实例
  • 如何调试matlab程序
  • MATLAB使用lightm设置地形图光照
  • .m文件怎么打开
  • 热门搜索
    腿部减肥方法 免费追剧大全 牙龈出血的治疗方法 高考落榜怎么办 长头发怎么扎好看 做包子怎么发面才松软发面的方法 成为魔王的方法 怎么贴假睫毛 呼吸困难是怎么回事 慈铭体检怎么样