Я хочу добиться следующего:
Я хочу, чтобы пользователь мог "записывать" движение iPhone с помощью гироскопа. И после этого пользователь должен иметь возможность воспроизвести одно и то же движение. Я извлекаю шаг, рулон и рыскание, используя:
[self.motionManager startDeviceMotionUpdatesToQueue:[NSOperationQueue currentQueue]
withHandler: ^(CMDeviceMotion *motion, NSError *error)
{
CMAttitude *attitude = motion.attitude;
NSLog(@"pitch: %f, roll: %f, yaw: %f]", attitude.pitch, attitude.roll, attitude.yaw);
}];
Я думаю, что я мог бы хранить эти значения в массиве, если пользователь находится в режиме записи. И когда пользователь пытается реплицировать это движение, я могу сравнить реплицируемый массив движения с записанным. Дело в том, как я могу сравнить два массива умным способом? У них никогда не будет одинаковых значений, но они могут быть несколько одинаковыми.
Я вообще на правильном пути здесь?
ОБНОВЛЕНИЕ: Я думаю, что, возможно, ответ Алиса об использовании DTW может быть правильным для меня здесь. Но я не настолько умный (по-видимому), поэтому, если бы кто-нибудь мог помочь мне с первого шага по сравнению с массивами, я был бы счастливым человеком!
Спасибо!