Validation Status of DataLab#
Functional validation#
In DataLab, functional validation is based on a classic test strategy (see Functional validation).
Test coverage is around 90%, with more than 200 tests.
Technical validation#
This paragraph provides the validation status of compute functions in DataLab (this is what we call technical validation, see Technical Validation).
Note
This is a work in progress: the tables below are updated continuously as new functions are validated or test code is adapted (the tables are generated from the test code). Some functions are already validated but do not appear in the list below yet, while others are still in the validation process.
Warning
The validation status must not be confused with the test coverage. The validation status indicates whether the function has been validated against ground-truth data or analytical models. The test coverage indicates the percentage of the code that is executed by the test suite, but it does not necessarily take into account the correctness of the results (DataLabās test coverage is around 90%).
Category |
Signal |
Image |
Total |
---|---|---|---|
Number of compute functions |
51 |
94 |
145 |
Number of validated compute functions |
44 |
79 |
123 |
Percentage of validated compute functions |
86% |
84% |
84% |
Signal Compute Functions#
The table below shows the validation status of signal compute functions in DataLab. It is automatically generated from the source code.
Compute function |
Description |
Test function |
---|---|---|
Compute absolute value with |
||
Add dst and src signals and return dst signal modified in place |
||
Add dst and a constant value and return a the new result signal object |
||
Perform arithmetic operation on two signals |
||
Convert data type with |
||
Compute bandwidth at -3 dB with |
||
Compute linear calibration |
||
Compute maximum data clipping with |
||
Compute contrast with |
||
Compute convolution of two signals |
||
Compute derivative with |
||
Detrend data with |
N/A |
|
Compute difference between two signals |
||
Subtract a constant value from a signal |
||
Compute division between two signals |
||
Divide a signal by a constant value |
||
Compute Dynamic parameters |
||
Compute exponential with |
||
Compute FFT with |
||
Compute frequency filter (low-pass, high-pass, band-pass, band-stop) |
N/A |
|
Compute FW at 1/eĀ² with |
||
Compute FWHM with |
||
Compute gaussian filter with |
||
Compute histogram with |
N/A |
|
Compute iFFT with |
||
Compute imaginary part with |
||
Compute integral with |
||
Interpolate data with |
N/A |
|
Compute Log10 with |
||
Compute magnitude spectrum |
||
Compute moving average with |
||
Compute moving median with |
||
Normalize data with |
||
Correct offset: subtract the mean value of the signal in the specified range |
||
Peak detection with |
N/A |
|
Compute phase spectrum |
||
Compute power with |
||
Multiply dst and src signals and return dst signal modified in place |
||
Multiply dst by a constant value and return the new result signal object |
||
Compute power spectral density |
||
Compute quadratic difference between two signals |
||
Compute real part with |
||
Resample data with |
N/A |
|
Reverse x-axis |
||
Compute sampling rate and period |
||
Compute square root with |
||
Compute statistics on a signal |
||
Swap axes |
||
Compute Wiener filter with |
||
Compute windowing (available methods: hamming, hanning, bartlett, blackman |
N/A |
|
Compute x at min/max |
Image Compute Functions#
The table below shows the validation status of image compute functions in DataLab. It is automatically generated from the source code.
Compute function |
Description |
Test function |
---|---|---|
Compute absolute value with |
||
Add dst and src images and return dst image modified in place |
||
Add dst and a constant value and return the new result image object |
||
Compute arithmetic operation on two images |
||
Convert image data type with |
||
Compute horizontal or vertical average profile |
N/A |
|
Binning function on data with |
||
Compute Butterworth filter with |
||
Compute linear calibration |
||
Compute centroid |
||
Apply clipping with |
||
Compute difference between two images |
||
Subtract a constant value from an image and return the new result image object |
||
Compute division between two images |
||
Divide an image by a constant value and return the new result image object |
||
Compute minimum enclosing circle |
N/A |
|
Compute exponential with |
||
Compute FFT with |
||
Compute flat field correction with |
N/A |
|
Flip data horizontally with |
||
Flip data vertically with |
||
Compute gaussian filter with |
||
Compute histogram of the image data, with |
N/A |
|
Compute Hough circles |
N/A |
|
Compute inverse FFT with |
||
Compute imaginary part with |
||
Compute horizontal or vertical profile |
N/A |
|
Compute log10 with |
||
Compute log10(z+n) with |
||
Compute magnitude spectrum |
||
Compute moving average with |
||
Compute moving median with |
||
Apply offset correction |
||
Compute phase spectrum |
||
Multiply dst and src images and return dst image modified in place |
||
Multiply dst by a constant value and return the new result image object |
||
Compute power spectral density |
||
Compute quadratic difference between two images |
||
Compute radial profile around the centroid |
N/A |
|
Compute real part with |
||
Zooming function with |
N/A |
|
Rotate data with |
||
Rotate data 270Ā° with |
||
Rotate data 90Ā° with |
||
Compute segment profile |
N/A |
|
Compute statistics on an image |
||
Swap image axes with |
||
Compute Wiener filter with |
||
Compute blobs using Difference of Gaussian method |
N/A |
|
Compute blobs using Determinant of Hessian method |
N/A |
|
Compute blobs using Laplacian of Gaussian method |
N/A |
|
Compute blobs using OpenCV |
N/A |
|
Compute contour shape fit |
N/A |
|
Compute 2D peak detection |
N/A |
|
Compute Canny filter with |
||
Compute Farid filter with |
||
Compute horizontal Farid filter with |
||
Compute vertical Farid filter with |
||
Compute Laplace filter with |
||
Compute Prewitt filter with |
||
Compute horizontal Prewitt filter with |
||
Compute vertical Prewitt filter with |
||
Compute Roberts filter with |
||
Compute Scharr filter with |
||
Compute horizontal Scharr filter with |
||
Compute vertical Scharr filter with |
||
Compute Sobel filter with |
||
Compute horizontal Sobel filter with |
||
Compute vertical Sobel filter with |
||
Gamma correction with |
||
Compute log correction with |
||
Compute sigmoid correction with |
||
Adaptive histogram equalization |
||
Histogram equalization with |
||
Rescale image intensity levels |
||
Compute Black Top-Hat with |
||
Compute morphological closing with |
||
Compute Dilation with |
||
Compute Erosion with |
||
Compute morphological opening with |
||
Compute White Top-Hat with |
||
Compute bilateral filter denoising |
||
Denoise using White Top-Hat |
||
Compute Total Variation denoising |
||
Compute Wavelet denoising |
||
Compute the threshold, using one of the available algorithms |
||
Compute the threshold using the Isodata algorithm with default parameters |
||
Compute the threshold using the Li algorithm with default parameters |
||
Compute the threshold using the Mean algorithm |
||
Compute the threshold using the Minimum algorithm with default parameters |
||
Compute the threshold using the Otsu algorithm with default parameters |
||
Compute the threshold using the Triangle algorithm with default parameters |
||
Compute the threshold using the Yen algorithm with default parameters |