温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
基于
思想
自适应
Niblack
算法
改进
丁登峰
第 40 卷第 3 期计算机应用与软件Vol.40 No 32023 年 3 月Computer Applications and SoftwareMar 2023基于迭代思想的自适应 Niblack 算法改进丁登峰1,2周国鹏1,2*张建权1,2陈澜征2,31(湖北科技学院自动化学院湖北 咸宁 437100)2(湖北香城智能机电研究院湖北 咸宁 437100)3(武汉纺织大学电子与电气工程学院湖北 武汉 430200)收稿日期:2020 08 08。湖北省科技计划项目(2019BEC206,2018ABA076,2019AAA057)。丁登峰,硕士生,主研领域:图像处理,数字媒体与可视计算。周国鹏,教授。张建权,讲师。陈澜征,硕士生。摘要针对文本及小物体图像识别时在光照不均匀工况下特征提取难度大、效率低问题,提出一种改进Niblack 算法。利用迭代思想获取每个像素邻域的均值及标准差,使其与邻域窗口大小无关,避免了重复计算,降低了算法复杂度;在 Sauvola 算法基础上结合全局阈值 Otsu 算法及方差特性改进算法阈值,使其能自适应地调整阈值,逐点地进行图像二值化。为验证算法有效性,将其应用于文本、车牌及小物体图像二值化,与传统 Otsu、Kittler、Niblack 和 Sauvola 算法相比,算法获取的特征更清晰和准确,伪影和斑点等噪声更少,且与原 Niblack 算法相比,相同条件下其处理时间大幅度降低。关键词Niblack 算法光照不均匀迭代思想自适应阈值二值化中图分类号TP3文献标志码ADOI:10 3969/j issn 1000-386x 2023 03 049IMPOVEMENT OF ADAPTIVE NIBLACK ALGOITHM BASED ON ITEATIVE IDEADing Dengfeng1,2Zhou Guopeng1,2*Zhang Jianquan1,2Chen Lanzheng2,31(School of Automation,Hubei University of Science and Technology,Xianning 437100,Hubei,China)2(Hubei Xiangcheng Intelligent Electromechanical esearch Institute,Xianning 437100,Hubei,China)3(School of Electronic and Electrical Engineering,Wuhan Textile University,Wuhan 430200,Hubei,China)AbstractAimed at the difficulty of extraction and low efficiency of text and small object image feature extractionunder uneven illumination conditions,an improved Niblack algorithm is proposed The iterative idea was used to obtainthe mean and standard deviation of each pixel neighborhood,making it independent of the neighborhood window size,avoiding repeated calculations and reducing the algorithm complexity Based on the Sauvola algorithm,the globalthreshold Otsu algorithm and the variance characteristics were combined to improve the algorithm threshold,so that itcould adjust the threshold adaptively and perform image binarization point by point In order to verify the effectiveness ofthe algorithm,it was applied to the binarization of text,license plate and small object images Compared with thetraditional Otsu,Kittler,Niblack,and Sauvola algorithms,the features obtained by the algorithm are clearer and moreaccurate,and the noises such as artifacts and spots are lessCompared with the original Niblack algorithm,itsprocessing time is greatly reduced under the same conditionsKeywordsNiblack algorithmUneven illuminationIterative ideaAdaptive thresholdBinarization0引言在光学字符识别1 4、车牌识别和零件识别检测等工程应用中,图像的二值化是一项至为关键的预处理技术。在很多视觉工程应用中,图像特征对于最终的识别结果起到关键作用。在图像二值化过程中,能否保留原图的主要图像特征是最关键的,而图像第 3 期丁登峰,等:基于迭代思想的自适应 Niblack 算法改进309二值化的关键是确定二值化的阈值以及阈值的确定时间。二值化的算法有很多,大体分为两类:全局阈值算法5 6 和局部阈值算法 7 8。用得比较多的就是全局阈值Otsu 算法和局部阈值Niblack 算法 7,其中Niblack是一种实现方法较为简单,效果较为稳定,是一种动态阈值分割方法,其二值化效果比大津法(Otsu 算法)好,因为大津法是根据整个图像来确定一个阈值,而Niblack 则是在不同的邻域会有不同的阈值。图像二值化的基本要求就是快速地在保留原图主要图像特征的基础上进行二值化转换。针对这两点要求,国内外很多学者对图像二值化算法做了大量研究。Natarajan 等9 提出了一种基于对数二值化技术的文本图像增强方法;Lokhande 等10 提出一种针对文本图像的改进局部二值化技术,该算法根据直方图最小值进行图像分割并结合优化后的 Otsu 图像去除为轮廓;杨硕等11 提出了将全局阈值 Kittler 算法和局部阈值Bernsen 算法相结合的二值化算法;石为人等12 提出将改进 Otsu 和 Niblack 算法相结合,提高了处理速度,获取了较好的效果,但二值化图像还是有明显噪声;郑均辉等13 提出一种局部静态阈值与 Niblack 相结合的改进算法,该算法能有效消除传统算法中噪声过多现象,但是对处理速度没有改善;李鑫等14 提出了一种基于粒子群优化方法的 Niblack 设备红外图像分割算法,算法对含较大噪声密度的红外图像分割性能优于其他传统算法,但算法复杂度较高,处理时间长;李建等15 提出一种自适应邻域窗口和修正系数的 Niblack算法,该算法依据 Q 码图像的分辨率和灰度值,动态调整修正系数和邻域窗口,进行自适应二值化处理,但是处理速度依旧没有较大的改善;从飞等16提出利用数学形态学理论,采用改进的 Sauvola 算法对非均匀光照图像进行二值化,可以对噪声进行有效的抑制,得到较好的识别效果;孙国栋等17提出一种基于卷积神经网络的二值化方法,对复杂光照下含数字重影的仪表图像二值化,但训练所需要的时间较长。然而,以上方法要么只针对文本图像优化,要么优化了处理效果但处理速度依旧缓慢,有的算法优化了处理速度但是二值化效果还有待改进。本文运用迭代思想快速改进 Niblack 算法中对灰度均值与标准差的计算,使得同样分辨率的图像处理速度从几十秒降低到毫秒级,同时利用 Otsu 全局阈值优化原算法阈值函数中的修正系数,使其能自适应地调整阈值,在文本图像和小物体分割处理中获得更好的处理效果。1算法简介1 1Otsu 算法Otsu 算法3 主要用于自动计算图像分割中的阈值 t,计算简单,不受图像亮度和对比度的影响,能更好地区别图像的前景(目标)和背景区域。该算法使用聚类思想,用阈值 t 把图像按灰度级分成目标和背景两部分,使得两部分之间的灰度值的方差 g(t)最大化。g(t)=w0(u u0)2+w1(u u1)2(1)令 t 在图像灰度 0,L 1 上进行遍历,计算不同t 值下的类间方差 g(t)值,使得 g(t)值最大时的 t 值就是 Otsu 法所要求的最佳阈值。然后利用式(1)计算得到的阈值 t,在图像中逐点遍历比较,完成图像二值化。f(x,y)=0f(x,y)t255f(x,y)t(2)L 为图像灰度级,f(x,y)为图像中一点(x,y)的灰度值。w0、w1分别为目标和背景像素出现的概率,u0、u1分别为目标和背景的平均灰度值,u 为总平均灰度值。1 2Niblack 算法Niblack 算法是一种简单可靠的局部阈值二值化算法,对光照不均匀的图像处理效果明显。其基本思想是通过计算图像中每个像素点(x,y)及其邻域(r r)内所有像素点的灰度均值 m(x,y)和标准差 s(x,y),得到二值化阈值 T(x,y)。算法具体步骤为:Step1以每个像素点(x,y)为中心,分别计算其r r 邻域窗口内所有像素点的灰度均值 m(x,y)。其中,f(x,y)是图像中一点(x,y)的灰度值。m(x,y)=1r2x+r2i=xr2y+r2j=yr2f(i,j)(3)Step2利用式(3),计算每个像素点(x,y)及其邻域(r r)内所有像素点的标准差 s(x,y)。s(x,y)=1r2x+r2i=xr2y+r2j=yr2(f(i,j)m(x,y)2(4)Step3利用式(3)和式(4),计算每个像素点(x,y)的二值化阈值 T(x,y)。310计算机应用与软件2023 年T(x,y)=m(x,y)+k s(x,y)(5)式中:k 为修正系数,取值范围为 1,1,一般取0 1 0 5。Step4利用式(5),在图像中逐点遍历每个像素点(x,y)的灰度值 f(x,y)及其对应的 T(x,y)值,按式(6)进行图像二值化。f(x,y)=0f(x,y)T(x,y)255f(x,y)T(x,y)(6)在经典 Niblack 算法中,阈值 T(x,y)计算式为式(5)。当图像中像素点灰度值 f(x,y)大于或等于 T(x,y)时,则设置为白色,否则为黑色,这样就完成了图像的二值化。但是如果某一邻域内都是背景,按 Niblack计算,必定有一部分被判定为目标点,从而导致伪影现象。针对此问题,2000 年 Sauvola 提出了一种改进的Niblack 算法,差异部分就是采用了不同的阈值选取方法,具体公式如式(7)所示,其中:k 是修正系数,取值范围为 0,1,为标准方差的动态范围,若当前输入图像为 8 位灰度图,则 =128。T(x,y)=m(x,y)1+ks(x,y)()1(7)改进后的算法对伪影现象有了一定的改善,同时用 Niblack 算法进行图像处理时,选择的邻域窗口 r r大小很关键,选择的邻域太小,则噪声抑制的效果不理想,目标不够突出,选择的邻域太大,则目标的细节就会部分丢失,同时计算复杂度高,导致处理速度过慢。2Niblack 算法优化改进本文主要从图像处理速度和处理效果这两方面对 Niblack 算法进行优化改进。在处理速度优化方面,主要是运用迭代思想降低算法复杂度,使原复杂度O(size area)降低为 O(siz