code: def get_image():
      """Load an image from the demo-data repository if possible. Otherwise,
      just return a randomly generated image.
      """
      from vispy.io import load_data_file, read_png
  
      try:
          return read_png(load_data_file("mona_lisa/mona_lisa_sm.png"))
      except Exception as exc:
          # fall back to random image
          print("Error loading demo image data: %r" % exc)
  
      # generate random image
      image = np.random.normal(size=(100, 100, 3))
      image[20:80, 20:80] += 3.0
      image[50] += 3.0
      image[:, 50] += 3.0
      image = (
          (image - image.min()) * (253.0 / (image.max() - image.min()))
      ).astype(np.ubyte)
  
      return image
  
file_path: vispy/examples/basics/visuals/image_visual.py
imports: import numpy
  import vispy.app
  from vispy import gloo
  from vispy import visuals
  from vispy.visuals.transforms import STTransform
label_desc: Use image node_id 1 for calling a global function with example usage: get_image() and returns: image, read_png