code: def run(self, workspace):
      base_image, dimensions = self.base_image(workspace)
  
      if self.wants_color.value == WANTS_COLOR:
          pixel_data = self.run_color(workspace, base_image.copy())
      else:
          pixel_data = self.run_bw(workspace, base_image)
  
      output_image = Image(pixel_data, dimensions=dimensions)
  
      workspace.image_set.add(
          self.output_image_name.value, output_image
      )
  
      if not self.blank_image.value:
          image = workspace.image_set.get_image(self.image_name.value)
  
          output_image.parent_image = image
  
      if self.show_window:
          workspace.display_data.pixel_data = pixel_data
  
          workspace.display_data.image_pixel_data = base_image
  
          workspace.display_data.dimensions = dimensions
  
imports: import numpy
  import skimage.color
  import skimage.segmentation
  import skimage.util
  from cellprofiler_core.image import Image
  from cellprofiler_core.module import Module
  from cellprofiler_core.setting import Binary, Divider, SettingsGroup, Color
  from cellprofiler_core.setting.choice import Choice
  from cellprofiler_core.setting.do_something import DoSomething, RemoveSettingButton
  from cellprofiler_core.setting.subscriber import ImageSubscriber, LabelSubscriber
  from cellprofiler_core.setting.text import ImageName
label_desc: Use image node_id 6 for calling the OverlayOutlines obj's underlying member method code with example usage: obj.run(workspace) without return types