class_docstr: Spatially adaptive non-local means (SANLM) denoising filter
  
  This  function  applies  an spatial adaptive (sub-resolution) non-local means denoising filter
  to  the  data.  This  filter  will  remove  noise  while  preserving  edges. The filter strength is
  automatically estimated based on the standard deviation of the noise.
  
  This   filter   is  internally  used  in  the  segmentation  procedure  anyway.  Thus,  it  is  not
  necessary (and not recommended) to apply the filter before segmentation.
  ______________________________________________________________________
  Christian Gaser, Robert Dahnke
  Structural Brain Mapping Group (http://www.neuro.uni-jena.de)
  Departments of Neurology and Psychiatry
  Jena University Hospital
  ______________________________________________________________________
  
  Examples
  --------
  >>> from nipype.interfaces import cat12
  >>> c = cat12.CAT12SANLMDenoising()
  >>> c.inputs.in_files = 'anatomical.nii'
  >>> c.run() # doctest: +SKIP
class_docstr_tok: ["Spatially","adaptive","non-local","means","(","SANLM",")","denoising","filter","This","function","applies","an","spatial","adaptive","(","sub-resolution",")","non-local","means","denoising","filter","to","the","data",".","This","filter","will","remove","noise","while","preserving","edges",".","The","filter","strength","is","automatically","estimated","based","on","the","standard","deviation","of","the","noise",".","This","filter","is","internally","used","in","the","segmentation","procedure","anyway",".","Thus",",","it","is","not","necessary","(","and","not","recommended",")","to","apply","the","filter","before","segmentation",".","______________________________________________________________________","Christian","Gaser",",","Robert","Dahnke","Structural","Brain","Mapping","Group","(","http",":","\/\/www.neuro.uni-jena.de",")","Departments","of","Neurology","and","Psychiatry","Jena","University","Hospital","______________________________________________________________________","Examples","--","--","--","--",">",">",">","from","nipype.interfaces","import","cat12",">",">",">","c","=","cat12.CAT12SANLMDenoising","(",")",">",">",">","c.inputs.in_files","=","'anatomical.nii'",">",">",">","c.run","(",")","#","doctest",":","+SKIP"]
code: def _list_outputs(self):
      outputs = self._outputs().get()
      outputs["out_file"] = fname_presuffix(
          self.inputs.in_files[0],
          newpath=os.getcwd(),
          prefix=self.inputs.filename_prefix,
          suffix=self.inputs.filename_suffix,
      )
      return outputs
  
imports: import os
  from pathlib import Path
  from nipype.interfaces.base import InputMultiPath, TraitedSpec, traits, isdefined, File, Str
  from nipype.interfaces.cat12.base import Cell
  from nipype.interfaces.spm import SPMCommand
  from nipype.interfaces.spm.base import SPMCommandInputSpec, ImageFileSPM, scans_for_fnames, scans_for_fname
  from nipype.utils.filemanip import split_filename, fname_presuffix
label_desc: Use image node_id 3 for calling the CAT12SANLMDenoising obj's underlying member method code with example usage: obj._list_outputs() and returns: outputs