class_docstr: Randomly Drop Channels in the input Image.
  
  Args:
      channel_drop_range (int, int): range from which we choose the number of channels to drop.
      fill_value (int, float): pixel value for the dropped channel.
      p (float): probability of applying the transform. Default: 0.5.
  
  Targets:
      image
  
  Image types:
      uint8, uint16, unit32, float32
class_docstr_tok: ["Randomly","Drop","Channels","in","the","input","Image",".","Args",":","channel_drop_range","(","int",",","int",")",":","range","from","which","we","choose","the","number","of","channels","to","drop",".","fill_value","(","int",",","float",")",":","pixel","value","for","the","dropped","channel",".","p","(","float",")",":","probability","of","applying","the","transform",".","Default",":","0.5",".","Targets",":","image","Image","types",":","uint8",",","uint16",",","unit32",",","float32"]
code: def __init__(
      self,
      channel_drop_range: Tuple[int, int] = (1, 1),
      fill_value: Union[int, float] = 0,
      always_apply: bool = False,
      p: float = 0.5,
  ):
      super(ChannelDropout, self).__init__(always_apply, p)
  
      self.channel_drop_range = channel_drop_range
  
      self.min_channels = channel_drop_range[0]
      self.max_channels = channel_drop_range[1]
  
      if not 1 <= self.min_channels <= self.max_channels:
          raise ValueError(
              "Invalid channel_drop_range. Got: {}".format(
                  channel_drop_range
              )
          )
  
      self.fill_value = fill_value
  
file_path: albumentations/albumentations/augmentations/dropout/channel_dropout.py
imports: import random
  from typing import Any, Mapping, Tuple, Union
  import numpy
  from albumentations.core.transforms_interface import ImageOnlyTransform
  from .functional import channel_dropout
label_desc: Use image node_id 1 to create a new ChannelDropout object from inherited base classes: ImageOnlyTransform with example: obj = ChannelDropout(channel_drop_range, fill_value, always_apply, p)