diff --git a/src/taggingbackends/data/labels.py b/src/taggingbackends/data/labels.py index d6e632a3508c5f2157ad28642b62fb76eb314be2..b8f63be9ba56107440c27d51d26d3d17b7018bd2 100644 --- a/src/taggingbackends/data/labels.py +++ b/src/taggingbackends/data/labels.py @@ -18,6 +18,11 @@ class Labels: @property def tracking(self): if not all([isinstance(dep, dict) for dep in self._tracking]): + if 1 < len(self._tracking): + # if any labels file is found, assume the other files are its + # data dependencies, and exclude the labels file + self._tracking = [dep for dep in self._tracking + if not dep.name.endswith(".labels")] self._tracking = [{"filename": dep.name, "sha1": self._checksum(dep)} \ for dep in self._tracking] return self._tracking diff --git a/src/taggingbackends/features/skeleton.py b/src/taggingbackends/features/skeleton.py index e1421c8fca8cfb6f1ae36a5dc9dbf9cb2da8342e..d52f458910605b3d919fa3128149f6c331bb41f2 100644 --- a/src/taggingbackends/features/skeleton.py +++ b/src/taggingbackends/features/skeleton.py @@ -8,7 +8,7 @@ def get_5point_spines(spine): arrays. """ if isinstance(spine, list): - return [get_5point_spines(s) for s in spine] + return np.vstack([get_5point_spines(s) for s in spine]) elif spine.shape[1] == 22: return np.hstack([spine[:,0:2], (spine[:,4:6]+spine[:,6:8])/2, spine[:,10:12], (spine[:,14:16]+spine[:,16:18])/2, spine[:,20:22]])