1 #ifndef _CONTROLNETSTATISTICS_H_
2 #define _CONTROLNETSTATISTICS_H_
37 class ControlCubeGraphNode;
91 enum ePointDetails { total, ignore, locked, fixed, constrained, freed };
92 static const int numPointDetails = 6;
95 enum ePointIntStats { totalPoints, validPoints, ignoredPoints, fixedPoints, constrainedPoints, freePoints, editLockedPoints,
96 totalMeasures, validMeasures, ignoredMeasures, editLockedMeasures };
97 static const int numPointIntStats = 11;
100 enum ePointDoubleStats { avgResidual, minResidual, maxResidual, minLineResidual, maxLineResidual, minSampleResidual, maxSampleResidual,
101 avgPixelShift, minPixelShift, maxPixelShift, minLineShift, maxLineShift, minSampleShift, maxSampleShift,
102 minGFit, maxGFit, minEccentricity, maxEccentricity, minPixelZScore, maxPixelZScore};
103 static const int numPointDblStats = 20;
106 enum ImageStats { imgSamples, imgLines, imgTotalPoints, imgIgnoredPoints, imgFixedPoints, imgLockedPoints, imgLocked,
107 imgConstrainedPoints, imgFreePoints, imgConvexHullArea, imgConvexHullRatio };
108 static const int numImageStats = 11;
263 void UpdateMinMaxStats(
const Statistics & stats,
ePointDoubleStats
Enumeration for Point stats like Tolerances, PixelShifts which have double data.
int NumValidPoints() const
Returns the Number of Valid (Not Ignored) Points in the Control Net.
std::map< int, int > mPointIntStats
Contains std::map of different count stats.
void GenerateImageStats()
Generate stats like Total, Ignored, Fixed Points in an Image.
std::map< QString, std::vector< double > > mImageMap
Contains stats by Image/Serial Num.
void GeneratePointStats(const QString &psPointFile)
Generate stats like Ignored, Fixed, Total Measures, Ignored by Control Point.
double GetAvgPixelShift() const
Get network Avg PixelShift.
int NumEditLockedPoints() const
Returns total number of edit locked points.
int NumIgnoredPoints() const
Returns the number of ignored points.
int NumFreePoints() const
Returns the number of Constrained Points in Control Net.
ControlNet * mCNet
Control Network.
double GetMinLineResidual() const
Determine the minimum line error of all points in the network.
ePointDetails
Enumeration for Point Statistics.
double GetMinSampleShift() const
Get network Min SampleShift.
std::vector< double > GetImageStatsBySerialNum(QString psSerialNum) const
Returns the Image Stats by Serial Number.
ImageStats
Enumeration for image stats.
int NumEditLockedMeasures() const
Returns total number of edit locked measures in the network.
double GetMinimumResidual() const
Determine the minimum error of all points in the network.
ePointIntStats
Enumeration for Point int stats for counts such as valid points, measures etc.
std::map< QString, bool > mSerialNumMap
Whether serial# is part of ControlNet.
void GetPointDoubleStats()
Get Point stats for Residuals and Shifts.
void InitPointDoubleStats()
Init Pointstats std::vector.
double GetMinPixelShift() const
Get network Min PixelShift.
double GetMaxSampleShift() const
Get network Max SampleShift.
This class is used to accumulate statistics on double arrays.
void GetPointIntStats()
Get point count stats.
void InitSerialNumMap()
Init SerialNum std::map.
Program progress reporter.
ControlNetStatistics(ControlNet *pCNet, const QString &psSerialNumFile, Progress *pProgress=0)
Constructor.
std::map< int, double > mPointDoubleStats
Contains std::map of different computed stats.
Statistics mConvexHullRatioStats
min, max, average convex hull stats
~ControlNetStatistics()
Destructor.
Contains multiple PvlContainers.
int NumValidMeasures() const
Returns the total Number of valid Measures in the Control Net.
SerialNumberList mSerialNumList
Serial Number List.
void PrintImageStats(const QString &psImageFile)
Print the Image Stats into specified output file.
double GetMaximumResidual() const
Determine the maximum error of all points in the network.
double GetMinSampleResidual() const
Determine the minimum sample error of all points in the network.
int NumMeasures() const
Returns the total Number of Measures in the Control Net.
int NumConstrainedPoints() const
Returns the number of Constrained Points in Control Net.
double GetMaxLineShift() const
Get network Max LineShift.
Progress * mProgress
Progress state.
double GetMaxPixelShift() const
Get network Max PixelShift.
double GetMinLineShift() const
Get Min and Max LineShift.
Serial Number list generator.
double GetMaxLineResidual() const
Determine the maximum line error of all points in the network.
double GetMaxSampleResidual() const
Determine the maximum sample error of all points in the network.
double GetAverageResidual() const
Determine the average error of all points in the network.
int NumIgnoredMeasures() const
Returns the total Number of Ignored Measures in the Control Net.
int NumFixedPoints() const
Returns the Number of Fixed Points in the Control Net.
void GenerateControlNetStats(PvlGroup &pStatsGrp)
Generate the Control Net Stats into the PvlGroup.