Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Opencv
提交
c2402053
O
Opencv
项目概览
Greenplum
/
Opencv
11 个月 前同步成功
通知
7
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
O
Opencv
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
c2402053
编写于
4月 09, 2013
作者:
V
Vladislav Vinogradov
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
removed columnSum function (it is a duplicate for reduce)
上级
229ca091
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
1 addition
and
134 deletion
+1
-134
modules/gpu/include/opencv2/gpu.hpp
modules/gpu/include/opencv2/gpu.hpp
+0
-3
modules/gpu/perf/perf_imgproc.cpp
modules/gpu/perf/perf_imgproc.cpp
+0
-26
modules/gpu/src/cuda/imgproc.cu
modules/gpu/src/cuda/imgproc.cu
+0
-35
modules/gpu/src/imgproc.cpp
modules/gpu/src/imgproc.cpp
+1
-21
modules/gpu/test/test_imgproc.cpp
modules/gpu/test/test_imgproc.cpp
+0
-48
modules/gpuarithm/src/matrix_reductions.cpp
modules/gpuarithm/src/matrix_reductions.cpp
+0
-1
未找到文件。
modules/gpu/include/opencv2/gpu.hpp
浏览文件 @
c2402053
...
...
@@ -184,9 +184,6 @@ CV_EXPORTS void integralBuffered(const GpuMat& src, GpuMat& sum, GpuMat& buffer,
//! supports source images of 8UC1 type only
CV_EXPORTS
void
sqrIntegral
(
const
GpuMat
&
src
,
GpuMat
&
sqsum
,
Stream
&
stream
=
Stream
::
Null
());
//! computes vertical sum, supports only CV_32FC1 images
CV_EXPORTS
void
columnSum
(
const
GpuMat
&
src
,
GpuMat
&
sum
);
//! computes the standard deviation of integral images
//! supports only CV_32SC1 source type and CV_32FC1 sqr type
//! output will have CV_32FC1 type
...
...
modules/gpu/perf/perf_imgproc.cpp
浏览文件 @
c2402053
...
...
@@ -631,32 +631,6 @@ PERF_TEST_P(Sz_ClipLimit, ImgProc_CLAHE,
}
}
//////////////////////////////////////////////////////////////////////
// ColumnSum
PERF_TEST_P
(
Sz
,
ImgProc_ColumnSum
,
GPU_TYPICAL_MAT_SIZES
)
{
const
cv
::
Size
size
=
GetParam
();
cv
::
Mat
src
(
size
,
CV_32FC1
);
declare
.
in
(
src
,
WARMUP_RNG
);
if
(
PERF_RUN_GPU
())
{
const
cv
::
gpu
::
GpuMat
d_src
(
src
);
cv
::
gpu
::
GpuMat
dst
;
TEST_CYCLE
()
cv
::
gpu
::
columnSum
(
d_src
,
dst
);
GPU_SANITY_CHECK
(
dst
);
}
else
{
FAIL_NO_CPU
();
}
}
//////////////////////////////////////////////////////////////////////
// Canny
...
...
modules/gpu/src/cuda/imgproc.cu
浏览文件 @
c2402053
...
...
@@ -582,41 +582,6 @@ namespace cv { namespace gpu { namespace cudev
cudaSafeCall
(
cudaDeviceSynchronize
());
}
////////////////////////////// Column Sum //////////////////////////////////////
__global__
void
column_sumKernel_32F
(
int
cols
,
int
rows
,
const
PtrStepb
src
,
const
PtrStepb
dst
)
{
int
x
=
blockIdx
.
x
*
blockDim
.
x
+
threadIdx
.
x
;
if
(
x
<
cols
)
{
const
unsigned
char
*
src_data
=
src
.
data
+
x
*
sizeof
(
float
);
unsigned
char
*
dst_data
=
dst
.
data
+
x
*
sizeof
(
float
);
float
sum
=
0.
f
;
for
(
int
y
=
0
;
y
<
rows
;
++
y
)
{
sum
+=
*
(
const
float
*
)
src_data
;
*
(
float
*
)
dst_data
=
sum
;
src_data
+=
src
.
step
;
dst_data
+=
dst
.
step
;
}
}
}
void
columnSum_32F
(
const
PtrStepSzb
src
,
const
PtrStepSzb
dst
)
{
dim3
threads
(
256
);
dim3
grid
(
divUp
(
src
.
cols
,
threads
.
x
));
column_sumKernel_32F
<<<
grid
,
threads
>>>
(
src
.
cols
,
src
.
rows
,
src
,
dst
);
cudaSafeCall
(
cudaGetLastError
()
);
cudaSafeCall
(
cudaDeviceSynchronize
()
);
}
//////////////////////////////////////////////////////////////////////////
// mulSpectrums
...
...
modules/gpu/src/imgproc.cpp
浏览文件 @
c2402053
...
...
@@ -59,7 +59,6 @@ void cv::gpu::rotate(const GpuMat&, GpuMat&, Size, double, double, double, int,
void
cv
::
gpu
::
integral
(
const
GpuMat
&
,
GpuMat
&
,
Stream
&
)
{
throw_no_cuda
();
}
void
cv
::
gpu
::
integralBuffered
(
const
GpuMat
&
,
GpuMat
&
,
GpuMat
&
,
Stream
&
)
{
throw_no_cuda
();
}
void
cv
::
gpu
::
sqrIntegral
(
const
GpuMat
&
,
GpuMat
&
,
Stream
&
)
{
throw_no_cuda
();
}
void
cv
::
gpu
::
columnSum
(
const
GpuMat
&
,
GpuMat
&
)
{
throw_no_cuda
();
}
void
cv
::
gpu
::
rectStdDev
(
const
GpuMat
&
,
const
GpuMat
&
,
GpuMat
&
,
const
Rect
&
,
Stream
&
)
{
throw_no_cuda
();
}
void
cv
::
gpu
::
evenLevels
(
GpuMat
&
,
int
,
int
,
int
)
{
throw_no_cuda
();
}
void
cv
::
gpu
::
histEven
(
const
GpuMat
&
,
GpuMat
&
,
int
,
int
,
int
,
Stream
&
)
{
throw_no_cuda
();
}
...
...
@@ -630,26 +629,7 @@ void cv::gpu::sqrIntegral(const GpuMat& src, GpuMat& sqsum, Stream& s)
}
//////////////////////////////////////////////////////////////////////////////
// columnSum
namespace
cv
{
namespace
gpu
{
namespace
cudev
{
namespace
imgproc
{
void
columnSum_32F
(
const
PtrStepSzb
src
,
const
PtrStepSzb
dst
);
}
}}}
void
cv
::
gpu
::
columnSum
(
const
GpuMat
&
src
,
GpuMat
&
dst
)
{
using
namespace
::
cv
::
gpu
::
cudev
::
imgproc
;
CV_Assert
(
src
.
type
()
==
CV_32F
);
dst
.
create
(
src
.
size
(),
CV_32F
);
cudev
::
imgproc
::
columnSum_32F
(
src
,
dst
);
}
// rectStdDev
void
cv
::
gpu
::
rectStdDev
(
const
GpuMat
&
src
,
const
GpuMat
&
sqr
,
GpuMat
&
dst
,
const
Rect
&
rect
,
Stream
&
s
)
{
...
...
modules/gpu/test/test_imgproc.cpp
浏览文件 @
c2402053
...
...
@@ -261,54 +261,6 @@ INSTANTIATE_TEST_CASE_P(GPU_ImgProc, CLAHE, testing::Combine(
DIFFERENT_SIZES
,
testing
::
Values
(
0.0
,
40.0
)));
////////////////////////////////////////////////////////////////////////
// ColumnSum
PARAM_TEST_CASE
(
ColumnSum
,
cv
::
gpu
::
DeviceInfo
,
cv
::
Size
)
{
cv
::
gpu
::
DeviceInfo
devInfo
;
cv
::
Size
size
;
virtual
void
SetUp
()
{
devInfo
=
GET_PARAM
(
0
);
size
=
GET_PARAM
(
1
);
cv
::
gpu
::
setDevice
(
devInfo
.
deviceID
());
}
};
GPU_TEST_P
(
ColumnSum
,
Accuracy
)
{
cv
::
Mat
src
=
randomMat
(
size
,
CV_32FC1
);
cv
::
gpu
::
GpuMat
d_dst
;
cv
::
gpu
::
columnSum
(
loadMat
(
src
),
d_dst
);
cv
::
Mat
dst
(
d_dst
);
for
(
int
j
=
0
;
j
<
src
.
cols
;
++
j
)
{
float
gold
=
src
.
at
<
float
>
(
0
,
j
);
float
res
=
dst
.
at
<
float
>
(
0
,
j
);
ASSERT_NEAR
(
res
,
gold
,
1e-5
);
}
for
(
int
i
=
1
;
i
<
src
.
rows
;
++
i
)
{
for
(
int
j
=
0
;
j
<
src
.
cols
;
++
j
)
{
float
gold
=
src
.
at
<
float
>
(
i
,
j
)
+=
src
.
at
<
float
>
(
i
-
1
,
j
);
float
res
=
dst
.
at
<
float
>
(
i
,
j
);
ASSERT_NEAR
(
res
,
gold
,
1e-5
);
}
}
}
INSTANTIATE_TEST_CASE_P
(
GPU_ImgProc
,
ColumnSum
,
testing
::
Combine
(
ALL_DEVICES
,
DIFFERENT_SIZES
));
////////////////////////////////////////////////////////
// Canny
...
...
modules/gpuarithm/src/matrix_reductions.cpp
浏览文件 @
c2402053
...
...
@@ -71,7 +71,6 @@ int cv::gpu::countNonZero(const GpuMat&, GpuMat&) { throw_no_cuda(); return 0; }
void
cv
::
gpu
::
reduce
(
const
GpuMat
&
,
GpuMat
&
,
int
,
int
,
int
,
Stream
&
)
{
throw_no_cuda
();
}
#else
#include "opencv2/core/utility.hpp"
namespace
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录