summaryrefslogtreecommitdiff
path: root/src/calibration.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/calibration.cpp')
-rw-r--r--src/calibration.cpp28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/calibration.cpp b/src/calibration.cpp
index 73bd786..ff37e73 100644
--- a/src/calibration.cpp
+++ b/src/calibration.cpp
@@ -191,6 +191,34 @@ QImage calibrationTableToImage(const CalibrationTablePtr& calibrationTable)
return result;
}
+QList<Pixels> filter(const QList<Pixels>& rawProfiles)
+{
+ QList<Pixels> result;
+
+ QList<Pixels>::const_iterator it = rawProfiles.constBegin();
+
+ while (it != rawProfiles.constEnd())
+ {
+ Pixels sum = *it;
+
+ size_t count{1};
+ ++it;
+
+ while (it != rawProfiles.constEnd() &&
+ it->counters.encoderPosition == sum.counters.encoderPosition)
+ {
+ sum += *it;
+ ++count;
+ ++it;
+ }
+
+ sum /= float(count);
+ result << sum;
+ }
+
+ return result;
+}
+
CalibrationTablePtr calibrateZ(const QList<Pixels>& rawProfiles,
const uint32_t& stepsPerMm)
{