0 序言
这篇博客也与我的毕业论文有关,在上个阶段中,我用python代码实现了EM算法,并及进行了细节上的改进,并记录成了博客:
毕业论文-EM算法学习总结https://blog.csdn.net/qq_41938259/article/details/128396229?spm=1001.2014.3001.5501 我们要做的是,结合马尔科夫随机场和EM算法,来修正EM算法在图像分割时无法很好的处理噪声,以及一些不属于同一类但颜色相似的色块但,导致分割结果不理想的问题。
老师给我提供了如下的资料,让我进行复现:
一、技术领域
本发明专利所涉及的技术领域是混合模型图像分割。混合模型图像分割在聚类过程中只考虑像素在视觉空间中的统计分布特性,而没有考虑像素之间的位置信息,针对这一不足之处,本发明专利提出一种新的受空间位置限制的EM图像分割算法。
二、背景技术
在众多的图像分割方法中,基于像素统计特性的聚类方法常常能获得稳定的分割结果。其中高斯混合模型是最具有代表性的一种聚类方法,期望最大化(Expectation Maximization,EM)算法为模型参数提供了一种简单有效的最大似然迭代估计方法。然而,有限混合模型以像素的独立假设为前提,直接应用于图像分割,这种分割方式只考虑了像素的统计特性,而没有考虑像素间的空间位置信息,换句话说,没有考虑邻近像素间的类别相关性。由于具有同一亮度分布的像素可能具有完全不同的类别标志,因此,独立混合模型有可能造成分割区域的空间混杂现象。混合模型分割的一个明显缺点就是在聚类过程中只考虑了像素在视觉空间中的统计分布特性,而没有考虑像素之间的位置相关性,这就容易导致分割后的区域缺乏良好的完整性和平滑性。而马尔科夫随机场(Markov Random Field,MRF)作为一个强有力的工具,在将像素的位置相关性结合到混合模型中发挥了重要的作用,研究者采取了不同的研究策略,一种最常采用的方法是,将MRF施加在混合模型中标示像素模型来源的隐含变量上,以此对邻近像素分割为不同区域的进行约束。但这种隐含的MRF导致模型无法直接进行EM计算,一般是采用伪似然(pseudo-likelihood)代替正常的似然函数,即便如此,EM步骤也无法获得闭式解,在EM步骤中还需采用ICM (iterated conditional modes)等迭代优化算法。为此,本专利采用了另外一种策略来克服混合模型在分割中的缺陷。简单地说,就是将像素的空间位置信息当做一种先验信息,然后引入一种反馈机制,在EM迭代过程中不断修正像素类别信息。
三、发明内容
为了克服混合模型分割方法只考虑像素在视觉空间中的统计分布特性,而没有考虑像素之间的位置相关性的这一缺点,本专利提出一种新的受图像位置空间限制的EM算法。该算法在高斯混合模型的基础上,首先利用图像局部位置像素之间的相关性,将图像划分为固定大小互不重叠的若干小区域(如图1),假设每个区域内的像素来源于图像内同一类别的事物,将这种具有一定合理性的假设作为像素是否来源于同一模型的先验知识,将其结合到高斯混合模型中。然后采用区域的分裂与合并技术,对每个小区域内的像素,判断其后验概率的一致性,若其后验概率分布一致,说明其属于图像内同一类别的事物,不用对其分裂;否则,按四叉树方式将其分裂为四个相等的小区域,重复以上步骤,直到没有可分割的区域为止。这样,分割结果不仅依赖于像素的统计特性,还兼顾了它的空间位置信息。
图1 图像的初始固定划分
四、具体实施方案
本专利在高斯混合模型的基础上提出的受图像位置空间限制的EM分割算法,其算法步骤如下:
步骤1:首先利用图像局部位置像素之间的相关性,将图像划分为固定大小互不重叠的若干区域,并假设每个区域内的像素来源于图像内同一类别的事物。
步骤2:将步骤1中的具有一定合理性的假设作为像素是否来源于同一模型的先验知识,将其结合到高斯混合模型中,其概率分布描述为:
(1)
代表图像像素的类别的先验概率, 代表观测值的来源,如果第个分量生成了,则,否则。为模型分量的参数向量,对于高斯混合模型,分量高斯分布的参数。
公式(1)的似然函数为:
(2)
公式(2)的似然函数可用EM算法求解。其中,
E步骤:
(3)
M步骤:
(4)
(5)
(6)
步骤3:由于我们假设划分的每个小区域来源同一事物,所以分割后的图像呈现出棋盘样式的分割结果,如果图像中不同事物所对应的像素划分为同一个小区域的话,会导致分割错误,为此我们还需要对分割后的结果进一步修正。修正的步骤就是将这种粗略的小区域式的分割结果进行分裂与合并。首先进行分裂操作,具体操作过程如下:
对每个分割结果的小区域内的像素,判断其后验概率的一致性,若其后验概率分布一致,说明其属于图像内同一类别的事物,不用对其分裂;否则的话,按四叉树方式将其分裂为四个相等的小区域,直到没有可分割的区域为止。
本专利采用图像空间分割结果的区域内的后验概率的熵值判断是否应该分裂,即
,若其大于给定的阈值,对其分裂。
步骤4:对分裂后的结果执行合并操作。检查相邻的没有分裂的图像区域,其分割的标注是否一致,如果一致的话,将其合并,直到没有可以合并的区域为止。
步骤5:以新的分裂与合并后的结果作为像素是否来源于同一模型的先验知识,得到公式(1)所示的修正后的混合模型的概率分布描述,以上一次的迭代结果作为初始值,开始新的EM迭代过程。收敛后,只是对上一次分裂后的结果检查是否需要更进一步的分裂,对不需要分裂的标注一致的邻近区域进行合并,如此反复,直到分割结果满足一定分辨率要求。
以上是老师给我的一个专利的稿件,也是就是需要复现的内容。EM算法已经在之前的博客中记录过了,接下来记录马尔可夫随机场相关的内容。
1 前置知识
1.1 马尔可夫模型
在学习《随机过程》一课程的时候,就已经接触到了马尔可夫模型的相关知识。这里先回顾下随机过程相关的概念。
1.1.1 随机过程
随机过程是随机变量的集合,其在随机变量的基础上引入时间的概念。随机过程的概念如下:
设为一概率空间,集合T为一指标集合。如果对于所有的,均有一随机变量定义于概率空间,则集合为一随机过程。
1.1.2 马尔可夫性质
当一个随机过程在给定现在状态和所有过去状态的情况下,其未来状态的条件概率分布仅依赖与当前状态。
一般来说,具备马尔可夫性质的随机过程是不具备记忆特质的。在这个系统中,现在的条件概率和过去以及未来的状态都是独立且不相关的,具备马尔可夫性质的过程通常称为马尔可夫过程。
1.1.3 马尔科夫链
具备离散状态的马尔可夫过程,通常被称为马尔科夫链。该过程中在给定当前知识或信息的情况下,只有当前的状态,能用来预测将来的状态。当前状态之前的状态(历史状态)对于预测未来(当前状态之后的状态)是无关的。在马尔可夫链的每一步,系统根据概率分布可以从一状态变到另一个状态,也可以保持当前状态。状态的改变称为“迁移”,与不同的状态改变的概率称为“状态迁移概率”。
1.2 隐马尔可夫模型
隐马尔可夫模型(Hidden Markov Model,HMM)是统计模型,它用来描述一个含有隐含未知参数的马尔可夫过程。且被建模系统被认为是一个马尔可夫过程与未观测到的(隐藏的)状态的的统计马尔可夫模型。
具体来说,隐马尔可夫模型有三个部分组成:初始概率,隐藏状态转移概率矩阵A,生成观测状态概率矩阵B,即。
例如:天气分为雨天、晴天和多云,不同的天气会导致不同的湿度(干燥的、稍干燥的、潮湿的、和湿漉漉的)。其中天气的状态会转移(从雨天到晴天,晴天到雨天,以此类推),这里天气就是隐藏状态矩阵儿由天气变化导致的湿度则是生成观测状态概率矩阵。
接着,就该切入正题了。
2 马尔可夫随机场
2.1 马尔可夫随机场的概念和定义
马尔可夫随机场(Markov Random Field,MRF),又称马尔科夫网,是一种无向图模型。马尔可夫随机场是典型的马尔科夫网,不同于隐马尔可夫模型,马尔可夫随机场是一种无向图模型。它包含一组节点,每个节点对应着一个变量或者一组变量,节点之间的边表示两个变量的依赖关系。 马尔可夫随机场有一组势函数,也可称为“因子”,这是定义在变量子集上的非负实函数,主要用于定义概率分布模型。马尔可夫随机场的数学定义如下:
对给定无向图和一个由V索引的随机变量的集合,如果它们满足局部马尔可夫性质,就说X是关于G的马尔可夫随机场。
2.2 三个性质
- 成对马尔可夫性质(Pairwise Markov property):给定所有其他变量,任何两个不相邻的变量是条件独立的。
- 局部马尔可夫性质(Local Markov property):给定一个变量的所有邻接变量,该变量条件独立于所有其他变量。
- 全局马尔可夫性质(Gobal Markov property):给定一个分离的子集,任何两个随机变量的自己都是条件独立的。
目前就是这么多,代码实现什么的,还会继续的。