diff --git a/3Dposeestimates_3_.ipynb b/3Dposeestimates_3_.ipynb
new file mode 100644
index 0000000000000000000000000000000000000000..854030260a26f41d06c17ab62b6ca7ec2fb7bab5
--- /dev/null
+++ b/3Dposeestimates_3_.ipynb
@@ -0,0 +1 @@
+{"cells":[{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":27930,"status":"ok","timestamp":1670920608019,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"},"user_tz":-60},"id":"q3OnW8g8VO_C","outputId":"8c91069e-32c7-498e-e7c6-1d60ffc5735c"},"outputs":[{"output_type":"stream","name":"stdout","text":["Mounted at /content/drive\n"]}],"source":["from google.colab import drive\n","drive.mount('/content/drive')"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":833,"status":"ok","timestamp":1670920611744,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"},"user_tz":-60},"id":"ODXKyWj8VHRh","outputId":"6ec278d2-be38-4fe7-cb85-c98ece9f201d"},"outputs":[{"output_type":"stream","name":"stdout","text":["/content/drive/MyDrive/3d-pose-2d-keypoints-present\n"]}],"source":["%cd drive/MyDrive/3d-pose-2d-keypoints-present/"]},{"cell_type":"code","execution_count":53,"metadata":{"id":"xno3aPbeUN3h","executionInfo":{"status":"ok","timestamp":1670939884140,"user_tz":-60,"elapsed":425,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"}}},"outputs":[],"source":["import numpy as np\n","np.set_printoptions(suppress=True)\n","import pandas as pd\n","%matplotlib inline"]},{"cell_type":"code","execution_count":54,"metadata":{"id":"8z8KKUJ1UN3o","executionInfo":{"status":"ok","timestamp":1670939887925,"user_tz":-60,"elapsed":1110,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"}}},"outputs":[],"source":["test_file = 'logs/train_test/Subject{0}test{1}.npy'\n","weight_file = '{0}-{1}{2}.hdf5' # norm_type, modelTrueTr\n","weight_root = 'logs/weights/'\n","weight_loc = weight_root + weight_file"]},{"cell_type":"code","execution_count":55,"metadata":{"id":"DPprUYHWUN3p","executionInfo":{"status":"ok","timestamp":1670939889311,"user_tz":-60,"elapsed":7,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"}}},"outputs":[],"source":["from scipy import spatial\n","\n","def procustes_distance(test, pred):\n","    proc = np.zeros((test.shape[0]))\n","    for i in range(test.shape[0]):\n","        a, b, proc[i] = spatial.procrustes(test[i], pred[i])\n","        \n","    return proc\n","\n","def test_predictions(subject_num, norm_mode, model, weights, optional=''):\n","\n","    model.load_weights(weights)\n","    coordinate_log = test_file.format(subject_num, norm_mode)\n","    if subject == 86:\n","        coordinate_log = 'logs/train_test/Subject{0}train{1}.npy'.format(subject_num, norm_mode)\n","\n","    test = np.load(coordinate_log)\n","    y_test = test[:,:,2]\n","    X_data = test[:,:,0:2]\n","    X_test = X_data.reshape(X_data.shape[0], X_data.shape[1] *  X_data.shape[2])\n","    pred = model.predict(X_test)\n","    pred_3d = test.copy()\n","    pred_3d[:,:,2] = pred\n","    return test, pred_3d\n","\n","def procrustes_test(subject_num, norm_mode, model, optional=''):\n","    weights = weight_loc.format(norm_mode, model, optional)\n","    model = k_models[model]\n","    model.compile(loss=euc_dist_keras, optimizer='rmsprop')\n","    test, pred = test_predictions(subject_num, norm_mode, model, weights)\n","    proc = procustes_distance(test, pred)\n","    print(subject_num, proc.mean(), )\n","    return proc, pred, test"]},{"cell_type":"code","execution_count":56,"metadata":{"id":"Qtc09oxrUN3r","executionInfo":{"status":"ok","timestamp":1670939892860,"user_tz":-60,"elapsed":1137,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"}}},"outputs":[],"source":["import keras\n","from keras.models import Model\n","from keras.layers import Dense, Activation, Dropout, Input\n","from keras.optimizers import SGD\n","from keras.callbacks import ModelCheckpoint\n","from keras.models import model_from_json\n","from keras.layers import Concatenate, Add\n","from keras import backend as K\n","def euc_dist_keras(y_true, y_pred):\n","    return K.sqrt(K.sum(K.square(y_true - y_pred), axis=-1, keepdims=True))"]},{"cell_type":"code","execution_count":57,"metadata":{"id":"t1soLy-9UN3t","executionInfo":{"status":"ok","timestamp":1670939894563,"user_tz":-60,"elapsed":1099,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"}}},"outputs":[],"source":["def base():\n","    input1 = Input(shape=(30,))\n","\n","    x = Dense(30)(input1)\n","    x = Activation(\"tanh\")(x)\n","    x = Dense(30)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dense(30)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dense(30)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dense(30)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dense(15)(x)\n","    final = Activation(\"tanh\")(x)\n","\n","\n","    model = Model(inputs=input1,outputs=final)\n","    return model\n","\n","\n","# SIMPLE DROPOUT\n","\n","def dropout():\n","    input1 = Input(shape=(30,))\n","\n","    x = Dense(30)(input1)\n","    x = Activation(\"tanh\")(x)\n","    x = Dropout(0.3)(x)\n","    x = Dense(30)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dense(30)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dropout(0.2)(x)\n","    x = Dense(30)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dropout(0.2)(x)\n","    x = Dense(30)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dense(15)(x)\n","    final = Activation(\"tanh\")(x)\n","\n","\n","    model = Model(inputs=input1,outputs=final)\n","    return model\n","\n","# MULTI-STAGE MODEL\n","\n","def multi():\n","    input1 = Input(shape=(30,))\n","\n","    x = Dense(30)(input1)\n","    x = Activation(\"tanh\")(x)\n","    x = Dropout(0.20)(x)\n","    x = Dense(30)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dense(30)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dense(30)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dropout(0.20)(x)\n","    x = Dense(30)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dense(15)(x)\n","    x = Activation(\"tanh\")(x)\n","\n","    x = Concatenate()([input1, x])\n","    x = Dense(45)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dense(45)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dropout(0.10)(x)\n","    x = Dense(30)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dense(15)(x)\n","    x = Activation(\"tanh\")(x)\n","\n","    x = Concatenate()([input1, x])\n","    x = Dense(45)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dense(45)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dropout(0.10)(x)\n","    x = Dense(30)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dense(15)(x)\n","    x = Activation(\"tanh\")(x)\n","\n","    x = Concatenate()([input1, x])\n","    x = Dense(45)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dense(45)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dropout(0.10)(x)\n","    x = Dense(30)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dense(15)(x)\n","    x = Activation(\"tanh\")(x)\n","\n","    x = Concatenate()([input1, x])\n","    x = Dense(45)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dense(45)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dropout(0.10)(x)\n","    x = Dense(30)(x)\n","    x = Activation(\"tanh\")(x)\n","    x = Dense(15)(x)\n","    final = Activation(\"tanh\")(x)\n","\n","    model = Model(inputs=input1,outputs=final)\n","    return model\n","\n","k_models = {\n","    'base' : base(),\n","    'dropout' : dropout(),\n","    'multi' : multi(),\n","}\n","\n"]},{"cell_type":"code","execution_count":58,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":24564,"status":"ok","timestamp":1670939923626,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"},"user_tz":-60},"id":"tOA5UGnHUN3v","outputId":"92b946ba-1afa-4930-a1a0-b4143bbb370c"},"outputs":[{"output_type":"stream","name":"stdout","text":["('frame', 'base')\n","338/338 [==============================] - 1s 2ms/step\n","13 0.021978279842198047\n","348/348 [==============================] - 1s 1ms/step\n","14 0.020342736339673068\n","456/456 [==============================] - 1s 2ms/step\n","15 0.012317634764888277\n","('sequence', 'multi', 'mirror-seated')\n","338/338 [==============================] - 1s 2ms/step\n","13 0.013923522028543132\n","348/348 [==============================] - 1s 2ms/step\n","14 0.011720896994829746\n","456/456 [==============================] - 1s 2ms/step\n","15 0.007090088469298017\n","('frame', 'multi', 'mirror-seated')\n","338/338 [==============================] - 1s 2ms/step\n","13 0.01547684330812897\n","348/348 [==============================] - 1s 2ms/step\n","14 0.015748800869819828\n","456/456 [==============================] - 1s 2ms/step\n","15 0.009700461101398751\n"]}],"source":["scenario = {}\n","\n","settings = [\n","    # (normalization mode, model, optional param for augmented data)\n","    ('frame', 'base'),\n","    ('sequence', 'multi', 'mirror-seated'),\n","    ('frame', 'multi', 'mirror-seated')\n","]\n","\n","for run in settings:\n","    print(run)\n","    scenario[run] = {}\n","    option = ''\n","    if len(run) == 3:\n","        option = '-' + run[2]\n","    for subject in [13,14, 15]:\n","        scenario[run][subject] = procrustes_test(subject, norm_mode=run[0], model=run[1], optional=option)"]},{"cell_type":"code","execution_count":59,"metadata":{"id":"dpkniSa8UN3x","executionInfo":{"status":"ok","timestamp":1670939931240,"user_tz":-60,"elapsed":2153,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"}}},"outputs":[],"source":["import pickle\n","data, df = {}, {}\n","df_list = []\n","for subject in [13,14, 15]:\n","    subject_num = subject\n","    blender_file = 'logs/blender_dicts/Subject{}.p'.format(subject_num)\n","    bvh_logs = pickle.load( open( blender_file, \"rb\" ) )\n","    \n","    data[subject] = []\n","    for key, value in bvh_logs.items():\n","        _, bvh_sequence = key.split(\"_\")\n","        sequence, _ = bvh_sequence.split(\".\")\n","        sequence = int(sequence)\n","        for i, frame in enumerate(value):\n","            data[subject].append([subject, sequence, i])\n","        \n","            \n","    df[subject] = pd.DataFrame(data=data[subject], columns=['subject', 'sequence', 'frame'])\n","    df[subject]['orig_index'] = df[subject].index.copy(deep=True)\n","    \n","    df_list.append(df[subject])"]},{"cell_type":"code","execution_count":60,"metadata":{"id":"sSqtnkRFUN3y","executionInfo":{"status":"ok","timestamp":1670939947331,"user_tz":-60,"elapsed":695,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"}}},"outputs":[],"source":["for run in settings:\n","    for subject in [13,14,15]:\n","        df[subject][str(run)] = scenario[run][subject][0].tolist()"]},{"cell_type":"markdown","metadata":{"id":"9o_sGLa5UN30"},"source":["### General summary of aggregate performance\n","\n","---\n","\n"]},{"cell_type":"code","execution_count":61,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":140},"executionInfo":{"elapsed":578,"status":"ok","timestamp":1670939959919,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"},"user_tz":-60},"id":"TMg9BUeGUN34","outputId":"ce5e25dd-2918-4e90-aa16-6a482babf2e6"},"outputs":[{"output_type":"execute_result","data":{"text/plain":["\"\\\\begin{tabular}{lrrr}\\n\\\\toprule\\n{} &  ('frame', 'base') &  ('sequence', 'multi', 'mirror-seated') &  ('frame', 'multi', 'mirror-seated') \\\\\\\\\\n\\\\midrule\\ncount &       36506.000000 &                            36506.000000 &                         36506.000000 \\\\\\\\\\nmean  &           0.017623 &                                0.010524 &                             0.013254 \\\\\\\\\\nstd   &           0.023077 &                                0.017905 &                             0.016020 \\\\\\\\\\nmin   &           0.000334 &                                0.000231 &                             0.000311 \\\\\\\\\\n10\\\\%   &           0.003087 &                                0.001465 &                             0.002410 \\\\\\\\\\n15\\\\%   &           0.003783 &                                0.001786 &                             0.002982 \\\\\\\\\\n25\\\\%   &           0.005249 &                                0.002477 &                             0.004073 \\\\\\\\\\n50\\\\%   &           0.010106 &                                0.004953 &                             0.007695 \\\\\\\\\\n75\\\\%   &           0.020238 &                                0.010578 &                             0.015687 \\\\\\\\\\n90\\\\%   &           0.040538 &                                0.023622 &                             0.030747 \\\\\\\\\\n95\\\\%   &           0.057629 &                                0.038913 &                             0.045224 \\\\\\\\\\n99\\\\%   &           0.116373 &                                0.094522 &                             0.080378 \\\\\\\\\\n99.5\\\\% &           0.143658 &                                0.118510 &                             0.096798 \\\\\\\\\\n99.8\\\\% &           0.186057 &                                0.154066 &                             0.113959 \\\\\\\\\\n99.9\\\\% &           0.238149 &                                0.180831 &                             0.131468 \\\\\\\\\\nmax   &           0.367077 &                                0.417387 &                             0.225644 \\\\\\\\\\n\\\\bottomrule\\n\\\\end{tabular}\\n\""],"application/vnd.google.colaboratory.intrinsic+json":{"type":"string"}},"metadata":{},"execution_count":61}],"source":["# General summary of aggregate performance\n","\n","all_data = pd.concat([df[13], df[14], df[15]])\n","all_data = all_data.reset_index()\n","summary = all_data.filter(like='(', axis=1).describe(percentiles=[0.10, 0.15, 0.25,0.5,0.75,0.9,0.95,0.99,0.995, 0.998, 0.999])\n","summary.to_latex()\n","#all_data.describe(percentiles=[0.25,0.5,0.75,0.9,0.95,0.99,0.995])"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":282},"executionInfo":{"elapsed":4127,"status":"ok","timestamp":1670875532272,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"},"user_tz":-60},"id":"Hp_rpw28UN35","outputId":"c35e655b-2ae5-4f60-d5c8-87511617c0eb"},"outputs":[{"output_type":"execute_result","data":{"text/plain":["<matplotlib.axes._subplots.AxesSubplot at 0x7fc1dc5ee9d0>"]},"metadata":{},"execution_count":13},{"output_type":"display_data","data":{"text/plain":["<Figure size 432x288 with 1 Axes>"],"image/png":"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\n"},"metadata":{"needs_background":"light"}}],"source":["all_data[\"('frame', 'multi', 'mirror-seated')\"].plot.kde(xlim=(-.01,0.22))"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":286},"executionInfo":{"elapsed":3035,"status":"ok","timestamp":1670875535289,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"},"user_tz":-60},"id":"HaSp9aWlUN36","outputId":"726da38d-c020-46be-f182-6e2bf289ebca"},"outputs":[{"output_type":"execute_result","data":{"text/plain":["<matplotlib.axes._subplots.AxesSubplot at 0x7fc1daf9c880>"]},"metadata":{},"execution_count":14},{"output_type":"display_data","data":{"text/plain":["<Figure size 432x288 with 1 Axes>"],"image/png":"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\n"},"metadata":{"needs_background":"light"}}],"source":["# I might not need it \n","all_data[\"('frame', 'multi', 'mirror-seated')\"].plot.kde(logx=True) "]},{"cell_type":"markdown","metadata":{"id":"c7zS16ZZUN37"},"source":["### Identify high-error poses"]},{"cell_type":"code","execution_count":62,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":1000},"executionInfo":{"elapsed":536,"status":"ok","timestamp":1670939976361,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"},"user_tz":-60},"id":"MVzk2ah9UN38","outputId":"6e0c2f42-2cee-45e4-f1f1-f3cca262aad8"},"outputs":[{"output_type":"stream","name":"stderr","text":["<ipython-input-62-4ad28937f719>:10: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n","  high_error[subject] = df[subject][idx].nlargest(10,a)\n"]},{"output_type":"execute_result","data":{"text/plain":["       subject  sequence  frame  orig_index  ('frame', 'base')  \\\n","6261        13        29    196        6261           0.100702   \n","10104       13         4    171       10104           0.141754   \n","6826        13         3    158        6826           0.114753   \n","303         13        18    262         303           0.114456   \n","9192        13        26    297        9192           0.009163   \n","3851        13        17    246        3851           0.106593   \n","8501        13        30    117        8501           0.035852   \n","5046        13        31    248        5046           0.084261   \n","7309        13        28    271        7309           0.089964   \n","2643        13         6     90        2643           0.119409   \n","256         14         6    182         256           0.090117   \n","10501       14         1    377       10501           0.143461   \n","5736        14         2    158        5736           0.093621   \n","7582        14        15    158        7582           0.064697   \n","4649        14         3     45        4649           0.126673   \n","8647        14        14    146        8647           0.069056   \n","1676        14        13    126        1676           0.054442   \n","1091        14        30    209        1091           0.095095   \n","1495        14        28    149        1495           0.085359   \n","6810        14        20    110        6810           0.082090   \n","2722        15         6    193        2722           0.130825   \n","12928       15        13    224       12928           0.152422   \n","3719        15        12    831        3719           0.037926   \n","8241        15         2   1278        8241           0.362257   \n","4656        15         8    310        4656           0.020231   \n","1899        15         4   1899        1899           0.074985   \n","11855       15         3    404       11855           0.032151   \n","5056        15         7    326        5056           0.017772   \n","10127       15         5    969       10127           0.005770   \n","14314       15        11    679       14314           0.009450   \n","\n","       ('sequence', 'multi', 'mirror-seated')  \\\n","6261                                 0.043361   \n","10104                                0.187564   \n","6826                                 0.120377   \n","303                                  0.086160   \n","9192                                 0.003290   \n","3851                                 0.125251   \n","8501                                 0.148434   \n","5046                                 0.072190   \n","7309                                 0.020845   \n","2643                                 0.073248   \n","256                                  0.059797   \n","10501                                0.053112   \n","5736                                 0.036431   \n","7582                                 0.024606   \n","4649                                 0.084130   \n","8647                                 0.083888   \n","1676                                 0.096755   \n","1091                                 0.036065   \n","1495                                 0.143717   \n","6810                                 0.021913   \n","2722                                 0.154068   \n","12928                                0.249848   \n","3719                                 0.140073   \n","8241                                 0.362136   \n","4656                                 0.118147   \n","1899                                 0.145895   \n","11855                                0.037595   \n","5056                                 0.018433   \n","10127                                0.003757   \n","14314                                0.003088   \n","\n","       ('frame', 'multi', 'mirror-seated')  \n","6261                              0.168697  \n","10104                             0.136077  \n","6826                              0.113167  \n","303                               0.110495  \n","9192                              0.105240  \n","3851                              0.098624  \n","8501                              0.092016  \n","5046                              0.090038  \n","7309                              0.089346  \n","2643                              0.087647  \n","256                               0.198975  \n","10501                             0.143791  \n","5736                              0.132951  \n","7582                              0.128306  \n","4649                              0.125267  \n","8647                              0.123644  \n","1676                              0.116784  \n","1091                              0.115192  \n","1495                              0.108192  \n","6810                              0.103561  \n","2722                              0.225644  \n","12928                             0.175328  \n","3719                              0.150692  \n","8241                              0.139882  \n","4656                              0.111607  \n","1899                              0.108318  \n","11855                             0.067614  \n","5056                              0.063495  \n","10127                             0.061650  \n","14314                             0.041699  "],"text/html":["\n","  <div id=\"df-4400a64d-8693-4dcc-9f5e-ed52ad53c049\">\n","    <div class=\"colab-df-container\">\n","      <div>\n","<style scoped>\n","    .dataframe tbody tr th:only-of-type {\n","        vertical-align: middle;\n","    }\n","\n","    .dataframe tbody tr th {\n","        vertical-align: top;\n","    }\n","\n","    .dataframe thead th {\n","        text-align: right;\n","    }\n","</style>\n","<table border=\"1\" class=\"dataframe\">\n","  <thead>\n","    <tr style=\"text-align: right;\">\n","      <th></th>\n","      <th>subject</th>\n","      <th>sequence</th>\n","      <th>frame</th>\n","      <th>orig_index</th>\n","      <th>('frame', 'base')</th>\n","      <th>('sequence', 'multi', 'mirror-seated')</th>\n","      <th>('frame', 'multi', 'mirror-seated')</th>\n","    </tr>\n","  </thead>\n","  <tbody>\n","    <tr>\n","      <th>6261</th>\n","      <td>13</td>\n","      <td>29</td>\n","      <td>196</td>\n","      <td>6261</td>\n","      <td>0.100702</td>\n","      <td>0.043361</td>\n","      <td>0.168697</td>\n","    </tr>\n","    <tr>\n","      <th>10104</th>\n","      <td>13</td>\n","      <td>4</td>\n","      <td>171</td>\n","      <td>10104</td>\n","      <td>0.141754</td>\n","      <td>0.187564</td>\n","      <td>0.136077</td>\n","    </tr>\n","    <tr>\n","      <th>6826</th>\n","      <td>13</td>\n","      <td>3</td>\n","      <td>158</td>\n","      <td>6826</td>\n","      <td>0.114753</td>\n","      <td>0.120377</td>\n","      <td>0.113167</td>\n","    </tr>\n","    <tr>\n","      <th>303</th>\n","      <td>13</td>\n","      <td>18</td>\n","      <td>262</td>\n","      <td>303</td>\n","      <td>0.114456</td>\n","      <td>0.086160</td>\n","      <td>0.110495</td>\n","    </tr>\n","    <tr>\n","      <th>9192</th>\n","      <td>13</td>\n","      <td>26</td>\n","      <td>297</td>\n","      <td>9192</td>\n","      <td>0.009163</td>\n","      <td>0.003290</td>\n","      <td>0.105240</td>\n","    </tr>\n","    <tr>\n","      <th>3851</th>\n","      <td>13</td>\n","      <td>17</td>\n","      <td>246</td>\n","      <td>3851</td>\n","      <td>0.106593</td>\n","      <td>0.125251</td>\n","      <td>0.098624</td>\n","    </tr>\n","    <tr>\n","      <th>8501</th>\n","      <td>13</td>\n","      <td>30</td>\n","      <td>117</td>\n","      <td>8501</td>\n","      <td>0.035852</td>\n","      <td>0.148434</td>\n","      <td>0.092016</td>\n","    </tr>\n","    <tr>\n","      <th>5046</th>\n","      <td>13</td>\n","      <td>31</td>\n","      <td>248</td>\n","      <td>5046</td>\n","      <td>0.084261</td>\n","      <td>0.072190</td>\n","      <td>0.090038</td>\n","    </tr>\n","    <tr>\n","      <th>7309</th>\n","      <td>13</td>\n","      <td>28</td>\n","      <td>271</td>\n","      <td>7309</td>\n","      <td>0.089964</td>\n","      <td>0.020845</td>\n","      <td>0.089346</td>\n","    </tr>\n","    <tr>\n","      <th>2643</th>\n","      <td>13</td>\n","      <td>6</td>\n","      <td>90</td>\n","      <td>2643</td>\n","      <td>0.119409</td>\n","      <td>0.073248</td>\n","      <td>0.087647</td>\n","    </tr>\n","    <tr>\n","      <th>256</th>\n","      <td>14</td>\n","      <td>6</td>\n","      <td>182</td>\n","      <td>256</td>\n","      <td>0.090117</td>\n","      <td>0.059797</td>\n","      <td>0.198975</td>\n","    </tr>\n","    <tr>\n","      <th>10501</th>\n","      <td>14</td>\n","      <td>1</td>\n","      <td>377</td>\n","      <td>10501</td>\n","      <td>0.143461</td>\n","      <td>0.053112</td>\n","      <td>0.143791</td>\n","    </tr>\n","    <tr>\n","      <th>5736</th>\n","      <td>14</td>\n","      <td>2</td>\n","      <td>158</td>\n","      <td>5736</td>\n","      <td>0.093621</td>\n","      <td>0.036431</td>\n","      <td>0.132951</td>\n","    </tr>\n","    <tr>\n","      <th>7582</th>\n","      <td>14</td>\n","      <td>15</td>\n","      <td>158</td>\n","      <td>7582</td>\n","      <td>0.064697</td>\n","      <td>0.024606</td>\n","      <td>0.128306</td>\n","    </tr>\n","    <tr>\n","      <th>4649</th>\n","      <td>14</td>\n","      <td>3</td>\n","      <td>45</td>\n","      <td>4649</td>\n","      <td>0.126673</td>\n","      <td>0.084130</td>\n","      <td>0.125267</td>\n","    </tr>\n","    <tr>\n","      <th>8647</th>\n","      <td>14</td>\n","      <td>14</td>\n","      <td>146</td>\n","      <td>8647</td>\n","      <td>0.069056</td>\n","      <td>0.083888</td>\n","      <td>0.123644</td>\n","    </tr>\n","    <tr>\n","      <th>1676</th>\n","      <td>14</td>\n","      <td>13</td>\n","      <td>126</td>\n","      <td>1676</td>\n","      <td>0.054442</td>\n","      <td>0.096755</td>\n","      <td>0.116784</td>\n","    </tr>\n","    <tr>\n","      <th>1091</th>\n","      <td>14</td>\n","      <td>30</td>\n","      <td>209</td>\n","      <td>1091</td>\n","      <td>0.095095</td>\n","      <td>0.036065</td>\n","      <td>0.115192</td>\n","    </tr>\n","    <tr>\n","      <th>1495</th>\n","      <td>14</td>\n","      <td>28</td>\n","      <td>149</td>\n","      <td>1495</td>\n","      <td>0.085359</td>\n","      <td>0.143717</td>\n","      <td>0.108192</td>\n","    </tr>\n","    <tr>\n","      <th>6810</th>\n","      <td>14</td>\n","      <td>20</td>\n","      <td>110</td>\n","      <td>6810</td>\n","      <td>0.082090</td>\n","      <td>0.021913</td>\n","      <td>0.103561</td>\n","    </tr>\n","    <tr>\n","      <th>2722</th>\n","      <td>15</td>\n","      <td>6</td>\n","      <td>193</td>\n","      <td>2722</td>\n","      <td>0.130825</td>\n","      <td>0.154068</td>\n","      <td>0.225644</td>\n","    </tr>\n","    <tr>\n","      <th>12928</th>\n","      <td>15</td>\n","      <td>13</td>\n","      <td>224</td>\n","      <td>12928</td>\n","      <td>0.152422</td>\n","      <td>0.249848</td>\n","      <td>0.175328</td>\n","    </tr>\n","    <tr>\n","      <th>3719</th>\n","      <td>15</td>\n","      <td>12</td>\n","      <td>831</td>\n","      <td>3719</td>\n","      <td>0.037926</td>\n","      <td>0.140073</td>\n","      <td>0.150692</td>\n","    </tr>\n","    <tr>\n","      <th>8241</th>\n","      <td>15</td>\n","      <td>2</td>\n","      <td>1278</td>\n","      <td>8241</td>\n","      <td>0.362257</td>\n","      <td>0.362136</td>\n","      <td>0.139882</td>\n","    </tr>\n","    <tr>\n","      <th>4656</th>\n","      <td>15</td>\n","      <td>8</td>\n","      <td>310</td>\n","      <td>4656</td>\n","      <td>0.020231</td>\n","      <td>0.118147</td>\n","      <td>0.111607</td>\n","    </tr>\n","    <tr>\n","      <th>1899</th>\n","      <td>15</td>\n","      <td>4</td>\n","      <td>1899</td>\n","      <td>1899</td>\n","      <td>0.074985</td>\n","      <td>0.145895</td>\n","      <td>0.108318</td>\n","    </tr>\n","    <tr>\n","      <th>11855</th>\n","      <td>15</td>\n","      <td>3</td>\n","      <td>404</td>\n","      <td>11855</td>\n","      <td>0.032151</td>\n","      <td>0.037595</td>\n","      <td>0.067614</td>\n","    </tr>\n","    <tr>\n","      <th>5056</th>\n","      <td>15</td>\n","      <td>7</td>\n","      <td>326</td>\n","      <td>5056</td>\n","      <td>0.017772</td>\n","      <td>0.018433</td>\n","      <td>0.063495</td>\n","    </tr>\n","    <tr>\n","      <th>10127</th>\n","      <td>15</td>\n","      <td>5</td>\n","      <td>969</td>\n","      <td>10127</td>\n","      <td>0.005770</td>\n","      <td>0.003757</td>\n","      <td>0.061650</td>\n","    </tr>\n","    <tr>\n","      <th>14314</th>\n","      <td>15</td>\n","      <td>11</td>\n","      <td>679</td>\n","      <td>14314</td>\n","      <td>0.009450</td>\n","      <td>0.003088</td>\n","      <td>0.041699</td>\n","    </tr>\n","  </tbody>\n","</table>\n","</div>\n","      <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-4400a64d-8693-4dcc-9f5e-ed52ad53c049')\"\n","              title=\"Convert this dataframe to an interactive table.\"\n","              style=\"display:none;\">\n","        \n","  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n","       width=\"24px\">\n","    <path d=\"M0 0h24v24H0V0z\" fill=\"none\"/>\n","    <path d=\"M18.56 5.44l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94zm-11 1L8.5 8.5l.94-2.06 2.06-.94-2.06-.94L8.5 2.5l-.94 2.06-2.06.94zm10 10l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94z\"/><path d=\"M17.41 7.96l-1.37-1.37c-.4-.4-.92-.59-1.43-.59-.52 0-1.04.2-1.43.59L10.3 9.45l-7.72 7.72c-.78.78-.78 2.05 0 2.83L4 21.41c.39.39.9.59 1.41.59.51 0 1.02-.2 1.41-.59l7.78-7.78 2.81-2.81c.8-.78.8-2.07 0-2.86zM5.41 20L4 18.59l7.72-7.72 1.47 1.35L5.41 20z\"/>\n","  </svg>\n","      </button>\n","      \n","  <style>\n","    .colab-df-container {\n","      display:flex;\n","      flex-wrap:wrap;\n","      gap: 12px;\n","    }\n","\n","    .colab-df-convert {\n","      background-color: #E8F0FE;\n","      border: none;\n","      border-radius: 50%;\n","      cursor: pointer;\n","      display: none;\n","      fill: #1967D2;\n","      height: 32px;\n","      padding: 0 0 0 0;\n","      width: 32px;\n","    }\n","\n","    .colab-df-convert:hover {\n","      background-color: #E2EBFA;\n","      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n","      fill: #174EA6;\n","    }\n","\n","    [theme=dark] .colab-df-convert {\n","      background-color: #3B4455;\n","      fill: #D2E3FC;\n","    }\n","\n","    [theme=dark] .colab-df-convert:hover {\n","      background-color: #434B5C;\n","      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n","      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n","      fill: #FFFFFF;\n","    }\n","  </style>\n","\n","      <script>\n","        const buttonEl =\n","          document.querySelector('#df-4400a64d-8693-4dcc-9f5e-ed52ad53c049 button.colab-df-convert');\n","        buttonEl.style.display =\n","          google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n","        async function convertToInteractive(key) {\n","          const element = document.querySelector('#df-4400a64d-8693-4dcc-9f5e-ed52ad53c049');\n","          const dataTable =\n","            await google.colab.kernel.invokeFunction('convertToInteractive',\n","                                                     [key], {});\n","          if (!dataTable) return;\n","\n","          const docLinkHtml = 'Like what you see? Visit the ' +\n","            '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n","            + ' to learn more about interactive tables.';\n","          element.innerHTML = '';\n","          dataTable['output_type'] = 'display_data';\n","          await google.colab.output.renderOutput(dataTable, element);\n","          const docLink = document.createElement('div');\n","          docLink.innerHTML = docLinkHtml;\n","          element.appendChild(docLink);\n","        }\n","      </script>\n","    </div>\n","  </div>\n","  "]},"metadata":{},"execution_count":62}],"source":["a = str(settings[2])\n","\n","high_error = {}\n","for subject in [13,14,15]:\n","    idx = df[subject].groupby(['subject','sequence'])[a].transform(max) == df[subject][a]\n","    # Exclude sequence 14-36 because it appears to be an exact duplicate of 14-31\n","    if subject == 14:\n","        df[subject] = df[subject][df[subject]['sequence'] != 36]\n","    #df[subject][idx].sort_values(by=['base'], ascending=False)[0:50]\n","    high_error[subject] = df[subject][idx].nlargest(10,a)\n","    \n","\n","high_errors = pd.concat([high_error[13], high_error[14], high_error[15]])\n","\n","# 'seats' is hard-coded based on the visualizations later. Update if necessary\n","#seats = [True, True, True, False, True, True, True, True, True, False, False, False]\n","#high_errors.insert(4, 'seated', seats, allow_duplicates=False)\n","high_errors"]},{"cell_type":"markdown","metadata":{"id":"nXQ7KHl7UN39"},"source":["### Supplement selected poses with the two poses before and after them in their sequence"]},{"cell_type":"code","execution_count":63,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":1000},"executionInfo":{"elapsed":648,"status":"ok","timestamp":1670939987561,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"},"user_tz":-60},"id":"aFh9WVoXUN39","outputId":"7e295f79-bb0e-44dd-e62f-bf7f7111b866"},"outputs":[{"output_type":"execute_result","data":{"text/plain":["                   frame  orig_index  ('frame', 'base')  \\\n","subject sequence                                          \n","13      3          158.0      6826.0           0.106888   \n","        4          171.0     10104.0           0.140981   \n","        6           90.0      2643.0           0.117075   \n","        17         246.0      3851.0           0.093508   \n","        18         262.0       303.0           0.101177   \n","        26         297.0      9192.0           0.009009   \n","        28         271.0      7309.0           0.059753   \n","        29         196.0      6261.0           0.073214   \n","        30         117.0      8501.0           0.035566   \n","        31         248.0      5046.0           0.034613   \n","14      1          377.0     10501.0           0.118429   \n","        2          158.0      5736.0           0.054408   \n","        3           45.0      4649.0           0.075509   \n","        6          182.0       256.0           0.072954   \n","        13         126.0      1676.0           0.041578   \n","        14         146.0      8647.0           0.055413   \n","        15         158.0      7582.0           0.053011   \n","        20         110.0      6810.0           0.068734   \n","        28         149.0      1495.0           0.080001   \n","        30         209.0      1091.0           0.090548   \n","15      2         1278.0      8241.0           0.261834   \n","        3          404.0     11855.0           0.015519   \n","        4         1899.0      1899.0           0.060230   \n","        5          969.0     10127.0           0.008147   \n","        6          193.0      2722.0           0.100541   \n","        7          326.0      5056.0           0.016744   \n","        8          310.0      4656.0           0.017395   \n","        11         679.0     14314.0           0.011151   \n","        12         831.0      3719.0           0.030421   \n","        13         224.0     12928.0           0.098001   \n","\n","                  ('sequence', 'multi', 'mirror-seated')  \\\n","subject sequence                                           \n","13      3                                       0.115146   \n","        4                                       0.185382   \n","        6                                       0.073610   \n","        17                                      0.077770   \n","        18                                      0.060356   \n","        26                                      0.003742   \n","        28                                      0.015000   \n","        29                                      0.035204   \n","        30                                      0.091443   \n","        31                                      0.023531   \n","14      1                                       0.052397   \n","        2                                       0.022189   \n","        3                                       0.053284   \n","        6                                       0.097876   \n","        13                                      0.056939   \n","        14                                      0.071545   \n","        15                                      0.017921   \n","        20                                      0.045347   \n","        28                                      0.139864   \n","        30                                      0.036759   \n","15      2                                       0.201097   \n","        3                                       0.016781   \n","        4                                       0.072610   \n","        5                                       0.003651   \n","        6                                       0.117081   \n","        7                                       0.016347   \n","        8                                       0.046004   \n","        11                                      0.008459   \n","        12                                      0.110475   \n","        13                                      0.080057   \n","\n","                  ('frame', 'multi', 'mirror-seated')  \n","subject sequence                                       \n","13      3                                    0.108269  \n","        4                                    0.131916  \n","        6                                    0.082539  \n","        17                                   0.077094  \n","        18                                   0.068011  \n","        26                                   0.026404  \n","        28                                   0.057831  \n","        29                                   0.085461  \n","        30                                   0.072744  \n","        31                                   0.029682  \n","14      1                                    0.109134  \n","        2                                    0.046213  \n","        3                                    0.066171  \n","        6                                    0.167820  \n","        13                                   0.077528  \n","        14                                   0.108556  \n","        15                                   0.096077  \n","        20                                   0.087334  \n","        28                                   0.095297  \n","        30                                   0.104269  \n","15      2                                    0.062720  \n","        3                                    0.030279  \n","        4                                    0.076165  \n","        5                                    0.028721  \n","        6                                    0.154106  \n","        7                                    0.058596  \n","        8                                    0.046927  \n","        11                                   0.022050  \n","        12                                   0.060707  \n","        13                                   0.090009  "],"text/html":["\n","  <div id=\"df-709d54e9-6960-494f-bdb9-16f3ab2439ba\">\n","    <div class=\"colab-df-container\">\n","      <div>\n","<style scoped>\n","    .dataframe tbody tr th:only-of-type {\n","        vertical-align: middle;\n","    }\n","\n","    .dataframe tbody tr th {\n","        vertical-align: top;\n","    }\n","\n","    .dataframe thead th {\n","        text-align: right;\n","    }\n","</style>\n","<table border=\"1\" class=\"dataframe\">\n","  <thead>\n","    <tr style=\"text-align: right;\">\n","      <th></th>\n","      <th></th>\n","      <th>frame</th>\n","      <th>orig_index</th>\n","      <th>('frame', 'base')</th>\n","      <th>('sequence', 'multi', 'mirror-seated')</th>\n","      <th>('frame', 'multi', 'mirror-seated')</th>\n","    </tr>\n","    <tr>\n","      <th>subject</th>\n","      <th>sequence</th>\n","      <th></th>\n","      <th></th>\n","      <th></th>\n","      <th></th>\n","      <th></th>\n","    </tr>\n","  </thead>\n","  <tbody>\n","    <tr>\n","      <th rowspan=\"10\" valign=\"top\">13</th>\n","      <th>3</th>\n","      <td>158.0</td>\n","      <td>6826.0</td>\n","      <td>0.106888</td>\n","      <td>0.115146</td>\n","      <td>0.108269</td>\n","    </tr>\n","    <tr>\n","      <th>4</th>\n","      <td>171.0</td>\n","      <td>10104.0</td>\n","      <td>0.140981</td>\n","      <td>0.185382</td>\n","      <td>0.131916</td>\n","    </tr>\n","    <tr>\n","      <th>6</th>\n","      <td>90.0</td>\n","      <td>2643.0</td>\n","      <td>0.117075</td>\n","      <td>0.073610</td>\n","      <td>0.082539</td>\n","    </tr>\n","    <tr>\n","      <th>17</th>\n","      <td>246.0</td>\n","      <td>3851.0</td>\n","      <td>0.093508</td>\n","      <td>0.077770</td>\n","      <td>0.077094</td>\n","    </tr>\n","    <tr>\n","      <th>18</th>\n","      <td>262.0</td>\n","      <td>303.0</td>\n","      <td>0.101177</td>\n","      <td>0.060356</td>\n","      <td>0.068011</td>\n","    </tr>\n","    <tr>\n","      <th>26</th>\n","      <td>297.0</td>\n","      <td>9192.0</td>\n","      <td>0.009009</td>\n","      <td>0.003742</td>\n","      <td>0.026404</td>\n","    </tr>\n","    <tr>\n","      <th>28</th>\n","      <td>271.0</td>\n","      <td>7309.0</td>\n","      <td>0.059753</td>\n","      <td>0.015000</td>\n","      <td>0.057831</td>\n","    </tr>\n","    <tr>\n","      <th>29</th>\n","      <td>196.0</td>\n","      <td>6261.0</td>\n","      <td>0.073214</td>\n","      <td>0.035204</td>\n","      <td>0.085461</td>\n","    </tr>\n","    <tr>\n","      <th>30</th>\n","      <td>117.0</td>\n","      <td>8501.0</td>\n","      <td>0.035566</td>\n","      <td>0.091443</td>\n","      <td>0.072744</td>\n","    </tr>\n","    <tr>\n","      <th>31</th>\n","      <td>248.0</td>\n","      <td>5046.0</td>\n","      <td>0.034613</td>\n","      <td>0.023531</td>\n","      <td>0.029682</td>\n","    </tr>\n","    <tr>\n","      <th rowspan=\"10\" valign=\"top\">14</th>\n","      <th>1</th>\n","      <td>377.0</td>\n","      <td>10501.0</td>\n","      <td>0.118429</td>\n","      <td>0.052397</td>\n","      <td>0.109134</td>\n","    </tr>\n","    <tr>\n","      <th>2</th>\n","      <td>158.0</td>\n","      <td>5736.0</td>\n","      <td>0.054408</td>\n","      <td>0.022189</td>\n","      <td>0.046213</td>\n","    </tr>\n","    <tr>\n","      <th>3</th>\n","      <td>45.0</td>\n","      <td>4649.0</td>\n","      <td>0.075509</td>\n","      <td>0.053284</td>\n","      <td>0.066171</td>\n","    </tr>\n","    <tr>\n","      <th>6</th>\n","      <td>182.0</td>\n","      <td>256.0</td>\n","      <td>0.072954</td>\n","      <td>0.097876</td>\n","      <td>0.167820</td>\n","    </tr>\n","    <tr>\n","      <th>13</th>\n","      <td>126.0</td>\n","      <td>1676.0</td>\n","      <td>0.041578</td>\n","      <td>0.056939</td>\n","      <td>0.077528</td>\n","    </tr>\n","    <tr>\n","      <th>14</th>\n","      <td>146.0</td>\n","      <td>8647.0</td>\n","      <td>0.055413</td>\n","      <td>0.071545</td>\n","      <td>0.108556</td>\n","    </tr>\n","    <tr>\n","      <th>15</th>\n","      <td>158.0</td>\n","      <td>7582.0</td>\n","      <td>0.053011</td>\n","      <td>0.017921</td>\n","      <td>0.096077</td>\n","    </tr>\n","    <tr>\n","      <th>20</th>\n","      <td>110.0</td>\n","      <td>6810.0</td>\n","      <td>0.068734</td>\n","      <td>0.045347</td>\n","      <td>0.087334</td>\n","    </tr>\n","    <tr>\n","      <th>28</th>\n","      <td>149.0</td>\n","      <td>1495.0</td>\n","      <td>0.080001</td>\n","      <td>0.139864</td>\n","      <td>0.095297</td>\n","    </tr>\n","    <tr>\n","      <th>30</th>\n","      <td>209.0</td>\n","      <td>1091.0</td>\n","      <td>0.090548</td>\n","      <td>0.036759</td>\n","      <td>0.104269</td>\n","    </tr>\n","    <tr>\n","      <th rowspan=\"10\" valign=\"top\">15</th>\n","      <th>2</th>\n","      <td>1278.0</td>\n","      <td>8241.0</td>\n","      <td>0.261834</td>\n","      <td>0.201097</td>\n","      <td>0.062720</td>\n","    </tr>\n","    <tr>\n","      <th>3</th>\n","      <td>404.0</td>\n","      <td>11855.0</td>\n","      <td>0.015519</td>\n","      <td>0.016781</td>\n","      <td>0.030279</td>\n","    </tr>\n","    <tr>\n","      <th>4</th>\n","      <td>1899.0</td>\n","      <td>1899.0</td>\n","      <td>0.060230</td>\n","      <td>0.072610</td>\n","      <td>0.076165</td>\n","    </tr>\n","    <tr>\n","      <th>5</th>\n","      <td>969.0</td>\n","      <td>10127.0</td>\n","      <td>0.008147</td>\n","      <td>0.003651</td>\n","      <td>0.028721</td>\n","    </tr>\n","    <tr>\n","      <th>6</th>\n","      <td>193.0</td>\n","      <td>2722.0</td>\n","      <td>0.100541</td>\n","      <td>0.117081</td>\n","      <td>0.154106</td>\n","    </tr>\n","    <tr>\n","      <th>7</th>\n","      <td>326.0</td>\n","      <td>5056.0</td>\n","      <td>0.016744</td>\n","      <td>0.016347</td>\n","      <td>0.058596</td>\n","    </tr>\n","    <tr>\n","      <th>8</th>\n","      <td>310.0</td>\n","      <td>4656.0</td>\n","      <td>0.017395</td>\n","      <td>0.046004</td>\n","      <td>0.046927</td>\n","    </tr>\n","    <tr>\n","      <th>11</th>\n","      <td>679.0</td>\n","      <td>14314.0</td>\n","      <td>0.011151</td>\n","      <td>0.008459</td>\n","      <td>0.022050</td>\n","    </tr>\n","    <tr>\n","      <th>12</th>\n","      <td>831.0</td>\n","      <td>3719.0</td>\n","      <td>0.030421</td>\n","      <td>0.110475</td>\n","      <td>0.060707</td>\n","    </tr>\n","    <tr>\n","      <th>13</th>\n","      <td>224.0</td>\n","      <td>12928.0</td>\n","      <td>0.098001</td>\n","      <td>0.080057</td>\n","      <td>0.090009</td>\n","    </tr>\n","  </tbody>\n","</table>\n","</div>\n","      <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-709d54e9-6960-494f-bdb9-16f3ab2439ba')\"\n","              title=\"Convert this dataframe to an interactive table.\"\n","              style=\"display:none;\">\n","        \n","  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n","       width=\"24px\">\n","    <path d=\"M0 0h24v24H0V0z\" fill=\"none\"/>\n","    <path d=\"M18.56 5.44l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94zm-11 1L8.5 8.5l.94-2.06 2.06-.94-2.06-.94L8.5 2.5l-.94 2.06-2.06.94zm10 10l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94z\"/><path d=\"M17.41 7.96l-1.37-1.37c-.4-.4-.92-.59-1.43-.59-.52 0-1.04.2-1.43.59L10.3 9.45l-7.72 7.72c-.78.78-.78 2.05 0 2.83L4 21.41c.39.39.9.59 1.41.59.51 0 1.02-.2 1.41-.59l7.78-7.78 2.81-2.81c.8-.78.8-2.07 0-2.86zM5.41 20L4 18.59l7.72-7.72 1.47 1.35L5.41 20z\"/>\n","  </svg>\n","      </button>\n","      \n","  <style>\n","    .colab-df-container {\n","      display:flex;\n","      flex-wrap:wrap;\n","      gap: 12px;\n","    }\n","\n","    .colab-df-convert {\n","      background-color: #E8F0FE;\n","      border: none;\n","      border-radius: 50%;\n","      cursor: pointer;\n","      display: none;\n","      fill: #1967D2;\n","      height: 32px;\n","      padding: 0 0 0 0;\n","      width: 32px;\n","    }\n","\n","    .colab-df-convert:hover {\n","      background-color: #E2EBFA;\n","      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n","      fill: #174EA6;\n","    }\n","\n","    [theme=dark] .colab-df-convert {\n","      background-color: #3B4455;\n","      fill: #D2E3FC;\n","    }\n","\n","    [theme=dark] .colab-df-convert:hover {\n","      background-color: #434B5C;\n","      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n","      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n","      fill: #FFFFFF;\n","    }\n","  </style>\n","\n","      <script>\n","        const buttonEl =\n","          document.querySelector('#df-709d54e9-6960-494f-bdb9-16f3ab2439ba button.colab-df-convert');\n","        buttonEl.style.display =\n","          google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n","        async function convertToInteractive(key) {\n","          const element = document.querySelector('#df-709d54e9-6960-494f-bdb9-16f3ab2439ba');\n","          const dataTable =\n","            await google.colab.kernel.invokeFunction('convertToInteractive',\n","                                                     [key], {});\n","          if (!dataTable) return;\n","\n","          const docLinkHtml = 'Like what you see? Visit the ' +\n","            '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n","            + ' to learn more about interactive tables.';\n","          element.innerHTML = '';\n","          dataTable['output_type'] = 'display_data';\n","          await google.colab.output.renderOutput(dataTable, element);\n","          const docLink = document.createElement('div');\n","          docLink.innerHTML = docLinkHtml;\n","          element.appendChild(docLink);\n","        }\n","      </script>\n","    </div>\n","  </div>\n","  "]},"metadata":{},"execution_count":63}],"source":["df_high = pd.DataFrame()\n","for index, row in high_errors.iterrows():\n","    subject = row['subject']\n","    orig_index = row['orig_index']\n","    new_slice = df[subject].loc[df[subject]['orig_index'].isin(range(int(orig_index)-2,int(orig_index)+3))]\n","    #new_slice['seated'] = row['seated']\n","    df_high = pd.concat([df_high, new_slice])\n","\n","high_error_groups = df_high.groupby(['subject','sequence']).mean()\n","\n","high_error_groups"]},{"cell_type":"markdown","metadata":{"id":"loOQEbEyUN3-"},"source":["### Average error on seated poses and non-seated poses"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":143},"executionInfo":{"elapsed":9,"status":"ok","timestamp":1670316485714,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"},"user_tz":-60},"id":"DDrQAFh8UN3_","outputId":"b5505931-fb6e-459c-f043-250f7ea5593e"},"outputs":[{"output_type":"execute_result","data":{"text/plain":["        ('frame', 'base')  ('sequence', 'multi', 'mirror-seated')  \\\n","seated                                                              \n","False            0.166765                                0.209554   \n","True             0.109991                                0.084915   \n","\n","        ('frame', 'multi', 'mirror-seated')  \n","seated                                       \n","False                              0.144099  \n","True                               0.155951  "],"text/html":["\n","  <div id=\"df-70777e48-e8de-4c74-af82-d61e3a539071\">\n","    <div class=\"colab-df-container\">\n","      <div>\n","<style scoped>\n","    .dataframe tbody tr th:only-of-type {\n","        vertical-align: middle;\n","    }\n","\n","    .dataframe tbody tr th {\n","        vertical-align: top;\n","    }\n","\n","    .dataframe thead th {\n","        text-align: right;\n","    }\n","</style>\n","<table border=\"1\" class=\"dataframe\">\n","  <thead>\n","    <tr style=\"text-align: right;\">\n","      <th></th>\n","      <th>('frame', 'base')</th>\n","      <th>('sequence', 'multi', 'mirror-seated')</th>\n","      <th>('frame', 'multi', 'mirror-seated')</th>\n","    </tr>\n","    <tr>\n","      <th>seated</th>\n","      <th></th>\n","      <th></th>\n","      <th></th>\n","    </tr>\n","  </thead>\n","  <tbody>\n","    <tr>\n","      <th>False</th>\n","      <td>0.166765</td>\n","      <td>0.209554</td>\n","      <td>0.144099</td>\n","    </tr>\n","    <tr>\n","      <th>True</th>\n","      <td>0.109991</td>\n","      <td>0.084915</td>\n","      <td>0.155951</td>\n","    </tr>\n","  </tbody>\n","</table>\n","</div>\n","      <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-70777e48-e8de-4c74-af82-d61e3a539071')\"\n","              title=\"Convert this dataframe to an interactive table.\"\n","              style=\"display:none;\">\n","        \n","  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n","       width=\"24px\">\n","    <path d=\"M0 0h24v24H0V0z\" fill=\"none\"/>\n","    <path d=\"M18.56 5.44l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94zm-11 1L8.5 8.5l.94-2.06 2.06-.94-2.06-.94L8.5 2.5l-.94 2.06-2.06.94zm10 10l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94z\"/><path d=\"M17.41 7.96l-1.37-1.37c-.4-.4-.92-.59-1.43-.59-.52 0-1.04.2-1.43.59L10.3 9.45l-7.72 7.72c-.78.78-.78 2.05 0 2.83L4 21.41c.39.39.9.59 1.41.59.51 0 1.02-.2 1.41-.59l7.78-7.78 2.81-2.81c.8-.78.8-2.07 0-2.86zM5.41 20L4 18.59l7.72-7.72 1.47 1.35L5.41 20z\"/>\n","  </svg>\n","      </button>\n","      \n","  <style>\n","    .colab-df-container {\n","      display:flex;\n","      flex-wrap:wrap;\n","      gap: 12px;\n","    }\n","\n","    .colab-df-convert {\n","      background-color: #E8F0FE;\n","      border: none;\n","      border-radius: 50%;\n","      cursor: pointer;\n","      display: none;\n","      fill: #1967D2;\n","      height: 32px;\n","      padding: 0 0 0 0;\n","      width: 32px;\n","    }\n","\n","    .colab-df-convert:hover {\n","      background-color: #E2EBFA;\n","      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n","      fill: #174EA6;\n","    }\n","\n","    [theme=dark] .colab-df-convert {\n","      background-color: #3B4455;\n","      fill: #D2E3FC;\n","    }\n","\n","    [theme=dark] .colab-df-convert:hover {\n","      background-color: #434B5C;\n","      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n","      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n","      fill: #FFFFFF;\n","    }\n","  </style>\n","\n","      <script>\n","        const buttonEl =\n","          document.querySelector('#df-70777e48-e8de-4c74-af82-d61e3a539071 button.colab-df-convert');\n","        buttonEl.style.display =\n","          google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n","        async function convertToInteractive(key) {\n","          const element = document.querySelector('#df-70777e48-e8de-4c74-af82-d61e3a539071');\n","          const dataTable =\n","            await google.colab.kernel.invokeFunction('convertToInteractive',\n","                                                     [key], {});\n","          if (!dataTable) return;\n","\n","          const docLinkHtml = 'Like what you see? Visit the ' +\n","            '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n","            + ' to learn more about interactive tables.';\n","          element.innerHTML = '';\n","          dataTable['output_type'] = 'display_data';\n","          await google.colab.output.renderOutput(dataTable, element);\n","          const docLink = document.createElement('div');\n","          docLink.innerHTML = docLinkHtml;\n","          element.appendChild(docLink);\n","        }\n","      </script>\n","    </div>\n","  </div>\n","  "]},"metadata":{},"execution_count":41}],"source":["high_summary = high_errors.groupby(['seated']).mean()\n","high_filtered = high_summary.filter(like='(', axis=1)\n","high_filtered"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":143},"executionInfo":{"elapsed":11,"status":"ok","timestamp":1670316489827,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"},"user_tz":-60},"id":"PJOF3MblUN4A","outputId":"a8403119-f77d-4eb8-a9f4-866421390b9b"},"outputs":[{"output_type":"execute_result","data":{"text/plain":["        ('frame', 'base')  ('sequence', 'multi', 'mirror-seated')  \\\n","seated                                                              \n","0.0              0.122858                                0.112996   \n","1.0              0.090053                                0.080400   \n","\n","        ('frame', 'multi', 'mirror-seated')  \n","seated                                       \n","0.0                                0.070362  \n","1.0                                0.112375  "],"text/html":["\n","  <div id=\"df-c30f9c9e-1ea5-45c1-941c-b8230f6a8658\">\n","    <div class=\"colab-df-container\">\n","      <div>\n","<style scoped>\n","    .dataframe tbody tr th:only-of-type {\n","        vertical-align: middle;\n","    }\n","\n","    .dataframe tbody tr th {\n","        vertical-align: top;\n","    }\n","\n","    .dataframe thead th {\n","        text-align: right;\n","    }\n","</style>\n","<table border=\"1\" class=\"dataframe\">\n","  <thead>\n","    <tr style=\"text-align: right;\">\n","      <th></th>\n","      <th>('frame', 'base')</th>\n","      <th>('sequence', 'multi', 'mirror-seated')</th>\n","      <th>('frame', 'multi', 'mirror-seated')</th>\n","    </tr>\n","    <tr>\n","      <th>seated</th>\n","      <th></th>\n","      <th></th>\n","      <th></th>\n","    </tr>\n","  </thead>\n","  <tbody>\n","    <tr>\n","      <th>0.0</th>\n","      <td>0.122858</td>\n","      <td>0.112996</td>\n","      <td>0.070362</td>\n","    </tr>\n","    <tr>\n","      <th>1.0</th>\n","      <td>0.090053</td>\n","      <td>0.080400</td>\n","      <td>0.112375</td>\n","    </tr>\n","  </tbody>\n","</table>\n","</div>\n","      <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-c30f9c9e-1ea5-45c1-941c-b8230f6a8658')\"\n","              title=\"Convert this dataframe to an interactive table.\"\n","              style=\"display:none;\">\n","        \n","  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n","       width=\"24px\">\n","    <path d=\"M0 0h24v24H0V0z\" fill=\"none\"/>\n","    <path d=\"M18.56 5.44l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94zm-11 1L8.5 8.5l.94-2.06 2.06-.94-2.06-.94L8.5 2.5l-.94 2.06-2.06.94zm10 10l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94z\"/><path d=\"M17.41 7.96l-1.37-1.37c-.4-.4-.92-.59-1.43-.59-.52 0-1.04.2-1.43.59L10.3 9.45l-7.72 7.72c-.78.78-.78 2.05 0 2.83L4 21.41c.39.39.9.59 1.41.59.51 0 1.02-.2 1.41-.59l7.78-7.78 2.81-2.81c.8-.78.8-2.07 0-2.86zM5.41 20L4 18.59l7.72-7.72 1.47 1.35L5.41 20z\"/>\n","  </svg>\n","      </button>\n","      \n","  <style>\n","    .colab-df-container {\n","      display:flex;\n","      flex-wrap:wrap;\n","      gap: 12px;\n","    }\n","\n","    .colab-df-convert {\n","      background-color: #E8F0FE;\n","      border: none;\n","      border-radius: 50%;\n","      cursor: pointer;\n","      display: none;\n","      fill: #1967D2;\n","      height: 32px;\n","      padding: 0 0 0 0;\n","      width: 32px;\n","    }\n","\n","    .colab-df-convert:hover {\n","      background-color: #E2EBFA;\n","      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n","      fill: #174EA6;\n","    }\n","\n","    [theme=dark] .colab-df-convert {\n","      background-color: #3B4455;\n","      fill: #D2E3FC;\n","    }\n","\n","    [theme=dark] .colab-df-convert:hover {\n","      background-color: #434B5C;\n","      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n","      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n","      fill: #FFFFFF;\n","    }\n","  </style>\n","\n","      <script>\n","        const buttonEl =\n","          document.querySelector('#df-c30f9c9e-1ea5-45c1-941c-b8230f6a8658 button.colab-df-convert');\n","        buttonEl.style.display =\n","          google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n","        async function convertToInteractive(key) {\n","          const element = document.querySelector('#df-c30f9c9e-1ea5-45c1-941c-b8230f6a8658');\n","          const dataTable =\n","            await google.colab.kernel.invokeFunction('convertToInteractive',\n","                                                     [key], {});\n","          if (!dataTable) return;\n","\n","          const docLinkHtml = 'Like what you see? Visit the ' +\n","            '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n","            + ' to learn more about interactive tables.';\n","          element.innerHTML = '';\n","          dataTable['output_type'] = 'display_data';\n","          await google.colab.output.renderOutput(dataTable, element);\n","          const docLink = document.createElement('div');\n","          docLink.innerHTML = docLinkHtml;\n","          element.appendChild(docLink);\n","        }\n","      </script>\n","    </div>\n","  </div>\n","  "]},"metadata":{},"execution_count":42}],"source":["high_summary_group = high_error_groups.groupby(['seated']).mean()\n","high_filtered_group = high_summary_group.filter(like='(', axis=1)\n","high_filtered_group"]},{"cell_type":"markdown","metadata":{"id":"RsYTKN96UN4A"},"source":["### Visualize high-error poses"]},{"cell_type":"code","execution_count":64,"metadata":{"id":"SbL9ow-pUN4B","executionInfo":{"status":"ok","timestamp":1670939992469,"user_tz":-60,"elapsed":463,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"}}},"outputs":[],"source":["import matplotlib.pyplot as plt\n","import math\n","import mpl_toolkits.mplot3d.axes3d as p3"]},{"cell_type":"code","execution_count":65,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":14,"status":"ok","timestamp":1670939995437,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"},"user_tz":-60},"id":"_V0ZYK2ZUN4C","outputId":"c509749c-4794-488f-9084-6fdb9b6cbb3f"},"outputs":[{"output_type":"execute_result","data":{"text/plain":["{13: [6261, 10104, 6826, 303, 9192, 3851, 8501, 5046, 7309, 2643],\n"," 14: [256, 10501, 5736, 7582, 4649, 8647, 1676, 1091, 1495, 6810],\n"," 15: [2722, 12928, 3719, 8241, 4656, 1899, 11855, 5056, 10127, 14314]}"]},"metadata":{},"execution_count":65}],"source":["high_error_dict = {}\n","for subject in [13,14,15]:\n","    high_error_dict[subject] = []\n","for index, line in high_errors.iterrows():\n","    subject = int(line['subject'])\n","    frame = int(line['orig_index'])\n","    high_error_dict[subject].append(frame)\n","high_error_dict"]},{"cell_type":"code","source":["def inder(char):\n","  return ord(char) - 97\n","\n","def draw_pose(keypoints, ax, color):\n","  ax.scatter(keypoints[2], keypoints[0], keypoints[1], c=color)\n","  ax.plot(keypoints[2][[inder('a'), inder('b')]], keypoints[0][[inder('a'), inder('b')]], keypoints[1][[inder('a'), inder('b')]], c=color)\n","  ax.plot(keypoints[2][[inder('b'), inder('c')]], keypoints[0][[inder('b'), inder('c')]], keypoints[1][[inder('b'), inder('c')]], c=color)\n","  ax.plot(keypoints[2][[inder('c'), inder('d')]], keypoints[0][[inder('c'), inder('d')]], keypoints[1][[inder('c'), inder('d')]], c=color)\n","  ax.plot(keypoints[2][[inder('d'), inder('e')]], keypoints[0][[inder('d'), inder('e')]], keypoints[1][[inder('d'), inder('e')]], c=color)\n","  ax.plot(keypoints[2][[inder('b'), inder('f')]], keypoints[0][[inder('b'), inder('f')]], keypoints[1][[inder('b'), inder('f')]], c=color)\n","  ax.plot(keypoints[2][[inder('f'), inder('g')]], keypoints[0][[inder('f'), inder('g')]], keypoints[1][[inder('f'), inder('g')]], c=color)\n","  ax.plot(keypoints[2][[inder('g'), inder('h')]], keypoints[0][[inder('g'), inder('h')]], keypoints[1][[inder('g'), inder('h')]], c=color)\n","  ax.plot(keypoints[2][[inder('i'), inder('j')]], keypoints[0][[inder('i'), inder('j')]], keypoints[1][[inder('i'), inder('j')]], c=color)\n","  ax.plot(keypoints[2][[inder('j'), inder('k')]], keypoints[0][[inder('j'), inder('k')]], keypoints[1][[inder('j'), inder('k')]], c=color)\n","  ax.plot(keypoints[2][[inder('l'), inder('m')]], keypoints[0][[inder('l'), inder('m')]], keypoints[1][[inder('l'), inder('m')]], c=color)\n","  ax.plot(keypoints[2][[inder('m'), inder('n')]], keypoints[0][[inder('m'), inder('n')]], keypoints[1][[inder('m'), inder('n')]], c=color)\n","  ax.plot(keypoints[2][[inder('o'), inder('i')]], keypoints[0][[inder('o'), inder('i')]], keypoints[1][[inder('o'), inder('i')]], c=color)\n","  ax.plot(keypoints[2][[inder('o'), inder('l')]], keypoints[0][[inder('o'), inder('l')]], keypoints[1][[inder('o'), inder('l')]], c=color)\n","  ax.plot(keypoints[2][[inder('o'), inder('b')]], keypoints[0][[inder('o'), inder('b')]], keypoints[1][[inder('o'), inder('b')]], c=color)\n","\n","  ax.set_xlim([-2,2])\n","  ax.set_ylim([-2,2])\n","  ax.set_zlim([-2,2])\n","\n","def plot_pose(keypointsTrue, keypointsFalse, ax):\n","  draw_pose(keypointsTrue, ax, 'b')\n","  draw_pose(keypointsFalse, ax, 'r')"],"metadata":{"id":"LFekyZ-EjqSw","executionInfo":{"status":"ok","timestamp":1670939998451,"user_tz":-60,"elapsed":610,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"}}},"execution_count":66,"outputs":[]},{"cell_type":"code","source":["for subject in [13,14,15]:\n","    \n","    fig = plt.figure(figsize=(100, 20))#plt.figure(figsize = (36,9))\n","    n = len(high_error_dict[subject])\n","    ax = {}\n","    for i, frame in enumerate(high_error_dict[subject]):\n","        \n","         #fig.axis('off')\n","        run = ('frame', 'multi','mirror-seated')\n","        mode = scenario[run]\n","        ax[i] = fig.add_subplot(1,n,i+1, projection = '3d')\n","        ax[i].set_title((run, 'Subject: ', subject, frame, 'Error: ', round(mode[subject][0][frame],2)))\n","        plot_pose(mode[subject][2][frame].transpose(), mode[subject][1][frame].transpose(), ax[i])"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":712,"output_embedded_package_id":"1VYqIl7hLrND8c_1OYymZlRcpSxxTvymq"},"id":"xmeL-ZvUmXU3","executionInfo":{"status":"ok","timestamp":1670920694658,"user_tz":-60,"elapsed":27247,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"}},"outputId":"44473212-1f15-44f0-e168-dfac73689163"},"execution_count":null,"outputs":[{"output_type":"display_data","data":{"text/plain":"Output hidden; open in https://colab.research.google.com to view."},"metadata":{}}]},{"cell_type":"markdown","metadata":{"id":"zhllEu8BUN4D"},"source":["### Show before/after change"]},{"cell_type":"code","source":["for subject in [13,14,15]:\n","    \n","    for frame in high_error_dict[subject]:\n","        fig = plt.figure(figsize = (18,9))\n","        n = 2\n","        ax = {}\n","        for i, run in enumerate([\n","            ('frame', 'base'),\n","            #('frame', 'base', 'archive'),\n","            #('sequence', 'base'),\n","            #('frame', 'dropout'),\n","            #('sequence', 'dropout'),\n","            #('frame', 'multi'),\n","            #('sequence', 'multi'),\n","            #('sequence', 'multi', 'seated'),\n","            #('sequence', 'multi', 'mirror-seated'),\n","            ('frame', 'multi', 'mirror-seated'),\n","            ]):\n","                mode = scenario[run]\n","                ax[i] = fig.add_subplot(1,n,i+1, projection = '3d')\n","                ax[i].set_title((run, 'Subject: ', subject, frame, 'Error: ', round(mode[subject][0][frame],3)))\n","                plot_pose(mode[subject][2][frame].transpose(), mode[subject][1][frame].transpose(), ax[i])"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":1000,"output_embedded_package_id":"1IXn4uuie4sXCp6E-T_4VyPIRFNqlIkyp"},"id":"pOgVyoy-m1yb","executionInfo":{"status":"ok","timestamp":1670920721593,"user_tz":-60,"elapsed":26957,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"}},"outputId":"962036d4-0eaa-4b30-f39c-54c55282aeca"},"execution_count":null,"outputs":[{"output_type":"display_data","data":{"text/plain":"Output hidden; open in https://colab.research.google.com to view."},"metadata":{}}]},{"cell_type":"markdown","metadata":{"id":"o0Vj3dtaUN4E"},"source":["### Draw representative poses at different error percentiles"]},{"cell_type":"code","source":["import os\n","import pandas as pd\n","percent = [0.1, 0.15, 0.25, 0.5, 0.75, 0.9, 0.99, 0.995, 0.998, 0.999]\n","poses = {}\n","\n","a = str(settings[2])\n","\n","sorted_all = all_data.sort_values(by=[a], ascending=True)\n","\n","for point in percent:\n","    poses[point] = []\n","    ind = int(len(all_data) * point)\n","    if point == 0.999:\n","      my_list = pd.concat((sorted_all[ind+6:ind+10], sorted_all[ind+11:ind+12]))\n","    elif point == 0.998:\n","      my_list = pd.concat((sorted_all[ind-4: ind-2], sorted_all[ind : ind +2], sorted_all[ind+7:ind+8]))\n","    else:\n","      my_list = sorted_all[ind-2:ind+3]\n","    for index, line in my_list.iterrows():\n","        poses[point].append([int(line['subject']), int(line['orig_index'])])\n","        \n","for l, error_list in enumerate(poses.values()):\n","\n","    fig = plt.figure(figsize = (45,9))\n","    #fig.axis('off')\n","    n = len(poses[point])\n","    ax = {}\n","\n","    for i, pose in enumerate(error_list):\n","        subject = pose[0]\n","        frame = pose[1]\n","\n","        ax[i] = fig.add_subplot(1,n,i+1, projection = '3d')\n","\n","        #ax[i].axis('off')\n","        #ax[i].set_title((run, subject, frame, round(mode[subject][0][frame],2)))\n","        plot_pose(mode[subject][2][frame].transpose(), mode[subject][1][frame].transpose(), ax[i])\n","\n","    fig.savefig(os.path.join(\"logs\", \"evaluation\", \"PercentilePoses\",(\"fig\"+str(l)+\".png\")), bbox_inches='tight')\n","        "],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":1000,"output_embedded_package_id":"1wElhk-Op-KurKRQoZ5bInj4JX7YdS6Sj"},"id":"r3g_PfJznNBq","executionInfo":{"status":"ok","timestamp":1670935283194,"user_tz":-60,"elapsed":40443,"user":{"displayName":"Edmondo Tamajo","userId":"15585946477788184417"}},"outputId":"ac07b985-6fe7-4710-e683-112fefa4c5bb"},"execution_count":null,"outputs":[{"output_type":"display_data","data":{"text/plain":"Output hidden; open in https://colab.research.google.com to view."},"metadata":{}}]},{"cell_type":"code","execution_count":null,"metadata":{"id":"2W9wTi5gUN4F"},"outputs":[],"source":[]}],"metadata":{"colab":{"provenance":[{"file_id":"1Pf4W586b2Ya8fKNzhivGZcMq31-F3MGW","timestamp":1670014191205},{"file_id":"1vOg1s4DRtC0dKqvWA1rOEScViA9BjWDi","timestamp":1665999712291}]},"kernelspec":{"display_name":"Python 3","language":"python","name":"python3"},"language_info":{"codemirror_mode":{"name":"ipython","version":3},"file_extension":".py","mimetype":"text/x-python","name":"python","nbconvert_exporter":"python","pygments_lexer":"ipython3","version":"3.6.4"}},"nbformat":4,"nbformat_minor":0}
\ No newline at end of file