Args: signal: input 1 dimension signal to which a partial sinusoidal signal will be added
(self, signal: NdarrayOrTensor)
| 257 | self.fraction = fraction |
| 258 | |
| 259 | def __call__(self, signal: NdarrayOrTensor) -> NdarrayOrTensor: |
| 260 | """ |
| 261 | Args: |
| 262 | signal: input 1 dimension signal to which a partial sinusoidal signal |
| 263 | will be added |
| 264 | """ |
| 265 | self.randomize(None) |
| 266 | self.magnitude = self.R.uniform(low=self.boundaries[0], high=self.boundaries[1]) |
| 267 | self.fracs = self.R.uniform(low=self.fraction[0], high=self.fraction[1]) |
| 268 | self.freqs = self.R.uniform(low=self.frequencies[0], high=self.frequencies[1]) |
| 269 | |
| 270 | length = signal.shape[-1] |
| 271 | |
| 272 | time_partial = np.arange(0, round(self.fracs * length), 1) |
| 273 | data = convert_to_tensor(self.freqs * time_partial) |
| 274 | sine_partial = self.magnitude * torch.sin(data) |
| 275 | |
| 276 | loc = self.R.choice(range(length)) |
| 277 | signal = paste(signal, sine_partial, (loc,)) |
| 278 | |
| 279 | return signal |
| 280 | |
| 281 | |
| 282 | class SignalRandAddGaussianNoise(RandomizableTransform): |
nothing calls this directly
no test coverage detected