code: def create_settings(self):
      self.blank_image = Binary(
          "Display outlines on a blank image?",
          False,
          doc="""\
  Select "*{YES}*" to produce an image of the outlines on a black background.
  
  Select "*{NO}*" to overlay the outlines on an image you choose.
  """.format(
              **{"YES": "Yes", "NO": "No"}
          ),
      )
  
      self.image_name = ImageSubscriber(
          "Select image on which to display outlines",
          "None",
          doc="""\
  *(Used only when a blank image has not been selected)*
  
  Choose the image to serve as the background for the outlines. You can
  choose from images that were loaded or created by modules previous to
  this one.
  """,
      )
  
      self.line_mode = Choice(
          "How to outline",
          ["Inner", "Outer", "Thick"],
          value="Inner",
          doc="""\
  Specify how to mark the boundaries around an object:
  
  -  *Inner:* outline the pixels just inside of objects, leaving
     background pixels untouched.
  -  *Outer:* outline pixels in the background around object boundaries.
     When two objects touch, their boundary is also marked.
  -  *Thick:* any pixel not completely surrounded by pixels of the same
     label is marked as a boundary. This results in boundaries that are 2
     pixels thick.
  """,
      )
  
      self.output_image_name = ImageName(
          "Name the output image",
          "OrigOverlay",
          doc="""\
  Enter the name of the output image with the outlines overlaid. This
  image can be selected in later modules (for instance, **SaveImages**).
  """,
      )
  
      self.wants_color = Choice(
          "Outline display mode",
          [WANTS_COLOR, WANTS_GRAYSCALE],
          doc="""\
  Specify how to display the outline contours around your objects. Color
  outlines produce a clearer display for images where the cell borders
  have a high intensity, but take up more space in memory. Grayscale
  outlines are displayed with either the highest possible intensity or the
  same intensity as the brightest pixel in the image.
  """,
      )
  
      self.spacer = Divider(line=False)
  
      self.max_type = Choice(
          "Select method to determine brightness of outlines",
          [MAX_IMAGE, MAX_POSSIBLE],
          doc="""\
  *(Used only when outline display mode is grayscale)*
  
  The following options are possible for setting the intensity
  (brightness) of the outlines:
  
  -  *{MAX_IMAGE}:* Set the brightness to the the same as the brightest
     point in the image.
  -  *{MAX_POSSIBLE}:* Set to the maximum possible value for this image
     format.
  
  If your image is quite dim, then putting bright white lines onto it may
  not be useful. It may be preferable to make the outlines equal to the
  maximal brightness already occurring in the image.
  """.format(
              **{"MAX_IMAGE": MAX_IMAGE, "MAX_POSSIBLE": MAX_POSSIBLE}
          ),
      )
  
      self.outlines = []
  
      self.add_outline(can_remove=False)
  
      self.add_outline_button = DoSomething(
          "", "Add another outline", self.add_outline
      )
  
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 1 for calling the OverlayOutlines obj's underlying member method code with example usage: obj.create_settings() without return types