mxlib
c++ tools for analyzing astronomical data and other tasks by Jared R. Males. [git repo]
|
Noise profiles of images
template<typename eigenImT , typename eigenImT1 , typename eigenImT2 , typename eigenImT3 > | |
void | mx::improc::stddevImage (eigenImT &stdIm, const eigenImT1 &im, const eigenImT2 &rad, const eigenImT3 &mask, typename eigenImT::Scalar minRad, typename eigenImT::Scalar maxRad, bool divide) |
Form a standard deviation image, and optionally divide the input by it to form a S/N map. More... | |
template<typename eigenImT , typename eigenImT1 , typename eigenImT2 > | |
void | mx::improc::stddevImage (eigenImT &stdIm, const eigenImT1 &im, const eigenImT2 &mask, typename eigenImT::Scalar minRad, typename eigenImT::Scalar maxRad, bool divide=false) |
Form a standard deviation image, and optionally divide the input by it to form a S/N map. More... | |
template<typename eigenCubeT , typename eigenCubeT1 , typename eigenImT > | |
void | mx::improc::stddevImageCube (eigenCubeT &stdImc, const eigenCubeT1 &imc, const eigenImT &mask, typename eigenImT::Scalar minRad, typename eigenImT::Scalar maxRad, bool divide=false) |
Form a standard deviation image for each imamge in a cube, and optionally divide the input by it forming a S/N map cube. More... | |
void mx::improc::stddevImage | ( | eigenImT & | stdIm, |
const eigenImT1 & | im, | ||
const eigenImT2 & | mask, | ||
typename eigenImT::Scalar | minRad, | ||
typename eigenImT::Scalar | maxRad, | ||
bool | divide = false |
||
) |
Form a standard deviation image, and optionally divide the input by it to form a S/N map.
The standard deviation profile is calculated using linear interpolation on a 1 pixel grid
This version creates a radius map on each call, and calls the above version. This should not be used for repeated alls, rather create a radius map ahead of time.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
eigenImT | the eigen array type of the output and non-reference images |
[out] | stdIm | the standard deviation image. This will be resized. |
[in] | im | the image to form the standard deviation profile of, never altered. |
[in] | mask | a 1/0 mask. 0 pixels are excluded from the std-dev calculations. |
[in] | minRad | the minimum radius to analyze |
[in] | maxRad | the maximum radius to analyze |
[in] | divide | [optional] if true, the output is the input image is divided by the std-dev profile, i.e. a S/N map. default is false. |
Definition at line 1184 of file imageFilters.hpp.
References mx::improc::radiusImage().
Referenced by mx::improc::stddevImageCube().
void mx::improc::stddevImage | ( | eigenImT & | stdIm, |
const eigenImT1 & | im, | ||
const eigenImT2 & | rad, | ||
const eigenImT3 & | mask, | ||
typename eigenImT::Scalar | minRad, | ||
typename eigenImT::Scalar | maxRad, | ||
bool | divide | ||
) |
Form a standard deviation image, and optionally divide the input by it to form a S/N map.
The standard deviation profile is calculated using linear interpolation on a 1 pixel grid
eigenImT | the eigen array type of the output and non-reference images. Each image input can be a different type to allow references, etc. |
[out] | stdIm | the standard deviation image. This will be resized. |
[in] | im | the image to form the standard deviation profile of, never altered. |
[in] | rad | array of radius values |
[in] | mask | a 1/0 mask. 0 pixels are excluded from the std-dev calculations. |
[in] | minRad | the minimum radius to analyze |
[in] | maxRad | the maximum radius to analyze |
[in] | divide | if true, the output is the input image is divided by the std-dev profile, i.e. a S/N map. default is false. |
Definition at line 1079 of file imageFilters.hpp.
References mx::math::vectorVariance().
void mx::improc::stddevImageCube | ( | eigenCubeT & | stdImc, |
const eigenCubeT1 & | imc, | ||
const eigenImT & | mask, | ||
typename eigenImT::Scalar | minRad, | ||
typename eigenImT::Scalar | maxRad, | ||
bool | divide = false |
||
) |
Form a standard deviation image for each imamge in a cube, and optionally divide the input by it forming a S/N map cube.
The standard deviation profile is calculated using linear interpolation on a 1 pixel grid
eigencubeT | is the eigen cube type of the input and output cubes. |
eigenImT | the eigen array type of the output and non-reference images. |
[out] | stdImc | the standard deviation image cube. This will be resized. |
[in] | imc | the image cube to form the standard deviation profile of. |
[in] | mask | a 1/0 mask. 0 pixels are excluded from the std-dev calculations. |
[in] | minRad | the minimum radius to analyze |
[in] | maxRad | the maximum radius to analyze |
[in] | divide | [optional] if true, the output is the input image is divided by the std-dev profile, i.e. a S/N map. default is false. |
Definition at line 1212 of file imageFilters.hpp.
References mx::improc::radiusImage(), and mx::improc::stddevImage().