def Synthesize(self): plot = 0; plt.gray() osc_1_l = [self.osc_1[0][0], self.osc_1[1][0], self.osc_1[2][0], self.osc_1[3][0], self.osc_1[4][0], self.osc_1[5][0], self.osc_1[6][0], self.osc_1[7][0]] osc_1_r = [self.osc_1[0][1], self.osc_1[1][1], self.osc_1[2][1], self.osc_1[3][1], self.osc_1[4][1], self.osc_1[5][1], self.osc_1[6][1], self.osc_1[7][1]] osc_2_l = [self.osc_2[0][0], self.osc_2[1][0], self.osc_2[2][0], self.osc_2[3][0], self.osc_2[4][0], self.osc_2[5][0], self.osc_2[6][0], self.osc_2[7][0]] osc_2_r = [self.osc_2[0][1], self.osc_2[1][1], self.osc_2[2][1], self.osc_2[3][1], self.osc_2[4][1], self.osc_2[5][1], self.osc_2[6][1], self.osc_2[7][1]] if self.Tom_Stat: for i in range(len(osc_1_l)): osc_1_l[i] = osc_1_l[i]*self.TomL for i in range(len(osc_1_r)): osc_1_r[i] = osc_1_r[i]*self.TomR print("success Tom Cruise enabled!") plot += 1; plt.figure(plot) plt.subplot(1,2,1) plt.imshow(self.osc_1[0][0]) plt.title('Orignal Left Channel') plt.subplot(1,2,2) plt.imshow(osc_1_l[0]) plt.title('Tom Cruise Left Channel') if self.Drake_Stat: for i in range(len(osc_1_l)): osc_1_l[i] = osc_1_l[i]*self.DrakeL for i in range(len(osc_1_r)): osc_1_r[i] = osc_1_r[i]*self.DrakeR print("success Drake enabled!") plot += 1; plt.figure(plot) plt.subplot(1,2,1) plt.imshow(self.osc_1[0][0]) plt.title('Orignal Left Channel') plt.subplot(1,2,2) plt.imshow(osc_1_l[0]) plt.title('Drake Left Channel') """filter bank""" if self.LFO1_stat: LFO1 = LFO(self.LFO1_rate) for i in range(len(osc_1_l)): osc_1_l[i] = np.multiply(LFO1.map_lfo[0], osc_1_l[i]) for i in range(len(osc_1_r)): osc_1_r[i] = np.multiply(LFO1.map_lfo[1], osc_1_r[i]) print("success LFO enabled!") plot += 1; plt.figure(plot) plt.subplot(1,2,1) plt.imshow(self.osc_1[0][0]) plt.title('Orignal Left Channel') plt.subplot(1,2,2) plt.imshow(osc_1_l[0]) plt.title('LFO on Left Channel') if self.W_Stat: for i in range(len(osc_1_l)): osc_1_l[i], osc_1_r[i] = Filters.wavelet_filter(osc_1_l[i], osc_1_r[i], self.W_Type); print("success Wavelet filtered!") plot += 1; plt.figure(plot) plt.subplot(1,2,1) plt.imshow(self.osc_1[0][0]) plt.title('Orignal Left Channel') plt.subplot(1,2,2) plt.imshow(osc_1_l[0]) plt.title('Wavelet on Left Channel') if self.Gab_Stat: for i in range(len(osc_1_l)): osc_1_l[i], osc_1_r[i] = Filters.gabor_filter(osc_1_l[i], osc_1_r[i], self.Gab_Deg); print("success Gabor filtered!") plot += 1; plt.figure(plot) plt.subplot(1,2,1) plt.imshow(self.osc_1[0][0]) plt.title('Orignal Left Channel') plt.subplot(1,2,2) gab_im = self.osc_1[0][0]-osc_1_l[0] plt.imshow(osc_1_l[0]) plt.title('Gabor on Left Channel') if self.JPEG_Stat: for i in range(len(osc_1_l)): osc_1_l[i], osc_1_r[i] = Filters.jpeg_decompose(osc_1_l[i], osc_1_r[i], 100); print("success JPEG decomposed!") plot += 1; plt.figure(plot) plt.subplot(1,2,1) plt.imshow(self.osc_1[0][0]) plt.title('Orignal Left Channel') plt.subplot(1,2,2) plt.imshow(osc_1_l[0]) plt.title('JPEG on Left Channel') if self.Bilateral_Stat: for i in range(len(osc_1_l)): osc_1_l[i], osc_1_r[i] = Filters.bilateral_filter(osc_1_l[i], osc_1_r[i], 3, 25, 25); print("success Bilaterial filtered!") plot += 1; plt.figure(plot) plt.subplot(1,2,1) plt.imshow(self.osc_1[0][0]) plt.title('Orignal Left Channel') plt.subplot(1,2,2) plt.imshow(osc_1_l[0]) plt.title('Denoise/Smoothing on Left Channel') plt.show() """recombine""" self.osc_1 = [[osc_1_l[0], osc_1_r[0]], [osc_1_l[1], osc_1_r[1]],[osc_1_l[2], osc_1_r[2]],[osc_1_l[3], osc_1_r[3]],[osc_1_l[4], osc_1_r[4]],[osc_1_l[5], osc_1_r[5]], [osc_1_l[6], osc_1_r[6]], [osc_1_l[7], osc_1_r[7]]] return self.osc_1