Gaussian Smoothing

The Gaussian filter performs Gaussian smoothing on pixels within a small local region. This can be used to suppress sparse noise and align pixels to a grid. By increasing the sigma of the Gaussian filter, more pixels, and thus a larger region, will be included in the calculation. This will result in more aggressive smoothing. The Gaussian filter can in many cases correct outliers, but it will also smoothen out edges.

Note

Gaussian filter adds the following processing time per 3D capture:

Expected median (±stddev) in ms

Filter

Zivid One+

Zivid Two

Intel UHD 750

Intel UHD G1

NVIDIA 3070

Intel UHD 750

NVIDIA 3070

High-end 1

Low-end 2

High-end 3

High-end 3

Smoothing

19 (±4) ms

28 (±3) ms

2 (±3) ms

11 (±2) ms

2 (±0.4) ms

1

High-end machine with GPU: Intel UHD Graphics 750 (ID:0x4C8A) and CPU: 11th Gen Intel(R) Core(TM) i9-11900K @ 3.50GHz

2

Low-end machine with GPU: Intel UHD Graphics G1 (ID:0x8A56) and CPU: Intel(R) Core(TM) i3-1005G1 CPU @ 1.20GHz

3(1,2)

High-end machine with GPU: NVIDIA GeForce RTX 3070 and CPU: 11th Gen Intel(R) Core(TM) i9-11900K @ 3.50GHz

When do you use the Gaussian smoothing?

Because the Gaussian filter performs smoothing, it can greatly improve the absolute noise in a point cloud. This can improve the performance of many vision algorithms, such as some matching algorithms. Even though the relative noise from one part to another is the same, the absolute noise may be reduced, making the parts more similar as a whole.

The Gaussian filter can also be good to use when assessing large scale effects, such as the flatness of a plane. This is because it suppresses the impact of outliers that may cause the applied algorithm to perform too pessimistic.

Version History

SDK

Changes

1.3.0

Gaussian filter API is added.