Isis Developer Reference

Calculates statistics in the area of overlap between two projected cubes. More...
#include <OverlapStatistics.h>
Public Member Functions  
OverlapStatistics (Isis::Cube &x, Isis::Cube &y, QString progressMsg="Gathering Overlap Statistics", double sampPercent=100.0)  
Constructs an OverlapStatistics object.  
OverlapStatistics (const PvlObject &inStats)  
Constructs an OverlapStatistics from a PvlObject.  
bool  HasOverlap (int band) const 
Checks the specified band for an overlap.  
bool  HasOverlap () const 
Checks all bands of the cubes for an overlap, and will only return false if none of the bands overlap.  
Isis::FileName  FileNameX () const 
Returns the filename of the first cube.  
Isis::FileName  FileNameY () const 
Returns the filename of the second cube.  
Isis::MultivariateStatistics  GetMStats (int band) const 
Returns the MultivariateStatistics object containing all the data from both cubes in the overlapping area.  
int  Lines () const 
Returns the number of lines in the overlapping area.  
int  Samples () const 
Returns the number of samples in the overlapping area.  
int  Bands () const 
Returns the number of bands both cubes have.  
double  SampPercent () const 
Returns the percentage of cube lines sampled.  
int  StartSampleX () const 
Returns the starting sample position of the overlap in the first cube.  
int  EndSampleX () const 
Returns the ending sample position of the overlap in the first cube.  
int  StartLineX () const 
Returns the starting line position of the overlap in the first cube.  
int  EndLineX () const 
Returns the ending line position of the overlap in the first cube.  
int  StartSampleY () const 
Returns the starting sample position of the overlap in the second cube.  
int  EndSampleY () const 
Returns the ending sample position of the overlap in the second cube.  
int  StartLineY () const 
Returns the starting line position of the overlap in the second cube.  
int  EndLineY () const 
Returns the ending line position of the overlap in the second cube.  
void  SetMincount (unsigned int mincnt) 
Sets the minimum number of valid pixels for the overlap to be considered valid for PVL output.  
int  MinCount () const 
bool  IsValid (unsigned int band) const 
Returns whether the overlap meets the minimum valid pixel requirement.  
PvlObject  toPvl (QString name="OverlapStatistics") const 
Creates a Pvl containing the following Overlap Statistics information File1 File2 Width Height Bands SamplingPercent MinCount MutlivariateStatisticsN (N = current band) Covariance Correlation SumXY ValidPixels InvalidPixels TotalPixels LinearRegression ValidOverlap XStatistics #FileX Statistics information YStatistics #FileY Statistics information File1 StartSample EndSample StartLine EndLine Average StandardDeviation Variance File2 StartSample EndSample StartLine EndLine Average StandardDeviation Variance.  
Calculates statistics in the area of overlap between two projected cubes.
This class finds the overlap between two cubes. It allows the user to check whether or not two cubes overlap, and also creates a MultivariateStatistics object containing the data from each cube in the overlapping area. The cubes entered into the constructor for this class must both be projections, and must have the same projection parameters.
If you would like to see OverlapStatistics being used in implementation, see equalizer.cpp
Isis::OverlapStatistics::OverlapStatistics  (  Isis::Cube &  x, 
Isis::Cube &  y,  
QString  progressMsg = "Gathering Overlap Statistics",  
double  sampPercent = 100.0 ) 
Constructs an OverlapStatistics object.
Compares the two input cubes and finds where they overlap.
x  The first input cube 
y  The second input cube 
progressMsg  (Default value of "Gathering Overlap Statistics") Text for indicating progress during statistic gathering 
sampPercent  (Default value of 100.0) Sampling percent, or the percentage of lines to consider during the statistic gathering procedure 
Isis::IException::User   All images must have the same number of bands 
References _FILEINFO_, Isis::Progress::AddSteps(), Isis::Cube::bandCount(), Isis::Progress::CheckStatus(), Isis::Cube::fileName(), Isis::Cube::lineCount(), Isis::FileName::name(), Isis::Cube::pixelType(), Isis::IException::Programmer, Isis::Cube::projection(), Isis::Cube::read(), Isis::Cube::sampleCount(), Isis::Progress::SetMaximumSteps(), Isis::Progress::SetText(), and Isis::IException::User.
Isis::OverlapStatistics::OverlapStatistics  (  const PvlObject &  inStats  ) 
Constructs an OverlapStatistics from a PvlObject.
inStats  The serialized OverlapStatistics PvlObject 

inline 
Returns the number of bands both cubes have.
Referenced by toPvl().

inline 
Returns the ending line position of the overlap in the first cube.
Referenced by toPvl().

inline 
Returns the ending line position of the overlap in the second cube.
Referenced by toPvl().

inline 
Returns the ending sample position of the overlap in the first cube.
Referenced by toPvl().

inline 
Returns the ending sample position of the overlap in the second cube.
Referenced by toPvl().

inline 
Returns the filename of the first cube.
Referenced by toPvl().

inline 
Returns the filename of the second cube.
Referenced by toPvl().

inline 
Returns the MultivariateStatistics object containing all the data from both cubes in the overlapping area.
band  The band number the MultivariateStatistics object needs to contain data from 
bool Isis::OverlapStatistics::HasOverlap  (  )  const 
Checks all bands of the cubes for an overlap, and will only return false if none of the bands overlap.
Referenced by toPvl().

inline 
Checks the specified band for an overlap.
band  The band number of the cubes to be checked for an overlap 

inline 
Returns whether the overlap meets the minimum valid pixel requirement.
band  The band to check 
References GetMStats(), and Isis::MultivariateStatistics::ValidPixels().
Referenced by toPvl().

inline 
Returns the number of lines in the overlapping area.
Referenced by toPvl().

inline 
Referenced by toPvl().

inline 
Returns the number of samples in the overlapping area.
Referenced by toPvl().

inline 
Returns the percentage of cube lines sampled.
Referenced by toPvl().

inline 
Sets the minimum number of valid pixels for the overlap to be considered valid for PVL output.
mincnt  The minimum valid pixel value to set 

inline 
Returns the starting line position of the overlap in the first cube.
Referenced by toPvl().

inline 
Returns the starting line position of the overlap in the second cube.
Referenced by toPvl().

inline 
Returns the starting sample position of the overlap in the first cube.
Referenced by toPvl().

inline 
Returns the starting sample position of the overlap in the second cube.
Referenced by toPvl().
PvlObject Isis::OverlapStatistics::toPvl  (  QString  name = "OverlapStatistics"  )  const 
Creates a Pvl containing the following Overlap Statistics information File1 File2 Width Height Bands SamplingPercent MinCount MutlivariateStatisticsN (N = current band) Covariance Correlation SumXY ValidPixels InvalidPixels TotalPixels LinearRegression ValidOverlap XStatistics #FileX Statistics information YStatistics #FileY Statistics information File1 StartSample EndSample StartLine EndLine Average StandardDeviation Variance File2 StartSample EndSample StartLine EndLine Average StandardDeviation Variance.
Serialize overlap statistics as a PvlObject.
QString  name (Default value of "OverlapStatistics") Name of the PvlObject created 
Isis::IException::User   Trivial overlap between [File1] and [File2] 
References _FILEINFO_, Bands(), EndLineX(), EndLineY(), EndSampleX(), EndSampleY(), FileNameX(), FileNameY(), GetMStats(), HasOverlap(), IsValid(), Lines(), MinCount(), Isis::FileName::name(), Samples(), SampPercent(), StartLineX(), StartLineY(), StartSampleX(), StartSampleY(), toPvl(), Isis::toString(), and Isis::IException::User.
Referenced by toPvl().