140 likes | 312 Views
An Algebraic Model for Parameterized Shape Editing. 支持参数化形状编辑的代数模型 Transactions on Graphics. 主要目标. 高级别形状编辑 根据输入模型获得线性约束关系 不改变原模型的结构(各部分角度、连接关系等). 主要步骤. 检测模式( patten ) 离散 patten :一组窗户 连续 patten :一面墙,楼梯的一级长条 组合 patten :楼梯,离散的长条形 代数表示 分析 patten 之间的关系,明确自由度 表示为一系列变量和线性约束
E N D
An Algebraic Model for Parameterized Shape Editing 支持参数化形状编辑的代数模型 Transactions on Graphics
主要目标 • 高级别形状编辑 • 根据输入模型获得线性约束关系 • 不改变原模型的结构(各部分角度、连接关系等)
主要步骤 • 检测模式(patten) • 离散patten:一组窗户 • 连续patten:一面墙,楼梯的一级长条 • 组合patten:楼梯,离散的长条形 • 代数表示 • 分析patten之间的关系,明确自由度 • 表示为一系列变量和线性约束 • 用定义域限制用户操作的自由度,防止生成无意义的形状 • 用户约束 • 用户进行约束,并在整个线性约束系统下编辑模型
检测patten • 随机抽样一致性算法(RANSAC) 左图:包含很多局外点的数据集 右图:RANSAC找到的直线(局外点并不影响结果)
检测patten • 定义三种基元,连接部分,多边形,多边形的边。采用top-down方式 • 先检测相连部分并移除所有属于该模式的元素 • 然后抽取多边形,聚类所有有相同法向量的相连三角片 • 最后检测多边形的边
检测patten • 离散1参数pattern • 随机选取两个基元 • 用两者中心构造直线 • 聚集靠近直线的基元 • 与第一个基元形状相近的加入集合 • 对集合采样,选取最大的连续元素
检测patten • 离散2参数pattern • 随机选取三个基元 • 用三者中心构造平面 • 聚集靠近平面的基元 • 与第一个基元形状相近的加入集合 • 对集合采样,选取最大的连续元素 由于1参数的包含2参数的,所以检测2参数的
约束分析 • 表示 • Line patch (o,l,t)原点,长度(个数),生成器,通过移动原点可以移动整个patch,改变l可以改变patch大小 • 标准化 • 大的patten经常会包含小的patten,这时选取最大的patten取代其他patten(窗) • 相连约束 • 连接距离小于阈值的patten
性能 2GHz Intel Xeon E5335processor 4GB of main memory
不足 • 只能处理平移的模式( translational patten) • 不能处理高细节的几何体