计算机视觉之统计形状模型——Active Shape Model

ASM是一种可变形状模型,用于图像分析和形状生成。通过对形状进行对齐、PCA降维和建模,可以拟合新形状并搜索图像中的形状。本文详细介绍了ASM的对齐算法、PCA、形状变化建模和图像搜索过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ASM(Active Shape Model)由Cootes于1995年在论文[1]中提出。

ASM是对图像中的shape进行建模的可变模型(deformable model),得到的形状模型既可以用来分析新的形状(拟合模型到新形状,见第4节),也可以用于生成形状(在给定图像中搜索形状,见第5节)。

首先需要给出shape的定义。给定一幅图片,对感兴趣物体标注landmark points,以人脸为例,就是选择人脸上的关键点,如下图所示:
这里写图片描述

得到点集合 { (x1,y1),(x2,y2),,(xn,yn)} ,那么这些点在图片中对应的shape就可以表示成 2n 维的向量 x⃗ 

x⃗ =(x1,y1,x2,y2,,xn,yn)T

可以看出每个shape都是 R2n 空间中的一个点。并且我们规定对一个形状进行相似变换(Similarity transformation),即旋转R、缩放S、平移T(RST),并不会改变该形状。当然也可以定义形状在其他变换操作下是不变的。

假设现在有 N 个已经标注了landmark点的训练数据,也就是说有了 N 个形状 { x⃗ 1,x⃗ 2,,x⃗ N}

1、对齐

为了能比较不同shapes,需要将shapes对齐。这是因为不同的形状大小角度等都可能不同,比如一个人脸特写与一张全身照中的人脸,显然,这两个人脸对应的形状是没有可比性的。
ASM中的对齐算法是基于Procrustes Analysis的。Procrustes Analysis在对齐形状时以最小化对齐后的形状和平均形状之间的距离之和为目的:

D=i|x⃗ ix⃗ ¯|2.(1)

这个优化目标有意思,首先式中的 x⃗ i 是对齐后的第i个形状, x⃗ ¯ 是对齐后的形状的均值。第一项是未知的,而第二项又取决于第一项。假设 x⃗ i=T(Θi;x⃗ i) ,这个函数姑且称为对齐函数吧。那么每个形状都对应一个参数 Θi ,上述优化问题就是求使D最小的 Θ={ Θi,i=1,,N}

Θ=argminΘD=argminΘi|T(Θi;x⃗ i)1NjT(Θj;x⃗ j)|2(2)

这个优化问题有解析解,但是一般采用下面的迭代算法进行对齐:


  1. 平移每个形状使其重心位于原点
  2. 选择第一个形状 x⃗ 1 ,对齐进行缩放 x⃗ 1 以使 |x⃗ |=1 ,以缩放后的形状作为初始平均形状 x⃗ 0¯
  3. 对齐所有形状到平均形状
  4. 计算对齐后的所有形状的平均形状 x⃗ ¯
  5. x⃗ ¯ 进行约束:让 x⃗ ¯ 对齐 x⃗ 0¯ 并且缩放到 |x⃗ ¯|=1
  6. 如果不收敛,返回到(3)

说明:步骤(5)对平均形状进行约束,是为了确保有唯一解(如果不进行约束的话,平均形状可能变得非常离谱)。另外判断是否收敛是看平均形状的变化是否超过某一幅度。

1.1、对齐操作

步骤(3)中的对齐操作可以有多种方式。比如可以移动每个形状使其以原点为中心,缩放使其模为1,旋转使得D最小,这种方式下D的参数只有旋转角度。

文献[1]中介绍的方法是对每个形状进行相似变换 Ts,θ,tx,ty(x⃗ ) 以对齐均值。假设两个形状 x⃗ 1 x⃗ 2 ,这两个形状以原点为中心,现在 x⃗ 1 处理做相似变换使其对齐 x⃗ 2 ,相似变换的参数通过最小化

E=|Ts,θ,tx,ty
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值