sampleUFFSSD layer names different from frozen .pb file

The output while generating the .uff model is as follows with no conversion found for “NMS”, “concat_box_conf” etc.

Loading frozen_inference_graph.pb
Using output node NMS
Converting to UFF graph
Warning: No conversion function registered for layer: NMS yet.
Converting as custom op NMS NMS
name: "NMS"
op: "NMS"
input: "concat_box_loc"
input: "concat_priorbox"
input: "concat_box_conf"
attr {
  key: "iouThreshold_u_float"
  value {
    f: 0.600000023842
  }
}
attr {
  key: "maxDetectionsPerClass_u_int"
  value {
    i: 100
  }
}
attr {
  key: "maxTotalDetections_u_int"
  value {
    i: 100
  }
}
attr {
  key: "numClasses_u_int"
  value {
    i: 91
  }
}
attr {
  key: "scoreConverter_u_str"
  value {
    s: "SIGMOID"
  }
}
attr {
  key: "scoreThreshold_u_float"
  value {
    f: 9.99999993923e-09
  }
}

Warning: No conversion function registered for layer: concat_box_conf yet.
Converting as custom op concat_box_conf concat_box_conf
name: "concat_box_conf"
op: "concat_box_conf"
input: "BoxPredictor_0/Reshape_1"
input: "BoxPredictor_1/Reshape_1"
input: "BoxPredictor_2/Reshape_1"
input: "BoxPredictor_3/Reshape_1"
input: "BoxPredictor_4/Reshape_1"
input: "BoxPredictor_5/Reshape_1"

Warning: No conversion function registered for layer: concat_priorbox yet.
Converting as custom op concat_priorbox concat_priorbox
name: "concat_priorbox"
op: "concat_priorbox"
input: "PriorBox"
attr {
  key: "axis_u_int"
  value {
    i: 2
  }
}
attr {
  key: "dtype"
  value {
    type: DT_FLOAT
  }
}

Warning: No conversion function registered for layer: PriorBox yet.
Converting as custom op PriorBox PriorBox
name: "PriorBox"
op: "PriorBox"
input: "strided_slice_6"
input: "strided_slice_7"
attr {
  key: "aspectRatios_u_flist"
  value {
    list {
      f: 1.0
      f: 2.0
      f: 0.5
      f: 3.0
      f: 0.330000013113
    }
  }
}
attr {
  key: "featureMapShapes_u_ilist"
  value {
    list {
      i: 19
      i: 10
      i: 5
      i: 3
      i: 2
      i: 1
    }
  }
}
attr {
  key: "layerVariances_u_flist"
  value {
    list {
      f: 0.10000000149
      f: 0.10000000149
      f: 0.20000000298
      f: 0.20000000298
    }
  }
}
attr {
  key: "maxScale_u_float"
  value {
    f: 0.949999988079
  }
}
attr {
  key: "minScale_u_float"
  value {
    f: 0.20000000298
  }
}
attr {
  key: "numLayers_u_int"
  value {
    i: 6
  }
}

Warning: No conversion function registered for layer: concat_box_loc yet.
Converting as custom op concat_box_loc concat_box_loc
name: "concat_box_loc"
op: "concat_box_loc"
input: "Squeeze"
input: "Squeeze_1"
input: "Squeeze_2"
input: "Squeeze_3"
input: "Squeeze_4"
input: "Squeeze_5"

No. nodes: 795
UFF Output written to frozen_inference_graph.uff

But when i read in the frozen protobuf file to print the names of the nodes, I donot see these anywhere. Also, in the sampleUffSSD.cpp, the layers names preceed with a “_”, eg _NMS , _concat_priorbox etc Can you tell me if converting the .pb file to .uff file is also changing the names of the nodes ?

Even when using graphsurgeon to collapse namespaces, the names of the nodes don’t match. Say in this instance

namespace_plugin_map = {
    "MultipleGridAnchorGenerator": PriorBox,
    "Postprocessor": NMS,
    "Preprocessor": Input,
    "ToFloat": Input,
    "image_tensor": Input,
    "MultipleGridAnchorGenerator/Concatenate": concat_priorbox,
    "concat": concat_box_loc,
    "concat_1": concat_box_conf
}

When i print out the names of the nodes, there is no node name Preprocessor, these are the nodes(ignore import)

u'import/image_tensor', u'import/ToFloat', u'import/Preprocessor/map/TensorArrayUnstack/Shape', u'import/Preprocessor/map/TensorArrayUnstack/strided_slice', u'import/Preprocessor/map/TensorArrayUnstack/range', u'import/Preprocessor/map/Shape', u'import/Preprocessor/map/strided_slice', u'import/Preprocessor/map/while/Less/Enter', u'import/Preprocessor/map/while/Less', u'import/Preprocessor/map/while/LoopCond', u'import/Preprocessor/map/while/Switch', u'import/Preprocessor/map/while/Identity', u'import/Preprocessor/map/while/add/y', u'import/Preprocessor/map/while/add', u'import/Preprocessor/map/while/NextIteration', u'import/Preprocessor/map/while/ResizeImage/size', u'import/Preprocessor/map/while/ResizeImage/ExpandDims/dim', u'import/Preprocessor/map/TensorArray_1', u'import/Preprocessor/map/while/TensorArrayWrite/TensorArrayWriteV3/Enter', u'import/Preprocessor/map/while/Enter_1', u'import/Preprocessor/map/while/Merge_1', u'import/Preprocessor/map/while/Switch_1', u'import/Preprocessor/map/while/Exit_1', u'import/Preprocessor/map/TensorArrayStack/TensorArraySizeV3', u'import/Preprocessor/map/TensorArrayStack/range', u'import/Preprocessor/map/TensorArrayStack/TensorArrayGatherV3', u'import/Preprocessor/mul', u'import/Preprocessor/sub'

I see string split operation inside collapse_namespace in graphsurgeon that would allow to collapse any node name starting with “Preprocessor” to be considered. But what if you just want to change one operation instead of a node.