class_docstr: Blurs the image with a sequence of extended box filters, which
  approximates a Gaussian kernel. For details on accuracy see
  <https://www.mia.uni-saarland.de/Publications/gwosdek-ssvm11.pdf>
  
  :param radius: Standard deviation of the Gaussian kernel. Either a sequence of two
                 numbers for x and y, or a single number for both.
class_docstr_tok: ["Blurs","the","image","with","a","sequence","of","extended","box","filters",",","which","approximates","a","Gaussian","kernel",".","For","details","on","accuracy","see","<","https",":","\/\/www.mia.uni-saarland.de\/Publications\/gwosdek-ssvm11.pdf",">",":","param","radius",":","Standard","deviation","of","the","Gaussian","kernel",".","Either","a","sequence","of","two","numbers","for","x","and","y",",","or","a","single","number","for","both","."]
code: def filter(self, image):
      xy = self.radius
      if not isinstance(xy, (tuple, list)):
          xy = (xy, xy)
      if xy == (0, 0):
          return image.copy()
      return image.gaussian_blur(xy)
  
imports: from __future__ import annotations
  import functools
label_desc: Use image node_id 2 for calling the GaussianBlur obj's underlying member method code with example usage: obj.filter(image) and returns: image, image