mirror of
https://github.com/opencv/opencv.git
synced 2025-06-12 20:42:53 +08:00
Merge pull request #18017 from danielenricocahall:add-relu-to-darknet
This commit is contained in:
commit
161890dad4
@ -221,6 +221,10 @@ namespace cv {
|
|||||||
{
|
{
|
||||||
cv::dnn::LayerParams activation_param;
|
cv::dnn::LayerParams activation_param;
|
||||||
if (type == "relu")
|
if (type == "relu")
|
||||||
|
{
|
||||||
|
activation_param.type = "ReLU";
|
||||||
|
}
|
||||||
|
else if (type == "leaky")
|
||||||
{
|
{
|
||||||
activation_param.set<float>("negative_slope", 0.1f);
|
activation_param.set<float>("negative_slope", 0.1f);
|
||||||
activation_param.type = "ReLU";
|
activation_param.type = "ReLU";
|
||||||
@ -862,24 +866,8 @@ namespace cv {
|
|||||||
}
|
}
|
||||||
|
|
||||||
std::string activation = getParam<std::string>(layer_params, "activation", "linear");
|
std::string activation = getParam<std::string>(layer_params, "activation", "linear");
|
||||||
if (activation == "leaky")
|
if (activation != "linear")
|
||||||
{
|
setParams.setActivation(activation);
|
||||||
setParams.setActivation("relu");
|
|
||||||
}
|
|
||||||
else if (activation == "swish")
|
|
||||||
{
|
|
||||||
setParams.setActivation("swish");
|
|
||||||
}
|
|
||||||
else if (activation == "mish")
|
|
||||||
{
|
|
||||||
setParams.setActivation("mish");
|
|
||||||
}
|
|
||||||
else if (activation == "logistic")
|
|
||||||
{
|
|
||||||
setParams.setActivation("logistic");
|
|
||||||
}
|
|
||||||
else if (activation != "linear")
|
|
||||||
CV_Error(cv::Error::StsParseError, "Unsupported activation: " + activation);
|
|
||||||
|
|
||||||
net->out_channels_vec[layers_counter] = tensor_shape[0];
|
net->out_channels_vec[layers_counter] = tensor_shape[0];
|
||||||
}
|
}
|
||||||
|
@ -753,6 +753,11 @@ TEST_P(Test_Darknet_layers, connected)
|
|||||||
testDarknetLayer("connected", true);
|
testDarknetLayer("connected", true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TEST_P(Test_Darknet_layers, relu)
|
||||||
|
{
|
||||||
|
testDarknetLayer("relu");
|
||||||
|
}
|
||||||
|
|
||||||
INSTANTIATE_TEST_CASE_P(/**/, Test_Darknet_layers, dnnBackendsAndTargets());
|
INSTANTIATE_TEST_CASE_P(/**/, Test_Darknet_layers, dnnBackendsAndTargets());
|
||||||
|
|
||||||
}} // namespace
|
}} // namespace
|
||||||
|
Loading…
Reference in New Issue
Block a user