表达与识别
背景内容
- 运动表达
- 刻画运动前景的运动模式
- 运动分析中的中间步骤,行为理解等高层部分的基础
- 人的行为分析
- 对视频序列中出现的运动中的人进行检测、跟踪,识别其行为并对其行为进行理解与描述
- 应用:智能视觉监控、人机交互、增强现实
运动表达
表达方式
运动轨迹
- 通过物体跟踪,可以得到物体特征点的轨迹
- 关键:正确表述物体运动状态(特征点选取、轨迹的描述)
- 特征点集合的轨迹描述
- 直接按照时间顺序连接相邻帧之间的特征点
- 将特征点集合拟合成不同的多项式曲线
- 其他方法(主曲线等)
- 主曲线:一条空间曲线,从数据的中部光滑地通过,且不限制于对数据的光滑线性平均,甚至不限制于数据的中部是直线,只使得数据点集合到该曲线的正交距离最小
- 应用
- 交通监控,表述车辆、行人行动路线
- 动作、手势识别,表述运动物体或肢体局部的简单运动
- 人机接口
- Cons
- 只能粗略地表述物体全局的运动信息
- 无法描述运动细节
- 没有有效体现时间信息
时空图表达
- 将图像序列的前景运动信息和时间信息用一张图表述出来
- 运动能量图MEI
- 运动历史图MHI
- 其他运动图
- 运动能量图
- 前提:帧间差分得到前景的二值图像
- 将视频序列中所有帧的前景二值化图像求并集
- 记 D ( x , y , t ) D(x, y, t) D(x,y,t)为第 t t t帧与第 t − 1 t - 1 t−1帧差分得到的二值化前景,则运动能量图为 E τ ( x , y , t ) = ⋃ i = 0 τ − 1 D ( x , y , t − i ) E_{\tau}(x, y, t) = \bigcup_{i = 0}^{\tau - 1} D(x, y, t - i) Eτ(x,y,t)=⋃i=0τ−1D(x,y,t−i),其中 τ \tau τ为一个动作的运动时间
- 问题:没有明显的运动时间行进方向
- 运动历史图
- 前提:帧间差分得到前景的二值图像
- 记 D ( x , y , t ) D(x, y, t) D(x,y,t)为第 t t t帧与第 t − 1 t - 1 t−1帧差分得到的二值化前景,则运动历史图为 H τ ( x , y , t ) = { τ D ( x , y , t ) = 1 max ( 0 , H τ ( x , y , t − 1 ) − 1 ) o t h e r w i s e H_{\tau}(x, y, t) = \begin{cases}\tau & D(x, y, t) = 1 \\ \max(0, H_{\tau}(x, y, t - 1) - 1) & otherwise\end{cases} Hτ(x,y,t)={τmax(0,Hτ(x,y,t−1)−1)D(x,y,t)=1otherwise,其中 τ \tau τ为一个动作的运动时间
- 动作时序越接近当前帧,对应像素值越大
- 应用
- 行为、动作、手势识别
- 人机接口
- Pros
- 较好地包含了全局运动、形状、时间信息
- Cons
- 缺少局部运动信息,不能有效区分局部变化的动作
- 不能有效区分速度的变化
总结
- 选择运动表述的原则:具体场景具体分析
- 有效的运动表述应具备的特征
- 局部运动信息
- 全局运动信息
- 时间信息
- 形状信息
- ……
基于DNN的物体表达
- 图像分类(卷积层)
- 人脸表达(倒数第二层向量)
稀疏、低秩表达
稀疏表达
- 稀疏表达问题:给定 x ∈ R m x \in R^m x∈Rm, D = [ d 1 , … , d n ] ∈ R m × n ( m ≤ n ) D = [d_1, \dots, d_n] \in R^{m \times n} (m \le n) D=[d1,…,dn]∈Rm×n(m≤n),求解 x = D α x = D \alpha x=Dα
- α \alpha α是一种稀疏表达,非零元素个数尽可能少,大多数信息来自于少部分元素的线性组合
- 数学表达:向量的0-范数(非零元素的个数)尽可能少
- min α ∥ α ∥ 0 \min_\alpha \|\alpha\|_0 minα∥α∥0
- s.t. x = D α \text{s.t.} \ x = D \alpha s.t. x=Dα
- 求解:在RIP条件下,其问题的解等于对应1-范数问题的解
- min α ∥ α ∥ 1 \min_\alpha \|\alpha\|_1 minα∥α∥1
- s.t. x = D α \text{s.t.} \ x = D \alpha s.t. x=Dα
- 算法: min α ∥ x − D α ∥ 2 2 + λ ∥ α ∥ 1 + r e g u l a r i z e r \min_\alpha \|x - D \alpha\|_2^2 + \lambda \|\alpha\|_1 + regularizer minα∥x−Dα∥22+λ∥α∥1+regularizer
- 应用:人脸识别
- 假设测试样本可以由训练样本表示
- 给定训练样本,构建人脸的稀疏表达
- 利用稀疏表达,由针对训练样本的最小重建损失确定标签
低秩表达
- 数学形式:表达矩阵的秩尽可能小
- min α ∥ α ∥ r a n k \min_\alpha \|\alpha\|_{rank} minα∥α∥rank
- s.t. X = D α \text{s.t.} \ \bold X = D \alpha s.t. X=Dα
- 核范数(奇异值之和)简化
- min α ∥ α ∥ ∗ \min_\alpha \|\alpha\|_\ast minα∥α∥∗
- s.t. X = D α \text{s.t.} \ \bold X = D \alpha s.t. X=Dα
- 进一步简化,直接由样本得到
- min α ∥ α ∥ ∗ \min_\alpha \|\alpha\|_\ast minα∥α∥∗
- s.t. X = X α \text{s.t.} \ \bold X = \bold X \alpha s.t. X=Xα
- 优化细节(增量拉格朗日乘子方法)P45
行为识别
- 人的行为分析难点
- 行为多样性(个体行为和交互行为)
- 遮挡情况复杂
- 衣物、阴影、光照变化等因素
- 人运动特殊性
- 运动类型(刚体 vs. 非刚体)
- 人的运动属于非刚体运动的一个子类——Articulated Motion(各部分刚体,整体非刚体)
- 行为识别——匹配时空数据
- 看作时变特征数据的分类问题
- 将待识别行为序列(测试序列)与预先标记好的代表典型行为参考序列进行匹配
- 必须能够处理相似运动模式在空间和时间尺度上轻微的特征变化
- 方法
- 基于模板匹配的方法
- 基于状态转移图模型的方法
基于模板匹配的方法
- 用输入图像序列提取的特征与在训练阶段预先保存好的模板进行相似性度量,选择与测试序列距离最小的已知模板的所属类别作为被测试序列的识别结果
- 方法
- Temporal Templates
- 动态时间规整DTW
- Temporal Templates
- 将图像序列目标的运动信息转化为运动能量图像和运动历史图像
- 在图像上提取基于不变矩的运动特征(具有平移、旋转和尺度不变性)
- 采用马氏距离度量测试序列和模板之间的相似性
- DTW
- 处理测试序列模式与参考序列模式的时间尺度不完全一致的情况
- 对两个向量 C C C和 Q Q Q,长度分别为 m m m和 n n n,DTW目标就是找到的一组路径 W = w 1 … w K W = w_1 \dots w_K W=w1…wK,其中 w k = ( c i , q j ) k w_k = (c_i, q_j)_k wk=(ci,qj)k,使得点对点给对应距离之和最小
- D T W ( C , Q ) = min ( 1 K ∑ k ∥ c i − q j ∥ ) DTW(C, Q) = \min (\frac 1K \sum_k \|c_i - q_j\|) DTW(C,Q)=min(K1∑k∥ci−qj∥)
- 满足条件
- 首尾对齐: w 1 = ( c 1 , q 1 ) , w k = ( c m , q n ) w_1 = (c_1, q_1), w_k = (c_m, q_n) w1=(c1,q1),wk=(cm,qn)
- 单调性: w k = ( a , b ) , w k − 1 = ( a ′ , b ′ ) , 0 ≤ a − a ′ ≤ 1 , 0 ≤ b − b ′ ≤ 1 w_k = (a, b),\ w_{k - 1} = (a^\prime, b^\prime),\ 0 \le a - a^\prime \le 1,\ 0 \le b - b^\prime \le 1 wk=(a,b), wk−1=(a′,b′), 0≤a−a′≤1, 0≤b−b′≤1
- 即使测试序列模式与参考序列模式的时间尺度不完全一致,只要时间次序约束存在,DTW就能较好地完成测试序列和参考序列之间的模式匹配
基于状态转移图模型的方法
- 定义每个静态姿势作为一个状态,状态之间通过概率联系起来
- 任何运动序列可以看作为静态姿势的不同状态之间的一次遍历过程
- 对这些遍历期间计算联合概率,其最大值被选作分类行为的标准
- 主要方法:隐马尔可夫模型及其改进
基于深度学习的行为识别
- 两个子网络,分别学习空间信息和时序信息,综合进行分类
- C3D