diff --git a/tools/mxnet/mxnet2ncnn.cpp b/tools/mxnet/mxnet2ncnn.cpp index 376afe57f..c877809e4 100644 --- a/tools/mxnet/mxnet2ncnn.cpp +++ b/tools/mxnet/mxnet2ncnn.cpp @@ -377,6 +377,15 @@ static bool read_mxnet_json(const char* jsonpath, std::vector& nodes) continue; } + // "attrs": {"__init__": "[\"zero\", {}]"}, + nscan = sscanf(line, " \"attrs\": {\"%255[^\"]\": \"%255[^\"]\"}", key, value); + if (nscan == 2) + { + n.attrs[key] = value; +// fprintf(stderr, "# %s = %s\n", key, value); + continue; + } + // "param": {"p": "0.5"}, nscan = sscanf(line, " \"param\": {\"%255[^\"]\": \"%255[^\"]\"}", key, value); if (nscan == 2) @@ -393,6 +402,13 @@ static bool read_mxnet_json(const char* jsonpath, std::vector& nodes) continue; } + // "attrs": { + if (memcmp(line, " \"attrs\": {", 15) == 0) + { + in_attr_block = true; + continue; + } + // "param": { if (memcmp(line, " \"param\": {", 16) == 0) {