diff --git a/media/RESULTS.md b/media/RESULTS.md index 632ed24..9d333f7 100644 --- a/media/RESULTS.md +++ b/media/RESULTS.md @@ -828,125 +828,125 @@ Results of the model in various experiments on different datasets. "person_nums": { "total_frames": 629, "total_labels": 1061, - "total_preds": 1000, + "total_preds": 998, "considered_empty": 0, - "valid_preds": 762, - "invalid_preds": 238, - "missing": 299, - "invalid_fraction": 0.238, - "precision": 0.762, - "recall": 0.71819, - "f1": 0.73945, - "non_empty": 1000 + "valid_preds": 761, + "invalid_preds": 237, + "missing": 300, + "invalid_fraction": 0.23747, + "precision": 0.76253, + "recall": 0.71725, + "f1": 0.73919, + "non_empty": 998 }, "mpjpe": { - "count": 762, - "mean": 0.11579, - "median": 0.095056, - "std": 0.067568, - "sem": 0.002449, + "count": 761, + "mean": 0.115727, + "median": 0.094907, + "std": 0.067543, + "sem": 0.00245, "min": 0.040489, "max": 0.497874, "recall-0.025": 0.0, "recall-0.05": 0.005655, "recall-0.1": 0.38737, - "recall-0.15": 0.591894, + "recall-0.15": 0.590952, "recall-0.25": 0.688973, - "recall-0.5": 0.71819, + "recall-0.5": 0.717248, "num_labels": 1061, "ap-0.025": 0.0, "ap-0.05": 9.8e-05, - "ap-0.1": 0.249017, - "ap-0.15": 0.4902, - "ap-0.25": 0.615173, - "ap-0.5": 0.652927 + "ap-0.1": 0.249132, + "ap-0.15": 0.489733, + "ap-0.25": 0.615775, + "ap-0.5": 0.652046 }, "head": { - "count": 761, - "mean": 0.065976, - "median": 0.050342, - "std": 0.060116, - "sem": 0.002181, + "count": 760, + "mean": 0.065905, + "median": 0.050313, + "std": 0.060124, + "sem": 0.002182, "min": 0.005944, "max": 0.482489, "recall-0.025": 0.087653, "recall-0.05": 0.356268, "recall-0.1": 0.624882, - "recall-0.15": 0.668238, - "recall-0.25": 0.698398, - "recall-0.5": 0.717248, - "num_labels": 1061 - }, - "shoulder_left": { - "count": 760, - "mean": 0.064231, - "median": 0.04397, - "std": 0.068085, - "sem": 0.002471, - "min": 0.003155, - "max": 0.498748, - "recall-0.025": 0.155514, - "recall-0.05": 0.416588, - "recall-0.1": 0.606032, - "recall-0.15": 0.663525, - "recall-0.25": 0.694628, + "recall-0.15": 0.667295, + "recall-0.25": 0.697455, "recall-0.5": 0.716305, "num_labels": 1061 }, + "shoulder_left": { + "count": 759, + "mean": 0.064205, + "median": 0.043923, + "std": 0.068115, + "sem": 0.002474, + "min": 0.003155, + "max": 0.498748, + "recall-0.025": 0.155514, + "recall-0.05": 0.415646, + "recall-0.1": 0.60509, + "recall-0.15": 0.662582, + "recall-0.25": 0.693685, + "recall-0.5": 0.715363, + "num_labels": 1061 + }, "shoulder_right": { - "count": 758, - "mean": 0.061267, - "median": 0.040706, - "std": 0.067664, - "sem": 0.002459, + "count": 757, + "mean": 0.061162, + "median": 0.040684, + "std": 0.067691, + "sem": 0.002462, "min": 0.001883, "max": 0.496442, "recall-0.025": 0.152686, "recall-0.05": 0.446748, "recall-0.1": 0.618285, "recall-0.15": 0.66918, - "recall-0.25": 0.690858, - "recall-0.5": 0.71442, + "recall-0.25": 0.689915, + "recall-0.5": 0.713478, "num_labels": 1061 }, "elbow_left": { - "count": 747, - "mean": 0.101929, - "median": 0.074645, - "std": 0.083031, - "sem": 0.00304, + "count": 746, + "mean": 0.101808, + "median": 0.074588, + "std": 0.083038, + "sem": 0.003042, "min": 0.005382, "max": 0.481769, "recall-0.025": 0.066918, "recall-0.05": 0.223374, "recall-0.1": 0.431668, - "recall-0.15": 0.558907, - "recall-0.25": 0.655985, - "recall-0.5": 0.704053, + "recall-0.15": 0.559849, + "recall-0.25": 0.655042, + "recall-0.5": 0.70311, "num_labels": 1061 }, "elbow_right": { - "count": 751, - "mean": 0.083546, - "median": 0.057561, - "std": 0.078404, - "sem": 0.002863, + "count": 750, + "mean": 0.083574, + "median": 0.057556, + "std": 0.078516, + "sem": 0.002869, "min": 0.003313, "max": 0.498068, "recall-0.025": 0.096136, "recall-0.05": 0.301602, "recall-0.1": 0.523091, - "recall-0.15": 0.6164, - "recall-0.25": 0.672008, - "recall-0.5": 0.707823, + "recall-0.15": 0.615457, + "recall-0.25": 0.671065, + "recall-0.5": 0.70688, "num_labels": 1061 }, "wrist_left": { - "count": 753, - "mean": 0.126865, - "median": 0.090726, - "std": 0.102454, - "sem": 0.003736, + "count": 752, + "mean": 0.126691, + "median": 0.090443, + "std": 0.102411, + "sem": 0.003737, "min": 0.00418, "max": 0.497384, "recall-0.025": 0.062205, @@ -954,47 +954,47 @@ Results of the model in various experiments on different datasets. "recall-0.1": 0.380773, "recall-0.15": 0.473139, "recall-0.25": 0.614515, - "recall-0.5": 0.709708, + "recall-0.5": 0.708765, "num_labels": 1061 }, "wrist_right": { - "count": 748, - "mean": 0.112318, - "median": 0.076428, - "std": 0.100796, - "sem": 0.003688, + "count": 747, + "mean": 0.112161, + "median": 0.076173, + "std": 0.100607, + "sem": 0.003683, "min": 0.006423, - "max": 0.494757, + "max": 0.485199, "recall-0.025": 0.072573, "recall-0.05": 0.240339, "recall-0.1": 0.430726, "recall-0.15": 0.527804, - "recall-0.25": 0.622055, - "recall-0.5": 0.704995, + "recall-0.25": 0.621112, + "recall-0.5": 0.704053, "num_labels": 1061 }, "hip_left": { - "count": 746, - "mean": 0.189195, - "median": 0.17064, - "std": 0.085658, + "count": 745, + "mean": 0.18929, + "median": 0.17065, + "std": 0.085602, "sem": 0.003138, "min": 0.021758, "max": 0.499358, "recall-0.025": 0.000943, "recall-0.05": 0.00377, - "recall-0.1": 0.066918, - "recall-0.15": 0.261074, - "recall-0.25": 0.575872, - "recall-0.5": 0.70311, + "recall-0.1": 0.065975, + "recall-0.15": 0.260132, + "recall-0.25": 0.574929, + "recall-0.5": 0.702168, "num_labels": 1061 }, "hip_right": { - "count": 741, - "mean": 0.180798, - "median": 0.167552, - "std": 0.076766, - "sem": 0.002822, + "count": 740, + "mean": 0.180676, + "median": 0.167368, + "std": 0.076747, + "sem": 0.002823, "min": 0.036054, "max": 0.492444, "recall-0.025": 0.0, @@ -1002,7 +1002,7 @@ Results of the model in various experiments on different datasets. "recall-0.1": 0.069746, "recall-0.15": 0.275212, "recall-0.25": 0.588124, - "recall-0.5": 0.698398, + "recall-0.5": 0.697455, "num_labels": 1061 }, "knee_left": {}, @@ -1013,16 +1013,16 @@ Results of the model in various experiments on different datasets. "num_labels": 9549, "recall-0.025": 0.07666, "recall-0.05": 0.24065, - "recall-0.1": 0.41638, - "recall-0.15": 0.52341, - "recall-0.25": 0.64572, - "recall-0.5": 0.70803 + "recall-0.1": 0.41627, + "recall-0.15": 0.52278, + "recall-0.25": 0.64426, + "recall-0.5": 0.70699 } } { "total_parts": 10610, - "correct_parts": 5846, - "pcp": 0.55099 + "correct_parts": 5842, + "pcp": 0.550613 } ``` @@ -1039,43 +1039,43 @@ Results of the model in various experiments on different datasets. "person_nums": { "total_frames": 420, "total_labels": 1466, - "total_preds": 1542, + "total_preds": 1540, "considered_empty": 0, "valid_preds": 1464, - "invalid_preds": 78, + "invalid_preds": 76, "missing": 2, - "invalid_fraction": 0.05058, - "precision": 0.94942, + "invalid_fraction": 0.04935, + "precision": 0.95065, "recall": 0.99864, - "f1": 0.9734, - "non_empty": 1542 + "f1": 0.97405, + "non_empty": 1540 }, "mpjpe": { "count": 1464, - "mean": 0.042704, - "median": 0.037986, - "std": 0.020188, + "mean": 0.042718, + "median": 0.038, + "std": 0.020204, "sem": 0.000528, "min": 0.01189, "max": 0.147865, "recall-0.025": 0.153479, - "recall-0.05": 0.741473, + "recall-0.05": 0.742156, "recall-0.1": 0.982265, "recall-0.15": 0.998636, "recall-0.25": 0.998636, "recall-0.5": 0.998636, "num_labels": 1466, - "ap-0.025": 0.064044, - "ap-0.05": 0.663046, - "ap-0.1": 0.960955, - "ap-0.15": 0.98397, - "ap-0.25": 0.98397, - "ap-0.5": 0.98397 + "ap-0.025": 0.064081, + "ap-0.05": 0.663593, + "ap-0.1": 0.961019, + "ap-0.15": 0.98405, + "ap-0.25": 0.98405, + "ap-0.5": 0.98405 }, "nose": { "count": 1462, - "mean": 0.016082, - "median": 0.012433, + "mean": 0.01608, + "median": 0.012425, "std": 0.019002, "sem": 0.000497, "min": 0.001407, @@ -1090,13 +1090,13 @@ Results of the model in various experiments on different datasets. }, "shoulder_left": { "count": 1464, - "mean": 0.021383, + "mean": 0.021397, "median": 0.01901, "std": 0.011213, "sem": 0.000293, "min": 0.002677, "max": 0.095793, - "recall-0.025": 0.706685, + "recall-0.025": 0.706003, "recall-0.05": 0.97749, "recall-0.1": 0.998636, "recall-0.15": 0.998636, @@ -1106,13 +1106,13 @@ Results of the model in various experiments on different datasets. }, "shoulder_right": { "count": 1463, - "mean": 0.022675, - "median": 0.019544, - "std": 0.014416, + "mean": 0.022685, + "median": 0.019588, + "std": 0.014424, "sem": 0.000377, "min": 0.00112, "max": 0.146597, - "recall-0.025": 0.711945, + "recall-0.025": 0.712628, "recall-0.05": 0.953584, "recall-0.1": 0.995904, "recall-0.15": 0.998635, @@ -1122,13 +1122,13 @@ Results of the model in various experiments on different datasets. }, "elbow_left": { "count": 1463, - "mean": 0.026263, + "mean": 0.026268, "median": 0.017747, - "std": 0.028786, + "std": 0.028791, "sem": 0.000753, "min": 0.001259, "max": 0.323155, - "recall-0.025": 0.704437, + "recall-0.025": 0.703754, "recall-0.05": 0.882594, "recall-0.1": 0.979522, "recall-0.15": 0.986348, @@ -1138,14 +1138,14 @@ Results of the model in various experiments on different datasets. }, "elbow_right": { "count": 1462, - "mean": 0.023413, + "mean": 0.023411, "median": 0.01824, - "std": 0.018144, - "sem": 0.000475, + "std": 0.018218, + "sem": 0.000477, "min": 0.001407, - "max": 0.219498, + "max": 0.227062, "recall-0.025": 0.687628, - "recall-0.05": 0.926179, + "recall-0.05": 0.926863, "recall-0.1": 0.993848, "recall-0.15": 0.997949, "recall-0.25": 0.999316, @@ -1154,15 +1154,15 @@ Results of the model in various experiments on different datasets. }, "wrist_left": { "count": 1429, - "mean": 0.03518, + "mean": 0.035199, "median": 0.01696, - "std": 0.05066, - "sem": 0.001341, + "std": 0.050725, + "sem": 0.001342, "min": 0.000713, "max": 0.397255, "recall-0.025": 0.675732, - "recall-0.05": 0.824268, - "recall-0.1": 0.909344, + "recall-0.05": 0.824965, + "recall-0.1": 0.908647, "recall-0.15": 0.95537, "recall-0.25": 0.98675, "recall-0.5": 0.996513, @@ -1170,30 +1170,30 @@ Results of the model in various experiments on different datasets. }, "wrist_right": { "count": 1456, - "mean": 0.024194, - "median": 0.016335, - "std": 0.023586, - "sem": 0.000618, + "mean": 0.024248, + "median": 0.016323, + "std": 0.024811, + "sem": 0.00065, "min": 0.001905, - "max": 0.202973, - "recall-0.025": 0.701923, - "recall-0.05": 0.89217, - "recall-0.1": 0.980082, - "recall-0.15": 0.994505, - "recall-0.25": 1.0, + "max": 0.355734, + "recall-0.025": 0.70261, + "recall-0.05": 0.892857, + "recall-0.1": 0.980769, + "recall-0.15": 0.995192, + "recall-0.25": 0.999313, "recall-0.5": 1.0, "num_labels": 1456 }, "hip_left": { "count": 1463, - "mean": 0.05939, - "median": 0.053492, - "std": 0.029982, + "mean": 0.059396, + "median": 0.053454, + "std": 0.029991, "sem": 0.000784, "min": 0.005563, "max": 0.17979, - "recall-0.025": 0.069625, - "recall-0.05": 0.423891, + "recall-0.025": 0.068942, + "recall-0.05": 0.424573, "recall-0.1": 0.893515, "recall-0.15": 0.969283, "recall-0.25": 0.998635, @@ -1202,9 +1202,9 @@ Results of the model in various experiments on different datasets. }, "hip_right": { "count": 1464, - "mean": 0.058564, + "mean": 0.058562, "median": 0.054479, - "std": 0.028882, + "std": 0.028875, "sem": 0.000755, "min": 0.003776, "max": 0.304525, @@ -1218,30 +1218,30 @@ Results of the model in various experiments on different datasets. }, "knee_left": { "count": 1463, - "mean": 0.051818, + "mean": 0.051829, "median": 0.042757, - "std": 0.042169, - "sem": 0.001103, + "std": 0.042202, + "sem": 0.001104, "min": 0.001938, "max": 0.3408, - "recall-0.025": 0.187713, - "recall-0.05": 0.63413, + "recall-0.025": 0.188396, + "recall-0.05": 0.633447, "recall-0.1": 0.927645, - "recall-0.15": 0.967918, + "recall-0.15": 0.967235, "recall-0.25": 0.984983, "recall-0.5": 0.998635, "num_labels": 1465 }, "knee_right": { "count": 1457, - "mean": 0.048414, + "mean": 0.048415, "median": 0.042583, - "std": 0.029684, + "std": 0.029674, "sem": 0.000778, "min": 0.003543, "max": 0.324497, - "recall-0.025": 0.213845, - "recall-0.05": 0.588759, + "recall-0.025": 0.214531, + "recall-0.05": 0.588074, "recall-0.1": 0.938314, "recall-0.15": 0.992461, "recall-0.25": 0.996573, @@ -1250,14 +1250,14 @@ Results of the model in various experiments on different datasets. }, "ankle_left": { "count": 1456, - "mean": 0.083238, - "median": 0.037284, - "std": 0.106307, + "mean": 0.083278, + "median": 0.037344, + "std": 0.106297, "sem": 0.002787, "min": 0.002453, "max": 0.495774, "recall-0.025": 0.362953, - "recall-0.05": 0.588517, + "recall-0.05": 0.587833, "recall-0.1": 0.732057, "recall-0.15": 0.821599, "recall-0.25": 0.913876, @@ -1266,14 +1266,14 @@ Results of the model in various experiments on different datasets. }, "ankle_right": { "count": 1449, - "mean": 0.077886, + "mean": 0.077908, "median": 0.033398, - "std": 0.103863, + "std": 0.103855, "sem": 0.002729, "min": 0.001061, "max": 0.4981, "recall-0.025": 0.369863, - "recall-0.05": 0.684932, + "recall-0.05": 0.684247, "recall-0.1": 0.772603, "recall-0.15": 0.813699, "recall-0.25": 0.896575, @@ -1282,18 +1282,18 @@ Results of the model in various experiments on different datasets. }, "joint_recalls": { "num_labels": 18990, - "recall-0.025": 0.48752, - "recall-0.05": 0.75055, + "recall-0.025": 0.48773, + "recall-0.05": 0.75039, "recall-0.1": 0.92507, "recall-0.15": 0.95956, - "recall-0.25": 0.98167, + "recall-0.25": 0.98157, "recall-0.5": 0.99768 } } { "total_parts": 20444, - "correct_parts": 19980, - "pcp": 0.977304 + "correct_parts": 19978, + "pcp": 0.977206 } ``` @@ -1577,49 +1577,49 @@ Results of the model in various experiments on different datasets. "person_nums": { "total_frames": 420, "total_labels": 1466, - "total_preds": 1527, + "total_preds": 1523, "considered_empty": 0, "valid_preds": 1465, - "invalid_preds": 62, + "invalid_preds": 58, "missing": 1, - "invalid_fraction": 0.0406, - "precision": 0.9594, + "invalid_fraction": 0.03808, + "precision": 0.96192, "recall": 0.99932, - "f1": 0.97895, - "non_empty": 1527 + "f1": 0.98026, + "non_empty": 1523 }, "mpjpe": { "count": 1465, - "mean": 0.037082, - "median": 0.032321, - "std": 0.017242, - "sem": 0.000451, + "mean": 0.03698, + "median": 0.032157, + "std": 0.017197, + "sem": 0.000449, "min": 0.013848, "max": 0.136363, - "recall-0.025": 0.188267, - "recall-0.05": 0.851978, - "recall-0.1": 0.989086, + "recall-0.025": 0.191678, + "recall-0.05": 0.854025, + "recall-0.1": 0.988404, "recall-0.15": 0.999318, "recall-0.25": 0.999318, "recall-0.5": 0.999318, "num_labels": 1466, - "ap-0.025": 0.087846, - "ap-0.05": 0.807698, - "ap-0.1": 0.975275, - "ap-0.15": 0.986743, - "ap-0.25": 0.986743, - "ap-0.5": 0.986743 + "ap-0.025": 0.089714, + "ap-0.05": 0.813775, + "ap-0.1": 0.976169, + "ap-0.15": 0.988475, + "ap-0.25": 0.988475, + "ap-0.5": 0.988475 }, "nose": { "count": 1462, - "mean": 0.012384, - "median": 0.010912, - "std": 0.007797, - "sem": 0.000204, + "mean": 0.012463, + "median": 0.010896, + "std": 0.007875, + "sem": 0.000206, "min": 0.001275, "max": 0.124831, - "recall-0.025": 0.956254, - "recall-0.05": 0.993165, + "recall-0.025": 0.954887, + "recall-0.05": 0.992481, "recall-0.1": 0.998633, "recall-0.15": 0.999316, "recall-0.25": 0.999316, @@ -1628,13 +1628,13 @@ Results of the model in various experiments on different datasets. }, "shoulder_left": { "count": 1465, - "mean": 0.018746, - "median": 0.016641, - "std": 0.009717, - "sem": 0.000254, + "mean": 0.018708, + "median": 0.016682, + "std": 0.009587, + "sem": 0.000251, "min": 0.001103, "max": 0.11138, - "recall-0.025": 0.798772, + "recall-0.025": 0.799454, "recall-0.05": 0.991132, "recall-0.1": 0.998636, "recall-0.15": 0.999318, @@ -1644,13 +1644,13 @@ Results of the model in various experiments on different datasets. }, "shoulder_right": { "count": 1464, - "mean": 0.020464, - "median": 0.019186, - "std": 0.008812, - "sem": 0.00023, - "min": 0.002013, + "mean": 0.020508, + "median": 0.019301, + "std": 0.008862, + "sem": 0.000232, + "min": 0.000512, "max": 0.087963, - "recall-0.025": 0.769966, + "recall-0.025": 0.767918, "recall-0.05": 0.990444, "recall-0.1": 0.999317, "recall-0.15": 0.999317, @@ -1660,14 +1660,14 @@ Results of the model in various experiments on different datasets. }, "elbow_left": { "count": 1464, - "mean": 0.021041, + "mean": 0.020822, "median": 0.018392, - "std": 0.012619, - "sem": 0.00033, + "std": 0.01212, + "sem": 0.000317, "min": 0.002104, "max": 0.147682, - "recall-0.025": 0.709215, - "recall-0.05": 0.972696, + "recall-0.025": 0.71058, + "recall-0.05": 0.975427, "recall-0.1": 0.998635, "recall-0.15": 0.999317, "recall-0.25": 0.999317, @@ -1676,13 +1676,13 @@ Results of the model in various experiments on different datasets. }, "elbow_right": { "count": 1462, - "mean": 0.019468, - "median": 0.017347, - "std": 0.011368, - "sem": 0.000297, + "mean": 0.019589, + "median": 0.017396, + "std": 0.011483, + "sem": 0.0003, "min": 0.001927, "max": 0.132247, - "recall-0.025": 0.805878, + "recall-0.025": 0.803144, "recall-0.05": 0.971975, "recall-0.1": 0.997949, "recall-0.15": 0.999316, @@ -1692,47 +1692,47 @@ Results of the model in various experiments on different datasets. }, "wrist_left": { "count": 1433, - "mean": 0.020901, - "median": 0.015088, - "std": 0.021121, - "sem": 0.000558, + "mean": 0.02091, + "median": 0.015145, + "std": 0.021234, + "sem": 0.000561, "min": 0.001506, "max": 0.194344, - "recall-0.025": 0.763598, - "recall-0.05": 0.937936, + "recall-0.025": 0.764296, + "recall-0.05": 0.938633, "recall-0.1": 0.982566, - "recall-0.15": 0.994421, + "recall-0.15": 0.993724, "recall-0.25": 0.999303, "recall-0.5": 0.999303, "num_labels": 1434 }, "wrist_right": { "count": 1456, - "mean": 0.020303, - "median": 0.013717, - "std": 0.020686, - "sem": 0.000542, + "mean": 0.020509, + "median": 0.013775, + "std": 0.021109, + "sem": 0.000553, "min": 0.000284, "max": 0.212342, - "recall-0.025": 0.773352, - "recall-0.05": 0.934753, - "recall-0.1": 0.984203, - "recall-0.15": 0.997253, + "recall-0.025": 0.769231, + "recall-0.05": 0.933379, + "recall-0.1": 0.983516, + "recall-0.15": 0.996566, "recall-0.25": 1.0, "recall-0.5": 1.0, "num_labels": 1456 }, "hip_left": { "count": 1464, - "mean": 0.050265, - "median": 0.048338, - "std": 0.019008, + "mean": 0.050187, + "median": 0.048259, + "std": 0.019021, "sem": 0.000497, "min": 0.008094, "max": 0.148516, - "recall-0.025": 0.049147, - "recall-0.05": 0.54744, - "recall-0.1": 0.976109, + "recall-0.025": 0.050512, + "recall-0.05": 0.551536, + "recall-0.1": 0.975427, "recall-0.15": 0.999317, "recall-0.25": 0.999317, "recall-0.5": 0.999317, @@ -1740,14 +1740,14 @@ Results of the model in various experiments on different datasets. }, "hip_right": { "count": 1465, - "mean": 0.050041, + "mean": 0.050083, "median": 0.048863, - "std": 0.016842, - "sem": 0.00044, + "std": 0.016782, + "sem": 0.000439, "min": 0.007258, "max": 0.138747, - "recall-0.025": 0.05116, - "recall-0.05": 0.520464, + "recall-0.025": 0.048431, + "recall-0.05": 0.52251, "recall-0.1": 0.988404, "recall-0.15": 0.999318, "recall-0.25": 0.999318, @@ -1756,76 +1756,76 @@ Results of the model in various experiments on different datasets. }, "knee_left": { "count": 1464, - "mean": 0.038353, - "median": 0.032352, - "std": 0.027187, - "sem": 0.000711, - "min": 0.002051, - "max": 0.275419, - "recall-0.025": 0.331058, - "recall-0.05": 0.759727, - "recall-0.1": 0.970648, - "recall-0.15": 0.990444, - "recall-0.25": 0.998635, + "mean": 0.038508, + "median": 0.032025, + "std": 0.029417, + "sem": 0.000769, + "min": 0.000967, + "max": 0.457217, + "recall-0.025": 0.332423, + "recall-0.05": 0.762457, + "recall-0.1": 0.969966, + "recall-0.15": 0.989761, + "recall-0.25": 0.99727, "recall-0.5": 0.999317, "num_labels": 1465 }, "knee_right": { "count": 1458, - "mean": 0.041659, - "median": 0.035863, - "std": 0.026298, - "sem": 0.000689, + "mean": 0.041587, + "median": 0.035713, + "std": 0.026497, + "sem": 0.000694, "min": 0.004598, "max": 0.242773, - "recall-0.025": 0.243317, - "recall-0.05": 0.732008, - "recall-0.1": 0.964359, + "recall-0.025": 0.245374, + "recall-0.05": 0.735435, + "recall-0.1": 0.963674, "recall-0.15": 0.990404, "recall-0.25": 0.999315, "recall-0.5": 0.999315, "num_labels": 1459 }, "ankle_left": { - "count": 1457, - "mean": 0.085318, - "median": 0.04279, - "std": 0.101384, - "sem": 0.002657, + "count": 1458, + "mean": 0.084888, + "median": 0.04214, + "std": 0.101806, + "sem": 0.002667, "min": 0.000814, "max": 0.494931, - "recall-0.025": 0.347915, - "recall-0.05": 0.546138, - "recall-0.1": 0.712235, - "recall-0.15": 0.827751, + "recall-0.025": 0.350649, + "recall-0.05": 0.552973, + "recall-0.1": 0.71702, + "recall-0.15": 0.829802, "recall-0.25": 0.917293, - "recall-0.5": 0.995899, + "recall-0.5": 0.996582, "num_labels": 1463 }, "ankle_right": { - "count": 1447, - "mean": 0.077143, - "median": 0.042829, - "std": 0.096759, - "sem": 0.002545, + "count": 1450, + "mean": 0.077312, + "median": 0.042646, + "std": 0.098024, + "sem": 0.002575, "min": 0.001957, "max": 0.49866, - "recall-0.025": 0.315068, - "recall-0.05": 0.560274, - "recall-0.1": 0.791781, - "recall-0.15": 0.85137, + "recall-0.025": 0.319178, + "recall-0.05": 0.568493, + "recall-0.1": 0.794521, + "recall-0.15": 0.853425, "recall-0.25": 0.908904, - "recall-0.5": 0.991096, + "recall-0.5": 0.993151, "num_labels": 1460 }, "joint_recalls": { "num_labels": 18990, - "recall-0.025": 0.53102, - "recall-0.05": 0.80395, - "recall-0.1": 0.95061, - "recall-0.15": 0.97241, - "recall-0.25": 0.98568, - "recall-0.5": 0.99816 + "recall-0.025": 0.53112, + "recall-0.05": 0.80595, + "recall-0.1": 0.95118, + "recall-0.15": 0.97262, + "recall-0.25": 0.98557, + "recall-0.5": 0.99831 } } { @@ -1848,65 +1848,65 @@ Results of the model in various experiments on different datasets. "person_nums": { "total_frames": 479, "total_labels": 479, - "total_preds": 653, + "total_preds": 662, "considered_empty": 0, "valid_preds": 400, - "invalid_preds": 253, + "invalid_preds": 262, "missing": 79, - "invalid_fraction": 0.38744, - "precision": 0.61256, + "invalid_fraction": 0.39577, + "precision": 0.60423, "recall": 0.83507, - "f1": 0.70671, - "non_empty": 653 + "f1": 0.70114, + "non_empty": 662 }, "mpjpe": { "count": 400, - "mean": 0.092813, - "median": 0.072425, - "std": 0.076241, - "sem": 0.003817, + "mean": 0.093309, + "median": 0.07366, + "std": 0.075337, + "sem": 0.003772, "min": 0.018825, "max": 0.474035, "recall-0.025": 0.029228, - "recall-0.05": 0.286013, - "recall-0.1": 0.590814, - "recall-0.15": 0.697286, - "recall-0.25": 0.797495, + "recall-0.05": 0.271399, + "recall-0.1": 0.582463, + "recall-0.15": 0.701461, + "recall-0.25": 0.799582, "recall-0.5": 0.835073, "num_labels": 479, - "ap-0.025": 0.001417, - "ap-0.05": 0.105678, - "ap-0.1": 0.401677, - "ap-0.15": 0.539153, - "ap-0.25": 0.673607, - "ap-0.5": 0.707115 + "ap-0.025": 0.00138, + "ap-0.05": 0.093016, + "ap-0.1": 0.381543, + "ap-0.15": 0.537106, + "ap-0.25": 0.6682, + "ap-0.5": 0.699273 }, "head": { "count": 376, - "mean": 0.040316, - "median": 0.029569, - "std": 0.041871, - "sem": 0.002162, + "mean": 0.040456, + "median": 0.030025, + "std": 0.041104, + "sem": 0.002123, "min": 0.003708, "max": 0.388716, - "recall-0.025": 0.320796, - "recall-0.05": 0.646018, - "recall-0.1": 0.79646, - "recall-0.15": 0.811947, + "recall-0.025": 0.311947, + "recall-0.05": 0.639381, + "recall-0.1": 0.798673, + "recall-0.15": 0.814159, "recall-0.25": 0.823009, "recall-0.5": 0.831858, "num_labels": 452 }, "shoulder_left": { "count": 380, - "mean": 0.047274, - "median": 0.0364, - "std": 0.044933, - "sem": 0.002308, + "mean": 0.047389, + "median": 0.036497, + "std": 0.044986, + "sem": 0.002311, "min": 0.011784, "max": 0.419809, - "recall-0.025": 0.094714, - "recall-0.05": 0.623348, + "recall-0.025": 0.096916, + "recall-0.05": 0.621145, "recall-0.1": 0.799559, "recall-0.15": 0.814978, "recall-0.25": 0.823789, @@ -1915,13 +1915,13 @@ Results of the model in various experiments on different datasets. }, "shoulder_right": { "count": 393, - "mean": 0.037719, - "median": 0.028452, - "std": 0.043202, - "sem": 0.002182, + "mean": 0.037999, + "median": 0.028839, + "std": 0.043162, + "sem": 0.00218, "min": 0.004674, "max": 0.434466, - "recall-0.025": 0.280514, + "recall-0.025": 0.271949, "recall-0.05": 0.747323, "recall-0.1": 0.815846, "recall-0.15": 0.82227, @@ -1931,14 +1931,14 @@ Results of the model in various experiments on different datasets. }, "elbow_left": { "count": 366, - "mean": 0.040307, - "median": 0.022077, - "std": 0.057584, - "sem": 0.003014, + "mean": 0.04082, + "median": 0.022469, + "std": 0.057562, + "sem": 0.003013, "min": 0.003295, "max": 0.491679, - "recall-0.025": 0.471396, - "recall-0.05": 0.681922, + "recall-0.025": 0.459954, + "recall-0.05": 0.675057, "recall-0.1": 0.76659, "recall-0.15": 0.79405, "recall-0.25": 0.82151, @@ -1947,29 +1947,29 @@ Results of the model in various experiments on different datasets. }, "elbow_right": { "count": 370, - "mean": 0.039712, - "median": 0.021287, - "std": 0.062857, - "sem": 0.003272, + "mean": 0.039578, + "median": 0.022174, + "std": 0.061189, + "sem": 0.003185, "min": 0.00252, "max": 0.483894, - "recall-0.025": 0.494331, - "recall-0.05": 0.696145, - "recall-0.1": 0.78458, - "recall-0.15": 0.800454, - "recall-0.25": 0.816327, + "recall-0.025": 0.478458, + "recall-0.05": 0.693878, + "recall-0.1": 0.786848, + "recall-0.15": 0.802721, + "recall-0.25": 0.818594, "recall-0.5": 0.839002, "num_labels": 441 }, "wrist_left": { "count": 360, - "mean": 0.038211, - "median": 0.022851, - "std": 0.061272, - "sem": 0.003234, + "mean": 0.038444, + "median": 0.023203, + "std": 0.061226, + "sem": 0.003231, "min": 0.002309, "max": 0.478187, - "recall-0.025": 0.461009, + "recall-0.025": 0.454128, "recall-0.05": 0.701835, "recall-0.1": 0.777523, "recall-0.15": 0.798165, @@ -1979,90 +1979,90 @@ Results of the model in various experiments on different datasets. }, "wrist_right": { "count": 373, - "mean": 0.035561, - "median": 0.020667, - "std": 0.054067, - "sem": 0.002803, + "mean": 0.035859, + "median": 0.020875, + "std": 0.053113, + "sem": 0.002754, "min": 0.001785, "max": 0.47799, - "recall-0.025": 0.493274, - "recall-0.05": 0.724215, + "recall-0.025": 0.484305, + "recall-0.05": 0.717489, "recall-0.1": 0.789238, "recall-0.15": 0.804933, - "recall-0.25": 0.82287, + "recall-0.25": 0.825112, "recall-0.5": 0.836323, "num_labels": 446 }, "hip_left": { "count": 261, - "mean": 0.111334, - "median": 0.097762, - "std": 0.056356, - "sem": 0.003495, + "mean": 0.112268, + "median": 0.098299, + "std": 0.056754, + "sem": 0.00352, "min": 0.029201, "max": 0.488038, "recall-0.025": 0.0, "recall-0.05": 0.015924, - "recall-0.1": 0.442675, - "recall-0.15": 0.729299, + "recall-0.1": 0.436306, + "recall-0.15": 0.726115, "recall-0.25": 0.805732, "recall-0.5": 0.83121, "num_labels": 314 }, "hip_right": { "count": 205, - "mean": 0.104323, - "median": 0.090133, - "std": 0.060851, - "sem": 0.00426, + "mean": 0.104318, + "median": 0.090241, + "std": 0.060778, + "sem": 0.004255, "min": 0.030718, "max": 0.497295, "recall-0.025": 0.0, "recall-0.05": 0.030769, - "recall-0.1": 0.515385, + "recall-0.1": 0.511538, "recall-0.15": 0.707692, "recall-0.25": 0.765385, "recall-0.5": 0.788462, "num_labels": 260 }, "knee_left": { - "count": 215, - "mean": 0.14778, - "median": 0.112225, - "std": 0.104573, - "sem": 0.007148, + "count": 214, + "mean": 0.149731, + "median": 0.111341, + "std": 0.109357, + "sem": 0.007493, "min": 0.010824, "max": 0.491249, "recall-0.025": 0.028986, - "recall-0.05": 0.101449, - "recall-0.1": 0.326087, + "recall-0.05": 0.105072, + "recall-0.1": 0.32971, "recall-0.15": 0.503623, - "recall-0.25": 0.637681, - "recall-0.5": 0.778986, + "recall-0.25": 0.630435, + "recall-0.5": 0.775362, "num_labels": 276 }, "knee_right": { "count": 164, - "mean": 0.14477, - "median": 0.099527, - "std": 0.116266, - "sem": 0.009107, + "mean": 0.145171, + "median": 0.098903, + "std": 0.117423, + "sem": 0.009197, "min": 0.015332, - "max": 0.497051, + "max": 0.489112, "recall-0.025": 0.018605, - "recall-0.05": 0.130233, - "recall-0.1": 0.381395, - "recall-0.15": 0.525581, + "recall-0.05": 0.134884, + "recall-0.1": 0.386047, + "recall-0.15": 0.52093, "recall-0.25": 0.627907, "recall-0.5": 0.762791, "num_labels": 215 }, "ankle_left": { - "count": 54, - "mean": 0.341155, - "median": 0.378166, - "std": 0.111535, - "sem": 0.01532, + "count": 55, + "mean": 0.341998, + "median": 0.379434, + "std": 0.110689, + "sem": 0.015063, "min": 0.064544, "max": 0.490279, "recall-0.025": 0.0, @@ -2070,17 +2070,17 @@ Results of the model in various experiments on different datasets. "recall-0.1": 0.022727, "recall-0.15": 0.030303, "recall-0.25": 0.083333, - "recall-0.5": 0.409091, + "recall-0.5": 0.416667, "num_labels": 132 }, "ankle_right": { "count": 56, - "mean": 0.366611, + "mean": 0.365706, "median": 0.380989, - "std": 0.099154, - "sem": 0.01337, + "std": 0.098209, + "sem": 0.013242, "min": 0.113098, - "max": 0.494649, + "max": 0.491617, "recall-0.025": 0.0, "recall-0.05": 0.0, "recall-0.1": 0.0, @@ -2091,18 +2091,18 @@ Results of the model in various experiments on different datasets. }, "joint_recalls": { "num_labels": 4457, - "recall-0.025": 0.26318, - "recall-0.05": 0.49809, - "recall-0.1": 0.65448, - "recall-0.15": 0.71618, - "recall-0.25": 0.7505, - "recall-0.5": 0.80054 + "recall-0.025": 0.25712, + "recall-0.05": 0.49652, + "recall-0.1": 0.65492, + "recall-0.15": 0.71595, + "recall-0.25": 0.75028, + "recall-0.5": 0.80031 } } { "total_parts": 4313, - "correct_parts": 3237, - "pcp": 0.750522 + "correct_parts": 3239, + "pcp": 0.750985 } ``` @@ -2132,31 +2132,31 @@ Results of the model in various experiments on different datasets. }, "mpjpe": { "count": 630, - "mean": 0.056111, + "mean": 0.056103, "median": 0.051456, - "std": 0.018368, - "sem": 0.000732, + "std": 0.018372, + "sem": 0.000733, "min": 0.028965, "max": 0.14306, "recall-0.025": 0.0, - "recall-0.05": 0.438095, + "recall-0.05": 0.439683, "recall-0.1": 0.949206, "recall-0.15": 1.0, "recall-0.25": 1.0, "recall-0.5": 1.0, "num_labels": 630, "ap-0.025": 0.0, - "ap-0.05": 0.223683, - "ap-0.1": 0.928267, - "ap-0.15": 0.999816, - "ap-0.25": 0.999816, - "ap-0.5": 0.999816 + "ap-0.05": 0.224824, + "ap-0.1": 0.928154, + "ap-0.15": 0.999746, + "ap-0.25": 0.999746, + "ap-0.5": 0.999746 }, "head": { "count": 598, - "mean": 0.040764, + "mean": 0.040759, "median": 0.039496, - "std": 0.01374, + "std": 0.013741, "sem": 0.000562, "min": 0.011364, "max": 0.102955, @@ -2170,10 +2170,10 @@ Results of the model in various experiments on different datasets. }, "shoulder_left": { "count": 630, - "mean": 0.062839, + "mean": 0.062835, "median": 0.060457, - "std": 0.019404, - "sem": 0.000774, + "std": 0.019397, + "sem": 0.000773, "min": 0.018922, "max": 0.132634, "recall-0.025": 0.003175, @@ -2186,14 +2186,14 @@ Results of the model in various experiments on different datasets. }, "shoulder_right": { "count": 630, - "mean": 0.066282, + "mean": 0.066268, "median": 0.06401, - "std": 0.019871, - "sem": 0.000792, + "std": 0.01988, + "sem": 0.000793, "min": 0.0267, "max": 0.146825, "recall-0.025": 0.0, - "recall-0.05": 0.250794, + "recall-0.05": 0.252381, "recall-0.1": 0.934921, "recall-0.15": 1.0, "recall-0.25": 1.0, @@ -2202,9 +2202,9 @@ Results of the model in various experiments on different datasets. }, "elbow_left": { "count": 630, - "mean": 0.05237, + "mean": 0.052366, "median": 0.049508, - "std": 0.020206, + "std": 0.02021, "sem": 0.000806, "min": 0.010131, "max": 0.140634, @@ -2218,9 +2218,9 @@ Results of the model in various experiments on different datasets. }, "elbow_right": { "count": 629, - "mean": 0.055812, + "mean": 0.055804, "median": 0.048387, - "std": 0.03206, + "std": 0.032053, "sem": 0.001279, "min": 0.004074, "max": 0.228126, @@ -2234,9 +2234,9 @@ Results of the model in various experiments on different datasets. }, "wrist_left": { "count": 630, - "mean": 0.048071, - "median": 0.041989, - "std": 0.026751, + "mean": 0.048061, + "median": 0.041971, + "std": 0.026754, "sem": 0.001067, "min": 0.007895, "max": 0.191578, @@ -2250,10 +2250,10 @@ Results of the model in various experiments on different datasets. }, "wrist_right": { "count": 625, - "mean": 0.052705, + "mean": 0.052694, "median": 0.047416, - "std": 0.025887, - "sem": 0.001036, + "std": 0.0259, + "sem": 0.001037, "min": 0.008634, "max": 0.226556, "recall-0.025": 0.0816, @@ -2266,9 +2266,9 @@ Results of the model in various experiments on different datasets. }, "hip_left": { "count": 630, - "mean": 0.057311, - "median": 0.054171, - "std": 0.020577, + "mean": 0.057289, + "median": 0.054137, + "std": 0.020575, "sem": 0.00082, "min": 0.014001, "max": 0.17071, @@ -2282,7 +2282,7 @@ Results of the model in various experiments on different datasets. }, "hip_right": { "count": 629, - "mean": 0.055245, + "mean": 0.055246, "median": 0.050996, "std": 0.023089, "sem": 0.000921, @@ -2298,14 +2298,14 @@ Results of the model in various experiments on different datasets. }, "knee_left": { "count": 628, - "mean": 0.045693, + "mean": 0.045669, "median": 0.034743, - "std": 0.046075, + "std": 0.046074, "sem": 0.00184, "min": 0.003593, "max": 0.364064, "recall-0.025": 0.291401, - "recall-0.05": 0.72293, + "recall-0.05": 0.724522, "recall-0.1": 0.941083, "recall-0.15": 0.961783, "recall-0.25": 0.984076, @@ -2330,7 +2330,7 @@ Results of the model in various experiments on different datasets. }, "ankle_left": { "count": 619, - "mean": 0.065864, + "mean": 0.065863, "median": 0.050491, "std": 0.072779, "sem": 0.002928, @@ -2346,13 +2346,13 @@ Results of the model in various experiments on different datasets. }, "ankle_right": { "count": 601, - "mean": 0.054043, + "mean": 0.054029, "median": 0.047411, - "std": 0.042559, - "sem": 0.001737, + "std": 0.042569, + "sem": 0.001738, "min": 0.011391, "max": 0.47977, - "recall-0.025": 0.094855, + "recall-0.025": 0.096463, "recall-0.05": 0.522508, "recall-0.1": 0.92926, "recall-0.15": 0.946945, @@ -2362,8 +2362,8 @@ Results of the model in various experiments on different datasets. }, "joint_recalls": { "num_labels": 8129, - "recall-0.025": 0.09583, - "recall-0.05": 0.52737, + "recall-0.025": 0.09595, + "recall-0.05": 0.52749, "recall-0.1": 0.95092, "recall-0.15": 0.98155, "recall-0.25": 0.98905, diff --git a/scripts/test_skelda_dataset.py b/scripts/test_skelda_dataset.py index 6ef5b13..93affd3 100644 --- a/scripts/test_skelda_dataset.py +++ b/scripts/test_skelda_dataset.py @@ -236,7 +236,7 @@ def main(): } min_group_size = min_group_sizes.get(dataset_use, 1) if dataset_use == "panoptic" and len(datasets["panoptic"]["cams"]) == 10: - min_group_size = 5 + min_group_size = 4 print("\nRunning predictions ...") all_poses = [] diff --git a/spt/triangulator.cpp b/spt/triangulator.cpp index 98be43f..ac2b585 100644 --- a/spt/triangulator.cpp +++ b/spt/triangulator.cpp @@ -455,7 +455,7 @@ std::vector>> TriangulatorInternal::triangulate } // Group pairs that share a person - std::vector>> groups; + std::vector>> groups; groups = calc_grouping(all_pairs, all_scored_poses, min_score); // Drop groups with too few matches @@ -1149,7 +1149,7 @@ std::pair TriangulatorInternal::triangulate_and_score( // ================================================================================================= -std::vector>> TriangulatorInternal::calc_grouping( +std::vector>> TriangulatorInternal::calc_grouping( const std::vector, std::pair>> &all_pairs, const std::vector> &all_scored_poses, float min_score) @@ -1159,14 +1159,14 @@ std::vector>> TriangulatorInte size_t num_pairs = all_pairs.size(); // Calculate pose centers - std::vector centers; + std::vector centers; centers.resize(num_pairs); for (size_t i = 0; i < num_pairs; ++i) { const cv::Mat &pose_3d = all_scored_poses[i].first; size_t num_joints = pose_3d.rows; - cv::Point3d center(0, 0, 0); + cv::Point3f center(0, 0, 0); size_t num_valid = 0; for (size_t j = 0; j < num_joints; ++j) { @@ -1193,20 +1193,21 @@ std::vector>> TriangulatorInte // Calculate Groups // defined as a tuple of center, pose, and all-pairs-indices of members - std::vector>> groups; + std::vector>> groups; + std::vector> per_group_visible_counts; for (size_t i = 0; i < num_pairs; ++i) { const cv::Mat &pose_3d = all_scored_poses[i].first; size_t num_joints = pose_3d.rows; - const cv::Point3d ¢er = centers[i]; + const cv::Point3f ¢er = centers[i]; float best_dist = std::numeric_limits::infinity(); int best_group = -1; for (size_t j = 0; j < groups.size(); ++j) { auto &group = groups[j]; - cv::Point3d &group_center = std::get<0>(group); + cv::Point3f &group_center = std::get<0>(group); // Check if the center is close enough float dx = group_center.x - center.x; @@ -1258,12 +1259,24 @@ std::vector>> TriangulatorInte // Create a new group std::vector new_indices{static_cast(i)}; groups.emplace_back(center, pose_3d.clone(), std::move(new_indices)); + + // Update per joint counts + std::vector new_valid_joint_counts(num_joints, 0); + for (size_t row = 0; row < num_joints; ++row) + { + const float *pose_3d_ptr = pose_3d.ptr(row); + if (pose_3d_ptr[3] > min_score) + { + new_valid_joint_counts[row] = 1; + } + } + per_group_visible_counts.push_back(std::move(new_valid_joint_counts)); } else { // Update existing group auto &group = groups[best_group]; - cv::Point3d &group_center = std::get<0>(group); + cv::Point3f &group_center = std::get<0>(group); cv::Mat &group_pose = std::get<1>(group); std::vector &group_indices = std::get<2>(group); @@ -1281,10 +1294,17 @@ std::vector>> TriangulatorInte const float *pose_3d_ptr = pose_3d.ptr(row); float *group_pose_ptr = group_pose.ptr(row); - group_pose_ptr[0] = (group_pose_ptr[0] * n_elems + pose_3d_ptr[0]) * inv_n1; - group_pose_ptr[1] = (group_pose_ptr[1] * n_elems + pose_3d_ptr[1]) * inv_n1; - group_pose_ptr[2] = (group_pose_ptr[2] * n_elems + pose_3d_ptr[2]) * inv_n1; - group_pose_ptr[3] = (group_pose_ptr[3] * n_elems + pose_3d_ptr[3]) * inv_n1; + if (pose_3d_ptr[3] > min_score) + { + float j_elems = static_cast(per_group_visible_counts[best_group][row]); + float inv_j1 = 1.0 / (j_elems + 1.0); + + group_pose_ptr[0] = (group_pose_ptr[0] * j_elems + pose_3d_ptr[0]) * inv_j1; + group_pose_ptr[1] = (group_pose_ptr[1] * j_elems + pose_3d_ptr[1]) * inv_j1; + group_pose_ptr[2] = (group_pose_ptr[2] * j_elems + pose_3d_ptr[2]) * inv_j1; + group_pose_ptr[3] = (group_pose_ptr[3] * j_elems + pose_3d_ptr[3]) * inv_j1; + per_group_visible_counts[best_group][row]++; + } } group_indices.push_back(static_cast(i)); } @@ -1342,7 +1362,7 @@ cv::Mat TriangulatorInternal::merge_group(const std::vector &poses_3d, // Use center as default if the initial pose is empty std::vector jmask(num_joints, 0); - cv::Point3d center(0, 0, 0); + cv::Point3f center(0, 0, 0); int valid_joints = 0; for (int j = 0; j < num_joints; ++j) { diff --git a/spt/triangulator.hpp b/spt/triangulator.hpp index f569da8..2d8fe90 100644 --- a/spt/triangulator.hpp +++ b/spt/triangulator.hpp @@ -98,7 +98,7 @@ private: const std::array, 2> &roomparams, const std::vector> &core_limbs_idx); - std::vector>> calc_grouping( + std::vector>> calc_grouping( const std::vector, std::pair>> &all_pairs, const std::vector> &all_scored_poses, float min_score);