Isis 3 Programmer Reference
|
Container of a cube histogram. More...
#include <Histogram.h>
Public Member Functions | |
Histogram (double minimum, double maximum, int bins=1024) | |
Constructs a histogram object. More... | |
Histogram (Cube &cube, int statsBand, Progress *progress=NULL, double startSample=1.0, double startLine=1.0, double endSample=Null, double endLine=Null, int bins=0, bool addCubeData=false) | |
Constructs a histogram object using a cube. More... | |
Histogram (ControlNet &net, double(ControlMeasure::*statFunc)() const, int bins) | |
Constructs a histogram from a control netowrk. More... | |
Histogram (ControlNet &net, double(ControlMeasure::*statFunc)() const, double binWidth) | |
Constructs a histogram from a control netowrk. More... | |
~Histogram () | |
Destructs a histogram object. More... | |
void | SetBins (const int bins) |
Change the number of bins in the histogram and reset counters. More... | |
void | Reset () |
Resets histogram counters to zero. More... | |
void | AddData (const double *data, const unsigned int count) |
Add an array of doubles to the histogram counters. More... | |
void | AddData (const double data) |
Add a single double data to the histogram. More... | |
void | RemoveData (const double *data, const unsigned int count) |
Remove an array of doubles from the histogram counters. More... | |
double | Median () const |
Returns the median. More... | |
double | Mode () const |
Returns the mode. More... | |
double | Percent (const double percent) const |
Computes and returns the value at X percent of the histogram. More... | |
double | Skew () const |
Computes and returns the skew. More... | |
BigInt | BinCount (const int index) const |
Returns the count at a bin position in the histogram. More... | |
void | BinRange (const int index, double &low, double &high) const |
Returns the left edge and right edge values of a bin. More... | |
double | BinMiddle (const int index) const |
Returns the value represented by a bin. More... | |
double | BinSize () const |
Returns the size of an individual bin. More... | |
int | Bins () const |
Returns the number of bins in the histogram. More... | |
BigInt | MaxBinCount () const |
Returns the highest bin count. More... | |
double | BinRangeStart () const |
double | BinRangeEnd () const |
void | SetValidRange (const double minimum=Isis::ValidMinimum, const double maximum=Isis::ValidMaximum) |
Changes the range of the bins. More... | |
void | RemoveData (const double data) |
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 | InitializeFromCube (Cube &cube, int statsBand, Progress *progress, int nbins=0, double startSample=Null, double startLine=Null, double endSample=Null, double endLine=Null) |
void | addMeasureDataFromNet (ControlNet &net, double(ControlMeasure::*statFunc)() const) |
Iterates through all the measures in a network adding them to the histogram. More... | |
void | rangesFromNet (ControlNet &net, double(ControlMeasure::*statFunc)() const) |
Iterates through all the measures in a network in order to find the domain of the data. More... | |
Private Attributes | |
std::vector< BigInt > | p_bins |
The array of counts. More... | |
double | p_binRangeStart |
double | p_binRangeEnd |
Container of a cube histogram.
This class is used to accumulate a histogram on double arrays. In particular, it is highly useful for obtaining a histogram on cube data. Parameters which can be computed are the 1) median, 2) mode, and 3) skew. The histogram consists of a fixed set of distinct bins. When an object is created the programmer must provide a minimum and maximum which defines how data is further placed in the bins. The minimum is mapped to the left edge of the first bin [0] and the maximum is mapped to the right edge of the last bin [Bins()-1]. There are a set of methods which return bin information such as 1) count, 2) size, 3) middle value, 4) range, and 5) maximum bin count.
2002-05-22 Jeff Anderson moved Reset, AddData, and RemoveData methods into public space.
2002-10-05 Tracie Sucharski added MaxBinCount, a method to return the maximum bin count.
2005-06-21 Modified index computations in AddData and RemoveData to round
2008-08-15 Added BinRange methods and functionality. Now, you can collect statistics over all of the data and also set where the binning will start and end. Increased the default number of bins for floating point cubes.
2012-01-19 Steven Lambright and Jai Rideout - Added constructor parameters to read from the Cube automatically.
2012-04-10 Orrin Thomas - Added constructor parameters to read from ControlNets automatically (For control measure data.)
2015-09-03 Tyler Wilson - Overrode Statistics::SetValidRange to set the bin range as well as the statistical range for the data. The function Histogram::SetBinRange has been removed from this class.
2016-04-20 Makayla Shepherd - Added UnsignedWord pixel type handling.
2017-05-19 Christopher Combs - Modified unitTest.cpp: Removed path of output file name in output PVL to allow the test to pass when not using the standard data areas. Fixes #4738.
2017-09-08 Summer Stapleton - Included test for Isis::Null being returned from accessor method call in Histogram::rangesFromNet(). Fixes #5123, #1673.
2018-07-27 Jesse Mapel - Added support for initializing a histogram from signed and unsigned word cubes. References #971.
Definition at line 86 of file Histogram.h.
Isis::Histogram::Histogram | ( | double | minimum, |
double | maximum, | ||
int | nbins = 1024 |
||
) |
Constructs a histogram object.
Only data between the minimum and maximum will be binned, and the bin range will be from the minimum to the maximum.
minimum | Minimum value for binning the data into the histogram. |
maximum | Maximum value for binning the data into the histogram. |
nbins | The number of bins to use |
Definition at line 50 of file Histogram.cpp.
Isis::Histogram::Histogram | ( | Cube & | cube, |
int | statsBand, | ||
Progress * | progress = NULL , |
||
double | startSample = 1.0 , |
||
double | startLine = 1.0 , |
||
double | endSample = Null , |
||
double | endLine = Null , |
||
int | bins = 0 , |
||
bool | addCubeData = false |
||
) |
Constructs a histogram object using a cube.
This constructor computes the minimum, maximum for the binning range and number of bins automatically. All statistics will still be collected, though data at either end of the histogram will be put into one bin in order to attempt to achieve better histogram statistics.
TODO: progress needs to be a bool.
cube | The cube to used to determine min/max and bins |
statsBand | The band number the histogram will be collected from |
progress | The Progress object to be used to output the percent processed information |
startSample | The sample to start reading cube data from |
startLine | The line to start reading cube data from |
endSample | The sample to stop reading cube data at (Null for nsamps) |
endLine | The line to stop reading cube data at (Null for nlines) |
bins | The number of histogram bins to create (0 for automatic) |
addCubeData | True to fill the histogram with data in addition to initializing the binning ranges. |
Definition at line 79 of file Histogram.cpp.
References Isis::Cube::bandCount(), Isis::Progress::CheckStatus(), Isis::Cube::pixelType(), Isis::Cube::read(), Isis::Progress::SetMaximumSteps(), and Isis::Progress::SetText().
Isis::Histogram::Histogram | ( | ControlNet & | net, |
double(ControlMeasure::*)() const | statFunc, | ||
int | bins | ||
) |
Constructs a histogram from a control netowrk.
net | Reference to a ControlNetwork used to access all the measures. |
statFunc | Pointer to a ControlMeasure acessor, the returns of this function call will be used to build up the network. |
bins | The number of bins to divide the histogram into. |
The | number of Histogram Bins must be greater than 0. |
Definition at line 130 of file Histogram.cpp.
References _FILEINFO_.
Isis::Histogram::Histogram | ( | ControlNet & | net, |
double(ControlMeasure::*)() const | statFunc, | ||
double | binWidth | ||
) |
Constructs a histogram from a control netowrk.
Net | Reference to a ControlNetwork used to access all the measures. |
statFunc | Pointer to a ControlMeasure acessor, the returns of this. function call will be used to build up the network. |
binWidth | The width of histogram bins. |
The | width of Histogram Bins must be greater than 0. |
Definition at line 156 of file Histogram.cpp.
References _FILEINFO_, Isis::ValidMaximum, and Isis::ValidMinimum.
Isis::Histogram::~Histogram | ( | ) |
Destructs a histogram object.
Definition at line 396 of file Histogram.cpp.
void Isis::Histogram::AddData | ( | const double * | data, |
const unsigned int | count | ||
) |
Add an array of doubles to the histogram counters.
This method can be invoked multiple times. For example, once for each line in a cube, before obtaining statistics and histogram information.
data | Pointer to array of double to add. |
count | Number of doubles to process. |
Definition at line 453 of file Histogram.cpp.
References Isis::IsValidPixel().
Referenced by Isis::StretchTool::histFromBuffer(), Isis::StretchTool::histFromCube(), Isis::Cube::histogram(), Isis::HistogramTool::refreshPlot(), and Isis::VisualDisplay::setPixelData().
void Isis::Histogram::AddData | ( | const double | data | ) |
Add a single double data to the histogram.
Of course this can be invoke multiple times. e.g. once for each residual in a network for instance.
data | a single observation to be added to the histogram |
Definition at line 483 of file Histogram.cpp.
References Isis::IsValidPixel().
|
private |
Iterates through all the measures in a network adding them to the histogram.
net | reference to a ControlNetwork used to access all the measures |
statFunc | pointer to a ControlMeasure acessor, the returns of this function call will be used to build up the network |
Definition at line 202 of file Histogram.cpp.
References Isis::ControlPoint::GetMeasure(), and Isis::ControlNet::GetNumPoints().
|
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().
BigInt Isis::Histogram::BinCount | ( | const int | index | ) | const |
Returns the count at a bin position in the histogram.
index | Index of the desired bin 0 to Bins()-1. |
Definition at line 624 of file Histogram.cpp.
References _FILEINFO_, and Isis::Message::ArraySubscriptNotInRange().
Referenced by Isis::QHistogram::Load(), Isis::HistogramTool::refreshPlot(), and Isis::HistogramWidget::setHistogram().
double Isis::Histogram::BinMiddle | ( | const int | index | ) | const |
Returns the value represented by a bin.
This is not the count, but the actual data value at the middle of the bin.
index | Index of the desired bin 0 to Bins()-1. |
Definition at line 670 of file Histogram.cpp.
References _FILEINFO_, and Isis::Message::ArraySubscriptNotInRange().
Referenced by Isis::QHistogram::Load(), Isis::HistogramTool::refreshPlot(), and Isis::HistogramWidget::setHistogram().
void Isis::Histogram::BinRange | ( | const int | index, |
double & | low, | ||
double & | high | ||
) | const |
Returns the left edge and right edge values of a bin.
That is the range of data the bin covers.
iException | The programmer has passed in an index outside of 0 to Bins()-1. |
index | Index of the desired bin 0 to Bins()-1. |
low | The value at the left edge of the requested bin. |
high | The value at the right edge of the requested bin. |
Definition at line 648 of file Histogram.cpp.
References _FILEINFO_, and Isis::Message::ArraySubscriptNotInRange().
int Isis::Histogram::Bins | ( | ) | const |
Returns the number of bins in the histogram.
Definition at line 704 of file Histogram.cpp.
Referenced by Isis::GaussianStretch::GaussianStretch(), Isis::QHistogram::Load(), Isis::HistogramTool::refreshPlot(), and Isis::HistogramWidget::setHistogram().
double Isis::Histogram::BinSize | ( | ) | const |
Returns the size of an individual bin.
Essentially, the difference of the high and low edge values (BinRange) of a bin. This value is constant for all bins.
Definition at line 691 of file Histogram.cpp.
Referenced by Isis::BinaryStretchType::calculateNewStretch(), Isis::SawtoothStretchType::calculateNewStretch(), Isis::HistogramTool::refreshPlot(), Isis::HistogramWidget::setHistogram(), Isis::BinaryStretchType::setStretch(), Isis::LinearStretchType::setStretch(), Isis::SawtoothStretchType::setStretch(), Isis::SawtoothStretchType::widthEditChanged(), and Isis::SawtoothStretchType::widthSliderMoved().
|
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().
BigInt Isis::Histogram::MaxBinCount | ( | ) | const |
Returns the highest bin count.
Definition at line 714 of file Histogram.cpp.
Referenced by Isis::HistogramWidget::setHistogram().
|
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(), 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(), Isis::Statistics::toPvl(), Isis::SawtoothStretchType::widthEditChanged(), Isis::SawtoothStretchType::widthSliderMoved(), and Isis::Statistics::ZScore().
double Isis::Histogram::Median | ( | ) | const |
Returns the median.
Definition at line 540 of file Histogram.cpp.
Referenced by Isis::HistogramTool::refreshPlot(), Isis::SawtoothStretchType::SawtoothStretchType(), and Isis::ProcessExport::SetInputRange().
|
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(), 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(), Isis::Statistics::toPvl(), Isis::SawtoothStretchType::widthEditChanged(), and Isis::SawtoothStretchType::widthSliderMoved().
double Isis::Histogram::Mode | ( | ) | const |
Returns the mode.
Definition at line 549 of file Histogram.cpp.
Referenced by Isis::HistogramTool::refreshPlot().
|
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().
double Isis::Histogram::Percent | ( | const double | percent | ) | const |
Computes and returns the value at X percent of the histogram.
For example, Percent(50.0) is equivalent to the computing the median. While Percent(0.5) and Percent(99.5) would obtain a minimum and maximum for the data that could be used for a good contrast stretch.
percent | X percent of the histogram to compute. |
Definition at line 572 of file Histogram.cpp.
References _FILEINFO_.
Referenced by Isis::BinaryStretchType::BinaryStretchType(), Isis::GaussianStretch::GaussianStretch(), Isis::Stretch::Parse(), Isis::ProcessExport::SetInputRange(), and Isis::StretchTool::stretchBuffer().
|
private |
Iterates through all the measures in a network in order to find the domain of the data.
net | reference to a ControlNetwork used to access all the measures |
statFunc | pointer to a ControlMeasure acessor, the returns of this function call will be used to build up the network |
The | net file appears to have 1 or fewer measures, thus no histogram can be formed |
Definition at line 233 of file Histogram.cpp.
References _FILEINFO_, Isis::ControlPoint::GetMeasure(), Isis::ControlNet::GetNumPoints(), and Isis::IsSpecial().
void Isis::Histogram::RemoveData | ( | const double * | data, |
const unsigned int | count | ||
) |
Remove an array of doubles from the histogram counters.
Note that this invalidates the absolute minimum and maximum. They will no longer be useable.
data | Pointer to array of doubles to remove. |
count | number of doubles to process. |
Definition at line 512 of file Histogram.cpp.
References Isis::IsValidPixel().
void Isis::Histogram::Reset | ( | ) |
Resets histogram counters to zero.
Definition at line 431 of file Histogram.cpp.
|
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().
void Isis::Histogram::SetBins | ( | const int | bins | ) |
Change the number of bins in the histogram and reset counters.
Definition at line 440 of file Histogram.cpp.
void Isis::Histogram::SetValidRange | ( | const double | minimum = Isis::ValidMinimum , |
const double | maximum = Isis::ValidMaximum |
||
) |
Changes the range of the bins.
This function also sets the range of the parent statistics class and resets the stats/histogram counters. So binRange = setValidRange. Should only be called once, prior to Adding data to the histogram.
binStart | The start of the bin range |
binEnd | The end of the bin range |
Definition at line 413 of file Histogram.cpp.
References _FILEINFO_.
Referenced by Isis::Cube::histogram().
double Isis::Histogram::Skew | ( | ) | const |
Computes and returns the skew.
If there are no valid pixels then NULL8 is returned. Recognize that because of the binning which occurs, in order to generate the histogram, the skew may not be precise but will be very close.
Definition at line 605 of file Histogram.cpp.
Referenced by Isis::HistogramTool::refreshPlot().
|
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 |
The array of counts.
Definition at line 139 of file Histogram.h.