Commit a301132a03ff54af793f1041a0c5bfc80dfaf816

Authored by Josh Klontz
1 parent e39e7e60

forgot to remove these plugins previously

openbr/plugins/gui/drawopticalflow.cpp deleted
1   -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
2   - * Copyright 2012 The MITRE Corporation *
3   - * *
4   - * Licensed under the Apache License, Version 2.0 (the "License"); *
5   - * you may not use this file except in compliance with the License. *
6   - * You may obtain a copy of the License at *
7   - * *
8   - * http://www.apache.org/licenses/LICENSE-2.0 *
9   - * *
10   - * Unless required by applicable law or agreed to in writing, software *
11   - * distributed under the License is distributed on an "AS IS" BASIS, *
12   - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. *
13   - * See the License for the specific language governing permissions and *
14   - * limitations under the License. *
15   - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
16   -
17   -#include <openbr/plugins/openbr_internal.h>
18   -#include <openbr/core/opencvutils.h>
19   -
20   -#include <opencv2/imgproc.hpp>
21   -
22   -using namespace cv;
23   -
24   -namespace br
25   -{
26   -
27   -/*!
28   - * \ingroup transforms
29   - * \brief Draw a line representing the direction and magnitude of optical flow at the specified points.
30   - * \author Austin Blanton \cite imaus10
31   - */
32   -class DrawOpticalFlow : public UntrainableTransform
33   -{
34   - Q_OBJECT
35   - Q_PROPERTY(QString original READ get_original WRITE set_original RESET reset_original STORED false)
36   - BR_PROPERTY(QString, original, "original")
37   -
38   - void project(const Template &src, Template &dst) const
39   - {
40   - const Scalar color(0,255,0);
41   - Mat flow = src.m();
42   - dst = src;
43   - if (!dst.file.contains(original)) qFatal("The original img must be saved in the metadata with SaveMat.");
44   - dst.m() = dst.file.get<Mat>(original);
45   - dst.file.remove(original);
46   - foreach (const Point2f &pt, OpenCVUtils::toPoints(dst.file.points())) {
47   - Point2f dxy = flow.at<Point2f>(pt.y, pt.x);
48   - Point2f newPt(pt.x+dxy.x, pt.y+dxy.y);
49   - line(dst.m(), pt, newPt, color);
50   - }
51   - }
52   -};
53   -
54   -BR_REGISTER(Transform, DrawOpticalFlow)
55   -
56   -} // namespace br
57   -
58   -#include "gui/drawopticalflow.moc"
openbr/plugins/imgproc/sift.cpp deleted
1   -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
2   - * Copyright 2012 The MITRE Corporation *
3   - * *
4   - * Licensed under the Apache License, Version 2.0 (the "License"); *
5   - * you may not use this file except in compliance with the License. *
6   - * You may obtain a copy of the License at *
7   - * *
8   - * http://www.apache.org/licenses/LICENSE-2.0 *
9   - * *
10   - * Unless required by applicable law or agreed to in writing, software *
11   - * distributed under the License is distributed on an "AS IS" BASIS, *
12   - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. *
13   - * See the License for the specific language governing permissions and *
14   - * limitations under the License. *
15   - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
16   -
17   -#include <opencv2/features2d.hpp>
18   -
19   -#include <openbr/plugins/openbr_internal.h>
20   -
21   -using namespace cv;
22   -
23   -namespace br
24   -{
25   -
26   -/*!
27   - * \ingroup transforms
28   - * \brief Specialize wrapper OpenCV SIFT wrapper
29   - * \br_link http://docs.opencv.org/modules/nonfree/doc/feature_detection.html
30   - * \author Josh Klontz \cite jklontz
31   - */
32   -class SIFTDescriptorTransform : public UntrainableTransform
33   -{
34   - Q_OBJECT
35   - Q_PROPERTY(int size READ get_size WRITE set_size RESET reset_size STORED false)
36   - Q_PROPERTY(QList<int> sizes READ get_sizes WRITE set_sizes RESET reset_sizes STORED false)
37   - Q_PROPERTY(int nFeatures READ get_nFeatures WRITE set_nFeatures RESET reset_nFeatures STORED false)
38   - Q_PROPERTY(int nOctaveLayers READ get_nOctaveLayers WRITE set_nOctaveLayers RESET reset_nOctaveLayers STORED false)
39   - Q_PROPERTY(double contrastThreshold READ get_contrastThreshold WRITE set_contrastThreshold RESET reset_contrastThreshold STORED false)
40   - Q_PROPERTY(double edgeThreshold READ get_edgeThreshold WRITE set_edgeThreshold RESET reset_edgeThreshold STORED false)
41   - Q_PROPERTY(double sigma READ get_sigma WRITE set_sigma RESET reset_sigma STORED false)
42   - BR_PROPERTY(int, size, 1)
43   - BR_PROPERTY(QList<int>, sizes, QList<int>())
44   - BR_PROPERTY(int, nFeatures, 0)
45   - BR_PROPERTY(int, nOctaveLayers, 3)
46   - BR_PROPERTY(double, contrastThreshold, 0.04)
47   - BR_PROPERTY(double, edgeThreshold, 10)
48   - BR_PROPERTY(double, sigma, 1.6)
49   -
50   - Ptr<SIFT> sift;
51   -
52   - void init()
53   - {
54   - if (sizes.empty())
55   - sizes.append(size);
56   - sift = SIFT::create(nFeatures, nOctaveLayers, contrastThreshold, edgeThreshold, sigma);
57   - }
58   -
59   - void project(const Template &src, Template &dst) const
60   - {
61   - std::vector<KeyPoint> keyPoints;
62   - foreach (const QPointF &val, src.file.points())
63   - foreach (const int r, sizes)
64   - keyPoints.push_back(KeyPoint(val.x(), val.y(), r));
65   -
66   - Mat m;
67   - sift->detectAndCompute(src.m(), Mat(), keyPoints, m, true);
68   - m.setTo(0, m<0); // SIFT returns large negative values when it goes off the edge of the image.
69   - dst += m;
70   - }
71   -};
72   -
73   -BR_REGISTER(Transform, SIFTDescriptorTransform)
74   -
75   -} // namespace br
76   -
77   -#include "imgproc/sift.moc"
openbr/plugins/video/opticalflow.cpp deleted
1   -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
2   - * Copyright 2012 The MITRE Corporation *
3   - * *
4   - * Licensed under the Apache License, Version 2.0 (the "License"); *
5   - * you may not use this file except in compliance with the License. *
6   - * You may obtain a copy of the License at *
7   - * *
8   - * http://www.apache.org/licenses/LICENSE-2.0 *
9   - * *
10   - * Unless required by applicable law or agreed to in writing, software *
11   - * distributed under the License is distributed on an "AS IS" BASIS, *
12   - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. *
13   - * See the License for the specific language governing permissions and *
14   - * limitations under the License. *
15   - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
16   -
17   -#include <opencv2/video/tracking.hpp>
18   -#include <opencv2/video/background_segm.hpp>
19   -
20   -#include <openbr/plugins/openbr_internal.h>
21   -#include <openbr/core/opencvutils.h>
22   -
23   -using namespace cv;
24   -
25   -namespace br
26   -{
27   -
28   -/*!
29   - * \ingroup transforms
30   - * \brief Gets a one-channel dense optical flow from two images
31   - * \author Austin Blanton \cite imaus10
32   - */
33   -class OpticalFlowTransform : public UntrainableMetaTransform
34   -{
35   - Q_OBJECT
36   - Q_PROPERTY(double pyr_scale READ get_pyr_scale WRITE set_pyr_scale RESET reset_pyr_scale STORED false)
37   - Q_PROPERTY(int levels READ get_levels WRITE set_levels RESET reset_levels STORED false)
38   - Q_PROPERTY(int winsize READ get_winsize WRITE set_winsize RESET reset_winsize STORED false)
39   - Q_PROPERTY(int iterations READ get_iterations WRITE set_iterations RESET reset_iterations STORED false)
40   - Q_PROPERTY(int poly_n READ get_poly_n WRITE set_poly_n RESET reset_poly_n STORED false)
41   - Q_PROPERTY(double poly_sigma READ get_poly_sigma WRITE set_poly_sigma RESET reset_poly_sigma STORED false)
42   - Q_PROPERTY(int flags READ get_flags WRITE set_flags RESET reset_flags STORED false)
43   - Q_PROPERTY(bool useMagnitude READ get_useMagnitude WRITE set_useMagnitude RESET reset_useMagnitude STORED false)
44   - // these defaults are optimized for KTH
45   - BR_PROPERTY(double, pyr_scale, 0.1)
46   - BR_PROPERTY(int, levels, 1)
47   - BR_PROPERTY(int, winsize, 5)
48   - BR_PROPERTY(int, iterations, 10)
49   - BR_PROPERTY(int, poly_n, 7)
50   - BR_PROPERTY(double, poly_sigma, 1.1)
51   - BR_PROPERTY(int, flags, 0)
52   - BR_PROPERTY(bool, useMagnitude, true)
53   -
54   - void project(const Template &src, Template &dst) const
55   - {
56   - // get the two images put there by AggregateFrames
57   - if (src.size() != 2) qFatal("Optical Flow requires two images.");
58   - Mat prevImg = src[0], nextImg = src[1], flow;
59   - if (src[0].channels() != 1) OpenCVUtils::cvtGray(src[0], prevImg);
60   - if (src[1].channels() != 1) OpenCVUtils::cvtGray(src[1], nextImg);
61   - calcOpticalFlowFarneback(prevImg, nextImg, flow, pyr_scale, levels, winsize, iterations, poly_n, poly_sigma, flags);
62   -
63   - if (useMagnitude) {
64   - // the result is two channels
65   - Mat flowOneCh;
66   - std::vector<Mat> channels(2);
67   - split(flow, channels);
68   - magnitude(channels[0], channels[1], flowOneCh);
69   - dst += flowOneCh;
70   - } else {
71   - dst += flow;
72   - }
73   - dst.file = src.file;
74   - }
75   -};
76   -
77   -BR_REGISTER(Transform, OpticalFlowTransform)
78   -
79   -} // namespace br
80   -
81   -#include "video/opticalflow.moc"