在计算机视觉领域,混合动态纹理模型(Mixtures of Dynamic Textures, MDT)常用于视频帧序列建模。比如对帧序列的分割,局部或全局的异常事件检测。下图能很好表明MDT的建模过程及其应用,该模型用于人群场景中局部异常的检测。首先,训练阶段:在一定的训练时间内且在每一个子区域中学习相应的MDT模型;其次,测试阶段:针对每一个子区域的MDT模型计算测试帧对应区域的负对数似然。整个过程类比于GMM模型用于视频建模,其中两者的区别在于GMM模型中的样本数据点为单帧中的local patch;而在MDT模型中的样本数据点多考虑了时间信息,即为spatio-temporal local patchs。而这层时间信息可以用马尔科夫链进行建模,下面我们先描述一下动态纹理模型(DT),然后再讨论MDT。
1. 动态纹理模型(DT)
DT是一个典型的视频帧序列的生成模型。这个随机过程通过一系列隐变量和观测变量
{x,y}
并结合线性动态系统(linear dynamical system, LDS)进行形式化:
其中 xt∈Rn 为帧序列中时刻 t 对应的隐变量,刻画视频序列随时间的演变;
很显然,初始状态分布,状态转移条件分布和观测条件分布如下
其中 G(x,μ,Σ)=(2π)−n/2|Σ|−1/2exp{−12∥xt−μ∥2Σ} 为 n 维高斯分布,
由于隐变量的存在,该模型的参数学习一般通过 EM算法求解;而隐变量的推断(预测问题)一般采用经典的维特比算法。这里就不过多介绍细节,下面我们来看MDT模型。
2. 混合动态纹理模型(MDT)
所谓MDT,即一个视频帧序列 y 采样于某一个动态纹理,且每一个动态纹理参数为 Θk ,对应概率为 αk ,满足 ∑Kkαk=1 。整个模型的生成过程如下:
- 从多项式分布 {α1,⋯,αK} 中采样一个成分 k ;
- 从动态纹理成分
Θk 中采样一个视频帧序列 y 。
那么该序列从该生成模型中采样的概率为
其中 pk(y;Θk) 为第 k 个动态纹理的条件概率分布,参数为
其中 p(x,y|Θk)=p(x1|Θk)∏τt=2p(xt|xt−1,Θk)∏τt=1p(yt|xt,Θk) 。
现在考虑模型参数的学习问题。假设给定了一系列独立同分布的视频帧序列 Y={yn}Nn=1 ,而 yn={yn1,yn2,⋯,ynτ} 为第 n 个视频帧序列。那么一般采用最大似然估计模型参数,即
下面我们考虑EM算法第E步:
其中上式用到了各视频序列独立性的假设; p(znk=1|yn) 为后验概率,可利用全概率公式计算。有了E步的计算,那么M步则利用拉格朗日乘子法对各参数进行求解。在M步的计算过程中,对联合分布的对数形式进行展开,对各参数的求解会面临两种形式:
第一种为如下的优化求解形式
maxX−12tr(X−1A)−λ2log|X|
上式的求解只需计算对应导数并令其等于0而得到闭合解
12X−TATX−T−λ2X−T=0AT−λXT=0⇒X∗=1λA第二种为如下的优化求解形式
maxX−12tr[D(−BXT−XBT+XCXT)]
其中 D,C 为对称且可逆矩阵。同理
−12(−DB−DTB+DTXCT+DXC)=0DB−DXC=0⇒X∗=BC−1
1875



被折叠的 条评论
为什么被折叠?



