南京动画设计中样本纹理检测四个步骤
8. 15 样本纹理的分割 基元检测的目的是为了精确地定位基元在样本纹理中的位置。通过采用基于仿射变形模型的方法 检测样本纹理的每一个基元,从而确定每一个基元在样本纹理中的位置。此外,根据基元的颜色、大 小和形状的差异对所有已检测的基元分类。
给定一个样本纹理,在进行初始化即转换彩色的样本纹理 成灰度图纹后,基元检测的步骤如下:
步骤一:构建一个基元子集,其中每一个元素代表一类基元。该元素是某一类基元中具有显著特 征的一个基元,由用户用包围该基元的最小矩形框标记出来,并记录该矩形框的大小。
步骤二:构建候选基元集。将样本纹理按照一定大小的窗口划分成多个子块,根据公式(8.20)计 算每个子块的二阶矩:式中,vJ为梯度向量,M和:V表示窗口的大小。 二阶矩反映空间亮度的变化,为了检测出所有可能的基元,通过计算二阶矩∑w的特征值k:和走 :从而进-步量化空间亮度的变化。如果子块的能量变化率=足,/k。满足如下条件,则该子块是 候选的基元: 表示样本纹理的窗口,它的左上角点坐标为 是用户定义的阈值,不同的样本纹理具有不同的阈值。通常情况下,j—取fti范闹为D.5「。直到计 算了所有子块的二阶矩,步骤二结束。瓣。 *flash动画创作与后期视频处理技术*
步骤三:通过检测所有候选基元定位样本纹理的真实基元。采用仿射变换估计测量空间相邻两基 元之间的相似度£,真真真lQ当它们之间的相似度不超过用户定义的阈值r,两基元是相似的。给定两 个子块尸(-z.,)和P(.z、:),相似度由如下公式计算得到:式中&是两子块P(工,)和尸(J:)之间的变 化误差;8i是两子块尸(.r:)和尸(J:)之间的灰度差异。阈值r的取值范围定义为[o,1]。该步骤的 输出是子块集合对应样本纹理的各个真实基元。子块的中心就是基元在样本纹理中的位置。
步骤四:分类所有已检测的基元。将每一基元与已构建的基元子集中的各基元逐一地计算灰度、 大小以及形状的差异,确定基元子集中与当前所选基元具有最小差异的基元,其类别即为基元子集中 该基元的类别。
转载请注明:
南京flash动画制作公司:http://www.flash520.com/city7/