code: def __init__(self, input_channel, output_channel, layer_number):
      super().__init__()
      self.convs = nn.Sequential()
      self.convs.append(
          nn.Conv2d(
              in_channels=input_channel,
              out_channels=output_channel,
              kernel_size=(3, 3),
              stride=(1, 1),
              padding=1,
          )
      )
      for _ in range(1, layer_number):
          self.convs.append(
              nn.Conv2d(
                  in_channels=output_channel,
                  out_channels=output_channel,
                  kernel_size=(3, 3),
                  stride=(1, 1),
                  padding=1,
              )
          )
      self.projection = nn.Conv2d(
          in_channels=output_channel,
          out_channels=1,
          kernel_size=(1, 1),
          stride=(1, 1),
          padding=0,
      )
  
file_path: carefree-learn/cflearn/api/cv/third_party/hed.py
imports: import os
  import torch
  import numpy
  import torch.nn
  from ....parameters import OPT
label_desc: Use image node_id 1 to create a new DoubleConvBlock object from inherited base classes: nn with example: obj = DoubleConvBlock(input_channel, output_channel, layer_number)