40 class OverlapStatistics;
129 void addHolds(QString holdListName);
134 void importStatistics(QString instatsFileName);
135 void applyCorrection(QString toListName);
138 void write(QString outstatsFileName);
140 double evaluate(
double dn,
int imageIndex,
int bandIndex)
const;
155 void addGain(
double gain) {
156 gains.push_back(gain);
159 void addOffset(
double offset) {
160 offsets.push_back(offset);
163 void addAverage(
double average) {
164 avgs.push_back(average);
167 double getGain(
int index)
const {
171 double getOffset(
int index)
const {
172 return offsets[index];
175 double getAverage(
int index)
const {
179 double evaluate(
double dn,
int index)
const {
180 double result =
Null;
182 double gain = gains[index];
184 double offset = offsets[index];
185 double avg = avgs[index];
186 result = (dn - avg) * gain + offset + avg;
196 std::vector<double> gains;
197 std::vector<double> offsets;
198 std::vector<double> avgs;
212 m_linc = (int) (100.0 / percent + 0.5);
217 void operator()(
Buffer &in)
const;
220 virtual void addStats(
Buffer &in)
const;
235 m_adjustment = adjustment;
246 void loadInputs(QString fromListName);
247 void setInput(
int index, QString value);
250 virtual void fillOutList(
FileList &outList, QString toListName);
251 virtual void errorCheck(QString fromListName);
253 void generateOutputs(
FileList &outList);
254 void loadOutputs(
FileList &outList, QString toListName);
257 void setResults(std::vector<OverlapStatistics> &overlapStats);
260 void clearAdjustments();
263 void addValid(
int count);
264 void addInvalid(
int count);
268 std::vector<int> validateInputStatistics(QString instatsFileName);
271 std::vector<ImageAdjustment *> m_adjustments;
272 std::vector<int> m_holdIndices;