class_docstr: A reference of 3D U-Net model.
  
  Implementation origin :
  https://github.com/shiba24/3d-unet/blob/master/pytorch/model.py
  
  .. seealso::
      Özgün Çiçek, Ahmed Abdulkadir, Soeren S. Lienkamp, Thomas Brox
      and Olaf Ronneberger (2016). 3D U-Net: Learning Dense Volumetric
      Segmentation from Sparse Annotation
      ArXiv link: https://arxiv.org/pdf/1606.06650.pdf
class_docstr_tok: ["A","reference","of","3D","U-Net","model",".","Implementation","origin",":","https",":","\/\/github.com\/shiba24\/3d-unet\/blob\/master\/pytorch\/model.py","..","seealso",":",":","\u00d6zg\u00fcn","\u00c7i\u00e7ek",",","Ahmed","Abdulkadir",",","Soeren","S.","Lienkamp",",","Thomas","Brox","and","Olaf","Ronneberger","(","2016",")",".","3D","U-Net",":","Learning","Dense","Volumetric","Segmentation","from","Sparse","Annotation","ArXiv","link",":","https",":","\/\/arxiv.org\/pdf\/1606.06650.pdf"]
code: def forward(self, x):
      e0 = self.ec0(x)
      syn0 = self.ec1(e0)
      e1 = self.pool0(syn0)
      e2 = self.ec2(e1)
      syn1 = self.ec3(e2)
      del e0, e1, e2
  
      e3 = self.pool1(syn1)
      e4 = self.ec4(e3)
      syn2 = self.ec5(e4)
      del e3, e4
  
      e5 = self.pool2(syn2)
      e6 = self.ec6(e5)
      e7 = self.ec7(e6)
      del e5, e6
  
      d9 = torch.cat((self.dc9(e7), syn2), dim=1)
      del e7, syn2
  
      d8 = self.dc8(d9)
      d7 = self.dc7(d8)
      del d9, d8
  
      d6 = torch.cat((self.dc6(d7), syn1), dim=1)
      del d7, syn1
  
      d5 = self.dc5(d6)
      d4 = self.dc4(d5)
      del d6, d5
  
      d3 = torch.cat((self.dc3(d4), syn0), dim=1)
      del d4, syn0
  
      d2 = self.dc2(d3)
      d1 = self.dc1(d2)
      del d3, d2
  
      d0 = self.dc0(d1)
      return d0
  
imports: import torch
  import torch.nn
  from torch.nn import Module
  import torch.nn.functional
label_desc: Use image node_id 4 for calling the UNet3D obj's underlying member method code with example usage: obj.forward(x) and returns: d0