Processing(处理)

Filters, resampling and color processing applied to the acquired 3D data. The Color member here is deprecated since SDK 2.14; use Settings/Color instead to configure the 2D color image of a 2D + 3D capture.

有关如何选择这些设置的指导,请参阅 Filters(过滤器)。

Processingclass

Settings related to processing of a capture, including filters and color balance.

Public Functions

Processing()

Default constructor.

< Argstemplatetypename...>
Processing(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Processing then invoking set(args).

The provided arguments must be descendants of Processing. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Processing. These types can be provided:

< Argstemplatetypename...>
ProcessingcopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Processing object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Processing. These types can be provided:

Color&color()constinlineconst

Get Color.

Color&color()inline

Get Color.

Processing&set( Color&const value)inline

Set Color.

Processing&set( ColorBalance&const:: value)inline

Set Color::Balance.

Processing&set( ColorBalanceBlue&const:::: value)inline

Set Color::Balance::Blue.

Processing&set( ColorBalanceGreen&const:::: value)inline

Set Color::Balance::Green.

Processing&set( ColorBalanceRed&const:::: value)inline

Set Color::Balance::Red.

Processing&set( ColorExperimental&const:: value)inline

Set Color::Experimental.

Processing&set( ColorExperimentalMode&const:::: value)inline

Set Color::Experimental::Mode.

Processing&set( ColorGamma&const:: value)inline

Set Color::Gamma.

Filters&filters()constinlineconst

Get Filters.

Filters&filters()inline

Get Filters.

Processing&set( Filters&const value)inline

Set Filters.

Processing&set( FiltersCluster&const:: value)inline

Set Filters::Cluster.

Processing&set( FiltersClusterRemoval&const:::: value)inline

Set Filters::Cluster::Removal.

Processing&set( FiltersClusterRemovalEnabled&const:::::: value)inline

Set Filters::Cluster::Removal::Enabled.

Processing&set( FiltersClusterRemovalMaxNeighborDistance&const:::::: value)inline

Set Filters::Cluster::Removal::MaxNeighborDistance.

Processing&set( FiltersClusterRemovalMinArea&const:::::: value)inline

Set Filters::Cluster::Removal::MinArea.

Processing&set( FiltersExperimental&const:: value)inline

Set Filters::Experimental.

Processing&set( FiltersExperimentalContrastDistortion&const:::: value)inline

Set Filters::Experimental::ContrastDistortion.

Processing&set( FiltersExperimentalContrastDistortionCorrection&const:::::: value)inline

Set Filters::Experimental::ContrastDistortion::Correction.

Processing&set( FiltersExperimentalContrastDistortionCorrectionEnabled&const:::::::: value)inline

Set Filters::Experimental::ContrastDistortion::Correction::Enabled.

Processing&set( FiltersExperimentalContrastDistortionCorrectionStrength&const:::::::: value)inline

Set Filters::Experimental::ContrastDistortion::Correction::Strength.

Processing&set( FiltersExperimentalContrastDistortionRemoval&const:::::: value)inline

Set Filters::Experimental::ContrastDistortion::Removal.

Processing&set( FiltersExperimentalContrastDistortionRemovalEnabled&const:::::::: value)inline

Set Filters::Experimental::ContrastDistortion::Removal::Enabled.

Processing&set( FiltersExperimentalContrastDistortionRemovalThreshold&const:::::::: value)inline

Set Filters::Experimental::ContrastDistortion::Removal::Threshold.

Processing&set( FiltersHole&const:: value)inline

Set Filters::Hole.

Processing&set( FiltersHoleRepair&const:::: value)inline

Set Filters::Hole::Repair.

Processing&set( FiltersHoleRepairEnabled&const:::::: value)inline

Set Filters::Hole::Repair::Enabled.

Processing&set( FiltersHoleRepairHoleSize&const:::::: value)inline

Set Filters::Hole::Repair::HoleSize.

Processing&set( FiltersHoleRepairStrictness&const:::::: value)inline

Set Filters::Hole::Repair::Strictness.

Processing&set( FiltersNoise&const:: value)inline

Set Filters::Noise.

Processing&set( FiltersNoiseRemoval&const:::: value)inline

Set Filters::Noise::Removal.

Processing&set( FiltersNoiseRemovalEnabled&const:::::: value)inline

Set Filters::Noise::Removal::Enabled.

Processing&set( FiltersNoiseRemovalThreshold&const:::::: value)inline

Set Filters::Noise::Removal::Threshold.

Processing&set( FiltersNoiseRepair&const:::: value)inline

Set Filters::Noise::Repair.

Processing&set( FiltersNoiseRepairEnabled&const:::::: value)inline

Set Filters::Noise::Repair::Enabled.

Processing&set( FiltersNoiseSuppression&const:::: value)inline

Set Filters::Noise::Suppression.

Processing&set( FiltersNoiseSuppressionEnabled&const:::::: value)inline

Set Filters::Noise::Suppression::Enabled.

Processing&set( FiltersOutlier&const:: value)inline

Set Filters::Outlier.

Processing&set( FiltersOutlierRemoval&const:::: value)inline

Set Filters::Outlier::Removal.

Processing&set( FiltersOutlierRemovalEnabled&const:::::: value)inline

Set Filters::Outlier::Removal::Enabled.

Processing&set( FiltersOutlierRemovalThreshold&const:::::: value)inline

Set Filters::Outlier::Removal::Threshold.

Processing&set( FiltersReflection&const:: value)inline

Set Filters::Reflection.

Processing&set( FiltersReflectionRemoval&const:::: value)inline

Set Filters::Reflection::Removal.

Processing&set( FiltersReflectionRemovalEnabled&const:::::: value)inline

Set Filters::Reflection::Removal::Enabled.

Processing&set( FiltersReflectionRemovalMode&const:::::: value)inline

Set Filters::Reflection::Removal::Mode.

Processing&set( FiltersSmoothing&const:: value)inline

Set Filters::Smoothing.

Processing&set( FiltersSmoothingGaussian&const:::: value)inline

Set Filters::Smoothing::Gaussian.

Processing&set( FiltersSmoothingGaussianEnabled&const:::::: value)inline

Set Filters::Smoothing::Gaussian::Enabled.

Processing&set( FiltersSmoothingGaussianSigma&const:::::: value)inline

Set Filters::Smoothing::Gaussian::Sigma.

Resampling&resampling()constinlineconst

Get Resampling.

Resampling&resampling()inline

Get Resampling.

Processing&set( Resampling&const value)inline

Set Resampling.

Processing&set( ResamplingMode&const:: value)inline

Set Resampling::Mode.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Processing&const other)constbool

Equality operator.

!=operator( Processing&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing"

The full path for this value.

name={}staticconstexprconstchar* "Processing"

The name of this value.

static constexpr const char * description  {R"description(Settings related to processing of a capture, including filters and colorbalance.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Processing&const value)inlinefriend::

Operator to send the value as string to a stream.

Colorclass

Color settings.

These settings are deprecated as of SDK 2.14. These settings will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

Public Functions

Color()

Default constructor.

< Argstemplatetypename...>
Color(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Color then invoking set(args).

The provided arguments must be descendants of Color. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Color. These types can be provided:

< Argstemplatetypename...>
ColorcopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Color object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Color. These types can be provided:

Balance&balance()constinlineconst

Get Balance.

Balance&balance()inline

Get Balance.

Color&set( Balance&const value)inline

Set Balance.

Color&set( BalanceBlue&const:: value)inline

Set Balance::Blue.

Color&set( BalanceGreen&const:: value)inline

Set Balance::Green.

Color&set( BalanceRed&const:: value)inline

Set Balance::Red.

Experimental&experimental()constinlineconst

Get Experimental.

Experimental&experimental()inline

Get Experimental.

Color&set( Experimental&const value)inline

Set Experimental.

Color&set( ExperimentalMode&const:: value)inline

Set Experimental::Mode.

Gamma&gamma()constinlineconst

Get Gamma.

Gamma&gamma()inline

Get Gamma.

Color&set( Gamma&const value)inline

Set Gamma.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Color&const other)constbool

Equality operator.

!=operator( Color&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Color"

The full path for this value.

name={}staticconstexprconstchar* "Color"

The name of this value.

static constexpr const char * description   = { R"description(Colorsettings.These settings are deprecated as of SDK 2.14. These settings will be removed in the next SDK majorversion (SDK 3.0). The recommended way to do a 2D+3D capture is to set a `Settings2D` objectin the `Settings/Color` node. Tip: If you want to convert an existing settings.yml file to use the`Settings/Color` node, you can import the .yml file into Zivid Studio and then re-export it to .yml.)description" }

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Color&const value)inlinefriend::

Operator to send the value as string to a stream.

Balanceclass

Color balance settings.

Public Functions

Balance()

Default constructor.

< Argstemplatetypename...>
Balance(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Balance then invoking set(args).

The provided arguments must be descendants of Balance. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Balance. These types can be provided:

< Argstemplatetypename...>
BalancecopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Balance object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Balance. These types can be provided:

Blue&blue()constinlineconst

Get Blue.

Blue&blue()inline

Get Blue.

Balance&set( Blue&const value)inline

Set Blue.

Green&green()constinlineconst

Get Green.

Green&green()inline

Get Green.

Balance&set( Green&const value)inline

Set Green.

Red&red()constinlineconst

Get Red.

Red&red()inline

Get Red.

Balance&set( Red&const value)inline

Set Red.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Balance&const other)constbool

Equality operator.

!=operator( Balance&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Color/Balance"

The full path for this value.

name={}staticconstexprconstchar* "Balance"

The name of this value.

static constexpr const char * description   = { R"description(Color balance settings.)description" }

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Balance&const value)inlinefriend::

Operator to send the value as string to a stream.

Blueclass

Digital gain applied to blue channel.

This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

Public Types

ValueType=doubleusing

The type of the underlying value.

Public Functions

Blue()=default

Default constructor.

Blue( doublevalue)inlineexplicitconstexpr

Constructor.

value()constdouble

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Blue&const other)constinlinebool

Comparison operator.

!=operator( Blue&const other)constinlinebool

Comparison operator.

<operator( Blue&const other)constinlinebool

Comparison operator.

>operator( Blue&const other)constinlinebool

Comparison operator.

<=operator( Blue&const other)constinlinebool

Comparison operator.

>=operator( Blue&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangedouble validRange()staticinlineconstexpr<>

The range of valid values for Blue.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Color/Balance/Blue"

The full path for this value.

name={}staticconstexprconstchar* "Blue"

The name of this value.

static constexpr const char * description   = { R"description(Digital gain applied to bluechannel.This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK majorversion (SDK 3.0). The recommended way to do a 2D+3D capture is to set a `Settings2D` objectin the `Settings/Color` node. Tip: If you want to convert an existing settings.yml file to usethe `Settings/Color` node, you can import the .yml file into Zivid Studio and then re-export itto .yml.)description" }

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Blue&const value)inlinefriend::

Operator to serialize the value to a stream.

Greenclass

Digital gain applied to green channel.

This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

Public Types

ValueType=doubleusing

The type of the underlying value.

Public Functions

Green()=default

Default constructor.

Green( doublevalue)inlineexplicitconstexpr

Constructor.

value()constdouble

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Green&const other)constinlinebool

Comparison operator.

!=operator( Green&const other)constinlinebool

Comparison operator.

<operator( Green&const other)constinlinebool

Comparison operator.

>operator( Green&const other)constinlinebool

Comparison operator.

<=operator( Green&const other)constinlinebool

Comparison operator.

>=operator( Green&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangedouble validRange()staticinlineconstexpr<>

The range of valid values for Green.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Color/Balance/Green"

The full path for this value.

name={}staticconstexprconstchar* "Green"

The name of this value.

static constexpr const char * description   = { R"description(Digital gain applied to greenchannel.This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK majorversion (SDK 3.0). The recommended way to do a 2D+3D capture is to set a `Settings2D` objectin the `Settings/Color` node. Tip: If you want to convert an existing settings.yml file to usethe `Settings/Color` node, you can import the .yml file into Zivid Studio and then re-export itto .yml.)description" }

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Green&const value)inlinefriend::

Operator to serialize the value to a stream.

Redclass

Digital gain applied to red channel.

This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

Public Types

ValueType=doubleusing

The type of the underlying value.

Public Functions

Red()=default

Default constructor.

Red( doublevalue)inlineexplicitconstexpr

Constructor.

value()constdouble

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Red&const other)constinlinebool

Comparison operator.

!=operator( Red&const other)constinlinebool

Comparison operator.

<operator( Red&const other)constinlinebool

Comparison operator.

>operator( Red&const other)constinlinebool

Comparison operator.

<=operator( Red&const other)constinlinebool

Comparison operator.

>=operator( Red&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangedouble validRange()staticinlineconstexpr<>

The range of valid values for Red.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Color/Balance/Red"

The full path for this value.

name={}staticconstexprconstchar* "Red"

The name of this value.

static constexpr const char * description   = { R"description(Digital gain applied to redchannel.This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK majorversion (SDK 3.0). The recommended way to do a 2D+3D capture is to set a `Settings2D` objectin the `Settings/Color` node. Tip: If you want to convert an existing settings.yml file to usethe `Settings/Color` node, you can import the .yml file into Zivid Studio and then re-export itto .yml.)description" }

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Red&const value)inlinefriend::

Operator to serialize the value to a stream.

Experimentalclass

Experimental color settings. These may be renamed, moved or deleted in the future.

Public Functions

Experimental()

Default constructor.

< Argstemplatetypename...>
Experimental(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Experimental then invoking set(args).

The provided arguments must be descendants of Experimental. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Experimental. These types can be provided:

< Argstemplatetypename...>
ExperimentalcopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Experimental object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Experimental. These types can be provided:

Mode&mode()constinlineconst

Get Mode.

Mode&mode()inline

Get Mode.

Experimental&set( Mode&const value)inline

Set Mode.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Experimental&const other)constbool

Equality operator.

!=operator( Experimental&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Color/Experimental"

The full path for this value.

name={}staticconstexprconstchar* "Experimental"

The name of this value.

static constexpr const char * description  {R"description(Experimental colorsettings. These may be renamed, moved or deleted in the future.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Experimental&const value)inlinefriend::

Operator to send the value as string to a stream.

Modeclass

This setting controls how the color image is computed.

automatic is the default option. automatic is identical to useFirstAcquisition for single-acquisition captures and multi-acquisition captures when all the acquisitions have identical (duplicated) acquisition settings. automatic is identical to toneMapping for multi-acquisition HDR captures with differing acquisition settings.

useFirstAcquisition uses the color data acquired from the first acquisition provided. If the capture consists of more than one acquisition, then the remaining acquisitions are not used for the color image. No tone mapping is performed. This option provides the most control of the color image, and the color values will be consistent over repeated captures with the same settings.

toneMapping uses all the acquisitions to create one merged and normalized color image. For HDR captures the dynamic range of the captured images is usually higher than the 8-bit color image range. toneMapping will map the HDR color data to the 8-bit color output range by applying a scaling factor. toneMapping can also be used for single-acquisition captures to normalize the captured color image to the full 8-bit output. Note that when using toneMapping mode the color values can be inconsistent over repeated captures if you move, add or remove objects in the scene. For the most control over the colors, select the useFirstAcquisition mode.

This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

Public Types

ValueTypeenumclass

The type of the underlying value.

Values:

automaticenumerator
useFirstAcquisitionenumerator
toneMappingenumerator

Public Functions

Mode()=default

Default constructor.

Mode(ValueTypevalue )inlineexplicitconstexpr

Constructor.

ValueTypevalue()const

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Mode&const other)constinlinebool

Comparison operator.

!=operator( Mode&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetValueType validValues()staticinline::<>

All valid values of Mode.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Color/Experimental/Mode"

The full path for this value.

name={}staticconstexprconstchar* "Mode"

The name of this value.

static constexpr const char * description  {R"description(This setting controls how thecolorimage is computed.`automatic` is the default option. `automatic` is identical to `useFirstAcquisition` forsingle-acquisition captures and multi-acquisition captures when all theacquisitionshaveidentical (duplicated) acquisition settings. `automatic` is identical to `toneMapping` formulti-acquisition HDR captures with differing acquisition settings.`useFirstAcquisition` uses the colordata acquired from the first acquisition provided. Ifthe capture consists of more than one acquisition, then the remainingacquisitionsare not usedfor thecolorimage. No tone mapping is performed. This option provides the most control ofthecolor image, and the colorvalues will be consistent over repeated captures with the samesettings.`toneMapping` uses all the acquisitions to create one merged and normalized colorimage. ForHDR captures the dynamic range of the captured images is usually higher than the 8-bitcolor image range. `toneMapping` will map the HDR color data to the 8-bit coloroutput range byapplying a scaling factor. `toneMapping` can also be used for single-acquisition captures tonormalize the capturedcolor image to the full 8-bit output. Note that when using `toneMapping` mode the colorvalues can be inconsistent over repeated captures if you move, add or removeobjects in the scene. For the most control over the colors, select the `useFirstAcquisition`mode.This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK majorversion (SDK 3.0). The recommended way to do a 2D+3D capture is to set a `Settings2D` objectin the `Settings/Color` node. Tip: If you want to convert an existing settings.yml file to usethe `Settings/Color` node, you can import the .yml file into Zivid Studio and then re-export itto .yml.)description"}

The description for this value.

Modeautomaticstaticconst

automatic

ModeuseFirstAcquisitionstaticconst

useFirstAcquisition

ModetoneMappingstaticconst

toneMapping

Friends

stdostream&<<operator(stdostream&:: stream, ModeValueType&const:: value)inlinefriend::

Operator to serialize ValueType to a stream.

stdostream&<<operator(stdostream&:: stream, Mode&const value)inlinefriend::

Operator to serialize the value to a stream.

Gammaclass

Gamma applied to the color values.

Gamma less than 1 makes the colors brighter, while gamma greater than 1 makes the colors darker.

This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

Public Types

ValueType=doubleusing

The type of the underlying value.

Public Functions

Gamma()=default

Default constructor.

Gamma( doublevalue)inlineexplicitconstexpr

Constructor.

value()constdouble

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Gamma&const other)constinlinebool

Comparison operator.

!=operator( Gamma&const other)constinlinebool

Comparison operator.

<operator( Gamma&const other)constinlinebool

Comparison operator.

>operator( Gamma&const other)constinlinebool

Comparison operator.

<=operator( Gamma&const other)constinlinebool

Comparison operator.

>=operator( Gamma&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangedouble validRange()staticinlineconstexpr<>

The range of valid values for Gamma.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Color/Gamma"

The full path for this value.

name={}staticconstexprconstchar* "Gamma"

The name of this value.

static constexpr const char * description  {R"description(Gamma applied to the color values. Gamma less than 1 makes the colors brighter, while gammagreater than 1 makes the colors darker.This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK majorversion (SDK 3.0). The recommended way to do a 2D+3D capture is to set a `Settings2D` objectin the `Settings/Color` node. Tip: If you want to convert an existing settings.yml file to usethe `Settings/Color` node, you can import the .yml file into Zivid Studio and then re-export itto .yml.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Gamma&const value)inlinefriend::

Operator to serialize the value to a stream.

Filtersclass

Filter settings.

Public Functions

Filters()

Default constructor.

< Argstemplatetypename...>
Filters(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Filters then invoking set(args).

The provided arguments must be descendants of Filters. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Filters. These types can be provided:

< Argstemplatetypename...>
FilterscopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Filters object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Filters. These types can be provided:

Cluster&cluster()constinlineconst

Get Cluster.

Cluster&cluster()inline

Get Cluster.

Filters&set( Cluster&const value)inline

Set Cluster.

Filters&set( ClusterRemoval&const:: value)inline

Set Cluster::Removal.

Filters&set( ClusterRemovalEnabled&const:::: value)inline

Set Cluster::Removal::Enabled.

Filters&set( ClusterRemovalMaxNeighborDistance&const:::: value)inline

Set Cluster::Removal::MaxNeighborDistance.

Filters&set( ClusterRemovalMinArea&const:::: value)inline

Set Cluster::Removal::MinArea.

Experimental&experimental()constinlineconst

Get Experimental.

Experimental&experimental()inline

Get Experimental.

Filters&set( Experimental&const value)inline

Set Experimental.

Filters&set( ExperimentalContrastDistortion&const:: value)inline

Set Experimental::ContrastDistortion.

Filters&set( ExperimentalContrastDistortionCorrection&const:::: value)inline

Set Experimental::ContrastDistortion::Correction.

Filters&set( ExperimentalContrastDistortionCorrectionEnabled&const:::::: value)inline

Set Experimental::ContrastDistortion::Correction::Enabled.

Filters&set( ExperimentalContrastDistortionCorrectionStrength&const:::::: value)inline

Set Experimental::ContrastDistortion::Correction::Strength.

Filters&set( ExperimentalContrastDistortionRemoval&const:::: value)inline

Set Experimental::ContrastDistortion::Removal.

Filters&set( ExperimentalContrastDistortionRemovalEnabled&const:::::: value)inline

Set Experimental::ContrastDistortion::Removal::Enabled.

Filters&set( ExperimentalContrastDistortionRemovalThreshold&const:::::: value)inline

Set Experimental::ContrastDistortion::Removal::Threshold.

Hole&hole()constinlineconst

Get Hole.

Hole&hole()inline

Get Hole.

Filters&set( Hole&const value)inline

Set Hole.

Filters&set( HoleRepair&const:: value)inline

Set Hole::Repair.

Filters&set( HoleRepairEnabled&const:::: value)inline

Set Hole::Repair::Enabled.

Filters&set( HoleRepairHoleSize&const:::: value)inline

Set Hole::Repair::HoleSize.

Filters&set( HoleRepairStrictness&const:::: value)inline

Set Hole::Repair::Strictness.

Noise&noise()constinlineconst

Get Noise.

Noise&noise()inline

Get Noise.

Filters&set( Noise&const value)inline

Set Noise.

Filters&set( NoiseRemoval&const:: value)inline

Set Noise::Removal.

Filters&set( NoiseRemovalEnabled&const:::: value)inline

Set Noise::Removal::Enabled.

Filters&set( NoiseRemovalThreshold&const:::: value)inline

Set Noise::Removal::Threshold.

Filters&set( NoiseRepair&const:: value)inline

Set Noise::Repair.

Filters&set( NoiseRepairEnabled&const:::: value)inline

Set Noise::Repair::Enabled.

Filters&set( NoiseSuppression&const:: value)inline

Set Noise::Suppression.

Filters&set( NoiseSuppressionEnabled&const:::: value)inline

Set Noise::Suppression::Enabled.

Outlier&outlier()constinlineconst

Get Outlier.

Outlier&outlier()inline

Get Outlier.

Filters&set( Outlier&const value)inline

Set Outlier.

Filters&set( OutlierRemoval&const:: value)inline

Set Outlier::Removal.

Filters&set( OutlierRemovalEnabled&const:::: value)inline

Set Outlier::Removal::Enabled.

Filters&set( OutlierRemovalThreshold&const:::: value)inline

Set Outlier::Removal::Threshold.

Reflection&reflection()constinlineconst

Get Reflection.

Reflection&reflection()inline

Get Reflection.

Filters&set( Reflection&const value)inline

Set Reflection.

Filters&set( ReflectionRemoval&const:: value)inline

Set Reflection::Removal.

Filters&set( ReflectionRemovalEnabled&const:::: value)inline

Set Reflection::Removal::Enabled.

Filters&set( ReflectionRemovalMode&const:::: value)inline

Set Reflection::Removal::Mode.

Smoothing&smoothing()constinlineconst

Get Smoothing.

Smoothing&smoothing()inline

Get Smoothing.

Filters&set( Smoothing&const value)inline

Set Smoothing.

Filters&set( SmoothingGaussian&const:: value)inline

Set Smoothing::Gaussian.

Filters&set( SmoothingGaussianEnabled&const:::: value)inline

Set Smoothing::Gaussian::Enabled.

Filters&set( SmoothingGaussianSigma&const:::: value)inline

Set Smoothing::Gaussian::Sigma.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Filters&const other)constbool

Equality operator.

!=operator( Filters&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters"

The full path for this value.

name={}staticconstexprconstchar* "Filters"

The name of this value.

static constexpr const char * description   = { R"description(Filter settings.)description" }

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Filters&const value)inlinefriend::

Operator to send the value as string to a stream.

Clusterclass

Removes floating points and isolated clusters from the point cloud.

Public Functions

Cluster()

Default constructor.

< Argstemplatetypename...>
Cluster(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Cluster then invoking set(args).

The provided arguments must be descendants of Cluster. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Cluster. These types can be provided:

< Argstemplatetypename...>
ClustercopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Cluster object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Cluster. These types can be provided:

Removal&removal()constinlineconst

Get Removal.

Removal&removal()inline

Get Removal.

Cluster&set( Removal&const value)inline

Set Removal.

Cluster&set( RemovalEnabled&const:: value)inline

Set Removal::Enabled.

Cluster&set( RemovalMaxNeighborDistance&const:: value)inline

Set Removal::MaxNeighborDistance.

Cluster&set( RemovalMinArea&const:: value)inline

Set Removal::MinArea.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Cluster&const other)constbool

Equality operator.

!=operator( Cluster&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Cluster"

The full path for this value.

name={}staticconstexprconstchar* "Cluster"

The name of this value.

static constexpr const char * description  {R"description(Removes floating points and isolated clusters from the point cloud.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Cluster&const value)inlinefriend::

Operator to send the value as string to a stream.

Removalclass

Cluster removal filter.

Public Functions

Removal()

Default constructor.

< Argstemplatetypename...>
Removal(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Removal then invoking set(args).

The provided arguments must be descendants of Removal. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Removal. These types can be provided:

< Argstemplatetypename...>
RemovalcopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Removal object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Removal. These types can be provided:

Enabled&isEnabled()constinlineconst

Get Enabled.

Enabled&isEnabled()inline

Get Enabled.

Removal&set( Enabled&const value)inline

Set Enabled.

MaxNeighborDistance&maxNeighborDistance()constinlineconst

Get MaxNeighborDistance.

MaxNeighborDistance&maxNeighborDistance()inline

Get MaxNeighborDistance.

Removal&set( MaxNeighborDistance&const value)inline

Set MaxNeighborDistance.

MinArea&minArea()constinlineconst

Get MinArea.

MinArea&minArea()inline

Get MinArea.

Removal&set( MinArea&const value)inline

Set MinArea.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Removal&const other)constbool

Equality operator.

!=operator( Removal&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Cluster/Removal"

The full path for this value.

name={}staticconstexprconstchar* "Removal"

The name of this value.

static constexpr const char * description   = { R"description(Cluster removal filter.)description" }

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Removal&const value)inlinefriend::

Operator to send the value as string to a stream.

Enabledclass

Enable or disable cluster removal.

Public Types

ValueType=boolusing

The type of the underlying value.

Public Functions

Enabled()=default

Default constructor.

Enabled( boolvalue)inlineexplicitconstexpr

Constructor.

value()constbool

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Enabled&const other)constinlinebool

Comparison operator.

!=operator( Enabled&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetbool validValues()staticinline::<>

All valid values of Enabled.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Cluster/Removal/Enabled"

The full path for this value.

name={}staticconstexprconstchar* "Enabled"

The name of this value.

static constexpr const char * description  {R"description(Enable or disableclusterremoval.)description"}

The description for this value.

Enabledyesstaticconst

On/enabled.

Enablednostaticconst

Off/disabled.

Friends

stdostream&<<operator(stdostream&:: stream, Enabled&const value)inlinefriend::

Operator to serialize the value to a stream.

MaxNeighborDistanceclass

Maximum normalized distance between neighboring points that are still classified as belonging to the same cluster.

The default value is optimal for most scenes. On messy scenes turning this setting down helps removing more bad points.

Public Types

ValueType=doubleusing

The type of the underlying value.

Public Functions

MaxNeighborDistance()=default

Default constructor.

MaxNeighborDistance( doublevalue)inlineexplicitconstexpr

Constructor.

value()constdouble

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( MaxNeighborDistance&const other)constinlinebool

Comparison operator.

!=operator( MaxNeighborDistance&const other)constinlinebool

Comparison operator.

<operator( MaxNeighborDistance&const other)constinlinebool

Comparison operator.

>operator( MaxNeighborDistance&const other)constinlinebool

Comparison operator.

<=operator( MaxNeighborDistance&const other)constinlinebool

Comparison operator.

>=operator( MaxNeighborDistance&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangedouble validRange()staticinlineconstexpr<>

The range of valid values for MaxNeighborDistance.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path"Processing/Filters/Cluster/Removal/MaxNeighborDistance"staticconstexprconstchar*{}

The full path for this value.

name={}staticconstexprconstchar* "MaxNeighborDistance"

The name of this value.

static constexpr const char * description  {R"description(Maximum normalized distance between neighboring points that are still classified asbelonging to the same cluster. The defaultvalueis optimal for most scenes. On messyscenes turning this setting down helps removing more bad points.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, MaxNeighborDistance&const value)inlinefriend::

Operator to serialize the value to a stream.

MinAreaclass

Clusters with area below this threshold are removed by the filter.

The area is given in mm^2.

Public Types

ValueType=doubleusing

The type of the underlying value.

Public Functions

MinArea()=default

Default constructor.

MinArea( doublevalue)inlineexplicitconstexpr

Constructor.

value()constdouble

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( MinArea&const other)constinlinebool

Comparison operator.

!=operator( MinArea&const other)constinlinebool

Comparison operator.

<operator( MinArea&const other)constinlinebool

Comparison operator.

>operator( MinArea&const other)constinlinebool

Comparison operator.

<=operator( MinArea&const other)constinlinebool

Comparison operator.

>=operator( MinArea&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangedouble validRange()staticinlineconstexpr<>

The range of valid values for MinArea.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Cluster/Removal/MinArea"

The full path for this value.

name={}staticconstexprconstchar* "MinArea"

The name of this value.

static constexpr const char * description  {R"description(Clusters with area below this threshold are removed by the filter.The area is given in mm^2.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, MinArea&const value)inlinefriend::

Operator to serialize the value to a stream.

Experimentalclass

Experimental filters. These may be renamed, moved or deleted in the future.

Public Functions

Experimental()

Default constructor.

< Argstemplatetypename...>
Experimental(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Experimental then invoking set(args).

The provided arguments must be descendants of Experimental. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Experimental. These types can be provided:

< Argstemplatetypename...>
ExperimentalcopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Experimental object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Experimental. These types can be provided:

ContrastDistortion&contrastDistortion()constinlineconst

Get ContrastDistortion.

ContrastDistortion&contrastDistortion()inline

Get ContrastDistortion.

Experimental&set( ContrastDistortion&const value)inline

Set ContrastDistortion.

Experimental&set( ContrastDistortionCorrection&const:: value)inline

Set ContrastDistortion::Correction.

Experimental&set( ContrastDistortionCorrectionEnabled&const:::: value)inline

Set ContrastDistortion::Correction::Enabled.

Experimental&set( ContrastDistortionCorrectionStrength&const:::: value)inline

Set ContrastDistortion::Correction::Strength.

Experimental&set( ContrastDistortionRemoval&const:: value)inline

Set ContrastDistortion::Removal.

Experimental&set( ContrastDistortionRemovalEnabled&const:::: value)inline

Set ContrastDistortion::Removal::Enabled.

Experimental&set( ContrastDistortionRemovalThreshold&const:::: value)inline

Set ContrastDistortion::Removal::Threshold.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Experimental&const other)constbool

Equality operator.

!=operator( Experimental&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Experimental"

The full path for this value.

name={}staticconstexprconstchar* "Experimental"

The name of this value.

static constexpr const char * description  {R"description(Experimentalfilters. These may be renamed, moved or deleted in the future.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Experimental&const value)inlinefriend::

Operator to send the value as string to a stream.

ContrastDistortionclass

Corrects artifacts that appear when imaging scenes with large texture gradients or high contrast.

These artifacts are caused by blurring in the lens. The filter works best when aperture values are chosen such that the camera has quite good focus. The filter also supports removing the points that experience a large correction.

Public Functions

ContrastDistortion()

Default constructor.

< Argstemplatetypename...>
ContrastDistortion(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing ContrastDistortion then invoking set(args).

The provided arguments must be descendants of ContrastDistortion. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of ContrastDistortion. These types can be provided:

< Argstemplatetypename...>
ContrastDistortioncopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this ContrastDistortion object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of ContrastDistortion. These types can be provided:

Correction&correction()constinlineconst

Get Correction.

Correction&correction()inline

Get Correction.

ContrastDistortion&set( Correction&const value)inline

Set Correction.

ContrastDistortion&set( CorrectionEnabled&const:: value)inline

Set Correction::Enabled.

ContrastDistortion&set( CorrectionStrength&const:: value)inline

Set Correction::Strength.

Removal&removal()constinlineconst

Get Removal.

Removal&removal()inline

Get Removal.

ContrastDistortion&set( Removal&const value)inline

Set Removal.

ContrastDistortion&set( RemovalEnabled&const:: value)inline

Set Removal::Enabled.

ContrastDistortion&set( RemovalThreshold&const:: value)inline

Set Removal::Threshold.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( ContrastDistortion&const other)constbool

Equality operator.

!=operator( ContrastDistortion&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Experimental/ContrastDistortion"

The full path for this value.

name={}staticconstexprconstchar* "ContrastDistortion"

The name of this value.

static constexpr const char * description  {R"description(Corrects artifacts that appear when imaging scenes with large texture gradientsor high contrast. These artifacts are caused by blurring in the lens. The filterworks best when aperture values are chosen such that the camera has quite good focus.The filter also supports removing the points that experience a large correction.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, ContrastDistortion&const value)inlinefriend::

Operator to send the value as string to a stream.

Correctionclass

Contrast distortion correction filter.

Public Functions

Correction()

Default constructor.

< Argstemplatetypename...>
Correction(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Correction then invoking set(args).

The provided arguments must be descendants of Correction. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Correction. These types can be provided:

< Argstemplatetypename...>
CorrectioncopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Correction object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Correction. These types can be provided:

Enabled&isEnabled()constinlineconst

Get Enabled.

Enabled&isEnabled()inline

Get Enabled.

Correction&set( Enabled&const value)inline

Set Enabled.

Strength&strength()constinlineconst

Get Strength.

Strength&strength()inline

Get Strength.

Correction&set( Strength&const value)inline

Set Strength.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Correction&const other)constbool

Equality operator.

!=operator( Correction&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path"Processing/Filters/Experimental/ContrastDistortion/Correction"staticconstexprconstchar*{}

The full path for this value.

name={}staticconstexprconstchar* "Correction"

The name of this value.

static constexpr const char * description  {R"description(Contrast distortioncorrectionfilter.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Correction&const value)inlinefriend::

Operator to send the value as string to a stream.

Enabledclass

Enable or disable contrast distortion correction.

Public Types

ValueType=boolusing

The type of the underlying value.

Public Functions

Enabled()=default

Default constructor.

Enabled( boolvalue)inlineexplicitconstexpr

Constructor.

value()constbool

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Enabled&const other)constinlinebool

Comparison operator.

!=operator( Enabled&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetbool validValues()staticinline::<>

All valid values of Enabled.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path"Processing/Filters/Experimental/ContrastDistortion/Correction/Enabled"staticconstexprconstchar*{}

The full path for this value.

name={}staticconstexprconstchar* "Enabled"

The name of this value.

static constexpr const char * description  {R"description(Enable or disable contrast distortion correction.)description"}

The description for this value.

Enabledyesstaticconst

On/enabled.

Enablednostaticconst

Off/disabled.

Friends

stdostream&<<operator(stdostream&:: stream, Enabled&const value)inlinefriend::

Operator to serialize the value to a stream.

Strengthclass

Strength of correction. Higher values give more correction.

Public Types

ValueType=doubleusing

The type of the underlying value.

Public Functions

Strength()=default

Default constructor.

Strength( doublevalue)inlineexplicitconstexpr

Constructor.

value()constdouble

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Strength&const other)constinlinebool

Comparison operator.

!=operator( Strength&const other)constinlinebool

Comparison operator.

<operator( Strength&const other)constinlinebool

Comparison operator.

>operator( Strength&const other)constinlinebool

Comparison operator.

<=operator( Strength&const other)constinlinebool

Comparison operator.

>=operator( Strength&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangedouble validRange()staticinlineconstexpr<>

The range of valid values for Strength.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path"Processing/Filters/Experimental/ContrastDistortion/Correction/Strength"staticconstexprconstchar*{}

The full path for this value.

name={}staticconstexprconstchar* "Strength"

The name of this value.

static constexpr const char * description  {R"description(Strengthof correction. Higher values give more correction.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Strength&const value)inlinefriend::

Operator to serialize the value to a stream.

Removalclass

Contrast distortion removal filter.

Public Functions

Removal()

Default constructor.

< Argstemplatetypename...>
Removal(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Removal then invoking set(args).

The provided arguments must be descendants of Removal. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Removal. These types can be provided:

< Argstemplatetypename...>
RemovalcopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Removal object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Removal. These types can be provided:

Enabled&isEnabled()constinlineconst

Get Enabled.

Enabled&isEnabled()inline

Get Enabled.

Removal&set( Enabled&const value)inline

Set Enabled.

Threshold&threshold()constinlineconst

Get Threshold.

Threshold&threshold()inline

Get Threshold.

Removal&set( Threshold&const value)inline

Set Threshold.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Removal&const other)constbool

Equality operator.

!=operator( Removal&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path"Processing/Filters/Experimental/ContrastDistortion/Removal"staticconstexprconstchar*{}

The full path for this value.

name={}staticconstexprconstchar* "Removal"

The name of this value.

static constexpr const char * description  {R"description(Contrast distortionremovalfilter.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Removal&const value)inlinefriend::

Operator to send the value as string to a stream.

Enabledclass

Enable or disable contrast distortion removal.

Public Types

ValueType=boolusing

The type of the underlying value.

Public Functions

Enabled()=default

Default constructor.

Enabled( boolvalue)inlineexplicitconstexpr

Constructor.

value()constbool

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Enabled&const other)constinlinebool

Comparison operator.

!=operator( Enabled&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetbool validValues()staticinline::<>

All valid values of Enabled.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path"Processing/Filters/Experimental/ContrastDistortion/Removal/Enabled"staticconstexprconstchar*{}

The full path for this value.

name={}staticconstexprconstchar* "Enabled"

The name of this value.

static constexpr const char * description  {R"description(Enable or disable contrast distortion removal.)description"}

The description for this value.

Enabledyesstaticconst

On/enabled.

Enablednostaticconst

Off/disabled.

Friends

stdostream&<<operator(stdostream&:: stream, Enabled&const value)inlinefriend::

Operator to serialize the value to a stream.

Thresholdclass

Threshold for removal. Higher values remove more points.

Public Types

ValueType=doubleusing

The type of the underlying value.

Public Functions

Threshold()=default

Default constructor.

Threshold( doublevalue)inlineexplicitconstexpr

Constructor.

value()constdouble

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Threshold&const other)constinlinebool

Comparison operator.

!=operator( Threshold&const other)constinlinebool

Comparison operator.

<operator( Threshold&const other)constinlinebool

Comparison operator.

>operator( Threshold&const other)constinlinebool

Comparison operator.

<=operator( Threshold&const other)constinlinebool

Comparison operator.

>=operator( Threshold&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangedouble validRange()staticinlineconstexpr<>

The range of valid values for Threshold.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path"Processing/Filters/Experimental/ContrastDistortion/Removal/Threshold"staticconstexprconstchar*{}

The full path for this value.

name={}staticconstexprconstchar* "Threshold"

The name of this value.

static constexpr const char * description  {R"description(Thresholdfor removal. Higher values remove more points.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Threshold&const value)inlinefriend::

Operator to serialize the value to a stream.

Holeclass

Contains filters that can be used to deal with holes in the point cloud.

Public Functions

Hole()

Default constructor.

< Argstemplatetypename...>
Hole(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Hole then invoking set(args).

The provided arguments must be descendants of Hole. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Hole. These types can be provided:

< Argstemplatetypename...>
HolecopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Hole object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Hole. These types can be provided:

Repair&repair()constinlineconst

Get Repair.

Repair&repair()inline

Get Repair.

Hole&set( Repair&const value)inline

Set Repair.

Hole&set( RepairEnabled&const:: value)inline

Set Repair::Enabled.

Hole&set( RepairHoleSize&const:: value)inline

Set Repair::HoleSize.

Hole&set( RepairStrictness&const:: value)inline

Set Repair::Strictness.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Hole&const other)constbool

Equality operator.

!=operator( Hole&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Hole"

The full path for this value.

name={}staticconstexprconstchar* "Hole"

The name of this value.

static constexpr const char * description  {R"description(Containsfiltersthat can be used to deal with holes in the point cloud.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Hole&const value)inlinefriend::

Operator to send the value as string to a stream.

Repairclass

Fills in point cloud holes by interpolating remaining surrounding points.

Public Functions

Repair()

Default constructor.

< Argstemplatetypename...>
Repair(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Repair then invoking set(args).

The provided arguments must be descendants of Repair. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Repair. These types can be provided:

< Argstemplatetypename...>
RepaircopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Repair object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Repair. These types can be provided:

Enabled&isEnabled()constinlineconst

Get Enabled.

Enabled&isEnabled()inline

Get Enabled.

Repair&set( Enabled&const value)inline

Set Enabled.

HoleSize&holeSize()constinlineconst

Get HoleSize.

HoleSize&holeSize()inline

Get HoleSize.

Repair&set( HoleSize&const value)inline

Set HoleSize.

Strictness&strictness()constinlineconst

Get Strictness.

Strictness&strictness()inline

Get Strictness.

Repair&set( Strictness&const value)inline

Set Strictness.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Repair&const other)constbool

Equality operator.

!=operator( Repair&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Hole/Repair"

The full path for this value.

name={}staticconstexprconstchar* "Repair"

The name of this value.

static constexpr const char * description  {R"description(Fills in point cloud holes by interpolating remaining surrounding points.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Repair&const value)inlinefriend::

Operator to send the value as string to a stream.

Enabledclass

Enable or disable hole repair.

Public Types

ValueType=boolusing

The type of the underlying value.

Public Functions

Enabled()=default

Default constructor.

Enabled( boolvalue)inlineexplicitconstexpr

Constructor.

value()constbool

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Enabled&const other)constinlinebool

Comparison operator.

!=operator( Enabled&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetbool validValues()staticinline::<>

All valid values of Enabled.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Hole/Repair/Enabled"

The full path for this value.

name={}staticconstexprconstchar* "Enabled"

The name of this value.

static constexpr const char * description  {R"description(Enable or disableholerepair.)description"}

The description for this value.

Enabledyesstaticconst

On/enabled.

Enablednostaticconst

Off/disabled.

Friends

stdostream&<<operator(stdostream&:: stream, Enabled&const value)inlinefriend::

Operator to serialize the value to a stream.

HoleSizeclass

Relative diameter of holes to fill.

Increasing this will fill more points, but require more computation time. The maximum allowed hole size scales with distance, so that we allow filling larger holes at greater distances, measured in mm.

Public Types

ValueType=doubleusing

The type of the underlying value.

Public Functions

HoleSize()=default

Default constructor.

HoleSize( doublevalue)inlineexplicitconstexpr

Constructor.

value()constdouble

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( HoleSize&const other)constinlinebool

Comparison operator.

!=operator( HoleSize&const other)constinlinebool

Comparison operator.

<operator( HoleSize&const other)constinlinebool

Comparison operator.

>operator( HoleSize&const other)constinlinebool

Comparison operator.

<=operator( HoleSize&const other)constinlinebool

Comparison operator.

>=operator( HoleSize&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangedouble validRange()staticinlineconstexpr<>

The range of valid values for HoleSize.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Hole/Repair/HoleSize"

The full path for this value.

name={}staticconstexprconstchar* "HoleSize"

The name of this value.

static constexpr const char * description  {R"description(Relative diameter of holes to fill. Increasing this will fill more points, but require morecomputation time. The maximum allowedholesize scales with distance, so that we allowfilling larger holes at greater distances, measured in mm.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, HoleSize&const value)inlinefriend::

Operator to serialize the value to a stream.

Strictnessclass

Level of strictness when considering if a point should be filled.

A higher level of strictness requires a missing point to be surrounded by valid points on more sides in order to be filled. Increasing this will fill fewer points, but it will be less likely to fill gaps that are not circular, for example between two edges.

Public Types

ValueType=int32_tusing

The type of the underlying value.

Public Functions

Strictness()=default

Default constructor.

Strictness(int32_tvalue )inlineexplicitconstexpr

Constructor.

int32_tvalue()const

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Strictness&const other)constinlinebool

Comparison operator.

!=operator( Strictness&const other)constinlinebool

Comparison operator.

<operator( Strictness&const other)constinlinebool

Comparison operator.

>operator( Strictness&const other)constinlinebool

Comparison operator.

<=operator( Strictness&const other)constinlinebool

Comparison operator.

>=operator( Strictness&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangeint32_t validRange()staticinlineconstexpr<>

The range of valid values for Strictness.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Hole/Repair/Strictness"

The full path for this value.

name={}staticconstexprconstchar* "Strictness"

The name of this value.

static constexpr const char * description  {R"description(Level ofstrictness when considering if a point should be filled. A higher level of strictnessrequires a missing point to be surrounded by valid points on more sides inorder to be filled. Increasing this will fill fewer points, but it will be less likely tofill gaps that are not circular, for example between two edges.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Strictness&const value)inlinefriend::

Operator to serialize the value to a stream.

Noiseclass

Contains filters that can be used to clean up a noisy point cloud.

Public Functions

Noise()

Default constructor.

< Argstemplatetypename...>
Noise(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Noise then invoking set(args).

The provided arguments must be descendants of Noise. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Noise. These types can be provided:

< Argstemplatetypename...>
NoisecopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Noise object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Noise. These types can be provided:

Removal&removal()constinlineconst

Get Removal.

Removal&removal()inline

Get Removal.

Noise&set( Removal&const value)inline

Set Removal.

Noise&set( RemovalEnabled&const:: value)inline

Set Removal::Enabled.

Noise&set( RemovalThreshold&const:: value)inline

Set Removal::Threshold.

Repair&repair()constinlineconst

Get Repair.

Repair&repair()inline

Get Repair.

Noise&set( Repair&const value)inline

Set Repair.

Noise&set( RepairEnabled&const:: value)inline

Set Repair::Enabled.

Suppression&suppression()constinlineconst

Get Suppression.

Suppression&suppression()inline

Get Suppression.

Noise&set( Suppression&const value)inline

Set Suppression.

Noise&set( SuppressionEnabled&const:: value)inline

Set Suppression::Enabled.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Noise&const other)constbool

Equality operator.

!=operator( Noise&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Noise"

The full path for this value.

name={}staticconstexprconstchar* "Noise"

The name of this value.

static constexpr const char * description  {R"description(Containsfiltersthat can be used to clean up a noisy point cloud.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Noise&const value)inlinefriend::

Operator to send the value as string to a stream.

Removalclass

Discard points with signal-to-noise ratio (SNR) values below a threshold.

Public Functions

Removal()

Default constructor.

< Argstemplatetypename...>
Removal(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Removal then invoking set(args).

The provided arguments must be descendants of Removal. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Removal. These types can be provided:

< Argstemplatetypename...>
RemovalcopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Removal object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Removal. These types can be provided:

Enabled&isEnabled()constinlineconst

Get Enabled.

Enabled&isEnabled()inline

Get Enabled.

Removal&set( Enabled&const value)inline

Set Enabled.

Threshold&threshold()constinlineconst

Get Threshold.

Threshold&threshold()inline

Get Threshold.

Removal&set( Threshold&const value)inline

Set Threshold.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Removal&const other)constbool

Equality operator.

!=operator( Removal&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Noise/Removal"

The full path for this value.

name={}staticconstexprconstchar* "Removal"

The name of this value.

static constexpr const char * description  {R"description(Discard points with signal-to-noise ratio (SNR) values below a threshold.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Removal&const value)inlinefriend::

Operator to send the value as string to a stream.

Enabledclass

Enable or disable the SNR filter.

Public Types

ValueType=boolusing

The type of the underlying value.

Public Functions

Enabled()=default

Default constructor.

Enabled( boolvalue)inlineexplicitconstexpr

Constructor.

value()constbool

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Enabled&const other)constinlinebool

Comparison operator.

!=operator( Enabled&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetbool validValues()staticinline::<>

All valid values of Enabled.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Noise/Removal/Enabled"

The full path for this value.

name={}staticconstexprconstchar* "Enabled"

The name of this value.

static constexpr const char * description  {R"description(Enable or disable theSNRfilter.)description"}

The description for this value.

Enabledyesstaticconst

On/enabled.

Enablednostaticconst

Off/disabled.

Friends

stdostream&<<operator(stdostream&:: stream, Enabled&const value)inlinefriend::

Operator to serialize the value to a stream.

Thresholdclass

Discard points with signal-to-noise ratio (SNR) below the given value.

Public Types

ValueType=doubleusing

The type of the underlying value.

Public Functions

Threshold()=default

Default constructor.

Threshold( doublevalue)inlineexplicitconstexpr

Constructor.

value()constdouble

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Threshold&const other)constinlinebool

Comparison operator.

!=operator( Threshold&const other)constinlinebool

Comparison operator.

<operator( Threshold&const other)constinlinebool

Comparison operator.

>operator( Threshold&const other)constinlinebool

Comparison operator.

<=operator( Threshold&const other)constinlinebool

Comparison operator.

>=operator( Threshold&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangedouble validRange()staticinlineconstexpr<>

The range of valid values for Threshold.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Noise/Removal/Threshold"

The full path for this value.

name={}staticconstexprconstchar* "Threshold"

The name of this value.

static constexpr const char * description  {R"description(Discard points with signal-to-noise ratio (SNR) below the given value.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Threshold&const value)inlinefriend::

Operator to serialize the value to a stream.

Repairclass

Get better surface coverage by repairing regions of missing data due to noisy points.

Consider disabling this filter if you require all points in your point cloud to be of high confidence.

Public Functions

Repair()

Default constructor.

< Argstemplatetypename...>
Repair(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Repair then invoking set(args).

The provided arguments must be descendants of Repair. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Repair. These types can be provided:

< Argstemplatetypename...>
RepaircopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Repair object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Repair. These types can be provided:

Enabled&isEnabled()constinlineconst

Get Enabled.

Enabled&isEnabled()inline

Get Enabled.

Repair&set( Enabled&const value)inline

Set Enabled.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Repair&const other)constbool

Equality operator.

!=operator( Repair&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Noise/Repair"

The full path for this value.

name={}staticconstexprconstchar* "Repair"

The name of this value.

static constexpr const char * description  {R"description(Get better surface coverage by repairing regions of missing data due to noisy points.Consider disabling this filter if you require all points in your point cloud to be ofhigh confidence.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Repair&const value)inlinefriend::

Operator to send the value as string to a stream.

Enabledclass

Enable or disable noise repair.

Public Types

ValueType=boolusing

The type of the underlying value.

Public Functions

Enabled()=default

Default constructor.

Enabled( boolvalue)inlineexplicitconstexpr

Constructor.

value()constbool

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Enabled&const other)constinlinebool

Comparison operator.

!=operator( Enabled&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetbool validValues()staticinline::<>

All valid values of Enabled.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Noise/Repair/Enabled"

The full path for this value.

name={}staticconstexprconstchar* "Enabled"

The name of this value.

static constexpr const char * description  {R"description(Enable or disablenoiserepair.)description"}

The description for this value.

Enabledyesstaticconst

On/enabled.

Enablednostaticconst

Off/disabled.

Friends

stdostream&<<operator(stdostream&:: stream, Enabled&const value)inlinefriend::

Operator to serialize the value to a stream.

Suppressionclass

Reduce noise and outliers in the point cloud.

This filter can also be used to reduce ripple effects caused by interreflections. Consider disabling this filter if you need to distinguish very fine details and thus need to avoid any smoothing effects.

Public Functions

Suppression()

Default constructor.

< Argstemplatetypename...>
Suppression(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Suppression then invoking set(args).

The provided arguments must be descendants of Suppression. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Suppression. These types can be provided:

< Argstemplatetypename...>
SuppressioncopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Suppression object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Suppression. These types can be provided:

Enabled&isEnabled()constinlineconst

Get Enabled.

Enabled&isEnabled()inline

Get Enabled.

Suppression&set( Enabled&const value)inline

Set Enabled.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Suppression&const other)constbool

Equality operator.

!=operator( Suppression&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Noise/Suppression"

The full path for this value.

name={}staticconstexprconstchar* "Suppression"

The name of this value.

static constexpr const char * description  {R"description(Reducenoiseand outliers in the point cloud. This filter can also be used to reduceripple effects caused by interreflections. Consider disabling this filter if you need todistinguish very fine details and thus need to avoid anysmoothingeffects.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Suppression&const value)inlinefriend::

Operator to send the value as string to a stream.

Enabledclass

Enable or disable noise suppression.

Public Types

ValueType=boolusing

The type of the underlying value.

Public Functions

Enabled()=default

Default constructor.

Enabled( boolvalue)inlineexplicitconstexpr

Constructor.

value()constbool

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Enabled&const other)constinlinebool

Comparison operator.

!=operator( Enabled&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetbool validValues()staticinline::<>

All valid values of Enabled.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Noise/Suppression/Enabled"

The full path for this value.

name={}staticconstexprconstchar* "Enabled"

The name of this value.

static constexpr const char * description  {R"description(Enable or disablenoisesuppression.)description"}

The description for this value.

Enabledyesstaticconst

On/enabled.

Enablednostaticconst

Off/disabled.

Friends

stdostream&<<operator(stdostream&:: stream, Enabled&const value)inlinefriend::

Operator to serialize the value to a stream.

Outlierclass

Contains a filter that removes points with large Euclidean distance to neighboring points.

Public Functions

Outlier()

Default constructor.

< Argstemplatetypename...>
Outlier(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Outlier then invoking set(args).

The provided arguments must be descendants of Outlier. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Outlier. These types can be provided:

< Argstemplatetypename...>
OutliercopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Outlier object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Outlier. These types can be provided:

Removal&removal()constinlineconst

Get Removal.

Removal&removal()inline

Get Removal.

Outlier&set( Removal&const value)inline

Set Removal.

Outlier&set( RemovalEnabled&const:: value)inline

Set Removal::Enabled.

Outlier&set( RemovalThreshold&const:: value)inline

Set Removal::Threshold.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Outlier&const other)constbool

Equality operator.

!=operator( Outlier&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Outlier"

The full path for this value.

name={}staticconstexprconstchar* "Outlier"

The name of this value.

static constexpr const char * description  {R"description(Contains a filter that removes points with large Euclidean distance to neighboring points.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Outlier&const value)inlinefriend::

Operator to send the value as string to a stream.

Removalclass

Discard point if Euclidean distance to neighboring points is above a threshold.

Public Functions

Removal()

Default constructor.

< Argstemplatetypename...>
Removal(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Removal then invoking set(args).

The provided arguments must be descendants of Removal. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Removal. These types can be provided:

< Argstemplatetypename...>
RemovalcopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Removal object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Removal. These types can be provided:

Enabled&isEnabled()constinlineconst

Get Enabled.

Enabled&isEnabled()inline

Get Enabled.

Removal&set( Enabled&const value)inline

Set Enabled.

Threshold&threshold()constinlineconst

Get Threshold.

Threshold&threshold()inline

Get Threshold.

Removal&set( Threshold&const value)inline

Set Threshold.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Removal&const other)constbool

Equality operator.

!=operator( Removal&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Outlier/Removal"

The full path for this value.

name={}staticconstexprconstchar* "Removal"

The name of this value.

static constexpr const char * description  {R"description(Discard point if Euclidean distance to neighboring points is above a threshold.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Removal&const value)inlinefriend::

Operator to send the value as string to a stream.

Enabledclass

Enable or disable the outlier filter.

Public Types

ValueType=boolusing

The type of the underlying value.

Public Functions

Enabled()=default

Default constructor.

Enabled( boolvalue)inlineexplicitconstexpr

Constructor.

value()constbool

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Enabled&const other)constinlinebool

Comparison operator.

!=operator( Enabled&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetbool validValues()staticinline::<>

All valid values of Enabled.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Outlier/Removal/Enabled"

The full path for this value.

name={}staticconstexprconstchar* "Enabled"

The name of this value.

static constexpr const char * description  {R"description(Enable or disable theoutlierfilter.)description"}

The description for this value.

Enabledyesstaticconst

On/enabled.

Enablednostaticconst

Off/disabled.

Friends

stdostream&<<operator(stdostream&:: stream, Enabled&const value)inlinefriend::

Operator to serialize the value to a stream.

Thresholdclass

Discard point if Euclidean distance to neighboring points is above the given value.

Public Types

ValueType=doubleusing

The type of the underlying value.

Public Functions

Threshold()=default

Default constructor.

Threshold( doublevalue)inlineexplicitconstexpr

Constructor.

value()constdouble

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Threshold&const other)constinlinebool

Comparison operator.

!=operator( Threshold&const other)constinlinebool

Comparison operator.

<operator( Threshold&const other)constinlinebool

Comparison operator.

>operator( Threshold&const other)constinlinebool

Comparison operator.

<=operator( Threshold&const other)constinlinebool

Comparison operator.

>=operator( Threshold&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangedouble validRange()staticinlineconstexpr<>

The range of valid values for Threshold.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Outlier/Removal/Threshold"

The full path for this value.

name={}staticconstexprconstchar* "Threshold"

The name of this value.

static constexpr const char * description  {R"description(Discard point if Euclidean distance to neighboring points is above the given value.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Threshold&const value)inlinefriend::

Operator to serialize the value to a stream.

Reflectionclass

Contains a filter that removes points likely introduced by reflections (useful for shiny materials).

Public Functions

Reflection()

Default constructor.

< Argstemplatetypename...>
Reflection(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Reflection then invoking set(args).

The provided arguments must be descendants of Reflection. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Reflection. These types can be provided:

< Argstemplatetypename...>
ReflectioncopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Reflection object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Reflection. These types can be provided:

Removal&removal()constinlineconst

Get Removal.

Removal&removal()inline

Get Removal.

Reflection&set( Removal&const value)inline

Set Removal.

Reflection&set( RemovalEnabled&const:: value)inline

Set Removal::Enabled.

Reflection&set( RemovalMode&const:: value)inline

Set Removal::Mode.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Reflection&const other)constbool

Equality operator.

!=operator( Reflection&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Reflection"

The full path for this value.

name={}staticconstexprconstchar* "Reflection"

The name of this value.

static constexpr const char * description  {R"description(Contains a filter that removes points likely introduced by reflections (useful for shiny materials).)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Reflection&const value)inlinefriend::

Operator to send the value as string to a stream.

Removalclass

Discard points likely introduced by reflections (useful for shiny materials).

Public Functions

Removal()

Default constructor.

< Argstemplatetypename...>
Removal(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Removal then invoking set(args).

The provided arguments must be descendants of Removal. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Removal. These types can be provided:

< Argstemplatetypename...>
RemovalcopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Removal object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Removal. These types can be provided:

Enabled&isEnabled()constinlineconst

Get Enabled.

Enabled&isEnabled()inline

Get Enabled.

Removal&set( Enabled&const value)inline

Set Enabled.

Mode&mode()constinlineconst

Get Mode.

Mode&mode()inline

Get Mode.

Removal&set( Mode&const value)inline

Set Mode.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Removal&const other)constbool

Equality operator.

!=operator( Removal&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Reflection/Removal"

The full path for this value.

name={}staticconstexprconstchar* "Removal"

The name of this value.

static constexpr const char * description  {R"description(Discard points likely introduced by reflections (useful for shiny materials).)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Removal&const value)inlinefriend::

Operator to send the value as string to a stream.

Enabledclass

Enable or disable the reflection filter. Note that this filter is computationally intensive and may affect the frame rate.

Public Types

ValueType=boolusing

The type of the underlying value.

Public Functions

Enabled()=default

Default constructor.

Enabled( boolvalue)inlineexplicitconstexpr

Constructor.

value()constbool

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Enabled&const other)constinlinebool

Comparison operator.

!=operator( Enabled&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetbool validValues()staticinline::<>

All valid values of Enabled.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Reflection/Removal/Enabled"

The full path for this value.

name={}staticconstexprconstchar* "Enabled"

The name of this value.

static constexpr const char * description  {R"description(Enable or disable thereflection filter. Note that this filter is computationally intensive and may affect the framerate.)description"}

The description for this value.

Enabledyesstaticconst

On/enabled.

Enablednostaticconst

Off/disabled.

Friends

stdostream&<<operator(stdostream&:: stream, Enabled&const value)inlinefriend::

Operator to serialize the value to a stream.

Modeclass

The reflection filter has two modes: Local and Global.

Global mode is generally better at removing outlier points in the point cloud, whereas Local mode preserves more 3D data on thin objects far from the background.

Additionally, Local mode behaves slightly differently depending on the Engine used. With Phase engine or Stripe engine, Local mode will process faster than Global mode and remove more reflection artifacts. Also with Stripe engine, Local mode might reduce the number of points resolved on shiny and reflective objects. With Omni engine, Local mode will reduce the amount of artifacts in low projector signal regions, but might also reduce coverage on surfaces with low projector signal.

It is advised to use the Cluster filter together with Local mode.

Public Types

ValueTypeenumclass

The type of the underlying value.

Values:

globalenumerator
localenumerator

Public Functions

Mode()=default

Default constructor.

Mode(ValueTypevalue )inlineexplicitconstexpr

Constructor.

ValueTypevalue()const

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Mode&const other)constinlinebool

Comparison operator.

!=operator( Mode&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetValueType validValues()staticinline::<>

All valid values of Mode.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Reflection/Removal/Mode"

The full path for this value.

name={}staticconstexprconstchar* "Mode"

The name of this value.

static constexpr const char * description  {R"description(Thereflection filter has two modes: Local and Global. Global modeis generally better atremovingoutlier points in the point cloud, whereas Local modepreserves more 3D data onthin objects far from the background.Additionally, Localmode behaves slightly differently depending on the Engineused. WithPhaseengine or Stripe engine, Local mode will process faster than Global modeand removemorereflection artifacts. Also with Stripe engine, Local modemight reduce the number ofpoints resolved on shiny and reflective objects. With Omniengine, Local modewill reducethe amount of artifacts in low projector signal regions, but might also reduce coverage onsurfaces with low projector signal.It is advised to use theClusterfilter together with Local mode.)description"}

The description for this value.

Modeglobalstaticconst

global

Modelocalstaticconst

local

Friends

stdostream&<<operator(stdostream&:: stream, ModeValueType&const:: value)inlinefriend::

Operator to serialize ValueType to a stream.

stdostream&<<operator(stdostream&:: stream, Mode&const value)inlinefriend::

Operator to serialize the value to a stream.

Smoothingclass

Smoothing filters.

Public Functions

Smoothing()

Default constructor.

< Argstemplatetypename...>
Smoothing(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Smoothing then invoking set(args).

The provided arguments must be descendants of Smoothing. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Smoothing. These types can be provided:

< Argstemplatetypename...>
SmoothingcopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Smoothing object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Smoothing. These types can be provided:

Gaussian&gaussian()constinlineconst

Get Gaussian.

Gaussian&gaussian()inline

Get Gaussian.

Smoothing&set( Gaussian&const value)inline

Set Gaussian.

Smoothing&set( GaussianEnabled&const:: value)inline

Set Gaussian::Enabled.

Smoothing&set( GaussianSigma&const:: value)inline

Set Gaussian::Sigma.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Smoothing&const other)constbool

Equality operator.

!=operator( Smoothing&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Smoothing"

The full path for this value.

name={}staticconstexprconstchar* "Smoothing"

The name of this value.

static constexpr const char * description   = { R"description(Smoothing filters.)description" }

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Smoothing&const value)inlinefriend::

Operator to send the value as string to a stream.

Gaussianclass

Gaussian smoothing of the point cloud.

Public Functions

Gaussian()

Default constructor.

< Argstemplatetypename...>
Gaussian(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Gaussian then invoking set(args).

The provided arguments must be descendants of Gaussian. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Gaussian. These types can be provided:

< Argstemplatetypename...>
GaussiancopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Gaussian object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Gaussian. These types can be provided:

Enabled&isEnabled()constinlineconst

Get Enabled.

Enabled&isEnabled()inline

Get Enabled.

Gaussian&set( Enabled&const value)inline

Set Enabled.

Sigma&sigma()constinlineconst

Get Sigma.

Sigma&sigma()inline

Get Sigma.

Gaussian&set( Sigma&const value)inline

Set Sigma.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Gaussian&const other)constbool

Equality operator.

!=operator( Gaussian&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Smoothing/Gaussian"

The full path for this value.

name={}staticconstexprconstchar* "Gaussian"

The name of this value.

static constexpr const char * description  {R"description(Gaussian smoothingof the point cloud.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Gaussian&const value)inlinefriend::

Operator to send the value as string to a stream.

Enabledclass

Enable or disable the smoothing filter.

Public Types

ValueType=boolusing

The type of the underlying value.

Public Functions

Enabled()=default

Default constructor.

Enabled( boolvalue)inlineexplicitconstexpr

Constructor.

value()constbool

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Enabled&const other)constinlinebool

Comparison operator.

!=operator( Enabled&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetbool validValues()staticinline::<>

All valid values of Enabled.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Smoothing/Gaussian/Enabled"

The full path for this value.

name={}staticconstexprconstchar* "Enabled"

The name of this value.

static constexpr const char * description  {R"description(Enable or disable thesmoothingfilter.)description"}

The description for this value.

Enabledyesstaticconst

On/enabled.

Enablednostaticconst

Off/disabled.

Friends

stdostream&<<operator(stdostream&:: stream, Enabled&const value)inlinefriend::

Operator to serialize the value to a stream.

Sigmaclass

Higher values result in smoother point clouds (Standard deviation of the filter coefficients).

Public Types

ValueType=doubleusing

The type of the underlying value.

Public Functions

Sigma()=default

Default constructor.

Sigma( doublevalue)inlineexplicitconstexpr

Constructor.

value()constdouble

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Sigma&const other)constinlinebool

Comparison operator.

!=operator( Sigma&const other)constinlinebool

Comparison operator.

<operator( Sigma&const other)constinlinebool

Comparison operator.

>operator( Sigma&const other)constinlinebool

Comparison operator.

<=operator( Sigma&const other)constinlinebool

Comparison operator.

>=operator( Sigma&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangedouble validRange()staticinlineconstexpr<>

The range of valid values for Sigma.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Filters/Smoothing/Gaussian/Sigma"

The full path for this value.

name={}staticconstexprconstchar* "Sigma"

The name of this value.

static constexpr const char * description  {R"description(Higher values result in smoother point clouds (Standard deviation of the filter coefficients).)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Sigma&const value)inlinefriend::

Operator to serialize the value to a stream.

Resamplingclass

Settings for changing the output resolution of the point cloud.

Public Functions

Resampling()

Default constructor.

< Argstemplatetypename...>
Resampling(Args& &...args)inlineexplicit

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Resampling then invoking set(args).

The provided arguments must be descendants of Resampling. These types can be provided:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Resampling. These types can be provided:

< Argstemplatetypename...>
ResamplingcopyWith(Args& &...args)constinline

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Resampling object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Resampling. These types can be provided:

Mode&mode()constinlineconst

Get Mode.

Mode&mode()inline

Get Mode.

Resampling&set( Mode&const value)inline

Set Mode.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

Run the given function on each direct member with the value of the member as parameter.

< Ftemplatetypename>
forEach( F&const f)inlinevoid

Run the given function on each direct member with the value of the member as parameter.

==operator( Resampling&const other)constbool

Equality operator.

!=operator( Resampling&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Resampling"

The full path for this value.

name={}staticconstexprconstchar* "Resampling"

The name of this value.

static constexpr const char * description  {R"description(Settingsfor changing the output resolution of the point cloud.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Resampling&const value)inlinefriend::

Operator to send the value as string to a stream.

Modeclass

Setting for upsampling or downsampling the point cloud data by some factor.

This operation is performed after all other processing has been completed.

Downsampling is used to reduce the number of points in the point cloud. This is done by combining each 2x2 or 4x4 group of pixels in the original point cloud into one pixel in a new point cloud. This downsample functionality is identical to the downsample method on the PointCloud class. The averaging process reduces noise in the point cloud, but it will not improve capture speed. To improve capture speed, consider using the subsampling modes found in Settings/Sampling/Pixel.

Upsampling is used to increase the number of points in the point cloud. It is not possible to upsample beyond the full resolution of the camera, so upsampling may only be used in combination with the subsampling modes found in Settings/Sampling/Pixel. For example, one may combine blueSubsample2x2 with upsample2x2 to obtain a point cloud that matches a full resolution 2D capture, while retaining the speed benefits of capturing the point cloud with blueSubsample2x2. Upsampling is achieved by expanding pixels in the original point cloud into groups of 2x2 or 4x4 pixels in a new point cloud. Where possible, values are filled at the new points based on an interpolation of the surrounding original points. The points in the new point cloud that correspond to points in the original point cloud are left unchanged. Note that upsampling will lead to four (upsample2x2) or sixteen (upsample4x4) times as many pixels in the point cloud compared to no upsampling, so users should be aware of increased computational cost related to copying and analyzing this data.

Public Types

ValueTypeenumclass

The type of the underlying value.

Values:

disabledenumerator
downsample2x2enumerator
downsample4x4enumerator
upsample2x2enumerator
upsample4x4enumerator

Public Functions

Mode()=default

Default constructor.

Mode(ValueTypevalue )inlineexplicitconstexpr

Constructor.

ValueTypevalue()const

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( Mode&const other)constinlinebool

Comparison operator.

!=operator( Mode&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetValueType validValues()staticinline::<>

All valid values of Mode.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Processing/Resampling/Mode"

The full path for this value.

name={}staticconstexprconstchar* "Mode"

The name of this value.

static constexpr const char * description  {R"description(Setting for upsampling or downsampling the point cloud data by some factor. This operationis performed after all otherprocessinghas been completed.Downsampling is used to reduce the number of points in the point cloud. This is done bycombining each 2x2 or 4x4 group of pixels in the original point cloud into one pixel ina new point cloud. This downsample functionality is identical to the downsample methodon thePointCloudclass. The averaging process reduces noise in the point cloud, but itwill not improve capture speed. To improve capture speed, consider using the subsamplingmodes found inSettings/Sampling/Pixel.Upsampling is used to increase the number of points in the point cloud. It is not possibleto upsample beyond the full resolution of the camera, so upsampling may only be used incombination with the subsampling modes found inSettings/Sampling/Pixel. For example, one maycombine blueSubsample2x2 withupsample2x2to obtain a point cloud that matches a fullresolution 2D capture, while retaining the speed benefits of capturing the point cloud withblueSubsample2x2. Upsampling is achieved by expanding pixels in the original point cloud intogroups of 2x2 or 4x4 pixels in a new point cloud. Where possible, values are filled at thenew points based on an interpolation of the surrounding original points. The points in thenew point cloud that correspond to points in the original point cloud are left unchanged.Note that upsampling will lead to four (upsample2x2) or sixteen (upsample4x4) times as manypixels in the point cloud compared to no upsampling, so users should be aware of increasedcomputational cost related to copying and analyzing this data.)description"}

The description for this value.

Modedisabledstaticconst

disabled

Modedownsample2x2staticconst

downsample2x2

Modedownsample4x4staticconst

downsample4x4

Modeupsample2x2staticconst

upsample2x2

Modeupsample4x4staticconst

upsample4x4

Friends

stdostream&<<operator(stdostream&:: stream, ModeValueType&const:: value)inlinefriend::

Operator to serialize ValueType to a stream.

stdostream&<<operator(stdostream&:: stream, Mode&const value)inlinefriend::

Operator to serialize the value to a stream.

ProcessingGroupstruct

Settings related to processing of a capture, including filters and color balance.

Public Functions

ProcessingGroup()inline

Constructor.

ProcessingGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

ProcessingGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

ColorGroupstruct

Color settings.

These settings are deprecated as of SDK 2.14. These settings will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

Public Functions

ColorGroup()inline

Constructor.

ColorGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

ColorGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

SystemNullabledouble Gamma::<>

Gamma applied to the color values.

Gamma less than 1 makes the colors brighter, while gamma greater than 1 makes the colors darker.

This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

BalanceGroupstruct

Color balance settings.

Public Functions

BalanceGroup()inline

Constructor.

BalanceGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

BalanceGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

SystemNullabledouble Blue::<>

Digital gain applied to blue channel.

This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

SystemNullabledouble Green::<>

Digital gain applied to green channel.

This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

SystemNullabledouble Red::<>

Digital gain applied to red channel.

This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

ExperimentalGroupstruct

Experimental color settings. These may be renamed, moved or deleted in the future.

Public Types

ModeOption:stdunderlying_typeZividSettingsProcessingColorExperimentalModeValueType::typeenumclass ::<::::::::::::>

This setting controls how the color image is computed.

automatic is the default option. automatic is identical to useFirstAcquisition for single-acquisition captures and multi-acquisition captures when all the acquisitions have identical (duplicated) acquisition settings. automatic is identical to toneMapping for multi-acquisition HDR captures with differing acquisition settings.

useFirstAcquisition uses the color data acquired from the first acquisition provided. If the capture consists of more than one acquisition, then the remaining acquisitions are not used for the color image. No tone mapping is performed. This option provides the most control of the color image, and the color values will be consistent over repeated captures with the same settings.

toneMapping uses all the acquisitions to create one merged and normalized color image. For HDR captures the dynamic range of the captured images is usually higher than the 8-bit color image range. toneMapping will map the HDR color data to the 8-bit color output range by applying a scaling factor. toneMapping can also be used for single-acquisition captures to normalize the captured color image to the full 8-bit output. Note that when using toneMapping mode the color values can be inconsistent over repeated captures if you move, add or remove objects in the scene. For the most control over the colors, select the useFirstAcquisition mode.

This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

Values:

Automaticenumerator
UseFirstAcquisitionenumerator
ToneMappingenumerator

Public Functions

ExperimentalGroup()inline

Constructor.

ExperimentalGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

ExperimentalGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

SystemNullableModeOption Mode::<>

This setting controls how the color image is computed.

automatic is the default option. automatic is identical to useFirstAcquisition for single-acquisition captures and multi-acquisition captures when all the acquisitions have identical (duplicated) acquisition settings. automatic is identical to toneMapping for multi-acquisition HDR captures with differing acquisition settings.

useFirstAcquisition uses the color data acquired from the first acquisition provided. If the capture consists of more than one acquisition, then the remaining acquisitions are not used for the color image. No tone mapping is performed. This option provides the most control of the color image, and the color values will be consistent over repeated captures with the same settings.

toneMapping uses all the acquisitions to create one merged and normalized color image. For HDR captures the dynamic range of the captured images is usually higher than the 8-bit color image range. toneMapping will map the HDR color data to the 8-bit color output range by applying a scaling factor. toneMapping can also be used for single-acquisition captures to normalize the captured color image to the full 8-bit output. Note that when using toneMapping mode the color values can be inconsistent over repeated captures if you move, add or remove objects in the scene. For the most control over the colors, select the useFirstAcquisition mode.

This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

FiltersGroupstruct

Filter settings.

Public Functions

FiltersGroup()inline

Constructor.

FiltersGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

FiltersGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

ClusterGroupstruct

Removes floating points and isolated clusters from the point cloud.

Public Functions

ClusterGroup()inline

Constructor.

ClusterGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

ClusterGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

RemovalGroupstruct

Cluster removal filter.

Public Functions

RemovalGroup()inline

Constructor.

RemovalGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

RemovalGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

SystemNullablebool Enabled::<>

Enable or disable cluster removal.

SystemNullabledouble MaxNeighborDistance::<>

Maximum normalized distance between neighboring points that are still classified as belonging to the same cluster.

The default value is optimal for most scenes. On messy scenes turning this setting down helps removing more bad points.

SystemNullabledouble MinArea::<>

Clusters with area below this threshold are removed by the filter.

The area is given in mm^2.

ExperimentalGroupstruct

Experimental filters. These may be renamed, moved or deleted in the future.

Public Functions

ExperimentalGroup()inline

Constructor.

ExperimentalGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

ExperimentalGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

ContrastDistortionGroupstruct

Corrects artifacts that appear when imaging scenes with large texture gradients or high contrast.

These artifacts are caused by blurring in the lens. The filter works best when aperture values are chosen such that the camera has quite good focus. The filter also supports removing the points that experience a large correction.

Public Functions

ContrastDistortionGroup()inline

Constructor.

ContrastDistortionGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

ContrastDistortionGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

CorrectionGroupstruct

Contrast distortion correction filter.

Public Functions

CorrectionGroup()inline

Constructor.

CorrectionGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

CorrectionGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

SystemNullablebool Enabled::<>

Enable or disable contrast distortion correction.

SystemNullabledouble Strength::<>

Strength of correction. Higher values give more correction.

RemovalGroupstruct

Contrast distortion removal filter.

Public Functions

RemovalGroup()inline

Constructor.

RemovalGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

RemovalGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

SystemNullablebool Enabled::<>

Enable or disable contrast distortion removal.

SystemNullabledouble Threshold::<>

Threshold for removal. Higher values remove more points.

HoleGroupstruct

Contains filters that can be used to deal with holes in the point cloud.

Public Functions

HoleGroup()inline

Constructor.

HoleGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

HoleGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

RepairGroupstruct

Fills in point cloud holes by interpolating remaining surrounding points.

Public Functions

RepairGroup()inline

Constructor.

RepairGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

RepairGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

SystemNullablebool Enabled::<>

Enable or disable hole repair.

SystemNullabledouble HoleSize::<>

Relative diameter of holes to fill.

Increasing this will fill more points, but require more computation time. The maximum allowed hole size scales with distance, so that we allow filling larger holes at greater distances, measured in mm.

SystemNullableint32_t Strictness::<>

Level of strictness when considering if a point should be filled.

A higher level of strictness requires a missing point to be surrounded by valid points on more sides in order to be filled. Increasing this will fill fewer points, but it will be less likely to fill gaps that are not circular, for example between two edges.

NoiseGroupstruct

Contains filters that can be used to clean up a noisy point cloud.

Public Functions

NoiseGroup()inline

Constructor.

NoiseGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

NoiseGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

RemovalGroupstruct

Discard points with signal-to-noise ratio (SNR) values below a threshold.

Public Functions

RemovalGroup()inline

Constructor.

RemovalGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

RemovalGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

SystemNullablebool Enabled::<>

Enable or disable the SNR filter.

SystemNullabledouble Threshold::<>

Discard points with signal-to-noise ratio (SNR) below the given value.

RepairGroupstruct

Get better surface coverage by repairing regions of missing data due to noisy points.

Consider disabling this filter if you require all points in your point cloud to be of high confidence.

Public Functions

RepairGroup()inline

Constructor.

RepairGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

RepairGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

SystemNullablebool Enabled::<>

Enable or disable noise repair.

SuppressionGroupstruct

Reduce noise and outliers in the point cloud.

This filter can also be used to reduce ripple effects caused by interreflections. Consider disabling this filter if you need to distinguish very fine details and thus need to avoid any smoothing effects.

Public Functions

SuppressionGroup()inline

Constructor.

SuppressionGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

SuppressionGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

SystemNullablebool Enabled::<>

Enable or disable noise suppression.

OutlierGroupstruct

Contains a filter that removes points with large Euclidean distance to neighboring points.

Public Functions

OutlierGroup()inline

Constructor.

OutlierGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

OutlierGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

RemovalGroupstruct

Discard point if Euclidean distance to neighboring points is above a threshold.

Public Functions

RemovalGroup()inline

Constructor.

RemovalGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

RemovalGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

SystemNullablebool Enabled::<>

Enable or disable the outlier filter.

SystemNullabledouble Threshold::<>

Discard point if Euclidean distance to neighboring points is above the given value.

ReflectionGroupstruct

Contains a filter that removes points likely introduced by reflections (useful for shiny materials).

Public Functions

ReflectionGroup()inline

Constructor.

ReflectionGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

ReflectionGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

RemovalGroupstruct

Discard points likely introduced by reflections (useful for shiny materials).

Public Types

ModeOption:stdunderlying_typeZividSettingsProcessingFiltersReflectionRemovalModeValueType::typeenumclass ::<::::::::::::::>

The reflection filter has two modes: Local and Global.

Global mode is generally better at removing outlier points in the point cloud, whereas Local mode preserves more 3D data on thin objects far from the background.

Additionally, Local mode behaves slightly differently depending on the Engine used. With Phase engine or Stripe engine, Local mode will process faster than Global mode and remove more reflection artifacts. Also with Stripe engine, Local mode might reduce the number of points resolved on shiny and reflective objects. With Omni engine, Local mode will reduce the amount of artifacts in low projector signal regions, but might also reduce coverage on surfaces with low projector signal.

It is advised to use the Cluster filter together with Local mode.

Values:

Globalenumerator
Localenumerator

Public Functions

RemovalGroup()inline

Constructor.

RemovalGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

RemovalGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

SystemNullablebool Enabled::<>

Enable or disable the reflection filter. Note that this filter is computationally intensive and may affect the frame rate.

SystemNullableModeOption Mode::<>

The reflection filter has two modes: Local and Global.

Global mode is generally better at removing outlier points in the point cloud, whereas Local mode preserves more 3D data on thin objects far from the background.

Additionally, Local mode behaves slightly differently depending on the Engine used. With Phase engine or Stripe engine, Local mode will process faster than Global mode and remove more reflection artifacts. Also with Stripe engine, Local mode might reduce the number of points resolved on shiny and reflective objects. With Omni engine, Local mode will reduce the amount of artifacts in low projector signal regions, but might also reduce coverage on surfaces with low projector signal.

It is advised to use the Cluster filter together with Local mode.

SmoothingGroupstruct

Smoothing filters.

Public Functions

SmoothingGroup()inline

Constructor.

SmoothingGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

SmoothingGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

GaussianGroupstruct

Gaussian smoothing of the point cloud.

Public Functions

GaussianGroup()inline

Constructor.

GaussianGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

GaussianGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

SystemNullablebool Enabled::<>

Enable or disable the smoothing filter.

SystemNullabledouble Sigma::<>

Higher values result in smoother point clouds (Standard deviation of the filter coefficients).

ResamplingGroupstruct

Settings for changing the output resolution of the point cloud.

Public Types

ModeOption:stdunderlying_typeZividSettingsProcessingResamplingModeValueType::typeenumclass ::<::::::::::>

Setting for upsampling or downsampling the point cloud data by some factor.

This operation is performed after all other processing has been completed.

Downsampling is used to reduce the number of points in the point cloud. This is done by combining each 2x2 or 4x4 group of pixels in the original point cloud into one pixel in a new point cloud. This downsample functionality is identical to the downsample method on the PointCloud class. The averaging process reduces noise in the point cloud, but it will not improve capture speed. To improve capture speed, consider using the subsampling modes found in Settings/Sampling/Pixel.

Upsampling is used to increase the number of points in the point cloud. It is not possible to upsample beyond the full resolution of the camera, so upsampling may only be used in combination with the subsampling modes found in Settings/Sampling/Pixel. For example, one may combine blueSubsample2x2 with upsample2x2 to obtain a point cloud that matches a full resolution 2D capture, while retaining the speed benefits of capturing the point cloud with blueSubsample2x2. Upsampling is achieved by expanding pixels in the original point cloud into groups of 2x2 or 4x4 pixels in a new point cloud. Where possible, values are filled at the new points based on an interpolation of the surrounding original points. The points in the new point cloud that correspond to points in the original point cloud are left unchanged. Note that upsampling will lead to four (upsample2x2) or sixteen (upsample4x4) times as many pixels in the point cloud compared to no upsampling, so users should be aware of increased computational cost related to copying and analyzing this data.

Values:

Disabledenumerator
Downsample2x2enumerator
Downsample4x4enumerator
Upsample2x2enumerator
Upsample4x4enumerator

Public Functions

ResamplingGroup()inline

Constructor.

ResamplingGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

ResamplingGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

SystemNullableModeOption Mode::<>

Setting for upsampling or downsampling the point cloud data by some factor.

This operation is performed after all other processing has been completed.

Downsampling is used to reduce the number of points in the point cloud. This is done by combining each 2x2 or 4x4 group of pixels in the original point cloud into one pixel in a new point cloud. This downsample functionality is identical to the downsample method on the PointCloud class. The averaging process reduces noise in the point cloud, but it will not improve capture speed. To improve capture speed, consider using the subsampling modes found in Settings/Sampling/Pixel.

Upsampling is used to increase the number of points in the point cloud. It is not possible to upsample beyond the full resolution of the camera, so upsampling may only be used in combination with the subsampling modes found in Settings/Sampling/Pixel. For example, one may combine blueSubsample2x2 with upsample2x2 to obtain a point cloud that matches a full resolution 2D capture, while retaining the speed benefits of capturing the point cloud with blueSubsample2x2. Upsampling is achieved by expanding pixels in the original point cloud into groups of 2x2 or 4x4 pixels in a new point cloud. Where possible, values are filled at the new points based on an interpolation of the surrounding original points. The points in the new point cloud that correspond to points in the original point cloud are left unchanged. Note that upsampling will lead to four (upsample2x2) or sixteen (upsample4x4) times as many pixels in the point cloud compared to no upsampling, so users should be aware of increased computational cost related to copying and analyzing this data.

classProcessing(
:Settings | None=Nonecolor ,
:Settings | None=Nonefilters ,
:Settings | None=Noneresampling ,
)

Settings related to processing of a capture, including filters and color balance.

Initialization

classColor(
:float | int | None=Nonegamma ,
:Settings | None=Nonebalance ,
:Settings | None=Noneexperimental ,
)

Color settings. These settings are deprecated as of SDK 2.14. These settings will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

Initialization

classBalance(
:float | int | None=Noneblue ,
:float | int | None=Nonegreen ,
:float | int | None=Nonered ,
)

Color balance settings.

Initialization

propertyblue

Digital gain applied to blue channel. This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

propertygreen

Digital gain applied to green channel. This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

propertyred

Digital gain applied to red channel. This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

classExperimental(:str | None=Nonemode )

Experimental color settings. These may be renamed, moved or deleted in the future.

Initialization

classMode

This setting controls how the color image is computed. automatic is the default option. automatic is identical to useFirstAcquisition for single-acquisition captures and multi-acquisition captures when all the acquisitions have identical (duplicated) acquisition settings. automatic is identical to toneMapping for multi-acquisition HDR captures with differing acquisition settings. useFirstAcquisition uses the color data acquired from the first acquisition provided. If the capture consists of more than one acquisition, then the remaining acquisitions are not used for the color image. No tone mapping is performed. This option provides the most control of the color image, and the color values will be consistent over repeated captures with the same settings. toneMapping uses all the acquisitions to create one merged and normalized color image. For HDR captures the dynamic range of the captured images is usually higher than the 8-bit color image range. toneMapping will map the HDR color data to the 8-bit color output range by applying a scaling factor. toneMapping can also be used for single-acquisition captures to normalize the captured color image to the full 8-bit output. Note that when using toneMapping mode the color values can be inconsistent over repeated captures if you move, add or remove objects in the scene. For the most control over the colors, select the useFirstAcquisition mode. This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

automatic='automatic'
toneMapping='toneMapping'
useFirstAcquisition='useFirstAcquisition'
classmethodvalid_values()

All valid values of Mode

propertymode

This setting controls how the color image is computed. automatic is the default option. automatic is identical to useFirstAcquisition for single-acquisition captures and multi-acquisition captures when all the acquisitions have identical (duplicated) acquisition settings. automatic is identical to toneMapping for multi-acquisition HDR captures with differing acquisition settings. useFirstAcquisition uses the color data acquired from the first acquisition provided. If the capture consists of more than one acquisition, then the remaining acquisitions are not used for the color image. No tone mapping is performed. This option provides the most control of the color image, and the color values will be consistent over repeated captures with the same settings. toneMapping uses all the acquisitions to create one merged and normalized color image. For HDR captures the dynamic range of the captured images is usually higher than the 8-bit color image range. toneMapping will map the HDR color data to the 8-bit color output range by applying a scaling factor. toneMapping can also be used for single-acquisition captures to normalize the captured color image to the full 8-bit output. Note that when using toneMapping mode the color values can be inconsistent over repeated captures if you move, add or remove objects in the scene. For the most control over the colors, select the useFirstAcquisition mode. This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

propertygamma

Gamma applied to the color values. Gamma less than 1 makes the colors brighter, while gamma greater than 1 makes the colors darker. This setting is deprecated as of SDK 2.14. This setting will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

propertybalance

Color balance settings.

propertyexperimental

Experimental color settings. These may be renamed, moved or deleted in the future.

classFilters(
:Settings | None=Nonecluster ,
:Settings | None=Noneexperimental ,
:Settings | None=Nonehole ,
:Settings | None=Nonenoise ,
:Settings | None=Noneoutlier ,
:Settings | None=Nonereflection ,
:Settings | None=Nonesmoothing ,
)

Filter settings.

Initialization

classCluster(:Settings | None=Noneremoval )

Removes floating points and isolated clusters from the point cloud.

Initialization

classRemoval(
:bool | None=Noneenabled ,
:float | int | None=Nonemax_neighbor_distance ,
:float | int | None=Nonemin_area ,
)

Cluster removal filter.

Initialization

propertyenabled

Enable or disable cluster removal.

propertymax_neighbor_distance

Maximum normalized distance between neighboring points that are still classified as belonging to the same cluster. The default value is optimal for most scenes. On messy scenes turning this setting down helps removing more bad points.

propertymin_area

Clusters with area below this threshold are removed by the filter. The area is given in mm^2.

propertyremoval

Cluster removal filter.

classExperimental(:Settings | None=Nonecontrast_distortion )

Experimental filters. These may be renamed, moved or deleted in the future.

Initialization

classContrastDistortion(
:Settings | None=Nonecorrection ,
:Settings | None=Noneremoval ,
)

Corrects artifacts that appear when imaging scenes with large texture gradients or high contrast. These artifacts are caused by blurring in the lens. The filter works best when aperture values are chosen such that the camera has quite good focus. The filter also supports removing the points that experience a large correction.

Initialization

classCorrection(:bool | None=Noneenabled , :float | int | None=Nonestrength )

Contrast distortion correction filter.

Initialization

propertyenabled

Enable or disable contrast distortion correction.

propertystrength

Strength of correction. Higher values give more correction.

classRemoval(:bool | None=Noneenabled , :float | int | None=Nonethreshold )

Contrast distortion removal filter.

Initialization

propertyenabled

Enable or disable contrast distortion removal.

propertythreshold

Threshold for removal. Higher values remove more points.

propertycorrection

Contrast distortion correction filter.

propertyremoval

Contrast distortion removal filter.

propertycontrast_distortion

Corrects artifacts that appear when imaging scenes with large texture gradients or high contrast. These artifacts are caused by blurring in the lens. The filter works best when aperture values are chosen such that the camera has quite good focus. The filter also supports removing the points that experience a large correction.

classHole(:Settings | None=Nonerepair )

Contains filters that can be used to deal with holes in the point cloud.

Initialization

classRepair(
:bool | None=Noneenabled ,
:float | int | None=Nonehole_size ,
:int | None=Nonestrictness ,
)

Fills in point cloud holes by interpolating remaining surrounding points.

Initialization

propertyenabled

Enable or disable hole repair.

propertyhole_size

Relative diameter of holes to fill. Increasing this will fill more points, but require more computation time. The maximum allowed hole size scales with distance, so that we allow filling larger holes at greater distances, measured in mm.

propertystrictness

Level of strictness when considering if a point should be filled. A higher level of strictness requires a missing point to be surrounded by valid points on more sides in order to be filled. Increasing this will fill fewer points, but it will be less likely to fill gaps that are not circular, for example between two edges.

propertyrepair

Fills in point cloud holes by interpolating remaining surrounding points.

classNoise(
:Settings | None=Noneremoval ,
:Settings | None=Nonerepair ,
:Settings | None=Nonesuppression ,
)

Contains filters that can be used to clean up a noisy point cloud.

Initialization

classRemoval(:bool | None=Noneenabled , :float | int | None=Nonethreshold )

Discard points with signal-to-noise ratio (SNR) values below a threshold.

Initialization

propertyenabled

Enable or disable the SNR filter.

propertythreshold

Discard points with signal-to-noise ratio (SNR) below the given value.

classRepair(:bool | None=Noneenabled )

Get better surface coverage by repairing regions of missing data due to noisy points. Consider disabling this filter if you require all points in your point cloud to be of high confidence.

Initialization

propertyenabled

Enable or disable noise repair.

classSuppression(:bool | None=Noneenabled )

Reduce noise and outliers in the point cloud. This filter can also be used to reduce ripple effects caused by interreflections. Consider disabling this filter if you need to distinguish very fine details and thus need to avoid any smoothing effects.

Initialization

propertyenabled

Enable or disable noise suppression.

propertyremoval

Discard points with signal-to-noise ratio (SNR) values below a threshold.

propertyrepair

Get better surface coverage by repairing regions of missing data due to noisy points. Consider disabling this filter if you require all points in your point cloud to be of high confidence.

propertysuppression

Reduce noise and outliers in the point cloud. This filter can also be used to reduce ripple effects caused by interreflections. Consider disabling this filter if you need to distinguish very fine details and thus need to avoid any smoothing effects.

classOutlier(:Settings | None=Noneremoval )

Contains a filter that removes points with large Euclidean distance to neighboring points.

Initialization

classRemoval(:bool | None=Noneenabled , :float | int | None=Nonethreshold )

Discard point if Euclidean distance to neighboring points is above a threshold.

Initialization

propertyenabled

Enable or disable the outlier filter.

propertythreshold

Discard point if Euclidean distance to neighboring points is above the given value.

propertyremoval

Discard point if Euclidean distance to neighboring points is above a threshold.

classReflection(:Settings | None=Noneremoval )

Contains a filter that removes points likely introduced by reflections (useful for shiny materials).

Initialization

classRemoval(:bool | None=Noneenabled , :str | None=Nonemode )

Discard points likely introduced by reflections (useful for shiny materials).

Initialization

classMode

The reflection filter has two modes: Local and Global. Global mode is generally better at removing outlier points in the point cloud, whereas Local mode preserves more 3D data on thin objects far from the background. Additionally, Local mode behaves slightly differently depending on the Engine used. With Phase engine or Stripe engine, Local mode will process faster than Global mode and remove more reflection artifacts. Also with Stripe engine, Local mode might reduce the number of points resolved on shiny and reflective objects. With Omni engine, Local mode will reduce the amount of artifacts in low projector signal regions, but might also reduce coverage on surfaces with low projector signal. It is advised to use the Cluster filter together with Local mode.

global_='global'
local='local'
classmethodvalid_values()

All valid values of Mode

propertyenabled

Enable or disable the reflection filter. Note that this filter is computationally intensive and may affect the frame rate.

propertymode

The reflection filter has two modes: Local and Global. Global mode is generally better at removing outlier points in the point cloud, whereas Local mode preserves more 3D data on thin objects far from the background. Additionally, Local mode behaves slightly differently depending on the Engine used. With Phase engine or Stripe engine, Local mode will process faster than Global mode and remove more reflection artifacts. Also with Stripe engine, Local mode might reduce the number of points resolved on shiny and reflective objects. With Omni engine, Local mode will reduce the amount of artifacts in low projector signal regions, but might also reduce coverage on surfaces with low projector signal. It is advised to use the Cluster filter together with Local mode.

propertyremoval

Discard points likely introduced by reflections (useful for shiny materials).

classSmoothing(:Settings | None=Nonegaussian )

Smoothing filters.

Initialization

classGaussian(:bool | None=Noneenabled , :float | int | None=Nonesigma )

Gaussian smoothing of the point cloud.

Initialization

propertyenabled

Enable or disable the smoothing filter.

propertysigma

Higher values result in smoother point clouds (Standard deviation of the filter coefficients).

propertygaussian

Gaussian smoothing of the point cloud.

propertycluster

Removes floating points and isolated clusters from the point cloud.

propertyexperimental

Experimental filters. These may be renamed, moved or deleted in the future.

propertyhole

Contains filters that can be used to deal with holes in the point cloud.

propertynoise

Contains filters that can be used to clean up a noisy point cloud.

propertyoutlier

Contains a filter that removes points with large Euclidean distance to neighboring points.

propertyreflection

Contains a filter that removes points likely introduced by reflections (useful for shiny materials).

propertysmoothing

Smoothing filters.

classResampling(:str | None=Nonemode )

Settings for changing the output resolution of the point cloud.

Initialization

classMode

Setting for upsampling or downsampling the point cloud data by some factor. This operation is performed after all other processing has been completed. Downsampling is used to reduce the number of points in the point cloud. This is done by combining each 2x2 or 4x4 group of pixels in the original point cloud into one pixel in a new point cloud. This downsample functionality is identical to the downsample method on the PointCloud class. The averaging process reduces noise in the point cloud, but it will not improve capture speed. To improve capture speed, consider using the subsampling modes found in Settings/Sampling/Pixel. Upsampling is used to increase the number of points in the point cloud. It is not possible to upsample beyond the full resolution of the camera, so upsampling may only be used in combination with the subsampling modes found in Settings/Sampling/Pixel. For example, one may combine blueSubsample2x2 with upsample2x2 to obtain a point cloud that matches a full resolution 2D capture, while retaining the speed benefits of capturing the point cloud with blueSubsample2x2. Upsampling is achieved by expanding pixels in the original point cloud into groups of 2x2 or 4x4 pixels in a new point cloud. Where possible, values are filled at the new points based on an interpolation of the surrounding original points. The points in the new point cloud that correspond to points in the original point cloud are left unchanged. Note that upsampling will lead to four (upsample2x2) or sixteen (upsample4x4) times as many pixels in the point cloud compared to no upsampling, so users should be aware of increased computational cost related to copying and analyzing this data.

disabled='disabled'
downsample2x2='downsample2x2'
downsample4x4='downsample4x4'
upsample2x2='upsample2x2'
upsample4x4='upsample4x4'
classmethodvalid_values()

All valid values of Mode

propertymode

Setting for upsampling or downsampling the point cloud data by some factor. This operation is performed after all other processing has been completed. Downsampling is used to reduce the number of points in the point cloud. This is done by combining each 2x2 or 4x4 group of pixels in the original point cloud into one pixel in a new point cloud. This downsample functionality is identical to the downsample method on the PointCloud class. The averaging process reduces noise in the point cloud, but it will not improve capture speed. To improve capture speed, consider using the subsampling modes found in Settings/Sampling/Pixel. Upsampling is used to increase the number of points in the point cloud. It is not possible to upsample beyond the full resolution of the camera, so upsampling may only be used in combination with the subsampling modes found in Settings/Sampling/Pixel. For example, one may combine blueSubsample2x2 with upsample2x2 to obtain a point cloud that matches a full resolution 2D capture, while retaining the speed benefits of capturing the point cloud with blueSubsample2x2. Upsampling is achieved by expanding pixels in the original point cloud into groups of 2x2 or 4x4 pixels in a new point cloud. Where possible, values are filled at the new points based on an interpolation of the surrounding original points. The points in the new point cloud that correspond to points in the original point cloud are left unchanged. Note that upsampling will lead to four (upsample2x2) or sixteen (upsample4x4) times as many pixels in the point cloud compared to no upsampling, so users should be aware of increased computational cost related to copying and analyzing this data.

propertycolor

Color settings. These settings are deprecated as of SDK 2.14. These settings will be removed in the next SDK major version (SDK 3.0). The recommended way to do a 2D+3D capture is to set a Settings2D object in the Settings/Color node. Tip: If you want to convert an existing settings.yml file to use the Settings/Color node, you can import the .yml file into Zivid Studio and then re-export it to .yml.

propertyfilters

Filter settings.

propertyresampling

Settings for changing the output resolution of the point cloud.