B-样条基函数:重要性质

B-spline Basis Functions:Important Properites

上一页定义                回目录                     下一页计算实例


让我们回忆B-样条基函数的定义如下:

这些基函数有如下性质,许多与贝塞尔基函数的相似。

  1. Ni,p(u) 是一个在u 上的p 次多项式
  2. 非负性 -- 对所有的 i, pu, Ni,p(u) 是非负的
  3. 局部支撑(Local Support) -- Ni,p(u) 是在[ui,ui+p+1)上的非零多项式
    这个在前面已经讨论过。
  4. 在任一区间 [ui, ui+1),最多有 p+1 个 p 次的基函数非零,即: Ni-p,p(u), Ni-p+1,p(u), Ni-p+2,p(u), ..., 和 Ni,p(u)
  5. 单位分解(Partition of Unity) -- 所有非零的 p 次基函数在区间[ui, ui+1)上的和(sum)是 1:
    上一条性质表明Ni-p,p(u), Ni-p+1,p(u), Ni-p+2,p(u), ..., 和 Ni,p(u) 在[ui, ui+1)上非零这条性质说明这些 p+1 个基函数的累加和1.
  6. 如果节点数是 m+1, 基函数的次数是 p, 而p 次基函数的数目是n+1,,那么m = n + p + 1 :
    这不难理解。 设 Nn,p(u) 是最后一个p 次基函数。它在 [un, un+p+1)上非零因为它是最后一个基函数, un+p+1 肯定是最后一个节点um。因此,我们有 un+p+1 = umn + p + 1 = m. 总之,给定 mp, 设 n = m - p - 1 则 p 次基函数是N0,p(u), N1,p(u), N2,p(u), ..., 和 Nn,p(u).
  7. 基函数 Ni,p(u) 是p 次多项式的复合曲线,连接点在[ui, ui+p+1 ) 上的节点处。
    上一页的例子很好地说明了这个性质。例如  N0,2(u), 其在 [0,3)上非零,是由定义在[0,1), [1,2) 和 [2,3)上的三个抛物线构建而成。它们在节点2 和3处连接在一起。.
  8. 在一个有重复度k的节点处,基函数 Ni,p(u) 是 Cp-k 连续的。 
    因此,增加重复度减小连续性的层次(level),增加次数增加连续性。上述2次基函数 N0,2(u)在节点2 和 3处是 C1连续的,因为它们是简单节点。

多重节点的影响

多重节点对基函数的计算和一些“计算”性质有很重要的影响 。我们会看到其中两个,在下一页会有一个计算实例。

  1. 每个重复度 k 的节点减小最多k-1 基函数的非零定义域。
    考虑 Ni,p(u) 和 Ni+1,p(u). 前者在[ui, ui+p+1)上非零而后者在[ui+1, ui+p+2)上非零如果我们移动 ui+p+2ui+p+1 以至于它们变为一个双重节点。那么, Ni,p(u) 仍然在 p+1节点区间上非零;但是,Ni+1,p(u) 非零的节点区间数目减小了一个因为区间[ui+p+1,ui+p+2) 消失了。

这个观察很容易推广。实际上,忽略节点区间端点变化, 为了创建一个重复度k的节点,会影响 k-1个基函数。 One of them loses one knot span, a second of them loses two, a third of them loses three and so on. (译注:这句没看懂)

下图显示了5次基函数,其左端点节点和右端点节点有重复度6,而它们之间的所有节点数简单的(图(a))。图(b)是移动 u5u6的结果。那些在u6 结束的基函数在更少的节点区间上非零。然后u4 再然后  u3 被移动到u6, 使得 u6 是重复度4的节点(图(c)和(d))。图(e)显示移动u2u6 的结果,创建了一个重复度5的节点。

   
(a)   (b)
   
(c)   (d)
(e)
  1. 在每个重复度k的内部节点,非零基函数的数目最多p - k + 1, 其中 p 是基函数的次数。 
    因为移动 ui-1ui 会导致一个在ui-1 结束非零的基函数移到ui结束非零,这样使得在 ui 上非零基函数的数目减小了一个。更准确地,ui的重复度增加1会使得非零基函数的数目减小1.  因为在ui 上最多有p+1 个基函数非零,那么在一个重复度k 的节点上最多有 (p + 1) - k = p - k + 1个非零基函数。.

在上述图中,因为节点u6 的重复度是1 (简单), 2, 3, 4 和 5, 在 u6 上的非零基函数数目是5, 4, 3, 2 和1.

上一页定义                回目录                     下一页计算实例

译注:

    • 本文翻译是“B-样条曲线(B-spline Curves)教程”中的一部分,其余翻译部分见“B-样条曲线(B-spline Curves)教程目录”。
    • “B-样条曲线(B-spline Curves)教程”是翻译自C.-K. Shene博士的CS3621 Introduction to Computing with Geometry Notes的第6部分“B-spline Curves”。
    • 本文原文地址:B-spline Basis Functions: Important Properties    。
    • 本文首发“博士数学家园 ”

B-样条基函数:重要性质相关推荐

  1. B样条基函数:2.B样条基函数的定义和性质

    有很多办法可以用来定义B样条基函数以及证明它的一些重要性质.例如,可以采用截尾幂函数的差商定义,开花定义,以及由德布尔.考克斯和曼斯菲尔德等人提出的递推公式等来定义.这里采用递推定义方法,因为这种方法 ...

  2. B-spline Curves 学习之B样条基函数的定义与性质(2)

    转自:http://www.cnblogs.com/icmzn/p/5100761.html B-spline Basis Functions:Definition 贝塞尔基函数用作权重.B-样条基函 ...

  3. Bernstein基函数及其性质 matlab实现

    Bernstein基函数及其基本性质 matlab实现 一.Bernstein基函数 Bernstein基函数可以作为多项式空间的一组基底,n次Bernstein基函数 B i n ( t ) B^n ...

  4. B样条基函数的定义及系数的意义

    原文链接:http://blog.csdn.net/tuqu/article/details/5177405 贝塞尔基函数用作权重.B-样条基函数也一样:但更复杂.但是它有两条贝塞尔基函数所没有的特性 ...

  5. 用gismo中B样条基函数替代自己写的基函数

    文章目录 前言 一.需要添加[gismo库](https://blog.csdn.net/mw_1422102031/article/details/128966345?spm=1001.2014.3 ...

  6. B样条基函数:1.引言

    仅由一段多项式或有理多项式曲线段组成的曲线往往还不能满足实际应用的要求,它们如下缺点: 当需要满足的约束条件很多时,需要使用高次曲线.例如,为了使Bezier曲线通过 n n n个数据点,需要采用 n ...

  7. 【Matlab】三次B样条基函数插值求解泛函极值问题

    --------------------------------------------------------------------------------------------- 前言:博主是 ...

  8. 多项式曲线——搞清楚贝塞尔曲线、B样条曲线、Nurbs曲线的区别

    多项式曲线--搞清楚贝塞尔曲线.B样条曲线.nurbs曲线的区别 贝塞尔曲线 Bezier曲线定义 Bernstein基函数的性质 Bezier曲线的性质 B样条曲线 B样条曲线定义 B样条基函数的性 ...

  9. 计算机图形学 第五章 曲线与曲面(下)

    5.3 B 样条曲线与曲面 B 样条曲线方程的定义 Bezier曲线的不足:阶次较大时特征多边形对曲线的控制将会减弱:没有局部性.不能做局部修改:拼接较复杂 B 样条曲线方程: P ( t ) = ∑ ...

  10. 样条曲线(下)之插值问题(贝塞尔曲线、B样条和一般样条曲线插值)

    贝塞尔曲线插值与B样条插值 前言: 这篇是"样条曲线"的接续,前面主要集中在了理论部分,这篇文章主要内容是贝塞尔曲线与B样条是如何应用到插值中的. 前篇:样条曲线 文章目录 贝塞尔 ...

最新文章

  1. geoip2 php,Geoip geoip-api-php 库包使用 – 通过ip 找到国家
  2. Thinking in work
  3. 前端学习(3141):react-hello-react之forceUpdate流程
  4. H3C 模拟器 pc与sw直连 登录web
  5. Windows下将txt导入MySQL及远程连接设置
  6. 520这个日子就应该用程序员最浪漫的表白方式
  7. 【转】MP3文件原理及结构解析
  8. 基于Arduino的蓝牙电子秤
  9. 使用python进行数据抽样
  10. FDA“长寿药”NMN被爆几毛一克,富豪被收天价智商税?
  11. 如何在YouTube上制作播放列表
  12. 软件工程:PG.SE.PL.PM角色定义
  13. 小宝挪车自研第二代挪车通知技术,保护隐私无死角!
  14. R语言使用gbm包的gbm函数拟合梯度提升机回归模型:使用predict函数和训练好的模型进行预测推理、计算回归模型的评估指标MAE、MSE、RMSE、R方等指标
  15. selenium模拟登录某宝
  16. 图像处理:实现图片镜像(基于python)
  17. js excel 在线插件 合并单元格 设置单元格样式 编辑工具
  18. 突然远程桌面连接不上
  19. Mybatis缓存探索,查询集合后修改内容,再次执行sql查询结果发现是被修改过的
  20. 计算机领域 世界级难题,“电脑垃圾”——一个世界性新难题阅读答案

热门文章

  1. Keil5安装和使用小记
  2. elasticsearch springboot 实现分词搜索
  3. ajax调用ashx页面内的方法
  4. Qt之QVector基本用法
  5. python 字典的学习
  6. vs2019生成dll文件及(C#)使用
  7. JS中生成与解析JSON
  8. 致程序员之家论坛的所有会员
  9. Controller层各注解总结
  10. FIDO2.0 认证注册流程