CVB.Net 14.1
Stemmer.Cvb.Foundation Namespace Reference

Classes

class  AddNoise
 Collection of functions that add noise to Cvb Images. More...
 
struct  Alignment2DResult
 Result of a curve alignment. More...
 
class  AlignmentSettings
 Settings to configure the Curve.Align method. More...
 
class  Analysis
 Collection of miscellaneous image analysis functions. More...
 
class  AQS12DensePointCloudSegmentor
 Segmentor for face segmentation of an AQS12 calibration piece on dense point clouds. More...
 
class  AQS12Piece
 Aggregates the data that describes the AQS12 calibration piece. More...
 
class  AQS12RangeMapSegmentor
 Segmentor for face segmentation of an AQS12 calibration piece on range maps. More...
 
class  Arithmetic
 Collection of arithmetic functions from the Foundation Package. More...
 
class  BayerConversion
 Functions for converting images with a Bayer pattern. More...
 
class  Bitwise
 Collection of bit-wise operations on images. More...
 
class  Blob
 Blob search and binarization methods. More...
 
class  BlobFilter
 For building filters for the Blob.Search. More...
 
class  BlobFilterBuilder
 Helper to build filters for a blob search. More...
 
struct  BlobResult
 Container for a blob analysis result. More...
 
class  CalibrationConfiguration
 Stores the configuration for the calibration. More...
 
class  CalibrationLineScan
 Collection of calibration line scan functions. More...
 
class  CalibrationPattern
 Methods for CVB calibration pattern handling. More...
 
class  Calibrator3DExtensions
 Extension methods for the Calibrator3D. More...
 
class  Convert
 Class with various image conversion functions. More...
 
class  ConvertColorSpace
 Color space conversions supported by the Foundation Package. More...
 
class  Correlation
 Collection of functions that calculate different kinds of correlation values. More...
 
class  Curve
 2D curve functions. More...
 
class  CurveExtensions
 Extension methods for a curve (Point2Dd array). More...
 
class  DensePointCloudSegmentor
 Base class for configuring and computing segmentation on dense point clouds. More...
 
class  Edge
 Collection of functions for Edge detection. More...
 
struct  EdgeDetectionResult
 Result of the function DetectEdgesOfStripeTarget. More...
 
struct  EdgeResult
 Edge Search result More...
 
struct  EdgeResultPair
 A pair of found edges. More...
 
class  Fft
 Collection of FFT functions. More...
 
class  FftImage
 Cvb Image representation in the Fourier domain. More...
 
class  Filter
 Collection of Filter methods supported by the Common Vision Blox Foundation Package. More...
 
class  GaussianPyramid
 Functions implementing a Gaussian pyramid approach. More...
 
class  Histogram
 A single histogram result. More...
 
class  HistogramAnalyzer
 Functionality for analyzing the Histogram of images (previously found in the LightMeter tool). More...
 
class  HistogramExtensions
 extends the long[] class by methods that help analyze a histogram. More...
 
struct  HuMoments
 Results of Hu Moment calculation. More...
 
class  ImageExtensions
 Extension methods the Foundation Package adds to Image objects. More...
 
class  ImageMoments
 State object for calculating various image moments. More...
 
class  LaserLineExtraction
 Contains functions used to extract laser lines from images. More...
 
struct  LineExtractionParameters
 All necessary parameters for laser line extraction. More...
 
class  LineScanCalibrationConfiguration
 A set of parameters, which is used to configure line scan calibration calculated with function CalibrationLineScan.CreateLineScanCalibration. More...
 
struct  LineScanCalibrator
 Result of the linescan calibration executed by the CalibrationLineScan.CreateLineScanCalibration function. More...
 
class  Lut
 Lookup table functions. More...
 
struct  LutLevel
 Struct that pairs a LUT level and the value assigned to this level. More...
 
class  Metric
 Metric calibration routines. More...
 
class  Morphology
 Morphological filter operations available from the Common Vision Blox foundation package. More...
 
class  NamespaceDoc
 The namespace and assembly Stemmer.Cvb.Foundation holds all classes and definitions that expose functionality of the Common Vision Blox Foundation Package. The Foundation Package comprises the following DLLs:

  • Arithmetic.dll
  • etBayerToRGB.dll
  • CVCEdge.dll
  • CVFoundation.dll
  • DrawGraph.dll (not covered here)
  • LightMeter.dll
  • TextOut.dll

Note that a valid Common Vision Blox Foundation Package license is required to use this functionality unrestricted. If no license is available, function-specific restrictions apply. More...

 
class  NonLinearTransformation
 Object implementing the non linear polynomially approximated transform implemented in the CVB Foundation Package. More...
 
class  Norm
 Functions for calculating different norms over the gray values of an image. More...
 
struct  PerspectiveTransformation
 Perspective transformation coefficients. More...
 
class  Polarization
 Functions and type definitions of the CVPolarization library. More...
 
class  Projection
 Projection that the Edge analysis of Common Vision Blox is using. More...
 
struct  ProjectionValue
 Single projection value. More...
 
class  RangeMapSegmentor
 Base class for configuring and computing segmentation on range maps. More...
 
class  Regression
 Various regression functions. More...
 
class  Scale
 Class with various image scaling functions. More...
 
class  TestImages
 Functions for test image generation. More...
 
class  Threshold
 Thresholding functions in the Common Vision Blox Foundation Package. More...
 
class  Transform2D
 Collection of 2D transformation functions (most of them linear). More...
 

Enumerations

enum  PixelOverflow { Scale , Truncate }
 Defines how arithmetic overflows and underflows are handled. More...
 
enum  SqrtPixelScaling { AsIs , Yes }
 Defines the post processing of the Arithmetic.Sqrt(Image, SqrtPixelScaling) method. More...
 
enum  RgbConversion { Linear = 1 , NearestNeighbor = 2 , HalfResolution = 3 }
 Available conversion modes from Bayer patterns to RGB images. More...
 
enum  BayerPattern { GreenBlue = 0 , BlueGreen = 1 , RedGreen = 2 , GreenRed = 3 }
 Bayer pattern of the sensor used to acquire the image to be converted. The enums refer to the top left pixel and the pixel next to it. More...
 
enum  GammaCorrection { Gamma100 = 1 , Gamma060 = 2 , Gamma045 = 3 }
 Different gamma corrections that can be applied while converting from Bayer pattern to RGB. More...
 
enum  BlobBorderFilter {
  None = 0 , Right = 1 , Top = 2 , Left = 4 ,
  Bottom = 8 , All = 15
}
 Enumeration for filtering blobs that touch the boundaries of the AOI specified for blob extraction. More...
 
enum  RangeFilter { Size , Width , Height }
 Defines the attribute for a Blob Filter. More...
 
enum  ScanDirection { X , Y }
 Specifies the scanning direction More...
 
enum  PreDefinedPixelSizeMode { DoNotUse , Use }
 Specifies if the predefined pixel resolution is used for the metric calibration. More...
 
enum  CorrelationMethod { SumOfSquareDistances , CorrelationCoefficients , CrossCorrelation }
 Correlation calculation methods. More...
 
enum  StartSelection { Best , AsIs }
 Decides which start point should be used for the new curve. More...
 
enum  EdgeSearchMode {
  Intensity , IntensitySubPixel , Contrast , ContrastSubPixel ,
  SecondDerivativeSubPixel
}
 Determines the algorithm for finding an edge. More...
 
enum  EdgeType { Ignore = 0 , Positive = 1 , Negative = 2 }
 Type of the edges to be searched. More...
 
enum  ProjectionMode { Average , Sum }
 Options affecting the result of the projection. More...
 
enum  FftNormalization { Forward = 1 , Inverse = 2 , Sqrt = 4 , None = 8 }
 Normalization modes that can be applied when calculating the Fourier transform or its inverse. More...
 
enum  FftWindow { None = 0 , Hamming = 1 , Bartlett = 2 , SeparateBartlett = 3 }
 Window function to apply when calculating a Fourier transform. More...
 
enum  FixedFilterSize { Kernel3x3 = 0 , Kernel5x5 = 1 , Kernel7x7 = 2 }
 Filter size values for filters using a fixed or discrete sized kernel. More...
 
enum  FilterOrientation { Horizontal , Vertical }
 Orientation options for edge filters. More...
 
enum  EdgeFilter { Scharr = 0 , Sobel = 1 , Sobel2nd = 2 }
 Edge filter modes. Currently only used by Filter.Canny(ImagePlane, EdgeFilter, int, int). More...
 
enum  RobertsDirection { Up , Down }
 Directions of the Roberts edge filter. More...
 
enum  PeakLocalizationMethod { ArgMax = 1 , CoG }
 Peak location parameters. More...
 
enum  FIRFilter { None = 1 , Mean }
 Filter parameters. More...
 
enum  LutInterpolation { Constant , Linear , Cubic }
 Different approaches for interpolating between lookup table values and levels. More...
 
enum  MomentsCalculation { FavorNone = 0 , FavorSpeed = 1 , FavorAccuracy = 2 }
 Choose between speed and accuracy during image moment calculation. More...
 
enum  MomentsOrder { Order0 = 0 , Order1 = 1 , Order2 = 2 , Order3 = 3 }
 Enumerated order for x and y central or spatial moments. More...
 
enum  MomentsNormalization { Unnormalized = 0 , Normalized = 1 }
 Available normalization modes for calculations. More...
 
enum  MorphologyMask { Rectangular = 2 , Cross = 3 , Elliptic = 5 }
 Available morphology masks. More...
 
enum  DistanceNorm { LInfinity = 0 , L1 = 1 , L2 = 2 }
 Norm for calculating distances. More...
 
enum  ValueNormalization { Unnormalized = 0 , Normalized = 1 }
 Available normalization modes for calculations. More...
 
enum  SegmentationMethod { KmeansClustering = 1 }
 The segmentation method for labeling the faces of the calibration piece. More...
 
enum  TestImageDataType {
  Unsigned8 , Unsigned16 , Signed16 , Signed32 ,
  Float32
}
 Data types usable for test image generation. More...
 
enum  StaticThresholding {
  LessThan = 0 , LessThanOrEqual = 1 , Equal = 2 , GreaterOrEqual = 3 ,
  Greater = 4
}
 Comparisons for static thresholding. More...
 
enum  DynamicThresholdNorm { Mean = 0 , MinMax = 1 }
 Norm calculation approaches for dynamic thresholding. More...
 
enum  Interpolation {
  NearestNeighbor = 0 , Linear = 1 , Cubic = 2 , Lanczos = 3 ,
  Supersample = 4
}
 Interpolation modes available inside the Foundation Package. More...
 
enum  Axis { None = 0 , X = 1 , Y = 2 }
 Axis enumeration. More...
 
enum  CalibrationPatternContrast { BlackOnWhite , WhiteOnBlack }
 Definition of the contrast of the pattern used for automatic calibration. More...
 
enum  CalibrationPatternStyle { UniformDots , AsymmetricDots }
 Definition of the calibration pattern style used for automatic calibration. More...
 
enum  CalibrationPatternFormat { A4 , Letter }
 Definition of the paper format used for printing calibration patterns. More...
 
enum  CalibrationPatternOrientation { Portrait , Landscape }
 Format orientation for the CalibrationPatternFormat. More...
 

Enumeration Type Documentation

◆ Axis

enum Axis

Axis enumeration.

Enumerator
None 

No axis

X axis

Y axis

◆ BayerPattern

Bayer pattern of the sensor used to acquire the image to be converted. The enums refer to the top left pixel and the pixel next to it.

Enumerator
GreenBlue 

left top pixels are green and blue

BlueGreen 

left top pixels are blue and green

RedGreen 

left top pixels are red and green

GreenRed 

left top pixels are green and red

◆ BlobBorderFilter

Enumeration for filtering blobs that touch the boundaries of the AOI specified for blob extraction.

Enumerator
None 

Do not filter out those blobs that touch a border.

Right 

Filter out those blobs that touch the right border.

Top 

Filter out those blobs that touch the top border.

Left 

Filter out those blobs that touch the left border.

Bottom 

Filter out those blobs that touch the bottom border.

All 

Filter out those blobs that touch any border.

◆ CalibrationPatternContrast

Definition of the contrast of the pattern used for automatic calibration.

Enumerator
BlackOnWhite 

Black objects on white background.

WhiteOnBlack 

White objects on black background.

◆ CalibrationPatternFormat

Definition of the paper format used for printing calibration patterns.

Enumerator
A4 

A4 paper size (210 x 297 mm).

Letter 

Letter sized paper (8.5 x 11 inches).

◆ CalibrationPatternOrientation

Format orientation for the CalibrationPatternFormat.

Enumerator
Portrait 

Portrait has the long side vertically.

Landscape 

Landscape has the long side horizontally.

◆ CalibrationPatternStyle

Definition of the calibration pattern style used for automatic calibration.

Enumerator
UniformDots 

Symmetric grid of uniformly sized, circle-shaped dots. With this pattern it is not possible to determine origin and/or orientation of the calibration pattern!

AsymmetricDots 

Symmetric grid of dots. Four dots are bigger than the others and define the pattern's origin and orientation.

◆ CorrelationMethod

Correlation calculation methods.

Enumerator
SumOfSquareDistances 

Normalized sum of square Distances.

Strictly speaking, this is not a correlation, but the inverse of it (i.e. when looking at the resulting accumulator, dark spots indicate a close match between the image and the template, whereas bright areas indicate image regions, where there is little to no similarity between image and template).

CorrelationCoefficients 

Calculate the normalized correlation coefficients between image and template.

These can be considered a measure of similarity between the input image and the template. Wherever the correlation coefficient is high (maximum is 1.0), image and template are very similar. Where the correlation coefficient approaches zero, the similarities vanish.

CrossCorrelation 

Calculate the cross correlations between image and template.

◆ DistanceNorm

Norm for calculating distances.

Enumerator
LInfinity 

Infinity norm (a.k.a maximum norm).

L1 

L1 norm (a.k.a. absolute norm).

L2 

L2 norm (a.k.a. euclidean norm).

◆ DynamicThresholdNorm

Norm calculation approaches for dynamic thresholding.

Enumerator
Mean 

Dynamic thresholding compares versus the mean value of the threshold mask (default).

MinMax 

Dynamic thresholding compares versus the middle between the minimum and the maximum value inside the threshold mask.

◆ EdgeFilter

enum EdgeFilter

Edge filter modes. Currently only used by Filter.Canny(ImagePlane, EdgeFilter, int, int).

Enumerator
Scharr 

Scharr edge detection.

Sobel 

1st order Sobel filter.

Sobel2nd 

2nd order Sobel filter.

◆ EdgeSearchMode

Determines the algorithm for finding an edge.

Enumerator
Intensity 

Find edges based on absolute intensities in the image. In this mode, the edge quality directly corresponds to the difference in intensity across the edge.

IntensitySubPixel 

Like Intensity, but with sub pixel accuracy.

Contrast 

Find edges based on the contrasts in the image (1st derivative of the gray values).

ContrastSubPixel 

Like Contrast, but with sub pixel accuracy.

SecondDerivativeSubPixel 

Find edges based on the 2nd derivative of the intensities with sub pixel accuracy. Note that in this mode edge qualities are usually much lower than 10.

◆ EdgeType

enum EdgeType

Type of the edges to be searched.

Enumerator
Ignore 

Used for EdgeResult.Empty and with the 2nd derivative edge detection functions.

Positive 

Intensities increase along the scan direction.

Negative 

Intensities decrease along the scan direction.

◆ FftNormalization

Normalization modes that can be applied when calculating the Fourier transform or its inverse.

Effectively this is the factor before the transformation integral.

Typically the same factor should be applied in forward and inverse transform, otherwise the absolute pixel values of a transformation round trip will differ from the original pixel values.

Enumerator
Forward 

Apply a factor 1/N in forward transformation, but not in inverse transformation.

Inverse 

Apply a factor 1/N in the inverse transformation but not in forward transformation.

Sqrt 

Apply a factor 1/sqrt(N) in inverse and forward transformation alike.

None 

No or unknown normalization.

◆ FftWindow

enum FftWindow

Window function to apply when calculating a Fourier transform.

Enumerator
None 

Do not apply a Window function.

This will allow Fourier transformation artifacts caused by the abrupt ending of the image data at the image borders to creep into the Fourier transform; these artifacts will become visible as high frequency oscillations in the back transformed image.

Hamming 

Apply a Hamming window function.

Bartlett 

Apply a Bartlett window function.

SeparateBartlett 

Apply a Bartlett window function successively to individual rows and columns of the image.

◆ FilterOrientation

Orientation options for edge filters.

Enumerator
Horizontal 

Horizontal.

Vertical 

Vertical.

◆ FIRFilter

enum FIRFilter

Filter parameters.

Enumerator
None 

No active filtering.

Mean 

Mean filtering.

◆ FixedFilterSize

Filter size values for filters using a fixed or discrete sized kernel.

Please refer to the respective Filter's documentation, as not all filters support all filter kernel sizes. Functions, that used fixed size filter masks, are implicitly always assuming the mask to be centered around the center pixel.

Enumerator
Kernel3x3 

Filter mask 3x3 pixels

Kernel5x5 

Filter mask 5x5 pixels

Kernel7x7 

Filter mask 7x7 pixels

◆ GammaCorrection

Different gamma corrections that can be applied while converting from Bayer pattern to RGB.

Enumerator
Gamma100 

Correct with Gamma = 1.0 (i.e. no correction).

Gamma060 

Correct with Gamma = 0.6.

Gamma045 

Correct with Gamma = 0.45.

◆ Interpolation

Interpolation modes available inside the Foundation Package.

Enumerator
NearestNeighbor 

Simple nearest neighbor interpolation. May result in a less pleasant output image, but yields the fastest results.

Linear 

Linear interpolation in x and y. Good trade off between visual quality and speed. Default interpolation mode in CVB.

Cubic 

Cubic interpolation in x and y. Slower than linear interpolation, but better in terms of results.

Lanczos 

Interpolation using a 3-lobed Lanczos window function.

Supersample 

Interpolation through super sampling and averaging of the target position from sub pixel positions.

◆ LutInterpolation

Different approaches for interpolating between lookup table values and levels.

Enumerator
Constant 

LUT values are constant between two LUT levels.

Linear 

Linear interpolation between two adjacent LUT levels.

Cubic 

Cubic interpolation between two adjacent LUT levels.

◆ MomentsCalculation

Choose between speed and accuracy during image moment calculation.

Enumerator
FavorNone 

Favor neither speed nor accuracy.

FavorSpeed 

Favor speed over accuracy during moments calculation.

FavorAccuracy 

Favor accuracy over speed during moments calculation.

◆ MomentsNormalization

Available normalization modes for calculations.

Enumerator
Unnormalized 

Report moments unnormalized.

Normalized 

Report moments normalized.

◆ MomentsOrder

Enumerated order for x and y central or spatial moments.

Enumerator
Order0 

0th order

Order1 

1st order

Order2 

2nd order

Order3 

3rd order

◆ MorphologyMask

Available morphology masks.

Enumerator
Rectangular 

rectangular morphology mask

Cross 

Cross-shaped morphology mask

Elliptic 

elliptic morphology mask

◆ PeakLocalizationMethod

Peak location parameters.

Enumerator
ArgMax 

The center peak is set to the highest value in a given set.

CoG 

Estimation of the center peak with center of gravity.

◆ PixelOverflow

Defines how arithmetic overflows and underflows are handled.

Enumerator
Scale 

Resulting pixel values are scaled according to the DataType's range.

Truncate 

Resulting pixel values are truncated at DataType.MinVal and DataType.MaxVal.

◆ PreDefinedPixelSizeMode

Specifies if the predefined pixel resolution is used for the metric calibration.

Enumerator
DoNotUse 

Predefined pixel resolution will not be used.

Use 

Predefined pixel resolution will be used.

◆ ProjectionMode

Options affecting the result of the projection.

Enumerator
Average 

Projection value is the average value per projection line.

Sum 

Projection value is the sum of all gray values per projection line.

◆ RangeFilter

Defines the attribute for a Blob Filter.

Enumerator
Size 

Area of the blob in pixels.

Width 

Width of the blob in pixels.

Height 

Height of the blob in pixels.

◆ RgbConversion

Available conversion modes from Bayer patterns to RGB images.

Enumerator
Linear 

This method offers the highest accuracy but also the slowest speed. Interpolation of the nearest pixels is used to calculate the two unknown color values for each position. Depending on the position of the pixel either two or four pixels are used for the interpolation. In this mode full spatial resolution is maintained.

NearestNeighbor 

This method offers the fastest speed for a full resolution image, but the color accuracy is not as high as the Linear method. The color from a neighbor pixel is used for the two unknown color values. This makes the conversion faster because there is no need for interpolation. In this method full spatial resolution is maintained.

HalfResolution 

This method is provided primarily for display. This method creates an RGB image with half the height and half the width of the source image, the color accuracy is the same as the NearestNeighbor method but half the spacial accuracy is lost. If the user needs a fast display for focusing or setup of the camera, then this method will allow higher frame rates on a suitable PC.

◆ RobertsDirection

Directions of the Roberts edge filter.

Enumerator
Up 

Filter for edges, that are positive when looking from the top right corner.

Down 

Filter for edges, that are positive when looking from the top left corner.

◆ ScanDirection

Specifies the scanning direction

The scanning direction has to be set in the configuration object LineScanCalibrationConfiguration used by the linescan calibration CalibrationLineScan.CreateLineScanCalibration.


Enumerator

Scans along the X coordinate

Scans along the Y coordinate.


◆ SegmentationMethod

The segmentation method for labeling the faces of the calibration piece.

Enumerator
KmeansClustering 

Clustering top, base and faces using kmeans.

◆ SqrtPixelScaling

Defines the post processing of the Arithmetic.Sqrt(Image, SqrtPixelScaling) method.

Enumerator
AsIs 

Square root result is stored as is (no scaling).

Yes 

Square root result is scaled to the DataType's range.

◆ StartSelection

Decides which start point should be used for the new curve.

Enumerator
Best 

Calculate start point that will give the "smoothest" curve.

AsIs 

Use start point of first curve.

◆ StaticThresholding

Comparisons for static thresholding.

Enumerator
LessThan 

Less than

LessThanOrEqual 

Less than or Equal

Equal 

Equal

GreaterOrEqual 

Greater or Equal

Greater 

Greater

◆ TestImageDataType

Data types usable for test image generation.

Enumerator
Unsigned8 

Unsigned 8 bits per pixel integer data

Unsigned16 

Unsigned 16 bits per pixel integer data

Signed16 

Signed 16 bits per pixel integer data

Signed32 

Signed 32 bits per pixel integer data

Float32 

32 bits per pixel floating point data

◆ ValueNormalization

Available normalization modes for calculations.

Enumerator
Unnormalized 

Report values unnormalized.

Normalized 

Report values normalized.