Isis 3 Programmer Reference
|
Gaussian stretch class. More...
#include <GaussianStretch.h>
Public Member Functions | |
GaussianStretch (Histogram &histogram, const double mean=0.0, const double standardDeviation=1.0) | |
Constructs a gaussian stretch object. More... | |
double | Map (const double value) const |
Maps an input value to an output value based on the gaussian distribution. More... | |
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 Attributes | |
Stretch | p_stretch |
Value of the mean. More... | |
Gaussian stretch class.
This class is used to stretch the input histogram to a gaussian distribution with the specified mean and standard deviation.
2006-05-25 Jacob Danton Original Version
2006-10-28 Stuart Sides Fixed stretch pair ordering
2008-09-09 Steven Lambright Fixed stretch pair ordering again; this fix does not solve our problem but makes our tests work and isn't wrong.
Definition at line 51 of file GaussianStretch.h.
Isis::GaussianStretch::GaussianStretch | ( | Histogram & | histogram, |
const double | mean = 0.0 , |
||
const double | standardDeviation = 1.0 |
||
) |
Constructs a gaussian stretch object.
histogram | The input histogram |
mean | The mean of the output distribution |
standardDeviation | The standard deviation of the output distribution |
Definition at line 41 of file GaussianStretch.cpp.
References Isis::Histogram::Bins(), Isis::GaussianDistribution::InverseCumulativeDistribution(), Isis::Statistics::Maximum(), Isis::Statistics::Minimum(), and Isis::Histogram::Percent().
|
inherited |
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.
data | The data to be added to the data set used for statistical calculations. |
count | The 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().
|
inherited |
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.
data | The 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(), Isis::Statistics::m_hisPixels, Isis::Statistics::m_hrsPixels, Isis::Statistics::m_lisPixels, Isis::Statistics::m_lrsPixels, Isis::Statistics::m_maximum, Isis::Statistics::m_minimum, Isis::Statistics::m_nullPixels, Isis::Statistics::m_overRangePixels, Isis::Statistics::m_sum, Isis::Statistics::m_sumsum, Isis::Statistics::m_totalPixels, Isis::Statistics::m_underRangePixels, and Isis::Statistics::m_validPixels.
|
inherited |
Computes and returns the average.
If there are no valid pixels, then NULL8 is returned.
Definition at line 313 of file Statistics.cpp.
References Isis::Statistics::m_sum, and Isis::Statistics::m_validPixels.
Referenced by Isis::OverlapNormalization::AddOverlap(), Isis::averageLines(), Isis::ControlNet::AverageResidual(), Isis::averageSamples(), Isis::Statistics::ChebyshevMaximum(), Isis::Statistics::ChebyshevMinimum(), Isis::MultivariateStatistics::Covariance(), Isis::ControlNetStatistics::GenerateControlNetStats(), Isis::ControlNetStatistics::GetPointDoubleStats(), Isis::SpatialPlotTool::getSpatialStatistics(), Isis::SpectralPlotTool::getSpectralStatistics(), Isis::StatisticsTool::getStatistics(), Isis::ZeroBufferFit::guess(), Isis::ZeroReverse::init(), Isis::ZeroBufferSmooth::init(), Isis::ControlPointGraphicsItem::paint(), Isis::VisualDisplay::paintPixmap(), Isis::AutoReg::Reduce(), Isis::HistogramTool::refreshPlot(), Isis::OverlapNormalization::Solve(), Isis::Gruen::StatsLog(), Isis::CameraStatistics::toPvl(), Isis::Statistics::toPvl(), and Isis::Statistics::ZScore().
|
inherited |
This method returns the better of the absolute maximum or the Chebyshev maximum.
The better value is considered the value closest to the mean.
percent | The probability that the maximum is within K standard deviations of the mean (Used to compute the Chebyshev maximum). Default value = 99.5. |
Definition at line 634 of file Statistics.cpp.
References Isis::Statistics::ChebyshevMaximum(), Isis::Statistics::m_validPixels, and Isis::Statistics::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().
|
inherited |
This method returns the better of the absolute minimum or the Chebyshev minimum.
The better value is considered the value closest to the mean.
percent | The probability that the minimum is within K standard deviations of the mean (Used to compute the Chebyshev minimum). Default value = 99.5. |
Definition at line 611 of file Statistics.cpp.
References Isis::Statistics::ChebyshevMinimum(), Isis::Statistics::m_validPixels, and Isis::Statistics::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().
|
inherited |
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.
percent | The probability that the maximum is within K standard deviations of the mean. Default value = 99.5. |
Isis::IException::Message |
Definition at line 585 of file Statistics.cpp.
References _FILEINFO_, Isis::Statistics::Average(), Isis::Statistics::m_validPixels, Isis::IException::Programmer, and Isis::Statistics::StandardDeviation().
Referenced by Isis::Statistics::BestMaximum().
|
inherited |
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.
percent | The probability that the minimum is within K standard deviations of the mean. Default value = 99.5. |
Isis::IException::Message |
Definition at line 558 of file Statistics.cpp.
References _FILEINFO_, Isis::Statistics::Average(), Isis::Statistics::m_validPixels, Isis::IException::Programmer, and Isis::Statistics::StandardDeviation().
Referenced by Isis::Statistics::BestMinimum().
|
inherited |
Returns the total number of high instrument saturation (HIS) pixels encountered.
Definition at line 511 of file Statistics.cpp.
References Isis::Statistics::m_hisPixels.
Referenced by Isis::ZeroReverse::init(), and Isis::Statistics::toPvl().
|
inherited |
Returns the total number of high representation saturation (HRS) pixels encountered.
Definition at line 522 of file Statistics.cpp.
References Isis::Statistics::m_hrsPixels.
Referenced by Isis::Statistics::toPvl().
|
inherited |
Returns the total number of low instrument saturation (LIS) pixels encountered.
Definition at line 489 of file Statistics.cpp.
References Isis::Statistics::m_lisPixels.
Referenced by Isis::ZeroReverse::init(), and Isis::Statistics::toPvl().
|
inherited |
Returns the total number of low representation saturation (LRS) pixels encountered.
Definition at line 500 of file Statistics.cpp.
References Isis::Statistics::m_lrsPixels.
Referenced by Isis::Statistics::toPvl().
double Isis::GaussianStretch::Map | ( | const double | value | ) | const |
Maps an input value to an output value based on the gaussian distribution.
value | Value to map |
Definition at line 73 of file GaussianStretch.cpp.
|
inherited |
Returns the absolute maximum double found in all data passed through the AddData method.
If there are no valid pixels, then NULL8 is returned.
Isis::IException::Message | The data set is blank, so the maximum is invalid. |
Definition at line 416 of file Statistics.cpp.
References _FILEINFO_, Isis::Statistics::m_maximum, Isis::Statistics::m_removedData, Isis::Statistics::m_validPixels, and Isis::IException::Programmer.
Referenced by Isis::Statistics::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(), 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(), Isis::Statistics::toPvl(), Isis::SawtoothStretchType::widthEditChanged(), Isis::SawtoothStretchType::widthSliderMoved(), and Isis::Statistics::ZScore().
|
inherited |
Returns the absolute minimum double found in all data passed through the AddData method.
If there are no valid pixels, then NULL8 is returned.
Isis::IException::Message | The data set is blank, so the minimum is invalid. |
Definition at line 395 of file Statistics.cpp.
References _FILEINFO_, Isis::Statistics::m_minimum, Isis::Statistics::m_removedData, Isis::Statistics::m_validPixels, and Isis::IException::Programmer.
Referenced by Isis::Statistics::BestMinimum(), Isis::BinaryStretchType::calculateNewStretch(), Isis::SawtoothStretchType::calculateNewStretch(), Isis::AutoReg::ComputeChipZScore(), Isis::BinaryStretchType::endEditChanged(), Isis::LinearStretchType::endEditChanged(), Isis::BinaryStretchType::endSliderMoved(), Isis::LinearStretchType::endSliderMoved(), 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(), Isis::Statistics::toPvl(), Isis::SawtoothStretchType::widthEditChanged(), and Isis::SawtoothStretchType::widthSliderMoved().
|
inherited |
Returns the total number of NULL pixels encountered.
Definition at line 478 of file Statistics.cpp.
References Isis::Statistics::m_nullPixels.
Referenced by Isis::ZeroReverse::init(), and Isis::Statistics::toPvl().
|
inherited |
Returns the total number of pixels outside of the valid range encountered.
Definition at line 533 of file Statistics.cpp.
References Isis::Statistics::m_overRangePixels, and Isis::Statistics::m_underRangePixels.
|
inherited |
Returns the total number of pixels over the valid range encountered.
Definition at line 457 of file Statistics.cpp.
References Isis::Statistics::m_overRangePixels.
Referenced by Isis::Statistics::toPvl().
|
inherited |
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.
data | The data to be removed from data set used for statistical calculations. |
count | The number of elements in the data to be removed. |
IException::Message | RemoveData is trying to remove data that doesn't exist. |
Definition at line 219 of file Statistics.cpp.
Referenced by Isis::MultivariateStatistics::RemoveData().
|
inherited |
Reset all accumulators and counters to zero.
Definition at line 126 of file Statistics.cpp.
References Isis::Statistics::m_hisPixels, Isis::Statistics::m_hrsPixels, Isis::Statistics::m_lisPixels, Isis::Statistics::m_lrsPixels, Isis::Statistics::m_maximum, Isis::Statistics::m_minimum, Isis::Statistics::m_nullPixels, Isis::Statistics::m_overRangePixels, Isis::Statistics::m_removedData, Isis::Statistics::m_sum, Isis::Statistics::m_sumsum, Isis::Statistics::m_totalPixels, Isis::Statistics::m_underRangePixels, and Isis::Statistics::m_validPixels.
Referenced by Isis::Statistics::fromPvl(), Isis::ZeroBufferFit::guess(), Isis::ZeroReverse::init(), Isis::ZeroBufferSmooth::init(), Isis::AutoReg::Reduce(), Isis::MultivariateStatistics::Reset(), Isis::Gruen::resetStats(), Isis::VisualDisplay::setLines(), Isis::VisualDisplay::setPixelData(), Isis::VisualDisplay::setSamples(), and Isis::Statistics::Statistics().
|
inherited |
Computes and returns the rms.
If there are no valid pixels, then NULL8 is returned.
Definition at line 378 of file Statistics.cpp.
References Isis::Statistics::m_sumsum, and Isis::Statistics::m_validPixels.
Referenced by Isis::BundleAdjust::computeBundleStatistics(), Isis::ControlPoint::GetLineResidualRms(), Isis::ControlPoint::GetResidualRms(), Isis::ControlPoint::GetSampleResidualRms(), and Isis::BundleSolutionInfo::outputHeader().
|
inherited |
Computes and returns the standard deviation.
If there are no valid pixels, then NULL8 is returned.
Definition at line 325 of file Statistics.cpp.
References Isis::Statistics::m_validPixels, and Isis::Statistics::Variance().
Referenced by Isis::Statistics::ChebyshevMaximum(), Isis::Statistics::ChebyshevMinimum(), Isis::MultivariateStatistics::Correlation(), Isis::StatisticsTool::getStatistics(), Isis::ZeroReverse::init(), Isis::ZeroBufferSmooth::init(), Isis::StandardDeviationOperator::Interest(), Isis::VisualDisplay::paintPixmap(), Isis::HistogramTool::refreshPlot(), Isis::ReseauDistortionMap::SetFocalPlane(), Isis::ReseauDistortionMap::SetUndistortedFocalPlane(), Isis::OverlapNormalization::Solve(), Isis::Gruen::StatsLog(), Isis::CameraStatistics::toPvl(), Isis::Statistics::toPvl(), and Isis::Statistics::ZScore().
|
inherited |
Returns the sum of all the data.
Definition at line 354 of file Statistics.cpp.
References Isis::Statistics::m_sum.
Referenced by Isis::MultivariateStatistics::Covariance(), Isis::MultivariateStatistics::LinearRegression(), and Isis::Statistics::toPvl().
|
inherited |
Returns the sum of all the squared data.
Definition at line 364 of file Statistics.cpp.
References Isis::Statistics::m_sumsum.
Referenced by Isis::MultivariateStatistics::LinearRegression(), and Isis::Statistics::toPvl().
|
inherited |
Serialize statistics as a pvl group.
QString | name (Default value is "Statistics") - Name of the statistics group |
Definition at line 700 of file Statistics.cpp.
References Isis::Statistics::Average(), Isis::Statistics::HisPixels(), Isis::Statistics::HrsPixels(), Isis::Statistics::LisPixels(), Isis::Statistics::LrsPixels(), Isis::Statistics::Maximum(), Isis::Statistics::Minimum(), Isis::Statistics::NullPixels(), Isis::Statistics::OverRangePixels(), Isis::Statistics::StandardDeviation(), Isis::Statistics::Sum(), Isis::Statistics::SumSquare(), Isis::toString(), Isis::Statistics::TotalPixels(), Isis::Statistics::UnderRangePixels(), Isis::Statistics::ValidPixels(), and Isis::Statistics::Variance().
Referenced by Isis::MultivariateStatistics::toPvl().
|
inherited |
Returns the total number of pixels processed (valid and invalid).
Definition at line 433 of file Statistics.cpp.
References Isis::Statistics::m_totalPixels.
Referenced by Isis::VisualDisplay::paintPixmap(), and Isis::Statistics::toPvl().
|
inherited |
Returns the total number of pixels under the valid range encountered.
Definition at line 468 of file Statistics.cpp.
References Isis::Statistics::m_underRangePixels.
Referenced by Isis::Statistics::toPvl().
|
inherited |
Returns the total number of valid pixels processed.
Only valid pixels are utilized when computing the average, standard deviation, variance, minimum and maximum.
Definition at line 446 of file Statistics.cpp.
References Isis::Statistics::m_validPixels.
Referenced by Isis::OverlapNormalization::AddOverlap(), Isis::ControlNetStatistics::GetPointDoubleStats(), Isis::StatisticsTool::getStatistics(), Isis::QHistogram::Load(), Isis::HistogramTool::refreshPlot(), Isis::StretchTool::stretchBuffer(), Isis::Statistics::toPvl(), and Isis::StretchTool::updateHistograms().
|
inherited |
Computes and returns the variance.
If there are no valid pixels, then NULL8 is returned.
Definition at line 341 of file Statistics.cpp.
References Isis::Statistics::m_sum, Isis::Statistics::m_sumsum, and Isis::Statistics::m_validPixels.
Referenced by Isis::HistogramTool::refreshPlot(), Isis::Statistics::StandardDeviation(), and Isis::Statistics::toPvl().
|
inherited |
Order saved must match the offsets in the static compoundH5DataType() method.
Definition at line 861 of file Statistics.cpp.
References Isis::Statistics::m_hisPixels, Isis::Statistics::m_hrsPixels, Isis::Statistics::m_lisPixels, Isis::Statistics::m_lrsPixels, Isis::Statistics::m_maximum, Isis::Statistics::m_minimum, Isis::Statistics::m_nullPixels, Isis::Statistics::m_overRangePixels, Isis::Statistics::m_removedData, Isis::Statistics::m_sum, Isis::Statistics::m_sumsum, Isis::Statistics::m_totalPixels, Isis::Statistics::m_underRangePixels, Isis::Statistics::m_validMaximum, Isis::Statistics::m_validMinimum, and Isis::Statistics::m_validPixels.
|
inherited |
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.
value | The value to calculate the z-score of. |
Definition at line 654 of file Statistics.cpp.
References _FILEINFO_, Isis::Statistics::Average(), Isis::Statistics::Maximum(), Isis::IException::Programmer, Isis::Statistics::StandardDeviation(), and Isis::toString().
Referenced by Isis::AutoReg::ComputeChipZScore().
|
private |
Value of the mean.
Definition at line 59 of file GaussianStretch.h.