H(z)
xB(n) yB(n)
Indicator
sequence Anti-notch filter
n (base location) Coding region
2p/3 w
p/3 p
|H(ejw)|
Figure 5.2: The indicator sequencexB(n)is passed through the bandpass filterH(z). The output yB(n)will be large in the coding regions due to the period-3 component.
This shows that GðzÞ is a notch filter [12] with a zero at the frequency o
0: When the pole radius R is close to the unit circle we see that o
0gets close to y: That is, the pole andzero of the filter GðzÞ are very close to each other (Fig. 5). Thus, at frequencies sufficiently away from o
0; the response is close to unity. This is demonstrated in Fig. 6, which shows the magnitude response of GðzÞ for two values of R:
From Eq. (2) we see that Gðe
joÞ
Hðe
joÞ
" #
¼ U ffiffiffi 2
p 1
Aðe
joÞ
" #
;
where U is unitary, that is, U
tU ¼ I: This shows that jGðe
joÞj
2þ jHðe
joÞj
2¼ 1 þ jAðe
joÞj
22 ¼ 1;
where we have usedthe allpass property jAðe
joÞj ¼ 1: It therefore follows that GðzÞ and HðzÞ are power complementary. This shows, in particular, that the filter HðzÞ is a goodantinotch filter as demonstratedin Fig. 7, for the same pole radii chosen in Fig. 6.
By choosing o
0¼ 2p=3 the filter HðzÞ can be usedto extract the period-3 regions of the DNA effectively. The allpass filter AðzÞ can be implementedwith either the direct form structure or the cascaded lattice structure [11,13]. The lattice structure with one-multiplier sections is especially attractive [11,12], and Fig. 8 shows
Re Im
0
1 z-plane
θ
notch zero
allpass zero
pole ω0
Fig. 5. Poles andzeros of the notch filterGðzÞandthe allpass filterAðzÞ:
P.P. Vaidyanathan, B.-J. Yoon / Journal of the Franklin Institute 341 (2004) 111–135 117
Figure 5.3: Poles and zeros of the notch filterG(z)and the allpass filterA(z). From (5.1), the filterG(z)can be written as
G(z) =K
1−2 cosω0z−1+z−2 1−2Rcosθz−1+R2z−2
,
where
cosω0=2Rcosθ
1 +R2 , (5.2)
and
K= R2+ 1 2 .
This shows that the filterG(z)is a notch filter [83], whose zeros are located at the frequencyω0. We can see from (5.2), that the frequencyω0gets close toθwhenRis close to unity. In this case, the pole and the zero of the filterG(z)are very close to each other as illustrated in Figure 5.3. Therefore, at frequencies that are sufficiently away fromω0, the magnitude response ofG(z)will be close to unity. This is demonstrated in Figure 5.4, which shows the magnitude response of the filterG(z) for two different values ofR.
the implementation of H ðzÞ using this lattice. The multipliers in this structure are the lattice coefficients
k
1¼ R
2; k
2¼ cos o
0:
Since the antinotch frequency is o
0¼ 2p=3 we have k
2¼ cos o
0¼ 1=2
ARTICLE IN PRESS
0 0.2 0.4 0.6 0.8 1
0 0.2 0.4 0.6 0.8 1
ω/π
Magnitude response
R=0.9 R=0.99
Fig. 7. Antinotch filter responses for two values ofR:
0 0.2 0.4 0.6 0.8 1
0 0.2 0.4 0.6 0.8 1
ω/π
Magnitude response
R=0.9 R=0.99
Fig. 6. Notch filter responses for two values ofR:
P.P. Vaidyanathan, B.-J. Yoon / Journal of the Franklin Institute 341 (2004) 111–135 118
Figure 5.4: Magnitude response of the notch filterG(z)for two values ofR.
the implementation of H ðzÞ using this lattice. The multipliers in this structure are the lattice coefficients
k
1¼ R
2; k
2¼ cos o
0:
Since the antinotch frequency is o
0¼ 2p=3 we have k
2¼ cos o
0¼ 1=2
ARTICLE IN PRESS
0 0.2 0.4 0.6 0.8 1
0 0.2 0.4 0.6 0.8 1
ω/π
Magnitude response
R=0.9 R=0.99
Fig. 7. Antinotch filter responses for two values ofR:
0 0.2 0.4 0.6 0.8 1
0 0.2 0.4 0.6 0.8 1
ω/π
Magnitude response
R=0.9 R=0.99
Fig. 6. Notch filter responses for two values ofR:
P.P. Vaidyanathan, B.-J. Yoon / Journal of the Franklin Institute 341 (2004) 111–135 118
Figure 5.5: Magnitude response of the antinotch filterH(z)for two values ofR.
which can be implementedwith a binary shift. So the only significant multiplier is R
2; andcontrols the antinotch quality without affecting the frequency o
0(Fig. 7). Thus we can adjust R
2depending on the base-domain resolution desired.
3.4. Multistage filters
Even though the IIR antinotch methodhas been foundto work well, with a slight increase in the number of multipliers we can design filters with much better stopband attenuation. Such filters are essential in order to suppress the background 1=f noise which is always there in the DNAs of many organisms, due to long-range correlation between base pairs.
The methodto be presentedis basedon the idea of multistage filtering [10,11]. To explain this consider a narrowband lowpass filter H
1ðzÞ as shown in Fig. 9(a). If we replace each delay element z
1in the filter with z
3; we get the filter H
1ðz
3Þ whose response is as shown in Fig. 9(b). Thus, there is a passbandcenteredat 2p=3 anda passbandat o ¼ 0: If we now cascade this with a filter H
2ðzÞ which attenuates the zero-frequency passbandseverely, the resulting filter
HðzÞ ¼ H
1ðz
3ÞH
2ðzÞ
−1
z−1 1/2
quality control x(n)
v(n) +
+−
R2
−1 =1/2
frequency control
z−1
−cos ω0
Fig. 8. Lattice structure for implementing the antinotch filterHðzÞ ¼VðzÞ=XðzÞ:
ω π H (z)
1
2π/ 3
ω π H (z)2
2π/ 3
ω π H (z )3
1
(a)
(b)
(c)
Fig. 9. The multistage design of a narrow band bandpass filter. (a) Magnitude response of lowpass prototypeH1ðzÞ;(b) multibandresponse of H1ðz3Þ; and(c) the response ofH2ðzÞ which eliminates the unwantedpassbandato¼0:
P.P. Vaidyanathan, B.-J. Yoon / Journal of the Franklin Institute 341 (2004) 111–135 119
Figure 5.6: Implementation of the antinotch filterH(z) =V(z)/X(z)using a lattice structure.
From (5.1), we can see that the frequency response ofG(z)andH(z)can be written as
G(ejω) H(ejω)
= U
√2
1 A(ejω)
, (5.3)
whereUis a unitary matrix that satisfies
UHU=I.
From (5.3), we can see that
G(ejω)
2+
H(ejω)
2=1 + A(ejω)
2
2 = 1,
since|A(ejω)|= 1asA(z)is an allpass filter. This shows that the two filtersG(z)andH(z)arepower complementary[109]. AsG(z)is a good notch filter as shown in Figure 5.4, the power complemen- tary filterH(z)becomes a good antinotch filter, as we can see in Figure 5.5. By choosingω0= 2π/3, the filterH(z)can be used to identify the regions in a DNA sequence that display strong period-3 property.
5.4.2 Implementation of the antinotch filter using a lattice structure
The allpass filterA(z)that is used to obtain the antinotch filterH(z)can be implemented either in a direct form structure [74] or in a cascaded lattice structure [83, 109]. The lattice structure is especially attractive as it is computationally efficient. Figure 5.6 shows the implementation of the filterH(z)using a lattice structure. The structure shown in Figure 5.6 has two multipliers which are used as the lattice cofficients
k1=R2, k2=−cosω0.
Sinceω0= 2π/3in our application, we have
k2=−cosω0= 1/2,
which can be implemented using a binary shift. Therefore, the only significant multiplier isR2, which controls the quality of the antinotch filter without affecting the frequencyω0= 2π/3. We can adjust the value ofR2to control the base-domain resolution as desired.
5.4.3 Experimental results
In order to demonstrate the proposed idea, we performed the following experiment. We first took a segment of DNA sequence inC. eleganschromosome III (GenBank accession number AF099922;
base locations 7,021–15,080) and computed the four indicator sequencesxA(n),xC(n),xG(n), and xT(n). This DNA segment contains the protein-coding gene F56F11.4 that consists of five exons.
Firstly, we used the DFT-based method to compute S[N/3]. Figure 5.7 (Top) shows the plot of S[N/3]as function of relative base location (n = 0 corresponds to the base location 7,021 in the original DNA sequence). As we can see in Figure 5.7 (Top), the last four exons have clearly visible peaks. However, the peak that arises from the first exon is somewhat buried in the noisy back- ground and it is not easily distinguishable from the spurious peaks. The plot in Figure 5.7 (Bottom) shows the outputY(n)obtained by the allpass-based antinotch filter with a pole radiusR= 0.992. In this plot, the first peak is also larger than the spurious peaks in the background, showing the location of the first exon more clearly. This result shows that the antinotch filter approach works very well, while providing additional advantages in implementation.