Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
O
opencv
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
opencv
Commits
07778e17
Commit
07778e17
authored
Jan 24, 2014
by
Konstantin Matskevich
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fixes
parent
450ea313
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
33 additions
and
124 deletions
+33
-124
bgfg_segm.cpp
samples/tapi/bgfg_segm.cpp
+7
-7
clahe.cpp
samples/tapi/clahe.cpp
+1
-1
hog.cpp
samples/tapi/hog.cpp
+1
-1
morphology.cpp
samples/tapi/morphology.cpp
+0
-104
squares.cpp
samples/tapi/squares.cpp
+2
-1
surf_matcher.cpp
samples/tapi/surf_matcher.cpp
+22
-10
No files found.
samples/tapi/bgfg_segm.cpp
View file @
07778e17
...
@@ -15,7 +15,7 @@ using namespace cv;
...
@@ -15,7 +15,7 @@ using namespace cv;
int
main
(
int
argc
,
const
char
**
argv
)
int
main
(
int
argc
,
const
char
**
argv
)
{
{
cv
::
CommandLineParser
cmd
(
argc
,
argv
,
CommandLineParser
cmd
(
argc
,
argv
,
"{ c camera | false | use camera }"
"{ c camera | false | use camera }"
"{ f file | 768x576.avi | input video file }"
"{ f file | 768x576.avi | input video file }"
"{ t type | mog | method's type (mog, mog2) }"
"{ t type | mog | method's type (mog, mog2) }"
...
@@ -58,8 +58,8 @@ int main(int argc, const char** argv)
...
@@ -58,8 +58,8 @@ int main(int argc, const char** argv)
cap
>>
frame
;
cap
>>
frame
;
fgimg
.
create
(
frame
.
size
(),
frame
.
type
());
fgimg
.
create
(
frame
.
size
(),
frame
.
type
());
Ptr
<
cv
::
BackgroundSubtractorMOG
>
mog
=
createBackgroundSubtractorMOG
();
Ptr
<
BackgroundSubtractorMOG
>
mog
=
createBackgroundSubtractorMOG
();
cv
::
Ptr
<
cv
::
BackgroundSubtractorMOG2
>
mog2
=
createBackgroundSubtractorMOG2
();
Ptr
<
BackgroundSubtractorMOG2
>
mog2
=
createBackgroundSubtractorMOG2
();
switch
(
m
)
switch
(
m
)
{
{
...
@@ -80,7 +80,7 @@ int main(int argc, const char** argv)
...
@@ -80,7 +80,7 @@ int main(int argc, const char** argv)
if
(
frame
.
empty
())
if
(
frame
.
empty
())
break
;
break
;
int64
start
=
cv
::
getTickCount
();
int64
start
=
getTickCount
();
//update the model
//update the model
switch
(
m
)
switch
(
m
)
...
@@ -94,7 +94,7 @@ int main(int argc, const char** argv)
...
@@ -94,7 +94,7 @@ int main(int argc, const char** argv)
break
;
break
;
}
}
double
fps
=
cv
::
getTickFrequency
()
/
(
cv
::
getTickCount
()
-
start
);
double
fps
=
getTickFrequency
()
/
(
getTickCount
()
-
start
);
std
::
cout
<<
"FPS : "
<<
fps
<<
std
::
endl
;
std
::
cout
<<
"FPS : "
<<
fps
<<
std
::
endl
;
std
::
cout
<<
fgimg
.
size
()
<<
std
::
endl
;
std
::
cout
<<
fgimg
.
size
()
<<
std
::
endl
;
fgimg
.
setTo
(
Scalar
::
all
(
0
));
fgimg
.
setTo
(
Scalar
::
all
(
0
));
...
@@ -113,8 +113,8 @@ int main(int argc, const char** argv)
...
@@ -113,8 +113,8 @@ int main(int argc, const char** argv)
break
;
break
;
case
'm'
:
case
'm'
:
case
'M'
:
case
'M'
:
ocl
::
setUseOpenCL
(
!
cv
::
ocl
::
useOpenCL
());
ocl
::
setUseOpenCL
(
!
ocl
::
useOpenCL
());
cout
<<
"Switched to "
<<
(
ocl
::
useOpenCL
()
?
"OpenCL"
:
"CPU"
)
<<
" mode
\n
"
;
cout
<<
"Switched to "
<<
(
ocl
::
useOpenCL
()
?
"OpenCL
enabled
"
:
"CPU"
)
<<
" mode
\n
"
;
break
;
break
;
}
}
}
}
...
...
samples/tapi/clahe.cpp
View file @
07778e17
...
@@ -100,7 +100,7 @@ int main(int argc, char** argv)
...
@@ -100,7 +100,7 @@ int main(int argc, char** argv)
else
if
(
key
==
'm'
)
else
if
(
key
==
'm'
)
{
{
ocl
::
setUseOpenCL
(
!
cv
::
ocl
::
useOpenCL
());
ocl
::
setUseOpenCL
(
!
cv
::
ocl
::
useOpenCL
());
cout
<<
"Switched to "
<<
(
ocl
::
useOpenCL
()
?
"OpenCL"
:
"CPU"
)
<<
" mode
\n
"
;
cout
<<
"Switched to "
<<
(
ocl
::
useOpenCL
()
?
"OpenCL
enabled
"
:
"CPU"
)
<<
" mode
\n
"
;
}
}
}
}
return
EXIT_SUCCESS
;
return
EXIT_SUCCESS
;
...
...
samples/tapi/hog.cpp
View file @
07778e17
...
@@ -269,7 +269,7 @@ void App::handleKey(char key)
...
@@ -269,7 +269,7 @@ void App::handleKey(char key)
case
'm'
:
case
'm'
:
case
'M'
:
case
'M'
:
ocl
::
setUseOpenCL
(
!
cv
::
ocl
::
useOpenCL
());
ocl
::
setUseOpenCL
(
!
cv
::
ocl
::
useOpenCL
());
cout
<<
"Switched to "
<<
(
ocl
::
useOpenCL
()
?
"OpenCL"
:
"CPU"
)
<<
" mode
\n
"
;
cout
<<
"Switched to "
<<
(
ocl
::
useOpenCL
()
?
"OpenCL
enabled
"
:
"CPU"
)
<<
" mode
\n
"
;
break
;
break
;
case
'g'
:
case
'g'
:
case
'G'
:
case
'G'
:
...
...
samples/tapi/morphology.cpp
deleted
100644 → 0
View file @
450ea313
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/highgui/highgui.hpp"
#include <stdlib.h>
#include <stdio.h>
#include "opencv2/core/ocl.hpp"
using
namespace
cv
;
static
void
help
()
{
printf
(
"
\n
Show off image morphology: erosion, dialation, open and close
\n
"
"Call:
\n
morphology2 [image]
\n
"
"This program also shows use of rect, elipse and cross kernels
\n\n
"
);
printf
(
"Hot keys:
\n
"
"
\t
ESC - quit the program
\n
"
"
\t
r - use rectangle structuring element
\n
"
"
\t
e - use elliptic structuring element
\n
"
"
\t
c - use cross-shaped structuring element
\n
"
"
\t
SPACE - loop through all the options
\n
"
"
\t
m - switch openCL mode support
\n
"
);
}
UMat
src
,
dst
;
int
element_shape
=
MORPH_RECT
;
//the address of variable which receives trackbar position update
int
max_iters
=
10
;
int
open_close_pos
=
0
;
int
erode_dilate_pos
=
0
;
// callback function for open/close trackbar
static
void
OpenClose
(
int
,
void
*
)
{
int
n
=
open_close_pos
-
max_iters
;
int
an
=
n
>
0
?
n
:
-
n
;
Mat
element
=
getStructuringElement
(
element_shape
,
Size
(
an
*
2
+
1
,
an
*
2
+
1
),
Point
(
an
,
an
)
);
if
(
n
<
0
)
morphologyEx
(
src
,
dst
,
MORPH_OPEN
,
element
);
else
morphologyEx
(
src
,
dst
,
MORPH_CLOSE
,
element
);
imshow
(
"Open/Close"
,
dst
);
}
// callback function for erode/dilate trackbar
static
void
ErodeDilate
(
int
,
void
*
)
{
int
n
=
erode_dilate_pos
-
max_iters
;
int
an
=
n
>
0
?
n
:
-
n
;
Mat
element
=
getStructuringElement
(
element_shape
,
Size
(
an
*
2
+
1
,
an
*
2
+
1
),
Point
(
an
,
an
)
);
if
(
n
<
0
)
erode
(
src
,
dst
,
element
);
else
dilate
(
src
,
dst
,
element
);
imshow
(
"Erode/Dilate"
,
dst
);
}
int
main
(
int
argc
,
char
**
argv
)
{
char
*
filename
=
argc
==
2
?
argv
[
1
]
:
(
char
*
)
"baboon.jpg"
;
imread
(
filename
,
1
).
copyTo
(
src
);
if
(
src
.
u
==
0
)
return
-
1
;
help
();
//create windows for output images
namedWindow
(
"Open/Close"
,
1
);
namedWindow
(
"Erode/Dilate"
,
1
);
open_close_pos
=
erode_dilate_pos
=
max_iters
;
createTrackbar
(
"iterations"
,
"Open/Close"
,
&
open_close_pos
,
max_iters
*
2
+
1
,
OpenClose
);
createTrackbar
(
"iterations"
,
"Erode/Dilate"
,
&
erode_dilate_pos
,
max_iters
*
2
+
1
,
ErodeDilate
);
for
(;;)
{
int
c
;
OpenClose
(
open_close_pos
,
0
);
ErodeDilate
(
erode_dilate_pos
,
0
);
c
=
waitKey
(
0
);
if
(
(
char
)
c
==
27
)
break
;
if
(
(
char
)
c
==
'e'
)
element_shape
=
MORPH_ELLIPSE
;
else
if
(
(
char
)
c
==
'r'
)
element_shape
=
MORPH_RECT
;
else
if
(
(
char
)
c
==
'c'
)
element_shape
=
MORPH_CROSS
;
else
if
(
(
char
)
c
==
' '
)
element_shape
=
(
element_shape
+
1
)
%
3
;
else
if
(
(
char
)
c
==
'm'
)
{
cv
::
ocl
::
setUseOpenCL
(
!
cv
::
ocl
::
useOpenCL
());
printf
(
"OpenCL is %s
\n
"
,
ocl
::
useOpenCL
()
?
"enabled"
:
"disabled"
);
}
}
return
0
;
}
samples/tapi/squares.cpp
View file @
07778e17
...
@@ -140,7 +140,7 @@ static UMat drawSquaresBoth( const UMat& image,
...
@@ -140,7 +140,7 @@ static UMat drawSquaresBoth( const UMat& image,
int
main
(
int
argc
,
char
**
argv
)
int
main
(
int
argc
,
char
**
argv
)
{
{
const
char
*
keys
=
const
char
*
keys
=
"{ i input |
| specify input image }"
"{ i input |
pic1.png
| specify input image }"
"{ o output | squares_output.jpg | specify output save path}"
"{ o output | squares_output.jpg | specify output save path}"
"{ h help | false | print help message }"
"{ h help | false | print help message }"
"{ m cpu_mode | false | run without OpenCL }"
;
"{ m cpu_mode | false | run without OpenCL }"
;
...
@@ -172,6 +172,7 @@ int main(int argc, char** argv)
...
@@ -172,6 +172,7 @@ int main(int argc, char** argv)
if
(
image
.
empty
()
)
if
(
image
.
empty
()
)
{
{
cout
<<
"Couldn't load "
<<
inputName
<<
endl
;
cout
<<
"Couldn't load "
<<
inputName
<<
endl
;
cmd
.
printMessage
();
return
EXIT_FAILURE
;
return
EXIT_FAILURE
;
}
}
...
...
samples/tapi/surf_matcher.cpp
View file @
07778e17
...
@@ -30,7 +30,7 @@ static void workEnd()
...
@@ -30,7 +30,7 @@ static void workEnd()
static
double
getTime
()
static
double
getTime
()
{
{
return
work_end
/
((
double
)
getTickFrequency
()
*
1000.
)
;
return
work_end
/
((
double
)
getTickFrequency
()
)
*
1000.
;
}
}
template
<
class
KPDetector
>
template
<
class
KPDetector
>
...
@@ -136,11 +136,11 @@ static Mat drawGoodMatches(
...
@@ -136,11 +136,11 @@ static Mat drawGoodMatches(
int
main
(
int
argc
,
char
*
argv
[])
int
main
(
int
argc
,
char
*
argv
[])
{
{
const
char
*
keys
=
const
char
*
keys
=
"{ h help | false | print help message }"
"{ h help | false
| print help message }"
"{ l left |
| specify left image }"
"{ l left |
box.png
| specify left image }"
"{ r right |
| specify right image }"
"{ r right |
box_in_scene.png
| specify right image }"
"{ o output | SURF_output.jpg | specify output save path }"
"{ o output | SURF_output.jpg
| specify output save path }"
"{ m cpu_mode | false | run without OpenCL }"
;
"{ m cpu_mode | false
| run without OpenCL }"
;
CommandLineParser
cmd
(
argc
,
argv
,
keys
);
CommandLineParser
cmd
(
argc
,
argv
,
keys
);
if
(
cmd
.
has
(
"help"
))
if
(
cmd
.
has
(
"help"
))
...
@@ -160,11 +160,23 @@ int main(int argc, char* argv[])
...
@@ -160,11 +160,23 @@ int main(int argc, char* argv[])
std
::
string
outpath
=
cmd
.
get
<
std
::
string
>
(
"o"
);
std
::
string
outpath
=
cmd
.
get
<
std
::
string
>
(
"o"
);
imread
(
cmd
.
get
<
std
::
string
>
(
"l"
),
IMREAD_GRAYSCALE
).
copyTo
(
img1
);
std
::
string
leftName
=
cmd
.
get
<
std
::
string
>
(
"l"
);
CV_Assert
(
!
img1
.
empty
());
imread
(
leftName
,
IMREAD_GRAYSCALE
).
copyTo
(
img1
);
if
(
img1
.
empty
())
{
std
::
cout
<<
"Couldn't load "
<<
leftName
<<
std
::
endl
;
cmd
.
printMessage
();
return
EXIT_FAILURE
;
}
imread
(
cmd
.
get
<
std
::
string
>
(
"r"
),
IMREAD_GRAYSCALE
).
copyTo
(
img2
);
std
::
string
rightName
=
cmd
.
get
<
std
::
string
>
(
"r"
);
CV_Assert
(
!
img2
.
empty
());
imread
(
rightName
,
IMREAD_GRAYSCALE
).
copyTo
(
img2
);
if
(
img2
.
empty
())
{
std
::
cout
<<
"Couldn't load "
<<
rightName
<<
std
::
endl
;
cmd
.
printMessage
();
return
EXIT_FAILURE
;
}
double
surf_time
=
0.
;
double
surf_time
=
0.
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment