diff --git a/openbr/plugins/mask.cpp b/openbr/plugins/mask.cpp index 81fa8fb..3019934 100644 --- a/openbr/plugins/mask.cpp +++ b/openbr/plugins/mask.cpp @@ -180,6 +180,26 @@ class LargestConvexAreaTransform : public UntrainableTransform BR_REGISTER(Transform, LargestConvexAreaTransform) +/*! + * \ingroup transforms + * \brief Applies a mask from the metadata. + * \author Austin Blanton \cite imaus10 + */ +class ApplyMaskTransform : public UntrainableTransform +{ + Q_OBJECT + + void project(const Template &src, Template &dst) const + { + if (src.file.contains("Mask")) + src.m().copyTo(dst, src.file.get("Mask")); + else + dst = src; + } +}; + +BR_REGISTER(Transform, ApplyMaskTransform) + } // namespace br #include "mask.moc"