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
9981b283
Commit
9981b283
authored
Aug 06, 2012
by
Andrey Kamaev
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fixed build warnings (including error in FAST)
parent
fdc48abd
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
32 additions
and
29 deletions
+32
-29
stereovar.cpp
modules/contrib/src/stereovar.cpp
+3
-2
fast.cpp
modules/features2d/src/fast.cpp
+14
-11
smooth.cpp
modules/imgproc/src/smooth.cpp
+14
-14
bgfg_gmg.cpp
modules/video/src/bgfg_gmg.cpp
+1
-2
No files found.
modules/contrib/src/stereovar.cpp
View file @
9981b283
...
@@ -67,11 +67,12 @@ StereoVar::~StereoVar()
...
@@ -67,11 +67,12 @@ StereoVar::~StereoVar()
static
Mat
diffX
(
Mat
&
src
)
static
Mat
diffX
(
Mat
&
src
)
{
{
register
int
x
,
y
,
cols
=
src
.
cols
-
1
;
int
cols
=
src
.
cols
-
1
;
Mat
dst
(
src
.
size
(),
src
.
type
());
Mat
dst
(
src
.
size
(),
src
.
type
());
for
(
y
=
0
;
y
<
src
.
rows
;
y
++
){
for
(
int
y
=
0
;
y
<
src
.
rows
;
y
++
){
const
float
*
pSrc
=
src
.
ptr
<
float
>
(
y
);
const
float
*
pSrc
=
src
.
ptr
<
float
>
(
y
);
float
*
pDst
=
dst
.
ptr
<
float
>
(
y
);
float
*
pDst
=
dst
.
ptr
<
float
>
(
y
);
int
x
=
0
;
#if CV_SSE2
#if CV_SSE2
for
(
x
=
0
;
x
<=
cols
-
8
;
x
+=
8
)
{
for
(
x
=
0
;
x
<=
cols
-
8
;
x
+=
8
)
{
__m128
a0
=
_mm_loadu_ps
(
pSrc
+
x
);
__m128
a0
=
_mm_loadu_ps
(
pSrc
+
x
);
...
...
modules/features2d/src/fast.cpp
View file @
9981b283
...
@@ -9,16 +9,16 @@ Redistribution and use in source and binary forms, with or without
...
@@ -9,16 +9,16 @@ Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
modification, are permitted provided that the following conditions
are met:
are met:
*Redistributions of source code must retain the above copyright
*Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
notice, this list of conditions and the following disclaimer.
*Redistributions in binary form must reproduce the above copyright
*Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
documentation and/or other materials provided with the distribution.
*Neither the name of the University of Cambridge nor the names of
*Neither the name of the University of Cambridge nor the names of
its contributors may be used to endorse or promote products derived
its contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
...
@@ -350,7 +350,7 @@ int cornerScore<8>(const uchar* ptr, const int pixel[], int threshold)
...
@@ -350,7 +350,7 @@ int cornerScore<8>(const uchar* ptr, const int pixel[], int threshold)
}
}
int
b0
=
-
a0
;
int
b0
=
-
a0
;
for
(
k
=
0
;
k
<
12
;
k
+=
2
)
for
(
k
=
0
;
k
<
8
;
k
+=
2
)
{
{
int
b
=
std
::
max
((
int
)
d
[
k
+
1
],
(
int
)
d
[
k
+
2
]);
int
b
=
std
::
max
((
int
)
d
[
k
+
1
],
(
int
)
d
[
k
+
2
]);
b
=
std
::
max
(
b
,
(
int
)
d
[
k
+
3
]);
b
=
std
::
max
(
b
,
(
int
)
d
[
k
+
3
]);
...
@@ -375,7 +375,10 @@ template<int patternSize>
...
@@ -375,7 +375,10 @@ template<int patternSize>
void
FAST_t
(
InputArray
_img
,
std
::
vector
<
KeyPoint
>&
keypoints
,
int
threshold
,
bool
nonmax_suppression
)
void
FAST_t
(
InputArray
_img
,
std
::
vector
<
KeyPoint
>&
keypoints
,
int
threshold
,
bool
nonmax_suppression
)
{
{
Mat
img
=
_img
.
getMat
();
Mat
img
=
_img
.
getMat
();
const
int
K
=
patternSize
/
2
,
N
=
patternSize
+
K
+
1
,
quarterPatternSize
=
patternSize
/
4
;
const
int
K
=
patternSize
/
2
,
N
=
patternSize
+
K
+
1
;
#if CV_SSE2
const
int
quarterPatternSize
=
patternSize
/
4
;
#endif
int
i
,
j
,
k
,
pixel
[
25
];
int
i
,
j
,
k
,
pixel
[
25
];
makeOffsets
(
pixel
,
(
int
)
img
.
step
,
patternSize
);
makeOffsets
(
pixel
,
(
int
)
img
.
step
,
patternSize
);
for
(
k
=
patternSize
;
k
<
25
;
k
++
)
for
(
k
=
patternSize
;
k
<
25
;
k
++
)
...
@@ -585,7 +588,7 @@ FastFeatureDetector::FastFeatureDetector( int _threshold, bool _nonmaxSuppressio
...
@@ -585,7 +588,7 @@ FastFeatureDetector::FastFeatureDetector( int _threshold, bool _nonmaxSuppressio
FastFeatureDetector
::
FastFeatureDetector
(
int
_threshold
,
bool
_nonmaxSuppression
,
int
_type
)
FastFeatureDetector
::
FastFeatureDetector
(
int
_threshold
,
bool
_nonmaxSuppression
,
int
_type
)
:
threshold
(
_threshold
),
nonmaxSuppression
(
_nonmaxSuppression
),
type
(
_type
)
:
threshold
(
_threshold
),
nonmaxSuppression
(
_nonmaxSuppression
),
type
(
_type
)
{}
{}
void
FastFeatureDetector
::
detectImpl
(
const
Mat
&
image
,
vector
<
KeyPoint
>&
keypoints
,
const
Mat
&
mask
)
const
void
FastFeatureDetector
::
detectImpl
(
const
Mat
&
image
,
vector
<
KeyPoint
>&
keypoints
,
const
Mat
&
mask
)
const
{
{
Mat
grayImage
=
image
;
Mat
grayImage
=
image
;
...
...
modules/imgproc/src/smooth.cpp
View file @
9981b283
...
@@ -1298,17 +1298,17 @@ public:
...
@@ -1298,17 +1298,17 @@ public:
maxk
(
_maxk
),
space_ofs
(
_space_ofs
),
space_weight
(
_space_weight
),
color_weight
(
_color_weight
)
maxk
(
_maxk
),
space_ofs
(
_space_ofs
),
space_weight
(
_space_weight
),
color_weight
(
_color_weight
)
{
{
}
}
virtual
void
operator
()
(
const
Range
&
range
)
const
virtual
void
operator
()
(
const
Range
&
range
)
const
{
{
int
i
,
j
,
cn
=
dest
->
channels
(),
k
;
int
i
,
j
,
cn
=
dest
->
channels
(),
k
;
Size
size
=
dest
->
size
();
Size
size
=
dest
->
size
();
for
(
i
=
range
.
start
;
i
<
range
.
end
;
i
++
)
for
(
i
=
range
.
start
;
i
<
range
.
end
;
i
++
)
{
{
const
uchar
*
sptr
=
temp
->
ptr
(
i
+
radius
)
+
radius
*
cn
;
const
uchar
*
sptr
=
temp
->
ptr
(
i
+
radius
)
+
radius
*
cn
;
uchar
*
dptr
=
dest
->
ptr
(
i
);
uchar
*
dptr
=
dest
->
ptr
(
i
);
if
(
cn
==
1
)
if
(
cn
==
1
)
{
{
for
(
j
=
0
;
j
<
size
.
width
;
j
++
)
for
(
j
=
0
;
j
<
size
.
width
;
j
++
)
...
@@ -1351,10 +1351,10 @@ public:
...
@@ -1351,10 +1351,10 @@ public:
}
}
}
}
}
}
private
:
private
:
const
Mat
*
temp
;
Mat
*
dest
;
Mat
*
dest
;
const
Mat
*
temp
;
int
radius
,
maxk
,
*
space_ofs
;
int
radius
,
maxk
,
*
space_ofs
;
float
*
space_weight
,
*
color_weight
;
float
*
space_weight
,
*
color_weight
;
};
};
...
@@ -1367,40 +1367,40 @@ bilateralFilter_8u( const Mat& src, Mat& dst, int d,
...
@@ -1367,40 +1367,40 @@ bilateralFilter_8u( const Mat& src, Mat& dst, int d,
int
cn
=
src
.
channels
();
int
cn
=
src
.
channels
();
int
i
,
j
,
maxk
,
radius
;
int
i
,
j
,
maxk
,
radius
;
Size
size
=
src
.
size
();
Size
size
=
src
.
size
();
CV_Assert
(
(
src
.
type
()
==
CV_8UC1
||
src
.
type
()
==
CV_8UC3
)
&&
CV_Assert
(
(
src
.
type
()
==
CV_8UC1
||
src
.
type
()
==
CV_8UC3
)
&&
src
.
type
()
==
dst
.
type
()
&&
src
.
size
()
==
dst
.
size
()
&&
src
.
type
()
==
dst
.
type
()
&&
src
.
size
()
==
dst
.
size
()
&&
src
.
data
!=
dst
.
data
);
src
.
data
!=
dst
.
data
);
if
(
sigma_color
<=
0
)
if
(
sigma_color
<=
0
)
sigma_color
=
1
;
sigma_color
=
1
;
if
(
sigma_space
<=
0
)
if
(
sigma_space
<=
0
)
sigma_space
=
1
;
sigma_space
=
1
;
double
gauss_color_coeff
=
-
0.5
/
(
sigma_color
*
sigma_color
);
double
gauss_color_coeff
=
-
0.5
/
(
sigma_color
*
sigma_color
);
double
gauss_space_coeff
=
-
0.5
/
(
sigma_space
*
sigma_space
);
double
gauss_space_coeff
=
-
0.5
/
(
sigma_space
*
sigma_space
);
if
(
d
<=
0
)
if
(
d
<=
0
)
radius
=
cvRound
(
sigma_space
*
1.5
);
radius
=
cvRound
(
sigma_space
*
1.5
);
else
else
radius
=
d
/
2
;
radius
=
d
/
2
;
radius
=
MAX
(
radius
,
1
);
radius
=
MAX
(
radius
,
1
);
d
=
radius
*
2
+
1
;
d
=
radius
*
2
+
1
;
Mat
temp
;
Mat
temp
;
copyMakeBorder
(
src
,
temp
,
radius
,
radius
,
radius
,
radius
,
borderType
);
copyMakeBorder
(
src
,
temp
,
radius
,
radius
,
radius
,
radius
,
borderType
);
vector
<
float
>
_color_weight
(
cn
*
256
);
vector
<
float
>
_color_weight
(
cn
*
256
);
vector
<
float
>
_space_weight
(
d
*
d
);
vector
<
float
>
_space_weight
(
d
*
d
);
vector
<
int
>
_space_ofs
(
d
*
d
);
vector
<
int
>
_space_ofs
(
d
*
d
);
float
*
color_weight
=
&
_color_weight
[
0
];
float
*
color_weight
=
&
_color_weight
[
0
];
float
*
space_weight
=
&
_space_weight
[
0
];
float
*
space_weight
=
&
_space_weight
[
0
];
int
*
space_ofs
=
&
_space_ofs
[
0
];
int
*
space_ofs
=
&
_space_ofs
[
0
];
// initialize color-related bilateral filter coefficients
// initialize color-related bilateral filter coefficients
for
(
i
=
0
;
i
<
256
*
cn
;
i
++
)
for
(
i
=
0
;
i
<
256
*
cn
;
i
++
)
color_weight
[
i
]
=
(
float
)
std
::
exp
(
i
*
i
*
gauss_color_coeff
);
color_weight
[
i
]
=
(
float
)
std
::
exp
(
i
*
i
*
gauss_color_coeff
);
// initialize space-related bilateral filter coefficients
// initialize space-related bilateral filter coefficients
for
(
i
=
-
radius
,
maxk
=
0
;
i
<=
radius
;
i
++
)
for
(
i
=
-
radius
,
maxk
=
0
;
i
<=
radius
;
i
++
)
for
(
j
=
-
radius
;
j
<=
radius
;
j
++
)
for
(
j
=
-
radius
;
j
<=
radius
;
j
++
)
...
@@ -1411,7 +1411,7 @@ bilateralFilter_8u( const Mat& src, Mat& dst, int d,
...
@@ -1411,7 +1411,7 @@ bilateralFilter_8u( const Mat& src, Mat& dst, int d,
space_weight
[
maxk
]
=
(
float
)
std
::
exp
(
r
*
r
*
gauss_space_coeff
);
space_weight
[
maxk
]
=
(
float
)
std
::
exp
(
r
*
r
*
gauss_space_coeff
);
space_ofs
[
maxk
++
]
=
(
int
)(
i
*
temp
.
step
+
j
*
cn
);
space_ofs
[
maxk
++
]
=
(
int
)(
i
*
temp
.
step
+
j
*
cn
);
}
}
BilateralFilter_8u_Invoker
body
(
dst
,
temp
,
radius
,
maxk
,
space_ofs
,
space_weight
,
color_weight
);
BilateralFilter_8u_Invoker
body
(
dst
,
temp
,
radius
,
maxk
,
space_ofs
,
space_weight
,
color_weight
);
parallel_for_
(
Range
(
0
,
size
.
height
),
body
);
parallel_for_
(
Range
(
0
,
size
.
height
),
body
);
}
}
...
...
modules/video/src/bgfg_gmg.cpp
View file @
9981b283
...
@@ -440,8 +440,7 @@ bool BackgroundSubtractorGMG::HistogramFeatureGMG::operator ==(HistogramFeatureG
...
@@ -440,8 +440,7 @@ bool BackgroundSubtractorGMG::HistogramFeatureGMG::operator ==(HistogramFeatureG
std
::
vector
<
size_t
>::
iterator
color_a
;
std
::
vector
<
size_t
>::
iterator
color_a
;
std
::
vector
<
size_t
>::
iterator
color_b
;
std
::
vector
<
size_t
>::
iterator
color_b
;
std
::
vector
<
size_t
>::
iterator
color_a_end
=
this
->
color
.
end
();
std
::
vector
<
size_t
>::
iterator
color_a_end
=
this
->
color
.
end
();
std
::
vector
<
size_t
>::
iterator
color_b_end
=
rhs
.
color
.
end
();
for
(
color_a
=
color
.
begin
(),
color_b
=
rhs
.
color
.
begin
();
color_a
!=
color_a_end
;
++
color_a
,
++
color_b
)
for
(
color_a
=
color
.
begin
(),
color_b
=
rhs
.
color
.
begin
();
color_a
!=
color_a_end
;
++
color_a
,
++
color_b
)
{
{
if
(
*
color_a
!=
*
color_b
)
if
(
*
color_a
!=
*
color_b
)
{
{
...
...
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