kaira.utils.add_noise_for_snr
- kaira.utils.add_noise_for_snr(signal: Tensor, target_snr_db: float | Tensor, dim: int | Tuple[int, ...] | None = None) Tuple[Tensor, Tensor][source]
Add Gaussian noise to achieve a target Signal-to-Noise Ratio.
- Parameters:
signal (torch.Tensor) – The original clean signal.
target_snr_db (Union[float, torch.Tensor]) – Target Signal-to-Noise Ratio in decibels (dB).
dim (Optional[Union[int, Tuple[int, ...]]]) – Dimensions to reduce when calculating power. If None, uses all dimensions.
- Returns:
- A tuple containing:
Noisy signal (original signal with added noise)
The generated noise component
- Return type:
Tuple[torch.Tensor, torch.Tensor]