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
1b1eab8e
Commit
1b1eab8e
authored
Oct 16, 2010
by
Vadim Pisarevsky
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
added helper macros to the function declarations
parent
b59b0fd7
Show whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
171 additions
and
145 deletions
+171
-145
core.hpp
modules/core/include/opencv2/core/core.hpp
+2
-2
types_c.h
modules/core/include/opencv2/core/types_c.h
+4
-1
features2d.hpp
modules/features2d/include/opencv2/features2d/features2d.hpp
+33
-23
highgui.hpp
modules/highgui/include/opencv2/highgui/highgui.hpp
+8
-6
imgproc.hpp
modules/imgproc/include/opencv2/imgproc/imgproc.hpp
+88
-83
ml.hpp
modules/ml/include/opencv2/ml/ml.hpp
+3
-5
objdetect.hpp
modules/objdetect/include/opencv2/objdetect/objdetect.hpp
+6
-6
background_segm.hpp
modules/video/include/opencv2/video/background_segm.hpp
+5
-10
tracking.hpp
modules/video/include/opencv2/video/tracking.hpp
+8
-8
bgfg_estimation.cpp
modules/video/src/bgfg_estimation.cpp
+14
-1
No files found.
modules/core/include/opencv2/core/core.hpp
View file @
1b1eab8e
...
@@ -212,7 +212,7 @@ CV_EXPORTS ErrorCallback redirectError( ErrorCallback errCallback,
...
@@ -212,7 +212,7 @@ CV_EXPORTS ErrorCallback redirectError( ErrorCallback errCallback,
#define CV_DbgAssert(expr)
#define CV_DbgAssert(expr)
#endif
#endif
CV_EXPORTS
void
setNumThreads
(
int
);
CV_EXPORTS
void
setNumThreads
(
int
nthreads
);
CV_EXPORTS
int
getNumThreads
();
CV_EXPORTS
int
getNumThreads
();
CV_EXPORTS
int
getThreadNum
();
CV_EXPORTS
int
getThreadNum
();
...
@@ -330,7 +330,7 @@ static inline size_t alignSize(size_t sz, int n)
...
@@ -330,7 +330,7 @@ static inline size_t alignSize(size_t sz, int n)
\note{Since optimization may imply using special data structures, it may be unsafe
\note{Since optimization may imply using special data structures, it may be unsafe
to call this function anywhere in the code. Instead, call it somewhere at the top level.}
to call this function anywhere in the code. Instead, call it somewhere at the top level.}
*/
*/
CV_EXPORTS
void
setUseOptimized
(
bool
);
CV_EXPORTS
void
setUseOptimized
(
bool
onoff
);
/*!
/*!
Returns the current optimization status
Returns the current optimization status
...
...
modules/core/include/opencv2/core/types_c.h
View file @
1b1eab8e
...
@@ -158,9 +158,12 @@ typedef unsigned short ushort;
...
@@ -158,9 +158,12 @@ typedef unsigned short ushort;
typedef
signed
char
schar
;
typedef
signed
char
schar
;
/* special informative macros for wrapper generators */
/* special informative macros for wrapper generators */
#define CV_OUT
#define CV_CARRAY(counter)
#define CV_CARRAY(counter)
#define CV_CUSTOM_CARRAY(args)
#define CV_METHOD
#define CV_METHOD
#define CV_NO_WRAP
#define CV_OUT
#define CV_WRAP_AS(synonym)
/* CvArr* is used to pass arbitrary
/* CvArr* is used to pass arbitrary
* array-like data structures
* array-like data structures
...
...
modules/features2d/include/opencv2/features2d/features2d.hpp
View file @
1b1eab8e
...
@@ -232,10 +232,12 @@ public:
...
@@ -232,10 +232,12 @@ public:
:
pt
(
x
,
y
),
size
(
_size
),
angle
(
_angle
),
:
pt
(
x
,
y
),
size
(
_size
),
angle
(
_angle
),
response
(
_response
),
octave
(
_octave
),
class_id
(
_class_id
)
{}
response
(
_response
),
octave
(
_octave
),
class_id
(
_class_id
)
{}
//! converts vector of keypoints to vector of points
//! converts vector of keypoints to vector of points
static
void
convert
(
const
std
::
vector
<
KeyPoint
>&
keypoints
,
std
::
vector
<
Point2f
>&
points2f
,
static
void
convert
(
const
std
::
vector
<
KeyPoint
>&
keypoints
,
CV_OUT
std
::
vector
<
Point2f
>&
points2f
,
const
std
::
vector
<
int
>&
keypointIndexes
=
std
::
vector
<
int
>
());
const
std
::
vector
<
int
>&
keypointIndexes
=
std
::
vector
<
int
>
());
//! converts vector of points to the vector of keypoints, where each keypoint is assigned the same size and the same orientation
//! converts vector of points to the vector of keypoints, where each keypoint is assigned the same size and the same orientation
static
void
convert
(
const
std
::
vector
<
Point2f
>&
points2f
,
std
::
vector
<
KeyPoint
>&
keypoints
,
static
void
convert
(
const
std
::
vector
<
Point2f
>&
points2f
,
CV_OUT
std
::
vector
<
KeyPoint
>&
keypoints
,
float
size
=
1
,
float
response
=
1
,
int
octave
=
0
,
int
class_id
=-
1
);
float
size
=
1
,
float
response
=
1
,
int
octave
=
0
,
int
class_id
=-
1
);
//! computes overlap for pair of keypoints;
//! computes overlap for pair of keypoints;
...
@@ -254,7 +256,7 @@ public:
...
@@ -254,7 +256,7 @@ public:
//! writes vector of keypoints to the file storage
//! writes vector of keypoints to the file storage
CV_EXPORTS
void
write
(
FileStorage
&
fs
,
const
string
&
name
,
const
vector
<
KeyPoint
>&
keypoints
);
CV_EXPORTS
void
write
(
FileStorage
&
fs
,
const
string
&
name
,
const
vector
<
KeyPoint
>&
keypoints
);
//! reads vector of keypoints from the specified file storage node
//! reads vector of keypoints from the specified file storage node
CV_EXPORTS
void
read
(
const
FileNode
&
node
,
vector
<
KeyPoint
>&
keypoints
);
CV_EXPORTS
void
read
(
const
FileNode
&
node
,
CV_OUT
vector
<
KeyPoint
>&
keypoints
);
/*!
/*!
SIFT implementation.
SIFT implementation.
...
@@ -357,12 +359,12 @@ public:
...
@@ -357,12 +359,12 @@ public:
//! returns the descriptor size in float's (64 or 128)
//! returns the descriptor size in float's (64 or 128)
int
descriptorSize
()
const
;
int
descriptorSize
()
const
;
//! finds the keypoints using fast hessian detector used in SURF
//! finds the keypoints using fast hessian detector used in SURF
void
operator
()(
const
Mat
&
img
,
const
Mat
&
mask
,
CV_WRAP_AS
(
detect
)
void
operator
()(
const
Mat
&
img
,
const
Mat
&
mask
,
vector
<
KeyPoint
>&
keypoints
)
const
;
CV_OUT
vector
<
KeyPoint
>&
keypoints
)
const
;
//! finds the keypoints and computes their descriptors. Optionally it can compute descriptors for the user-provided keypoints
//! finds the keypoints and computes their descriptors. Optionally it can compute descriptors for the user-provided keypoints
void
operator
()(
const
Mat
&
img
,
const
Mat
&
mask
,
CV_WRAP_AS
(
detect
)
void
operator
()(
const
Mat
&
img
,
const
Mat
&
mask
,
vector
<
KeyPoint
>&
keypoints
,
CV_OUT
vector
<
KeyPoint
>&
keypoints
,
vector
<
float
>&
descriptors
,
CV_OUT
vector
<
float
>&
descriptors
,
bool
useProvidedKeypoints
=
false
)
const
;
bool
useProvidedKeypoints
=
false
)
const
;
};
};
...
@@ -386,7 +388,8 @@ public:
...
@@ -386,7 +388,8 @@ public:
int
_max_evolution
,
double
_area_threshold
,
int
_max_evolution
,
double
_area_threshold
,
double
_min_margin
,
int
_edge_blur_size
);
double
_min_margin
,
int
_edge_blur_size
);
//! the operator that extracts the MSERs from the image or the specific part of it
//! the operator that extracts the MSERs from the image or the specific part of it
void
operator
()(
const
Mat
&
image
,
vector
<
vector
<
Point
>
>&
msers
,
const
Mat
&
mask
)
const
;
CV_WRAP_AS
(
detect
)
void
operator
()(
const
Mat
&
image
,
CV_OUT
vector
<
vector
<
Point
>
>&
msers
,
const
Mat
&
mask
)
const
;
};
};
/*!
/*!
...
@@ -405,11 +408,13 @@ public:
...
@@ -405,11 +408,13 @@ public:
int
_lineThresholdBinarized
,
int
_lineThresholdBinarized
,
int
_suppressNonmaxSize
);
int
_suppressNonmaxSize
);
//! finds the keypoints in the image
//! finds the keypoints in the image
void
operator
()(
const
Mat
&
image
,
vector
<
KeyPoint
>&
keypoints
)
const
;
CV_WRAP_AS
(
detect
)
void
operator
()(
const
Mat
&
image
,
CV_OUT
vector
<
KeyPoint
>&
keypoints
)
const
;
};
};
//! detects corners using FAST algorithm by E. Rosten
//! detects corners using FAST algorithm by E. Rosten
CV_EXPORTS
void
FAST
(
const
Mat
&
image
,
vector
<
KeyPoint
>&
keypoints
,
int
threshold
,
bool
nonmaxSupression
=
true
);
CV_EXPORTS
void
FAST
(
const
Mat
&
image
,
CV_OUT
vector
<
KeyPoint
>&
keypoints
,
int
threshold
,
bool
nonmaxSupression
=
true
);
/*!
/*!
The Patch Generator class
The Patch Generator class
...
@@ -423,13 +428,14 @@ public:
...
@@ -423,13 +428,14 @@ public:
double
_lambdaMin
=
0.6
,
double
_lambdaMax
=
1.5
,
double
_lambdaMin
=
0.6
,
double
_lambdaMax
=
1.5
,
double
_thetaMin
=-
CV_PI
,
double
_thetaMax
=
CV_PI
,
double
_thetaMin
=-
CV_PI
,
double
_thetaMax
=
CV_PI
,
double
_phiMin
=-
CV_PI
,
double
_phiMax
=
CV_PI
);
double
_phiMin
=-
CV_PI
,
double
_phiMax
=
CV_PI
);
void
operator
()(
const
Mat
&
image
,
Point2f
pt
,
Mat
&
patch
,
Size
patchSize
,
RNG
&
rng
)
const
;
CV_WRAP_AS
(
generate
)
void
operator
()(
const
Mat
&
image
,
Point2f
pt
,
Mat
&
patch
,
Size
patchSize
,
RNG
&
rng
)
const
;
void
operator
()(
const
Mat
&
image
,
const
Mat
&
transform
,
Mat
&
patch
,
CV_WRAP_AS
(
generate
)
void
operator
()(
const
Mat
&
image
,
const
Mat
&
transform
,
Mat
&
patch
,
Size
patchSize
,
RNG
&
rng
)
const
;
Size
patchSize
,
RNG
&
rng
)
const
;
void
warpWholeImage
(
const
Mat
&
image
,
Mat
&
matT
,
Mat
&
buf
,
void
warpWholeImage
(
const
Mat
&
image
,
Mat
&
matT
,
Mat
&
buf
,
Mat
&
warped
,
int
border
,
RNG
&
rng
)
const
;
CV_OUT
Mat
&
warped
,
int
border
,
RNG
&
rng
)
const
;
void
generateRandomTransform
(
Point2f
srcCenter
,
Point2f
dstCenter
,
void
generateRandomTransform
(
Point2f
srcCenter
,
Point2f
dstCenter
,
Mat
&
transform
,
RNG
&
rng
,
bool
inverse
=
false
)
const
;
CV_OUT
Mat
&
transform
,
RNG
&
rng
,
bool
inverse
=
false
)
const
;
void
setAffineParam
(
double
lambda
,
double
theta
,
double
phi
);
void
setAffineParam
(
double
lambda
,
double
theta
,
double
phi
);
double
backgroundMin
,
backgroundMax
;
double
backgroundMin
,
backgroundMax
;
...
@@ -447,9 +453,13 @@ public:
...
@@ -447,9 +453,13 @@ public:
LDetector
();
LDetector
();
LDetector
(
int
_radius
,
int
_threshold
,
int
_nOctaves
,
LDetector
(
int
_radius
,
int
_threshold
,
int
_nOctaves
,
int
_nViews
,
double
_baseFeatureSize
,
double
_clusteringDistance
);
int
_nViews
,
double
_baseFeatureSize
,
double
_clusteringDistance
);
void
operator
()(
const
Mat
&
image
,
vector
<
KeyPoint
>&
keypoints
,
int
maxCount
=
0
,
bool
scaleCoords
=
true
)
const
;
CV_WRAP_AS
(
detect
)
void
operator
()(
const
Mat
&
image
,
void
operator
()(
const
vector
<
Mat
>&
pyr
,
vector
<
KeyPoint
>&
keypoints
,
int
maxCount
=
0
,
bool
scaleCoords
=
true
)
const
;
CV_OUT
vector
<
KeyPoint
>&
keypoints
,
void
getMostStable2D
(
const
Mat
&
image
,
vector
<
KeyPoint
>&
keypoints
,
int
maxCount
=
0
,
bool
scaleCoords
=
true
)
const
;
CV_WRAP_AS
(
detect
)
void
operator
()(
const
vector
<
Mat
>&
pyr
,
CV_OUT
vector
<
KeyPoint
>&
keypoints
,
int
maxCount
=
0
,
bool
scaleCoords
=
true
)
const
;
void
getMostStable2D
(
const
Mat
&
image
,
CV_OUT
vector
<
KeyPoint
>&
keypoints
,
int
maxCount
,
const
PatchGenerator
&
patchGenerator
)
const
;
int
maxCount
,
const
PatchGenerator
&
patchGenerator
)
const
;
void
setVerbose
(
bool
verbose
);
void
setVerbose
(
bool
verbose
);
...
@@ -561,6 +571,7 @@ protected:
...
@@ -561,6 +571,7 @@ protected:
vector
<
float
>
posteriors
;
vector
<
float
>
posteriors
;
};
};
class
CV_EXPORTS
PlanarObjectDetector
class
CV_EXPORTS
PlanarObjectDetector
{
{
public
:
public
:
...
@@ -596,9 +607,10 @@ public:
...
@@ -596,9 +607,10 @@ public:
void
read
(
const
FileNode
&
node
);
void
read
(
const
FileNode
&
node
);
void
write
(
FileStorage
&
fs
,
const
String
&
name
=
String
())
const
;
void
write
(
FileStorage
&
fs
,
const
String
&
name
=
String
())
const
;
bool
operator
()(
const
Mat
&
image
,
Mat
&
H
,
vector
<
Point2f
>&
corners
)
const
;
CV_WRAP_AS
(
detect
)
bool
operator
()(
const
Mat
&
image
,
CV_OUT
Mat
&
H
,
CV_OUT
vector
<
Point2f
>&
corners
)
const
;
bool
operator
()(
const
vector
<
Mat
>&
pyr
,
const
vector
<
KeyPoint
>&
keypoints
,
CV_WRAP_AS
(
detect
)
bool
operator
()(
const
vector
<
Mat
>&
pyr
,
const
vector
<
KeyPoint
>&
keypoints
,
Mat
&
H
,
vector
<
Point2f
>&
corners
,
vector
<
int
>*
pairs
=
0
)
const
;
CV_OUT
Mat
&
H
,
CV_OUT
vector
<
Point2f
>&
corners
,
CV_OUT
vector
<
int
>*
pairs
=
0
)
const
;
protected
:
protected
:
bool
verbose
;
bool
verbose
;
...
@@ -735,7 +747,6 @@ struct CV_EXPORTS RTreeNode
...
@@ -735,7 +747,6 @@ struct CV_EXPORTS RTreeNode
short
offset1
,
offset2
;
short
offset1
,
offset2
;
RTreeNode
()
{}
RTreeNode
()
{}
RTreeNode
(
uchar
x1
,
uchar
y1
,
uchar
x2
,
uchar
y2
)
RTreeNode
(
uchar
x1
,
uchar
y1
,
uchar
x2
,
uchar
y2
)
:
offset1
(
y1
*
RandomizedTree
::
PATCH_SIZE
+
x1
),
:
offset1
(
y1
*
RandomizedTree
::
PATCH_SIZE
+
x1
),
offset2
(
y2
*
RandomizedTree
::
PATCH_SIZE
+
x2
)
offset2
(
y2
*
RandomizedTree
::
PATCH_SIZE
+
x2
)
...
@@ -755,7 +766,6 @@ public:
...
@@ -755,7 +766,6 @@ public:
static
const
size_t
DEFAULT_NUM_QUANT_BITS
=
4
;
static
const
size_t
DEFAULT_NUM_QUANT_BITS
=
4
;
RTreeClassifier
();
RTreeClassifier
();
void
train
(
std
::
vector
<
BaseKeypoint
>
const
&
base_set
,
void
train
(
std
::
vector
<
BaseKeypoint
>
const
&
base_set
,
RNG
&
rng
,
RNG
&
rng
,
int
num_trees
=
RTreeClassifier
::
DEFAULT_TREES
,
int
num_trees
=
RTreeClassifier
::
DEFAULT_TREES
,
...
...
modules/highgui/include/opencv2/highgui/highgui.hpp
View file @
1b1eab8e
...
@@ -106,7 +106,7 @@ CV_EXPORTS bool imwrite( const string& filename, const Mat& img,
...
@@ -106,7 +106,7 @@ CV_EXPORTS bool imwrite( const string& filename, const Mat& img,
const
vector
<
int
>&
params
=
vector
<
int
>
());
const
vector
<
int
>&
params
=
vector
<
int
>
());
CV_EXPORTS
Mat
imdecode
(
const
Mat
&
buf
,
int
flags
);
CV_EXPORTS
Mat
imdecode
(
const
Mat
&
buf
,
int
flags
);
CV_EXPORTS
bool
imencode
(
const
string
&
ext
,
const
Mat
&
img
,
CV_EXPORTS
bool
imencode
(
const
string
&
ext
,
const
Mat
&
img
,
vector
<
uchar
>&
buf
,
CV_OUT
vector
<
uchar
>&
buf
,
const
vector
<
int
>&
params
=
vector
<
int
>
());
const
vector
<
int
>&
params
=
vector
<
int
>
());
CV_EXPORTS
int
waitKey
(
int
delay
=
0
);
CV_EXPORTS
int
waitKey
(
int
delay
=
0
);
...
@@ -130,8 +130,8 @@ public:
...
@@ -130,8 +130,8 @@ public:
virtual
void
release
();
virtual
void
release
();
virtual
bool
grab
();
virtual
bool
grab
();
virtual
bool
retrieve
(
Mat
&
image
,
int
channel
=
0
);
virtual
bool
retrieve
(
CV_OUT
Mat
&
image
,
int
channel
=
0
);
virtual
VideoCapture
&
operator
>>
(
Mat
&
image
);
virtual
CV_WRAP_AS
(
query
)
VideoCapture
&
operator
>>
(
Mat
&
image
);
virtual
bool
set
(
int
propId
,
double
value
);
virtual
bool
set
(
int
propId
,
double
value
);
virtual
double
get
(
int
propId
);
virtual
double
get
(
int
propId
);
...
@@ -145,12 +145,14 @@ class CV_EXPORTS VideoWriter
...
@@ -145,12 +145,14 @@ class CV_EXPORTS VideoWriter
{
{
public
:
public
:
VideoWriter
();
VideoWriter
();
VideoWriter
(
const
string
&
filename
,
int
fourcc
,
double
fps
,
Size
frameSize
,
bool
isColor
=
true
);
VideoWriter
(
const
string
&
filename
,
int
fourcc
,
double
fps
,
Size
frameSize
,
bool
isColor
=
true
);
virtual
~
VideoWriter
();
virtual
~
VideoWriter
();
virtual
bool
open
(
const
string
&
filename
,
int
fourcc
,
double
fps
,
Size
frameSize
,
bool
isColor
=
true
);
virtual
bool
open
(
const
string
&
filename
,
int
fourcc
,
double
fps
,
Size
frameSize
,
bool
isColor
=
true
);
virtual
bool
isOpened
()
const
;
virtual
bool
isOpened
()
const
;
virtual
VideoWriter
&
operator
<<
(
const
Mat
&
image
);
virtual
CV_WRAP_AS
(
write
)
VideoWriter
&
operator
<<
(
const
Mat
&
image
);
protected
:
protected
:
Ptr
<
CvVideoWriter
>
writer
;
Ptr
<
CvVideoWriter
>
writer
;
...
...
modules/imgproc/include/opencv2/imgproc/imgproc.hpp
View file @
1b1eab8e
...
@@ -327,7 +327,8 @@ CV_EXPORTS Ptr<FilterEngine> createGaussianFilter( int type, Size ksize,
...
@@ -327,7 +327,8 @@ CV_EXPORTS Ptr<FilterEngine> createGaussianFilter( int type, Size ksize,
double
sigma1
,
double
sigma2
=
0
,
double
sigma1
,
double
sigma2
=
0
,
int
borderType
=
BORDER_DEFAULT
);
int
borderType
=
BORDER_DEFAULT
);
//! initializes kernels of the generalized Sobel operator
//! initializes kernels of the generalized Sobel operator
CV_EXPORTS
void
getDerivKernels
(
Mat
&
kx
,
Mat
&
ky
,
int
dx
,
int
dy
,
int
ksize
,
CV_EXPORTS
void
getDerivKernels
(
CV_OUT
Mat
&
kx
,
CV_OUT
Mat
&
ky
,
int
dx
,
int
dy
,
int
ksize
,
bool
normalize
=
false
,
int
ktype
=
CV_32F
);
bool
normalize
=
false
,
int
ktype
=
CV_32F
);
//! returns filter engine for the generalized Sobel operator
//! returns filter engine for the generalized Sobel operator
CV_EXPORTS
Ptr
<
FilterEngine
>
createDerivFilter
(
int
srcType
,
int
dstType
,
CV_EXPORTS
Ptr
<
FilterEngine
>
createDerivFilter
(
int
srcType
,
int
dstType
,
...
@@ -337,7 +338,7 @@ CV_EXPORTS Ptr<FilterEngine> createDerivFilter( int srcType, int dstType,
...
@@ -337,7 +338,7 @@ CV_EXPORTS Ptr<FilterEngine> createDerivFilter( int srcType, int dstType,
CV_EXPORTS
Ptr
<
BaseRowFilter
>
getRowSumFilter
(
int
srcType
,
int
sumType
,
CV_EXPORTS
Ptr
<
BaseRowFilter
>
getRowSumFilter
(
int
srcType
,
int
sumType
,
int
ksize
,
int
anchor
=-
1
);
int
ksize
,
int
anchor
=-
1
);
//! returns vertical 1D box filter
//! returns vertical 1D box filter
CV_EXPORTS
Ptr
<
BaseColumnFilter
>
getColumnSumFilter
(
int
sumType
,
int
dstType
,
CV_EXPORTS
Ptr
<
BaseColumnFilter
>
getColumnSumFilter
(
int
sumType
,
int
dstType
,
int
ksize
,
int
anchor
=-
1
,
int
ksize
,
int
anchor
=-
1
,
double
scale
=
1
);
double
scale
=
1
);
//! returns box filter engine
//! returns box filter engine
...
@@ -374,27 +375,27 @@ CV_EXPORTS Mat getStructuringElement(int shape, Size ksize, Point anchor=Point(-
...
@@ -374,27 +375,27 @@ CV_EXPORTS Mat getStructuringElement(int shape, Size ksize, Point anchor=Point(-
template
<>
CV_EXPORTS
void
Ptr
<
IplConvKernel
>::
delete_obj
();
template
<>
CV_EXPORTS
void
Ptr
<
IplConvKernel
>::
delete_obj
();
//! copies 2D array to a larger destination array with extrapolation of the outer part of src using the specified border mode
//! copies 2D array to a larger destination array with extrapolation of the outer part of src using the specified border mode
CV_EXPORTS
void
copyMakeBorder
(
const
Mat
&
src
,
Mat
&
dst
,
CV_EXPORTS
void
copyMakeBorder
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
int
top
,
int
bottom
,
int
left
,
int
right
,
int
top
,
int
bottom
,
int
left
,
int
right
,
int
borderType
,
const
Scalar
&
value
=
Scalar
()
);
int
borderType
,
const
Scalar
&
value
=
Scalar
()
);
//! smooths the image using median filter.
//! smooths the image using median filter.
CV_EXPORTS
void
medianBlur
(
const
Mat
&
src
,
Mat
&
dst
,
int
ksize
);
CV_EXPORTS
void
medianBlur
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
int
ksize
);
//! smooths the image using Gaussian filter.
//! smooths the image using Gaussian filter.
CV_EXPORTS
void
GaussianBlur
(
const
Mat
&
src
,
Mat
&
dst
,
Size
ksize
,
CV_EXPORTS
void
GaussianBlur
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
Size
ksize
,
double
sigma1
,
double
sigma2
=
0
,
double
sigma1
,
double
sigma2
=
0
,
int
borderType
=
BORDER_DEFAULT
);
int
borderType
=
BORDER_DEFAULT
);
//! smooths the image using bilateral filter
//! smooths the image using bilateral filter
CV_EXPORTS
void
bilateralFilter
(
const
Mat
&
src
,
Mat
&
dst
,
int
d
,
CV_EXPORTS
void
bilateralFilter
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
int
d
,
double
sigmaColor
,
double
sigmaSpace
,
double
sigmaColor
,
double
sigmaSpace
,
int
borderType
=
BORDER_DEFAULT
);
int
borderType
=
BORDER_DEFAULT
);
//! smooths the image using the box filter. Each pixel is processed in O(1) time
//! smooths the image using the box filter. Each pixel is processed in O(1) time
CV_EXPORTS
void
boxFilter
(
const
Mat
&
src
,
Mat
&
dst
,
int
ddepth
,
CV_EXPORTS
void
boxFilter
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
int
ddepth
,
Size
ksize
,
Point
anchor
=
Point
(
-
1
,
-
1
),
Size
ksize
,
Point
anchor
=
Point
(
-
1
,
-
1
),
bool
normalize
=
true
,
bool
normalize
=
true
,
int
borderType
=
BORDER_DEFAULT
);
int
borderType
=
BORDER_DEFAULT
);
//! a synonym for normalized box filter
//! a synonym for normalized box filter
static
inline
void
blur
(
const
Mat
&
src
,
Mat
&
dst
,
static
inline
void
blur
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
Size
ksize
,
Point
anchor
=
Point
(
-
1
,
-
1
),
Size
ksize
,
Point
anchor
=
Point
(
-
1
,
-
1
),
int
borderType
=
BORDER_DEFAULT
)
int
borderType
=
BORDER_DEFAULT
)
{
{
...
@@ -402,54 +403,54 @@ static inline void blur( const Mat& src, Mat& dst,
...
@@ -402,54 +403,54 @@ static inline void blur( const Mat& src, Mat& dst,
}
}
//! applies non-separable 2D linear filter to the image
//! applies non-separable 2D linear filter to the image
CV_EXPORTS
void
filter2D
(
const
Mat
&
src
,
Mat
&
dst
,
int
ddepth
,
CV_EXPORTS
void
filter2D
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
int
ddepth
,
const
Mat
&
kernel
,
Point
anchor
=
Point
(
-
1
,
-
1
),
const
Mat
&
kernel
,
Point
anchor
=
Point
(
-
1
,
-
1
),
double
delta
=
0
,
int
borderType
=
BORDER_DEFAULT
);
double
delta
=
0
,
int
borderType
=
BORDER_DEFAULT
);
//! applies separable 2D linear filter to the image
//! applies separable 2D linear filter to the image
CV_EXPORTS
void
sepFilter2D
(
const
Mat
&
src
,
Mat
&
dst
,
int
ddepth
,
CV_EXPORTS
void
sepFilter2D
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
int
ddepth
,
const
Mat
&
kernelX
,
const
Mat
&
kernelY
,
const
Mat
&
kernelX
,
const
Mat
&
kernelY
,
Point
anchor
=
Point
(
-
1
,
-
1
),
Point
anchor
=
Point
(
-
1
,
-
1
),
double
delta
=
0
,
int
borderType
=
BORDER_DEFAULT
);
double
delta
=
0
,
int
borderType
=
BORDER_DEFAULT
);
//! applies generalized Sobel operator to the image
//! applies generalized Sobel operator to the image
CV_EXPORTS
void
Sobel
(
const
Mat
&
src
,
Mat
&
dst
,
int
ddepth
,
CV_EXPORTS
void
Sobel
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
int
ddepth
,
int
dx
,
int
dy
,
int
ksize
=
3
,
int
dx
,
int
dy
,
int
ksize
=
3
,
double
scale
=
1
,
double
delta
=
0
,
double
scale
=
1
,
double
delta
=
0
,
int
borderType
=
BORDER_DEFAULT
);
int
borderType
=
BORDER_DEFAULT
);
//! applies the vertical or horizontal Scharr operator to the image
//! applies the vertical or horizontal Scharr operator to the image
CV_EXPORTS
void
Scharr
(
const
Mat
&
src
,
Mat
&
dst
,
int
ddepth
,
CV_EXPORTS
void
Scharr
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
int
ddepth
,
int
dx
,
int
dy
,
double
scale
=
1
,
double
delta
=
0
,
int
dx
,
int
dy
,
double
scale
=
1
,
double
delta
=
0
,
int
borderType
=
BORDER_DEFAULT
);
int
borderType
=
BORDER_DEFAULT
);
//! applies Laplacian operator to the image
//! applies Laplacian operator to the image
CV_EXPORTS
void
Laplacian
(
const
Mat
&
src
,
Mat
&
dst
,
int
ddepth
,
CV_EXPORTS
void
Laplacian
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
int
ddepth
,
int
ksize
=
1
,
double
scale
=
1
,
double
delta
=
0
,
int
ksize
=
1
,
double
scale
=
1
,
double
delta
=
0
,
int
borderType
=
BORDER_DEFAULT
);
int
borderType
=
BORDER_DEFAULT
);
//! applies Canny edge detector and produces the edge map.
//! applies Canny edge detector and produces the edge map.
CV_EXPORTS
void
Canny
(
const
Mat
&
image
,
Mat
&
edges
,
CV_EXPORTS
void
Canny
(
const
Mat
&
image
,
CV_OUT
Mat
&
edges
,
double
threshold1
,
double
threshold2
,
double
threshold1
,
double
threshold2
,
int
apertureSize
=
3
,
bool
L2gradient
=
false
);
int
apertureSize
=
3
,
bool
L2gradient
=
false
);
//! computes minimum eigen value of 2x2 derivative covariation matrix at each pixel - the cornerness criteria
//! computes minimum eigen value of 2x2 derivative covariation matrix at each pixel - the cornerness criteria
CV_EXPORTS
void
cornerMinEigenVal
(
const
Mat
&
src
,
Mat
&
dst
,
CV_EXPORTS
void
cornerMinEigenVal
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
int
blockSize
,
int
ksize
=
3
,
int
blockSize
,
int
ksize
=
3
,
int
borderType
=
BORDER_DEFAULT
);
int
borderType
=
BORDER_DEFAULT
);
//! computes Harris cornerness criteria at each image pixel
//! computes Harris cornerness criteria at each image pixel
CV_EXPORTS
void
cornerHarris
(
const
Mat
&
src
,
Mat
&
dst
,
int
blockSize
,
CV_EXPORTS
void
cornerHarris
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
int
blockSize
,
int
ksize
,
double
k
,
int
ksize
,
double
k
,
int
borderType
=
BORDER_DEFAULT
);
int
borderType
=
BORDER_DEFAULT
);
//! computes both eigenvalues and the eigenvectors of 2x2 derivative covariation matrix at each pixel. The output is stored as 6-channel matrix.
//! computes both eigenvalues and the eigenvectors of 2x2 derivative covariation matrix at each pixel. The output is stored as 6-channel matrix.
CV_EXPORTS
void
cornerEigenValsAndVecs
(
const
Mat
&
src
,
Mat
&
dst
,
CV_EXPORTS
void
cornerEigenValsAndVecs
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
int
blockSize
,
int
ksize
,
int
blockSize
,
int
ksize
,
int
borderType
=
BORDER_DEFAULT
);
int
borderType
=
BORDER_DEFAULT
);
//! computes another complex cornerness criteria at each pixel
//! computes another complex cornerness criteria at each pixel
CV_EXPORTS
void
preCornerDetect
(
const
Mat
&
src
,
Mat
&
dst
,
int
ksize
,
CV_EXPORTS
void
preCornerDetect
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
int
ksize
,
int
borderType
=
BORDER_DEFAULT
);
int
borderType
=
BORDER_DEFAULT
);
//! adjusts the corner locations with sub-pixel accuracy to maximize the certain cornerness criteria
//! adjusts the corner locations with sub-pixel accuracy to maximize the certain cornerness criteria
...
@@ -458,41 +459,42 @@ CV_EXPORTS void cornerSubPix( const Mat& image, vector<Point2f>& corners,
...
@@ -458,41 +459,42 @@ CV_EXPORTS void cornerSubPix( const Mat& image, vector<Point2f>& corners,
TermCriteria
criteria
);
TermCriteria
criteria
);
//! finds the strong enough corners where the cornerMinEigenVal() or cornerHarris() report the local maxima
//! finds the strong enough corners where the cornerMinEigenVal() or cornerHarris() report the local maxima
CV_EXPORTS
void
goodFeaturesToTrack
(
const
Mat
&
image
,
vector
<
Point2f
>&
corners
,
CV_EXPORTS
void
goodFeaturesToTrack
(
const
Mat
&
image
,
CV_OUT
vector
<
Point2f
>&
corners
,
int
maxCorners
,
double
qualityLevel
,
double
minDistance
,
int
maxCorners
,
double
qualityLevel
,
double
minDistance
,
const
Mat
&
mask
=
Mat
(),
int
blockSize
=
3
,
const
Mat
&
mask
=
Mat
(),
int
blockSize
=
3
,
bool
useHarrisDetector
=
false
,
double
k
=
0.04
);
bool
useHarrisDetector
=
false
,
double
k
=
0.04
);
//! finds lines in the black-n-white image using the standard or pyramid Hough transform
//! finds lines in the black-n-white image using the standard or pyramid Hough transform
CV_EXPORTS
void
HoughLines
(
const
Mat
&
image
,
vector
<
Vec2f
>&
lines
,
CV_EXPORTS
void
HoughLines
(
const
Mat
&
image
,
CV_OUT
vector
<
Vec2f
>&
lines
,
double
rho
,
double
theta
,
int
threshold
,
double
rho
,
double
theta
,
int
threshold
,
double
srn
=
0
,
double
stn
=
0
);
double
srn
=
0
,
double
stn
=
0
);
//! finds line segments in the black-n-white image using probabalistic Hough transform
//! finds line segments in the black-n-white image using probabalistic Hough transform
CV_EXPORTS
void
HoughLinesP
(
Mat
&
image
,
vector
<
Vec4i
>&
lines
,
CV_EXPORTS
void
HoughLinesP
(
Mat
&
image
,
CV_OUT
vector
<
Vec4i
>&
lines
,
double
rho
,
double
theta
,
int
threshold
,
double
rho
,
double
theta
,
int
threshold
,
double
minLineLength
=
0
,
double
maxLineGap
=
0
);
double
minLineLength
=
0
,
double
maxLineGap
=
0
);
//! finds circles in the grayscale image using 2+1 gradient Hough transform
//! finds circles in the grayscale image using 2+1 gradient Hough transform
CV_EXPORTS
void
HoughCircles
(
const
Mat
&
image
,
vector
<
Vec3f
>&
circles
,
CV_EXPORTS
void
HoughCircles
(
const
Mat
&
image
,
CV_OUT
vector
<
Vec3f
>&
circles
,
int
method
,
double
dp
,
double
minDist
,
int
method
,
double
dp
,
double
minDist
,
double
param1
=
100
,
double
param2
=
100
,
double
param1
=
100
,
double
param2
=
100
,
int
minRadius
=
0
,
int
maxRadius
=
0
);
int
minRadius
=
0
,
int
maxRadius
=
0
);
//! erodes the image (applies the local minimum operator)
//! erodes the image (applies the local minimum operator)
CV_EXPORTS
void
erode
(
const
Mat
&
src
,
Mat
&
dst
,
const
Mat
&
kernel
,
CV_EXPORTS
void
erode
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
const
Mat
&
kernel
,
Point
anchor
=
Point
(
-
1
,
-
1
),
int
iterations
=
1
,
Point
anchor
=
Point
(
-
1
,
-
1
),
int
iterations
=
1
,
int
borderType
=
BORDER_CONSTANT
,
int
borderType
=
BORDER_CONSTANT
,
const
Scalar
&
borderValue
=
morphologyDefaultBorderValue
()
);
const
Scalar
&
borderValue
=
morphologyDefaultBorderValue
()
);
//! dilates the image (applies the local maximum operator)
//! dilates the image (applies the local maximum operator)
CV_EXPORTS
void
dilate
(
const
Mat
&
src
,
Mat
&
dst
,
const
Mat
&
kernel
,
CV_EXPORTS
void
dilate
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
const
Mat
&
kernel
,
Point
anchor
=
Point
(
-
1
,
-
1
),
int
iterations
=
1
,
Point
anchor
=
Point
(
-
1
,
-
1
),
int
iterations
=
1
,
int
borderType
=
BORDER_CONSTANT
,
int
borderType
=
BORDER_CONSTANT
,
const
Scalar
&
borderValue
=
morphologyDefaultBorderValue
()
);
const
Scalar
&
borderValue
=
morphologyDefaultBorderValue
()
);
//! applies an advanced morphological operation to the image
//! applies an advanced morphological operation to the image
CV_EXPORTS
void
morphologyEx
(
const
Mat
&
src
,
Mat
&
dst
,
int
op
,
const
Mat
&
kernel
,
CV_EXPORTS
void
morphologyEx
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
int
op
,
const
Mat
&
kernel
,
Point
anchor
=
Point
(
-
1
,
-
1
),
int
iterations
=
1
,
Point
anchor
=
Point
(
-
1
,
-
1
),
int
iterations
=
1
,
int
borderType
=
BORDER_CONSTANT
,
int
borderType
=
BORDER_CONSTANT
,
const
Scalar
&
borderValue
=
morphologyDefaultBorderValue
()
);
const
Scalar
&
borderValue
=
morphologyDefaultBorderValue
()
);
...
@@ -510,19 +512,19 @@ enum
...
@@ -510,19 +512,19 @@ enum
};
};
//! resizes the image
//! resizes the image
CV_EXPORTS
void
resize
(
const
Mat
&
src
,
Mat
&
dst
,
CV_EXPORTS
void
resize
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
Size
dsize
,
double
fx
=
0
,
double
fy
=
0
,
Size
dsize
,
double
fx
=
0
,
double
fy
=
0
,
int
interpolation
=
INTER_LINEAR
);
int
interpolation
=
INTER_LINEAR
);
//! warps the image using affine transformation
//! warps the image using affine transformation
CV_EXPORTS
void
warpAffine
(
const
Mat
&
src
,
Mat
&
dst
,
CV_EXPORTS
void
warpAffine
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
const
Mat
&
M
,
Size
dsize
,
const
Mat
&
M
,
Size
dsize
,
int
flags
=
INTER_LINEAR
,
int
flags
=
INTER_LINEAR
,
int
borderMode
=
BORDER_CONSTANT
,
int
borderMode
=
BORDER_CONSTANT
,
const
Scalar
&
borderValue
=
Scalar
());
const
Scalar
&
borderValue
=
Scalar
());
//! warps the image using perspective transformation
//! warps the image using perspective transformation
CV_EXPORTS
void
warpPerspective
(
const
Mat
&
src
,
Mat
&
dst
,
CV_EXPORTS
void
warpPerspective
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
const
Mat
&
M
,
Size
dsize
,
const
Mat
&
M
,
Size
dsize
,
int
flags
=
INTER_LINEAR
,
int
flags
=
INTER_LINEAR
,
int
borderMode
=
BORDER_CONSTANT
,
int
borderMode
=
BORDER_CONSTANT
,
...
@@ -533,12 +535,13 @@ enum { INTER_BITS=5, INTER_BITS2=INTER_BITS*2,
...
@@ -533,12 +535,13 @@ enum { INTER_BITS=5, INTER_BITS2=INTER_BITS*2,
INTER_TAB_SIZE2
=
INTER_TAB_SIZE
*
INTER_TAB_SIZE
};
INTER_TAB_SIZE2
=
INTER_TAB_SIZE
*
INTER_TAB_SIZE
};
//! warps the image using the precomputed maps. The maps are stored in either floating-point or integer fixed-point format
//! warps the image using the precomputed maps. The maps are stored in either floating-point or integer fixed-point format
CV_EXPORTS
void
remap
(
const
Mat
&
src
,
Mat
&
dst
,
const
Mat
&
map1
,
const
Mat
&
map2
,
CV_EXPORTS
void
remap
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
const
Mat
&
map1
,
const
Mat
&
map2
,
int
interpolation
,
int
borderMode
=
BORDER_CONSTANT
,
int
interpolation
,
int
borderMode
=
BORDER_CONSTANT
,
const
Scalar
&
borderValue
=
Scalar
());
const
Scalar
&
borderValue
=
Scalar
());
//! converts maps for remap from floating-point to fixed-point format or backwards
//! converts maps for remap from floating-point to fixed-point format or backwards
CV_EXPORTS
void
convertMaps
(
const
Mat
&
map1
,
const
Mat
&
map2
,
Mat
&
dstmap1
,
Mat
&
dstmap2
,
CV_EXPORTS
void
convertMaps
(
const
Mat
&
map1
,
const
Mat
&
map2
,
CV_OUT
Mat
&
dstmap1
,
CV_OUT
Mat
&
dstmap2
,
int
dstmap1type
,
bool
nninterpolation
=
false
);
int
dstmap1type
,
bool
nninterpolation
=
false
);
//! returns 2x3 affine transformation matrix for the planar rotation.
//! returns 2x3 affine transformation matrix for the planar rotation.
...
@@ -548,28 +551,28 @@ CV_EXPORTS Mat getPerspectiveTransform( const Point2f src[], const Point2f dst[]
...
@@ -548,28 +551,28 @@ CV_EXPORTS Mat getPerspectiveTransform( const Point2f src[], const Point2f dst[]
//! returns 2x3 affine transformation for the corresponding 3 point pairs.
//! returns 2x3 affine transformation for the corresponding 3 point pairs.
CV_EXPORTS
Mat
getAffineTransform
(
const
Point2f
src
[],
const
Point2f
dst
[]
);
CV_EXPORTS
Mat
getAffineTransform
(
const
Point2f
src
[],
const
Point2f
dst
[]
);
//! computes 2x3 affine transformation matrix that is inverse to the specified 2x3 affine transformation.
//! computes 2x3 affine transformation matrix that is inverse to the specified 2x3 affine transformation.
CV_EXPORTS
void
invertAffineTransform
(
const
Mat
&
M
,
Mat
&
iM
);
CV_EXPORTS
void
invertAffineTransform
(
const
Mat
&
M
,
CV_OUT
Mat
&
iM
);
//! extracts rectangle from the image at sub-pixel location
//! extracts rectangle from the image at sub-pixel location
CV_EXPORTS
void
getRectSubPix
(
const
Mat
&
image
,
Size
patchSize
,
CV_EXPORTS
void
getRectSubPix
(
const
Mat
&
image
,
Size
patchSize
,
Point2f
center
,
Mat
&
patch
,
int
patchType
=-
1
);
Point2f
center
,
CV_OUT
Mat
&
patch
,
int
patchType
=-
1
);
//! computes the integral image
//! computes the integral image
CV_EXPORTS
void
integral
(
const
Mat
&
src
,
Mat
&
sum
,
int
sdepth
=-
1
);
CV_EXPORTS
void
integral
(
const
Mat
&
src
,
CV_OUT
Mat
&
sum
,
int
sdepth
=-
1
);
//! computes the integral image and integral for the squared image
//! computes the integral image and integral for the squared image
CV_EXPORTS
void
integral
(
const
Mat
&
src
,
Mat
&
sum
,
Mat
&
sqsum
,
int
sdepth
=-
1
);
CV_EXPORTS
void
integral
(
const
Mat
&
src
,
CV_OUT
Mat
&
sum
,
CV_OUT
Mat
&
sqsum
,
int
sdepth
=-
1
);
//! computes the integral image, integral for the squared image and the tilted integral image
//! computes the integral image, integral for the squared image and the tilted integral image
CV_EXPORTS
void
integral
(
const
Mat
&
src
,
Mat
&
sum
,
Mat
&
sqsum
,
Mat
&
tilted
,
int
sdepth
=-
1
);
CV_EXPORTS
void
integral
(
const
Mat
&
src
,
CV_OUT
Mat
&
sum
,
CV_OUT
Mat
&
sqsum
,
CV_OUT
Mat
&
tilted
,
int
sdepth
=-
1
);
//! adds image to the accumulator (dst += src). Unlike cv::add, dst and src can have different types.
//! adds image to the accumulator (dst += src). Unlike cv::add, dst and src can have different types.
CV_EXPORTS
void
accumulate
(
const
Mat
&
src
,
Mat
&
dst
,
const
Mat
&
mask
=
Mat
()
);
CV_EXPORTS
void
accumulate
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
const
Mat
&
mask
=
Mat
()
);
//! adds squared src image to the accumulator (dst += src*src).
//! adds squared src image to the accumulator (dst += src*src).
CV_EXPORTS
void
accumulateSquare
(
const
Mat
&
src
,
Mat
&
dst
,
const
Mat
&
mask
=
Mat
()
);
CV_EXPORTS
void
accumulateSquare
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
const
Mat
&
mask
=
Mat
()
);
//! adds product of the 2 images to the accumulator (dst += src1*src2).
//! adds product of the 2 images to the accumulator (dst += src1*src2).
CV_EXPORTS
void
accumulateProduct
(
const
Mat
&
src1
,
const
Mat
&
src2
,
CV_EXPORTS
void
accumulateProduct
(
const
Mat
&
src1
,
const
Mat
&
src2
,
Mat
&
dst
,
const
Mat
&
mask
=
Mat
()
);
CV_OUT
Mat
&
dst
,
const
Mat
&
mask
=
Mat
()
);
//! updates the running average (dst = dst*(1-alpha) + src*alpha)
//! updates the running average (dst = dst*(1-alpha) + src*alpha)
CV_EXPORTS
void
accumulateWeighted
(
const
Mat
&
src
,
Mat
&
dst
,
CV_EXPORTS
void
accumulateWeighted
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
double
alpha
,
const
Mat
&
mask
=
Mat
()
);
double
alpha
,
const
Mat
&
mask
=
Mat
()
);
//! type of the threshold operation
//! type of the threshold operation
...
@@ -577,30 +580,30 @@ enum { THRESH_BINARY=0, THRESH_BINARY_INV=1, THRESH_TRUNC=2, THRESH_TOZERO=3,
...
@@ -577,30 +580,30 @@ enum { THRESH_BINARY=0, THRESH_BINARY_INV=1, THRESH_TRUNC=2, THRESH_TOZERO=3,
THRESH_TOZERO_INV
=
4
,
THRESH_MASK
=
7
,
THRESH_OTSU
=
8
};
THRESH_TOZERO_INV
=
4
,
THRESH_MASK
=
7
,
THRESH_OTSU
=
8
};
//! applies fixed threshold to the image
//! applies fixed threshold to the image
CV_EXPORTS
double
threshold
(
const
Mat
&
src
,
Mat
&
dst
,
double
thresh
,
double
maxval
,
int
type
);
CV_EXPORTS
double
threshold
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
double
thresh
,
double
maxval
,
int
type
);
//! adaptive threshold algorithm
//! adaptive threshold algorithm
enum
{
ADAPTIVE_THRESH_MEAN_C
=
0
,
ADAPTIVE_THRESH_GAUSSIAN_C
=
1
};
enum
{
ADAPTIVE_THRESH_MEAN_C
=
0
,
ADAPTIVE_THRESH_GAUSSIAN_C
=
1
};
//! applies variable (adaptive) threshold to the image
//! applies variable (adaptive) threshold to the image
CV_EXPORTS
void
adaptiveThreshold
(
const
Mat
&
src
,
Mat
&
dst
,
double
maxValue
,
CV_EXPORTS
void
adaptiveThreshold
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
double
maxValue
,
int
adaptiveMethod
,
int
thresholdType
,
int
adaptiveMethod
,
int
thresholdType
,
int
blockSize
,
double
C
);
int
blockSize
,
double
C
);
//! smooths and downsamples the image
//! smooths and downsamples the image
CV_EXPORTS
void
pyrDown
(
const
Mat
&
src
,
Mat
&
dst
,
const
Size
&
dstsize
=
Size
());
CV_EXPORTS
void
pyrDown
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
const
Size
&
dstsize
=
Size
());
//! upsamples and smoothes the image
//! upsamples and smoothes the image
CV_EXPORTS
void
pyrUp
(
const
Mat
&
src
,
Mat
&
dst
,
const
Size
&
dstsize
=
Size
());
CV_EXPORTS
void
pyrUp
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
const
Size
&
dstsize
=
Size
());
//! builds the gaussian pyramid using pyrDown() as a basic operation
//! builds the gaussian pyramid using pyrDown() as a basic operation
CV_EXPORTS
void
buildPyramid
(
const
Mat
&
src
,
vector
<
Mat
>&
dst
,
int
maxlevel
);
CV_EXPORTS
void
buildPyramid
(
const
Mat
&
src
,
CV_OUT
vector
<
Mat
>&
dst
,
int
maxlevel
);
//! corrects lens distortion for the given camera matrix and distortion coefficients
//! corrects lens distortion for the given camera matrix and distortion coefficients
CV_EXPORTS
void
undistort
(
const
Mat
&
src
,
Mat
&
dst
,
const
Mat
&
cameraMatrix
,
CV_EXPORTS
void
undistort
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
const
Mat
&
cameraMatrix
,
const
Mat
&
distCoeffs
,
const
Mat
&
newCameraMatrix
=
Mat
()
);
const
Mat
&
distCoeffs
,
const
Mat
&
newCameraMatrix
=
Mat
()
);
//! initializes maps for cv::remap() to correct lens distortion and optionally rectify the image
//! initializes maps for cv::remap() to correct lens distortion and optionally rectify the image
CV_EXPORTS
void
initUndistortRectifyMap
(
const
Mat
&
cameraMatrix
,
const
Mat
&
distCoeffs
,
CV_EXPORTS
void
initUndistortRectifyMap
(
const
Mat
&
cameraMatrix
,
const
Mat
&
distCoeffs
,
const
Mat
&
R
,
const
Mat
&
newCameraMatrix
,
const
Mat
&
R
,
const
Mat
&
newCameraMatrix
,
Size
size
,
int
m1type
,
Mat
&
map1
,
Mat
&
map2
);
Size
size
,
int
m1type
,
CV_OUT
Mat
&
map1
,
CV_OUT
Mat
&
map2
);
enum
enum
{
{
...
@@ -611,63 +614,65 @@ enum
...
@@ -611,63 +614,65 @@ enum
//! initializes maps for cv::remap() for wide-angle
//! initializes maps for cv::remap() for wide-angle
CV_EXPORTS
float
initWideAngleProjMap
(
const
Mat
&
cameraMatrix
,
const
Mat
&
distCoeffs
,
CV_EXPORTS
float
initWideAngleProjMap
(
const
Mat
&
cameraMatrix
,
const
Mat
&
distCoeffs
,
Size
imageSize
,
int
destImageWidth
,
Size
imageSize
,
int
destImageWidth
,
int
m1type
,
Mat
&
map1
,
Mat
&
map2
,
int
m1type
,
CV_OUT
Mat
&
map1
,
CV_OUT
Mat
&
map2
,
int
projType
=
PROJ_SPHERICAL_EQRECT
,
double
alpha
=
0
);
int
projType
=
PROJ_SPHERICAL_EQRECT
,
double
alpha
=
0
);
//! returns the default new camera matrix (by default it is the same as cameraMatrix unless centerPricipalPoint=true)
//! returns the default new camera matrix (by default it is the same as cameraMatrix unless centerPricipalPoint=true)
CV_EXPORTS
Mat
getDefaultNewCameraMatrix
(
const
Mat
&
cameraMatrix
,
Size
imgsize
=
Size
(),
CV_EXPORTS
Mat
getDefaultNewCameraMatrix
(
const
Mat
&
cameraMatrix
,
Size
imgsize
=
Size
(),
bool
centerPrincipalPoint
=
false
);
bool
centerPrincipalPoint
=
false
);
//! returns points' coordinates after lens distortion correction
//! returns points' coordinates after lens distortion correction
CV_EXPORTS
void
undistortPoints
(
const
Mat
&
src
,
vector
<
Point2f
>&
dst
,
CV_EXPORTS
void
undistortPoints
(
const
Mat
&
src
,
CV_OUT
vector
<
Point2f
>&
dst
,
const
Mat
&
cameraMatrix
,
const
Mat
&
distCoeffs
,
const
Mat
&
cameraMatrix
,
const
Mat
&
distCoeffs
,
const
Mat
&
R
=
Mat
(),
const
Mat
&
P
=
Mat
());
const
Mat
&
R
=
Mat
(),
const
Mat
&
P
=
Mat
());
//! returns points' coordinates after lens distortion correction
//! returns points' coordinates after lens distortion correction
CV_EXPORTS
void
undistortPoints
(
const
Mat
&
src
,
Mat
&
dst
,
CV_EXPORTS
void
undistortPoints
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
const
Mat
&
cameraMatrix
,
const
Mat
&
distCoeffs
,
const
Mat
&
cameraMatrix
,
const
Mat
&
distCoeffs
,
const
Mat
&
R
=
Mat
(),
const
Mat
&
P
=
Mat
());
const
Mat
&
R
=
Mat
(),
const
Mat
&
P
=
Mat
());
template
<>
CV_EXPORTS
void
Ptr
<
CvHistogram
>::
delete_obj
();
template
<>
CV_EXPORTS
void
Ptr
<
CvHistogram
>::
delete_obj
();
//! computes the joint dense histogram for a set of images.
//! computes the joint dense histogram for a set of images.
CV_EXPORTS
void
calcHist
(
const
Mat
*
images
,
int
nimages
,
CV_EXPORTS
void
calcHist
(
CV_CARRAY
(
nimages
)
const
Mat
*
images
,
int
nimages
,
const
int
*
channels
,
const
Mat
&
mask
,
CV_CARRAY
(
dims
)
const
int
*
channels
,
const
Mat
&
mask
,
MatND
&
hist
,
int
dims
,
const
int
*
histSize
,
CV_OUT
Mat
&
hist
,
int
dims
,
CV_CARRAY
(
dims
)
const
int
*
histSize
,
const
float
**
ranges
,
bool
uniform
=
true
,
CV_CUSTOM_CARRAY
((
dims
,
histSize
,
uniform
))
const
float
**
ranges
,
bool
accumulate
=
false
);
bool
uniform
=
true
,
bool
accumulate
=
false
);
//! computes the joint sparse histogram for a set of images.
//! computes the joint sparse histogram for a set of images.
CV_EXPORTS
void
calcHist
(
const
Mat
*
images
,
int
nimages
,
CV_EXPORTS
void
calcHist
(
CV_CARRAY
(
nimages
)
const
Mat
*
images
,
int
nimages
,
const
int
*
channels
,
const
Mat
&
mask
,
CV_CARRAY
(
dims
)
const
int
*
channels
,
const
Mat
&
mask
,
SparseMat
&
hist
,
int
dims
,
const
int
*
histSize
,
CV_OUT
SparseMat
&
hist
,
int
dims
,
CV_CARRAY
(
dims
)
const
int
*
histSize
,
const
float
**
ranges
,
bool
uniform
=
true
,
CV_CUSTOM_CARRAY
((
dims
,
histSize
,
uniform
))
const
float
**
ranges
,
bool
accumulate
=
false
);
bool
uniform
=
true
,
bool
accumulate
=
false
);
//! computes back projection for the set of images
//! computes back projection for the set of images
CV_EXPORTS
void
calcBackProject
(
const
Mat
*
images
,
int
nimages
,
CV_EXPORTS
void
calcBackProject
(
CV_CARRAY
(
nimages
)
const
Mat
*
images
,
int
nimages
,
const
int
*
channels
,
const
MatND
&
hist
,
CV_CARRAY
(
hist
.
dims
)
const
int
*
channels
,
const
Mat
&
hist
,
Mat
&
backProject
,
const
float
**
ranges
,
CV_OUT
Mat
&
backProject
,
CV_CUSTOM_CARRAY
(
hist
)
const
float
**
ranges
,
double
scale
=
1
,
bool
uniform
=
true
);
double
scale
=
1
,
bool
uniform
=
true
);
//! computes back projection for the set of images
//! computes back projection for the set of images
CV_EXPORTS
void
calcBackProject
(
const
Mat
*
images
,
int
nimages
,
CV_EXPORTS
void
calcBackProject
(
CV_CARRAY
(
nimages
)
const
Mat
*
images
,
int
nimages
,
const
int
*
channels
,
const
SparseMat
&
hist
,
CV_CARRAY
(
hist
.
dims
())
const
int
*
channels
,
Mat
&
backProject
,
const
float
**
ranges
,
const
SparseMat
&
hist
,
CV_OUT
Mat
&
backProject
,
CV_CUSTOM_CARRAY
(
hist
)
const
float
**
ranges
,
double
scale
=
1
,
bool
uniform
=
true
);
double
scale
=
1
,
bool
uniform
=
true
);
//! compares two histograms stored in dense arrays
//! compares two histograms stored in dense arrays
CV_EXPORTS
double
compareHist
(
const
Mat
ND
&
H1
,
const
MatND
&
H2
,
int
method
);
CV_EXPORTS
double
compareHist
(
const
Mat
&
H1
,
const
Mat
&
H2
,
int
method
);
//! compares two histograms stored in sparse arrays
//! compares two histograms stored in sparse arrays
CV_EXPORTS
double
compareHist
(
const
SparseMat
&
H1
,
const
SparseMat
&
H2
,
int
method
);
CV_EXPORTS
double
compareHist
(
const
SparseMat
&
H1
,
const
SparseMat
&
H2
,
int
method
);
//! normalizes the grayscale image brightness and contrast by normalizing its histogram
//! normalizes the grayscale image brightness and contrast by normalizing its histogram
CV_EXPORTS
void
equalizeHist
(
const
Mat
&
src
,
Mat
&
dst
);
CV_EXPORTS
void
equalizeHist
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
);
//! segments the image using watershed algorithm
//! segments the image using watershed algorithm
CV_EXPORTS
void
watershed
(
const
Mat
&
image
,
Mat
&
markers
);
CV_EXPORTS
void
watershed
(
const
Mat
&
image
,
Mat
&
markers
);
//! filters image using meanshift algorithm
//! filters image using meanshift algorithm
CV_EXPORTS
void
pyrMeanShiftFiltering
(
const
Mat
&
src
,
Mat
&
dst
,
CV_EXPORTS
void
pyrMeanShiftFiltering
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
double
sp
,
double
sr
,
int
maxLevel
=
1
,
double
sp
,
double
sr
,
int
maxLevel
=
1
,
TermCriteria
termcrit
=
TermCriteria
(
TermCriteria
::
MAX_ITER
+
TermCriteria
::
EPS
,
5
,
1
)
);
TermCriteria
termcrit
=
TermCriteria
(
TermCriteria
::
MAX_ITER
+
TermCriteria
::
EPS
,
5
,
1
)
);
...
@@ -698,14 +703,14 @@ enum
...
@@ -698,14 +703,14 @@ enum
//! restores the damaged image areas using one of the available intpainting algorithms
//! restores the damaged image areas using one of the available intpainting algorithms
CV_EXPORTS
void
inpaint
(
const
Mat
&
src
,
const
Mat
&
inpaintMask
,
CV_EXPORTS
void
inpaint
(
const
Mat
&
src
,
const
Mat
&
inpaintMask
,
Mat
&
dst
,
double
inpaintRange
,
int
flags
);
CV_OUT
Mat
&
dst
,
double
inpaintRange
,
int
flags
);
//! builds the discrete Voronoi diagram
//! builds the discrete Voronoi diagram
CV_EXPORTS
void
distanceTransform
(
const
Mat
&
src
,
Mat
&
dst
,
Mat
&
labels
,
CV_EXPORTS
void
distanceTransform
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
Mat
&
labels
,
int
distanceType
,
int
maskSize
);
int
distanceType
,
int
maskSize
);
//! computes the distance transform map
//! computes the distance transform map
CV_EXPORTS
void
distanceTransform
(
const
Mat
&
src
,
Mat
&
dst
,
CV_EXPORTS
void
distanceTransform
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
int
distanceType
,
int
maskSize
);
int
distanceType
,
int
maskSize
);
enum
{
FLOODFILL_FIXED_RANGE
=
1
<<
16
,
enum
{
FLOODFILL_FIXED_RANGE
=
1
<<
16
,
...
@@ -724,7 +729,7 @@ CV_EXPORTS int floodFill( Mat& image, Mat& mask,
...
@@ -724,7 +729,7 @@ CV_EXPORTS int floodFill( Mat& image, Mat& mask,
int
flags
=
4
);
int
flags
=
4
);
//! converts image from one color space to another
//! converts image from one color space to another
CV_EXPORTS
void
cvtColor
(
const
Mat
&
src
,
Mat
&
dst
,
int
code
,
int
dstCn
=
0
);
CV_EXPORTS
void
cvtColor
(
const
Mat
&
src
,
CV_OUT
Mat
&
dst
,
int
code
,
int
dstCn
=
0
);
//! raster image moments
//! raster image moments
class
CV_EXPORTS
Moments
class
CV_EXPORTS
Moments
...
@@ -758,7 +763,7 @@ CV_EXPORTS void HuMoments( const Moments& moments, double hu[7] );
...
@@ -758,7 +763,7 @@ CV_EXPORTS void HuMoments( const Moments& moments, double hu[7] );
enum
{
TM_SQDIFF
=
0
,
TM_SQDIFF_NORMED
=
1
,
TM_CCORR
=
2
,
TM_CCORR_NORMED
=
3
,
TM_CCOEFF
=
4
,
TM_CCOEFF_NORMED
=
5
};
enum
{
TM_SQDIFF
=
0
,
TM_SQDIFF_NORMED
=
1
,
TM_CCORR
=
2
,
TM_CCORR_NORMED
=
3
,
TM_CCOEFF
=
4
,
TM_CCOEFF_NORMED
=
5
};
//! computes the proximity map for the raster template and the image where the template is searched for
//! computes the proximity map for the raster template and the image where the template is searched for
CV_EXPORTS
void
matchTemplate
(
const
Mat
&
image
,
const
Mat
&
templ
,
Mat
&
result
,
int
method
);
CV_EXPORTS
void
matchTemplate
(
const
Mat
&
image
,
const
Mat
&
templ
,
CV_OUT
Mat
&
result
,
int
method
);
//! mode of the contour retrieval algorithm
//! mode of the contour retrieval algorithm
enum
enum
...
@@ -779,12 +784,12 @@ enum
...
@@ -779,12 +784,12 @@ enum
};
};
//! retrieves contours and the hierarchical information from black-n-white image.
//! retrieves contours and the hierarchical information from black-n-white image.
CV_EXPORTS
void
findContours
(
Mat
&
image
,
vector
<
vector
<
Point
>
>&
contours
,
CV_EXPORTS
void
findContours
(
Mat
&
image
,
CV_OUT
vector
<
vector
<
Point
>
>&
contours
,
vector
<
Vec4i
>&
hierarchy
,
int
mode
,
vector
<
Vec4i
>&
hierarchy
,
int
mode
,
int
method
,
Point
offset
=
Point
());
int
method
,
Point
offset
=
Point
());
//! retrieves contours from black-n-white image.
//! retrieves contours from black-n-white image.
CV_EXPORTS
void
findContours
(
Mat
&
image
,
vector
<
vector
<
Point
>
>&
contours
,
CV_EXPORTS
void
findContours
(
Mat
&
image
,
CV_OUT
vector
<
vector
<
Point
>
>&
contours
,
int
mode
,
int
method
,
Point
offset
=
Point
());
int
mode
,
int
method
,
Point
offset
=
Point
());
//! draws contours in the image
//! draws contours in the image
...
@@ -796,11 +801,11 @@ CV_EXPORTS void drawContours( Mat& image, const vector<vector<Point> >& contours
...
@@ -796,11 +801,11 @@ CV_EXPORTS void drawContours( Mat& image, const vector<vector<Point> >& contours
//! approximates contour or a curve using Douglas-Peucker algorithm
//! approximates contour or a curve using Douglas-Peucker algorithm
CV_EXPORTS
void
approxPolyDP
(
const
Mat
&
curve
,
CV_EXPORTS
void
approxPolyDP
(
const
Mat
&
curve
,
vector
<
Point
>&
approxCurve
,
CV_OUT
vector
<
Point
>&
approxCurve
,
double
epsilon
,
bool
closed
);
double
epsilon
,
bool
closed
);
//! approximates contour or a curve using Douglas-Peucker algorithm
//! approximates contour or a curve using Douglas-Peucker algorithm
CV_EXPORTS
void
approxPolyDP
(
const
Mat
&
curve
,
CV_EXPORTS
void
approxPolyDP
(
const
Mat
&
curve
,
vector
<
Point2f
>&
approxCurve
,
CV_OUT
vector
<
Point2f
>&
approxCurve
,
double
epsilon
,
bool
closed
);
double
epsilon
,
bool
closed
);
//! computes the contour perimeter (closed=true) or a curve length
//! computes the contour perimeter (closed=true) or a curve length
CV_EXPORTS
double
arcLength
(
const
Mat
&
curve
,
bool
closed
);
CV_EXPORTS
double
arcLength
(
const
Mat
&
curve
,
bool
closed
);
...
@@ -818,11 +823,11 @@ CV_EXPORTS double matchShapes( const Mat& contour1,
...
@@ -818,11 +823,11 @@ CV_EXPORTS double matchShapes( const Mat& contour1,
const
Mat
&
contour2
,
const
Mat
&
contour2
,
int
method
,
double
parameter
);
int
method
,
double
parameter
);
//! computes convex hull for a set of 2D points.
//! computes convex hull for a set of 2D points.
CV_EXPORTS
void
convexHull
(
const
Mat
&
points
,
vector
<
int
>&
hull
,
bool
clockwise
=
false
);
CV_EXPORTS
void
convexHull
(
const
Mat
&
points
,
CV_OUT
vector
<
int
>&
hull
,
bool
clockwise
=
false
);
//! computes convex hull for a set of 2D points.
//! computes convex hull for a set of 2D points.
CV_EXPORTS
void
convexHull
(
const
Mat
&
points
,
vector
<
Point
>&
hull
,
bool
clockwise
=
false
);
CV_EXPORTS
void
convexHull
(
const
Mat
&
points
,
CV_OUT
vector
<
Point
>&
hull
,
bool
clockwise
=
false
);
//! computes convex hull for a set of 2D points.
//! computes convex hull for a set of 2D points.
CV_EXPORTS
void
convexHull
(
const
Mat
&
points
,
vector
<
Point2f
>&
hull
,
bool
clockwise
=
false
);
CV_EXPORTS
void
convexHull
(
const
Mat
&
points
,
CV_OUT
vector
<
Point2f
>&
hull
,
bool
clockwise
=
false
);
//! returns true iff the contour is convex. Does not support contours with self-intersection
//! returns true iff the contour is convex. Does not support contours with self-intersection
CV_EXPORTS
bool
isContourConvex
(
const
Mat
&
contour
);
CV_EXPORTS
bool
isContourConvex
(
const
Mat
&
contour
);
...
@@ -831,10 +836,10 @@ CV_EXPORTS bool isContourConvex( const Mat& contour );
...
@@ -831,10 +836,10 @@ CV_EXPORTS bool isContourConvex( const Mat& contour );
CV_EXPORTS
RotatedRect
fitEllipse
(
const
Mat
&
points
);
CV_EXPORTS
RotatedRect
fitEllipse
(
const
Mat
&
points
);
//! fits line to the set of 2D points using M-estimator algorithm
//! fits line to the set of 2D points using M-estimator algorithm
CV_EXPORTS
void
fitLine
(
const
Mat
&
points
,
Vec4f
&
line
,
int
distType
,
CV_EXPORTS
void
fitLine
(
const
Mat
&
points
,
CV_OUT
Vec4f
&
line
,
int
distType
,
double
param
,
double
reps
,
double
aeps
);
double
param
,
double
reps
,
double
aeps
);
//! fits line to the set of 3D points using M-estimator algorithm
//! fits line to the set of 3D points using M-estimator algorithm
CV_EXPORTS
void
fitLine
(
const
Mat
&
points
,
Vec6f
&
line
,
int
distType
,
CV_EXPORTS
void
fitLine
(
const
Mat
&
points
,
CV_OUT
Vec6f
&
line
,
int
distType
,
double
param
,
double
reps
,
double
aeps
);
double
param
,
double
reps
,
double
aeps
);
//! checks if the point is inside the contour. Optionally computes the signed distance from the point to the contour boundary
//! checks if the point is inside the contour. Optionally computes the signed distance from the point to the contour boundary
CV_EXPORTS
double
pointPolygonTest
(
const
Mat
&
contour
,
CV_EXPORTS
double
pointPolygonTest
(
const
Mat
&
contour
,
...
@@ -845,7 +850,7 @@ CV_EXPORTS Mat estimateRigidTransform( const Mat& A, const Mat& B,
...
@@ -845,7 +850,7 @@ CV_EXPORTS Mat estimateRigidTransform( const Mat& A, const Mat& B,
bool
fullAffine
);
bool
fullAffine
);
//! computes the best-fit affine transformation that maps one 3D point set to another (RANSAC algorithm is used)
//! computes the best-fit affine transformation that maps one 3D point set to another (RANSAC algorithm is used)
CV_EXPORTS
int
estimateAffine3D
(
const
Mat
&
from
,
const
Mat
&
to
,
Mat
&
ou
t
,
CV_EXPORTS
int
estimateAffine3D
(
const
Mat
&
from
,
const
Mat
&
to
,
CV_OUT
Mat
&
ds
t
,
vector
<
uchar
>&
outliers
,
vector
<
uchar
>&
outliers
,
double
param1
=
3.0
,
double
param2
=
0.99
);
double
param1
=
3.0
,
double
param2
=
0.99
);
...
...
modules/ml/include/opencv2/ml/ml.hpp
View file @
1b1eab8e
...
@@ -247,23 +247,21 @@ public:
...
@@ -247,23 +247,21 @@ public:
CvNormalBayesClassifier
();
CvNormalBayesClassifier
();
virtual
~
CvNormalBayesClassifier
();
virtual
~
CvNormalBayesClassifier
();
CvNormalBayesClassifier
(
const
CvMat
*
_train_data
,
const
CvMat
*
_responses
,
C
V_NO_WRAP
C
vNormalBayesClassifier
(
const
CvMat
*
_train_data
,
const
CvMat
*
_responses
,
const
CvMat
*
_var_idx
=
0
,
const
CvMat
*
_sample_idx
=
0
);
const
CvMat
*
_var_idx
=
0
,
const
CvMat
*
_sample_idx
=
0
);
virtual
bool
train
(
const
CvMat
*
_train_data
,
const
CvMat
*
_responses
,
CV_NO_WRAP
virtual
bool
train
(
const
CvMat
*
_train_data
,
const
CvMat
*
_responses
,
const
CvMat
*
_var_idx
=
0
,
const
CvMat
*
_sample_idx
=
0
,
bool
update
=
false
);
const
CvMat
*
_var_idx
=
0
,
const
CvMat
*
_sample_idx
=
0
,
bool
update
=
false
);
virtual
float
predict
(
const
CvMat
*
_samples
,
CvMat
*
results
=
0
)
const
;
CV_NO_WRAP
virtual
float
predict
(
const
CvMat
*
_samples
,
CvMat
*
results
=
0
)
const
;
virtual
void
clear
();
virtual
void
clear
();
#ifndef SWIG
CvNormalBayesClassifier
(
const
cv
::
Mat
&
_train_data
,
const
cv
::
Mat
&
_responses
,
CvNormalBayesClassifier
(
const
cv
::
Mat
&
_train_data
,
const
cv
::
Mat
&
_responses
,
const
cv
::
Mat
&
_var_idx
=
cv
::
Mat
(),
const
cv
::
Mat
&
_sample_idx
=
cv
::
Mat
()
);
const
cv
::
Mat
&
_var_idx
=
cv
::
Mat
(),
const
cv
::
Mat
&
_sample_idx
=
cv
::
Mat
()
);
virtual
bool
train
(
const
cv
::
Mat
&
_train_data
,
const
cv
::
Mat
&
_responses
,
virtual
bool
train
(
const
cv
::
Mat
&
_train_data
,
const
cv
::
Mat
&
_responses
,
const
cv
::
Mat
&
_var_idx
=
cv
::
Mat
(),
const
cv
::
Mat
&
_sample_idx
=
cv
::
Mat
(),
const
cv
::
Mat
&
_var_idx
=
cv
::
Mat
(),
const
cv
::
Mat
&
_sample_idx
=
cv
::
Mat
(),
bool
update
=
false
);
bool
update
=
false
);
virtual
float
predict
(
const
cv
::
Mat
&
_samples
,
cv
::
Mat
*
results
=
0
)
const
;
virtual
float
predict
(
const
cv
::
Mat
&
_samples
,
cv
::
Mat
*
results
=
0
)
const
;
#endif
virtual
void
write
(
CvFileStorage
*
storage
,
const
char
*
name
)
const
;
virtual
void
write
(
CvFileStorage
*
storage
,
const
char
*
name
)
const
;
virtual
void
read
(
CvFileStorage
*
storage
,
CvFileNode
*
node
);
virtual
void
read
(
CvFileStorage
*
storage
,
CvFileNode
*
node
);
...
...
modules/objdetect/include/opencv2/objdetect/objdetect.hpp
View file @
1b1eab8e
...
@@ -271,7 +271,7 @@ namespace cv
...
@@ -271,7 +271,7 @@ namespace cv
///////////////////////////// Object Detection ////////////////////////////
///////////////////////////// Object Detection ////////////////////////////
CV_EXPORTS
void
groupRectangles
(
vector
<
Rect
>&
rectList
,
int
groupThreshold
,
double
eps
=
0.2
);
CV_EXPORTS
void
groupRectangles
(
vector
<
Rect
>&
rectList
,
int
groupThreshold
,
double
eps
=
0.2
);
CV_EXPORTS
void
groupRectangles
(
vector
<
Rect
>&
rectList
,
vector
<
int
>&
weights
,
int
groupThreshold
,
double
eps
=
0.2
);
CV_EXPORTS
void
groupRectangles
(
vector
<
Rect
>&
rectList
,
CV_OUT
vector
<
int
>&
weights
,
int
groupThreshold
,
double
eps
=
0.2
);
class
CV_EXPORTS
FeatureEvaluator
class
CV_EXPORTS
FeatureEvaluator
{
{
...
@@ -328,7 +328,7 @@ public:
...
@@ -328,7 +328,7 @@ public:
bool
load
(
const
string
&
filename
);
bool
load
(
const
string
&
filename
);
bool
read
(
const
FileNode
&
node
);
bool
read
(
const
FileNode
&
node
);
void
detectMultiScale
(
const
Mat
&
image
,
void
detectMultiScale
(
const
Mat
&
image
,
vector
<
Rect
>&
objects
,
CV_OUT
vector
<
Rect
>&
objects
,
double
scaleFactor
=
1.1
,
double
scaleFactor
=
1.1
,
int
minNeighbors
=
3
,
int
flags
=
0
,
int
minNeighbors
=
3
,
int
flags
=
0
,
Size
minSize
=
Size
());
Size
minSize
=
Size
());
...
@@ -401,18 +401,18 @@ public:
...
@@ -401,18 +401,18 @@ public:
virtual
void
copyTo
(
HOGDescriptor
&
c
)
const
;
virtual
void
copyTo
(
HOGDescriptor
&
c
)
const
;
virtual
void
compute
(
const
Mat
&
img
,
virtual
void
compute
(
const
Mat
&
img
,
vector
<
float
>&
descriptors
,
CV_OUT
vector
<
float
>&
descriptors
,
Size
winStride
=
Size
(),
Size
padding
=
Size
(),
Size
winStride
=
Size
(),
Size
padding
=
Size
(),
const
vector
<
Point
>&
locations
=
vector
<
Point
>
())
const
;
const
vector
<
Point
>&
locations
=
vector
<
Point
>
())
const
;
virtual
void
detect
(
const
Mat
&
img
,
vector
<
Point
>&
foundLocations
,
virtual
void
detect
(
const
Mat
&
img
,
CV_OUT
vector
<
Point
>&
foundLocations
,
double
hitThreshold
=
0
,
Size
winStride
=
Size
(),
double
hitThreshold
=
0
,
Size
winStride
=
Size
(),
Size
padding
=
Size
(),
Size
padding
=
Size
(),
const
vector
<
Point
>&
searchLocations
=
vector
<
Point
>
())
const
;
const
vector
<
Point
>&
searchLocations
=
vector
<
Point
>
())
const
;
virtual
void
detectMultiScale
(
const
Mat
&
img
,
vector
<
Rect
>&
foundLocations
,
virtual
void
detectMultiScale
(
const
Mat
&
img
,
CV_OUT
vector
<
Rect
>&
foundLocations
,
double
hitThreshold
=
0
,
Size
winStride
=
Size
(),
double
hitThreshold
=
0
,
Size
winStride
=
Size
(),
Size
padding
=
Size
(),
double
scale
=
1.05
,
Size
padding
=
Size
(),
double
scale
=
1.05
,
int
groupThreshold
=
2
)
const
;
int
groupThreshold
=
2
)
const
;
virtual
void
computeGradient
(
const
Mat
&
img
,
Mat
&
grad
,
Mat
&
angleOfs
,
virtual
void
computeGradient
(
const
Mat
&
img
,
CV_OUT
Mat
&
grad
,
CV_OUT
Mat
&
angleOfs
,
Size
paddingTL
=
Size
(),
Size
paddingBR
=
Size
())
const
;
Size
paddingTL
=
Size
(),
Size
paddingBR
=
Size
())
const
;
static
vector
<
float
>
getDefaultPeopleDetector
();
static
vector
<
float
>
getDefaultPeopleDetector
();
...
...
modules/video/include/opencv2/video/background_segm.hpp
View file @
1b1eab8e
...
@@ -112,17 +112,11 @@ typedef struct CvBGStatModel
...
@@ -112,17 +112,11 @@ typedef struct CvBGStatModel
//
//
// Releases memory used by BGStatModel
// Releases memory used by BGStatModel
CV_INLINE
void
cvReleaseBGStatModel
(
CvBGStatModel
**
bg_model
)
CVAPI
(
void
)
cvReleaseBGStatModel
(
CvBGStatModel
**
bg_model
);
{
if
(
bg_model
&&
*
bg_model
&&
(
*
bg_model
)
->
release
)
(
*
bg_model
)
->
release
(
bg_model
);
}
// Updates statistical model and returns number of found foreground regions
// Updates statistical model and returns number of found foreground regions
CV_INLINE
int
cvUpdateBGStatModel
(
IplImage
*
current_frame
,
CvBGStatModel
*
bg_model
,
double
learningRate
CV_DEFAULT
(
-
1
))
CVAPI
(
int
)
cvUpdateBGStatModel
(
IplImage
*
current_frame
,
CvBGStatModel
*
bg_model
,
{
double
learningRate
CV_DEFAULT
(
-
1
));
return
bg_model
&&
bg_model
->
update
?
bg_model
->
update
(
current_frame
,
bg_model
,
learningRate
)
:
0
;
}
// Performs FG post-processing using segmentation
// Performs FG post-processing using segmentation
// (all pixels of a region will be classified as foreground if majority of pixels of the region are FG).
// (all pixels of a region will be classified as foreground if majority of pixels of the region are FG).
...
@@ -365,7 +359,8 @@ public:
...
@@ -365,7 +359,8 @@ public:
//! the virtual destructor
//! the virtual destructor
virtual
~
BackgroundSubtractor
();
virtual
~
BackgroundSubtractor
();
//! the update operator that takes the next video frame and returns the current foreground mask as 8-bit binary image.
//! the update operator that takes the next video frame and returns the current foreground mask as 8-bit binary image.
virtual
void
operator
()(
const
Mat
&
image
,
Mat
&
fgmask
,
double
learningRate
=
0
);
virtual
CV_WRAP_AS
(
apply
)
void
operator
()(
const
Mat
&
image
,
CV_OUT
Mat
&
fgmask
,
double
learningRate
=
0
);
};
};
...
...
modules/video/include/opencv2/video/tracking.hpp
View file @
1b1eab8e
...
@@ -248,8 +248,8 @@ CV_EXPORTS void updateMotionHistory( const Mat& silhouette, Mat& mhi,
...
@@ -248,8 +248,8 @@ CV_EXPORTS void updateMotionHistory( const Mat& silhouette, Mat& mhi,
double
timestamp
,
double
duration
);
double
timestamp
,
double
duration
);
//! computes the motion gradient orientation image from the motion history image
//! computes the motion gradient orientation image from the motion history image
CV_EXPORTS
void
calcMotionGradient
(
const
Mat
&
mhi
,
Mat
&
mask
,
CV_EXPORTS
void
calcMotionGradient
(
const
Mat
&
mhi
,
CV_OUT
Mat
&
mask
,
Mat
&
orientation
,
CV_OUT
Mat
&
orientation
,
double
delta1
,
double
delta2
,
double
delta1
,
double
delta2
,
int
apertureSize
=
3
);
int
apertureSize
=
3
);
...
@@ -260,11 +260,11 @@ CV_EXPORTS double calcGlobalOrientation( const Mat& orientation, const Mat& mask
...
@@ -260,11 +260,11 @@ CV_EXPORTS double calcGlobalOrientation( const Mat& orientation, const Mat& mask
// TODO: need good API for cvSegmentMotion
// TODO: need good API for cvSegmentMotion
//! updates the object tracking window using CAMSHIFT algorithm
//! updates the object tracking window using CAMSHIFT algorithm
CV_EXPORTS
RotatedRect
CamShift
(
const
Mat
&
probImage
,
Rect
&
window
,
CV_EXPORTS
RotatedRect
CamShift
(
const
Mat
&
probImage
,
CV_OUT
Rect
&
window
,
TermCriteria
criteria
);
TermCriteria
criteria
);
//! updates the object tracking window using meanshift algorithm
//! updates the object tracking window using meanshift algorithm
CV_EXPORTS
int
meanShift
(
const
Mat
&
probImage
,
Rect
&
window
,
CV_EXPORTS
int
meanShift
(
const
Mat
&
probImage
,
CV_OUT
Rect
&
window
,
TermCriteria
criteria
);
TermCriteria
criteria
);
/*!
/*!
...
@@ -313,8 +313,8 @@ enum { OPTFLOW_USE_INITIAL_FLOW=4, OPTFLOW_FARNEBACK_GAUSSIAN=256 };
...
@@ -313,8 +313,8 @@ enum { OPTFLOW_USE_INITIAL_FLOW=4, OPTFLOW_FARNEBACK_GAUSSIAN=256 };
//! computes sparse optical flow using multi-scale Lucas-Kanade algorithm
//! computes sparse optical flow using multi-scale Lucas-Kanade algorithm
CV_EXPORTS
void
calcOpticalFlowPyrLK
(
const
Mat
&
prevImg
,
const
Mat
&
nextImg
,
CV_EXPORTS
void
calcOpticalFlowPyrLK
(
const
Mat
&
prevImg
,
const
Mat
&
nextImg
,
const
vector
<
Point2f
>&
prevPts
,
vector
<
Point2f
>&
nextPts
,
const
vector
<
Point2f
>&
prevPts
,
CV_OUT
vector
<
Point2f
>&
nextPts
,
vector
<
uchar
>&
status
,
vector
<
float
>&
err
,
CV_OUT
vector
<
uchar
>&
status
,
CV_OUT
vector
<
float
>&
err
,
Size
winSize
=
Size
(
15
,
15
),
int
maxLevel
=
3
,
Size
winSize
=
Size
(
15
,
15
),
int
maxLevel
=
3
,
TermCriteria
criteria
=
TermCriteria
(
TermCriteria
criteria
=
TermCriteria
(
TermCriteria
::
COUNT
+
TermCriteria
::
EPS
,
TermCriteria
::
COUNT
+
TermCriteria
::
EPS
,
...
@@ -323,8 +323,8 @@ CV_EXPORTS void calcOpticalFlowPyrLK( const Mat& prevImg, const Mat& nextImg,
...
@@ -323,8 +323,8 @@ CV_EXPORTS void calcOpticalFlowPyrLK( const Mat& prevImg, const Mat& nextImg,
int
flags
=
0
);
int
flags
=
0
);
//! computes dense optical flow using Farneback algorithm
//! computes dense optical flow using Farneback algorithm
CV_EXPORTS
void
calcOpticalFlowFarneback
(
const
Mat
&
prev
0
,
const
Mat
&
next0
,
CV_EXPORTS
void
calcOpticalFlowFarneback
(
const
Mat
&
prev
,
const
Mat
&
next
,
Mat
&
flow0
,
double
pyr_scale
,
int
levels
,
int
winsize
,
CV_OUT
Mat
&
flow
,
double
pyr_scale
,
int
levels
,
int
winsize
,
int
iterations
,
int
poly_n
,
double
poly_sigma
,
int
flags
);
int
iterations
,
int
poly_n
,
double
poly_sigma
,
int
flags
);
}
}
...
...
modules/video/src/bgfg_estimation.cpp
View file @
1b1eab8e
...
@@ -56,9 +56,22 @@ CvBGStatModel* cvCreateBGStatModel( IplImage* first_frame, int model_type, void*
...
@@ -56,9 +56,22 @@ CvBGStatModel* cvCreateBGStatModel( IplImage* first_frame, int model_type, void*
return
bg_model
;
return
bg_model
;
}
}
void
cvReleaseBGStatModel
(
CvBGStatModel
**
bg_model
)
{
if
(
bg_model
&&
*
bg_model
&&
(
*
bg_model
)
->
release
)
(
*
bg_model
)
->
release
(
bg_model
);
}
int
cvUpdateBGStatModel
(
IplImage
*
current_frame
,
CvBGStatModel
*
bg_model
,
double
learningRate
)
{
return
bg_model
&&
bg_model
->
update
?
bg_model
->
update
(
current_frame
,
bg_model
,
learningRate
)
:
0
;
}
/* FOREGROUND DETECTOR INTERFACE */
/* FOREGROUND DETECTOR INTERFACE */
class
CvFGDetectorBase
:
public
CvFGDetector
class
CvFGDetectorBase
:
public
CvFGDetector
{
{
protected
:
protected
:
CvBGStatModel
*
m_pFG
;
CvBGStatModel
*
m_pFG
;
...
...
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