From 6e8bc699d4ee14a4abd6c5b0b6f1a5ad0abbe52c Mon Sep 17 00:00:00 2001 From: Lorn Potter Date: Thu, 24 May 2012 16:50:07 +1000 Subject: fix false positive sensor gesture recognition when slam is too close to head Change-Id: Ic6aa24ca44b6cb61c1592bd8536a092d7ec0fc90 Reviewed-by: Lorn Potter --- .../dataset2_mock_data/sensordata_nothover2.dat | 204 +++++++++++++++++++++ .../tst_sensorgestures_gestures.cpp | 26 +++ 2 files changed, 230 insertions(+) create mode 100644 tests/auto/qsensorgestures_gestures/dataset2_mock_data/sensordata_nothover2.dat (limited to 'tests/auto/qsensorgestures_gestures') diff --git a/tests/auto/qsensorgestures_gestures/dataset2_mock_data/sensordata_nothover2.dat b/tests/auto/qsensorgestures_gestures/dataset2_mock_data/sensordata_nothover2.dat new file mode 100644 index 00000000..4f3c6bfe --- /dev/null +++ b/tests/auto/qsensorgestures_gestures/dataset2_mock_data/sensordata_nothover2.dat @@ -0,0 +1,204 @@ +orientation:6991310589,5 +accelerometer: 6993361126,-0.440748,-0.32577,9.60065 +accelerometer: 6993380810,-0.5174,-0.172467,9.48567 +accelerometer: 6993400555,-0.5174,-0.172467,9.84977 +accelerometer: 6993440564,-0.383259,-0.555726,9.81144 +accelerometer: 6993460583,-0.651541,-0.32577,9.92642 +irProximity:6993468313,0.101961 +accelerometer: 6993480572,-0.134141,0.306608,10.0414 +proximity:6993491811,0 +accelerometer: 6993500592,-0.229956,0.249119,10.0031 +accelerometer: 6993520520,-0.229956,0.594052,9.88809 +accelerometer: 6993540570,-0.459911,0.670704,10.0797 +accelerometer: 6993560559,-0.383259,0.555726,9.54316 +irProximity:6993572286,0.117647 +accelerometer: 6993580639,-0.594052,0.651541,9.69646 +accelerometer: 6993600628,-0.613215,0.383259,9.524 +accelerometer: 6993620892,-0.574889,0.766519,9.33237 +accelerometer: 6993640912,-0.287445,1.01564,9.14074 +accelerometer: 6993660656,-0.574889,1.22643,8.96827 +irProximity:6993672933,0.156863 +accelerometer: 6993680584,-0.0766519,1.09229,9.524 +accelerometer: 6993700573,0.0958148,1.49471,10.0414 +accelerometer: 6993720746,0.344933,1.53304,10.0989 +accelerometer: 6993740551,0.287445,1.43722,10.6163 +accelerometer: 6993760601,0.229956,1.45639,10.3863 +irProximity:6993775747,0.0392157 +accelerometer: 6993780560,0.498237,1.37973,10.9995 +accelerometer: 6993800885,0.32577,1.83965,10.7888 +accelerometer: 6993820599,0.344933,2.0696,10.4247 +accelerometer: 6993840558,0.440748,2.20374,10.5588 +accelerometer: 6993860577,0.804845,2.47202,10.9612 +irProximity:6993876272,0.137255 +accelerometer: 6993880566,0.804845,2.18458,11.2295 +accelerometer: 6993900586,1.07313,2.03127,11.057 +accelerometer: 6993920910,0.824008,2.31872,10.5013 +accelerometer: 6993940930,0.996474,2.83612,10.3288 +accelerometer: 6993960919,1.87797,2.89361,10.4055 +irProximity:6993976949,0.101961 +accelerometer: 6993980938,2.33788,2.97026,10.6546 +accelerometer: 6994000866,2.51035,2.91277,9.75395 +accelerometer: 6994020947,2.85528,3.20022,9.40902 +accelerometer: 6994040936,3.60264,4.27334,9.86893 +accelerometer: 6994060925,3.89008,4.02422,9.04492 +irProximity:6994077596,0.121569 +accelerometer: 6994080945,4.40748,4.06255,8.01012 +accelerometer: 6994100689,4.61828,6.89867,7.56937 +accelerometer: 6994120923,5.5381,8.54668,7.22444 +accelerometer: 6994140942,4.48413,7.14779,5.5381 +accelerometer: 6994160809,2.0696,6.53457,2.79779 +irProximity:6994178274,0.117647 +accelerometer: 6994180920,0.153304,7.12862,1.20727 +orientation:6994180920,1 +accelerometer: 6994201001,-1.85881,7.07114,-0.440748 +accelerometer: 6994220929,-2.12709,8.2784,-1.82048 +accelerometer: 6994240918,-0.843171,7.47356,-1.36057 +accelerometer: 6994260907,0.172467,7.87598,-0.0958148 +irProximity:6994280477,0.0588235 +accelerometer: 6994280896,-0.536563,7.89514,0.459911 +accelerometer: 6994300580,-1.14978,7.91431,-0.210793 +accelerometer: 6994322339,-0.440748,8.2784,-0.632378 +accelerometer: 6994340954,0.019163,8.71915,-0.824008 +accelerometer: 6994360943,0.479074,8.66166,-0.32577 +irProximity:6994381002,0.156863 +accelerometer: 6994381024,0.344933,8.94911,-0.402422 +accelerometer: 6994400586,0.229956,9.29404,-0.172467 +accelerometer: 6994420910,0.651541,9.54316,0.0574889 +accelerometer: 6994440899,0.90066,9.56232,0.421585 +accelerometer: 6994460919,0.613215,9.42818,0.153304 +irProximity:6994481741,0.27451 +accelerometer: 6994481213,0.958148,9.60065,-0.0958148 +accelerometer: 6994501599,0.383259,9.23655,-0.747356 +accelerometer: 6994520764,-1.45639,8.14426,-0.574889 +accelerometer: 6994540814,-6.70704,4.84823,-1.16894 +accelerometer: 6994560833,-13.9698,0.5174,-0.938986 +accelerometer: 6994580517,-21.3092,-4.33083,-2.587 +irProximity:6994582265,0.270588 +accelerometer: 6994600537,-22.1141,-9.38986,-2.16542 +accelerometer: 6994620831,-13.8548,-14.1614,0.555726 +accelerometer: 6994640820,0.919823,-17.9557,4.48413 +accelerometer: 6994660779,21.4242,-17.9174,8.85329 +accelerometer: 6994680645,37.8469,-10.3288,-0.459911 +irProximity:6994683187,0.34902 +accelerometer: 6994701184,35.5665,-5.94052,-2.54868 +accelerometer: 6994720929,25.7359,-10.5205,4.86739 +accelerometer: 6994740918,21.2326,-7.62686,8.4892 +accelerometer: 6994760907,16.8251,-5.26982,7.35858 +accelerometer: 6994780713,12.5709,-3.35352,2.2229 +irProximity:6994784078,0.0862745 +accelerometer: 6994800549,10.7696,-3.89008,-0.134141 +accelerometer: 6994820935,11.4786,-3.12356,0.421585 +orientation:6994820935,4 +accelerometer: 6994840924,12.4943,-3.83259,0.114978 +accelerometer: 6994860913,12.1302,-3.06608,-0.0574889 +accelerometer: 6994880749,10.5205,-2.14625,0.804845 +irProximity:6994884969,0.141176 +accelerometer: 6994900647,10.2522,-1.5522,1.66718 +accelerometer: 6994920941,9.81144,-1.80132,2.10793 +accelerometer: 6994940930,9.0066,-1.89713,2.51035 +accelerometer: 6994960888,8.71915,-2.26123,2.85528 +accelerometer: 6994980755,8.52752,-2.2229,3.35352 +irProximity:6994985830,0.0901961 +accelerometer: 6995000775,8.22091,-2.68282,3.18105 +accelerometer: 6995020916,8.50836,-2.41453,2.77863 +accelerometer: 6995040905,8.50836,-2.51035,2.7403 +accelerometer: 6995060894,8.87245,-2.12709,2.87445 +accelerometer: 6995080761,9.10241,-2.52951,3.14273 +irProximity:6995086721,0.0941176 +accelerometer: 6995100567,9.0066,-2.29956,3.04691 +accelerometer: 6995120862,8.81497,-2.64449,3.02775 +accelerometer: 6995140759,8.6425,-2.4337,2.47202 +accelerometer: 6995160931,8.87245,-2.03127,2.41453 +accelerometer: 6995180706,9.27488,-1.95462,2.91277 +irProximity:6995187551,0.0980392 +accelerometer: 6995201153,9.3132,-2.0696,3.18105 +accelerometer: 6995220929,9.17906,-2.10793,3.23854 +accelerometer: 6995240857,8.98743,-2.29956,3.41101 +accelerometer: 6995260907,8.94911,-2.0696,3.21938 +accelerometer: 6995280713,8.83413,-2.14625,3.04691 +accelerometer: 6995300518,8.73831,-1.99295,2.9511 +accelerometer: 6995321087,8.77664,-2.12709,3.1044 +accelerometer: 6995340924,8.68083,-2.20374,3.14273 +accelerometer: 6995360882,8.66166,-2.18458,3.00859 +accelerometer: 6995380719,8.71915,-2.2229,2.9511 +irProximity:6995389303,0 +accelerometer: 6995400769,8.69999,-2.26123,3.02775 +accelerometer: 6995420910,8.7958,-2.16542,3.21938 +accelerometer: 6995440899,8.73831,-2.0696,3.23854 +accelerometer: 6995460888,8.6425,-1.97379,3.16189 +accelerometer: 6995480694,8.73831,-2.2229,3.33436 +irProximity:6995490011,0.0627451 +accelerometer: 6995500531,8.71915,-2.0696,3.54515 +accelerometer: 6995520916,8.73831,-2.18458,3.48766 +accelerometer: 6995540966,8.75748,-1.85881,3.43017 +accelerometer: 6995560925,8.91078,-1.93546,3.44933 +accelerometer: 6995580761,8.77664,-2.03127,3.23854 +irProximity:6995590963,0.0705882 +accelerometer: 6995601056,8.81497,-2.01211,3.44933 +accelerometer: 6995620862,8.71915,-2.10793,3.7751 +accelerometer: 6995640881,8.85329,-1.93546,4.02422 +accelerometer: 6995661053,8.7958,-2.24207,4.21585 +accelerometer: 6995680737,8.68083,-2.33788,3.94757 +accelerometer: 6995700543,8.73831,-2.26123,3.89008 +accelerometer: 6995720929,8.83413,-2.03127,4.63744 +accelerometer: 6995740887,8.87245,-2.03127,5.40396 +accelerometer: 6995760937,9.12157,-1.72467,6.49625 +accelerometer: 6995780896,8.73831,-1.72467,6.91783 +irProximity:6995792348,0 +accelerometer: 6995800549,8.24008,-2.47202,7.10946 +accelerometer: 6995820904,7.66519,-2.0696,7.28193 +accelerometer: 6995840924,6.78369,-2.70198,7.43523 +accelerometer: 6995860913,5.6914,-2.41453,7.53105 +orientation:6995860913,5 +accelerometer: 6995880932,4.46497,-2.10793,7.4544 +accelerometer: 6995900738,3.67929,-2.05044,7.41607 +accelerometer: 6995920910,3.23854,-1.87797,7.72268 +accelerometer: 6995940747,2.9511,-1.51387,8.50836 +accelerometer: 6995960858,2.72114,-1.43722,9.06409 +accelerometer: 6995980877,2.2229,-1.64802,8.73831 +irProximity:6995993764,0.105882 +accelerometer: 6996003003,1.66718,-1.7055,9.17906 +accelerometer: 6996020855,1.43722,-1.60969,9.40902 +accelerometer: 6996040875,1.20727,-1.83965,9.29404 +accelerometer: 6996060925,1.07313,-1.68634,9.46651 +accelerometer: 6996080945,1.24559,-1.41806,9.73479 +irProximity:6996094472,0 +accelerometer: 6996101147,0.90066,-1.30308,9.61981 +accelerometer: 6996120923,0.498237,-1.49471,9.04492 +accelerometer: 6996140912,0.5174,-1.16894,9.04492 +accelerometer: 6996160870,0.728193,-1.3989,9.48567 +accelerometer: 6996180890,0.19163,-1.09229,9.524 +accelerometer: 6996200543,0.344933,-1.24559,8.75748 +accelerometer: 6996220929,0.364096,-1.05396,9.40902 +accelerometer: 6996240918,0.364096,-1.34141,9.44734 +accelerometer: 6996260846,0.498237,-1.05396,9.61981 +accelerometer: 6996280896,0.459911,-0.958148,9.84977 +irProximity:6996295827,0.0196078 +accelerometer: 6996300549,0.32577,-0.804845,9.56232 +accelerometer: 6996320904,0.498237,-1.32224,9.14074 +accelerometer: 6996340893,0.229956,-1.51387,9.1599 +accelerometer: 6996360913,0.268282,-0.938986,9.40902 +accelerometer: 6996380902,0.364096,-1.07313,9.61981 +irProximity:6996396505,0 +accelerometer: 6996400799,-0.019163,-1.41806,9.44734 +accelerometer: 6996420880,-0.134141,-1.20727,9.8306 +accelerometer: 6996440838,-0.19163,-1.45639,9.90726 +accelerometer: 6996460827,-0.287445,-1.09229,9.84977 +accelerometer: 6996480725,0.019163,-0.440748,8.83413 +irProximity:6996497182,0.109804 +accelerometer: 6996500561,-0.344933,-1.22643,9.42818 +accelerometer: 6996522473,-0.383259,-1.37973,9.23655 +accelerometer: 6996541760,-0.594052,-1.41806,9.90726 +accelerometer: 6996561749,-0.594052,-1.57136,10.0989 +accelerometer: 6996581494,-0.498237,-1.28392,9.86893 +irProximity:6996597921,0.176471 +accelerometer: 6996601269,-0.344933,-1.13062,9.79228 +accelerometer: 6996621930,-0.249119,-1.05396,9.90726 +accelerometer: 6996641766,-0.0574889,-1.34141,10.2139 +accelerometer: 6996661419,-0.306608,-1.20727,10.3288 +accelerometer: 6996681378,-0.689867,-0.536563,10.5396 +irProximity:6996698598,0.0392157 +accelerometer: 6996701428,0.0383259,-0.843171,9.60065 +accelerometer: 6996720837,-0.134141,-0.5174,9.19823 +accelerometer: 6996740674,-0.210793,-0.766519,9.56232 + diff --git a/tests/auto/qsensorgestures_gestures/tst_sensorgestures_gestures.cpp b/tests/auto/qsensorgestures_gestures/tst_sensorgestures_gestures.cpp index 5ae47fd3..46795fa1 100644 --- a/tests/auto/qsensorgestures_gestures/tst_sensorgestures_gestures.cpp +++ b/tests/auto/qsensorgestures_gestures/tst_sensorgestures_gestures.cpp @@ -57,6 +57,7 @@ public: private Q_SLOTS: void initTestCase(); + void testNotHover2(); void testNotHover(); void testNotWhip(); @@ -371,6 +372,31 @@ void tst_sensorgestures_gestures::testNotWhip() } +void tst_sensorgestures_gestures::testNotHover2() +{ +// test slam when coming to close to head + QString name = "dataset2_mock_data/sensordata_nothover2.dat"; + + QStringList gestStringList; + + gestStringList << "QtSensors.hover"; + gestStringList << "QtSensors.slam"; + + QScopedPointer gesture(new QSensorGesture(gestStringList)); + + QCOMPARE(gesture->invalidIds().count(),0); + QSignalSpy spy_gesture(gesture.data(), SIGNAL(detected(QString))); + + QCOMPARE(mockcommonPrivate::instance()->setFile(name), true); + gesture.data()->startDetection(); + QCOMPARE(gesture->isActive(),true); + + QTRY_COMPARE_WITH_TIMEOUT(spy_gesture.count(),1, 2000); + + QList arguments = spy_gesture.takeFirst(); + QCOMPARE(arguments.at(0).toString(), QLatin1String("slam")); +} + QTEST_MAIN(tst_sensorgestures_gestures) #include "tst_sensorgestures_gestures.moc" -- cgit v1.2.3