code: def idwt3D(w, J, sf):
      """
      Inverse 3-D Discrete Wavelet Transform
  
      Parameters
      ----------
      w : cell array
          wavelet coefficient
      J : int
          number of stages
      sf : 2D ndarray
          synthesis filters
  
      Returns
      -------
      y : 3D ndarray
          output array
      """
  
      y = w[J]
      for k in range(J)[::-1]:
          y = sfb3D(y, w[k], sf, sf, sf)
      return y
  
file_path: dipy/dipy/core/wavelet.py
imports: import numpy
  from dipy.denoise import nlmeans_block
label_desc: Use image node_id 8 for calling a global function with example usage: idwt3D(w, J, sf) and returns: y