Isis 3 Programmer Reference
Isis::Statistics Class Reference

This class is used to accumulate statistics on double arrays. More...

#include <Statistics.h>

Inheritance diagram for Isis::Statistics:
Inheritance graph
Collaboration diagram for Isis::Statistics:
Collaboration graph

Classes

class  XmlHandler
 

Public Member Functions

 Statistics (QObject *parent=0)
 Constructs an IsisStats object with accumulators and counters set to zero. More...
 
 Statistics (Project *project, XmlStackedHandlerReader *xmlReader, QObject *parent=0)
 
 Statistics (const PvlGroup &inStats, QObject *parent=0)
 Constructs a Statistics object from an input Pvl. More...
 
 Statistics (const Statistics &other)
 
virtual ~Statistics ()
 Destroys the IsisStats object. More...
 
Statisticsoperator= (const Statistics &other)
 
void Reset ()
 Reset all accumulators and counters to zero. More...
 
void AddData (const double *data, const unsigned int count)
 Add an array of doubles to the accumulators and counters. More...
 
void AddData (const double data)
 Add a double to the accumulators and counters. More...
 
void RemoveData (const double *data, const unsigned int count)
 Remove an array of doubles from the accumulators and counters. More...
 
void RemoveData (const double data)
 
void SetValidRange (const double minimum=Isis::ValidMinimum, const double maximum=Isis::ValidMaximum)
 
double ValidMinimum () const
 
double ValidMaximum () const
 
bool InRange (const double value)
 
bool AboveRange (const double value)
 
bool BelowRange (const double value)
 
double Average () const
 Computes and returns the average. More...
 
double StandardDeviation () const
 Computes and returns the standard deviation. More...
 
double Variance () const
 Computes and returns the variance. More...
 
double Sum () const
 Returns the sum of all the data. More...
 
double SumSquare () const
 Returns the sum of all the squared data. More...
 
double Rms () const
 Computes and returns the rms. More...
 
double Minimum () const
 Returns the absolute minimum double found in all data passed through the AddData method. More...
 
double Maximum () const
 Returns the absolute maximum double found in all data passed through the AddData method. More...
 
double ChebyshevMinimum (const double percent=99.5) const
 This method returns a minimum such that X percent of the data will fall with K standard deviations of the average (Chebyshev's Theorem). More...
 
double ChebyshevMaximum (const double percent=99.5) const
 This method returns a maximum such that X percent of the data will fall with K standard deviations of the average (Chebyshev's Theorem). More...
 
double BestMinimum (const double percent=99.5) const
 This method returns the better of the absolute minimum or the Chebyshev minimum. More...
 
double BestMaximum (const double percent=99.5) const
 This method returns the better of the absolute maximum or the Chebyshev maximum. More...
 
double ZScore (const double value) const
 This method returns the better of the z-score of the given value. More...
 
BigInt TotalPixels () const
 Returns the total number of pixels processed (valid and invalid). More...
 
BigInt ValidPixels () const
 Returns the total number of valid pixels processed. More...
 
BigInt OverRangePixels () const
 Returns the total number of pixels over the valid range encountered. More...
 
BigInt UnderRangePixels () const
 Returns the total number of pixels under the valid range encountered. More...
 
BigInt NullPixels () const
 Returns the total number of NULL pixels encountered. More...
 
BigInt LisPixels () const
 Returns the total number of low instrument saturation (LIS) pixels encountered. More...
 
BigInt LrsPixels () const
 Returns the total number of low representation saturation (LRS) pixels encountered. More...
 
BigInt HisPixels () const
 Returns the total number of high instrument saturation (HIS) pixels encountered. More...
 
BigInt HrsPixels () const
 Returns the total number of high representation saturation (HRS) pixels encountered. More...
 
BigInt OutOfRangePixels () const
 Returns the total number of pixels outside of the valid range encountered. More...
 
bool RemovedData () const
 
PvlGroup toPvl (QString name="Statistics") const
 Serialize statistics as a pvl group. More...
 
void save (QXmlStreamWriter &stream, const Project *project) const
 
QDataStream & write (QDataStream &stream) const
 Order saved must match the offsets in the static compoundH5DataType() method. More...
 
QDataStream & read (QDataStream &stream)
 

Private Member Functions

void fromPvl (const PvlGroup &inStats)
 Unserializes a Statistics object from a pvl group. More...
 

Private Attributes

double m_sum
 The sum accumulator, i.e. the sum of added data values. More...
 
double m_sumsum
 The sum-squared accumulator, i.e. More...
 
double m_minimum
 Minimum double value encountered. More...
 
double m_maximum
 Maximum double value encountered. More...
 
double m_validMinimum
 Minimum valid pixel value. More...
 
double m_validMaximum
 Maximum valid pixel value. More...
 
BigInt m_totalPixels
 Count of total pixels processed. More...
 
BigInt m_validPixels
 Count of valid pixels (non-special) processed. More...
 
BigInt m_nullPixels
 Count of null pixels processed. More...
 
BigInt m_lrsPixels
 Count of low instrument saturation pixels processed. More...
 
BigInt m_lisPixels
 Count of low representation saturation pixels processed. More...
 
BigInt m_hrsPixels
 Count of high instrument saturation pixels processed. More...
 
BigInt m_hisPixels
 Count of high instrument representation pixels processed. More...
 
BigInt m_underRangePixels
 Count of pixels less than the valid range. More...
 
BigInt m_overRangePixels
 Count of pixels greater than the valid range. More...
 
bool m_removedData
 Indicates the RemoveData method was called which implies m_minimum and m_maximum are invalid. More...
 

Detailed Description

This class is used to accumulate statistics on double arrays.

This class is used to accumulate statistics on double arrays. In particular, it is highly useful for obtaining statistics on cube data. Parameters which can be computed are 1) average, 2) standard deviation, 3) variance, 4) minimum, 5) maximum and 6) various counts of valid and/or special pixels.

The following example shows a simple set up and usage of the Statistics class to calculate the average of a set of values:

Statistics myStats ;
double myData [] = { 1.0, 3.0, 2.4, 7.5 } ;
myStats.AddData (myData, 4) ;
double myAverage = myStats.Average () ;
cout << "The average of the data is " << myAverage << endl ;

For an example of how the Statistics object is used in Isis, see the Histogram object (inherits from Statistics) and the stats application, stats.cpp (uses the Statistics child class Histogram).

Author
2002-05-06 Jeff Anderson
History:

2002-05-08 Jeff Anderson - Added Chebyshev and Best minimum/maximum methods.

2004-05-11 Jeff Anderson - Moved Reset, AddData and RemoveData methods into public space.

2004-06-28 Jeff Anderson - Added Sum and SumSquare methods.

2005-02-17 Deborah Lee Soltesz - Modified file to support Doxygen documentation.

2005-05-23 Jeff Anderson - Changed to support 2GB+ files

2006-02-15 Jacob Danton - Added Valid Range options/methods

2006-03-10 Jacob Danton - Added Z-score method

2007-01-18 Robert Sucharski - Added AddData method for a single double value

2008-05-06 Steven Lambright - Added AboveRange, BelowRange methods

2010-03-18 Sharmila Prasad - Error message more meaningful for SetValidRange function

2011-06-13 Ken Edmundson - Added Rms method.

2015-09-01 Tyler Wilson - Made SetValidRange and the destructor virtual. Ref #2188.

2011-06-23 Jeannie Backer - Added QDataStream read(), write() methods and added QDataStream >> and << operators. Replaced std strings with QStrings.

2014-09-05 Jeannie Backer - Added xml read/write capabilities. Moved method implementation to cpp file. Improved coverage of unitTest. Brought code closer to standards.

2015-09-03 Jeannie Backer - Added hdf5 read/write capabilities by adding compoundH5DataType() static method.

2015-12-21 Jeannie Backer - Changed compoundH5DataType() method to update offset by using member variabl datatypes directly. This was done so that MAC OSX will compile.

2015-12-21 Jeannie Backer - Changed H5::PredType::NATIVE_HBOOL to H5::PredType::NATIVE_INT64 in compoundH5DataType() method. This was done so that MAC OSX will compile.

2016-07-15 Ian Humphrey - Added constructor that initializes a Statistics object from a PvlGroup. Added toPvl() and fromPvl() methods to allow Statistics serialization/unserialization. References #2282.

2017-04-20 Makayla Shepherd - Removed the hdf5 code because we are using XML for serialization. Fixes #4795.

Todo:

2005-02-07 Deborah Lee Soltesz - add example using cube data to the class documentation

2015-08-13 Jeannie Backer - Clean up header and implementation files once serialization is implemented. (Remove xml, data stream, hdf, etc)

Definition at line 107 of file Statistics.h.

Constructor & Destructor Documentation

◆ Statistics() [1/2]

Isis::Statistics::Statistics ( QObject parent = 0)

Constructs an IsisStats object with accumulators and counters set to zero.

Definition at line 41 of file Statistics.cpp.

References Reset().

◆ Statistics() [2/2]

Isis::Statistics::Statistics ( const PvlGroup inStats,
QObject parent = 0 
)

Constructs a Statistics object from an input Pvl.

Parameters
constPvlGroup & - The input statistics

Definition at line 61 of file Statistics.cpp.

References fromPvl(), and Reset().

◆ ~Statistics()

Isis::Statistics::~Statistics ( )
virtual

Destroys the IsisStats object.

Definition at line 90 of file Statistics.cpp.

Member Function Documentation

◆ AddData() [1/2]

void Isis::Statistics::AddData ( const double *  data,
const unsigned int  count 
)

Add an array of doubles to the accumulators and counters.

This method can be invoked multiple times (for example: once for each line in a cube) before obtaining statistics.

Parameters
dataThe data to be added to the data set used for statistical calculations.
countThe number of elements in the incoming data to be added.

Definition at line 154 of file Statistics.cpp.

Referenced by Isis::MultivariateStatistics::AddData(), Isis::CameraStatistics::addStats(), Isis::averageLines(), Isis::averageSamples(), Isis::Process::CalculateStatistics(), Isis::Gruen::CheckConstraints(), Isis::BundleAdjust::computeBundleStatistics(), Isis::AutoReg::ComputeChipZScore(), Isis::ChipViewport::computeStretch(), Isis::GainLineStat(), Isis::ControlNetStatistics::GenerateImageStats(), Isis::ControlPoint::GetLineResidualRms(), Isis::ControlNetStatistics::GetPointDoubleStats(), Isis::ControlPoint::GetResidualRms(), Isis::ControlPoint::GetSampleResidualRms(), Isis::SpatialPlotTool::getSpatialStatistics(), Isis::SpectralPlotTool::getSpectralStatistics(), Isis::ControlPoint::GetStatistic(), Isis::StatisticsTool::getStatistics(), Isis::MosaicSceneItem::getStretch(), Isis::ZeroBufferFit::guess(), Isis::ZeroReverse::init(), Isis::ZeroBufferSmooth::init(), Isis::StandardDeviationOperator::Interest(), Isis::BundleSolutionInfo::outputHeader(), Isis::ControlPointGraphicsItem::paint(), Isis::AutoReg::Reduce(), Isis::ReseauDistortionMap::SetFocalPlane(), Isis::VisualDisplay::setPixelData(), Isis::ReseauDistortionMap::SetUndistortedFocalPlane(), Isis::Chip::Statistics(), Isis::Cube::statistics(), and Isis::StretchTool::statsFromCube().

◆ AddData() [2/2]

void Isis::Statistics::AddData ( const double  data)

Add a double to the accumulators and counters.

This method can be invoked multiple times (for example: once for each pixel in a cube) before obtaining statistics.

Parameters
dataThe data to be added to the data set used for statistical calculations.

Definition at line 171 of file Statistics.cpp.

References Isis::IsHisPixel(), Isis::IsHrsPixel(), Isis::IsLisPixel(), Isis::IsLrsPixel(), Isis::IsNullPixel(), m_hisPixels, m_hrsPixels, m_lisPixels, m_lrsPixels, m_maximum, m_minimum, m_nullPixels, m_overRangePixels, m_sum, m_sumsum, m_totalPixels, m_underRangePixels, and m_validPixels.

◆ Average()

◆ BestMaximum()

double Isis::Statistics::BestMaximum ( const double  percent = 99.5) const

This method returns the better of the absolute maximum or the Chebyshev maximum.

The better value is considered the value closest to the mean.

Parameters
percentThe probability that the maximum is within K standard deviations of the mean (Used to compute the Chebyshev maximum). Default value = 99.5.
Returns
Best of absolute and Chebyshev maximums
See also
Statistics::Maximum Statistics::ChebyshevMaximum

Definition at line 634 of file Statistics.cpp.

References ChebyshevMaximum(), m_validPixels, and Maximum().

Referenced by Isis::ChipViewport::computeStretch(), Isis::MosaicSceneItem::getStretch(), Isis::StretchTool::histFromBuffer(), Isis::VisualDisplay::setPixelData(), Isis::LinearStretchType::setStretch(), Isis::StretchTool::stretchBand(), and Isis::StretchTool::stretchBuffer().

◆ BestMinimum()

double Isis::Statistics::BestMinimum ( const double  percent = 99.5) const

This method returns the better of the absolute minimum or the Chebyshev minimum.

The better value is considered the value closest to the mean.

Parameters
percentThe probability that the minimum is within K standard deviations of the mean (Used to compute the Chebyshev minimum). Default value = 99.5.
Returns
Best of absolute and Chebyshev minimums
See also
Statistics::Minimum Statistics::ChebyshevMinimum

Definition at line 611 of file Statistics.cpp.

References ChebyshevMinimum(), m_validPixels, and Minimum().

Referenced by Isis::ChipViewport::computeStretch(), Isis::MosaicSceneItem::getStretch(), Isis::StretchTool::histFromBuffer(), Isis::VisualDisplay::setPixelData(), Isis::LinearStretchType::setStretch(), Isis::StretchTool::stretchBand(), and Isis::StretchTool::stretchBuffer().

◆ ChebyshevMaximum()

double Isis::Statistics::ChebyshevMaximum ( const double  percent = 99.5) const

This method returns a maximum such that X percent of the data will fall with K standard deviations of the average (Chebyshev's Theorem).

It can be used to obtain a minimum that does not include statistical outliers.

Parameters
percentThe probability that the maximum is within K standard deviations of the mean. Default value = 99.5.
Returns
maximum value excluding statistical outliers
Exceptions
Isis::IException::Message

Definition at line 585 of file Statistics.cpp.

References _FILEINFO_, Average(), m_validPixels, Isis::IException::Programmer, and StandardDeviation().

Referenced by BestMaximum().

◆ ChebyshevMinimum()

double Isis::Statistics::ChebyshevMinimum ( const double  percent = 99.5) const

This method returns a minimum such that X percent of the data will fall with K standard deviations of the average (Chebyshev's Theorem).

It can be used to obtain a minimum that does not include statistical outliers.

Parameters
percentThe probability that the minimum is within K standard deviations of the mean. Default value = 99.5.
Returns
Minimum value (excluding statistical outliers)
Exceptions
Isis::IException::Message

Definition at line 558 of file Statistics.cpp.

References _FILEINFO_, Average(), m_validPixels, Isis::IException::Programmer, and StandardDeviation().

Referenced by BestMinimum().

◆ fromPvl()

void Isis::Statistics::fromPvl ( const PvlGroup inStats)
private

Unserializes a Statistics object from a pvl group.

Parameters
constPvlGroup &inStats - The input statistics

Definition at line 672 of file Statistics.cpp.

References m_hisPixels, m_hrsPixels, m_lisPixels, m_lrsPixels, m_maximum, m_minimum, m_nullPixels, m_overRangePixels, m_removedData, m_sum, m_sumsum, m_totalPixels, m_underRangePixels, m_validMaximum, m_validMinimum, m_validPixels, and Reset().

Referenced by Statistics().

◆ HisPixels()

BigInt Isis::Statistics::HisPixels ( ) const

Returns the total number of high instrument saturation (HIS) pixels encountered.

Returns
The number of HIS pixels (data) processed

Definition at line 511 of file Statistics.cpp.

References m_hisPixels.

Referenced by Isis::ZeroReverse::init(), and toPvl().

◆ HrsPixels()

BigInt Isis::Statistics::HrsPixels ( ) const

Returns the total number of high representation saturation (HRS) pixels encountered.

Returns
The number of HRS pixels (data) processed

Definition at line 522 of file Statistics.cpp.

References m_hrsPixels.

Referenced by toPvl().

◆ LisPixels()

BigInt Isis::Statistics::LisPixels ( ) const

Returns the total number of low instrument saturation (LIS) pixels encountered.

Returns
The number of LIS pixels (data) processed

Definition at line 489 of file Statistics.cpp.

References m_lisPixels.

Referenced by Isis::ZeroReverse::init(), and toPvl().

◆ LrsPixels()

BigInt Isis::Statistics::LrsPixels ( ) const

Returns the total number of low representation saturation (LRS) pixels encountered.

Returns
The number of LRS pixels (data) processed

Definition at line 500 of file Statistics.cpp.

References m_lrsPixels.

Referenced by toPvl().

◆ Maximum()

double Isis::Statistics::Maximum ( ) const

Returns the absolute maximum double found in all data passed through the AddData method.

If there are no valid pixels, then NULL8 is returned.

Returns
Current maximum value in data set
Exceptions
Isis::IException::MessageThe data set is blank, so the maximum is invalid.

Definition at line 416 of file Statistics.cpp.

References _FILEINFO_, m_maximum, m_removedData, m_validPixels, and Isis::IException::Programmer.

Referenced by BestMaximum(), Isis::BinaryStretchType::calculateNewStretch(), Isis::SawtoothStretchType::calculateNewStretch(), Isis::AutoReg::ComputeChipZScore(), Isis::BinaryStretchType::endEditChanged(), Isis::LinearStretchType::endEditChanged(), Isis::BinaryStretchType::endSliderMoved(), Isis::LinearStretchType::endSliderMoved(), Isis::QnetPointJigsawErrorFilter::filter(), Isis::QnetPointRegistrationErrorFilter::filter(), Isis::GaussianStretch::GaussianStretch(), Isis::ControlNetStatistics::GenerateControlNetStats(), Isis::ControlNet::GetMaximumResidual(), Isis::ControlNetStatistics::GetPointDoubleStats(), Isis::StatisticsTool::getStatistics(), Isis::SawtoothStretchType::offsetEditChanged(), Isis::SawtoothStretchType::offsetSliderMoved(), Isis::ControlPointGraphicsItem::paint(), Isis::VisualDisplay::paintPixmap(), Isis::HistogramTool::refreshPlot(), Isis::SawtoothStretchType::SawtoothStretchType(), Isis::ScatterPlotData::ScatterPlotData(), Isis::HistogramWidget::setHistogram(), Isis::BinaryStretchType::setStretch(), Isis::BinaryStretchType::startEditChanged(), Isis::LinearStretchType::startEditChanged(), Isis::BinaryStretchType::startSliderMoved(), Isis::LinearStretchType::startSliderMoved(), Isis::Gruen::StatsLog(), Isis::StretchTool::stretchBuffer(), Isis::CameraStatistics::toPvl(), toPvl(), Isis::SawtoothStretchType::widthEditChanged(), Isis::SawtoothStretchType::widthSliderMoved(), and ZScore().

◆ Minimum()

double Isis::Statistics::Minimum ( ) const

Returns the absolute minimum double found in all data passed through the AddData method.

If there are no valid pixels, then NULL8 is returned.

Returns
Current minimum value in data set.
Exceptions
Isis::IException::MessageThe data set is blank, so the minimum is invalid.

Definition at line 395 of file Statistics.cpp.

References _FILEINFO_, m_minimum, m_removedData, m_validPixels, and Isis::IException::Programmer.

Referenced by BestMinimum(), Isis::BinaryStretchType::calculateNewStretch(), Isis::SawtoothStretchType::calculateNewStretch(), Isis::AutoReg::ComputeChipZScore(), Isis::BinaryStretchType::endEditChanged(), Isis::LinearStretchType::endEditChanged(), Isis::BinaryStretchType::endSliderMoved(), Isis::LinearStretchType::endSliderMoved(), Isis::GaussianStretch::GaussianStretch(), Isis::ControlNetStatistics::GenerateControlNetStats(), Isis::ControlNetStatistics::GetPointDoubleStats(), Isis::StatisticsTool::getStatistics(), Isis::SawtoothStretchType::offsetEditChanged(), Isis::SawtoothStretchType::offsetSliderMoved(), Isis::VisualDisplay::paintPixmap(), Isis::HistogramTool::refreshPlot(), Isis::SawtoothStretchType::SawtoothStretchType(), Isis::ScatterPlotData::ScatterPlotData(), Isis::HistogramWidget::setHistogram(), Isis::BinaryStretchType::setStretch(), Isis::BinaryStretchType::startEditChanged(), Isis::LinearStretchType::startEditChanged(), Isis::BinaryStretchType::startSliderMoved(), Isis::LinearStretchType::startSliderMoved(), Isis::Gruen::StatsLog(), Isis::StretchTool::stretchBuffer(), Isis::CameraStatistics::toPvl(), toPvl(), Isis::SawtoothStretchType::widthEditChanged(), and Isis::SawtoothStretchType::widthSliderMoved().

◆ NullPixels()

BigInt Isis::Statistics::NullPixels ( ) const

Returns the total number of NULL pixels encountered.

Returns
The number of NULL pixels (data) processed

Definition at line 478 of file Statistics.cpp.

References m_nullPixels.

Referenced by Isis::ZeroReverse::init(), and toPvl().

◆ OutOfRangePixels()

BigInt Isis::Statistics::OutOfRangePixels ( ) const

Returns the total number of pixels outside of the valid range encountered.

Returns
The number of Out of Range pixels (data) processed

Definition at line 533 of file Statistics.cpp.

References m_overRangePixels, and m_underRangePixels.

◆ OverRangePixels()

BigInt Isis::Statistics::OverRangePixels ( ) const

Returns the total number of pixels over the valid range encountered.

Returns
The number of pixels less than the ValidMaximum() processed

Definition at line 457 of file Statistics.cpp.

References m_overRangePixels.

Referenced by toPvl().

◆ RemoveData()

void Isis::Statistics::RemoveData ( const double *  data,
const unsigned int  count 
)

Remove an array of doubles from the accumulators and counters.

Note that is invalidates the absolute minimum and maximum. They will no longer be usable.

Parameters
dataThe data to be removed from data set used for statistical calculations.
countThe number of elements in the data to be removed.
Exceptions
IException::MessageRemoveData is trying to remove data that doesn't exist.

Definition at line 219 of file Statistics.cpp.

Referenced by Isis::MultivariateStatistics::RemoveData().

◆ Reset()

◆ Rms()

double Isis::Statistics::Rms ( ) const

Computes and returns the rms.

If there are no valid pixels, then NULL8 is returned.

Returns
The rms (root mean square)
History:
2011-06-13 Ken Edmundson.

Definition at line 378 of file Statistics.cpp.

References m_sumsum, and m_validPixels.

Referenced by Isis::BundleAdjust::computeBundleStatistics(), Isis::ControlPoint::GetLineResidualRms(), Isis::ControlPoint::GetResidualRms(), Isis::ControlPoint::GetSampleResidualRms(), and Isis::BundleSolutionInfo::outputHeader().

◆ StandardDeviation()

◆ Sum()

double Isis::Statistics::Sum ( ) const

Returns the sum of all the data.

Returns
The sum of the data

Definition at line 354 of file Statistics.cpp.

References m_sum.

Referenced by Isis::MultivariateStatistics::Covariance(), Isis::MultivariateStatistics::LinearRegression(), and toPvl().

◆ SumSquare()

double Isis::Statistics::SumSquare ( ) const

Returns the sum of all the squared data.

Returns
The sum of the squared data

Definition at line 364 of file Statistics.cpp.

References m_sumsum.

Referenced by Isis::MultivariateStatistics::LinearRegression(), and toPvl().

◆ toPvl()

PvlGroup Isis::Statistics::toPvl ( QString  name = "Statistics") const

Serialize statistics as a pvl group.

Parameters
QStringname (Default value is "Statistics") - Name of the statistics group
Returns
PvlGroup Statistics information as a pvl group

Definition at line 700 of file Statistics.cpp.

References Average(), HisPixels(), HrsPixels(), LisPixels(), LrsPixels(), Maximum(), Minimum(), NullPixels(), OverRangePixels(), StandardDeviation(), Sum(), SumSquare(), Isis::toString(), TotalPixels(), UnderRangePixels(), ValidPixels(), and Variance().

Referenced by Isis::MultivariateStatistics::toPvl().

◆ TotalPixels()

BigInt Isis::Statistics::TotalPixels ( ) const

Returns the total number of pixels processed (valid and invalid).

Returns
The number of pixels (data) processed

Definition at line 433 of file Statistics.cpp.

References m_totalPixels.

Referenced by Isis::VisualDisplay::paintPixmap(), and toPvl().

◆ UnderRangePixels()

BigInt Isis::Statistics::UnderRangePixels ( ) const

Returns the total number of pixels under the valid range encountered.

Returns
The number of pixels less than the ValidMinimum() processed

Definition at line 468 of file Statistics.cpp.

References m_underRangePixels.

Referenced by toPvl().

◆ ValidPixels()

BigInt Isis::Statistics::ValidPixels ( ) const

Returns the total number of valid pixels processed.

Only valid pixels are utilized when computing the average, standard deviation, variance, minimum and maximum.

Returns
The number of valid pixels (data) processed

Definition at line 446 of file Statistics.cpp.

References m_validPixels.

Referenced by Isis::OverlapNormalization::AddOverlap(), Isis::ControlNetStatistics::GetPointDoubleStats(), Isis::StatisticsTool::getStatistics(), Isis::QHistogram::Load(), Isis::HistogramTool::refreshPlot(), Isis::StretchTool::stretchBuffer(), toPvl(), and Isis::StretchTool::updateHistograms().

◆ Variance()

double Isis::Statistics::Variance ( ) const

Computes and returns the variance.

If there are no valid pixels, then NULL8 is returned.

Returns
The variance
History:
2003-08-27 Jeff Anderson - Modified Variance method to compute using n*(n-1) instead of n*n.

Definition at line 341 of file Statistics.cpp.

References m_sum, m_sumsum, and m_validPixels.

Referenced by Isis::HistogramTool::refreshPlot(), StandardDeviation(), and toPvl().

◆ write()

QDataStream & Isis::Statistics::write ( QDataStream &  stream) const

Order saved must match the offsets in the static compoundH5DataType() method.

Definition at line 861 of file Statistics.cpp.

References m_hisPixels, m_hrsPixels, m_lisPixels, m_lrsPixels, m_maximum, m_minimum, m_nullPixels, m_overRangePixels, m_removedData, m_sum, m_sumsum, m_totalPixels, m_underRangePixels, m_validMaximum, m_validMinimum, and m_validPixels.

◆ ZScore()

double Isis::Statistics::ZScore ( const double  value) const

This method returns the better of the z-score of the given value.

The z-score is the number of standard deviations the value lies above or below the average.

Parameters
valueThe value to calculate the z-score of.
Returns
z-score

Definition at line 654 of file Statistics.cpp.

References _FILEINFO_, Average(), Maximum(), Isis::IException::Programmer, StandardDeviation(), and Isis::toString().

Referenced by Isis::AutoReg::ComputeChipZScore().

Member Data Documentation

◆ m_hisPixels

BigInt Isis::Statistics::m_hisPixels
private

Count of high instrument representation pixels processed.

Definition at line 216 of file Statistics.h.

Referenced by AddData(), fromPvl(), HisPixels(), Reset(), and write().

◆ m_hrsPixels

BigInt Isis::Statistics::m_hrsPixels
private

Count of high instrument saturation pixels processed.

Definition at line 215 of file Statistics.h.

Referenced by AddData(), fromPvl(), HrsPixels(), Reset(), and write().

◆ m_lisPixels

BigInt Isis::Statistics::m_lisPixels
private

Count of low representation saturation pixels processed.

Definition at line 214 of file Statistics.h.

Referenced by AddData(), fromPvl(), LisPixels(), Reset(), and write().

◆ m_lrsPixels

BigInt Isis::Statistics::m_lrsPixels
private

Count of low instrument saturation pixels processed.

Definition at line 213 of file Statistics.h.

Referenced by AddData(), fromPvl(), LrsPixels(), Reset(), and write().

◆ m_maximum

double Isis::Statistics::m_maximum
private

Maximum double value encountered.

Definition at line 207 of file Statistics.h.

Referenced by AddData(), fromPvl(), Maximum(), Reset(), and write().

◆ m_minimum

double Isis::Statistics::m_minimum
private

Minimum double value encountered.

Definition at line 206 of file Statistics.h.

Referenced by AddData(), fromPvl(), Minimum(), Reset(), and write().

◆ m_nullPixels

BigInt Isis::Statistics::m_nullPixels
private

Count of null pixels processed.

Definition at line 212 of file Statistics.h.

Referenced by AddData(), fromPvl(), NullPixels(), Reset(), and write().

◆ m_overRangePixels

BigInt Isis::Statistics::m_overRangePixels
private

Count of pixels greater than the valid range.

Definition at line 218 of file Statistics.h.

Referenced by AddData(), fromPvl(), OutOfRangePixels(), OverRangePixels(), Reset(), and write().

◆ m_removedData

bool Isis::Statistics::m_removedData
private

Indicates the RemoveData method was called which implies m_minimum and m_maximum are invalid.

Definition at line 219 of file Statistics.h.

Referenced by fromPvl(), Maximum(), Minimum(), Reset(), and write().

◆ m_sum

double Isis::Statistics::m_sum
private

The sum accumulator, i.e. the sum of added data values.

Definition at line 203 of file Statistics.h.

Referenced by AddData(), Average(), fromPvl(), Reset(), Sum(), Variance(), and write().

◆ m_sumsum

double Isis::Statistics::m_sumsum
private

The sum-squared accumulator, i.e.

the sum of the squares of the data values.

Definition at line 204 of file Statistics.h.

Referenced by AddData(), fromPvl(), Reset(), Rms(), SumSquare(), Variance(), and write().

◆ m_totalPixels

BigInt Isis::Statistics::m_totalPixels
private

Count of total pixels processed.

Definition at line 210 of file Statistics.h.

Referenced by AddData(), fromPvl(), Reset(), TotalPixels(), and write().

◆ m_underRangePixels

BigInt Isis::Statistics::m_underRangePixels
private

Count of pixels less than the valid range.

Definition at line 217 of file Statistics.h.

Referenced by AddData(), fromPvl(), OutOfRangePixels(), Reset(), UnderRangePixels(), and write().

◆ m_validMaximum

double Isis::Statistics::m_validMaximum
private

Maximum valid pixel value.

Definition at line 209 of file Statistics.h.

Referenced by fromPvl(), and write().

◆ m_validMinimum

double Isis::Statistics::m_validMinimum
private

Minimum valid pixel value.

Definition at line 208 of file Statistics.h.

Referenced by fromPvl(), and write().

◆ m_validPixels

BigInt Isis::Statistics::m_validPixels
private

Count of valid pixels (non-special) processed.

Definition at line 211 of file Statistics.h.

Referenced by AddData(), Average(), BestMaximum(), BestMinimum(), ChebyshevMaximum(), ChebyshevMinimum(), fromPvl(), Maximum(), Minimum(), Reset(), Rms(), StandardDeviation(), ValidPixels(), Variance(), and write().


The documentation for this class was generated from the following files: