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
94b97b7a
Commit
94b97b7a
authored
Oct 08, 2012
by
Vadim Pisarevsky
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
partially recovered binary compatibility (ticket #2415)
parent
25a9b0a2
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
108 additions
and
53 deletions
+108
-53
detection_based_tracker.hpp
...ntrib/include/opencv2/contrib/detection_based_tracker.hpp
+5
-2
detection_based_tracker.cpp
modules/contrib/src/detection_based_tracker.cpp
+0
-0
core.hpp
modules/core/include/opencv2/core/core.hpp
+11
-5
opengl_interop.hpp
modules/core/include/opencv2/core/opengl_interop.hpp
+1
-1
command_line_parser.cpp
modules/core/src/command_line_parser.cpp
+68
-38
convert.cpp
modules/core/src/convert.cpp
+10
-0
drawing.cpp
modules/core/src/drawing.cpp
+1
-1
opengl_interop.cpp
modules/core/src/opengl_interop.cpp
+2
-2
imgproc.hpp
modules/imgproc/include/opencv2/imgproc/imgproc.hpp
+3
-1
phasecorr.cpp
modules/imgproc/src/phasecorr.cpp
+4
-0
deblurring.hpp
modules/videostab/include/opencv2/videostab/deblurring.hpp
+3
-3
No files found.
modules/contrib/include/opencv2/contrib/detection_based_tracker.hpp
View file @
94b97b7a
...
...
@@ -7,8 +7,6 @@
#include <vector>
namespace
cv
{
class
DetectionBasedTracker
{
public
:
...
...
@@ -169,5 +167,10 @@ class DetectionBasedTracker
cv
::
Rect
calcTrackedObjectPositionToShow
(
int
i
,
ObjectStatus
&
status
)
const
;
void
detectInRegion
(
const
cv
::
Mat
&
img
,
const
cv
::
Rect
&
r
,
std
::
vector
<
cv
::
Rect
>&
detectedObjectsInRegions
);
};
namespace
cv
{
typedef
::
DetectionBasedTracker
DetectionBasedTracker
;
}
//end of cv namespace
#endif
modules/contrib/src/detection_based_tracker.cpp
View file @
94b97b7a
This diff is collapsed.
Click to expand it.
modules/core/include/opencv2/core/core.hpp
View file @
94b97b7a
...
...
@@ -2124,11 +2124,15 @@ CV_EXPORTS_W void reduce(InputArray src, OutputArray dst, int dim, int rtype, in
//! makes multi-channel array out of several single-channel arrays
CV_EXPORTS
void
merge
(
const
Mat
*
mv
,
size_t
count
,
OutputArray
dst
);
CV_EXPORTS
void
merge
(
const
vector
<
Mat
>&
mv
,
OutputArray
dst
);
//! makes multi-channel array out of several single-channel arrays
CV_EXPORTS_W
void
merge
(
InputArrayOfArrays
mv
,
OutputArray
dst
);
//! copies each plane of a multi-channel array to a dedicated array
CV_EXPORTS
void
split
(
const
Mat
&
src
,
Mat
*
mvbegin
);
CV_EXPORTS
void
split
(
const
Mat
&
src
,
vector
<
Mat
>&
mv
);
//! copies each plane of a multi-channel array to a dedicated array
CV_EXPORTS_W
void
split
(
InputArray
m
,
OutputArrayOfArrays
mv
);
...
...
@@ -2547,7 +2551,7 @@ CV_EXPORTS_W void fillPoly(InputOutputArray img, InputArrayOfArrays pts,
Point
offset
=
Point
()
);
//! draws one or more polygonal curves
CV_EXPORTS
void
polylines
(
Mat
&
img
,
const
Point
*
const
*
pts
,
const
int
*
npts
,
CV_EXPORTS
void
polylines
(
Mat
&
img
,
const
Point
**
pts
,
const
int
*
npts
,
int
ncontours
,
bool
isClosed
,
const
Scalar
&
color
,
int
thickness
=
1
,
int
lineType
=
8
,
int
shift
=
0
);
...
...
@@ -3995,7 +3999,7 @@ public:
//! closes the file and releases all the memory buffers
CV_WRAP
virtual
void
release
();
//! closes the file, releases all the memory buffers and returns the text string
CV_WRAP
virtual
string
releaseAndGetString
();
CV_WRAP
string
releaseAndGetString
();
//! returns the first element of the top-level mapping
CV_WRAP
FileNode
getFirstTopLevelNode
()
const
;
...
...
@@ -4538,6 +4542,7 @@ template<> struct ParamType<uint64>
class
CV_EXPORTS
CommandLineParser
{
public
:
CommandLineParser
(
int
argc
,
const
char
*
const
argv
[],
const
char
*
keys
);
CommandLineParser
(
int
argc
,
const
char
*
const
argv
[],
const
string
&
keys
);
CommandLineParser
(
const
CommandLineParser
&
parser
);
CommandLineParser
&
operator
=
(
const
CommandLineParser
&
parser
);
...
...
@@ -4559,17 +4564,18 @@ public:
getByIndex
(
index
,
space_delete
,
ParamType
<
T
>::
type
,
(
void
*
)
&
val
);
return
val
;
}
bool
has
(
const
string
&
name
)
const
;
bool
has
(
const
string
&
name
);
bool
check
()
const
;
void
about
(
const
string
&
message
);
void
printMessage
()
const
;
void
printErrors
()
const
;
void
printParams
();
protected
:
string
getString
(
const
string
&
name
);
void
getByName
(
const
string
&
name
,
bool
space_delete
,
int
type
,
void
*
dst
)
const
;
void
getByIndex
(
int
index
,
bool
space_delete
,
int
type
,
void
*
dst
)
const
;
...
...
modules/core/include/opencv2/core/opengl_interop.hpp
View file @
94b97b7a
...
...
@@ -221,7 +221,7 @@ public:
static
Ptr
<
GlFont
>
get
(
const
std
::
string
&
family
,
int
height
=
12
,
Weight
weight
=
WEIGHT_NORMAL
,
Style
style
=
STYLE_NORMAL
);
void
draw
(
const
char
*
str
,
size_
t
len
)
const
;
void
draw
(
const
char
*
str
,
in
t
len
)
const
;
inline
const
std
::
string
&
family
()
const
{
return
family_
;
}
inline
int
height
()
const
{
return
height_
;
}
...
...
modules/core/src/command_line_parser.cpp
View file @
94b97b7a
...
...
@@ -27,9 +27,12 @@ struct CommandLineParser::Impl
vector
<
CommandLineParserParams
>
data
;
Impl
()
{
refcount
=
1
;
}
Impl
(
int
argc
,
const
char
*
const
argv
[],
const
char
*
keys
);
vector
<
string
>
split_range_string
(
const
string
&
str
,
char
fs
,
char
ss
)
const
;
vector
<
string
>
split_string
(
const
string
&
str
,
char
symbol
=
' '
,
bool
create_empty_item
=
false
)
const
;
string
cat_string
(
const
string
&
str
)
const
;
string
trim_spaces
(
const
string
&
str
)
const
;
void
apply_params
(
const
string
&
key
,
const
string
&
value
);
void
apply_params
(
int
i
,
string
value
);
...
...
@@ -83,26 +86,39 @@ static void from_str(const string& str, int type, void* dst)
}
}
void
CommandLineParser
::
getByName
(
const
string
&
name
,
bool
space_delete
,
int
type
,
void
*
dst
)
const
string
CommandLineParser
::
getString
(
const
string
&
name
)
{
try
for
(
size_t
i
=
0
;
i
<
impl
->
data
.
size
();
i
++
)
{
for
(
size_t
i
=
0
;
i
<
impl
->
data
.
size
();
i
++
)
for
(
size_t
j
=
0
;
j
<
impl
->
data
[
i
].
keys
.
size
();
j
++
)
{
for
(
size_t
j
=
0
;
j
<
impl
->
data
[
i
].
keys
.
size
();
j
++
)
if
(
name
.
compare
(
impl
->
data
[
i
].
keys
[
j
])
==
0
)
{
if
(
name
.
compare
(
impl
->
data
[
i
].
keys
[
j
])
==
0
)
{
string
v
=
impl
->
data
[
i
].
def_value
;
if
(
space_delete
)
v
=
impl
->
cat_string
(
v
);
from_str
(
v
,
type
,
dst
);
return
;
}
string
v
=
impl
->
data
[
i
].
def_value
;
return
v
;
}
}
impl
->
error
=
true
;
impl
->
error_message
+=
"Unknown parametes "
+
name
+
"
\n
"
;
}
return
string
();
}
void
CommandLineParser
::
getByName
(
const
string
&
name
,
bool
space_delete
,
int
type
,
void
*
dst
)
const
{
try
{
string
v
=
((
CommandLineParser
*
)
this
)
->
getString
(
name
);
if
(
v
.
empty
()
)
{
impl
->
error
=
true
;
impl
->
error_message
+=
"Unknown parametes "
+
name
+
"
\n
"
;
}
else
{
if
(
space_delete
)
v
=
impl
->
trim_spaces
(
v
);
from_str
(
v
,
type
,
dst
);
return
;
}
}
catch
(
std
::
exception
&
e
)
{
...
...
@@ -121,7 +137,7 @@ void CommandLineParser::getByIndex(int index, bool space_delete, int type, void*
if
(
impl
->
data
[
i
].
number
==
index
)
{
string
v
=
impl
->
data
[
i
].
def_value
;
if
(
space_delete
==
true
)
v
=
impl
->
cat_string
(
v
);
if
(
space_delete
==
true
)
v
=
impl
->
trim_spaces
(
v
);
from_str
(
v
,
type
,
dst
);
return
;
}
...
...
@@ -154,36 +170,45 @@ static bool cmp_params(const CommandLineParserParams & p1, const CommandLinePars
CommandLineParser
::
CommandLineParser
(
int
argc
,
const
char
*
const
argv
[],
const
string
&
keys
)
{
impl
=
new
Impl
;
impl
->
refcount
=
1
;
impl
=
new
Impl
(
argc
,
argv
,
keys
.
c_str
());
}
CommandLineParser
::
CommandLineParser
(
int
argc
,
const
char
*
const
argv
[],
const
char
*
keys
)
{
impl
=
new
Impl
(
argc
,
argv
,
keys
);
}
CommandLineParser
::
Impl
::
Impl
(
int
argc
,
const
char
*
const
argv
[],
const
char
*
keys
)
{
refcount
=
1
;
// path to application
size_t
pos_s
=
string
(
argv
[
0
]).
find_last_of
(
"/
\\
"
);
if
(
pos_s
==
string
::
npos
)
{
impl
->
path_to_app
=
""
;
impl
->
app_name
=
string
(
argv
[
0
]);
path_to_app
=
""
;
app_name
=
string
(
argv
[
0
]);
}
else
{
impl
->
path_to_app
=
string
(
argv
[
0
]).
substr
(
0
,
pos_s
);
impl
->
app_name
=
string
(
argv
[
0
]).
substr
(
pos_s
+
1
,
string
(
argv
[
0
]).
length
()
-
pos_s
);
path_to_app
=
string
(
argv
[
0
]).
substr
(
0
,
pos_s
);
app_name
=
string
(
argv
[
0
]).
substr
(
pos_s
+
1
,
string
(
argv
[
0
]).
length
()
-
pos_s
);
}
impl
->
error
=
false
;
impl
->
error_message
=
""
;
error
=
false
;
error_message
=
""
;
// parse keys
vector
<
string
>
k
=
impl
->
split_range_string
(
keys
,
'{'
,
'}'
);
vector
<
string
>
k
=
split_range_string
(
keys
,
'{'
,
'}'
);
int
jj
=
0
;
for
(
size_t
i
=
0
;
i
<
k
.
size
();
i
++
)
{
vector
<
string
>
l
=
impl
->
split_string
(
k
[
i
],
'|'
,
true
);
vector
<
string
>
l
=
split_string
(
k
[
i
],
'|'
,
true
);
CommandLineParserParams
p
;
p
.
keys
=
impl
->
split_string
(
l
[
0
]);
p
.
keys
=
split_string
(
l
[
0
]);
p
.
def_value
=
l
[
1
];
p
.
help_message
=
impl
->
cat_string
(
l
[
2
]);
p
.
help_message
=
trim_spaces
(
l
[
2
]);
p
.
number
=
-
1
;
if
(
p
.
keys
[
0
][
0
]
==
'@'
)
{
...
...
@@ -191,7 +216,7 @@ CommandLineParser::CommandLineParser(int argc, const char* const argv[], const s
jj
++
;
}
impl
->
data
.
push_back
(
p
);
data
.
push_back
(
p
);
}
// parse argv
...
...
@@ -202,13 +227,13 @@ CommandLineParser::CommandLineParser(int argc, const char* const argv[], const s
if
(
s
.
find
(
'='
)
!=
string
::
npos
&&
s
.
find
(
'='
)
<
s
.
length
())
{
vector
<
string
>
k_v
=
impl
->
split_string
(
s
,
'='
,
true
);
vector
<
string
>
k_v
=
split_string
(
s
,
'='
,
true
);
for
(
int
h
=
0
;
h
<
2
;
h
++
)
{
if
(
k_v
[
0
][
0
]
==
'-'
)
k_v
[
0
]
=
k_v
[
0
].
substr
(
1
,
k_v
[
0
].
length
()
-
1
);
}
impl
->
apply_params
(
k_v
[
0
],
k_v
[
1
]);
apply_params
(
k_v
[
0
],
k_v
[
1
]);
}
else
if
(
s
.
length
()
>
1
&&
s
[
0
]
==
'-'
)
{
...
...
@@ -217,16 +242,16 @@ CommandLineParser::CommandLineParser(int argc, const char* const argv[], const s
if
(
s
[
0
]
==
'-'
)
s
=
s
.
substr
(
1
,
s
.
length
()
-
1
);
}
impl
->
apply_params
(
s
,
"true"
);
apply_params
(
s
,
"true"
);
}
else
if
(
s
[
0
]
!=
'-'
)
{
impl
->
apply_params
(
jj
,
s
);
apply_params
(
jj
,
s
);
jj
++
;
}
}
impl
->
sort_params
();
sort_params
();
}
...
...
@@ -290,7 +315,7 @@ void CommandLineParser::Impl::sort_params()
sort
(
data
.
begin
(),
data
.
end
(),
cmp_params
);
}
string
CommandLineParser
::
Impl
::
cat_string
(
const
string
&
str
)
const
string
CommandLineParser
::
Impl
::
trim_spaces
(
const
string
&
str
)
const
{
int
left
=
0
,
right
=
(
int
)
str
.
length
();
while
(
left
<=
right
&&
str
[
left
]
==
' '
)
...
...
@@ -305,7 +330,7 @@ string CommandLineParser::getPathToApplication() const
return
impl
->
path_to_app
;
}
bool
CommandLineParser
::
has
(
const
string
&
name
)
const
bool
CommandLineParser
::
has
(
const
string
&
name
)
{
for
(
size_t
i
=
0
;
i
<
impl
->
data
.
size
();
i
++
)
{
...
...
@@ -333,6 +358,11 @@ void CommandLineParser::printErrors() const
}
}
void
CommandLineParser
::
printParams
()
{
printMessage
();
}
void
CommandLineParser
::
printMessage
()
const
{
if
(
impl
->
about_message
!=
""
)
...
...
@@ -374,7 +404,7 @@ void CommandLineParser::printMessage() const
std
::
cout
<<
", "
;
}
}
string
dv
=
impl
->
cat_string
(
impl
->
data
[
i
].
def_value
);
string
dv
=
impl
->
trim_spaces
(
impl
->
data
[
i
].
def_value
);
if
(
dv
.
compare
(
""
)
!=
0
)
{
std
::
cout
<<
" (value:"
<<
dv
<<
")"
;
...
...
@@ -394,7 +424,7 @@ void CommandLineParser::printMessage() const
std
::
cout
<<
k
;
string
dv
=
impl
->
cat_string
(
impl
->
data
[
i
].
def_value
);
string
dv
=
impl
->
trim_spaces
(
impl
->
data
[
i
].
def_value
);
if
(
dv
.
compare
(
""
)
!=
0
)
{
std
::
cout
<<
" (value:"
<<
dv
<<
")"
;
...
...
modules/core/src/convert.cpp
View file @
94b97b7a
...
...
@@ -267,6 +267,11 @@ void cv::split(InputArray _m, OutputArrayOfArrays _mv)
split
(
m
,
dst
);
}
void
cv
::
split
(
const
Mat
&
src
,
vector
<
Mat
>&
mv
)
{
split
(
_InputArray
(
src
),
_OutputArray
(
mv
));
}
void
cv
::
merge
(
const
Mat
*
mv
,
size_t
n
,
OutputArray
_dst
)
{
CV_Assert
(
mv
&&
n
>
0
);
...
...
@@ -349,6 +354,11 @@ void cv::merge(InputArrayOfArrays _mv, OutputArray _dst)
merge
(
!
mv
.
empty
()
?
&
mv
[
0
]
:
0
,
mv
.
size
(),
_dst
);
}
void
cv
::
merge
(
const
vector
<
Mat
>&
_mv
,
OutputArray
_dst
)
{
merge
(
_InputArray
(
_mv
),
_dst
);
}
/****************************************************************************************\
* Generalized split/merge: mixing channels *
\****************************************************************************************/
...
...
modules/core/src/drawing.cpp
View file @
94b97b7a
...
...
@@ -1730,7 +1730,7 @@ void fillPoly( Mat& img, const Point** pts, const int* npts, int ncontours,
}
void
polylines
(
Mat
&
img
,
const
Point
*
const
*
pts
,
const
int
*
npts
,
int
ncontours
,
bool
isClosed
,
void
polylines
(
Mat
&
img
,
const
Point
**
pts
,
const
int
*
npts
,
int
ncontours
,
bool
isClosed
,
const
Scalar
&
color
,
int
thickness
,
int
line_type
,
int
shift
)
{
if
(
line_type
==
CV_AA
&&
img
.
depth
()
!=
CV_8U
)
...
...
modules/core/src/opengl_interop.cpp
View file @
94b97b7a
...
...
@@ -1257,7 +1257,7 @@ cv::GlFont::GlFont(const string& _family, int _height, Weight _weight, Style _st
#endif
}
void
cv
::
GlFont
::
draw
(
const
char
*
str
,
size_
t
len
)
const
void
cv
::
GlFont
::
draw
(
const
char
*
str
,
in
t
len
)
const
{
#ifndef HAVE_OPENGL
(
void
)
str
;
...
...
@@ -1409,7 +1409,7 @@ void cv::render(const string& str, const Ptr<GlFont>& font, Scalar color, Point2
glRasterPos2d
(
2.0
*
(
viewport
[
0
]
+
pos
.
x
)
/
viewport
[
2
]
-
1.0
,
1.0
-
2.0
*
(
viewport
[
1
]
+
pos
.
y
+
font
->
height
())
/
viewport
[
3
]);
font
->
draw
(
str
.
c_str
(),
str
.
length
());
font
->
draw
(
str
.
c_str
(),
(
int
)
str
.
length
());
glPopAttrib
();
#endif
...
...
modules/imgproc/include/opencv2/imgproc/imgproc.hpp
View file @
94b97b7a
...
...
@@ -636,8 +636,10 @@ CV_EXPORTS_W void accumulateWeighted( InputArray src, InputOutputArray dst,
//! computes PSNR image/video quality metric
CV_EXPORTS_W
double
PSNR
(
InputArray
src1
,
InputArray
src2
);
CV_EXPORTS
Point2d
phaseCorrelate
(
InputArray
src1
,
InputArray
src2
,
InputArray
window
=
noArray
());
CV_EXPORTS_W
Point2d
phaseCorrelate
(
InputArray
src1
,
InputArray
src2
,
InputArray
window
=
noArray
(),
CV_OUT
double
*
response
=
0
);
InputArray
window
,
CV_OUT
double
*
response
CV_WRAP_DEFAULT
(
0
)
);
CV_EXPORTS_W
void
createHanningWindow
(
OutputArray
dst
,
Size
winSize
,
int
type
);
//! type of the threshold operation
...
...
modules/imgproc/src/phasecorr.cpp
View file @
94b97b7a
...
...
@@ -568,6 +568,10 @@ cv::Point2d cv::phaseCorrelate(InputArray _src1, InputArray _src2, InputArray _w
return
(
center
-
t
);
}
cv
::
Point2d
cv
::
phaseCorrelate
(
InputArray
_src1
,
InputArray
_src2
,
InputArray
_window
)
{
return
phaseCorrelate
(
_src1
,
_src2
,
_window
,
0
);
}
void
cv
::
createHanningWindow
(
OutputArray
_dst
,
cv
::
Size
winSize
,
int
type
)
{
...
...
modules/videostab/include/opencv2/videostab/deblurring.hpp
View file @
94b97b7a
...
...
@@ -63,9 +63,6 @@ public:
virtual
void
setRadius
(
int
val
)
{
radius_
=
val
;
}
virtual
int
radius
()
const
{
return
radius_
;
}
virtual
void
deblur
(
int
idx
,
Mat
&
frame
)
=
0
;
// data from stabilizer
virtual
void
setFrames
(
const
std
::
vector
<
Mat
>
&
val
)
{
frames_
=
&
val
;
}
...
...
@@ -77,6 +74,9 @@ public:
virtual
void
setBlurrinessRates
(
const
std
::
vector
<
float
>
&
val
)
{
blurrinessRates_
=
&
val
;
}
virtual
const
std
::
vector
<
float
>&
blurrinessRates
()
const
{
return
*
blurrinessRates_
;
}
virtual
void
update
()
{}
virtual
void
deblur
(
int
idx
,
Mat
&
frame
)
=
0
;
protected
:
int
radius_
;
const
std
::
vector
<
Mat
>
*
frames_
;
...
...
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