diff --git a/openbr/plugins/imgproc/skinmask.cpp b/openbr/plugins/imgproc/skinmask.cpp deleted file mode 100644 index e9d65d3..0000000 --- a/openbr/plugins/imgproc/skinmask.cpp +++ /dev/null @@ -1,60 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright 2012 The MITRE Corporation * - * * - * Licensed under the Apache License, Version 2.0 (the "License"); * - * you may not use this file except in compliance with the License. * - * You may obtain a copy of the License at * - * * - * http://www.apache.org/licenses/LICENSE-2.0 * - * * - * Unless required by applicable law or agreed to in writing, software * - * distributed under the License is distributed on an "AS IS" BASIS, * - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * - * See the License for the specific language governing permissions and * - * limitations under the License. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -#include - -#include - -using namespace cv; - -namespace br -{ - -/*! - * \ingroup transforms - * \brief Make a mask over skin in an image - * \br_link http://worldofcameras.wordpress.com/tag/skin-detection-opencv/ - * \author Josh Klontz \cite jklontz - */ -class SkinMaskTransform : public UntrainableTransform -{ - Q_OBJECT - - void project(const Template &src, Template &dst) const - { - Mat m; - cvtColor(src, m, COLOR_BGR2YCrCb); - std::vector mv; - split(m, mv); - Mat mask = Mat(m.rows, m.cols, CV_8UC1); - - for (int i=0; i(i,j); - int Cb =mv[2].at(i,j); - mask.at(i, j) = (Cr>130 && Cr<170) && (Cb>70 && Cb<125) ? 255 : 0; - } - } - - dst = mask; - } -}; - -BR_REGISTER(Transform, SkinMaskTransform) - -} // namespace br - -#include "imgproc/skinmask.moc"