From 22c2bc95c9947bfa85cbe514fe89cd9d1103cc35 Mon Sep 17 00:00:00 2001 From: Markus Bullmann Date: Wed, 18 Sep 2019 10:20:07 +0200 Subject: [PATCH] Small code changes --- code/ftmprologic.args.json | 4 ++++ code/main.cpp | 2 ++ code/mainProb.cpp | 22 ++++++++++++++++------ 3 files changed, 22 insertions(+), 6 deletions(-) diff --git a/code/ftmprologic.args.json b/code/ftmprologic.args.json index 1ae93f0..aaf6e7c 100644 --- a/code/ftmprologic.args.json +++ b/code/ftmprologic.args.json @@ -2,6 +2,10 @@ "FileVersion": 2, "Id": "eafb5522-91a6-3893-907d-2546127e18fd", "Items": [ + { + "Id": "3ee17cce-0233-426a-b4b0-1c3e09fca628", + "Command": "prob" + }, { "Id": "883c12c1-2ab8-42bc-8db6-3b0feb8f53ff", "Command": "trilat" diff --git a/code/main.cpp b/code/main.cpp index bb6716f..f209a13 100644 --- a/code/main.cpp +++ b/code/main.cpp @@ -459,10 +459,12 @@ int main(int argc, char** argv) if (args.hasFlag("prob")) { + std::cout << "Probabilistic" << "\n"; return mainProp(argc, argv); } else if (args.hasFlag("trilat")) { + std::cout << "Trilateration" << "\n"; return mainTrilat(argc, argv); } diff --git a/code/mainProb.cpp b/code/mainProb.cpp index 62e9820..c48cb40 100644 --- a/code/mainProb.cpp +++ b/code/mainProb.cpp @@ -85,12 +85,20 @@ static CombinedStats run(Settings::DataSetup setup, int walkIdx, std::str //calculate distance of path std::vector::InterpolatorEntry> gtEntries = gtInterpolator.getEntries(); - double distance = 0; + double gtTotalDistance = 0; + Stats::Statistics gtWalkingSpeed; for (int i = 1; i < gtEntries.size(); ++i) { - distance += gtEntries[i].value.getDistance(gtEntries[i - 1].value); + double distance = gtEntries[i].value.getDistance(gtEntries[i - 1].value); + double timeDiff = static_cast(gtEntries[i].key - gtEntries[i - 1].key); + + double walkingSpeed = distance / (timeDiff/1000.0f); // m / s + + gtWalkingSpeed.add(walkingSpeed); + gtTotalDistance += distance; } - std::cout << "Distance of Path: " << distance << std::endl; + std::cout << "Distance of Path: " << gtTotalDistance << std::endl; + std::cout << "GT walking speed: " << gtWalkingSpeed.getAvg() << "m/s (" << gtWalkingSpeed.getAvg()*3.6f << "km/h)" << std::endl; // debug show //MeshPlotter dbg; @@ -149,6 +157,8 @@ static CombinedStats run(Settings::DataSetup setup, int walkIdx, std::str if (Settings::UseKalman) { + std::cout << "Using Kalman" << "\n"; + for (size_t i = 0; i < 4; i++) { if (!isnan(dists[i])) @@ -250,10 +260,10 @@ static CombinedStats run(Settings::DataSetup setup, int walkIdx, std::str } std::cout << "Walk error:" << "\n"; - std::cout << "[m] " << " mean \t stdDev median" << "\n"; + std::cout << "[m] " << std::setw(10) << "mean" << std::setw(10) << "stdDev" << std::setw(10) << "median" << "\n"; - std::cout << "FTM " << errorStats.ftm.getAvg() << "\t" << errorStats.ftm.getStdDev() << "\t" << errorStats.ftm.getMedian() << "\n"; - std::cout << "RSSI " << errorStats.rssi.getAvg() << "\t" << errorStats.rssi.getStdDev() << "\t" << errorStats.rssi.getMedian() << "\n"; + std::cout << "FTM " << std::setw(10) << errorStats.ftm.getAvg() << std::setw(10) << errorStats.ftm.getStdDev() << std::setw(10) << errorStats.ftm.getMedian() << "\n"; + std::cout << "RSSI " << std::setw(10) << errorStats.rssi.getAvg() << std::setw(10) << errorStats.rssi.getStdDev() << std::setw(10) << errorStats.rssi.getMedian() << "\n"; std::cout << std::endl; return errorStats;