class_docstr: ASP-OC
class_docstr_tok: ["ASP-OC"]
code: def __init__(
      self,
      in_channels,
      out_channels,
      key_channels,
      value_channels,
      atrous_rates=(12, 24, 36),
      norm_layer=nn.BatchNorm2d,
      **kwargs,
  ):
      super(ASPOCModule, self).__init__()
      self.context = nn.Sequential(
          nn.Conv2d(in_channels, out_channels, 3, padding=1),
          norm_layer(out_channels),
          nn.ReLU(True),
          BaseOCModule(
              out_channels,
              out_channels,
              key_channels,
              value_channels,
              ([2]),
              norm_layer,
              False,
              **kwargs,
          ),
      )
  
      rate1, rate2, rate3 = tuple(atrous_rates)
      self.b1 = nn.Sequential(
          nn.Conv2d(
              in_channels,
              out_channels,
              3,
              padding=rate1,
              dilation=rate1,
              bias=False,
          ),
          norm_layer(out_channels),
          nn.ReLU(True),
      )
      self.b2 = nn.Sequential(
          nn.Conv2d(
              in_channels,
              out_channels,
              3,
              padding=rate2,
              dilation=rate2,
              bias=False,
          ),
          norm_layer(out_channels),
          nn.ReLU(True),
      )
      self.b3 = nn.Sequential(
          nn.Conv2d(
              in_channels,
              out_channels,
              3,
              padding=rate3,
              dilation=rate3,
              bias=False,
          ),
          norm_layer(out_channels),
          nn.ReLU(True),
      )
      self.b4 = nn.Sequential(
          nn.Conv2d(in_channels, out_channels, 1, bias=False),
          norm_layer(out_channels),
          nn.ReLU(True),
      )
  
      self.project = nn.Sequential(
          nn.Conv2d(out_channels * 5, out_channels, 1, bias=False),
          norm_layer(out_channels),
          nn.ReLU(True),
          nn.Dropout2d(0.1),
      )
  
imports: import torch
  import torch.nn
  import torch.nn.functional
  from pywick.models.segmentation.da_basenets.segbase import SegBaseModel
  from pywick.models.segmentation.da_basenets.fcn import _FCNHead
label_desc: Use image node_id 1 to create a new ASPOCModule object from inherited base classes: nn with example: obj = ASPOCModule(in_channels, out_channels, key_channels, value_channels, atrous_rates, norm_layer)