【问题标题】:Why taking cross product of tangent vectors gives the normal vector? [closed]为什么取切向量的叉积会得到法向量? [关闭]
【发布时间】:2019-09-19 17:17:42
【问题描述】:

我有一个深度图像,比如z = f(x, y)(x, y),以像素为单位。我想计算每个像素的法线向量来创建法线贴图。

我一直在尝试Calculate surface normals from depth image using neighboring pixels cross product 的方法。在这种方法中,叉积的“输入”基本上是两个切向量,即梯度(dz/dx)(dy/dx)。这两个切向量将在点(x, y, f(x, y)) 处形成切平面,然后叉积将找到该平面的法向量。

但是,我不明白为什么这个平面的法线向量(3D 平面 (x, y, f(x, y)) 也将是我试图找到的世界坐标中平面的法线向量。这里有什么假设吗?如何这种方法可以用来求每个像素点的法线向量吗?

【问题讨论】:

  • 如何找到法线向量?
  • 基本上,我问是因为那个切平面是深度函数 (x, y, f(x, y)) 的深度 3D 图的切平面,而不是现实世界的切平面点。
  • 这如何回答我的问题?
  • 我投票结束这个问题作为题外话,因为它不是一个编程问题......它是一个数学或 3D 几何问题,甚至不受 3D 库或任何代码讨论的约束。

标签: computer-vision computational-geometry depth normals cross-product


【解决方案1】:

这几乎是曲面法线的定义。法线局部垂直于切平面。并且两个非共线向量的叉积是垂直于这两个向量的向量。这就是为什么切平面的两个非共线向量的叉积垂直于该切平面。因此它是沿着法线方向的。

【讨论】:

  • 基本上,我问是因为那个切平面是深度函数 (x, y, f(x, y)) 的深度 3D 图的切平面,而不是现实世界的切平面点。
猜你喜欢
  • 2018-07-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-12-21
  • 1970-01-01
  • 1970-01-01
  • 2010-09-19
  • 2016-04-09
相关资源
最近更新 更多