class_docstr: Upsample a tensor and then blurs it.
  
  Args:
      borde_type: the padding mode to be applied before convolving.
        The expected modes are: ``'constant'``, ``'reflect'``,
        ``'replicate'`` or ``'circular'``.
      align_corners: interpolation flag.
  
  Return:
      the upsampled tensor.
  
  Shape:
      - Input: :math:`(B, C, H, W)`
      - Output: :math:`(B, C, H * 2, W * 2)`
  
  Examples:
      >>> input = torch.rand(1, 2, 4, 4)
      >>> output = PyrUp()(input)  # 1x2x8x8
class_docstr_tok: ["Upsample","a","tensor","and","then","blurs","it",".","Args",":","borde_type",":","the","padding","mode","to","be","applied","before","convolving",".","The","expected","modes","are",":","``","'constant","'","``",",","``","'reflect","'","``",",","``","'replicate","'","``","or","``","'circular","'","``",".","align_corners",":","interpolation","flag",".","Return",":","the","upsampled","tensor",".","Shape",":","-","Input",":",":","math",":","`","(","B",",","C",",","H",",","W",")","`","-","Output",":",":","math",":","`","(","B",",","C",",","H","*","2",",","W","*","2",")","`","Examples",":",">",">",">","input","=","torch.rand","(","1",",","2",",","4",",","4",")",">",">",">","output","=","PyrUp","(",")","(","input",")","#","1x2x8x8"]
code: def __init__(
      self, border_type: str = "reflect", align_corners: bool = False
  ) -> None:
      super().__init__()
      self.border_type: str = border_type
      self.align_corners: bool = align_corners
  
imports: from __future__ import annotations
  import math
  import torch
  import torch.nn.functional
  from kornia.core import Module, Tensor, ones, pad, stack, tensor, zeros
  from kornia.core.check import KORNIA_CHECK, KORNIA_CHECK_IS_TENSOR, KORNIA_CHECK_SHAPE
  from kornia.filters import filter2d, gaussian_blur2d
label_desc: Use image node_id 1 to create a new PyrUp object from inherited base classes: Module with example: obj = PyrUp(border_type, align_corners)