US5097433A - Stack filter with one stage per bit - Google Patents
Stack filter with one stage per bit Download PDFInfo
- Publication number
- US5097433A US5097433A US07/551,112 US55111290A US5097433A US 5097433 A US5097433 A US 5097433A US 55111290 A US55111290 A US 55111290A US 5097433 A US5097433 A US 5097433A
- Authority
- US
- United States
- Prior art keywords
- output port
- output
- input
- port
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03H—IMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
- H03H17/00—Networks using digital techniques
- H03H17/02—Frequency selective networks
- H03H17/0248—Filters characterised by a particular frequency response or filtering method
- H03H17/0261—Non linear filters
- H03H17/0263—Rank order filters
Definitions
- This invention relates to stack filters for nonlinear filtration of digital signals by threshold decomposition and stacking.
- Stack filters are used for the suppression of non-gaussian, non-additive noise. Such filters are used, for example, for the filtration of signals representative of images. Stack filters may be effectively implemented in very large scaled integrated circuits (VLSI), especially for implementation of the median average (that value for which equal numbers of samples have greater and lesser values) and for other general rank-order or order statistic operators. Salient characteristics of stack filters include capability for suppression of non-gaussian, non-additive or correlated noise, which are not amenable to filtering by linear filters. Also, stack filters are capable of suppressing impulse noise of both polarities or of a selected polarity, without the smearing of sharp edges of the desired signal as occurs in a linear filter.
- the stack filter architecture includes a threshold decomposition portion, the actual filter portion, and an output reconstruction portion.
- an N-bit binary number can be represented by its 2 N threshold value (for example an eight-bit binary number has 256 threshold values).
- each binary number may be imagined as forming a bar graph, with the height of the bar being a representation of the value of the binary number.
- a set or a sequence of such numbers may be considered to be equivalent to a set or a sequence of vertical bars, the lengths of which depend upon the values of the various binary numbers of the set or sequence.
- a set of such words, or a sequence corresponding to a set defines a "window".
- Stack filters such as that described by Wendt includes a plurality of threshold decomposition arrangements for producing windows of data representing the various thresholds.
- a two-bit digital word is capable of representing four values, namely 0, 1, 2 and 3.
- Each word of a stream of such words may therefore take on one of three non-zero values, namely 1, 2 or 3.
- Threshold decomposition of a stream of two-bit words involves setting a threshold of 1, 2 and 3 to produce three separate streams of one-bit digital words, indicating whether the corresponding word of the two-bit stream has a value which exceeds 1, 2 and 3, respectively.
- a two-bit signal requires three thresholds. If the stream of digital words had three bits instead of two, it would be capable of representing seven non-zero values, and as a consequence, seven threshold circuits would be required.
- N represents the number of bits in the words.
- a six-bit programmable rank-order stack filter is described in R. G. Harber, S. C. Bass, and G. L. Neudeck, "VLSI implementation of a fast rank-order algorithm", in Proceedings of the ICASSP 1985, Tampa, Fla., March 1985, pp 1396-1399.
- the Harber et al. stack filter uses analog and threshold logic circuit techniques to effect a single chip implementation, and requires 63 binary filter stages, together with circuits for decomposing and reconstructing 63 threshold levels.
- a set or a stream of N-bit digital words is filtered by a stack filter which includes N filter stages.
- Each of the filter stages of the stack includes first, second and third input ports and first, second and third output ports.
- At least one stage includes a data modifier with an output port and which also includes first, second and third data input ports.
- the first data input port of the data modifier has a number of bits equal to the number of words in the window or set of words being filtered, and is coupled to the first input port of the filter stage for receiving a bit of a particular significance from each word of the set of words being filtered.
- Each of the second and third data input ports of the data modifier has a number of bits equal to the number of words in the set of words being filtered, and is coupled to the second and third input ports of the filter stage for receiving output signals from the second and third output ports, respectively, of a filter stage of the stack filter which has the next higher significance.
- the data modifier individually and independently translates each of the bits of particular significance from its first data input port to the output port of the data modifier, in a form which is either modified or unmodified, as determined by corresponding bits of the output signals from the third output port of the filter stage of next higher significance.
- the data modifier therefore produces data at its output port which may be termed "modified data".
- Each filter stage also includes a combinatorial logic arrangement which includes an input port having a number of bits corresponding to a number of words in the set, and which also includes an output port which constitutes the first output port of the filter stage.
- the input port of the combinatorial logic arrangement is coupled to the data modifier for receiving modified data therefrom.
- the combinatorial logic arrangement responds to particular values of the modified data and not to other values, and generates an output signal at the first output port of the filter stage.
- a residue signal generator has first, second and third input ports, the first input port of which is coupled to the output port of the data modifier for receiving modified signals therefrom.
- the second input port of the residue signal generator is coupled to the third input port of the filter stage for receiving residue signal from the third output port of the filter stage of next higher significance.
- the third input port of the residue signal generator is coupled to the output port of the combinatorial logic arrangement.
- the residue signal generator compares the output of the combinatorial logic arrangement with each individual bit of the modified data, and for each such comparison produces a comparison signal representative of equality or inequality.
- the comparison signals are combined with the bits of the residue signal from the third output port of the filter stage of next higher significance to produce the residue signal of the filter stage for application to the third output port of the filter stage.
- the data modifier is an array of multiplexers which independently selects the bits of the modified data from the data input or from the signal from the second output port of the filter stage of next higher significance, under the control of the state of the corresponding bit of the signal from the third output port of the filter stage of next higher significance.
- the combinatorial logic arrangement may include an array of AND gates, the inputs of which are connected in various permutations to the output of the data modifier, and the outputs of which are coupled to inputs of an OR gate.
- the residue signal generator may include an array of EXOR gates, one input of each of which is coupled to the output of the OR gate of the combinatorial logic arrangement, and another input of which is coupled to receive a bit of the modified data from the data modifier.
- the residue signal generator also may include an array of OR gates, each of which has a first input coupled to the output of a corresponding EXOR gate, and a second input coupled to receive a bit of the residue signal from a filter stage of next higher significance. The stage of greatest significance receives no inputs at its second and third input ports. The residue signal and the modified data produced by the filter stage of least significance are not used by further filter stages.
- FIG. 1 illustrates in simplified block diagram form a stack filter according to the invention for filtering a stream of N-bit words
- FIG. 2 is a simplified block diagram of a typical stage of the stack filter of FIG. 1;
- FIG. 3 is a more detailed diagram in block and schematic form of the arrangement of FIG. 2;
- FIG. 4 is a more detailed diagram in schematic form of a combinatorial logic arrangement which may be used as a binary filter in the arrangement of FIG. 3 for median filtering;
- FIGS. 5a, 5b represent, respectively the values of a fine resolution component and a coarse resolution component of,, a set of words representing words having the values of FIG. 5c;
- FIG. 6a represents the values of a coarse resolution component and its error range for the words of FIG. 6b.
- FIG. 1 is a simplified block diagram of a stack filter 10 in accordance with the invention.
- a stream of N-bit signals is applied by way of an input port 12 to a junction point 13.
- the bits are separated in order of significance and proceed, with the most significant bits (MSB) flowing along a one-bit data path 16 to a most significant stage 24, the next most significant bit proceeding along a one-bit data path 18 to the next most significant stage 26, a bit of lesser significance proceeding along a one-bit data path 20 to a stage 28, and with the least significant bit proceeding along a one-bit data path 22 to the least significant filter stage 30.
- MSB most significant bits
- filter stages 24, 26, 28 and 30, and additional stages filter the bit of particular significance which they receive and produce outputs.
- An output of most significant stage 24 proceeds by way of a one-bit data path 32 to a junction point 35, the next most significant output bit is coupled from stage 26 along one-bit data path 34, and the one-bit output of stage 28 is coupled along data path 36 to junction point 35.
- Other stages, not illustrated, produce one-bit outputs which are coupled by data bits (not illustrated) to the junction point 35.
- Least significant stage 30 couples the least significant bit of the output by way of a data path 38 to junction point 35. At junction point 35, the data streams are combined into an N-bit stream for application to an output port 14.
- all filter stages of filter 10 except the most significant stage 24 and the least significant stage 30, receives inputs from an output of the stage of next higher significance, and couples outputs to the stage of next lower significance.
- stage 26 of FIG. 1 receives output signals from stage 24 by way of a data path 40, and produces output signals which are coupled along a data path 42 to stage 28 of lower significance.
- the inputs to most significant filter stage 24 on data path 50 are left "unconnected” or tied to logic zero.
- the output from least significant stage 30 on data path 40 is left unconnected or not used.
- FIG. 2 illustrates details of filter stage 26 of FIG. 1. Elements of FIG. 2 corresponding to those of FIG. 1 are designated by the same reference numerals.
- the one-bit stream of digital words is coupled over data path 18 to a window storage arrangement illustrated as a block 210.
- Window storage block 210 may be considered to be a delay line capable of storing a particular number of input words. It should be remembered that the words are only one bit wide at this point.
- a plurality of taps 212 sample all of the words from window storage block 210.
- the number of words simultaneously available is designated W, and constitutes the set upon which the filter operates.
- the combination of one-bit words constituting a set is designated S bj .
- the set of words is applied over a W-bit-wide data path 214 to a data modifier 216.
- Data modifier 216 receives two W-bit-wide data streams over data paths 222 and 223 and by way of filter stage input port 40 from the output port (not illustrated) of the stage of next higher significance, corresponding to stage 24 of FIG. 1. For each bit of the W-bit signal applied over data path 214 to data modifier 216, there are two corresponding bits which are received over data paths 222 and 223. Data modifier 216 individually couples the W bits from data path 214 to data path 224 modified or unmodified depending upon the state of the corresponding bits received over data path 222 and 223. The modification of the data received by way of data path 214 may take the form of selectively coupling to data path 224 either the bit received from data path 214 or the corresponding bit received from data path 222.
- the modified data on data path 224 is designated R' bj is applied to an input port of a binary filter 226, to an input port of a residue signal generator illustrated as a block 236, and as a W-bit output of stage 26, which is a portion of data path 42.
- Output port 42 of filter stage 26 is coupled to filter stages of lesser significance in the stack filter, such as filter stage 28 of FIG. 1.
- Binary filter 226 responds to one or more predetermined configurations or patterns of the W bits received over data path 224 and produces a single output bit on output data path 34 when one of those patterns is encountered.
- Binary filter 226 includes combinatorial logic which can be expressed as a Boolean expression which contains no complements of the input variables. Such expressions may be termed "frontal functions" or "positive Boolean functions”.
- the one-bit outputs of binary filter 226 are applied to output data path 34 and represent the output of the filter stage, which is combined with the outputs of other filter stages as described in conjunction with FIG. 1.
- Residue signal generator 236 receives a one-bit signal from the output of binary filter 226 over a data path 234, and also receives the W-bit signal from expansion input data path 40 by way of data path 223, and further receive a W-bit signal from the output of data modifier 216 by way of data path 224.
- Residue generator 236 individually and independently compares each bit of the W-bit modified data received from data modifier 216 by way of data path 224 with the one-bit signal produced on data path 234 by binary filter 226. If a bit of the modified data equals the bit at the output of binary filter 226, residue signal generator 236 uses the corresponding bit received from data path 223 as its output, and if the bits being compared are unequal, the corresponding output bit is forced to a logic 1.
- Residue generator 236 produces a W-bit output signal which is applied over a W-bit data path 242 to expansion output port 42 for application to further stages of lesser significance (not illustrated in FIG. 2).
- FIG. 3 illustrates details of the arrangement of FIG. 2. Elements of FIG. 3 corresponding to those of FIG. 2 are designated by the same reference numerals.
- the one-bit input signals applied to data input port 18 are applied to a cascade of one-bit registers (R) 310a, 310b, . . . 310W of Window storage unit 210.
- R one-bit registers
- a window with a width of W and a depth of 1 bit is stored in unit 210 and is accessed by tap lines 212a, 212b . . . 212W.
- data modifier 216 includes a plurality of multiplexers (MUX) 316a, 316b, . . .
- Each multiplexer 316 includes a pair of input terminals, designated “1" and “0” which are selectively coupled to its output data path 224 by the state of the signal applied to its select (S) input terminal. As illustrated in FIG. 3, the "1" input terminal of each multiplexer is coupled to the corresponding bit of data path 222 from expansion input port 40, while the "0" input port of each multiplexer is coupled to the corresponding data tap 212. Output data paths 224a, 224b . . . 224W of multiplexers 316a, 316b, . . .
- each EXOR gate 336a, 336b . . . 336W of FIG. 3 is coupled to an input of an OR gate 338a, 338b . . . 338W, respectively, another input of which is coupled by way of one-bit data paths 223a, 223b . . . 223W to portion 340b of expansion input port 40.
- One-bit output data paths 242a, 242b . . . 242W of OR gates 338a, 338b . . . 338W are collected together to form a W-bit output portion 342b of expansion output port 42.
- each multiplexer 316a, 316b . . . 316w couples its "1" or "0" input port to its output port, depending upon the state of the corresponding bit of the output signal from the output of the filter stage of next greater significance, received at the "S" input by way of a data path 223.
- the state of multiplexer 316a is controlled by the state of the signal from data path 223a, which is applied to the "S" input of multiplexer 316a and which originates from a data path which, in the next higher significance filter stage, corresponding to data path 342b of the filter stage of FIG. 3.
- multiplexer 316a When the S input of multiplexer 316a is high or logic 1, its "1" input is selected and coupled to the output, whereas if the S input is low or logic zero, the "0" input is selected.
- the output signal of multiplexer 316a is individually selected, independently of the selection performed by any other multiplexer.
- Each multiplexer 316a, 316b . . . 316W thus selects either the corresponding input data from window storage unit 210 or the corresponding bit from portion 340a of expansion input port 40.
- the data so selected is applied to binary filter 226, which responds to some data patterns and not to others, to produce a logic one or a logic zero at its one-bit output for application to filter stage output port 34.
- Each EXOR gate 336 compares the one-bit output from binary filter 226 with a bit of modified data from a multiplexer 316, and responds to an equal-input-state condition for producing a logic zero which is coupled through an associated OR gate 338 together with inputs from portion 340b of expansion input port 40, to produce an output which is coupled by way of an output data path 242 to portion 342b of expansion output port 42.
- FIG. 4 is a simplified schematic diagram of a binary median filter which may be used as binary filter 226 of FIG. 3. Elements of FIG. 4 corresponding to those of FIG. 3 are designated by the same reference numerals.
- Binary filter 226 as illustrated in FIG. 4 is configured to receive five one-bit data paths 224 whereby W, the window size, is five.
- input 224e of FIG. 4 corresponds to 224W of FIG. 3, and the other inputs in FIG. 4 are data paths 224a, 224b, 224c, 224d and 224e.
- ten AND gates 426-444 receive the input signals from data paths 224 in triplets, which triplets differ among the 10 AND gates.
- AND gate 426 is connected to receive data from data paths 224a, 224b and 224c. No other AND gate has this particular combination of inputs.
- the inputs of each AND gate are permutations of triplets of inputs 224a, 224b, 224c, 224d and 224e, and all the permutations are different from each other.
- each AND gate 426 . . . 444 responds to a different set of data and produces an output if that particular combination is found.
- the outputs of the AND gates are coupled to the input of a 10-input OR gate 450.
- OR gate 50 responds to the presence of an input from any one of AND gates 426-444 to produce an output on data path 234 for application to output port 34.
- Binary filter 226 as illustrated in FIG. 4 is for a binary median filter for a window size equivalent to five words. A logic 1 signal is generated at output 34 if at least three out of the five inputs is a logic 1, else the output is zero.
- the first or most significant stage such as stage 24 of FIG. 1, receives no inputs from its expansion input port 50.
- the last or least significant stage, such as stage 30 of FIG. 1 may produce outputs at its expansion output port 48, but the outputs are unused.
- the hierarchical threshold decomposition accomplished by stack filters according to the invention have the advantage that the hardware growth rate increases by order N as word length N increases, which is a great improvement over the 2 N of the prior art. Also, explicit threshold decomposition and reconstruction steps are subsumed within the filter stages. Further, no analog threshold circuits are required.
- FIG. 5b illustrates the values of a coarse resolution component representing the digits of greater significance (as for example the M most significant bits) of a sequence of words illustrated in FIG. 5c
- FIG. 5a illustrates a fine resolution component representing the digits of lesser significance (as for example the N least significant bits).
- the complete input sequence F(Sw) may be approximated to within a predetermined number of bits of resolution by coarse component F(Swc), because the output error is bounded by the maximum range of the fine resolution component;
- FIG. 6a illustrates as a plot 610 a coarsely quantized representation of a filter output, in which the maximum possible error from coarse quantization level 612 is represented by cross-hatched region 614.
- the magnitude of the error is established by the magnitude of the fine quantization component. In general, the maximum error will be slightly less than the magnitude of the step between coarse quantization levels.
- the error may be quantified. As mentioned, the error is bounded by 2 N -1 where N is the number of bits in the fine resolution component of the input sequence. Additional information needed to correct for error E is contained in the range of values of the words of the windowed input sequence between F(Swc) and F(SWc)+(2 N -1 ). For each new windowed sequence, F(Swc) acts as a variable or floating threshold which establishes the region to which error correction information applies.
- s 1 , s 2 , . . . s i . . . s w represent sample values within the window.
- This subtraction effectively shifts the baseline of the residues to a value of zero, with the range of residues extending from zero to 2 N -1 .
- F(Swc) may be larger or smaller than the value s i of any word of the windowed input sequence, the residues r i may take on positive, negative, or zero values when the subtraction is performed.
- s i may be large enough so that, when F(Swc) is subtracted, the residue r i may be larger than the error band (2 N -1 ). The residue may therefore lie within or without the error band.
- the error band must lie within 2 N -1 , and those residues which fall below the baseline are considered to be zero, while those exceeding the 2 N -1 error band are considered to be 2 N -1 , i.e. they are clipped.
- the clipping is accomplished by OR gates 338.
- equation (5) may be rewritten as
- sf1, sf2 . . . sfi . . . sfw represent the fine resolution component of sample values within the window
- sc1, sc2 . . . sci . . . scw represent the coarse resolution component of sample values within the window
- a window modify function wm is defined ##EQU1## where x and y are dummy variables used to define the function.
- a new variable r i is defined as
- F N (R') is performed on the N least significant bits.
- Equation 10 effectively states that a stack filtering operation to be performed on an (M+N)-bit sequence can be performed by concatenating the outputs of two separate stack filtering operations, a first M-bit filter for the most significant M bits, and second N-bit filter for a modified sequence R' derived from the last significant bits.
- the modified sequence R' which is applied to the fine or least significant filter section of a pair is a function of the residues R produced by the coarse or more significant filter section of the pair, and may be expressed as
- R'bj is the modified windowed sequence to the input of the jth binary filter
- Sbj is the windowed binary input sequence to the jth binary filter
- Rbj+1 is the sequence of residues from the more significant j+1st binary filter.
- Equation 11 implies recursion in obtaining the modified windowed input sequences for each binary filter stage, starting with the most significant stage and working toward the least significant stage.
- the recursion is manifested as a ripple delay from the most significant stage to the least significant stage.
- window storage unit 210 of FIGS. 2 and 3 may be dispensed with if the set of input data W words wide is available simultaneously on W data paths to data modifier 216.
Landscapes
- Physics & Mathematics (AREA)
- Nonlinear Science (AREA)
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Image Processing (AREA)
- Complex Calculations (AREA)
Abstract
Description
F(Sw)=F(Swc+Swf) (1)
error: E<2.sup.N (2)
0≦E≦2.sup.N -1 (3)
F(Sw)=F(Swc+Swf)=F(Swc)+E (4)
r.sub.1 =s.sub.1 -F(Swc)
r.sub.2 =s.sub.2 -F(Swc)
r.sub.i =s.sub.i -F(Swc)
r.sub.w =s.sub.w -F(Swc)
r.sub.1 =sf1+(sc1-Fc)=sf1+rc1
r.sub.2 =sf2+(sc2-Fc)=sf2+rc2
r.sub.i =sfi+(sci-Fc)=sfi+rci (6)
rw=sfw+(scw-Fc)=sfw+rcw
ri=Wm (sfi, rci) (8)
F(Sw)=F(Swc+Swf)=F(Swc)+F.sub.N (R') (9)
F(Sw)=F(Swc+Swf)=F.sub.m (Swc)concat F.sub.N (R.sup.1) (10)
R'bj=Wm(Sbj, Rbj+1) (11)
Claims (6)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/551,112 US5097433A (en) | 1990-07-11 | 1990-07-11 | Stack filter with one stage per bit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/551,112 US5097433A (en) | 1990-07-11 | 1990-07-11 | Stack filter with one stage per bit |
Publications (1)
Publication Number | Publication Date |
---|---|
US5097433A true US5097433A (en) | 1992-03-17 |
Family
ID=24199914
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US07/551,112 Expired - Fee Related US5097433A (en) | 1990-07-11 | 1990-07-11 | Stack filter with one stage per bit |
Country Status (1)
Country | Link |
---|---|
US (1) | US5097433A (en) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1994016499A2 (en) * | 1993-01-16 | 1994-07-21 | Bangham James A | Signal processing system |
US5379242A (en) * | 1993-09-01 | 1995-01-03 | National Semiconductor Corporation | ROM filter |
US5729755A (en) * | 1991-09-04 | 1998-03-17 | Nec Corporation | Process for transmitting data in a data processing system with distributed computer nodes, communicating via a serial data bus, between which data messages are exchanged, tested for acceptance in a computer node, and stored temporarily |
US5862064A (en) * | 1996-07-08 | 1999-01-19 | Medison Co., Ltd. | Median filter apparatus and method therefor |
EP0898769A1 (en) * | 1996-04-22 | 1999-03-03 | Sensormatic Electronics Corporation | Electronic article surveillance system with comb filtering by polyphase decomposition and nonlinear filtering of subsequences |
US5912826A (en) * | 1994-12-24 | 1999-06-15 | Cambridge Consultants Limited | Data processing method and apparatus |
US20030200242A1 (en) * | 2002-04-23 | 2003-10-23 | Jensen Steven L. | Implantable medical device fast median filter |
US20030202692A1 (en) * | 2002-04-29 | 2003-10-30 | Pere Obrador | Method and system for processing images using histograms |
US6898461B2 (en) | 2002-04-23 | 2005-05-24 | Medtronic, Inc. | Implantable medical device stream processor |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4589019A (en) * | 1983-04-22 | 1986-05-13 | Rca Corporation | Digital adder including counter coupled to individual bits of the input |
US4672567A (en) * | 1985-02-19 | 1987-06-09 | Allied Corporation | Median filter for reducing data error in distance measuring equipment |
US4868773A (en) * | 1985-03-15 | 1989-09-19 | Purdue Research Foundation | Digital filtering by threshold decomposition |
-
1990
- 1990-07-11 US US07/551,112 patent/US5097433A/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4589019A (en) * | 1983-04-22 | 1986-05-13 | Rca Corporation | Digital adder including counter coupled to individual bits of the input |
US4672567A (en) * | 1985-02-19 | 1987-06-09 | Allied Corporation | Median filter for reducing data error in distance measuring equipment |
US4868773A (en) * | 1985-03-15 | 1989-09-19 | Purdue Research Foundation | Digital filtering by threshold decomposition |
Non-Patent Citations (4)
Title |
---|
"Stack Filters", by Wendt et al., published in the IEEE Transactions on Acoustics, Speech and Signal Processing, vol. ASSP-34, No. 4, Aug. 1986. |
"VLSI Implementation of a Fast Rank Order Filtering Algorithm", by Harber et al., published 1985 by the IEEE (CH 2118-8/85/0000-1396). |
Stack Filters , by Wendt et al., published in the IEEE Transactions on Acoustics, Speech and Signal Processing, vol. ASSP 34, No. 4, Aug. 1986. * |
VLSI Implementation of a Fast Rank Order Filtering Algorithm , by Harber et al., published 1985 by the IEEE (CH 2118 8/85/0000 1396). * |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5729755A (en) * | 1991-09-04 | 1998-03-17 | Nec Corporation | Process for transmitting data in a data processing system with distributed computer nodes, communicating via a serial data bus, between which data messages are exchanged, tested for acceptance in a computer node, and stored temporarily |
WO1994016499A2 (en) * | 1993-01-16 | 1994-07-21 | Bangham James A | Signal processing system |
WO1994016499A3 (en) * | 1993-01-16 | 1994-09-01 | James Andrew Bangham | Signal processing system |
GB2290668A (en) * | 1993-01-16 | 1996-01-03 | James Andrew Bangham | Signal processing system |
GB2290668B (en) * | 1993-01-16 | 1997-07-23 | James Andrew Bangham | Signal processing system |
US5917733A (en) * | 1993-01-16 | 1999-06-29 | Cambridge Consultants Limited | Pulse analysis using ordinal value filtering |
US5379242A (en) * | 1993-09-01 | 1995-01-03 | National Semiconductor Corporation | ROM filter |
US5912826A (en) * | 1994-12-24 | 1999-06-15 | Cambridge Consultants Limited | Data processing method and apparatus |
EP0898769A1 (en) * | 1996-04-22 | 1999-03-03 | Sensormatic Electronics Corporation | Electronic article surveillance system with comb filtering by polyphase decomposition and nonlinear filtering of subsequences |
EP0898769A4 (en) * | 1996-04-22 | 2001-01-24 | Sensormatic Electronics Corp | Electronic article surveillance system with comb filtering by polyphase decomposition and nonlinear filtering of subsequences |
US5862064A (en) * | 1996-07-08 | 1999-01-19 | Medison Co., Ltd. | Median filter apparatus and method therefor |
US20030200242A1 (en) * | 2002-04-23 | 2003-10-23 | Jensen Steven L. | Implantable medical device fast median filter |
WO2003090847A2 (en) * | 2002-04-23 | 2003-11-06 | Medtronic, Inc. | Implantable medical device fast median filter |
WO2003090847A3 (en) * | 2002-04-23 | 2004-07-22 | Medtronic Inc | Implantable medical device fast median filter |
US6898461B2 (en) | 2002-04-23 | 2005-05-24 | Medtronic, Inc. | Implantable medical device stream processor |
US6941332B2 (en) | 2002-04-23 | 2005-09-06 | Medtronic, Inc. | Implantable medical device fast median filter |
US20030202692A1 (en) * | 2002-04-29 | 2003-10-30 | Pere Obrador | Method and system for processing images using histograms |
US7058220B2 (en) * | 2002-04-29 | 2006-06-06 | Hewlett-Packard Development Company, L.P. | Method and system for processing images using histograms |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4982354A (en) | Digital finite impulse response filter and method | |
US5097433A (en) | Stack filter with one stage per bit | |
JPS61224573A (en) | Scaling circuit | |
US4751663A (en) | IIR digital filter | |
KR100498457B1 (en) | The improved method of compressing look up table for reducing memory and non-linear function generating apparatus having look up table compressed using the method and the non-linear function generating method | |
EP0756386B1 (en) | Method and apparatus for coding a digital, acoustic signal | |
US4580128A (en) | Digital signal processing device | |
US5729483A (en) | Implementation of a digital interpolation filter and method | |
EP0766386A2 (en) | Apparatus for reducing quantization distortion | |
US9337805B2 (en) | Efficient digital microphone decimation filter architecture | |
US5216629A (en) | Adjusting filter coefficients | |
US6501406B1 (en) | Digital filter | |
Haavisto et al. | Median based idempotent filters | |
US6151613A (en) | Digital filter and method for a MASH delta-sigma modulator | |
EP0552020B1 (en) | Subsampling filter comprising two filters in succession | |
US4642689A (en) | Increasing the resolution of a digitized, time-dependent signal | |
US5233549A (en) | Reduced quantization error FIR filter | |
JPH06350398A (en) | Method for filtering digital signal and digital filter thereof | |
US4933978A (en) | Method and apparatus for determining the value of a sample in the mth position of an ordered list of a plurality of samples | |
US5561616A (en) | Fir filter based upon squaring | |
US5479454A (en) | Digital filter with improved numerical precision | |
US4831576A (en) | Multiplier circuit | |
US5130942A (en) | Digital filter with front stage division | |
Henning et al. | A low power reconfigurable 12-tap FIR interpolation filter with fixed coefficient sets | |
EP0322060A2 (en) | Adjusting filter coefficients |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: GENERAL ELECTRIC COMPANY Free format text: ASSIGNMENT OF ASSIGNORS INTEREST.;ASSIGNOR:CARACCIOLO, GERALD T.;REEL/FRAME:005378/0330 Effective date: 19900703 |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
AS | Assignment |
Owner name: MARTIN MARIETTA CORPORATION, MARYLAND Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:GENERAL ELECTRIC COMPANY;REEL/FRAME:007046/0736 Effective date: 19940322 |
|
REMI | Maintenance fee reminder mailed | ||
LAPS | Lapse for failure to pay maintenance fees | ||
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 19960320 |
|
AS | Assignment |
Owner name: LOCKHEED MARTIN CORPORATION, MARYLAND Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MARTIN MARIETTA CORPORATION;REEL/FRAME:008628/0518 Effective date: 19960128 |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
FEPP | Fee payment procedure |
Free format text: PAYER NUMBER DE-ASSIGNED (ORIGINAL EVENT CODE: RMPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |