Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Opencv
提交
a87a5dfd
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,发现更多精彩内容 >>
提交
a87a5dfd
编写于
4月 05, 2018
作者:
A
Alexander Alekhin
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #11192 from terfendail:setto_fix
上级
e20fb7f4
ccd16f10
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
50 addition
and
0 deletion
+50
-0
modules/core/src/copy.cpp
modules/core/src/copy.cpp
+5
-0
modules/core/test/test_arithm.cpp
modules/core/test/test_arithm.cpp
+45
-0
未找到文件。
modules/core/src/copy.cpp
浏览文件 @
a87a5dfd
...
...
@@ -478,6 +478,11 @@ static bool ipp_Mat_setTo_Mat(Mat &dst, Mat &_val, Mat &mask)
if
(
dst
.
channels
()
>
4
)
return
false
;
if
(
dst
.
depth
()
==
CV_32F
)
for
(
int
i
=
0
;
i
<
(
int
)(
_val
.
total
());
i
++
)
if
(
_val
.
at
<
double
>
(
i
)
<
iwTypeGetMin
(
ipp32f
)
||
_val
.
at
<
double
>
(
i
)
>
iwTypeGetMax
(
ipp32f
))
return
false
;
if
(
dst
.
dims
<=
2
)
{
IppiSize
size
=
ippiSize
(
dst
.
size
());
...
...
modules/core/test/test_arithm.cpp
浏览文件 @
a87a5dfd
...
...
@@ -2039,4 +2039,49 @@ TEST(Core_minMaxIdx, regression_9207_2)
EXPECT_EQ
(
14
,
maxIdx
[
1
]);
}
TEST
(
Core_Set
,
regression_11044
)
{
Mat
testFloat
(
Size
(
3
,
3
),
CV_32FC1
);
Mat
testDouble
(
Size
(
3
,
3
),
CV_64FC1
);
testFloat
.
setTo
(
1
);
EXPECT_EQ
(
1
,
testFloat
.
at
<
float
>
(
0
,
0
));
testFloat
.
setTo
(
std
::
numeric_limits
<
float
>::
infinity
());
EXPECT_EQ
(
std
::
numeric_limits
<
float
>::
infinity
(),
testFloat
.
at
<
float
>
(
0
,
0
));
testFloat
.
setTo
(
1
);
EXPECT_EQ
(
1
,
testFloat
.
at
<
float
>
(
0
,
0
));
testFloat
.
setTo
(
std
::
numeric_limits
<
double
>::
infinity
());
EXPECT_EQ
(
std
::
numeric_limits
<
float
>::
infinity
(),
testFloat
.
at
<
float
>
(
0
,
0
));
testDouble
.
setTo
(
1
);
EXPECT_EQ
(
1
,
testDouble
.
at
<
double
>
(
0
,
0
));
testDouble
.
setTo
(
std
::
numeric_limits
<
float
>::
infinity
());
EXPECT_EQ
(
std
::
numeric_limits
<
double
>::
infinity
(),
testDouble
.
at
<
double
>
(
0
,
0
));
testDouble
.
setTo
(
1
);
EXPECT_EQ
(
1
,
testDouble
.
at
<
double
>
(
0
,
0
));
testDouble
.
setTo
(
std
::
numeric_limits
<
double
>::
infinity
());
EXPECT_EQ
(
std
::
numeric_limits
<
double
>::
infinity
(),
testDouble
.
at
<
double
>
(
0
,
0
));
Mat
testMask
(
Size
(
3
,
3
),
CV_8UC1
,
Scalar
(
1
));
testFloat
.
setTo
(
1
);
EXPECT_EQ
(
1
,
testFloat
.
at
<
float
>
(
0
,
0
));
testFloat
.
setTo
(
std
::
numeric_limits
<
float
>::
infinity
(),
testMask
);
EXPECT_EQ
(
std
::
numeric_limits
<
float
>::
infinity
(),
testFloat
.
at
<
float
>
(
0
,
0
));
testFloat
.
setTo
(
1
);
EXPECT_EQ
(
1
,
testFloat
.
at
<
float
>
(
0
,
0
));
testFloat
.
setTo
(
std
::
numeric_limits
<
double
>::
infinity
(),
testMask
);
EXPECT_EQ
(
std
::
numeric_limits
<
float
>::
infinity
(),
testFloat
.
at
<
float
>
(
0
,
0
));
testDouble
.
setTo
(
1
);
EXPECT_EQ
(
1
,
testDouble
.
at
<
double
>
(
0
,
0
));
testDouble
.
setTo
(
std
::
numeric_limits
<
float
>::
infinity
(),
testMask
);
EXPECT_EQ
(
std
::
numeric_limits
<
double
>::
infinity
(),
testDouble
.
at
<
double
>
(
0
,
0
));
testDouble
.
setTo
(
1
);
EXPECT_EQ
(
1
,
testDouble
.
at
<
double
>
(
0
,
0
));
testDouble
.
setTo
(
std
::
numeric_limits
<
double
>::
infinity
(),
testMask
);
EXPECT_EQ
(
std
::
numeric_limits
<
double
>::
infinity
(),
testDouble
.
at
<
double
>
(
0
,
0
));
}
}}
// namespace
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录