mxlib
c++ tools for analyzing astronomical data and other tasks by Jared R. Males. [git repo]
Loading...
Searching...
No Matches
Image Filters Unit Tests

Functions

 unitTest::improcTest::imageFiltersTest::TEST_CASE ("precalcKernel caches production kernel values", "[improc::precalcKernel]")
 Verify precalcKernel returns the same Gaussian and azimuthal kernels as their production generators.
 unitTest::improcTest::imageFiltersTest::TEST_CASE ("azBoxKernel is finite at centers and neighboring pixels", "[improc::azBoxKernel]")
 Verify azBoxKernel produces finite normalized kernels at image centers and neighboring pixels.
 unitTest::improcTest::imageFiltersTest::TEST_CASE ("azBoxKernel validates widths coordinates and maxAz", "[improc::azBoxKernel]")
 Verify azBoxKernel honors maximum azimuth and validates degenerate configuration values.
 unitTest::improcTest::imageFiltersTest::TEST_CASE ("precalcKernel supports odd even and non-square image centers", "[improc::precalcKernel]")
 Verify precalcKernel handles odd, even, and non-square image centers without invalid cached kernels.
 unitTest::improcTest::imageFiltersTest::TEST_CASE ("precalcKernel propagates errors and validates lookup bounds", "[improc::precalcKernel]")
 Verify precalcKernel propagates generation errors and rejects invalid lookup coordinates.
 unitTest::improcTest::imageFiltersTest::TEST_CASE ("radprofim subtracts a centered radial background", "[improc::radprofim][hciReduce]")
 Verifies the radial-profile subtraction used by HCI preprocessing.
 unitTest::improcTest::imageFiltersTest::TEST_CASE ("radprofim excludes masked pixels", "[improc::radprofim][hciReduce]")
 Verifies that masked pixels are excluded from and preserved by radial-profile subtraction.
 unitTest::improcTest::imageFiltersTest::TEST_CASE ("medianFilterImage handles HCI azimuthal kernels", "[improc::medianFilterImage][hciReduce]")
 Verifies HCI azimuthal median filtering through a precomputed azimuthal kernel.
 unitTest::improcTest::imageFiltersTest::TEST_CASE ("Gaussian filter handles non-square image dimensions", "[improc::imageFilters]")
 Verify that filterImage preserves non-square dimensions with a Gaussian kernel.
 unitTest::improcTest::imageFiltersTest::TEST_CASE ("medianSmooth honors exact odd and even full widths", "[improc::medianSmooth]")
 Verify that medianSmooth uses exactly the configured odd or even square window.
 unitTest::improcTest::imageFiltersTest::TEST_CASE ("medianSmooth validates widths and output dimensions", "[improc::medianSmooth]")
 Verify that medianSmooth rejects invalid dimensions without modifying caller-owned pixels.
 unitTest::improcTest::imageFiltersTest::TEST_CASE ("meanSmooth honors exact even full widths", "[improc::meanSmooth]")
 Verify that meanSmooth uses an exact even-width footprint.
 unitTest::improcTest::imageFiltersTest::TEST_CASE ("stddevImage subtracts the annular mean for S/N", "[improc::stddevImage]")
 Verify stddevImage centers the signal using the annular mean before calculating S/N.

Function Documentation

◆ TEST_CASE() [1/13]

unitTest::improcTest::imageFiltersTest::TEST_CASE ( "azBoxKernel is finite at centers and neighboring pixels" ,
"" [improc::azBoxKernel] )

Verify azBoxKernel produces finite normalized kernels at image centers and neighboring pixels.

Exercises mx::improc::azBoxKernel::setKernel for exact, half-pixel, radial, and azimuthal center-relative coordinates. The exact image center consistently uses the positive x-axis as its radial orientation.

Definition at line 107 of file imageFilters_test.cpp.

References mx::noerror.

◆ TEST_CASE() [2/13]

unitTest::improcTest::imageFiltersTest::TEST_CASE ( "azBoxKernel validates widths coordinates and maxAz" ,
"" [improc::azBoxKernel] )

Verify azBoxKernel honors maximum azimuth and validates degenerate configuration values.

Exercises mx::improc::azBoxKernel::setKernel normalization, zero-width identity behavior, absolute half-widths, finite-value validation, and maximum-angle limiting.

Definition at line 193 of file imageFilters_test.cpp.

References mx::math::dtor(), mx::invalidarg, mx::invalidconfig, mx::noerror, and mx::sizeerr.

◆ TEST_CASE() [3/13]

unitTest::improcTest::imageFiltersTest::TEST_CASE ( "Gaussian filter handles non-square image dimensions" ,
"" [improc::imageFilters] )

Verify that filterImage preserves non-square dimensions with a Gaussian kernel.

Definition at line 484 of file imageFilters_test.cpp.

References mx::improc::filterImage(), and mx::noerror.

◆ TEST_CASE() [4/13]

unitTest::improcTest::imageFiltersTest::TEST_CASE ( "meanSmooth honors exact even full widths" ,
"" [improc::meanSmooth] )

Verify that meanSmooth uses an exact even-width footprint.

Exercises both mx::improc::meanSmooth overloads with the same even-window placement used by medianSmooth.

Definition at line 621 of file imageFilters_test.cpp.

References mx::improc::meanSmooth().

◆ TEST_CASE() [5/13]

unitTest::improcTest::imageFiltersTest::TEST_CASE ( "medianFilterImage handles HCI azimuthal kernels" ,
"" [improc::medianFilterImage][hciReduce] )

Verifies HCI azimuthal median filtering through a precomputed azimuthal kernel.

Exercises mx::improc::medianFilterImage with mx::improc::precalcKernel and mx::improc::azBoxKernel.

Definition at line 459 of file imageFilters_test.cpp.

References mx::improc::medianFilterImage().

◆ TEST_CASE() [6/13]

unitTest::improcTest::imageFiltersTest::TEST_CASE ( "medianSmooth honors exact odd and even full widths" ,
"" [improc::medianSmooth] )

Verify that medianSmooth uses exactly the configured odd or even square window.

Exercises both mx::improc::medianSmooth overloads, including the arithmetic mean of the two central samples for an even-sized window and the caller-owned untouched edge pixels.

Definition at line 516 of file imageFilters_test.cpp.

References mx::improc::medianSmooth().

◆ TEST_CASE() [7/13]

unitTest::improcTest::imageFiltersTest::TEST_CASE ( "medianSmooth validates widths and output dimensions" ,
"" [improc::medianSmooth] )

Verify that medianSmooth rejects invalid dimensions without modifying caller-owned pixels.

Exercises mx::improc::medianSmooth validation and deterministic maximum outputs.

Definition at line 589 of file imageFilters_test.cpp.

References mx::improc::medianSmooth().

◆ TEST_CASE() [8/13]

unitTest::improcTest::imageFiltersTest::TEST_CASE ( "precalcKernel caches production kernel values" ,
"" [improc::precalcKernel] )

Verify precalcKernel returns the same Gaussian and azimuthal kernels as their production generators.

Exercises mx::improc::precalcKernel::setKernel against mx::improc::gaussKernel::setKernel and mx::improc::azBoxKernel::setKernel.

Definition at line 55 of file imageFilters_test.cpp.

References mx::improc::precalcKernel< kernelT >::m_kernels, mx::noerror, and mx::improc::precalcKernel< kernelT >::setKernel().

◆ TEST_CASE() [9/13]

unitTest::improcTest::imageFiltersTest::TEST_CASE ( "precalcKernel propagates errors and validates lookup bounds" ,
"" [improc::precalcKernel] )

Verify precalcKernel propagates generation errors and rejects invalid lookup coordinates.

Exercises mx::improc::precalcKernel construction error propagation and mx::improc::precalcKernel::setKernel coordinate bounds.

Definition at line 367 of file imageFilters_test.cpp.

References mx::invalidarg, mx::invalidconfig, mx::noerror, and mx::improc::precalcKernel< kernelT >::setKernel().

◆ TEST_CASE() [10/13]

unitTest::improcTest::imageFiltersTest::TEST_CASE ( "precalcKernel supports odd even and non-square image centers" ,
"" [improc::precalcKernel] )

Verify precalcKernel handles odd, even, and non-square image centers without invalid cached kernels.

Exercises mx::improc::precalcKernel construction and mx::improc::precalcKernel::setKernel at exact and half-pixel image centers.

Definition at line 330 of file imageFilters_test.cpp.

References mx::improc::precalcKernel< kernelT >::m_kernels, mx::noerror, and mx::improc::precalcKernel< kernelT >::setKernel().

◆ TEST_CASE() [11/13]

unitTest::improcTest::imageFiltersTest::TEST_CASE ( "radprofim excludes masked pixels" ,
"" [improc::radprofim][hciReduce] )

Verifies that masked pixels are excluded from and preserved by radial-profile subtraction.

Exercises the masked mx::improc::radprofim overload used when preprocessing must omit invalid pixels.

Definition at line 429 of file imageFilters_test.cpp.

References mx::improc::radiusImage(), mx::improc::radprofim(), and mx::improc::zeroNaNs().

◆ TEST_CASE() [12/13]

unitTest::improcTest::imageFiltersTest::TEST_CASE ( "radprofim subtracts a centered radial background" ,
"" [improc::radprofim][hciReduce] )

Verifies the radial-profile subtraction used by HCI preprocessing.

Exercises mx::improc::radprofim with its centered-radius overload and subtraction enabled, followed by the mx::improc::zeroNaNs cleanup used by HCI.

Definition at line 408 of file imageFilters_test.cpp.

References mx::improc::radprofim(), and mx::improc::zeroNaNs().

◆ TEST_CASE() [13/13]

unitTest::improcTest::imageFiltersTest::TEST_CASE ( "stddevImage subtracts the annular mean for S/N" ,
"" [improc::stddevImage] )

Verify stddevImage centers the signal using the annular mean before calculating S/N.

Exercises mx::improc::stddevImage with a masked reference sample and a non-zero radial mean.

Definition at line 709 of file imageFilters_test.cpp.

References mx::improc::stddevImage().