class_docstr: ``DenoiseAndSegment`` is the name of our combined workflow. Note that
  it needs to extend CombinedWorkflow for everything to work properly.
docstr: Parameters
  ----------
  input_files : string
      Path to the input files. This path may contain wildcards to
      process multiple inputs at once.
  
  out_dir : string, optional
      Where the resulting file will be saved. (default '')
  
  out_file : string, optional
      Name of the result file to be saved. (default 'processed.nii.gz')
docstr_tok: ["Parameters","--","--","--","--","--","input_files",":","string","Path","to","the","input","files",".","This","path","may","contain","wildcards","to","process","multiple","inputs","at","once",".","out_dir",":","string",",","optional","Where","the","resulting","file","will","be","saved",".","(","default","``",")","out_file",":","string",",","optional","Name","of","the","result","file","to","be","saved",".","(","default","'processed.nii.gz","'",")"]
code: def run(self, input_files, out_dir="", out_file="processed.nii.gz"):
      """
      Parameters
      ----------
      input_files : string
          Path to the input files. This path may contain wildcards to
          process multiple inputs at once.
  
      out_dir : string, optional
          Where the resulting file will be saved. (default '')
  
      out_file : string, optional
          Name of the result file to be saved. (default 'processed.nii.gz')
      """
  
      """
          Just like a normal workflow, it is mandatory to have out_dir as a
          parameter. It is also mandatory to put 'out_' in front of every
          parameter that is going to be an output. Lastly, all out_ params needs
          to be at the end of the params list.
  
          The class docstring part is very important, you need to document
          every parameter as they will be used with inspection to build the
          command line argument parser.
          """
  
      io_it = self.get_io_iterator()
  
      for in_file, out_file in io_it:
          nl_flow = NLMeansFlow()
          self.run_sub_flow(nl_flow, in_file, out_dir=out_dir)
          denoised = nl_flow.last_generated_outputs["out_denoised"]
  
          me_flow = MedianOtsuFlow()
          self.run_sub_flow(me_flow, denoised, out_dir=out_dir)
  
imports: from dipy.workflows.combined_workflow import CombinedWorkflow
  from dipy.workflows.denoise import NLMeansFlow
  from dipy.workflows.segment import MedianOtsuFlow
label_desc: Use image node_id 2 for calling the DenoiseAndSegment obj's underlying member method code with example usage: obj.run(input_files, out_dir, out_file) without return types