基于局部自适应的Otsu算法的制作方法

文档序号:16393583发布日期:2018-12-25 19:34阅读:683来源:国知局
基于局部自适应的Otsu算法的制作方法

本发明属于计算机图像处理领域,特别涉及基于局部自适应的otsu算法。

背景技术

由于不受图像对比度和亮度变化的影响,otsu算法常被用于图像分割问题。虽然该算法比较简单,但计算方差时需要遍历图像中的所有像素,导致时间开销较大,因而难以运用到实时的图像处理系统中。此外,如果仅仅利用图像的灰度直方图来选取图像分割的阈值,往往难以获得最佳阈值,从而难以获得较好的分割结果。



技术实现要素:

本发明的目的是提供基于局部自适应的otsu算法,为了提高图像分割效果,针对一维otsu算法提出了一种局部自适应的阈值分割方法。

基于局部自适应的otsu算法,其具体方法是利用滑动窗口遍历整幅图像,针对每一个滑动窗口进行阈值分割后,再利用拼接技术还原图像。

实验结果表明,本文算法的分割效果要优于一维otsu算法,并且还降低了算法实现的时间开销。

其优点在于:

本技术方案在算法实现的时间开销方面明显优于经典的一维otsu算法,不仅可以运用到实时的图像处理系统中,还达到很好的分割效果。

附图说明

图1为一维otsu算法过程。

图2为图像灰度级与类间方差关系图。

图3为局部自适应的otsu算法滑动窗口未遍历位置(1)。

图4为局部自适应的otsu算法滑动窗口未遍历位置(2)。

图5为局部自适应的otsu算法滑动窗口未遍历位置(3)。

图6为局部自适应的otsu算法滑动窗口未遍历位置(4)。

图7为基于局部自适应的otsu算法分割结果,(原始图像)。

图8为基于局部自适应的otsu算法分割结果,(otsu全局阈值分割结果)。

图9为基于局部自适应的otsu算法分割结果,(otsu局部自适应阈值分割结果)。

具体实施方式

基于局部自适应的otsu算法:

一维otsu算法原理可以表述如下:假设图像有l个灰度级,灰度值为i的像素总数为n,而整个图像的像素总数为n,则灰度值i在图像中所占的比例为且有设置阈值为t,并将图像灰度级分为2类,即所说的前景和背景。令前景a=(1,2,...,t),背景b=(t+1,t+2,...,l-1),t∈(0,l-1),可以得出a、b在图像中所占的比例分别为:

进而可以得出a,b灰度值均值为:

则图像总灰度均值为

最终得到图像类间方差为:

σ2=pa(wa-w0)2+pb(wb-w0)2(1)。

由式(1)可知,σ2越大则a、b灰度差别越大。当σ2最大时,可得阈值t′为

为了更加清楚地理解一维otsu算法过程,给出了图1。

算法改进:

本技术方案提出了一种基于局部自适应的otsu算法。同时,为了降低算法的时间复杂度,做出了相应的改进。

在提出解决问题之前,发现otsu算法具有两个比较有趣的现象:

(1)利用otsu算法进行图像分割。如果针对图像采取缩小操作,otsu算法得到的阈值基本不会改变。利用大量图像(5000张,100×100、200×200、300×300、400×400、500×500分辨率图像各1000张)进行实验,发现将图像缩小至0.5倍、0.4倍甚至到0.1倍后,再对图像进行otsu分割,所得的阈值保持不变。可以总结:如果对大尺寸图像(200×200及以上)进行缩小操作,然后利用otsu算法得到阈值,再对原图像分割将会大大减小时间开销;然而,如果图像尺寸过小(100×100或者更低分辨率),利用此方法会得到错误阈值。

(2)图2是图7中原图像灰度级与类间方差的关系图。从中可见看到,在灰度级逐渐变大过程,类间方差经历两个变大变小阶段,即会出现两个抛物线。然而,这种现象不是某个场景图像所独有的。通过对大量图像(5000张图像)实验发现,所有图像都是在灰度级区间出现两个抛物线现象。这表明随着灰度级逐渐上升,不可能出现相邻两个灰度级剧烈跳变的情况,即灰度级与类间方差之间关系是连续的。实际上通过对式(1)可以看出,灰度级与类间方差之间关系是连续的函数,图像趋势符合该公式。

针对上述现象,本技术方案可以从两个方面降低时间开销。

(1)针对符合一定尺寸(分辨率超过100×100)的图像采取缩小(缩小后的分辨率不宜低于100×100)操作后,再利用otsu算法计算阈值,一般缩小至1/3倍为宜。如果图像的分辨率小于100×100,则图像不采取缩小操作,而是直接利用otsu算法计算阈值。

(2)由于场景图像都符合图2现象,即灰度级与类间方差之间的关系是一种平滑的曲线关系,相邻灰度级不可能出现跳变情况,且对图像分割效果没有影响。因而,可以将256灰度级,每隔一个灰度级计算类间方差。如此操作,计算类间方差时会减少一半的计算量,即只遍历128个灰度级,这种方法大大缩减了otsu算法的时间开销。

本技术方案根据全局阈值法的局限性,提出了一种基于局部自适应的otsu图像分割方法。具体过程是:(1)首先创建一个滑动窗口(是一种不重叠的窗口),从左到右、从上到下遍历整幅图像;(2)在遍历的过程中,对每个窗口图像利用otsu算法计算阈值并分割图像;通过遍历,可以得到每个局部图像的二值图像;(3)最后将二值化图像利用图像拼接技术进行拼接,拼接成与原图一样大小的分割图像。

在遍历过程中,需要考虑3种情况:(1)如果图像右边有多余的像素没有被滑动窗口遍历到,但是图像下边刚好被遍历完毕,此时需要把图像右边提取出来进行otsu阈值化,并进行横向图像拼接,此种情况见图3;(2)如果图像下边有多余的像素没有被滑动窗口遍历到,但是图像右边刚好被遍历完毕,此时需要把图像下边提取出来进行otsu阈值化,并进行纵向图像拼接,此种情况见图4;(3)如果图像下边有多余的像素没有被滑动窗口遍历到,图像右边也有多余的像素没有被滑动窗口遍历到,此时需要把图像分成两块,并有两种方式进行拼接:(a)将图像按照图5分块,先进行横向拼接,再进行纵向拼接,顺序不可颠倒;(b)将图像按照图6分块,先进行纵向拼接,再进行横向拼接,顺序也不可颠倒。当所有局部图像进行拼接完成,则整个算法过程也随之结束。

实验结果与分析:

如图7-9是实验得出的结果,图中指示牌的信息已经显示出来,可以看到基于局部自适应的otsu算法的分割结果要比经典算法结果要好。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1