code: def _test_very_roughly(self, nb_channels):
      if nb_channels is None:
          img = np.zeros((100, 100), dtype=np.uint8)
      else:
          img = np.zeros((100, 100, nb_channels), dtype=np.uint8)
  
      imgs_aug = iaa.Snowflakes().augment_images([img] * 5)
      assert 0.01 < np.average(imgs_aug) < 100
      assert np.max(imgs_aug) > 100
  
      for img_aug in imgs_aug:
          img_aug_f32 = img_aug.astype(np.float32)
          grad_x = img_aug_f32[:, 1:] - img_aug_f32[:, :-1]
          grad_y = img_aug_f32[1:, :] - img_aug_f32[:-1, :]
  
          assert np.sum(np.abs(grad_x)) > 5 * img.shape[1]
          assert np.sum(np.abs(grad_y)) > 5 * img.shape[0]
  
      # test density
      imgs_aug_undense = iaa.Snowflakes(
          density=0.001, density_uniformity=0.99
      ).augment_images([img] * 5)
      imgs_aug_dense = iaa.Snowflakes(
          density=0.1, density_uniformity=0.99
      ).augment_images([img] * 5)
      assert np.average(imgs_aug_undense) < np.average(imgs_aug_dense)
  
      # test density_uniformity
      imgs_aug_ununiform = iaa.Snowflakes(
          density=0.4, density_uniformity=0.1
      ).augment_images([img] * 30)
      imgs_aug_uniform = iaa.Snowflakes(
          density=0.4, density_uniformity=0.9
      ).augment_images([img] * 30)
  
      ununiform_uniformity = np.average(
          [
              self._measure_uniformity(img_aug)
              for img_aug in imgs_aug_ununiform
          ]
      )
      uniform_uniformity = np.average(
          [
              self._measure_uniformity(img_aug)
              for img_aug in imgs_aug_uniform
          ]
      )
  
      assert ununiform_uniformity < uniform_uniformity
  
imports: from __future__ import print_function, division, absolute_import
  import sys
  import numpy
  import cv2
  import imgaug
  from imgaug import augmenters
  from imgaug import parameters
  from imgaug.testutils import reseed, runtest_pickleable_uint8_img, is_parameter_instance
label_desc: Use image node_id 2 for calling the TestSnowflakes obj's underlying member method code with example usage: obj._test_very_roughly(nb_channels) without return types