code: def run(self, workspace):
      image_name = self.image_name.value
      objects_name = self.objects_name.value
      image = workspace.image_set.get_image(image_name)
      pixel_data = image.pixel_data
  
      labels = workspace.interaction_request(
          self, pixel_data, workspace.measurements.image_set_number
      )
      if labels is None:
          # User cancelled. Soldier on as best we can.
          workspace.cancel_request()
          labels = numpy.zeros(pixel_data.shape[:2], int)
      objects = Objects()
      objects.segmented = labels
      workspace.object_set.add_objects(objects, objects_name)
  
      ##################
      #
      # Add measurements
      #
      m = workspace.measurements
      #
      # The object count
      #
      object_count = numpy.max(labels)
      add_object_count_measurements(m, objects_name, object_count)
      #
      # The object locations
      #
      add_object_location_measurements(m, objects_name, labels)
  
      workspace.display_data.labels = labels
      workspace.display_data.pixel_data = pixel_data
  
imports: from cellprofiler_core.module import Identify
  from cellprofiler_core.setting.subscriber import ImageSubscriber
  from cellprofiler_core.setting.text import LabelName
  from cellprofiler_core.utilities.core.module.identify import add_object_location_measurements, add_object_count_measurements, get_object_measurement_columns
  from cellprofiler.modules import _help
  import numpy
  from cellprofiler_core.object import Objects
label_desc: Use image node_id 5 for calling the IdentifyObjectsManually obj's underlying member method code with example usage: obj.run(workspace) without return types