From 576f3d35d750ccfb98e2f9cc4188909ee5613b36 Mon Sep 17 00:00:00 2001 From: "Olivier J.N. Bertrand" <olivier.bertrand@uni-bielefeld.de> Date: Tue, 15 Jan 2019 14:47:59 +0100 Subject: [PATCH] Move columns for posorient and vel in trajectories --- navipy/database/__init__.py | 1 + navipy/processing/test_opticflow.py | 4 ++-- navipy/trajectories/__init__.py | 25 +++++++++++++++++++++++-- 3 files changed, 26 insertions(+), 4 deletions(-) diff --git a/navipy/database/__init__.py b/navipy/database/__init__.py index 0a3f5fb..1ba9697 100644 --- a/navipy/database/__init__.py +++ b/navipy/database/__init__.py @@ -195,6 +195,7 @@ class DataBase(): WHERE (rowid=?) """.format(tablename), (rowid,)) self.__viewing_dir = self.db_cursor.fetchone()[0] + self.__viewing_dir = np.round(self.__viewing_dir, decimals=3) return self.__viewing_dir.copy() @viewing_directions.setter diff --git a/navipy/processing/test_opticflow.py b/navipy/processing/test_opticflow.py index feb9630..989253d 100644 --- a/navipy/processing/test_opticflow.py +++ b/navipy/processing/test_opticflow.py @@ -2,8 +2,8 @@ import unittest from navipy.processing import mcode import pandas as pd import numpy as np -from navipy.moving.agent import posorient_columns -from navipy.moving.agent import velocities_columns +from navipy.trajectories import posorient_columns +from navipy.trajectories import velocities_columns from navipy.scene import __spherical_indeces__ diff --git a/navipy/trajectories/__init__.py b/navipy/trajectories/__init__.py index 1f2856d..8051f65 100644 --- a/navipy/trajectories/__init__.py +++ b/navipy/trajectories/__init__.py @@ -20,9 +20,30 @@ from scipy.interpolate import CubicSpline import warnings +def posorient_columns(convention): + toreturn = [('location', 'x'), + ('location', 'y'), + ('location', 'z')] + if convention == 'quaternion': + for a in range(4): + toreturn.append((convention, 'q_{}'.format(a))) + else: + for a in range(3): + toreturn.append((convention, 'alpha_{}'.format(a))) + return toreturn + + +def velocities_columns(convention): + toreturn = [] + # Prepend d on dimention for derivative + for it1, it2 in posorient_columns(convention): + toreturn.append((it1, 'd'+it2)) + return toreturn + + def _markers2position(x, kwargs): - mark0 = pd.Series(x[:3], index=['x', 'y', 'z']) - mark1 = pd.Series(x[3:6], index=['x', 'y', 'z']) + mark0 = pd.Series(x[: 3], index=['x', 'y', 'z']) + mark1 = pd.Series(x[3: 6], index=['x', 'y', 'z']) mark2 = pd.Series(x[6:], index=['x', 'y', 'z']) triangle_mode = kwargs['triangle_mode'] euler_axes = kwargs['euler_axes'] -- GitLab