diff --git a/openbr/plugins/independent.cpp b/openbr/plugins/independent.cpp index 6d0a5b2..123c979 100644 --- a/openbr/plugins/independent.cpp +++ b/openbr/plugins/independent.cpp @@ -99,6 +99,8 @@ class IndependentTransform : public MetaTransform return independentTransform; } + bool timeVarying() const { return transform->timeVarying(); } + static void _train(Transform *transform, const TemplateList *data) { transform->train(*data); @@ -143,6 +145,27 @@ class IndependentTransform : public MetaTransform dst.append(mats); } + void projectUpdate(const Template &src, Template &dst) + { + dst.file = src.file; + QList mats; + for (int i=0; iprojectUpdate(Template(src.file, src[i]), dst); + mats.append(dst); + dst.clear(); + } + dst.append(mats); + } + + void projectUpdate(const TemplateList &src, TemplateList &dst) + { + dst.reserve(src.size()); + foreach (const Template &t, src) { + dst.append(Template()); + projectUpdate(t, dst.last()); + } + } + void store(QDataStream &stream) const { const int size = transforms.size();