Ad *_*dum 7 python algorithm opencv image-processing matching
我有一个关于Active Shape Models的问题.我正在使用T. Coots的论文(可以在这里找到.)
我已经完成了所有的初始步骤(Procrustes Analysis计算平均形状,PCA以减小尺寸),但我仍坚持使用.
这是我在现在的情况:我已经计算出平均形状点X和也计算了一组新的点Ÿ是X应该搬到,以更好地满足我的形象.
我使用以下算法,可以在之前链接的论文的第23页找到:

澄清:
是用Procrustes分析计算的平均形状,和
是包含用PCA计算的特征向量的矩阵.
一切顺利到第4步.我可以计算姿势参数并将变换反转到点Y上.
然而,在第5版中,发生了一些奇怪的事情.无论姿势参数是在针3中计算并应用于针4中,针5总是导致具有非常低值的几乎完全相同的矢量y'(例如,其中一个是1.17747114e-05).(所以我是否计算了1/10或1000的比例,y'几乎没有变化).
这导致算法总是收敛到相同的b值,因此在相同的输出形状x中,无论目标点Y的输入集是什么,我希望模型点X匹配.
这肯定不是算法的目标......任何人都可以解释这种奇怪的行为吗?不知何故,将我在步骤5中计算出的矢量y投影到"切平面"中并未考虑步骤4中所做的任何更改.
编辑:我有更多的推理,虽然没有解释或解决方案.如果在步骤5中,我手动将y'设置为仅由零组成,则在步骤6中,b等于与均值形状相乘的特征向量矩阵.这导致了我总是得到的相同的b(因为y'总是一个具有非常低值的向量).
但是这些特征向量是通过使用PCA的均值来计算出来的...那么预期的是,不应该发生变化,对吧?