[go: up one dir, main page]

JP3049962B2 - Stack filter - Google Patents

Stack filter

Info

Publication number
JP3049962B2
JP3049962B2 JP4234412A JP23441292A JP3049962B2 JP 3049962 B2 JP3049962 B2 JP 3049962B2 JP 4234412 A JP4234412 A JP 4234412A JP 23441292 A JP23441292 A JP 23441292A JP 3049962 B2 JP3049962 B2 JP 3049962B2
Authority
JP
Japan
Prior art keywords
output
filter
outputs
data
vector
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
Application number
JP4234412A
Other languages
Japanese (ja)
Other versions
JPH0685608A (en
Inventor
岳史 浜崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP4234412A priority Critical patent/JP3049962B2/en
Publication of JPH0685608A publication Critical patent/JPH0685608A/en
Application granted granted Critical
Publication of JP3049962B2 publication Critical patent/JP3049962B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Picture Signal Circuits (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、テレビジョンまたはV
TRまたはビデオカメラなどの映像機器において、ノイ
ズ低減の目的で用いられる非線形フィルタ、特にスタッ
クフィルタに関するものである。
BACKGROUND OF THE INVENTION The present invention relates to a television or V
The present invention relates to a non-linear filter, particularly a stack filter, used for noise reduction in a video device such as a TR or a video camera.

【0002】[0002]

【従来の技術】近年、メディアンフィルタに代表される
ような、非線形ディジタルフィルタの新しい処理形態で
ある、スタックフィルタ(Stack Filter)が提案されて
きている(例えばIEEE Trans.Acoust., Speech, Signal
Process. ASSP-34, 898-911,1986)。
2. Description of the Related Art In recent years, a stack filter, which is a new processing form of a nonlinear digital filter represented by a median filter, has been proposed (for example, IEEE Trans. Acoust., Speech, Signal).
Process. ASSP-34, 898-911, 1986).

【0003】以下、スタックフィルタの処理について簡
単に述べる。ここでは例として、窓幅(処理対象となる
データ数)が3のスタックフィルタでメディアンフィル
タの特性を実現する場合の処理について説明する。図5
はスタックフィルタの原理的構成を示すブロック図であ
る。また、処理の概要を図6および図7に示す。
[0003] The processing of the stack filter will be briefly described below. Here, as an example, a description will be given of a process in which a stack filter having a window width (the number of data to be processed) of 3 realizes the characteristics of a median filter. FIG.
FIG. 3 is a block diagram showing a basic configuration of a stack filter. 6 and 7 show an outline of the processing.

【0004】まず、図6および図7を用いてスタックフ
ィルタの処理の概要を先に説明する。同図において、従
来のメディアンフィルタによる処理を、図中の太い矢印
の経路に沿って示す。
First, the outline of the processing of the stack filter will be described first with reference to FIGS. In the figure, the processing by the conventional median filter is shown along the path of the thick arrow in the figure.

【0005】従来処理では、図6左上部に入力として示
されているデータ列(ここでは2ビットのデータ)が、
最上部に示されるメディアンフィルタを通り、右上部に
出力として示されているデータ列となる。このフィルタ
の窓幅は3なので、3つの入力データに対して2番目に
大きい値を出力するものである。
In the conventional processing, a data string (here, 2-bit data) shown as an input at the upper left of FIG.
The data string passes through the median filter shown at the top and becomes a data string shown as an output at the top right. Since the window width of this filter is 3, the filter outputs the second largest value for three input data.

【0006】この処理をスタックフィルタで行う場合に
は、図中の細い矢印の経路に沿った処理がなされる。
When this processing is performed by a stack filter, the processing is performed along a path indicated by a thin arrow in the figure.

【0007】まず、入力データ列は2ビットなので、デ
ータのとり得る値は4レベルになる。このうち、0を除
く各レベルにおいて入力データ値を観測し、観測レベル
をスレッショルドとして1ビットのデータ列をつくる。
0を除く理由は、この処理をレベル0において行って
も、結果として得られるデータ列は全てが「1」とな
り、何の情報も持たないためである。
First, since the input data string is 2 bits, the possible values of the data are four levels. Of these, the input data value is observed at each level except 0, and a 1-bit data string is created using the observation level as a threshold.
The reason for excluding 0 is that even if this processing is performed at level 0, the resulting data string is all "1" and has no information.

【0008】これを図7を用いて説明する。図のように
1,3,2の値を持つデータが入力されてきたとき、まず
1のレベルをスレッショルドとして入力データの値がス
レッショルド以上であれば「1」、スレッショルド未満
であれば「0」とする処理によりデータ列(1,1,1)
を得る。同様に、2のレベルをスレッショルドとしてデ
ータ列(0,1,1)を得、3のレベルをスレッショルド
としてデータ列(0,1,0)を得る。以下、この処理を
分解処理と呼ぶ。
This will be described with reference to FIG. As shown in the figure, when data having values of 1, 3, and 2 is input, first, the level of 1 is set as a threshold, and if the value of the input data is equal to or greater than the threshold, it is "1"; Data sequence (1,1,1)
Get. Similarly, a data string (0,1,1) is obtained using the level 2 as a threshold, and a data string (0,1,0) is obtained using the level 3 as a threshold. Hereinafter, this processing is referred to as decomposition processing.

【0009】上述のように各レベル上で1ビットに分解
された3種類のデータ列を、図6のようにブール代数で
表されるバイナリフィルタにそれぞれ通し、1ビットの
出力データ列を得る。ここでは、メディアンフィルタを
構成するので、バイナリフィルタの伝達関数は、入力さ
れる3データを時間的に古い方から順にそれぞれx1,x
2,x3として、
As described above, the three types of data strings decomposed into 1 bit on each level are respectively passed through binary filters represented by Boolean algebra as shown in FIG. 6 to obtain 1-bit output data strings. Here, since a median filter is configured, the transfer function of the binary filter is such that the three input data are x 1 , x 1
2 , x 3

【0010】[0010]

【数1】 (Equation 1)

【0011】とする。上式において、「・」は論理積、
「+」は論理和を表す。スタックフィルタでは、このよ
うにフィルタの伝達関数が簡素になる。
It is assumed that In the above formula, “•” is a logical product,
“+” Represents a logical sum. In a stack filter, the transfer function of the filter is thus simplified.

【0012】従来のメディアンフィルタでは、データを
大きい順に並べ替えるソーティング処理が必要であった
ため、回路が複雑にならざるを得なかったが、スタック
フィルタの処理を行えば伝達関数のハードウェアでの実
現が容易になる。
In the conventional median filter, a sorting process for rearranging data in a large order was necessary, so that the circuit had to be complicated. However, if a stack filter process is performed, a transfer function can be realized by hardware. Becomes easier.

【0013】最後に、各バイナリフィルタの出力を全て
加算することにより2ビットの出力データ列を得る。以
下、この処理を合成処理と呼ぶ。結果は、図中の太い矢
印に沿った経路の結果に等しい。
Finally, a 2-bit output data string is obtained by adding all the outputs of the respective binary filters. Hereinafter, this process is referred to as a combining process. The result is equal to the result of the path along the thick arrow in the figure.

【0014】以上がスタックフィルタでの処理方式であ
るが、この処理を行うためにはバイナリフィルタの伝達
関数がある条件を満足している必要がある。次にこの点
について述べる。
The processing method using the stack filter has been described above. To perform this processing, the transfer function of the binary filter needs to satisfy certain conditions. Next, this point will be described.

【0015】図6のように、スタックフィルタにおける
分解処理によって、入力データは複数の1ビットデータ
列に分けられるが、この分解結果の同時刻のデータどう
し(図では縦方向)に注目すると、棒グラフのように
「1」の列の上に「0」の列が存在するという性質を見
い出すことができる。たとえば、入力データ値が2のと
き、分解結果はレベル2まで「1」がならんでおり、レ
ベル3で「0」になっている。
As shown in FIG. 6, the input data is divided into a plurality of 1-bit data strings by the decomposition process in the stack filter. It can be found that there is a row of “0” above a row of “1” as shown in FIG. For example, when the input data value is 2, the decomposition result is "1" up to level 2 and "0" at level 3.

【0016】これは当然の結果であるが、注意しなけれ
ばならないことは、この性質は、バイナリフィルタの出
力においても保たれていなければならないということで
ある。
This is a natural consequence, but it must be noted that this property must also be maintained at the output of the binary filter.

【0017】説明を簡単にするため、これを数式で表現
する。入力データ列z1,z2,・・・,z nに対して異なる2
つのレベルL1およびL2上で分解した結果を、
For simplicity of description, this is represented by a mathematical expression.
I do. Input data string z1, zTwo, ..., z n2 different for
Two levels L1And LTwoThe result of the decomposition above

【0018】[0018]

【数2】 (Equation 2)

【0019】および、And

【0020】[0020]

【数3】 (Equation 3)

【0021】とする。いま、1≦k≦nであるすべての
kについて、
It is assumed that Now, for all k where 1 ≦ k ≦ n,

【0022】[0022]

【数4】 (Equation 4)

【0023】が成立するとき、これをWhen the following holds,

【0024】[0024]

【数5】 (Equation 5)

【0025】と表すことにする。これを用いると、上で
述べた性質は、
Will be described. Using this, the property described above becomes

【0026】[0026]

【数6】 (Equation 6)

【0027】と表現することができる。ここで、バイナ
リフィルタの伝達関数をS(・)とし、その出力をS(x)
よびS (y)で表すと、S(x)およびS(y)の間で成立しな
ければならない性質は、
Can be expressed as Where the binner
Let the refilter transfer function be S(・)And the output is S(x)You
And S (y)In the expression, S(x)And S(y)Do not hold between
The property that must be

【0028】[0028]

【数7】 (Equation 7)

【0029】であるから、(数6)および(数7)よ
り、次の条件が導かれる。
Therefore, the following condition is derived from (Equation 6) and (Equation 7).

【0030】[0030]

【数8】 (Equation 8)

【0031】結局、バイナリフィルタの伝達関数S(・)
に必要な条件は、(数8)を満足するものであればよい
ということになる。このような性質をもつ伝達関数は、
どの積項にも否定が含まれていないものであることが知
られている。
After all, the transfer function S (·) of the binary filter
Is required to satisfy the condition (8). The transfer function having such properties is
It is known that none of the product terms contain negation.

【0032】以上の処理を忠実に行うならば、図5に示
すようなハードウェア構成が必要になる。
If the above processing is performed faithfully, a hardware configuration as shown in FIG. 5 is required.

【0033】図5は、入力データが8ビットデータであ
る場合の構成を示すブロック図である。
FIG. 5 is a block diagram showing a configuration when input data is 8-bit data.

【0034】直並列変換手段1は、入力端子8から入力
される3個のデータを同時化する。ベクトル生成手段4
-1〜4-255は、直並列変換手段1の出力をそれぞれ1か
ら255までの各レベルにおいて分解処理を行い、長さ3
の1ビットデータ列を生成する。これは、2値の要素を
持つ3次元ベクトルと見なすことができる。
The serial-parallel conversion means 1 synchronizes three data input from the input terminal 8. Vector generation means 4
-1 to 4-255 decompose the output of the serial-parallel conversion means 1 at each level from 1 to 255,
Is generated. This can be regarded as a three-dimensional vector having binary elements.

【0035】バイナリフィルタ5-1〜5-255は、それぞ
れベクトル生成手段4-1〜4-255の出力ベクトルに対
し、例えば(数1)に示されるような演算を施す。
The binary filters 5-1 to 5-255 perform, for example, an operation as shown in (Equation 1) on the output vectors of the vector generating means 4-1 to 4-255.

【0036】加算器19は全てのバイナリフィルタの出
力値に対して合成処理を行い、出力を得るものである。
The adder 19 performs a synthesizing process on the output values of all the binary filters to obtain an output.

【0037】[0037]

【発明が解決しようとする課題】しかしながら、上記の
方式では、前述の分解および合成処理は、入力データが
2〜3ビットであればあまり問題はないが、図5の場合
のように8ビットのデータに対しては、255個のベクト
ル生成手段ならびにバイナリフィルタが必要になり、非
現実的である。
However, in the above-described method, the above-described decomposition and combination processing does not cause much problem if the input data is 2 to 3 bits. However, as shown in FIG. For data, 255 vector generation means and binary filters are required, which is impractical.

【0038】本発明は上記従来の課題を解決するもの
で、実用的な分解・合成処理を行うスタックフィルタを
提供することを目的とする。
An object of the present invention is to solve the above-mentioned conventional problems, and an object of the present invention is to provide a stack filter for performing practical decomposition / synthesis processing.

【0039】[0039]

【課題を解決するための手段】この目的を達成するため
に本発明のスタックフィルタは、入力信号から、n個
(n≧3)の直列データを並列データに変換する直並列
変換手段と、前記直並列変換手段のn個の出力のうち、
相異なる2個を取り出して大小比較し、比較信号を発生
するn2個の大小比較器と、前記 n 2 個の大小比較器の
各出力のうち、相異なる(n−1)個の出力を選択し、
n個の2値成分で構成されるベクトルをそれぞれ生成す
n個のベクトル生成手段と、前記n個のベクトル生成
手段から出力される各ベクトルのn個の成分に対し、1
ビットの論理積和演算処理をそれぞれ行うn個のフィル
タ手段と、前記n個のフィルタ手段出力が所定の値にな
る条件のもとで、前記n個のベクトル生成手段出力であ
るn個のベクトルのうち、大きさが最小のものを検出し
て検出信号を出力する最小値検出器と、前記最小値検出
器の出力に対応して前記直並列変換手段のn個の出力の
うち1個の出力を選択して出力する選択手段との構成を
有している。
In order to achieve this object, a stack filter according to the present invention comprises a serial-parallel conversion means for converting n (n ≧ 3) serial data into parallel data from an input signal; Of the n outputs of the serial-parallel conversion means,
Removed phase two different was magnitude comparison, and n C 2 pieces of magnitude comparator for generating a comparison signal, said n C 2 pieces of magnitude comparator
Select (n-1) different outputs from each output,
generate a vector composed of n binary components
That the n vectors generating means, with respect to n components of each vector outputted from the n vector generation means, 1
N filter means for performing a logical AND operation of bits, and n vectors which are the output of the n vector generation means under the condition that the outputs of the n filter means become a predetermined value. Among them, a minimum value detector that detects a minimum value and outputs a detection signal, and one of the n outputs of the serial / parallel conversion means corresponding to the output of the minimum value detector It has a configuration with selection means for selecting and outputting an output.

【0040】[0040]

【作用】本発明は上記した構成により、相異なる2個の
データ間で大小比較を行い、その結果を用いて必要最小
限の2値データ列を得、これらのデータ列をバイナリフ
ィルタを通した後、バイナリフィルタの出力値が1にな
るもののうち、0の数が最大のデータ列を発生する分解
レベルを求めて出力するものである。
According to the present invention, with the above-described configuration, the magnitude comparison is performed between two different data, and a minimum necessary binary data sequence is obtained using the result, and these data sequences are passed through a binary filter. After that, the output level of the binary filter is to be 1 and the resolution level which generates the data string having the maximum number of 0 is obtained and output.

【0041】[0041]

【実施例】以下、本発明の実施例について、図面を参照
しながら説明する。
Embodiments of the present invention will be described below with reference to the drawings.

【0042】図1は本発明の第1の実施例である窓幅が
(即ち、n=3)のスタックフィルタのブロック図を
示すものである。
FIG. 1 is a block diagram showing a stack filter having a window width of 3 (ie, n = 3) according to a first embodiment of the present invention.

【0043】まず、本発明での分解処理の考え方を先に
述べる。いま、窓幅は3であるから、入力データとして
図2のようなものを考える。データを時間的に古いほう
からx1,x2,x3とし、値はそれぞれm1,m2,m3とす
る。ただし、
First, the concept of the decomposition process in the present invention will be described first. Now, since the window width is 3, input data as shown in FIG. 2 is considered. Data and x 1, x 2, x 3 from temporally older, the value is set to m 1, m 2, m 3, respectively. However,

【0044】[0044]

【数9】 (Equation 9)

【0045】である。いま、このデータ列を任意のレベ
ルL(1≦L≦255)上で分解したとすると、得られる1
ビットのデータ列は次のようになる。
Is as follows. If this data string is decomposed on an arbitrary level L (1 ≦ L ≦ 255), the obtained 1
The bit data sequence is as follows.

【0046】[0046]

【数10】 (Equation 10)

【0047】つまり、入力データが何ビットであって
も、窓幅が3の場合は分解の結果として得られるデータ
列の種類は、せいぜい4種類である。しかも、最初のデ
ータ列(0,0,0)は前述したように合成処理の際には
不要であるから、3種類のデータ列のみについて処理を
行えばよいことになる。従って、必要なバイナリフィル
タも3つで十分である。
That is, no matter how many bits of input data are, if the window width is 3, there are at most four types of data strings obtained as a result of the decomposition. In addition, the first data string (0, 0, 0) is not required in the synthesizing process as described above, so that only the three types of data strings need to be processed. Therefore, three binary filters are sufficient.

【0048】次に、上の3種類のデータ列を得る処理に
ついて説明する。Lを1〜255まで変化させてデータ列が
変わる点を見ると、m1とm1+1の間、m2とm2+1の
間、およびm3とm3+1の間である。これは、レベルm
1,m2およびm3上での分解を行えば、必要なデータ列が
全て得られることを意味する。すなわち、入力される3
つのデータの値をそれぞれスレッショルドとしてデータ
列をつくればよいことになる。
Next, a process for obtaining the above three types of data strings will be described. Looking at the point at which changes the data string is changed from 1 to 255 L, and the between m 1 and m 1 +1, between m 2 and m 2 +1, and m is between 3 and m 3 +1. This is level m
Performing decomposition on 1 , m 2 and m 3 means that all necessary data strings can be obtained. That is, the input 3
That is, it is only necessary to create a data string using the values of two data as thresholds.

【0049】これを図1を用いて具体的に説明する。入
力端子8から入力されたデータは直並列変換器1におい
て3個の並列データx1,x2,x3となる。
This will be specifically described with reference to FIG. The data input from the input terminal 8 becomes three parallel data x 1 , x 2 , x 3 in the serial-parallel converter 1.

【0050】第1の大小比較器3aではx1とx2の大小
比較を行い、x1をスレッショルドレベルとした比較結
果(x2≧x1であれば「1」、x2<x1であれば
「0」)をa12として第1ベクトル生成手段4aに出力
すると同時に、x2をスレッショルドレベルとした比較
結果a21を、第2ベクトル生成手段4bに出力する。
The first magnitude comparator 3a compares the magnitudes of x 1 and x 2 , and compares the magnitudes of x 1 with a threshold level (“1” if x 2 ≧ x 1 and x 2 <x 1 and simultaneously outputs if "0") if the first vector generating means 4a as a 12, a comparison result a 21 in which the x 2 and threshold level, and outputs the second vector generating means 4b.

【0051】同様に、第2の大小比較器3bではx1
3の大小比較を行い、x1をスレッショルドレベルとし
た比較結果a13を第1ベクトル生成手段4aに、x3
スレッショルドレベルとした比較結果a31を第3ベクト
ル生成手段4cにそれぞれ出力する。
[0051] Similarly, the second the magnitude comparator 3b performs magnitude comparison between x 1 and x 3, the comparison result a 13 in which the x 1 and threshold level to the first vector generating means 4a, x 3 the threshold level and it outputs the comparison result a 31 which is the third vector generation means 4c and.

【0052】同様に、第3の大小比較器3cではx2
3の大小比較を行い、x2をスレッショルドレベルとし
た比較結果a23を第2のベクトル生成手段4bに、x3
をスレッショルドレベルとした比較結果a32を第3ベク
トル生成手段4cに出力する。以上のように、n=3の
場合では、 3 2 =3個の大小比較器3a,3b,3cを
設ければよい。即ち、窓幅n(n≧3)の場合に、n個
のデータから2個のデータを選んで大小比較を行うの
で、その組み合わせの分の n 2 個の大小比較器が必要に
なる。
Similarly, the third magnitude comparator 3c compares magnitudes of x 2 and x 3 , and compares the comparison result a 23 with x 2 as a threshold level to the second vector generation means 4b, and outputs x 3 to x 3.
And outputs the comparison result a 32 which are used as threshold levels to a third vector generation means 4c. As described above, n = 3
In the case, 3 C 2 = 3 magnitude comparators 3a, 3b, 3c
It may be provided. That is, when the window width is n (n ≧ 3), n
Select two data from the data and compare the size
In, the required amount of n C 2 pieces of magnitude comparator of the combination
Become.

【0053】第1のベクトル生成手段4aでは、第1お
よび第2の大小比較器3aおよび3bの出力a12,a13
より、3要素のベクトルを生成する。
The first vector generating means 4a outputs the outputs a 12 and a 13 of the first and second magnitude comparators 3a and 3b.
Thus, a three-element vector is generated.

【0054】以上の動作を、図2に示されるデータが入
力される場合に適用すると、x2およびx3はともにx1
より大きいので、a12,a13はともに「1」となる。
When the above operation is applied to the case where the data shown in FIG. 2 is input, x 2 and x 3 are both x 1
Since it is larger, a 12 and a 13 both become “1”.

【0055】いま、仮にx1とx1に対して上記の大小比
較を行ったとし、結果をa11と表わすものとすると、a
11は当然「1」であるから、生成されるベクトル
(a11,a1 2,a13)は、
Now, suppose that the above-mentioned magnitude comparison is performed for x 1 and x 1 and the result is expressed as a 11.
Since 11 is naturally "1", vector generated (a 11, a 1 2, a 13) is

【0056】[0056]

【数11】 [Equation 11]

【0057】となる。これはレベルm1上での分解結果
である。生成されたベクトルは第1のバイナリフィルタ
5aと最小値検出器6に出力される。
Is as follows. This is an exploded results on the level m 1. The generated vector is output to the first binary filter 5a and the minimum value detector 6.

【0058】同様にして、第2および第3のベクトル生
成手段4bおよび4cにおいて、それぞれレベルm2
の分解結果(a21,a22,a23)およびm3上の分解結果
(a31,a32,a33)として、
[0058] Similarly, in the second and third vector generation means 4b and 4c, respectively Level m 2 on the decomposition result (a 21, a 22, a 23) and m 3 on the decomposition result (a 31, a 32 , a 33 )

【0059】[0059]

【数12】 (Equation 12)

【0060】を得る。これらのベクトルもそれぞれ第2
および第3のバイナリフィルタ5bおよび5cに出力さ
れ、同時に最小値検出器6にも出力される。
Is obtained. These vectors are also the second
And the third binary filters 5b and 5c, and at the same time, to the minimum value detector 6.

【0061】第1〜第3のバイナリフィルタ5a〜5c
では1ビットの論理積和で表現される演算処理が施され
る。(数1)の伝達関数をもつバイナリフィルタの具体
例は図3のようになる。これをもう少し詳細に説明す
る。例えば(a11,a12,a13)を(数1)に代入する
と、前述したようにa11は「1」であるから、
First to third binary filters 5a to 5c
In, an arithmetic process represented by a 1-bit logical sum is performed. FIG. 3 shows a specific example of the binary filter having the transfer function of (Equation 1). This will be described in more detail. For example, when (a 11 , a 12 , a 13 ) is substituted into (Equation 1), as described above, a 11 is “1”.

【0062】[0062]

【数13】 (Equation 13)

【0063】となり、OR回路11−1のみで構成でき
る。同様に(a21,a22,a23)および(a31,a32,
33)に対しても、それぞれOR回路11−2および11
−3のみで構成できる。
Thus, it can be constituted only by the OR circuit 11-1. Similarly, (a 21 , a 22 , a 23 ) and (a 31 , a 32 ,
a 33 ), the OR circuits 11-2 and 11-2
It can be composed of only -3.

【0064】バイナリフィルタの伝達関数が(数1)で
示されるようなメディアンフィルタであれば、第1〜第
3のバイナリフィルタ5a〜5cの出力値S1〜S3はそ
れぞれ、
If the transfer function of the binary filter is a median filter as shown in (Equation 1), the output values S 1 to S 3 of the first to third binary filters 5a to 5c are respectively

【0065】[0065]

【数14】 [Equation 14]

【0066】となる。ここで(数10)を考慮すると、
2<L≦255およびm3<L≦m2なる任意のレベルL上
で分解したデータ列に対し、バイナリフィルタの出力値
は0となることがわかるので、分解レベルLとフィルタ
出力の間に次の式が成立する。
Is obtained. Here, considering (Equation 10),
Since it can be seen that the output value of the binary filter is 0 for a data string decomposed on an arbitrary level L satisfying m 2 <L ≦ 255 and m 3 <L ≦ m 2, a value between the decomposition level L and the filter output is obtained. The following equation holds.

【0067】[0067]

【数15】 (Equation 15)

【0068】このことは(数8)によって裏付けされて
いる。各バイナリフィルタの出力は最小値検出器6に出
力される。
This is supported by (Equation 8). The output of each binary filter is output to the minimum value detector 6.

【0069】最小値検出器6では、第1〜第3のベクト
ル生成手段4a〜4cの出力ベクトルのうち、第1〜第
3のバイナリフィルタ5a〜5cの出力値が「1」とな
るものの中で大きさが最小のものを検出し、検出信号を
選択手段7に出力する。ここでそのアルゴリズムを説明
する。オリジナルの方法では、バイナリフィルタの出力
値を全て加算して出力するわけであるから、この場合に
はレベル1からm3までのm3個の「1」の和、すなわち
3が合成結果となる。m1<m3<m2であるから、この
スタックフィルタはメディアンフィルタとして動作する
ことがわかる。
In the minimum value detector 6, among the output vectors of the first to third vector generating means 4a to 4c, the output vectors of the first to third binary filters 5a to 5c become "1". To detect the one having the smallest size, and output a detection signal to the selection means 7. Here, the algorithm will be described. In the original method, all the output values of the binary filter are added and output. In this case, the sum of m 3 “1” s from level 1 to m 3 , that is, m 3 is the sum of the synthesis result and Become. Since m 1 <m 3 <m 2 , it can be seen that this stack filter operates as a median filter.

【0070】しかし、(数15)に注目すると、合成結
果を得るためには、バイナリフィルタの出力結果が
「1」となるデータ列を与える、最大の分解レベル(い
まの場合はm3)を求めればよいことがわかる。
However, paying attention to (Equation 15), in order to obtain a synthesis result, the maximum decomposition level (m 3 in this case) that gives a data string in which the output result of the binary filter is “1” is given. It turns out that it suffices to find it.

【0071】このレベルの求め方を以下に説明する。ま
ずバイナリフィルタの出力が「1」になるデータ列を全
て求める。いまの場合は(0,1,1)および(1,1,
1)である。
How to determine this level will be described below. First, all data strings in which the output of the binary filter becomes “1” are obtained. In this case, (0,1,1) and (1,1 ,,
1).

【0072】このうち「0」の個数が最大のものを求め
れば、そのデータ列を与える分解レベルが、求めるレベ
ルになる。いまの場合、「0」の個数が最大のものは
(0,1,1)であるから、これを与える分解レベルはm
3となる。
If the largest number of "0" is obtained, the decomposition level for providing the data string becomes the required level. In this case, since the maximum number of “0” is (0, 1, 1), the decomposition level that gives this is m
It becomes 3 .

【0073】m3は入力データx3の値なので、x3その
ものを出力値とすれば合成出力を得ることができる。
Since m 3 is the value of the input data x 3 , a composite output can be obtained by using x 3 itself as the output value.

【0074】以上のアルゴリズムを整理して書き直す。
分解レベルm1,m2,m3上のデータ列をそれぞれy1,
2,y3、すなわち、
The above algorithm is arranged and rewritten.
The data strings on the decomposition levels m 1 , m 2 , and m 3 are represented by y 1 ,
y 2 , y 3 , that is,

【0075】[0075]

【数16】 (Equation 16)

【0076】と表す。また、上記y1,y2,y3に対する
バイナリフィルタの出力値をそれぞれS1,S2,S3と表
す。このとき、 (a) まずS1=1ならば、暫定出力値をx1とする。S1
=0ならばx1を出力値候補から外す。
Are represented as follows. Further, representative of the output value of the binary filter for the y 1, y 2, y 3 and S 1, S 2, S 3, respectively. At this time, (a) First, if S 1 = 1, the provisional output value is set to x 1 . S 1
= 0, then remove the x 1 from the output value candidate.

【0077】(b) 次にS2=1ならば、y1とy2を比較
し、y2の方が「0」の個数が多ければ暫定出力値をx2
とする。S2=0ならば、x2を出力値候補から外す。
(B) Next, if S 2 = 1, y 1 and y 2 are compared. If y 2 has a larger number of “0” s, the provisional output value is x 2
And If S 2 = 0, x 2 is excluded from output value candidates.

【0078】(c) さらにS3=1ならば、y1とy3ある
いはy2とy3を比較し、y3の方が「0」の個数が多け
れば暫定出力値をx3とする。S3=0ならば、x3を出
力値候補から外す。
(C) Further, if S 3 = 1, y 1 and y 3 or y 2 and y 3 are compared. If y 3 has a larger number of “0” s, the provisional output value is x 3 . . If S 3 = 0, x 3 is excluded from the output value candidates.

【0079】(d) (a)〜(c)の処理結果、最終の暫定出
力値を出力する。 以上のアルゴリズムに基づいて直並列変換器1の3出力
のうち、1つを選択手段7において選択し、出力端子9
に出力する。
(D) The final provisional output value is output as a result of the processing of (a) to (c). Based on the above algorithm, one of the three outputs of the serial-parallel converter 1 is selected by the selection means 7 and the output terminal 9
Output to

【0080】上記アルゴリズムを実現するための具体的
回路を図4に示す。第1のバイナリフィルタ5aの出力
信号S1がNAND回路12に入力され、S1=1のときは続
いてS2およびS3の値を調べ、S2=1ならばy1とy2
の比較を、さらにS3=1ならばy1とy3の比較を行
う。
FIG. 4 shows a specific circuit for realizing the above algorithm. The output signal S 1 of the first binary filter 5a is input to the NAND circuit 12, and when S 1 = 1, the values of S 2 and S 3 are checked. If S 2 = 1, y 1 and y 2
Are compared, and if S 3 = 1, y 1 and y 3 are compared.

【0081】分解処理の説明において述べたように、例
えばy1とy2の間には
As described in the description of the decomposition processing, for example, between y 1 and y 2

【0082】[0082]

【数17】 [Equation 17]

【0083】という関係が成立するので、y1よりy2
方が「0」の個数が多い場合に満たす条件は、
Since the relationship holds, the condition that is satisfied when the number of “0” s is larger in y 2 than in y 1 is as follows:

【0084】[0084]

【数18】 (Equation 18)

【0085】である。ところが、a11およびa22は常に
「1」であることを考慮すると、上式の2番目の条件は
成立しないので、
Is as follows. However, considering that a 11 and a 22 are always “1”, the second condition in the above equation does not hold, so

【0086】[0086]

【数19】 [Equation 19]

【0087】と簡略化できる。この条件はAND回路10
−1およびOR回路11−4で実現されている。従って、S
2=1で(数19)が成立すれば、AND回路10−4は
「H」を出力する。
This can be simplified as follows. This condition is the AND circuit 10
-1 and the OR circuit 11-4. Therefore, S
If (Equation 19) holds when 2 = 1, the AND circuit 10-4 outputs "H".

【0088】同様に、y1とy3の比較においては、Similarly, in comparing y 1 and y 3 ,

【0089】[0089]

【数20】 (Equation 20)

【0090】なる条件が成立すれば、y1よりy3の方が
「0」の個数が多いことになる。この条件はAND回路1
0−2およびOR回路11−5で実現されている。従って、
3=1で(数20)が成立すれば、AND回路10−5は
「H」を出力する。
[0090] if the following condition is satisfied, more than y 1 of y 3 is that the number of "0" is large. This condition is AND circuit 1
0-2 and the OR circuit 11-5. Therefore,
If (Equation 20) is satisfied with S 3 = 1, the AND circuit 10-5 outputs “H”.

【0091】S1=1でかつ、AND回路10−4および1
0−5の出力が「L」のときにNAND回路12は「L」を
出力し、選択手段7-1を「L」側に切り替え、x1を選
択して出力する。
S 1 = 1 and AND circuits 10-4 and 1
0-5 NAND circuit 12 when the output is "L" of the outputs "L", the switching selection means 7-1 to the "L" side, and selects and outputs the x 1.

【0092】S1=0のとき、またはAND回路10−4ま
たは10−5の出力が「H」のとき、NAND回路12は
「H」を出力し、選択手段7-1を「H」側に切り替え、
1を出力値候補から外す。
When S 1 = 0, or when the output of the AND circuit 10-4 or 10-5 is "H", the NAND circuit 12 outputs "H" and sets the selection means 7-1 to the "H" side. Switch to
Remove the x 1 from the output value candidate.

【0093】x1が出力値候補から外れた場合を次に述
べる。まずS2=1ならば同様にS3の値を調べ、S3
1ならばy2とy3の比較を行う。
The case where x 1 is out of the output value candidates will be described below. First, if S 2 = 1, the value of S 3 is checked in the same manner, and S 3 =
1, then performs a comparison of y 2 and y 3.

【0094】[0094]

【数21】 (Equation 21)

【0095】なる条件が成立すれば、y2よりy3の方が
「0」の個数が多いことになる。この条件はAND回路1
0−3およびOR回路11−6で実現されている。従って、
3=1で(数21)が成立すれば、AND回路10−6は
「H」を出力する。
[0095] if the following condition is satisfied, more than y 2 of y 3 is that the number of "0" is large. This condition is AND circuit 1
0-3 and the OR circuit 11-6. Therefore,
If (Equation 21) holds when S 3 = 1, the AND circuit 10-6 outputs “H”.

【0096】S2=1でかつ、AND回路10−6の出力が
「L」のとき、NAND回路13は「L」を出力し、選択手
段7-2を「L」側に切り替え、x2を選択して出力す
る。
When S 2 = 1 and the output of the AND circuit 10-6 is “L”, the NAND circuit 13 outputs “L”, switches the selection means 7-2 to the “L” side, and sets x 2 Select and output.

【0097】S2=0または、AND回路10−6の出力が
「H」のとき、NAND回路13は「H」を出力し、選択手
段7-2を「H」側に切り替え、x3を選択して出力す
る。
[0097] S 2 = 0 or, when the output of the AND circuit 10-6 is at "H", NAND circuit 13 outputs "H", the switching selection means 7-2 to the "H" side, the x 3 Select and output.

【0098】この結果、第1〜第3のベクトル生成手段
出力のうち、バイナリフィルタの出力値が「1」になる
ベクトルの中で0の数が最大のものを検出し、そのベク
トルを発生するレベルを求めることができる。
As a result, among the outputs of the first to third vector generating means, the vector having the largest number of zeros among the vectors for which the output value of the binary filter is "1" is detected, and the vector is generated. Level can be determined.

【0099】以上、実施例に示したように本発明では、
8ビットデータなどに対しても、比較的少ないハードウ
ェア量でスタックフィルタを構成することができる。
As described above, in the present invention, as shown in the embodiments,
Even for 8-bit data, a stack filter can be configured with a relatively small amount of hardware.

【0100】なお、本実施例ではメディアンフィルタを
例にとり、バイナリフィルタの伝達関数を(数1)のよ
うにしたが、別の特性を実現する際には、従来例の項で
述べたようにどの積項にも否定を含まない式であれば、
以上の議論は同様に成立するものである。
In the present embodiment, the transfer function of the binary filter is represented by (Equation 1) taking a median filter as an example. However, when realizing another characteristic, as described in the section of the conventional example, If the expression does not include a negation in any product terms,
The above argument holds similarly.

【0101】[0101]

【発明の効果】以上のように本発明は、直並列変換手段
と、n2個の大小比較器と、n個のベクトル生成手段
と、n個のフィルタ手段と、最小値検出器と、選択手段
とを備え、相異なる2個のデータ間で大小比較を行い、
その結果を用いて必要最小限の2値データ列を得、これ
らのデータ列をバイナリフィルタを通した後、バイナリ
フィルタの出力値が1になるもののうち、0の数が最大
のデータ列を発生する分解レベルを求めて出力すること
により、比較的小規模のハードウェアによるスタックフ
ィルタを実現でき、その実施効果は大きい。
The present invention as described above, according to the present invention includes a serial-parallel conversion unit, and n C 2 pieces of magnitude comparator includes n vector generation means includes n filter means, and a minimum value detector, And selecting means for performing magnitude comparison between two different data,
Using the result, a minimum required binary data string is obtained, and after passing these data strings through a binary filter, a data string having the largest number of zeros among the ones whose output value of the binary filter becomes 1 is generated. By obtaining and outputting the decomposition level to be performed, a stack filter using relatively small-scale hardware can be realized, and the implementation effect is large.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の一実施例におけるスタックフィルタの
構成を示すブロック図
FIG. 1 is a block diagram showing a configuration of a stack filter according to an embodiment of the present invention.

【図2】図1における処理を説明するための模式図FIG. 2 is a schematic diagram for explaining processing in FIG. 1;

【図3】図1におけるバイナリフィルタの一例を示す論
理回路図
FIG. 3 is a logic circuit diagram showing an example of a binary filter in FIG. 1;

【図4】合成処理回路の一例を示すブロック図FIG. 4 is a block diagram illustrating an example of a synthesis processing circuit.

【図5】従来のスタックフィルタの構成を示すブロック
FIG. 5 is a block diagram showing a configuration of a conventional stack filter.

【図6】従来のスタックフィルタの処理の概要を示す模
式図
FIG. 6 is a schematic diagram showing an outline of processing of a conventional stack filter.

【図7】従来のスタックフィルタにおける分解処理の概
念を説明するための模式図
FIG. 7 is a schematic diagram for explaining the concept of decomposition processing in a conventional stack filter.

【符号の説明】[Explanation of symbols]

1 直並列変換手段 3 大小比較器 4 ベクトル生成手段 5 バイナリフィルタ 6 最小値検出器 7 選択手段 DESCRIPTION OF SYMBOLS 1 Serial-parallel conversion means 3 Large-small comparator 4 Vector generation means 5 Binary filter 6 Minimum value detector 7 Selection means

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭57−155671(JP,A) 特開 平2−29020(JP,A) 特開 平2−150113(JP,A) 特開 平3−268604(JP,A) 特開 平4−120981(JP,A) 特開 平5−251998(JP,A) 特開 平6−62284(JP,A) (58)調査した分野(Int.Cl.7,DB名) H03H 17/00 613 H03H 17/02 661 H03H 17/02 671 H04N 5/21 ──────────────────────────────────────────────────続 き Continuation of front page (56) References JP-A-57-155671 (JP, A) JP-A-2-29020 (JP, A) JP-A-2-150113 (JP, A) JP-A-3-3 268604 (JP, A) JP-A-4-120981 (JP, A) JP-A-5-251998 (JP, A) JP-A-6-62284 (JP, A) (58) Fields investigated (Int. Cl. 7 , DB name) H03H 17/00 613 H03H 17/02 661 H03H 17/02 671 H04N 5/21

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 入力信号から、n個(n≧3)の直列デ
ータを並列データに変換する直並列変換手段と、 前記直並列変換手段のn個の出力のうち、相異なる2個
を取り出して大小比較し、比較信号を発生するn2個の
大小比較器と、 前記n2個の大小比較器の各出力のうち、相異なる(n
−1)個の出力を選択し、n個の2値成分で構成される
ベクトルをそれぞれ生成するn個のベクトル生成手段
と、 前記n個のベクトル生成手段から出力される各ベクトル
のn個の2値成分に対し、1ビットの論理積和演算処理
をそれぞれ行うn個のフィルタ手段と、 前記n個のフィルタ手段出力が所定の値になる条件のも
とで、前記n個のベクトル生成手段出力であるn個のベ
クトルのうち、大きさが最小のものを検出して検出信号
を出力する最小値検出器と、 前記最小値検出器の出力に対応して前記直並列変換手段
のn個の出力のうち1個の出力を選択して出力する選択
手段を備え、 前記選択手段出力を出力信号とするスタックフィルタ。
1. A serial-parallel converter for converting n (n ≧ 3) serial data into parallel data from an input signal, and extracting two different outputs from the n outputs of the serial-parallel converter. and compares Te, and n C 2 pieces of magnitude comparator for generating a comparison signal, among the output of said n C 2 pieces of magnitude comparator, different phases (n
-1) selecting n outputs, generating n vectors each composed of n binary components, n vector generating means, and n vectors of each vector output from the n vector generating means. N filter means for respectively performing a 1-bit AND operation on the binary component; and the n vector generation means under the condition that the output of the n filter means becomes a predetermined value. A minimum value detector for detecting a vector having a minimum size and outputting a detection signal among the n vectors as outputs, and n serial conversion circuits corresponding to the output of the minimum value detector. And a selecting unit for selecting and outputting one of the outputs of the stack filter, and using the output of the selecting unit as an output signal.
JP4234412A 1992-09-02 1992-09-02 Stack filter Expired - Fee Related JP3049962B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4234412A JP3049962B2 (en) 1992-09-02 1992-09-02 Stack filter

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4234412A JP3049962B2 (en) 1992-09-02 1992-09-02 Stack filter

Publications (2)

Publication Number Publication Date
JPH0685608A JPH0685608A (en) 1994-03-25
JP3049962B2 true JP3049962B2 (en) 2000-06-05

Family

ID=16970612

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4234412A Expired - Fee Related JP3049962B2 (en) 1992-09-02 1992-09-02 Stack filter

Country Status (1)

Country Link
JP (1) JP3049962B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010219807A (en) * 2009-03-16 2010-09-30 Panasonic Corp Image processing device and image processing method

Also Published As

Publication number Publication date
JPH0685608A (en) 1994-03-25

Similar Documents

Publication Publication Date Title
RU2020582C1 (en) Device for selecting edges for image processing system
US4549212A (en) Image processing method using a collapsed Walsh-Hadamard transform
US7613264B2 (en) Flexible sampling-rate encoder
EP0152435B1 (en) Transformation circuit for implementing a collapsed walsh hadamard transform
US4553165A (en) Transform processing method for reducing noise in an image
Lee et al. Threshold boolean filters
JP2000502481A (en) Absolute sum generator
US5900006A (en) Median filtering method and apparatus using a plurality of processing elements
US5987487A (en) Methods and apparatus for the processing of digital signals
US5652625A (en) Multi-stage pipeline architecture for motion estimation block matching
JP3049962B2 (en) Stack filter
Andreadis et al. Real-time adaptive image impulse noise suppression
Cardenas-Barrera et al. QCA implementation of a multichannel filter for image processing
US5097433A (en) Stack filter with one stage per bit
JPH05258054A (en) Device for actualizing two-dimensional digital filter
Haavisto et al. Median based idempotent filters
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
US6731820B2 (en) Image filter circuit and image filtering method
Mounika et al. 45nm Technology based 8-Bit Data Comparator Architecture for Rank ordering Image Applications
JP2555966B2 (en) Digital adder circuit
JP3041563B2 (en) Finite impulse response filter
Gevorkian et al. Modified K-nearest neighbour filters for simple implementation
Muralikrishnan et al. An Efficient VLSI Architecture For Removal Of Impulse Noise In Image Using Edge Preserving Filter
JP2699365B2 (en) Decoder circuit
JP2699358B2 (en) Decoder circuit

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080331

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090331

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees