Biomedical signals: filtering cannot undo an ambiguous sampling step
A smoother can suppress one component while attenuating and delaying another. Worse, two different analog components can cancel after sampling. State the input history and acquisition model before trusting a filtered trace.
Course topic: Biomedical Signal Processing
Study route and exercise: University Reading List editorial project. How we curate · Sources checked:
On this page
Scope and responsibility
An invented discrete-time signal and an idealized analog acquisition comparison, not a patient waveform or clinical detector. Smith is a freely readable general DSP anchor with limited copyright permissions; Rangayyan and Krishnan add biomedical reasoning; Semmlow and Griffel connect implementation and imaging.
Choose your starting point
I need freely readable DSP foundations
Use Smith for sampling, convolution and moving-average filters.
I need biomedical analysis decisions
Choose Rangayyan and Krishnan after signals, probability and basic physiology.
I want numerical implementation
Choose Semmlow and Griffel with calculus, signals and MATLAB or equivalent coding skills.
Compare the three books
The Scientist and Engineer's Guide to Digital Signal Processing
Steven W. Smith · 1997
General DSP foundation
- Choose it when
- You can manipulate sinusoids, sums and indexed sequences.
- Use another route when
- You require a biomedical validation protocol or assume free reading means unrestricted redistribution.
- Selected reading
- Sampling, convolution and Moving Average Filters; connect the time and frequency views.
- Limits and trade-offs
- Accessible explanation is useful before specialized methods, but it is not a clinical performance study or a CC-licensed work.
Try before choosing
Evaluate x[−1] before filtering the first displayed sample in the main case.
Check your work: The all-integer formula gives x[−1]=0; zero padding is not the stated history.
Biomedical Signal Analysis
Rangaraj M. Rangayyan; Sridhar Krishnan · Edition: 3 · 2024
Biomedical analytical spine
- Choose it when
- You know linear systems, probability and physiological signal origins.
- Use another route when
- You need a first introduction to algebra or a proven diagnosis from a toy example.
- Selected reading
- Biosignal origins, concurrent/coupled processes and filtering for artifact removal before event detection.
- Limits and trade-offs
- Biomedical examples motivate choices, but a filter’s mathematical response does not itself validate an endpoint or diagnosis.
Try before choosing
For h=[1/2,1/2], find the response to the alternating sequence (−1)^n.
Check your work: Adjacent samples cancel exactly; H(π)=0.
Biosignal and Medical Image Processing
John L. Semmlow; Benjamin Griffel · Edition: 3 · 2014
Implementation and image route
- Choose it when
- You can translate equations into code and inspect sampling assumptions.
- Use another route when
- You only want conceptual prose or software to choose the acquisition design.
- Selected reading
- Signal measurement, sampling, discrete systems and filtering before later medical-image material.
- Limits and trade-offs
- Coding exposes boundary choices and numerical errors, while the later imaging scope adds reading load; software access is separate.
Try before choosing
Compare sin(2π50t) and sin(2π150t) sampled at 200 Hz.
Check your work: At t=n/200 they are opposite sequences, so synchronized equal-amplitude terms cancel.
Check your preparation
Is the sequence finite or only the display finite?
Here x[n] is defined for every integer. Only n=0,…,3 is displayed; the filter can use x[−1].
What does the two-tap average do to a sinusoid?
H(ω)=(1+e^(−iω))/2=e^(−iω/2)cos(ω/2). At π/2 it attenuates by 1/√2 and delays phase by π/4.
Where is anti-alias filtering applied?
To the analog signal before sampling. A digital filter after an ambiguous sampling step cannot identify the lost analog components.
A six-step study plan
Steps completed: 0 / 6
These are your own study marks, not an assessment. They are not sent to this site.
-
Declare the history
Selected reading: Sequences and convolution.
What to do: Write x[n] for all integers and list x[−1] through x[3].
Check your work: The list is 0,3,2,3,0.
-
Convolve directly
Selected reading: Moving Average Filters.
What to do: Compute y[0] through y[3] by hand or exact arithmetic.
Check your work: 1.5,2.5,2.5,1.5.
-
Resolve components
Selected reading: Frequency response.
What to do: Calculate effects on DC, alternating term and desired sinusoid separately.
Check your work: DC passes, alternation vanishes, the sinusoid attenuates and shifts.
-
Check the output formula
Selected reading: Linear systems.
What to do: Evaluate the closed-form output at the four displayed indices.
Check your work: It agrees with direct convolution, including n=0.
-
Change acquisition
Selected reading: Sampling and the follow-up.
What to do: Sample the two specified analog sines and derive their cancellation.
Check your work: The unfiltered acquired sequence is exactly constant 2.
-
Place the preventive filter
Selected reading: Acquisition reasoning.
What to do: Apply the stated ideal analog low-pass before sampling and then the same digital filter.
Check your work: Preventing alias cancellation is different from recovering it afterward.
Worked exercise
A moving average with a specified infinite history
For every integer n let x[n]=2+cos(πn)+sin(πn/2). Apply y[n]=(x[n]+x[n−1])/2. Give a closed form, the samples n=0,…,3 and the effect on each component.
Assumptions
Exact arithmetic, a linear time-invariant two-tap filter and the given all-integer history. No startup reset, zero padding, finite-window truncation or patient measurement is implied.
- The constant 2 is unchanged. Consecutive cos(πn) terms are opposite, so the alternating component vanishes.
- The sine average is [sin(πn/2)+sin(πn/2−π/2)]/2=(1/√2)sin(πn/2−π/4).
- Thus y[n]=2+(1/√2)sin(πn/2−π/4). At n=0,1,2,3 this is 1.5,2.5,2.5,1.5. In particular x[−1]=0, so y[0]=(3+0)/2.
Answer and interpretation
DC passes and alternation is removed, while the π/2 sinusoid is attenuated by 1/√2 and phase-shifted by −π/4, corresponding to half a sample.
from fractions import Fraction
def x(n):
return (3, 2, 3, 0)[n % 4]
y = [Fraction(x(n) + x(n - 1), 2) for n in range(4)]
print([float(v) for v in y])
# [1.5, 2.5, 2.5, 1.5]
Test the result
H(0)=1,H(π)=0,H(π/2)=(1−i)/2. These frequency responses reproduce the direct result; removing a nuisance term did not preserve the desired component exactly.
Change an assumption
Change the analog acquisition and expose alias cancellation
Instead sample xa(t)=2+sin(2π50t)+sin(2π150t) at fs=200 Hz, synchronously at t=n/fs with the stated common phase origin. Compare no analog filter with an ideal unit-gain brick-wall low-pass passing |f|<90 Hz before the ADC. Apply the same two-tap digital filter afterward.
- Without analog filtering, the terms become sin(πn/2) and sin(3πn/2)=−sin(πn/2) for all integer n. Hence x[n]=2 and the digital output is 2.
- The specified analog low-pass passes DC and 50 Hz, and removes 150 Hz before sampling. Its acquired sequence is 2+sin(πn/2).
- The same digital average then yields 2+(1/√2)sin(πn/2−π/4). Its four displayed samples are again 1.5,2.5,2.5,1.5, but now for a different input and acquisition model.
Answer and interpretation
Unfiltered acquisition gives a constant output. Ideal pre-ADC filtering preserves a sampled 50 Hz component, which the digital average still attenuates and delays.
Test the result
The unfiltered constant samples are also compatible with a purely constant analog input; no post-sampling algorithm can distinguish those two specified sources from these samples alone. The ideal analog filter prevents this cancellation rather than recovering information afterward.
Common mistakes
Unstated startup history
Zero padding changes initial outputs when the model specifies an ongoing signal.
Smoothing preserves the wanted waveform
Amplitude and phase response must both be checked.
Digital filtering repairs every alias
Distinct analog inputs can have identical sampled sequences.
Before moving on
- Convolve with the actual input history.
- Explain amplitude and phase changes component by component.
- Demonstrate alias ambiguity and the role of pre-sampling filtering.
Sources and edition checks
Sources checked:
- Author: DSP guide and editions
The author distinguishes the selected 1997 hardcover from the later paperback and sets specific free-reading permissions.
- Wiley: third-edition Biomedical Signal Analysis
The third edition covers biosignal origins, coupled processes, artifact filtering and later detection methods.
- CRC: exact third-edition hardback
The selected third edition combines signal-processing implementation with later medical imaging; it does not supply clinical validity for this invented signal.
These are proposed study activities, not official course assignments or a claim that every book has been read cover to cover.