图像二值化的简介?几种经典的二值化方法及其vb.net实现
本文目录
图像二值化的简介
将256个亮度等级的灰度图像通过适当的阈值选取而获得仍然可以反映图像整体和局部特征的二值化图像。在数字图像处理中,二值图像占有非常重要的地位,首先,图像的二值化有利于图像的进一步处理,使图像变得简单,而且数据量减小,能凸显出感兴趣的目标的轮廓。其次,要进行二值图像的处理与分析,首先要把灰度图像二值化,得到二值化图像 。所有灰度大于或等于阈值的像素被判定为属于特定物体,其灰度值为255表示,否则这些像素点被排除在物体区域以外,灰度值为0,表示背景或者例外的物体区域。
几种经典的二值化方法及其vb.net实现
图像二值化的目的是最大限度的将图象中感兴趣的部分保留下来,在很多情况下,也是进行图像分析、特征提取与模式识别之前的必要的图像预处理过程。这个看似简单的问题,在过去的四十年里受到国内外学者的广泛关注,产生了数以百计的阈值选取方法,但如同其他图像分割算法一样,没有一个现有方法对各种各样的图像都能得到令人满意的结果。 本文针对几种经典而常用的二值发放进行了简单的讨论并给出了其vb.net 实现。 1、P-Tile法 Doyle于1962年提出的P-Tile (即P分位数法)可以说是最古老的一种阈值选取方法。该方法根据先验概率来设定阈值,使得二值化后的目标或背景像素比例等于先验概率,该方法简单高效,但是对于先验概率难于估计的图像却无能为力。 2、OTSU 算法(大津法) OSTU算法可以说是自适应计算单阈值(用来转换灰度图像为二值图像)的简单高效方法。1978 OTSU年提出的最大类间方差法以其计算简单、稳定有效,一直广为使用。 3、迭代法(最佳阀值法) (1). 求出图象的最大灰度值和最小灰度值,分别记为Zl和Zk,令初始阈值为: (2). 根据阈值TK将图象分割为前景和背景,分别求出两者的平均灰度值Z0和ZB: 式中,Z(i,j)是图像上(i,j)点的象素值,N(i,j)是(i,j)点的权值,一般取1。 (3). 若TK=TK+1,则所得即为阈值,否则转2,迭代计算。 4、一维最大熵阈值法 它的思想是统计图像中每一个灰度级出现的概率 ,计算该灰度级的熵 ,假设以灰度级T分割图像,图像中低于T灰度级的像素点构成目标物体(O),高于灰度级T的像素点构成背景(B),那么各个灰度级在本区的分布概率为: O区: i=1,2……,t B区: i=t+1,t+2……L-1 上式中的 ,这样对于数字图像中的目标和背景区域的熵分别为: 对图像中的每一个灰度级分别求取W=H0 +HB,选取使W最大的灰度级作为分割图像的阈值,这就是一维最大熵阈值图像分割法。
更多文章:
in consequence(due to和in consequence of的区别)
2023年9月26日 01:20
php连接数据库增删改查教程(php 如何操作access数据库, 关于增删改查的四种操作)
2024年8月1日 17:50
root localhost(root@localhost 这个localhost是什么意思)
2024年9月1日 01:55
oracle数据库客户端(如何避免oracle数据库的端口在公网开放,又可以让客户端访问数据库)
2023年7月11日 04:40
eventargs是什么(net framework 的eventargs类有何用途)
2024年7月7日 05:03
django文件管理系统(django中怎么载入css等静态文件)
2024年7月12日 11:35
countifs和sum套用(如何同时使用countifs和sum计算数值)
2024年7月23日 07:29
删除的文件如何找回(如何恢复被删除的文件怎样可以恢复被删除的文件)
2024年6月12日 15:20
送礼时写敬上与呈上有什么区别那种情况用敬上,那些情况又用呈上?请问”敬上”是什么意思,通常用在什么地方.谢谢
2024年6月30日 17:25
c++语言中strlen怎么用(求C++ strlen函数的用法)
2024年7月8日 13:56
织梦栏目页模板(织梦系统怎样实现不同栏目页调用相同的模板注意是栏目页啊!不是列表页,样式是一样的!)
2024年7月7日 02:49
button标签的onclick事件(一个button标签的onclick没写的话,它是怎么触发事件的)
2024年7月12日 07:28