如2.3.1节所述,本书后续章节将重点分析人工蜂群算法和灰狼算法在多阈值图像分割中的应用,因此这两种算法的原理和模型描述将在后续章节中给出。为了使读者对其他智能优化算法有更加深入的了解,本节将根据2.3.1节的综述分析,介绍其他几种常用智能优化算法。
1)遗传算法
遗传算法是20世纪80年代应用最多的一种智能优化算法,也是最早广泛应用的智能优化算法之一。它是根据达尔文生物进化理论,模拟自然界优胜劣汰遗传选择机制形成的一种群体智能算法。由该算法汇总将计算机所处理的问题转化为多个基因(染色体),并初始化一个种群,在初始种群的基础上,通过每个个体基因元素的交叉融合,形成新的种群,然后通过特定目标函数分析新种群的优劣,采用优胜劣汰、适者生存的原则,更新最优种群,淘汰劣势种群。经过一段时间的迭代运行,最终获得解决某一问题的最优种群(解)。
在多阈值图像分割中,初始染色体信息用一个字符串向量描述,其基本元素为图像灰度直方图信息。假设图像的最大灰度等级为L,其公式化表示为:
式中,hi为图像的第i个灰度直方图,其取值为0或1,0表示直方图的峰谷和峰顶。
如一个图像灰度等级L为8,则其染色体可表示为(1,1,0,1,1,1,0,1)。从该染色体信息可以得出其阈值数量为2(即值为0的数量,多阈值分割一般以峰谷作为分割阈值),且其阈值为2和7(0的位置序号即为最优阈值)。
染色体表示模式设置完成以后,将使用随机算法生成初始种群,初始种群的表示方式如下:
其中每个元素为一个染色体,m为初始设置种群数量。
初始种群设置完成以后,首先根据适应度函数(如Otsu、Kapur等)选取最优染色体,然后对最优染色体进行随机更新,一般更新方式为对相应hi进行加1或减1操作,从而形成迭代所需的更新种群。
在整个迭代过程中,有不同染色体形成的种群需要不断进行交叉和突变。交叉操作中,首先设置一个随机概率P,并且每个种群也会分配一个随机数,当该随机数的值大于P时,执行交叉操作,否则跳过该过程。具体的交叉方式为:初始化一个随机整数Q,然后将两个随机种群的Q到L-1子串进行互换,从而形成更新种群。
突变操作的具体过程为:首先初始化一个较小的随机概率,然后每个种群中的染色体将会在一个随机位置发生突变,突变方式为由0变为1或者由1变为0。
最终算法通过一定程度的迭代以后,将最优种群选出,然后根据染色体中0的位置即为最优阈值。
2)差分进化算法
差分进化算法是一种全局最优算法,与遗传算法类似,也包括突变、交叉和选择操作。它最早被应用于实数优化问题,在多阈值图像分割中,初始种群为一个由j个阈值组成的一维向量,其第i个种群的初始化公式为:
在种群更新阶段,一个突变向量被创建。该突变向量由随机抽取的三个种群y1、y2和y3来初始化,其公式化表示为:
式中,F为缩放因子,它的取值范围为[0.4,2]。
在交叉阶段,它采用的交叉方案一般有两种:指数分布或二项式分布。在多阈值图像分割中经常使用的是二项式分布,其公式化表示为:
式中,f为目标函数公式;r(i)的公式化表示方式为:
式中,C为算法设置的控制参数;rn(i)是一个随机选择的向量维数,它的取值范围为1到每个种群的最大维数。
3)粒子群算法
粒子群算法是模拟鸟群(粒子)的捕食行为演化而来的,它将某个问题的每一个可能解模拟为鸟群中的一只鸟,并且每只鸟都会被复制一个速度值,该速度决定了鸟的飞行距离与搜索范围,当鸟群在不断觅食过程中,逐步获取食物源(即最优解)。
在多阈值图像分割问题中,每个粒子被初始化为一组由j个阈值组成的向量,假设在i个初始种群下,其初始化函数为:
式中,j为预设阈值数量;i为种群数量;由公式2.11可以形成一个i*j的初始化向量。后续优化和迭代过程中,将对每一行数据进行更新,最终通过有线步迭代寻找最优解。(www.xing528.com)
在粒子群算法中,根据Otsu等目标函数,每个种群都会计算一个适应度值,其最大或最小代表最优种群。在每一步迭代中,以当前最优种群为基础进行速度计算,从而决定其他种群的更新方式。下一步速度计算函数如下:
式中,op(t)为当前粒子的最优解;gl(t)为所有粒子的全局最优解;θ1和θ2是一个有随机数配合的控制参数;ω为一个惯性权重参数,用于控制当前速度对下一次迭代速度的影响。
在速度函数的控制下,下一次迭代的种群数据由以下公式给出:
由公式2.13计算出最新种群值以后,粒子群算法将对所有种群进行适应度函数评价,如果某一种群的适应度评价优于上一次迭代适应度值,则该种群被更新;反之则保持不变。在适应度评价计算完成以后,op(t)和gl(t)也将同步更新,并进入下一次迭代过程,直至找到最优解。
4)布谷鸟算法
布谷鸟算法是通过模拟自然界布谷鸟的育雏行为演化而来的,布谷鸟将自己的卵放置到其他鸟巢中,诱骗其他鸟类为自己孵化和哺育幼鸟。因此布谷鸟卵或幼鸟要有极强的伪装和适应能力,以满足自己的成长要求,这些能力被演化为算法的求解最优问题。
自然界中布谷鸟通过随机或伪随机方式寻找产卵鸟巢的位置,为了演化为计算机算法,需设定三种初始状态:
(1)布谷鸟每次只产一只卵,以随机方式选择鸟巢进行孵化。
(2)在随机选择的一组鸟巢中,最优鸟巢会传递给下一代。
(3)算法中可利用的鸟巢数量是固定的,并且设置被证伪的概率为P。
基于以上三条理想化初始状态,布谷鸟算法的基本步骤如下。
第一步:设置鸟巢数量和布谷鸟卵被证伪的概率,并设置算法的终止条件。该终止条件为一个固定迭代次数或者自适应算法的某种规则。除此之外,针对多阈值图像分割问题,还需设置阈值数量n(求解维数)和阈值边界条件(0~255)。
第二步:随机初始化种群(种群数量需要预设),在多阈值图像分割中每个种群为由n个阈值做成的一维向量。
第三步:通过目标函数测试每个种群的优劣,并保存最优种群。
第四步:在保存最优种群的基础上,通过莱维飞行算法更新种群。
莱维飞行策略是目前采用较多的种群更新策略,其公式化表示如下:
式中,α为步长控制量,一般被设置为1;⊕表示点对点乘法操作;λ为尺度参数,在多阈值图像分割中,其取值范围一般被设置为1到3之间。
莱维飞行的计算公式为:
第五步:计算新种群的目标函数,如果优于现有种群则更新;否则保持不变,转至第四步,制止迭代条件完成。
5)其他智能优化算法
除了上述介绍的四种主流算法以外,另外一种常用智能优化算法为人工蜂群算法,本书后续章节将给出该算法的描述。如2.3.1节所述,多阈值图像分割领域所应用的智能优化算法较多。受篇幅限制,本节有选择地介绍了遗传算法、差分进化算法、粒子群算法和布谷鸟算法,这四种算法是目前在多阈值图像分割领域应用最广泛和最普遍的智能优化算法。当然,随着智能优化算法的不断发展,新的智能优化算法也将不断涌现,根据现有文献综述,本书后续章节也会详细分析灰狼算法在多阈值图像分割中的应用。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。