Skip to content

Commit bbb14d3

Browse files
committed
Merge pull request opencv#9003 from dkurt:halide_bug_fixes
2 parents 2ae8490 + 121789f commit bbb14d3

File tree

3 files changed

+28
-21
lines changed

3 files changed

+28
-21
lines changed

modules/dnn/src/layers/elementwise_layers.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -234,7 +234,7 @@ struct ReLUFunctor
234234
Halide::Var x("x"), y("y"), c("c"), n("n");
235235
if (slope)
236236
{
237-
top(x, y, c, n) = select(input >= 0.0f, input, slope);
237+
top(x, y, c, n) = select(input >= 0.0f, input, slope * input);
238238
}
239239
else
240240
{

modules/dnn/src/layers/fully_connected_layer.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,6 @@ class FullyConnectedLayerImpl : public InnerProductLayer
7878
wpadding.setTo(Scalar::all(0.));
7979
weightsMat = weightsBuf.colRange(0, vecsize);
8080
blobs[0].copyTo(weightsMat);
81-
blobs[0] = weightsMat;
8281
}
8382

8483
if (bias)

modules/dnn/test/test_halide_layers.cpp

Lines changed: 27 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -430,7 +430,7 @@ TEST_P(ReLU, Accuracy)
430430
}
431431

432432
INSTANTIATE_TEST_CASE_P(Layer_Test_Halide, ReLU, Values(
433-
/*negative slope*/ 2.0f, 0.3f, -0.1f
433+
/*negative slope*/ 2.0f, 0.3f, -0.1f, 0.0f
434434
));
435435

436436
typedef TestWithParam<tuple<std::string> > NoParamActivation;
@@ -515,12 +515,7 @@ TEST_P(Concat, Accuracy)
515515

516516
Net net;
517517

518-
LayerParams concatParam;
519-
concatParam.type = "Concat";
520-
concatParam.name = "testLayer";
521-
int concatId = net.addLayer(concatParam.name, concatParam.type, concatParam);
522-
net.connect(0, 0, concatId, 0);
523-
518+
std::vector<int> convLayerIds(numChannels.channels);
524519
for (int i = 0, n = numChannels.channels; i < n; ++i)
525520
{
526521
if (!numChannels[i])
@@ -540,9 +535,18 @@ TEST_P(Concat, Accuracy)
540535
convParam.name = ss.str();
541536
convParam.blobs.push_back(weights);
542537

543-
int convId = net.addLayer(convParam.name, convParam.type, convParam);
544-
net.connect(0, 0, convId, 0);
545-
net.connect(convId, 0, concatId, i + 1);
538+
convLayerIds[i] = net.addLayer(convParam.name, convParam.type, convParam);
539+
net.connect(0, 0, convLayerIds[i], 0);
540+
}
541+
542+
LayerParams concatParam;
543+
concatParam.type = "Concat";
544+
concatParam.name = "testLayer";
545+
int concatId = net.addLayer(concatParam.name, concatParam.type, concatParam);
546+
net.connect(0, 0, concatId, 0);
547+
for (int i = 0; i < convLayerIds.size(); ++i)
548+
{
549+
net.connect(convLayerIds[i], 0, concatId, i + 1);
546550
}
547551

548552
Mat input({1, inSize[0], inSize[1], inSize[2]}, CV_32F);
@@ -578,12 +582,7 @@ TEST_P(Eltwise, Accuracy)
578582

579583
Net net;
580584

581-
LayerParams eltwiseParam;
582-
eltwiseParam.type = "Eltwise";
583-
eltwiseParam.name = "testLayer";
584-
int eltwiseId = net.addLayer(eltwiseParam.name, eltwiseParam.type, eltwiseParam);
585-
net.connect(0, 0, eltwiseId, 0);
586-
585+
std::vector<int> convLayerIds(numConv);
587586
for (int i = 0; i < numConv; ++i)
588587
{
589588
Mat weights({inSize[0], inSize[0], 1, 1}, CV_32F);
@@ -600,9 +599,18 @@ TEST_P(Eltwise, Accuracy)
600599
convParam.name = ss.str();
601600
convParam.blobs.push_back(weights);
602601

603-
int convId = net.addLayer(convParam.name, convParam.type, convParam);
604-
net.connect(0, 0, convId, 0);
605-
net.connect(convId, 0, eltwiseId, i + 1);
602+
convLayerIds[i] = net.addLayer(convParam.name, convParam.type, convParam);
603+
net.connect(0, 0, convLayerIds[i], 0);
604+
}
605+
606+
LayerParams eltwiseParam;
607+
eltwiseParam.type = "Eltwise";
608+
eltwiseParam.name = "testLayer";
609+
int eltwiseId = net.addLayer(eltwiseParam.name, eltwiseParam.type, eltwiseParam);
610+
net.connect(0, 0, eltwiseId, 0);
611+
for (int i = 0; i < numConv; ++i)
612+
{
613+
net.connect(convLayerIds[i], 0, eltwiseId, i + 1);
606614
}
607615

608616
Mat input({1, inSize[0], inSize[1], inSize[2]}, CV_32F);

0 commit comments

Comments
 (0)