From d022425a57b4ff7c8bb3d8cb8c0af343276307b7 Mon Sep 17 00:00:00 2001 From: Josh Klontz Date: Tue, 15 Apr 2014 10:21:47 -0400 Subject: [PATCH] added ExtractMetadataTransform --- openbr/plugins/misc.cpp | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+), 0 deletions(-) diff --git a/openbr/plugins/misc.cpp b/openbr/plugins/misc.cpp index 37f8896..d8d7c14 100644 --- a/openbr/plugins/misc.cpp +++ b/openbr/plugins/misc.cpp @@ -366,6 +366,29 @@ BR_REGISTER(Transform, RegexPropertyTransform) /*! * \ingroup transforms + * \brief Create matrix from metadata values. + * \author Josh Klontz \cite jklontz + */ +class ExtractMetadataTransform : public UntrainableMetaTransform +{ + Q_OBJECT + Q_PROPERTY(QStringList keys READ get_keys WRITE set_keys RESET reset_keys STORED false) + BR_PROPERTY(QStringList, keys, QStringList()) + + void project(const Template &src, Template &dst) const + { + dst.file = src.file; + QList values; + foreach (const QString &key, keys) + values.append(src.file.get(key)); + dst.append(OpenCVUtils::toMat(values, 1)); + } +}; + +BR_REGISTER(Transform, ExtractMetadataTransform) + +/*! + * \ingroup transforms * \brief Store the last matrix of the input template as a metadata key with input property name. * \author Charles Otto \cite caotto */ -- libgit2 0.21.4