## Are you sure?

This action might not be possible to undo. Are you sure you want to continue?

†

Wancheng Zhang,

‡

Andy W. H. Khong, and

†

Patrick A. Naylor

†

Imperial College London, Department of Electrical and Electronic Engineering

‡

Nanyang Technological University, School of Electrical and Electronic Engineering

ABSTRACT

Equalization techniques for high order, multichannel, FIR systems

are important for dereverberation of speech observed in reverbera-

tion using multiple microphones. In this case the multichannel sys-

tem represents the room impulse responses (RIRs). The existence of

near-common zeros in multichannel RIRs can slow down the conver-

gence rate of adaptive inverse ﬁltering algorithms. In this paper, the

effect of common and near-common zeros on both the closed-form

and the adaptive inverse ﬁltering algorithms is studied. An adaptive

shortening algorithm of room acoustics is presented based on this

study.

1. INTRODUCTION

In hands-free communications, the speech signal can be distorted

by room reverberation, resulting in reduced intelligibility to lis-

teners. One method to achieve dereverberation is to perform

identiﬁcation and inverse ﬁltering of the room impulse responses

(RIRs). The methodology is illustrated in Fig. 1. Consider a

) (n s ) ( ˆ n s

Channel

Identification

Equalization

Algorithms

ˆ ˆ

, ,

1 M

h h "

1

h

2

h

h

0

1

x (n)

2

x (n)

M

x (n)

g

1

g

2

g

M

g

+

Fig. 1. Illustration of identiﬁcation and inverse ﬁltering of acoustic

systems.

clean speech signal s(n) propagating through M acoustic chan-

nels, which are characterized by their impulse responses hm =

[hm(0) hm(1) · · · hm(L − 1)]

T

, m = 1, · · · , M, where L is

the length of the RIRs, and {·}

T

denotes the transpose operation.

Using the reverberant speech signals xm(n), m = 1, · · · , M, es-

timates of the RIRs hm, m = 1, · · · , M can be obtained with

blind system identiﬁcation techniques, such as in [1]. Then, with

the estimates

ˆ

hm, m = 1, · · · , M, an inverse ﬁltering system

g = [g

T

1

g

T

2

. . . g

T

M

]

T

, which is formed by stacking column vec-

tors of the ﬁlters gm = [gm(0) gm(1) . . . gm(Li − 1)]

T

of each

channel, can be designed with some equalization algorithm. Then,

by ﬁltering xm(n) using the inverse ﬁltering system g, we expect a

good estimate ˆ s(n) of s(n) can be obtained. In this paper, we do not

consider the possible errors induced by the system identiﬁcation, so

we assume

ˆ

hm = hm, m = 1, · · · , M.

Traditionally, inverse systems can be obtained, for the single

channel case, by using the method of least squares (LS), or employ-

ing the multiple-input/output inverse theorem (MINT) when multi-

ple microphones are deployed [2]. Although LS inverse ﬁlters can

be used to approximately invert the RIRs, which are usually of non-

minimum phase, such techniques necessitate the use of very long

inverse ﬁlters as well as signiﬁcantly long delay [3]. From a theoret-

ical perspective, reverberation can be completely removed by using

multiple microphones and techniques based on MINT in the case

that the multichannel room transfer functions (RTFs) do not share

any common zeros [2]. In practice, MINT is computationally ex-

pensive [4], and this motivates the use of the subband algorithm [4].

On the other hand, multichannel adaptive systems have been used

for acoustic system equalization [5][6], and it is shown that an iden-

tical inverse ﬁltering system to MINT can be obtained [7]. However,

the existence of common and near-common zeros [8] causes prob-

lems in both closed-form and adaptive inverse ﬁltering algorithms.

MINT has been generalized to a multichannel least squares (MCLS)

method [4], and it can overcome the problems due to the existence

of common zeros. In adaptive inverse ﬁltering, we will show that

near-common zeros slow down the convergence rate of the adaptive

algorithms. Therefore, after any ﬁnite period of adaptation, the tail

of the equalized impulse response will not be completely suppressed.

In this paper, we address the performance degradation in adap-

tive inverse ﬁltering algorithms due to the presence of near-common

zeros. We achieve this by leaving the parts of the RIRs with common

and near-common zeros without equalization, which leads to a pro-

cess known as channel shortening. Channel shortening has been ex-

tensively developed in the context of digital communications to mit-

igate the inter-symbol and inter-carrier interference. The techniques

are ﬁrstly developed for the single-input/single-output (SISO) cases.

Both closed form [9] and, iterative and adaptive [10][11] methods

have been well studied. These techniques have been extended to the

multiple-input/multiple-output (MIMO) case in [12][13]. A com-

mon frame work and an overview of the design techniques for chan-

nel shortening can be found in [14]. The motivation behind employ-

ing such techniques for our acoustic system equalization application

is based on the fact that the early reﬂections in room acoustics can,

in certain cases, enhance the speech intelligibility [15]. Therefore, it

can be argued that it is not necessary to use the delta function as the

target impulse response (TIR) in RIRs equalization for the purpose

of dereverberation. Shortening the RIRs may therefore be indeed

satisfactory for enhancing the quality and intelligibility of reverber-

ant speech. By relaxing the TIR to be less constrained than the delta

function, we expect that the common and near-common parts of the

RIRs can be manifest in the early part of the equalized impulse re-

sponse and the equalization tail correspondingly suppressed.

First, we will study the LS and MCLS algorithms. It will be

shown that when common zeros exist, the MCLS is able to invert

those parts of the channels with factors which are not common in the

multichannel RIRs and to perform the LS inversion on the parts with

common zeros. Then, the performance of an adaptive inverse ﬁl-

788 978-1-4244-2941-7/08/$25.00 ©2008 IEEE Asilomar 2008

Authorized licensed use limited to: Imperial College London. Downloaded on January 4, 2010 at 08:24 from IEEE Xplore. Restrictions apply.

tering algorithm when common or near-common zeros exist will be

studied. It will be shown that the near-common zeros can slow down

the convergence rate of the adaptive algorithm. After this, some im-

provements to the adaptive algorithm based on this study will be

made, which will lead to an adaptive channel shortening algorithm

for the RIRs.

2. FORMULATION OF INVERSE FILTERING

Inverse ﬁltering of room acoustics aims to use an inverse system

of the RIRs to compensate for the distortion to the original signal

caused by the RIRs. It usually aims to force the equalized impulse

response

y = h1 ∗ g1 +h2 ∗ g2 + · · · +hM ∗ gM =

M

m=1

hm ∗ gm (1)

to be a target impulse response (TIR) of the delta function

d = [1 0 . . . 0

L+L

i

−1

]

T

, (2)

where ∗ denotes linear convolution. The aim is to minimize the cost

function

J = d −y

2

, (3)

where · denotes the Euclidean norm.

The inverse system g can be obtained by

g = H

+

d, (4)

where H = [H1 H2 · · · HM] is the system matrix, and {·}

+

de-

notes pseudo inverse. Hm is an (L + Li − 1) × Li convolution

matrix of hm

Hm =

hm(0) 0 · · · 0

hm(1) hm(0) · · · 0

.

.

.

.

.

.

.

.

.

.

.

.

hm(L − 1) · · ·

.

.

.

.

.

.

0 hm(L − 1)

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

0 . . . 0 hm(L − 1)

.

If M = 1, (4) gives a single channel LS optimal inverse system

[2]. If M ≥ 2, the multichannel RTFs do not share any common

zeros, and Li ≥ Lc, where Lc =

L−1

M−1

is deﬁned as the critical

ﬁlter length of the inverse system, (4) gives an exact inverse system,

with which the TIR (2) can be perfectly achieved [2]. For the case

that multichannel RTFs have common zeros, or Li < Lc, (4) gives

an MCLS inverse system [4].

An inverse system g minimizing (3) can also be obtained adap-

tively, which will be introduced later in this paper.

In this paper, we will focus on the M = 2 channel systems to

study the effect of common and near-common zeros on the inverse

ﬁltering algorithms. Suppose we have an M = 2 channel system,

and the design length of the ﬁlters of the inverse system is Li = Lc,

which leads to a square system matrix H = [H1 H2]. The degree of

rank deﬁciency of His equivalent to the number of common zeros of

the transfer functions of h1 and h2 [16]. If these two channels do not

have any common zeros, i.e. His of full rank, then H

+

= H

−1

. If

these two channels are identical, i.e. all zeros of these two channels

0 50 100 150 200 250

í2.5

í2

í1.5

í1

í0.5

0

0.5

1

1.5

2

2.5

n

a

m

p

l

i

t

u

d

e

˜ g

˜ g −gcom

Fig. 2. ˜ g and ˜ g −gcom.

are correspondingly common, then calculating H

+

is identical to

calculating the single channel LS inverse system.

To study the effect of common and near-common zeros by ex-

periments, we will use some synthetic impulse responses, the zeros

of which are manually located on the z-plane.

3. FROM LS TO MINT

Studies of RIRs measured in rooms indicate that common zeros are

normally present. Therefore, the inverse system g in (4) is usually

given by the MCLS. In this Section, we will show that the MCLS

works to fully invert the non-common parts in the impulse responses,

and performs LS inversion on the common parts.

Two synthetic impulse responses h1 and h2, the transfer func-

tions of which have two common zeros are used to show this. These

two zeros are a pair of conjugate zeros. The length of h1 and h2 is

L = 127. h1 and h2 can be written as

h1 =

˜

h1 ∗ hcom, (5)

h2 =

˜

h2 ∗ hcom, (6)

where

˜

h1 and

˜

h2 are the non-common parts, and hcom, which is of

3 taps in this example, is the common part.

Consider an inverse system g = [g

T

1

g

T

2

]

T

, where Li = Lc, is

obtained by using (4). By applying g to h = [h1 h2], an equalized

impulse response can be obtained,

y = g1 ∗ h1 +g2 ∗ h2

= (g1 ∗

˜

h1 +g2 ∗

˜

h2) ∗ hcom

= ˜ g ∗ hcom, (7)

where ˜ g is of L + Li − 3 taps. On the other hand, an LS optimal

inverse ﬁlter, gcom, of hcom, with a design length of L + Li − 3

can be obtained by the LS algorithm.

Experiment 1

In this experiment, we study the relationship between ˜ g and gcom.

Figure 2 shows that ˜ g and gcom are identical, which means that the

MCLS performs an inversion on the non-common parts in full, and

performs LS inversion on the common parts. In practice, to avoid

the problems caused by rounding errors in computing H

+

, singular

values and their singular vectors corresponding to the near-common

zeros of very small δ, found to be of order, for example, 10

−16

in our MATLAB simulations which use the IEEE ﬂoating-point

789

Authorized licensed use limited to: Imperial College London. Downloaded on January 4, 2010 at 08:24 from IEEE Xplore. Restrictions apply.

0 50 100 150 200 250

0

0.5

1

n

a

m

p

l

i

t

u

d

e

(a)

0 50 100 150 200 250

í2

í1

0

1

n

a

m

p

l

i

t

u

d

e

(b)

Fig. 3. Equalization results for (a) TIR from (2) and (b) TIR from

(8).

double-precision computation, are also truncated. This can be

understood in another way that the near-common zeros of very

small δ are processed as common zeros in MCLS, the order of

which is subject to different numerical computation systems.

Experiment 2

In this experiment, we will use

d = [h

T

com

0 · · · 0]

T

(8)

as the TIR to calculate g from h = [h1 h2]. The equalization result

with (2) as TIR is shown in Fig. 3(a), and Fig. 3(b) shows the result

obtained with (8). It can be seen that in Fig. 3(a) that the equalization

result is equal to a LS inversion of hcom with the characteristic non-

zero tail exhibiting ripple. In Fig. 3(b), since no attempt is made to

equalize the common part hcom, the equalization tail is completely

suppressed with no evidence of ripple.

4. ADAPTIVE INVERSE FILTERING

In this Section, an adaptive algorithm aiming to minimize the cost

function (3) using the steepest descent (SD) method [17] will be pro-

posed.

The gradient is given by

∇J = −2H

T

d + 2H

T

Hg (9)

and the inverse system g can be obtained by

g(k + 1) = g(k) −µ∇J, (10)

where k denotes the index of iteration, and µ is the step-size. The

algorithm is given in Algorithm 1.

Algorithm 1 Proposed adaptive inverse ﬁltering.

g(0) = 0

M(L+Li−1)

b = H

T

d, A = H

T

H

for k = 0, 1, 2, . . . do

∇J = −2b + 2Ag(k)

g(k + 1) = g(k) −µ∇J

end for

0 1 2 3 4 5 6

x 10

4

í50

í45

í40

í35

í30

í25

í20

í15

í10

í5

0

iterations (k)

J

(

d

B

)

no common zeros

with common zeros

with nearícommon zeros

Fig. 4. Convergence of J.

In the following, the effect of common or near-common zeros

on the performance of Algorithm 1 will be studied.

Experiment 3

In this experiment, Algorithm 1 will be studied for the case in which

no common or near-common zeros exist. The ﬁrst impulse response

used is h1 in (5). The second impulse response will include

˜

h2 in

(6), but the other part is different from hcom, to ensure that the two

channels do not share common zeros. The convergence of J in (3)

is shown in Fig. 4.

Experiment 4

In this experiment, Algorithm 1 will be studied for the case that

common zeros exist. The impulse responses used are h = [h1 h2]

in (5) and (6). The convergence of J is shown in Fig. 4.

Experiment 5

Algorithm 1 will next be studied for the case that near-common

zeros exist. The ﬁrst impulse response will be h1 in (5), and the

second is obtained by replacing hcom with some impulse response

with zeros separated by δ = 1 ×10

−4

from the corresponding zeros

of the ﬁrst channel. The convergence of J is shown in Fig. 4.

We can see in Fig. 4 that without common zeros, J converges

quickly. When common zeros exist, Fig. 4 shows that J converges to

an asymptotic performance level of about -21 dB, which corresponds

to the LS inverse ﬁltering of hcom shown in Fig. 3(a). When near-

common zeros exist, J converges quickly to the asymptotic level of

the case when common zeros exist, and then continues to converge

but very slowly. Therefore, we can conclude that near-common zeros

will slow down the convergence rate of Algorithm 1 after the adap-

tive ﬁlter has ﬁrst been able to equalize the parts without common or

near-common zeros.

5. CHANNEL SHORTENING

In this Section, we will study the performance of Algorithm 1 with

some different TIRs, for the cases that common or near-common

zeros exist.

Experiment 6

As in Exp. 2, we use (8) as the TIR when common zeros exist. We

can see in Fig. 5(a) that J converges quickly. Figure 5(b) shows that

the equalized impulse response is identical to the one given in Fig.

790

Authorized licensed use limited to: Imperial College London. Downloaded on January 4, 2010 at 08:24 from IEEE Xplore. Restrictions apply.

0 1 2 3 4 5 6

x 10

4

í40

í20

0

iterations (k)

J

(

d

B

)

(a)

0 50 100 150 200 250

í2

í1

0

1

n

a

m

p

l

i

t

u

d

e

(b)

Fig. 5. Adaptive equalization with TIR of (8).

3(b) which is obtained using the closed-form MCLS.

However, in practice, we do not know the zeros of the true RTFs,

and we do not know how many common or near-common zeros ex-

ist. Therefore, we cannot use an exactly known TIR such as (8)

which we have used in Exp. 6. In room acoustics, the early reﬂec-

tions can enhance the speech intelligibility in certain circumstances

[15]. Therefore, we can relax the early part of TIR, to make it less

constrained than the delta function (2). We propose to achieve this

by using a weighting function in the cost function

J = w◦ (d −y)

2

, (11)

where

w = [1 0 . . . 0

Lr

1 . . . 1]

T

(12)

is the weighting function and ◦ denotes the Hadamard product. Here

Lr is the length of the ‘relaxing’ window. We use w(1) = 1 to avoid

the trivial solution.

With the weighting function used, the gradient of J deﬁned in

(11) can be written as

∇J = −2(WH)

T

d + 2(WH)

T

(WH)g, (13)

where W = diag{w}. The corresponding channel shortening algo-

rithm to compute the shortening system g is given in Algorithm 2.

Algorithm 2 Proposed adaptive channel shortening.

g(0) = 0

M(L+Li−1)

b = (WH)

T

d, A = (WH)

T

(WH)

for k = 0, 1, 2, . . . do

∇J = −2b + 2Ag(k)

g(k + 1) = g(k) −µ∇J

end for

By using the ‘relaxing’ window, the equalization tail may still

not be able to fully removed, for example, when Lr is less than

the length of hcom. However, any Lr greater than one can reduce

the effect of the common and near-common zeros on the adaptive

inverse ﬁltering algorithm. Tests show that the equalization tail

does not need to be fully suppressed in speech dereverberation. It is

satisfactory to suppress it to some given level.

0 1 2 3 4 5 6

x 10

4

í50

í40

í30

í20

í10

0

iterations (k)

J

(

d

B

)

(a)

0 50 100 150 200 250

í0.5

0

0.5

1

1.5

n

a

m

p

l

i

t

u

d

e

(b)

Fig. 6. Adaptive channel shortening with Lr = 8.

0 500 1000 1500 2000

í30

í20

í10

0

10

iterations (k)

J

(

d

B

)

(a)

inverting

shortening

0 500 1000 1500 2000 2500 3000 3500 4000

í1

0

1

n

a

m

p

l

i

t

u

d

e

(b)

Fig. 7. Adaptive inverse ﬁltering and shortening of RIRs.

Experiment 7

In this experiment, we will use Lr = 8 to test Algorithm 2. The

impulse responses used in Exp. 5 (near-common zeros case) will be

used. It can be seen in Fig. 6(a) that with the ‘relaxing’ window

employed, J converges more quickly. The equalized impulse

response is given in Fig. 6(b). We can see that after the 8th tap, the

late part is fully suppressed.

6. ADAPTIVE CHANNEL SHORTENING USED IN TRUE

ROOM ENVIRONMENTS

In this Section, the adaptive channel shortening algorithm will be

tested with true RIRs.

Experiment 8

In this experiment, a M = 2 channel acoustic system will be used

and the RIRs are taken from the MARDY database [18]. The length

of the RIRs is L = 2000 with a sampling frequency of 8 kHz. The

ﬁlter length of the shortening systemLi is used as Li = Lc = 1999.

Since reﬂections arriving within 20 ms (160 taps) of the direct

sound cause little or no disturbance in hearing even when the ampli-

tude of the reﬂections is greater than the direct sound [15], we will

use Lr = 160 in (12) in this experiment.

The comparison of convergence of J of inverse ﬁltering (Lr =

1) and shortening (Lr = 160) is shown in Fig. 7(a). The shortening

result at iteration 2000 is shown in Fig. 7(b). We can see that for

791

Authorized licensed use limited to: Imperial College London. Downloaded on January 4, 2010 at 08:24 from IEEE Xplore. Restrictions apply.

shortening, J converges more quickly than inverse ﬁltering.

7. CONCLUSIONS

In this paper, we analyzed the performance of LS and MINT algo-

rithms for the inverse ﬁltering of RIRs. An adaptive approach for

inverse ﬁltering of room acoustics has been introduced and studied.

Also, an adaptive channel shortening algorithm has been developed.

Experiments show that when common zeros among multichannel

RTFs exist, the MCLS inverts the non-common parts of the RIRs and

performs LS inversion on the common parts. For adaptive inverse

ﬁltering, the existence of near-common zeros slows its convergence

rate. Adaptive channel shortening can speed up the convergence rate

and effectively suppress the late part of the RIRs.

8. REFERENCES

[1] L. Tong and S. Perreau, “Multichannel blind identiﬁcation:

From subspace to maximum likelihood methods,” Proc. IEEE,

vol. 86, pp. 10, Oct. 1998.

[2] M. Miyoshi and K. Kaneda, “Inverse ﬁltering of room acous-

tics,” IEEE Trans. Acoust., Speech, Signal Processing, vol. 36,

pp. 145–152, 1988.

[3] P. A. Naylor and N. D. Gaubitch, “Speech dereverberation,”

in Int. Workshop Acoust. Echo Noise Control, Eindhoven, Sept

2005.

[4] N. D. Gaubitch and P. A. Naylor, “Equalization of multichan-

nel acoustic systems in oversampled subbands,” accepted for

publication in IEEE Trans. Audio, Speech, Language Process-

ing.

[5] S. J. Elliott and P. A. Nelson, “Algorithm for multichannel

LMS adaptive ﬁltering,” Electronics Letters, vol. 21, no. 21,

pp. 979–981, Oct. 1985.

[6] S. J. Elliott, I. M. Stothers, and P. A. Nelson, “A multiple

error LMS algorithm and its application to the active control

of sound and vibration,” IEEE Trans. Acoust., Speech, Signal

Processing, vol. 35, no. 10, pp. 1423–1434, Oct. 1987.

[7] P. A. Nelson, F. Orduna-Bustamante, and H. Hamada, “Inverse

ﬁlter design and equalization zones in multichannel sound re-

production,” IEEE Trans. Speech Audio Processing, vol. 3, no.

3, pp. 185–192, May 1995.

[8] A. W.H. Khong, X. S. Lin, and P. A. Naylor, “Algorithms

for identifying clusters of near-common zeros in multichannel

blind systemidentiﬁcation and equalization,” in ICASSP, 2008,

pp. 229–232.

[9] P. J. W. Melsa, R. C. Younce, and C. E. Rohrs, “Impulse re-

sponse shortening for discrete multitone transceivers,” IEEE

Trans. Commun., vol. 44, pp. 1662–1672, Dec. 1996.

[10] M. Naﬁe and A. Gatherer, “Time-domain equalizer training

for ADSL,” in IEEE Int. Conf. Commun, June 1997, vol. 2, pp.

1085–1089.

[11] R. K. Martin, J. Balakrishnan, W. A. Sethares, and C. R. John-

son Jr., “Ablind, adaptive TEQfor multicarrier systems,” IEEE

Signal Process. Lett., vol. 9, pp. 341–343, Nov. 2002.

[12] N. Al-Dhahir, “FIR channel shortening equalizers for MIMO

ISI channels,” IEEE Trans. Commun., vol. 49, no. 2, pp. 213–

218, Feb. 2001.

[13] R. K. Martin, J. M. Walsh, and C. R. Johnson Jr., “Low-

complexity MIMO blind, adaptive channel shortening,” IEEE

Trans. Signal Process., vol. 53, no. 4, pp. 1324–1334, Apr.

2005.

[14] R. K. Martin, K. Vanbleu, M. Ding, G. Ysebaert, M. Milosevic,

B. L. Evans, M. Moonen, and C. R. Johnson Jr., “Uniﬁcation

and evaluation of equalization structures and design algorithms

for discrete multitone modulation systems,” IEEE Trans. Sig-

nal Process., vol. 53, no. 10, pp. 3880–3894, Oct. 2005.

[15] H. Kuttruff, Room Acoustics, 4th edition, Taylor & Frances,

2000.

[16] S. Barnett, “Degrees of greatest common divisors of invariant

factors of two regular polynomial matrices,” Proc. Camb. Phil.

Soc., vol. 66, pp. 241–245, 1970.

[17] S. S. Haykin, Adaptive ﬁlter theory, 4th edition, Prentice Hall,

2002.

[18] J. Y. C. Wen, N. D. Gaubitch, E. A. P. Habets, T. Myatt, and

P. A. Naylor, “Evaluation of speech dereverberation algorithms

using the MARDY database,” in Proc. International Workshop

on Acoustic Echo and Noise Control, Paris, France, Sep. 2006.

792

Authorized licensed use limited to: Imperial College London. Downloaded on January 4, 2010 at 08:24 from IEEE Xplore. Restrictions apply.

- Ch 5 System of Equations
- Quiz 04sle Ludecomposition Solution
- 25Appendix D
- Lab1
- Acoustic Environment Classification
- Lecture Notes Math 307
- ME5720Chap7C_w11.ppt
- geochemical modelling notes
- Math.pdf
- 154ae6bc7134c52883408f84ba6e97cf (1)
- Greens Fn
- algebra assg
- Laurio Ps123longtest2
- Seemous 2010
- sigsys_lec_2_ch_2a.ppt
- Assignment 1 2010
- Solution to exercises , manifolds
- Modified Multiphase Level Set Image Segmentation Search for Energy Formulation with Bias Correction
- Important SturmL
- Level-slope-curvature- Fact or Artefact
- Notes for Cive1620 Large Type Part 1&2 Full2008 4up
- Main Loewner Matrix
- reed-solomon.pdf
- 2010a Durand
- ch1
- Neural Networks - Slides - CMU - Aarti Singh & Barnabas Poczos
- Nn Summary
- Ch 03 Matrices
- Matlab Programming
- Math XII Practice Ch 1-5

- Hit Theory P54-56
- Respiratory 2004
- Earth
- Ecu Athletes p 1
- Hit Theory P1-7
- Fitzpatrick.R.@.Classical.electromagnetism D
- 16.-RadioUlnar-led_BrianAdams_p41_p44
- FEM - Finite Element Procedures - K.-j. Bathe - 1996
- NS 1 Week 3 Cardiac Failure
- Radiographic Evaluation of the Wrist – A Vanishing Art
- POSIX Threads Programming
- 心脏解剖模式图
- Search Engine Optimization Starter Guide
- Vim XML
- Sips Test
- opencv_cheatsheet

Sign up to vote on this title

UsefulNot usefulClose Dialog## Are you sure?

This action might not be possible to undo. Are you sure you want to continue?

Loading