Skip to content

Commit 161890d

Browse files
committed
Merge pull request opencv#18017 from danielenricocahall:add-relu-to-darknet
2 parents 35846fe + 8457e47 commit 161890d

File tree

2 files changed

+11
-18
lines changed

2 files changed

+11
-18
lines changed

modules/dnn/src/darknet/darknet_io.cpp

Lines changed: 6 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -221,6 +221,10 @@ namespace cv {
221221
{
222222
cv::dnn::LayerParams activation_param;
223223
if (type == "relu")
224+
{
225+
activation_param.type = "ReLU";
226+
}
227+
else if (type == "leaky")
224228
{
225229
activation_param.set<float>("negative_slope", 0.1f);
226230
activation_param.type = "ReLU";
@@ -862,24 +866,8 @@ namespace cv {
862866
}
863867

864868
std::string activation = getParam<std::string>(layer_params, "activation", "linear");
865-
if (activation == "leaky")
866-
{
867-
setParams.setActivation("relu");
868-
}
869-
else if (activation == "swish")
870-
{
871-
setParams.setActivation("swish");
872-
}
873-
else if (activation == "mish")
874-
{
875-
setParams.setActivation("mish");
876-
}
877-
else if (activation == "logistic")
878-
{
879-
setParams.setActivation("logistic");
880-
}
881-
else if (activation != "linear")
882-
CV_Error(cv::Error::StsParseError, "Unsupported activation: " + activation);
869+
if (activation != "linear")
870+
setParams.setActivation(activation);
883871

884872
net->out_channels_vec[layers_counter] = tensor_shape[0];
885873
}

modules/dnn/test/test_darknet_importer.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -753,6 +753,11 @@ TEST_P(Test_Darknet_layers, connected)
753753
testDarknetLayer("connected", true);
754754
}
755755

756+
TEST_P(Test_Darknet_layers, relu)
757+
{
758+
testDarknetLayer("relu");
759+
}
760+
756761
INSTANTIATE_TEST_CASE_P(/**/, Test_Darknet_layers, dnnBackendsAndTargets());
757762

758763
}} // namespace

0 commit comments

Comments
 (0)