rank ordered mean noise blanker or sliding median noise blanker
DESCRIPTION
Rank Ordered Mean Noise Blanker or Sliding Median Noise Blanker. (or how NB2 works!) Phil Harman VK6APH. The Problem. Conventiona l (Analogue) Solutions. Noise Blanker. Noise Clipper. A DSP Solution. An image processing technique. An image processing technique. Original Image. - PowerPoint PPT PresentationTRANSCRIPT
Rank Ordered Mean Noise Blankeror
Sliding Median Noise Blanker
(or how NB2 works!)
Phil Harman VK6APH
The Problem
Conventional (Analogue) Solutions
Noise Clipper Noise Blanker
A DSP Solution
An image processing technique
An image processing technique
Original Image Image + Impulse noise
Median Filtering
Median Filtered Image Image + Impulse noise
How Median Filtering works
7 17 18
15 200 9
12 11 14
How Median Filtering works
• Record the values nearby7, 9, 11, 12, 14, 15, 17, 18, 200
• Sort (Rank) the values 7, 9, 11, 12, 14, 15, 17, 18, 200
• The median is the middle of a distribution: half the scores are above the median and half below*. 7, 9, 11, 12, 14, 15, 17, 18, 200
• The median is much less sensitive to extreme values and makes it a better measure than the mean for highly skewed distributions e.g. the mean is 34
* For an even number of values use the average of centre values
Median Filtering Example
Median Filtering Example
Median Noise Blanker
0
20
40
60
80
100
120
140
160
Sample
Val
ue Value
Value 0 17 34 50 64 150 87 94 98 100
1 2 3 4 5 6 7 8 9 10
Median Filtering Example
Median Noise Blanker
0
20
40
60
80
100
120
140
160
Sample
Val
ue Value
MNB
Value 0 17 34 50 64 150 87 94 98 100
MNB 0 17 34 50 64 76 87 94 98 100
1 2 3 4 5 6 7 8 9 10
Median Filtering Example - recap
• Look for samples that are outside the norm• Sort (Rank) the samples either side in Order• Calculate the median value • Replace the suspect sample with the median• Slide along to the next suspect sample and repeat• Issues:
– Processor intensive– Distortion if applied too aggressively– Only effective on impulse noise– Simpler technique gives equally good results.
Median Filtering Example
• Q. How do we detect suspect samples?• A. Keep an average of all samples and look for samples
that are greater than the average by some amount e.g. average = 0.999last_sample + 0.001current_sample• Code: If sample > (threshold x average)
apply median filter
Pseudo Code
for i < buffer_sizemag = mag(signal,i)
“median” = 0.75median + 0.25(signal,i) average = 0.999average + 0.001mag if mag > (threshold x average)
(signal,i) = mediannext i
SDR1000 Code
voidSDROMnoiseblanker(NB nb) { int i; for (i = 0; i < CXBsize(nb->sigbuf); i++) { REAL cmag = Cmag(CXBdata(nb->sigbuf, i)); nb->average_sig = Cadd(Cscl(nb->average_sig, 0.75),
Cscl(CXBdata(nb->sigbuf, i), 0.25)); nb->average_mag = 0.999 * (nb->average_mag) + 0.001 * cmag; if (cmag > (nb->threshold * nb->average_mag)) CXBdata(nb->sigbuf, i) = nb->average_sig; }}
Future Techniques
• Noise “Subtraction” (N4HY)– Detect the pulse– Determine what the receiver has done to it– Create a model of the pulse – Subtract the model from the signal– Completely linear process– If you get it wrong it will add a noise pulse!
Questions?
Rank Order Mean (ROM) Noise BankerSliding ROM Noise BlankerMedian Impulse Reduction