code: def chroma_features_init(num_fft, sampling_rate):
      """
      This function initializes the chroma matrices used in the calculation
      of the chroma features
      """
      freqs = np.array(
          [
              ((f + 1) * sampling_rate) / (2 * num_fft)
              for f in range(num_fft)
          ]
      )
      cp = 27.50
      num_chroma = np.round(12.0 * np.log2(freqs / cp)).astype(int)
  
      num_freqs_per_chroma = np.zeros((num_chroma.shape[0],))
  
      unique_chroma = np.unique(num_chroma)
      for u in unique_chroma:
          idx = np.nonzero(num_chroma == u)
          num_freqs_per_chroma[idx] = idx[0].shape
  
      return num_chroma, num_freqs_per_chroma
  
imports: from __future__ import print_function
  import math
  import numpy
  import sys
  from scipy.fftpack import fft
  import matplotlib.pyplot
  from scipy.signal import lfilter
  from scipy.fftpack.realtransforms import dct
  from tqdm import tqdm
label_desc: Use image node_id 12 for calling a global function with example usage: chroma_features_init(num_fft, sampling_rate) and returns: num_chroma,  num_freqs_per_chroma