summaryrefslogtreecommitdiff
path: root/src/calibration.cpp
diff options
context:
space:
mode:
authorNikita Kostovsky <luntik2012@gmail.com>2025-01-12 17:57:45 +0100
committerNikita Kostovsky <luntik2012@gmail.com>2025-01-12 17:57:45 +0100
commit201d98f63131242bb8871ed0c4a3ae9ebd4ef030 (patch)
tree763a52710b3c8021c62b93535692b53de90265e5 /src/calibration.cpp
parent4782e81c32392c78025aae1acb4b2ed1d1395908 (diff)
start refactoring. non-working commit
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)
{