Resample#

class torch_ecg._preprocessors.Resample(fs: int | None = None, siglen: int | None = None, **kwargs: Any)[source]#

Bases: PreProcessor

Resample the signal into fixed sampling frequency or length.

Parameters:
  • fs (int, optional) – Sampling frequency of the resampled ECG.

  • siglen (int, optional) – Number of samples in the resampled ECG.

Note

One and only one of fs and siglen should be set.

Examples

from torch_ecg.cfg import DEFAULTS
sig = DEFAULTS.RNG.randn(1000)
pp = Resample(fs=500)
sig, _ = pp(sig, 250)
apply(sig: ndarray[tuple[Any, ...], dtype[_ScalarT]], fs: float | int) Tuple[ndarray[tuple[Any, ...], dtype[_ScalarT]], int | float][source]#

Apply the preprocessor to sig.

Parameters:
  • sig (numpy.ndarray) – The ECG signal, can be - 1d array, which is a single-lead ECG; - 2d array, which is a multi-lead ECG of “lead_first” format; - 3d array, which is a tensor of several ECGs, of shape (batch, lead, siglen).

  • fs (float or int) – Sampling frequency of the ECG signal.

Returns:

  • rsmp_sig (numpy.ndarray) – The resampled ECG signal.

  • new_fs (int,) – Sampling frequency of the resampled ECG signal.

extra_repr_keys() List[str][source]#

Extra keys for __repr__() and __str__().