code: def test_2d_image(self):
      table = np.mod(np.arange(256) + 10, 256).astype(np.uint8)
  
      image = np.uint8(
          [[0, 50, 100, 245, 254, 255], [1, 51, 101, 246, 255, 0]]
      )
  
      image_aug = ia.apply_lut(image, table)
  
      expected = np.uint8(
          [[10, 60, 110, 255, 8, 9], [11, 61, 111, 0, 9, 10]]
      )
      assert np.array_equal(image_aug, expected)
      assert image_aug is not image
      assert image_aug.shape == (2, 6)
      assert image_aug.dtype.name == "uint8"
  
imports: from __future__ import print_function, division, absolute_import
  import time
  import warnings
  import sys
  import matplotlib
  import numpy
  import six.moves
  import cv2
  import imgaug
  from imgaug import dtypes
  import imgaug.random
  from imgaug.testutils import assertWarns
label_desc: Use image node_id 1 for calling the Test_apply_lut obj's underlying member method code with example usage: obj.test_2d_image() without return types