关于二次曲面的拟合问题

xiaokarui1983 2008-07-03 09:31:57
我现在有这样一个问题:
有一个以网格形式表示的模型,比如说一个杯子,或者一头牛,它们的表面已经被划分成了一个个的三角形面片,然后,我在这些三角形面片上面,按照等面积原则,均匀的取了一些采样点。模型现在就是这个样子,那么,我现在需要计算这个模型的局部特征,在这里我选择的是计算模型局部的曲率。这就涉及到要把这些面片拟合成我所需要的二次曲面。

因为是去不特征,所以这里不需要使用二次曲面的标准形式:f(x,y,z)
我采用二次曲面的显示表达形式:z=ax*x+by*y+cx*y+dx+ey+f

那么,我们是否可以通过相邻的三角面片的顶点以及它上面的采样点这些数据,拟合出这些二次曲面呢?

如果可以,如何用程序实现呢?
...全文
886 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaokarui1983 2008-07-03
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 rover___ 的回复:]
曲面用二次曲面拟合和曲线用二次曲线拟合的原理相似。(最小二乘)
存在的问题:
边界上是否要求光滑(连接处)处理?是的话,要加边界条件。最后都归结为线性方程组。
[/Quote]

那我可不可以这样理解:
假设我现在的方程是这样:z(x,y)=ax*x+by*y+cx*y+dx+ey+f
作为拟合曲面。
假设观测点的数据是(xi,yi),i=
则每个观测点数据与拟合去曲线的偏差为
z(xi,yi)=axi*xi+byi*yi+cxi*yi+dxi+eyi+f-zi, i= 0,1,2,……,n
而偏差的平方和为:
F(a,b,c,d,e,f)=求和(axi*xi+byi*yi+cxi*yi+dxi+eyi+f-zi)的平方。
然后根据最小二乘原理,取a,b,c,d,e,f使得F(a,b,c,d,e,f)有极小值,接着对F求偏导数,得到6个方程式。然后再来计算,是这样吗?
rover___ 2008-07-03
  • 打赏
  • 举报
回复
曲面用二次曲面拟合和曲线用二次曲线拟合的原理相似。(最小二乘)
存在的问题:
边界上是否要求光滑(连接处)处理?是的话,要加边界条件。最后都归结为线性方程组。
sunyim 2008-07-03
  • 打赏
  • 举报
回复
使用最小二乘法,可以解决这种拟合

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧