[3D Vision] Algorithms commonly used in 3D space (point-to-line distance, surface normal, dihedral angle)

3D space point to line distance

insert image description here
insert image description here

3D space point to line distance

Curvature of 3D space

Three-dimensional space has three basic elements, point, line, and surface. So how is curvature defined?

The curvature of the point?
Curvature of the line?
surface curvature?

normal curvature

Let the tangent vector of the curve on the surface at a certain point be df(X), and the normal vector of the surface at this point be N. Then the normal curvature of the curve is the curvature of the projection curve of the curve on the plane formed by df(X) and N.
Take a point E on the surface, the normal of the surface at point E is the z-axis, there can be infinitely many cutting planes passing through the z-axis, each cutting plane intersects the curved surface, and the intersection line is a plane curve, each plane The curve has a radius of curvature at point E. The curvature radii of the plane curves on different cutting planes at point E are generally not equal.
insert image description here

principal curvature

Each direction of the surface has normal curvature, so there is the maximum and minimum normal curvature, the maximum and minimum value is the principal curvature, and the tangent direction of the corresponding curve at this point is the principal curvature direction. These two directions are perpendicular.
insert image description here

Surfaces can be classified according to their principal curvatures
insert image description here

Gaussian curvature

In differential geometry, the Gaussian curvature at a point on a surface is the product of the principal curvatures κ1 and κ2 at that point.
K = k 1 ∗ k 2 K = k_1*k_2K=k1k2

**It is an intrinsic measure of curvature, measuring how inherently curved a surface is. ** That is, its value depends only on how distances are measured on the surface, not how the surface is embedded in space. Any non-stretching transformation of a surface will not change its Gaussian curvature. For example, if the Gaussian curvature of a plane is 0, if it is bent into a cylinder, its Gaussian curvature will still be 0.

3D grid Gaussian curvature calculation formula:

K ( v ) = 1 A ( v ) ( 2 π − ∑ vi ∈ N 1 ( v ) θ i ) K(v) = \frac{1}{A(v)}(2\pi - \sum_{v_i \in{ N_1}(v)}\theta_i)K(v)=A(v)1( 2 pviN1(v)ii)

The geometric meaning of this formula is relatively intuitive. 2*Pi-the sum of the angles corresponding to the triangles in the neighborhood of the point, and then divided by the area of ​​the corresponding area, describes the degree of curvature of the surface at the point.
insert image description here

mean curvature

In differential geometry, the average curvature of a point on a surface is the average of the principal curvatures κ1 and κ2 at that point.
K = k 1 + k 2 2 K=\frac{k_1 + k_2}{2}K=2k1+k2

It measures how curved a surface is in space. For example, after a plane is bent into a cylinder, its average curvature is no longer zero.

Gaussian curvature

How to explain curvature concisely? Calculation and visualization of
normal curvature, principal curvature, Gaussian curvature, and mean curvature Gaussian curvature of triangular mesh surfaces

Guess you like

Origin blog.csdn.net/weixin_43693967/article/details/132023177