52 #ifndef __PCL_PSFSignalEstimator_h
53 #define __PCL_PSFSignalEstimator_h
87 double totalPowerFlux = 0;
88 double totalMeanFlux = 0;
89 double totalMeanPowerFlux = 0;
101 operator double()
const
111 return count > 0 && 1 + totalFlux != 1 && 1 + MStar != 1;
122 m_saturationThreshold = 1.0F;
123 m_saturationRelative =
false;
169 PCL_PRECONDITION( scale >= 32 && scale <= 1024 )
170 m_scale =
Range( scale, 32, 1024 );
196 return EstimateSignal( image );
240 return 2.48308 *
pcl::MAD( R.Begin(), R.End() );
261 return 2.03636 *
pcl::Sn( R.Begin(), R.End() );
276 return NStar_Sn( R );
297 return (5.326e-6 * E.totalFlux * E.totalMeanFlux) / (9.0e+6 * sigmaN * E.MStar);
318 return (1.316e-7 * E.totalFlux * E.totalFlux) / (4.987e+6 * sigmaN * sigmaN);
Acts like a union for all types of images in PCL, with optional class-wide ownership of transported i...
Base class of estimators based on PSF photometry.
StarDetector::psf_function psf_function
Signal estimation based on PSF photometry.
Estimates EstimateSignal(const ImageVariant &image) const
~PSFSignalEstimator() override
int BackgroundModelScale() const
static double NStar(T &R)
static double PSFSNR(const Estimates &E, double sigmaN=0)
static double PSFSignalWeight(const Estimates &E, double sigmaN=0)
static double NStar_MAD(const T &R)
Estimates operator()(const ImageVariant &image) const
void SetBackgroundModelScale(int scale)
static double NStar_Sn(T &R)
PSFSignalEstimator(const PSFSignalEstimator &)=default
static Array< float > LocalBackgroundResidual(const ImageVariant &image, int scale=256, int maxThreads=0)
double MAD(const T *__restrict__ i, const T *__restrict__ j, double center)
double Sn(T *__restrict__ x, T *__restrict__ xn)
constexpr const T & Range(const T &x, const T &a, const T &b) noexcept
Structure to hold PSF flux and robust mean background estimates.