MCPcopy Create free account
hub / github.com/NVIDIA/TensorRT / transform

Method transform

demo/Tacotron2/common/stft.py:94–122  ·  view source on GitHub ↗
(self, input_data)

Source from the content-addressed store, hash-verified

92 self.register_buffer('inverse_basis', inverse_basis.float())
93
94 def transform(self, input_data):
95 num_batches = input_data.size(0)
96 num_samples = input_data.size(1)
97
98 self.num_samples = num_samples
99
100 # similar to librosa, reflect-pad the input
101 input_data = input_data.view(num_batches, 1, num_samples)
102 input_data = F.pad(
103 input_data.unsqueeze(1),
104 (int(self.filter_length / 2), int(self.filter_length / 2), 0, 0),
105 mode='reflect')
106 input_data = input_data.squeeze(1)
107
108 forward_transform = F.conv1d(
109 input_data,
110 Variable(self.forward_basis, requires_grad=False),
111 stride=self.hop_length,
112 padding=0)
113
114 cutoff = int((self.filter_length / 2) + 1)
115 real_part = forward_transform[:, :cutoff, :]
116 imag_part = forward_transform[:, cutoff:, :]
117
118 magnitude = torch.sqrt(real_part**2 + imag_part**2)
119 phase = torch.autograd.Variable(
120 torch.atan2(imag_part.data, real_part.data))
121
122 return magnitude, phase
123
124 def inverse(self, magnitude, phase):
125 recombine_magnitude_phase = torch.cat(

Callers 5

forwardMethod · 0.95
__init__Method · 0.80
forwardMethod · 0.80
mel_spectrogramMethod · 0.80
griffin_limFunction · 0.80

Calls 5

VariableClass · 0.85
viewMethod · 0.80
sizeMethod · 0.45
sqrtMethod · 0.45
atan2Method · 0.45

Tested by

no test coverage detected