code: def shape_data(node):
      if node.output_shape:
          # Old-style input specification
          return node.output_shape
      try:
          # New-style input specification
          return tuple(map(int, node.parameters.shape[0].dim))
      except:
          # We most likely have a data layer on our hands. The problem is,
          # Caffe infers the dimensions of the data from the source (eg: LMDB).
          # We want to avoid reading datasets here. Fail for now.
          # This can be temporarily fixed by transforming the data layer to
          # Caffe's "input" layer (as is usually used in the "deploy" version).
          # TODO: Find a better solution for this.
          pass
  
file_path: MMdnn/mmdnn/conversion/caffe/shape.py
imports: from collections import namedtuple
  import math
label_desc: Use image node_id 9 for calling a global function with example usage: shape_data(node) and returns: node, tuple