def __init__(self, M, N, J, name="scattering"): super(Scattering, self).__init__(name) self.M, self.N, self.J = M, N, J self._prepare_padding_size([1, 1, M, N]) # Create the filters filters = filters_bank(self.M_padded, self.N_padded, J) self.Psi = filters['psi'] self.Phi = [filters['phi'][j] for j in range(J)]
def __init__(self, M, N, J, check=False): super(Scattering, self).__init__() self.M, self.N, self.J = M, N, J self.check = check # for tests self._prepare_padding_size([1, 1, M, N]) # Create the filters filters = filters_bank(self.M_padded, self.N_padded, J) self.Psi = filters['psi'] self.Phi = [filters['phi'][j] for j in range(J)]
def run_filter_bank(M, N, J): filters = filters_bank.filters_bank(M, N, J) d_save = {} # Save phi d_save["phi"] = {} for key in filters["phi"].keys(): val = filters["phi"][key] if isinstance(val, tf.Tensor): val_numpy = val.eval(session=tf.Session()) d_save["phi"][key] = val_numpy # Save psi d_save["psi"] = [] for elem in filters["psi"]: d = {} for key in elem.keys(): val = elem[key] if isinstance(val, tf.Tensor): val_numpy = val.eval(session=tf.Session()) d[key] = val_numpy d_save["psi"].append(d) return d_save