docstr: Test conversion of sparse to 2D dense where some labels overlap
  and some do not
  
  dense output: label=2, c=1,t=1,z=1,y=4,x=5
  
      1 1 2 0 0
      1 1 2 0 0
      0 0 0 4 4
      0 0 0 0 0
      ---
      0 0 0 0 0
      0 0 3 0 0
      0 0 0 0 5
      0 0 0 0 5
docstr_tok: ["Test","conversion","of","sparse","to","2D","dense","where","some","labels","overlap","and","some","do","not","dense","output",":","label=2",",","c=1",",","t=1",",","z=1",",","y=4",",","x=5","1","1","2","0","0","1","1","2","0","0","0","0","0","4","4","0","0","0","0","0","--","-","0","0","0","0","0","0","0","3","0","0","0","0","0","0","5","0","0","0","0","5"]
code: def test_02_04_sparse_to_2d_dense_some_overlap(self):
      """
      Test conversion of sparse to 2D dense where some labels overlap
      and some do not
  
      dense output: label=2, c=1,t=1,z=1,y=4,x=5
  
          1 1 2 0 0
          1 1 2 0 0
          0 0 0 4 4
          0 0 0 0 0
          ---
          0 0 0 0 0
          0 0 3 0 0
          0 0 0 0 5
          0 0 0 0 5
      """
      sparse = np.array(
          [
              (0, 0, 1),
              (0, 1, 1),
              (0, 2, 2),
              (1, 0, 1),
              (1, 1, 1),
              (1, 2, 2),
              (2, 3, 4),
              (2, 4, 4),
              (1, 2, 3),
              (2, 4, 5),
              (3, 4, 5),
          ],
          dtype=[
              (SPARSE_FIELD.y.value, "<u2"),
              (SPARSE_FIELD.x.value, "<u2"),
              (SPARSE_FIELD.label.value, "u1"),
          ],
      )
  
      dense_plain, dpi = lib_seg.convert_sparse_to_dense(sparse)
      dense_shaped, dsi = lib_seg.convert_sparse_to_dense(
          sparse, dense_shape=(1, 1, 1, 4, 5)
      )
  
      # + 1 padding
      dense_plain_expected = np.array(
          [
              [
                  1,
                  1,
                  2,
                  0,
                  0,
                  0,
                  1,
                  1,
                  2,
                  0,
                  0,
                  0,
                  0,
                  0,
                  0,
                  4,
                  4,
                  0,
                  0,
                  0,
                  0,
                  0,
                  0,
                  0,
                  0,
                  0,
                  0,
                  0,
                  0,
                  0,
              ],
              [
                  0,
                  0,
                  0,
                  0,
                  0,
                  0,
                  0,
                  0,
                  3,
                  0,
                  0,
                  0,
                  0,
                  0,
                  0,
                  0,
                  5,
                  0,
                  0,
                  0,
                  0,
                  0,
                  5,
                  0,
                  0,
                  0,
                  0,
                  0,
                  0,
                  0,
              ],
          ],
          np.uint8,
      ).reshape((2, 1, 1, 1, 5, 6))
      dense_shaped_expected = np.array(
          [
              [
                  1,
                  1,
                  2,
                  0,
                  0,
                  1,
                  1,
                  2,
                  0,
                  0,
                  0,
                  0,
                  0,
                  4,
                  4,
                  0,
                  0,
                  0,
                  0,
                  0,
              ],
              [
                  0,
                  0,
                  0,
                  0,
                  0,
                  0,
                  0,
                  3,
                  0,
                  0,
                  0,
                  0,
                  0,
                  0,
                  5,
                  0,
                  0,
                  0,
                  0,
                  5,
              ],
          ],
          np.uint8,
      ).reshape((2, 1, 1, 1, 4, 5))
      indices_expected = [
          np.array([1, 2, 4], np.uint8),
          np.array([3, 5], np.uint8),
      ]
  
      np.testing.assert_array_equal(dense_plain, dense_plain_expected)
      np.testing.assert_array_equal(dense_shaped, dense_shaped_expected)
      _check_indices(dpi, indices_expected)
      _check_indices(dsi, indices_expected)
  
imports: import numpy
  import centrosome.outline
  import cellprofiler_library.functions.segmentation
  from cellprofiler_library.functions.segmentation import SPARSE_FIELD
label_desc: Use image node_id 11 for calling the TestSegmentation obj's underlying member method code with example usage: obj.test_02_04_sparse_to_2d_dense_some_overlap() without return types