Vellum —— SOP|Vellum Constraints

目录

约束类型

Distance Along Edges —— stretch(distance)

Bend Across Triangles —— bend(bend)

Cloth —— stretch(distance)、bend(bend)

Hair —— stretch(stretchshear)、bend(bendtwist)

String —— stretch(distance)、bend(angle)

Pin to Target —— stretch(pin)、bend(pinorient)

Attach to Geometry —— stretch(attach)

Stitch —— stretch(stitch/ptprim)

Weld Points—— point(weld)、bend(bend)

Glue —— stretch(stitch)

Pressure —— stretch(pressure)

Struts —— stretch(distance)

Tetrahedral Volume —— stretch(tetvolume)

Tetrahedral Stretch —— stretch(tetarap)

Tetrahedral Fiber —— stretch(tetfiber)

Triangle Stretch —— stretch(triarap)

Shape Match —— stretch(shapematch)


从输入的几何体上,创建约束;

        所有材质类型(如布料、毛发、柔体等),都可被描述为一组点间的显式约束;Geometry、Constraint Geometry是一对一对应的关系;此节点可生成几乎所有的约束类型,提供了常见的约束类型预设;

        四面体tetrahedral约束类型(tetrahedral stretch/volume/fiber),现在不受mesh的密度、质量、大小等其他参数的变化影响,如改变scale,无需调整参数,即可获得几乎相同的结果;

约束类型

Distance Along Edges —— stretch(distance)

  • 将每条边转化为距离约束distance,以维持长度;

Geometry

  • mass、pscale、v

Constraint Geometry

  • dampingratio、stiffness、type
  • restlength、restlengthorig
  • compressstiffness、stiffnessdropoff/stiffnessdropoffmin
  • plasticthreshold、plasticrate、plastichardening

Bend Across Triangles —— bend(bend)

  • 为每对三角形创建弯曲约束bend,以维持角度;

Geometry

  • mass、pscale、v

Constraint Geometry

  • dampingratio、stiffness、type
  • restlength、restlengthorig
  • stiffnessdropoff/stiffnessdropoffmin
  • plasticthreshold、plasticrate、plastichardening

Cloth —— stretch(distance)、bend(bend)

  • 创建距离约束distance/triarap,弯曲约束bend;
  • soft pin时,创建约束pin;

Geometry

  • mass、pscale、v、layer
  • dragnormal、dragtangent
  • stopped、gluetoanimation

Constraint Geometry

  • dampingratio、stiffness、type
  • restlength、restlengthorig,restvector、matchanimation
  • compressstiffness、stiffnessdropoff/stiffnessdropoffmin
  • plasticthreshold、plasticrate、plastichardening

Hair —— stretch(stretchshear)、bend(bendtwist)

  • 创建距离约束stretchshear,弯曲约束bendtwist(包括边的扭曲);
  • soft pin时,创建约束pin、pinorient;
  • 可breaking,一个primitive是不可断开的,应是多个prim的连接(连接点应fuse);

Geometry

  • mass、pscale、v
  • dragnormal、dragtangent
  • w、orient、inertia
  • stopped、pintoanimation/gluetoanimation
  • branchweld、breakthreshold、breaktype

Constraint Geometry

  • dampingratio、stiffness、type
  • restlength、restlengthorig,restvector、matchanimation
  • stiffnessdropoff/stiffnessdropoffmin
  • plasticthreshold、plasticrate、plastichardening

注,卷曲的线,直接增加子步或迭代,对刚性的效果还是有限,可额外添加shape match约束来保持形状;

String —— stretch(distance)、bend(angle)

  • 创建距离约束distance,弯曲约束angle,无扭曲约束边可自由旋转,是轻量级的hair约束;
  • soft pin时,创建约束pin;

Geometry

  • mass、pscale、v
  • dragnormal、dragtangent
  • stopped、gluetoanimation

Constraint Geometry

  • dampingratio、stiffness、type
  • restlength、restlengthorig,restvector、matchanimation
  • compressstiffness、stiffnessdropoff/stiffnessdropoffmin
  • plasticthreshold、plasticrate、plastichardening

Pin to Target —— stretch(pin)、bend(pinorient)

  • 固定指定的点到目标对应点,可在解算器内指定目标(固定到vellum本身动画上);
  • 创建约束pin、pinorient;
  • 对于hair,stopped的值可能是1或3;
  • 可breaking;

Geometry

  • mass、pscale、v
  • stopped、pintoanimation/gluetoanimation

Constraint Geometry

  • dampingratio、stiffness、type
  • restlength、restlengthorig,restvector、matchanimation
  • compressstiffness、stiffnessdropoff/stiffnessdropoffmin
  • plasticthreshold、plasticrate、plastichardening

  • breakthreshold、breaktype

注,设置stoppe为0时,pintoanimation/gluetoanimation属性也要相应设置;

Attach to Geometry —— stretch(attach)

  • 附着指定的点到几何体,创建距离约束attach、attachnormal(固定到碰撞体动画上);
  • 可breaking;

Geometry

  • mass、pscale、v

Constraint Geometry

  • dampingratio、stiffness、type
  • restlength、restlengthorig、restvector
  • target_path、target_pt、target_prim/target_uv,restdir,target_group,slidingrate,velblend
  • compressstiffness、stiffnessdropoff/stiffnessdropoffmin
  • plasticthreshold、plasticrate、plastichardening

  • breakthreshold、breaktype

Stitch —— stretch(stitch/ptprim)

  • 缝合点,创建距离约束stitch/ptprim(vellum自身间的连接约束);
  • 可breaking;

Geometry

  • mass、pscale、v

Constraint Geometry

  • dampingratio、stiffness、type
  • restlength、restlengthorig、restvector
  • target_group、slidingrate
  • compressstiffness、stiffnessdropoff/stiffnessdropoffmin
  • plasticthreshold、plasticrate、plastichardening

  • breakthreshold、breaktype

Weld Points—— point(weld)、bend(bend)

  • 焊接点,本身不是约束,使用weld属性使接缝点逻辑上视为一个点;另外,还会创建弯曲约束bend(vellum自身间的焊接约束);
  • 可breaking;

Geometry

  • mass、pscale、v,weld
  • breakthreshold、breaktype

Constraint Geometry

  • dampingratio、stiffness、type
  • restlength、restlengthorig
  • stiffnessdropoff/stiffnessdropoffmin
  • plasticthreshold、plasticrate、plastichardening

Glue —— stretch(stitch)

  • 搜索周围自身不同pieces间的点,将构建距离约束stitch,以保持在该点粘连(vellum自身不同pieces间的连接约束);
  • 可breaking;

Geometry

  • mass、pscale、v

Constraint Geometry

  • dampingratio、stiffness、type
  • restlength、restlengthorig
  • compressstiffness、stiffnessdropoff/stiffnessdropoffmin
  • plasticthreshold、plasticrate、plastichardening

  • breakthreshold、breaktype


Pressure —— stretch(pressure)

  • 创建约束pressure,以维持体积,像气球一样挤压一边另一边就会膨胀;
  • 点属性pressurescale可缩放此约束效果,谨慎使用于充气效果(可能会导致不平衡);
  • 可breaking;
  • 解释器会创建点属性pressuregradient(通常接近法线);

Geometry

  • mass、pscale、v、volume

Constraint Geometry

  • dampingratio、stiffness、type
  • restlength、restlengthorig、restvector
  • compressstiffness、stiffnessdropoff/stiffnessdropoffmin
  • plasticthreshold、plasticrate、plastichardening

  • breakthreshold、breaktype

Struts —— stretch(distance)

  • 每个点搜索自身一定直线距离的点,构建距离约束distance,类似内部支柱;
  • 受压缩后,另一侧不会膨胀,无法保持总体积;

Geometry

  • mass、pscale、v

Constraint Geometry

  • dampingratio、stiffness、type
  • restlength、restlengthorig
  • compressstiffness、stiffnessdropoff/stiffnessdropoffmin
  • plasticthreshold、plasticrate、plastichardening

Tetrahedral Volume —— stretch(tetvolume)

  • 将每个四面体转化为约束tetvolume,以维持四面体的体积
  • 不包含任何的shear、stretch约束,需添加额外的距离约束(如Distance Along Edges)以构建合适的柔体;

Geometry

  • mass、pscale、v

Constraint Geometry

  • dampingratio、stiffness、type
  • restlength、restlengthorig
  • compressstiffness、stiffnessdropoff/stiffnessdropoffmin
  • plasticthreshold、plasticrate、plastichardening

Tetrahedral Stretch —— stretch(tetarap)

  • 将每个四面体转化为约束,以维持四面体的ARAP(根据指定的刚性移除任何的拉伸或倾斜);
  • 如preserve volume,约束还会保持体积;类似于添加了tetrahedral volume约束;
  • 增加四面体的数量或密度,可提升整体效果;在tet conform节点后绘制属性;
  • 约束tetarapnl/tetarap/tetarapnorm、tetarapnlvol/tetarapvol/tetarapnormvol;

Non-Linear ARAP:适合低刚性,高拉伸;

Linear ARAP:对高刚性,低拉伸更好;

Scale-Invariant ARAP:考虑三角形面积或四面体体积,通常是大多数材质的最佳选择如有机组织皮肤和肌肉;

Geometry

  • mass、pscale、v

Constraint Geometry

  • dampingratio、stiffness、type
  • restlength、restlengthorig、restmatrix、restvector
  • compressstiffness
  • plasticthreshold、plasticrate、plastichardening

Tetrahedral Fiber —— stretch(tetfiber)

  • 将每个四面体转化为约束,沿materialW点属性指定的方向展开(如无此属性则为{0,0,1});
  • 约束tetfiber/tetfibernorm;

Non-Linear ARAP:适合低刚性,高拉伸;

Linear ARAP:对高刚性,低拉伸更好;

Scale-Invariant ARAP:考虑三角形面积或四面体体积,通常是大多数材质的最佳选择如有机组织皮肤和肌肉;

Geometry

  • mass、pscale、v

Constraint Geometry

  • dampingratio、stiffness、type
  • restlength、restlengthorig、restvector

Triangle Stretch —— stretch(triarap)

  • 将每个三角形转化为约束,以维持四面体的ARAP(根据指定的刚性移除任何的拉伸或倾斜);
  • 约束triarapnl/triarap/triarapnorm;

Non-Linear ARAP:适合低刚性,高拉伸;

Linear ARAP:对高刚性,低拉伸更好;

Scale-Invariant ARAP:考虑三角形面积或四面体体积,通常是大多数材质的最佳选择如有机组织皮肤和肌肉;

Geometry

  • mass、pscale、v

Constraint Geometry

  • dampingratio、stiffness、type
  • restlength、restlengthorig、restvector
  • compressstiffness
  • plasticthreshold、plasticrate、plastichardening

Shape Match —— stretch(shapematch)

  • 创建可以将点拉回原始形态的约束shapematch,可用于在现有的约束(如cloth)之上添加刚度,或单独创建与其他vellum对象交互的刚性对象,如纽扣;
  • 此约束最好与Mass设置为calculate uniform,及一致的尺寸大小(remesh)一起使用;
  • 有效的工作流是使用vellum transform pieces节点变换原始模型,还可避免任何小的变形(如在碰撞点或pin处约束失败);
  • Vellum Configure Grain Pieces配置会使用到此节点,创建类似刚体的效果;

Geometry

  • mass、pscale、v

Constraint Geometry

  • rest(point)
  • dampingratio、stiffness、type
  • restlength、restlengthorig、restvector
  • plasticthreshold、plasticrate、plastichardening

注,与其他对象碰撞变形;

在本章中,我们将深入探讨基于块匹配的全景图像拼接技术,这是一种广泛应用于计算机视觉和图像处理领域的技术。在深度学习和机器学习的背景下,这种方法的实现与整合显得尤为重要,因为它们能够提升图像处理的效率和精度。下面,我们将会详细阐述相关知识点。 我们要了解什么是全景图像拼接。全景图像拼接是一种将多张有限视角的图像合并成一个宽视角或全方位视角图像的技术,常用于虚拟现实、地图制作、监控系统等领域。通过拼接,我们可以获得更广阔的视野,捕捉到单个图像无法覆盖的细节。 块匹配是全景图像拼接中的核心步骤,其目的是寻找两张图片中对应区域的最佳匹配。它通常包括以下几个关键过程: 1. **图像预处理**:图像的预处理包括灰度化、直方图均衡化、降噪等操作,以提高图像质量,使匹配更加准确。 2. **特征提取**:在每张图像上选择特定区域(块)并计算其特征,如灰度共生矩阵、SIFT(尺度不变特征变换)、SURF(加速稳健特征)等,这些特征应具备旋转、缩放和光照不变性。 3. **块匹配**:对于每一张图像的每个块,计算与另一张图像所有块之间的相似度,如欧氏距离、归一化互信息等。找到最相似的块作为匹配对。 4. **几何变换估计**:根据匹配对确定对应的几何关系,例如仿射变换、透视变换等,以描述两张图像之间的相对位置。 5. **图像融合**:利用估计的几何变换,对图像进行融合,消除重叠区域的不一致性和缝隙,生成全景图像。 在MATLAB环境中实现这一过程,可以利用其强大的图像处理工具箱,包括图像读取、处理、特征检测和匹配、几何变换等功能。此外,MATLAB还支持编程和脚本,方便算法的调试和优化。 深度学习和机器学习在此处的角色主要是改进匹配过程和图像融合。例如,通过训练神经网络模型,可以学习到更具鲁棒性的特征表示,增强匹配的准确性。同时,深度学习方法也可以用于像素级别的图像融合,减少拼接的失真和不连续性。 在实际应用中,我们需要注意一些挑战,比如光照变化、遮挡、动态物体等,这些因素可能会影响匹配效果。因此,往往需要结合其他辅助技术,如多视图几何、稀疏重建等,来提高拼接的稳定性和质量。 基于块匹配的全景图像拼接是通过匹配和融合多张图像来创建全景视图的过程。在MATLAB中实现这一技术,可以结合深度学习和机器学习的先进方法,提升匹配精度和图像融合质量。通过对压缩包中的代码和数据进行学习,你可以更深入地理解这一技术,并应用于实际项目中。
基于Python+OpenCV的全景图像拼接系统设计与实现 本系统的设计与实现基于Python和OpenCV,旨在提供一个高效、准确的全景图像拼接系统。系统的前台界面使用了最新的HTML5技术,使用DIV+CSS进行布局,使整个前台页面变得更美观,极大的提高了用户的体验。后端的代码技术选择的是PYTHON,PYTHON语言是当下最常用的编程语言之一,可以保证系统的稳定性和流畅性,PYTHON可以灵活的与数据库进行连接。 系统的数据使用的MYSQL数据库,它可以提高查询的速度,增强系统数据存储的稳定性和安全性。同时,本系统的图像拼接技术以OpenCV为核心,最大化提升图片拼接的质量。 本系统的设计与实现可以分为以下几个部分: 一、系统架构设计 本系统的架构设计主要基于Python和OpenCV,使用MYSQL数据库存储数据。系统的前台界面使用HTML5技术,后端使用PYTHON语言连接MYSQL数据库,实现图像拼接功能。 二、图像拼接算法 本系统使用OpenCV库实现图像拼接,OpenCV库提供了丰富的图像处理功能,可以实现图像拼接、图像识别、图像处理等功能。通过OpenCV库,可以实现高效、准确的图像拼接。 三、系统实现 本系统的实现主要基于Python和OpenCV,使用MYSQL数据库存储数据。系统的前台界面使用HTML5技术,后端使用PYTHON语言连接MYSQL数据库,实现图像拼接功能。同时,本系统还实现了用户认证、数据加密、数据备份等功能,以确保系统的安全和稳定性。 四、系统优点 本系统的优点有: * 高效:本系统使用OpenCV库实现图像拼接,可以实现高效的图像拼接。 * 准确:本系统使用OpenCV库实现图像拼接,可以实现准确的图像拼接。 * 安全:本系统实现了用户认证、数据加密、数据备份等功能,以确保系统的安全和稳定性。 * 灵活:本系统使用PYTHON语言,可以灵活的与数据库进行连接,实现灵活的图像拼接功能。 本系统的设计与实现可以提供一个高效、准确的全景图像拼接系统,为用户提供了一个方便、快捷的图像拼接体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值