Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenCV
opencv
提交
70c605a0
O
opencv
项目概览
OpenCV
/
opencv
上一次同步 9 个月
通知
992
Star
71100
Fork
55581
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
O
opencv
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
70c605a0
编写于
12月 26, 2017
作者:
D
Dmitry Kurtaev
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Limit Concat layer optimization
上级
a8844de7
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
7 addition
and
9 deletion
+7
-9
modules/dnn/src/dnn.cpp
modules/dnn/src/dnn.cpp
+6
-9
modules/dnn/test/test_layers.cpp
modules/dnn/test/test_layers.cpp
+1
-0
未找到文件。
modules/dnn/src/dnn.cpp
浏览文件 @
70c605a0
...
...
@@ -1398,7 +1398,8 @@ struct Net::Impl
LayerPin
pin
=
ld
.
inputBlobsId
[
i
];
LayerData
*
inp_i_data
=
&
layers
[
pin
.
lid
];
while
(
inp_i_data
->
skipFlags
[
DNN_BACKEND_DEFAULT
]
&&
inp_i_data
->
inputBlobsId
.
size
()
==
1
)
inp_i_data
->
inputBlobsId
.
size
()
==
1
&&
inp_i_data
->
consumers
.
size
()
==
1
)
{
pin
=
inp_i_data
->
inputBlobsId
[
0
];
inp_i_data
=
&
layers
[
pin
.
lid
];
...
...
@@ -1428,15 +1429,11 @@ struct Net::Impl
Mat
output_slice
=
output
(
chrange
);
Mat
&
curr_output
=
inp_i_data
->
outputBlobs
[
pin
.
oid
];
CV_Assert
(
output_slice
.
isContinuous
()
&&
output_slice
.
size
==
curr_output
.
size
);
Mat
*
oldPtr
=
&
curr_output
;
curr_output
=
output_slice
;
pin
=
ld
.
inputBlobsId
[
i
];
inp_i_data
=
&
layers
[
pin
.
lid
];
for
(
int
j
=
0
;
j
<
inp_i_data
->
consumers
.
size
();
++
j
)
{
LayerPin
consumer
=
inp_i_data
->
consumers
[
j
];
layers
[
consumer
.
lid
].
inputBlobs
[
consumer
.
oid
]
=
&
curr_output
;
}
// Layers that refer old input Mat will refer to the
// new data but the same Mat object.
CV_Assert
(
curr_output
.
data
==
output_slice
.
data
,
oldPtr
==
&
curr_output
);
}
ld
.
skipFlags
[
DNN_BACKEND_DEFAULT
]
=
true
;
printf_
((
"
\t
optimized out Concat layer %s
\n
"
,
concatLayer
->
name
.
c_str
()));
...
...
modules/dnn/test/test_layers.cpp
浏览文件 @
70c605a0
...
...
@@ -314,6 +314,7 @@ TEST(Layer_Test_Fused_Concat, Accuracy)
//
testLayerUsingCaffeModels
(
"layer_concat_optim"
,
DNN_TARGET_CPU
,
true
,
false
);
testLayerUsingCaffeModels
(
"layer_concat_shared_input"
,
DNN_TARGET_CPU
,
true
,
false
);
}
TEST
(
Layer_Test_Eltwise
,
Accuracy
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录