docstr: Args:
      encoder_features:
      decoder_features:
      output_features:
      supervision_channels:
      abn_block:
      dropout:
docstr_tok: ["Args",":","encoder_features",":","decoder_features",":","output_features",":","supervision_channels",":","abn_block",":","dropout",":"]
code: def __init__(
      self,
      in_channels: int,
      out_channels: int,
      abn_block=ABN,
      dropout=0.0,
  ):
      """
  
      Args:
          encoder_features:
          decoder_features:
          output_features:
          supervision_channels:
          abn_block:
          dropout:
      """
      super().__init__()
  
      self.conv1 = nn.Conv2d(
          in_channels,
          out_channels,
          kernel_size=3,
          padding=1,
          bias=False,
      )
      self.abn1 = abn_block(out_channels)
  
      self.drop1 = nn.Dropout2d(dropout, inplace=False)
  
      self.conv2 = nn.Conv2d(
          out_channels,
          out_channels,
          kernel_size=3,
          padding=1,
          bias=False,
      )
      self.abn2 = abn_block(out_channels)
  
imports: from __future__ import absolute_import
  from typing import List
  import torch
  from torch import nn, Tensor
  from torch.nn import functional
  from ..modules.activations import ABN
label_desc: Use image node_id 1 to create a new FPNBottleneckBlock object from inherited base classes: nn with example: obj = FPNBottleneckBlock(in_channels, out_channels, abn_block, dropout)