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