ASM: Active Shape Models--Their Training and Application


这篇论文的前半部分基本就是论文《Training Models of Shape from Sets of Examples》的全部内容,只不过多两个应用示例,后半部分在PDM模型的基础上提出了ASM模型。

对于ASM模型的介绍在博客中有详细的说明,出于时间的考虑这里仅列出我对ASM模型的部分理解,如下:

1> 在训练ASM模型时,为了确保由于CodeCogsEqn (55)的变化产生的形状与训练集中的形状类似,需要对CodeCogsEqn (55)的值进行一些限制(就是所谓的形状约束),即

CodeCogsEqn (56)

其中CodeCogsEqn (57)通常为3。如果CodeCogsEqn (58)在更新过程中CodeCogsEqn (59),则使用下式CodeCogsEqn (58)加以约束。

CodeCogsEqn (60)

2> 在训练集上为每个特征点计算局部特征,用于根据相似度量确定每个特征点的下一个位置,即确定CodeCogsEqn (61)

3> ASM的搜索策略非常重要,具体步骤如下:

      a) 对平均形状进行仿射变换得到一个初始模型

CodeCogsEqn (62)

               其中,CodeCogsEqn (63),是根据平均形状和PDM的参数CodeCogsEqn (58)计算得到的;CodeCogsEqn (71)是中心点坐标。

     b) 根据第二点中计算得到的局部特征计算出每个特征点的新位置,可得位移向量

CodeCogsEqn (64)

      c) 此时已经知道初始模型和经过仿射变换后的模型,那么就可以计算出仿射变换参数的变化量CodeCogsEqn (65)CodeCogsEqn (66)CodeCogsEqn (67)CodeCogsEqn (68)。如下:

CodeCogsEqn (69)

            代入a)中表达式后可得

CodeCogsEqn (73)

              

             同时

CodeCogsEqn (74)

        所以有

CodeCogsEqn (75)


        再者,由PDM模型可知

CodeCogsEqn (76)

        上式减去CodeCogsEqn (77)后可得

CodeCogsEqn (78)

            

CodeCogsEqn (79)

             至此,可以求出CodeCogsEqn (80)

        参数的更新顺序为CodeCogsEqn (82),所以可以对仿射变换参数和b做如下更新:

CodeCogsEqn (83)        式中CodeCogsEqn (84)CodeCogsEqn (85)CodeCogsEqn (86)CodeCogsEqn (87)是控制参数变化的权值。

        此时,一次搜索过程就结束了。根据CodeCogsEqn (77)CodeCogsEqn (62)即可计算出新的形状。

    d) 重复执行该搜索过程

    e) 当ASM模型的参数(仿射变换的参数和b)变化不是很大或迭代次数达到指定的阈值时就结束该搜索过程。



参考文献:

       1> ASM(Active Shape Model)算法介绍

       2>人脸识别之ASM模型-Active Shape Models - 'Smart Snakes'

       3> ASM(Active Shape Model)算法介绍

原文地址:https://www.cnblogs.com/Lilu-1226/p/10761583.html