code: def test_brightfield():
      image = numpy.ones((20, 10))
      images_and_masks = [(image.copy(), None) for i in range(9)]
      for i, (img, _) in enumerate(images_and_masks):
          if i < 5:
              img[:5, :5] = 0
          else:
              img[:5, 5:] = 0
      image_out = run_image_set(
          cellprofiler.modules.makeprojection.P_BRIGHTFIELD,
          images_and_masks,
      )
      i, j = numpy.mgrid[: image.shape[0], : image.shape[1]]
      numpy.testing.assert_almost_equal(
          image_out.pixel_data[(i > 5) | (j < 5)], 0
      )
      numpy.testing.assert_almost_equal(
          image_out.pixel_data[(i < 5) & (j >= 5)], 1
      )
  
imports: import numpy
  import six.moves
  import cellprofiler_core.image
  import cellprofiler_core.measurement
  import cellprofiler.modules.makeprojection
  import cellprofiler_core.object
  import cellprofiler_core.pipeline
  import cellprofiler_core.workspace
  import tests.frontend.modules
label_desc: Use image node_id 12 for calling a global function with example usage: test_brightfield() without return types