code: def get_measurement_columns(self, pipeline):
      columns = []
  
      for image_name in self.images_list.value:
          for o in self.objects:
              object_name = o.object_name.value
  
              for bin_count_obj in self.bin_counts:
                  bin_count = bin_count_obj.bin_count.value
  
                  wants_scaling = bin_count_obj.wants_scaled.value
  
                  for feature, ofeature in (
                      (MF_FRAC_AT_D, OF_FRAC_AT_D),
                      (MF_MEAN_FRAC, OF_MEAN_FRAC),
                      (MF_RADIAL_CV, OF_RADIAL_CV),
                  ):
                      for bin in range(1, bin_count + 1):
                          columns.append(
                              (
                                  object_name,
                                  feature
                                  % (image_name, bin, bin_count),
                                  COLTYPE_FLOAT,
                              )
                          )
  
                      if not wants_scaling:
                          columns.append(
                              (
                                  object_name,
                                  ofeature % image_name,
                                  COLTYPE_FLOAT,
                              )
                          )
  
                  if self.wants_zernikes != Z_NONE:
                      name_fns = [self.get_zernike_magnitude_name]
  
                      if self.wants_zernikes == Z_MAGNITUDES_AND_PHASE:
                          name_fns.append(self.get_zernike_phase_name)
  
                      max_n = self.zernike_degree.value
  
                      for name_fn in name_fns:
                          for (
                              n,
                              m,
                          ) in centrosome.zernike.get_zernike_indexes(
                              max_n + 1
                          ):
                              ftr = name_fn(image_name, n, m)
  
                              columns.append(
                                  (
                                      object_name,
                                      ftr,
                                      COLTYPE_FLOAT,
                                  )
                              )
  
      return columns
  
imports: import centrosome.cpmorphology
  import centrosome.propagate
  import centrosome.zernike
  import matplotlib.cm
  import numpy
  import numpy.ma
  import scipy.ndimage
  import scipy.sparse
  from cellprofiler_core.constants.measurement import COLTYPE_FLOAT
  from cellprofiler_core.image import Image
  from cellprofiler_core.module import Module
  from cellprofiler_core.preferences import get_default_colormap
  from cellprofiler_core.setting import HiddenCount, Divider, SettingsGroup, Binary, ValidationError
  from cellprofiler_core.setting.choice import Choice, Colormap
  from cellprofiler_core.setting.do_something import DoSomething, RemoveSettingButton
  from cellprofiler_core.setting.subscriber import LabelSubscriber, ImageListSubscriber, ImageSubscriber
  from cellprofiler_core.setting.text import Integer, ImageName
  from cellprofiler_core.utilities.core.object import crop_labels_and_image, size_similarly
  import cellprofiler.gui.help.content
label_desc: Use image node_id 16 for calling the MeasureObjectIntensityDistribution obj's underlying member method code with example usage: obj.get_measurement_columns(pipeline) and returns: columns