Skip to content

Commit ad4634e

Browse files
author
Kaspar Schmid
committed
added new algorithms, fixed saving serialization bug
1 parent 5b50ce9 commit ad4634e

23 files changed

+1376
-6
lines changed

IPL/include/IPL_processes.h

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,4 +90,11 @@
9090

9191
#include "IPLLabelBlobs.h"
9292

93+
94+
#include "IPLFloodFill.h";
95+
#include "IPLAccumulate.h";
96+
#include "IPLHoughLines.h";
97+
#include "IPLMatchTemplate.h";
98+
#include "IPLGoodFeaturesToTrack.h";
99+
93100
#endif // IPL_H
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
//#############################################################################
2+
//
3+
// This file is part of ImagePlay.
4+
//
5+
// ImagePlay is free software: you can redistribute it and/or modify
6+
// it under the terms of the GNU General Public License as published by
7+
// the Free Software Foundation, either version 3 of the License, or
8+
// (at your option) any later version.
9+
//
10+
// ImagePlay is distributed in the hope that it will be useful,
11+
// but WITHOUT ANY WARRANTY; without even the implied warranty of
12+
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13+
// GNU General Public License for more details.
14+
//
15+
// You should have received a copy of the GNU General Public License
16+
// along with ImagePlay. If not, see <http://www.gnu.org/licenses/>.
17+
//
18+
//#############################################################################
19+
20+
#ifndef IPLACCUMULATE_H
21+
#define IPLACCUMULATE_H
22+
23+
#include "IPL_global.h"
24+
#include "IPLProcess.h"
25+
#include "IPLMatrix.h"
26+
#include "IPLOrientedImage.h"
27+
28+
#include <string>
29+
#include <deque>
30+
31+
#include "opencv2/core/core.hpp"
32+
#include "opencv2/imgproc/imgproc.hpp"
33+
#include "opencv2/highgui/highgui.hpp"
34+
35+
/**
36+
* @brief The IPLAccumulate class
37+
*/
38+
class IPLSHARED_EXPORT IPLAccumulate : public IPLClonableProcess<IPLAccumulate>
39+
{
40+
public:
41+
IPLAccumulate() : IPLClonableProcess() { init(); }
42+
~IPLAccumulate() { destroy(); }
43+
44+
void init ();
45+
void destroy ();
46+
bool processInputData (IPLImage*, int, bool useOpenCV);
47+
IPLData* getResultData (int);
48+
49+
protected:
50+
IPLImage* _result;
51+
};
52+
53+
#endif // IPLACCUMULATE_H
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
//#############################################################################
2+
//
3+
// This file is part of ImagePlay.
4+
//
5+
// ImagePlay is free software: you can redistribute it and/or modify
6+
// it under the terms of the GNU General Public License as published by
7+
// the Free Software Foundation, either version 3 of the License, or
8+
// (at your option) any later version.
9+
//
10+
// ImagePlay is distributed in the hope that it will be useful,
11+
// but WITHOUT ANY WARRANTY; without even the implied warranty of
12+
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13+
// GNU General Public License for more details.
14+
//
15+
// You should have received a copy of the GNU General Public License
16+
// along with ImagePlay. If not, see <http://www.gnu.org/licenses/>.
17+
//
18+
//#############################################################################
19+
20+
#ifndef IPLFLOODFILL_H
21+
#define IPLFLOODFILL_H
22+
23+
#include "IPL_global.h"
24+
#include "IPLProcess.h"
25+
#include "IPLMatrix.h"
26+
#include "IPLOrientedImage.h"
27+
28+
#include <string>
29+
#include <deque>
30+
31+
#include "opencv2/core/core.hpp"
32+
#include "opencv2/imgproc/imgproc.hpp"
33+
#include "opencv2/highgui/highgui.hpp"
34+
35+
/**
36+
* @brief The IPLFloodFill class
37+
*/
38+
class IPLSHARED_EXPORT IPLFloodFill : public IPLClonableProcess<IPLFloodFill>
39+
{
40+
public:
41+
IPLFloodFill() : IPLClonableProcess() { init(); }
42+
~IPLFloodFill() { destroy(); }
43+
44+
void init ();
45+
void destroy ();
46+
bool processInputData (IPLImage*, int, bool useOpenCV);
47+
IPLData* getResultData (int);
48+
49+
protected:
50+
IPLImage* _result;
51+
IPLImage* _corners;
52+
};
53+
54+
#endif // IPLFLOODFILL_H
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
//#############################################################################
2+
//
3+
// This file is part of ImagePlay.
4+
//
5+
// ImagePlay is free software: you can redistribute it and/or modify
6+
// it under the terms of the GNU General Public License as published by
7+
// the Free Software Foundation, either version 3 of the License, or
8+
// (at your option) any later version.
9+
//
10+
// ImagePlay is distributed in the hope that it will be useful,
11+
// but WITHOUT ANY WARRANTY; without even the implied warranty of
12+
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13+
// GNU General Public License for more details.
14+
//
15+
// You should have received a copy of the GNU General Public License
16+
// along with ImagePlay. If not, see <http://www.gnu.org/licenses/>.
17+
//
18+
//#############################################################################
19+
20+
#ifndef IPLGOODFEATURESTOTRACK_H
21+
#define IPLGOODFEATURESTOTRACK_H
22+
23+
#include "IPL_global.h"
24+
#include "IPLProcess.h"
25+
#include "IPLMatrix.h"
26+
#include "IPLOrientedImage.h"
27+
28+
#include <string>
29+
#include <deque>
30+
31+
#include "opencv2/core/core.hpp"
32+
#include "opencv2/imgproc/imgproc.hpp"
33+
#include "opencv2/highgui/highgui.hpp"
34+
35+
/**
36+
* @brief The IPLGoodFeaturesToTrack class
37+
*/
38+
class IPLSHARED_EXPORT IPLGoodFeaturesToTrack : public IPLClonableProcess<IPLGoodFeaturesToTrack>
39+
{
40+
public:
41+
IPLGoodFeaturesToTrack() : IPLClonableProcess() { init(); }
42+
~IPLGoodFeaturesToTrack() { destroy(); }
43+
44+
void init ();
45+
void destroy ();
46+
bool processInputData (IPLImage*, int, bool useOpenCV);
47+
IPLData* getResultData (int);
48+
49+
protected:
50+
IPLImage* _result;
51+
IPLImage* _overlay;
52+
};
53+
54+
#endif // IPLGOODFEATURESTOTRACK_H
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
//#############################################################################
2+
//
3+
// This file is part of ImagePlay.
4+
//
5+
// ImagePlay is free software: you can redistribute it and/or modify
6+
// it under the terms of the GNU General Public License as published by
7+
// the Free Software Foundation, either version 3 of the License, or
8+
// (at your option) any later version.
9+
//
10+
// ImagePlay is distributed in the hope that it will be useful,
11+
// but WITHOUT ANY WARRANTY; without even the implied warranty of
12+
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13+
// GNU General Public License for more details.
14+
//
15+
// You should have received a copy of the GNU General Public License
16+
// along with ImagePlay. If not, see <http://www.gnu.org/licenses/>.
17+
//
18+
//#############################################################################
19+
20+
#ifndef IPLHOUGHLINES_H
21+
#define IPLHOUGHLINES_H
22+
23+
#include "IPL_global.h"
24+
#include "IPLProcess.h"
25+
#include "IPLMatrix.h"
26+
#include "IPLOrientedImage.h"
27+
28+
#include <string>
29+
#include <deque>
30+
31+
#include "opencv2/core/core.hpp"
32+
#include "opencv2/imgproc/imgproc.hpp"
33+
#include "opencv2/highgui/highgui.hpp"
34+
35+
/**
36+
* @brief The IPLHoughLines class
37+
*/
38+
class IPLSHARED_EXPORT IPLHoughLines : public IPLClonableProcess<IPLHoughLines>
39+
{
40+
public:
41+
IPLHoughLines() : IPLClonableProcess() { init(); }
42+
~IPLHoughLines() { destroy(); }
43+
44+
void init ();
45+
void destroy ();
46+
bool processInputData (IPLImage*, int, bool useOpenCV);
47+
IPLData* getResultData (int);
48+
49+
protected:
50+
IPLImage* _result;
51+
IPLImage* _overlay;
52+
};
53+
54+
#endif // IPLHOUGHLINES_H
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
//#############################################################################
2+
//
3+
// This file is part of ImagePlay.
4+
//
5+
// ImagePlay is free software: you can redistribute it and/or modify
6+
// it under the terms of the GNU General Public License as published by
7+
// the Free Software Foundation, either version 3 of the License, or
8+
// (at your option) any later version.
9+
//
10+
// ImagePlay is distributed in the hope that it will be useful,
11+
// but WITHOUT ANY WARRANTY; without even the implied warranty of
12+
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13+
// GNU General Public License for more details.
14+
//
15+
// You should have received a copy of the GNU General Public License
16+
// along with ImagePlay. If not, see <http://www.gnu.org/licenses/>.
17+
//
18+
//#############################################################################
19+
20+
#ifndef IPLLAPLACIAN_H
21+
#define IPLLAPLACIAN_H
22+
23+
#include "IPL_global.h"
24+
#include "IPLProcess.h"
25+
#include "IPLMatrix.h"
26+
#include "IPLOrientedImage.h"
27+
28+
#include <string>
29+
#include <deque>
30+
31+
#include "opencv2/core/core.hpp"
32+
#include "opencv2/imgproc/imgproc.hpp"
33+
#include "opencv2/highgui/highgui.hpp"
34+
35+
/**
36+
* @brief The IPLLaplacian class
37+
*/
38+
class IPLSHARED_EXPORT IPLLaplacian : public IPLClonableProcess<IPLLaplacian>
39+
{
40+
public:
41+
IPLLaplacian() : IPLClonableProcess() { init(); }
42+
~IPLLaplacian() { destroy(); }
43+
44+
void init ();
45+
void destroy ();
46+
bool processInputData (IPLImage*, int, bool useOpenCV);
47+
IPLData* getResultData (int);
48+
49+
protected:
50+
IPLImage* _result;
51+
IPLImage* _corners;
52+
};
53+
54+
#endif // IPLLAPLACIAN_H
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
//#############################################################################
2+
//
3+
// This file is part of ImagePlay.
4+
//
5+
// ImagePlay is free software: you can redistribute it and/or modify
6+
// it under the terms of the GNU General Public License as published by
7+
// the Free Software Foundation, either version 3 of the License, or
8+
// (at your option) any later version.
9+
//
10+
// ImagePlay is distributed in the hope that it will be useful,
11+
// but WITHOUT ANY WARRANTY; without even the implied warranty of
12+
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13+
// GNU General Public License for more details.
14+
//
15+
// You should have received a copy of the GNU General Public License
16+
// along with ImagePlay. If not, see <http://www.gnu.org/licenses/>.
17+
//
18+
//#############################################################################
19+
20+
#ifndef IPLMATCHTEMPLATE_H
21+
#define IPLMATCHTEMPLATE_H
22+
23+
#include "IPL_global.h"
24+
#include "IPLProcess.h"
25+
#include "IPLMatrix.h"
26+
#include "IPLOrientedImage.h"
27+
28+
#include <string>
29+
#include <deque>
30+
31+
#include "opencv2/core/core.hpp"
32+
#include "opencv2/imgproc/imgproc.hpp"
33+
#include "opencv2/highgui/highgui.hpp"
34+
35+
/**
36+
* @brief The IPLMatchTemplate class
37+
*/
38+
class IPLSHARED_EXPORT IPLMatchTemplate : public IPLClonableProcess<IPLMatchTemplate>
39+
{
40+
public:
41+
IPLMatchTemplate() : IPLClonableProcess() { init(); }
42+
~IPLMatchTemplate() { destroy(); }
43+
44+
void init ();
45+
void destroy ();
46+
bool processInputData (IPLImage*, int, bool useOpenCV);
47+
IPLData* getResultData (int);
48+
49+
protected:
50+
IPLImage* _result;
51+
IPLImage* _overlay;
52+
};
53+
54+
#endif // IPLMATCHTEMPLATE_H

IPL/include/processes/IPLScharr.h

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
//#############################################################################
2+
//
3+
// This file is part of ImagePlay.
4+
//
5+
// ImagePlay is free software: you can redistribute it and/or modify
6+
// it under the terms of the GNU General Public License as published by
7+
// the Free Software Foundation, either version 3 of the License, or
8+
// (at your option) any later version.
9+
//
10+
// ImagePlay is distributed in the hope that it will be useful,
11+
// but WITHOUT ANY WARRANTY; without even the implied warranty of
12+
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13+
// GNU General Public License for more details.
14+
//
15+
// You should have received a copy of the GNU General Public License
16+
// along with ImagePlay. If not, see <http://www.gnu.org/licenses/>.
17+
//
18+
//#############################################################################
19+
20+
#ifndef IPLSCHARR_H
21+
#define IPLSCHARR_H
22+
23+
#include "IPL_global.h"
24+
#include "IPLProcess.h"
25+
#include "IPLMatrix.h"
26+
#include "IPLOrientedImage.h"
27+
28+
#include <string>
29+
#include <deque>
30+
31+
#include "opencv2/core/core.hpp"
32+
#include "opencv2/imgproc/imgproc.hpp"
33+
#include "opencv2/highgui/highgui.hpp"
34+
35+
/**
36+
* @brief The IPLScharr class
37+
*/
38+
class IPLSHARED_EXPORT IPLScharr : public IPLClonableProcess<IPLScharr>
39+
{
40+
public:
41+
IPLScharr() : IPLClonableProcess() { init(); }
42+
~IPLScharr() { destroy(); }
43+
44+
void init ();
45+
void destroy ();
46+
bool processInputData (IPLImage*, int, bool useOpenCV);
47+
IPLData* getResultData (int);
48+
49+
protected:
50+
IPLImage* _result;
51+
IPLImage* _corners;
52+
};
53+
54+
#endif // IPLSCHARR_H

0 commit comments

Comments
 (0)