Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Opencv
提交
7ddb706b
O
Opencv
项目概览
Greenplum
/
Opencv
大约 1 年 前同步成功
通知
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,发现更多精彩内容 >>
提交
7ddb706b
编写于
1月 30, 2012
作者:
A
Alexey Spizhevoy
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Added a test for the multi-band blender
上级
3892ce1f
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
84 addition
and
3 deletion
+84
-3
modules/stitching/include/opencv2/stitching/detail/blenders.hpp
...s/stitching/include/opencv2/stitching/detail/blenders.hpp
+2
-0
modules/stitching/test/test_blenders.cpp
modules/stitching/test/test_blenders.cpp
+78
-0
modules/stitching/test/test_main.cpp
modules/stitching/test/test_main.cpp
+1
-1
modules/stitching/test/test_matchers.cpp
modules/stitching/test/test_matchers.cpp
+2
-2
modules/stitching/test/test_precomp.hpp
modules/stitching/test/test_precomp.hpp
+1
-0
未找到文件。
modules/stitching/include/opencv2/stitching/detail/blenders.hpp
浏览文件 @
7ddb706b
...
...
@@ -48,6 +48,7 @@
namespace
cv
{
namespace
detail
{
// Simple blender which puts one image over another
class
CV_EXPORTS
Blender
{
...
...
@@ -96,6 +97,7 @@ class CV_EXPORTS MultiBandBlender : public Blender
{
public:
MultiBandBlender
(
int
try_gpu
=
false
,
int
num_bands
=
5
);
int
numBands
()
const
{
return
actual_num_bands_
;
}
void
setNumBands
(
int
val
)
{
actual_num_bands_
=
val
;
}
...
...
modules/stitching/test/test_blenders.cpp
0 → 100644
浏览文件 @
7ddb706b
/*M///////////////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING.
//
// By downloading, copying, installing or using the software you agree to this license.
// If you do not agree to this license, do not download, install,
// copy or use the software.
//
//
// Intel License Agreement
// For Open Source Computer Vision Library
//
// Copyright (C) 2000, Intel Corporation, all rights reserved.
// Third party copyrights are property of their respective owners.
//
// Redistribution and use in source and binary forms, with or without modification,
// are permitted provided that the following conditions are met:
//
// * Redistribution's of source code must retain the above copyright notice,
// this list of conditions and the following disclaimer.
//
// * Redistribution's in binary form must reproduce the above copyright notice,
// this list of conditions and the following disclaimer in the documentation
// and/or other materials provided with the distribution.
//
// * The name of Intel Corporation may not be used to endorse or promote products
// derived from this software without specific prior written permission.
//
// This software is provided by the copyright holders and contributors "as is" and
// any express or implied warranties, including, but not limited to, the implied
// warranties of merchantability and fitness for a particular purpose are disclaimed.
// In no event shall the Intel Corporation or contributors be liable for any direct,
// indirect, incidental, special, exemplary, or consequential damages
// (including, but not limited to, procurement of substitute goods or services;
// loss of use, data, or profits; or business interruption) however caused
// and on any theory of liability, whether in contract, strict liability,
// or tort (including negligence or otherwise) arising in any way out of
// the use of this software, even if advised of the possibility of such damage.
//
//M*/
#include "test_precomp.hpp"
using
namespace
cv
;
using
namespace
std
;
TEST
(
MultiBandBlender
,
CanBlendTwoImages
)
{
Mat
image1
=
imread
(
string
(
cvtest
::
TS
::
ptr
()
->
get_data_path
())
+
"cv/shared/baboon.jpg"
);
Mat
image2
=
imread
(
string
(
cvtest
::
TS
::
ptr
()
->
get_data_path
())
+
"cv/shared/lena.jpg"
);
EXPECT_EQ
(
image1
.
rows
,
image2
.
rows
);
EXPECT_EQ
(
image1
.
cols
,
image2
.
cols
);
Mat
image1s
,
image2s
;
image1
.
convertTo
(
image1s
,
CV_16S
);
image2
.
convertTo
(
image2s
,
CV_16S
);
Mat
mask1
(
image1s
.
size
(),
CV_8U
);
mask1
(
Rect
(
0
,
0
,
mask1
.
cols
/
2
,
mask1
.
rows
)).
setTo
(
255
);
mask1
(
Rect
(
mask1
.
cols
/
2
,
0
,
mask1
.
cols
-
mask1
.
cols
/
2
,
mask1
.
rows
)).
setTo
(
0
);
Mat
mask2
(
image2s
.
size
(),
CV_8U
);
mask2
(
Rect
(
0
,
0
,
mask2
.
cols
/
2
,
mask2
.
rows
)).
setTo
(
0
);
mask2
(
Rect
(
mask2
.
cols
/
2
,
0
,
mask2
.
cols
-
mask2
.
cols
/
2
,
mask2
.
rows
)).
setTo
(
255
);
detail
::
MultiBandBlender
blender
(
false
,
5
);
blender
.
prepare
(
Rect
(
0
,
0
,
max
(
image1s
.
cols
,
image2s
.
cols
),
max
(
image1s
.
rows
,
image2s
.
rows
)));
blender
.
feed
(
image1s
,
mask1
,
Point
(
0
,
0
));
blender
.
feed
(
image2s
,
mask2
,
Point
(
0
,
0
));
Mat
result_s
,
result_mask
;
blender
.
blend
(
result_s
,
result_mask
);
Mat
result
;
result_s
.
convertTo
(
result
,
CV_8U
);
Mat
expected
=
imread
(
string
(
cvtest
::
TS
::
ptr
()
->
get_data_path
())
+
"stitching/baboon_lena.png"
);
double
error
=
norm
(
expected
,
result
,
NORM_L2
)
/
expected
.
size
().
area
();
ASSERT_LT
(
error
,
1e-3
);
}
modules/stitching/test/test_main.cpp
浏览文件 @
7ddb706b
#include "test_precomp.hpp"
CV_TEST_MAIN
(
"
cv
"
)
CV_TEST_MAIN
(
"
.
"
)
modules/stitching/test/test_matchers.cpp
浏览文件 @
7ddb706b
...
...
@@ -47,7 +47,7 @@ using namespace std;
TEST
(
SurfFeaturesFinder
,
CanFindInROIs
)
{
Ptr
<
detail
::
FeaturesFinder
>
finder
=
new
detail
::
SurfFeaturesFinder
();
Mat
img
=
imread
(
string
(
cvtest
::
TS
::
ptr
()
->
get_data_path
())
+
"shared/lena.jpg"
);
Mat
img
=
imread
(
string
(
cvtest
::
TS
::
ptr
()
->
get_data_path
())
+
"
cv/
shared/lena.jpg"
);
vector
<
Rect
>
rois
;
rois
.
push_back
(
Rect
(
0
,
0
,
img
.
cols
/
2
,
img
.
rows
/
2
));
...
...
@@ -70,4 +70,4 @@ TEST(SurfFeaturesFinder, CanFindInROIs)
ASSERT_GT
(
tl_rect_count
,
0
);
ASSERT_GT
(
br_rect_count
,
0
);
ASSERT_EQ
(
bad_count
,
0
);
}
\ No newline at end of file
}
modules/stitching/test/test_precomp.hpp
浏览文件 @
7ddb706b
...
...
@@ -7,5 +7,6 @@
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/stitching/stitcher.hpp>
#include <opencv2/stitching/detail/matchers.hpp>
#include <opencv2/stitching/detail/blenders.hpp>
#endif
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录