SINTEZA LUCRĂRII Etapa unică 2009 - UTCluj · 2009-10-13 · care este scăzută din semnalul...

13
Denumirea proiectului: PROIECT DE CERCETARE EXPLORATORIE CNCSIS - ID_1057 “Modelarea 2.5D a propagării sunetului în încăperi şi îmbunătăţirea proprietăţilor acustice ale unei încăperi folosind implementări digitale” SINTEZA LUCRĂRII Etapa unică 2009 Director proiect, Prof.dr.ing. MARINA DANA TOPA

Transcript of SINTEZA LUCRĂRII Etapa unică 2009 - UTCluj · 2009-10-13 · care este scăzută din semnalul...

Page 1: SINTEZA LUCRĂRII Etapa unică 2009 - UTCluj · 2009-10-13 · care este scăzută din semnalul recepţionat. Filtrarea adaptivă este necesară pentru obinerea unei replici de ţ

Denumirea proiectului: PROIECT DE CERCETARE EXPLORATORIE CNCSIS - ID_1057

“Modelarea 2.5D a propagării sunetului în încăperi şi îmbunătăţirea proprietăţilor acustice ale unei încăperi folosind

implementări digitale”

SINTEZA LUCRĂRII

Etapa unică 2009

Director proiect, Prof.dr.ing. MARINA DANA TOPA

Page 2: SINTEZA LUCRĂRII Etapa unică 2009 - UTCluj · 2009-10-13 · care este scăzută din semnalul recepţionat. Filtrarea adaptivă este necesară pentru obinerea unei replici de ţ

C U P R I N S

1. DEZVOLTAREA UNUI ALGORITM DE EGALIZARE........................................................................... 1 2. DEZVOLTAREA UNUI ALGORITM PENTRU ÎMBUNĂTĂŢIREA PERFORMANŢELOR ACUSTICE ALE UNEI SĂLI OBIŞNUITE PORNIND DE LA ALGORITMI DE REVERBERAŢIE ŞI EGALIZARE........ 2 3. IMPLEMENTAREA ALGORITMILOR DE REVERBERAŢIE SAU/ŞI EGALIZARE PE STRUCTURI FPGA.............................................................................................................................................................. 5 IMPLEMENTAREA UNOR ALGORITMI DE REVERBERAŢIE ARTIFICIALĂ ............................................................................5 IMPLEMENTAREA HDL A ALGORITMILOR LMS ŞI NLMS ............................................................................................6 IMPLEMENTAREA NOII STRUCTURI DE FILTRU FIR .......................................................................................................6 4. DETERMINAREA FUNCŢIEI PLENACUSTICE PENTRU O ÎNCĂPERE .............................................. 8 COMPARAREA TIMPULUI DE REVERBERAŢIE MĂSURAT ÎN ÎNCĂPEREA REALĂ CU TIMPUL DE REVERBERAŢIE AL ÎNCĂPERII MODELATE ...............................................................................................................................................................8 FUNCŢIA PLENACUSTICĂ .........................................................................................................................................10 REFERINŢE ...........................................................................................................................................................11

ii

Page 3: SINTEZA LUCRĂRII Etapa unică 2009 - UTCluj · 2009-10-13 · care este scăzută din semnalul recepţionat. Filtrarea adaptivă este necesară pentru obinerea unei replici de ţ

1. Dezvoltarea unui algoritm de egalizare

Într-o încăpere apar ecouri multiple datorită reflecţiilor generate de existenţă pereţilor, tavanului şi a podelei (Fig. 1) [1]. Aceste ecouri pot conduce la neinteligibilitatea mesajului sonor recepţionat de ascultător. Pentru înlăturarea acestor efecte nedorite se dezvoltă algoritmi de eliminare a ecoului în încăperi destinate audierii de conferinţe.

Un egalizator estimează caracteristicile traseului sunetului în încăpere şi generează o replică a ecoului, care este scăzută din semnalul recepţionat. Filtrarea adaptivă este necesară pentru obţinerea unei replici de bună calitate, traseul sunetului fiind necunoscut şi variabil în timp. Marea majoritate a algoritmilor întâlniţi în literatură se bazează pe utilizarea metodelor adaptive pornind de la algoritmul LMS (Least-Mean Square).

Figura 2 prezintă schema bloc a unui sistem de identificare, cu ajutorul căreia poate fi construit un algoritm pentru eliminarea ecoului în încăperi. Semnalul x(n) este semnalul sonor de intrare, care este aplicat atât sistemului necunoscut H, cât şi filtrului adaptiv W. Semnalul x(n) este intrarea, y(n) este ieşirea, d(n) semnalul dorit, iar e(n) este eroarea.

Pentru măsurarea performanţei algoritmului adaptiv pot fi utilizate mai multe mărimi, cum ar fi:

- eroarea e(n); - eroarea medie pătratică:

( )( )21010 log ( )= ⋅MSE E e n ; (1)

- atenuarea medie:

2

10 2

( ( ))10log( ( ))

E d nERLEE e n

= − . (2)

Au fost simulate în Matlab mai multe sisteme de anulare a ecoului bazate pe diverse variante ale algoritmului LMS: LMS clasic, NLMS (Normalized LMS), VSLMS (Variable Step Size LMS), VSNLMS (Variable Step Size NLMS), RLS (Recursive Least Square) [1], [2]. Semnalul de intrare a fost creat prin însumarea la un semnal vocal de variante întârziate şi atenuate ale sale. Filtrul adaptiv este un filtru FIR de ordinul 1025. Rezultatele simulărilor algoritmilor adaptivi pot fi observate în Figurile 3, 4, 5, 6, 7, iar performanţele sunt pe scurt prezentate în Tabelul 1. Se observă că cel mai rapid algoritm este RLS, dar acesta necesită un hardware de mărime foarte mare. Algoritmii NLMS şi VSLMS în schimb au o convergenţă bună la o dimensiune rezonabilă, a hardawre-ului, similară algoritmului LMS. In consecinţă varianta cea mai bună a schemei de egalizor este cea cu filtru adaptiv NLMS sau VSLMS [1].

Algoritm Atenuarea medie ERLE

Număr de înmulţiri necesare

LMS 6.7709 dB 2N+1 NLMS 16.7624 dB 3N+1

VSLMS 17.8861 dB 4N+1 VSNLMS 12.3276 dB 5N+1

RLS 20.60 dB 4N2

Tabelul 1. Performanţele algoritmilor adaptivi

Generation of Echo Replica

+

∼ ∼∼ ∼

Generation of Echo ReplicaGeneration of Echo Replica

++

∼ ∼∼ ∼∼ ∼∼ ∼

Figura 1. Principiul de anula e a ecourilor într-o încăpere r

Figura 2. Schema-bloc a unui sistem de identificare.

1

Page 4: SINTEZA LUCRĂRII Etapa unică 2009 - UTCluj · 2009-10-13 · care este scăzută din semnalul recepţionat. Filtrarea adaptivă este necesară pentru obinerea unei replici de ţ

Figura 3. Simularea algoritmului LMS.

Figura 4. Simularea algoritmului NLMS.

Figura 7. Simularea algoritmului RLS.

Figura 5. Simularea algoritmului VSLMS.

Figura 6. Simularea algoritmului VSNLMS.

2. Dezvoltarea unui algoritm pentru îmbunătăţirea performanţelor acustice ale unei săli obişnuite pornind de la algoritmi de reverberaţie şi egalizare

În viziunea acestui proiect, îmbunătăţirea performanţelor acustice ale unei încăperi este bazată pe

identificarea modelului unei încăperi, potrivite pentru scopul utilizat (auditoriu – eliminarea ecourilor şi sală de concert – introducerea de reflexii). Deoarece semnalul acustic este în general colorat, filtrul FIR cu care se modelează încăperea este de dimensiuni foarte mari, iar acest fapt este un serios obstacol pentru implementarea digitală.

Soluţia propusă pentru înlăturarea acestei probleme este prelucrarea semnalului pe subbenzi. În Figura 8 este reprezentat un sistem care lucrează pe M subbenzi. Semnalele x(n) şi d(n) sunt descompuse de blocul de analiză P(z) în M semnale (x0(n), x1(n), … , xM-1(n)) prin divizarea spectrului pe benzi mai mici. Filtrarea adaptivă pe subbenzi este apoi realizată de un set de filtre independente (h0(n), h1(n),…, hM-1(n)). Ieşirile

2

Page 5: SINTEZA LUCRĂRII Etapa unică 2009 - UTCluj · 2009-10-13 · care este scăzută din semnalul recepţionat. Filtrarea adaptivă este necesară pentru obinerea unei replici de ţ

acestor filtre sunt apoi combinare folosind blocul de sinteză Q(z) pentru a reconstrui pe întreaga bandă semnalul de ieşire [3].

Deoarece lăţimea fiecărei subbenzi este mai mică decât întreaga bandă, frecvenţa de eşantionare poate fi redusă şi în consecinţă filtrele adaptive sunt mai scurte în comparaţie cu cel din sistemul pe întreaga bandă. Acest fapt conduce la o semnificativă reducere a complexităţii calculului, chiar dacă structura este mai complicată. Pentru a uşura prelucrarea între blocurile de analiză şi sinteză pot fi introduse blocuri de micşorare (L↓) şi mărire (L↑) a frecvenţei de eşantionare.

Problema analizei se reduce la proiectarea unui singur filtru nerecursiv, pe fiecare bandă existând o varianta modulată a prototipului. Filtrele ideale au câştigul unitar şi fază nulă în banda de trecere, iar în banda de oprire câştigul este zero. Aceste condiţii nu pot fi respectate de filtrele nerecursive, care pot să fie proiectate astfel încât să aibă faza liniară, dar câştig neideal. Aceste aproximări conduc la efecte de aliere. Filtrul de sinteză este proiectat considerând blocurile analiză-sinteză ca un tot unitar.

Figura 8. Schema bloc a unui sistem adaptiv de identificare pe subbenzi

Pentru a nu avea erori de aliere, filtrele ar trebui sa aibă o lungime infinită, fapt imposibil de realizat în practică. Astfel proiectarea unui sistem de identificare pe subbenzi se realizează prin stabilirea unui compromis între eroarea reziduală şi costul prelucrării.

Ca algoritm de adaptare a fost considerat NLMS, iar ordinul filtrului a fost ales între N=64 şi N= 4 cu pas de 0.14. Simulările au fost realizate în Matlab-Simulink pentru circa 5000 eşantioane ale zgomotului Gaussian şi al semnalului armonic, respectiv 12*104 eşantioane pentru semnalul de vorbire. Acestor semnale le-a fost adăugate ecouri create de reverberatorul Schroeder I, care conţine 4 filtre pieptene în paralel şi 2 filtre trece-tot în serie. În Figura 9 a sunt prezentate modelele reverberatorului artificial şi cel al sistemului de identificare de bandă întreagă [3], [5].

a) b)

Figura 9. Modelul Simulink al unui sistem de identificare a) reverberatorul artificial şi sistemul pe bandă întreagă; b) sistemul pe 8 subbenzi

3

Page 6: SINTEZA LUCRĂRII Etapa unică 2009 - UTCluj · 2009-10-13 · care este scăzută din semnalul recepţionat. Filtrarea adaptivă este necesară pentru obinerea unei replici de ţ

Figura 10. Semnalul de eroare pentru sistemul : a) de bandă întreagă; b) pe 2 subbenzi; c) pe 4 subbenzi; d) pe

8 subbenzi.

0 2 4 6 8 10 12

x 104

-10

-8

-6

-4

-2

0

2

4

6

8

10Output error - Voice input (8 sub-bands filtering)

Samples

Am

plitu

de

0 2 4 6 8 10 12

x 104

-10

-8

-6

-4

-2

0

2

4

6

8

10Output error - Voice input (4 sub-bands filtering)

Samples

Am

plitu

de

0 2 4 6 8 10 12

x 104

-10

-8

-6

-4

-2

0

2

4

6

8

10Output error - Voice input (2 sub-bands filtering)

Samples

Am

plitu

de

0 2 4 6 8 10 12

x 104

-10

-8

-6

-4

-2

0

2

4

6

8

10Output error - Voice input (fullband filtering)

Samples

Am

plitu

de

0 1000 2000 3000 4000 5000-100

-50-40

0

30

50

100

Sampl

a) es

ER

LE (

dB)

ERLE - Voice input (fullband system)

0 1000 2000 3000 4000 5000-100

-50-40

0

30

50

100ERLE - Voice input (2 sub-bands)

Samples

ER

LE (

dB)

b)

0 1000 2000 3000 4000 5000-100

-50-40

0

30

50

100ERLE - Voice input (4 sub-bands)

Sa

mpl

c) es

ER

LE (

dB)

0 1000 2000 3000 4000 5000-100

-50-40

0

30

50

100ERLE - Voice input (8 sub-bands)

Samp

d) les

ER

LE (

dB)

Figura 11. ERLE pentru sistemul : a) de bandă întreagă; b) pe 2

subbenzi; c) pe 4 subbenzi; d) pe 8 subbenzi.

Pentru procedura de filtrare pe subbenzi au fost realizate sisteme de 2, 4 şi 8 subbenzi. În Fig. 6.b este reprezentat modelul pe 8 subbenzi. Separarea şi sinteza pe benzi este realizată pe 3 nivele. Lungimea filtrului adaptiv este de 64 pentru întreaga bandă, 16 pentru 2 subbenzi, 8 pentru 4 subbenzi şi doar de 4 pentru 8 subbenzi. În Figurile 10 a, b, c, d sunt reprezentate semnalele de eroare pentru 0, 2, 4, 8 subbenzi. Se poate observa că viteza de convergenţă creşte cu numărul de subbenzi, deşi ordinul filtrului adaptiv scade. În Fig. 11 a, b, c, d este reprezentată mărimea ERLE pentru 0, 2, 4, 8 subbenzi. Se poate observa că cel mai eficient sistem este cel de 8 subbenzi. Beneficiul adus de prelucrarea pe subbenzi este lungimea mai mică a filtrelor adaptive şi operarea lor în paralel, iar dezavantajul este că implementarea este mai dificilă şi apar efecte de aliere.

a)

b)

Figura 12 ERLE pentru 4 subbenzi având filtru Kaiser de ordin 64 şi filtru NLMS de ordin 256: a) sistem asimetric; b) sistem simetric

Pentru diminuarea efectului de aliere este importantă alegerea filtrelor din blocurile de analiză şi sinteză. S-au realizat simulări folosind diferite filtre având acelaşi ordin si aceeaşi frecvenţă de tăiere. Tipurile considerate au fost: Kaiser, Blackmann şi Hann. Cel mai bun filtru s-a dovedit a fi Kaiser. Un alt aspect studiat a fost alegerea structurii sistemului pe subbenzi: simetric – benzi egale de frecvenţă sau asimetric –

4

Page 7: SINTEZA LUCRĂRII Etapa unică 2009 - UTCluj · 2009-10-13 · care este scăzută din semnalul recepţionat. Filtrarea adaptivă este necesară pentru obinerea unei replici de ţ

benzi mai înguste la frecvenţe mai mici şi mai largi la frecvenţe mai înalte, raportul dintre lăţimea de bandă fiind puteri ale lui 2. Datorită faptului că semnalul acustic este mai bogat în componente spectrale de joasă frecvenţă structura asimetrică, unde la frecvenţe joase, benzile sunt mai înguste s-a dovedit a fi mai performantă (Figura 12) [4], [5].

3. Implementarea algoritmilor de reverberaţie sau/şi egalizare pe structuri FPGA Algoritmii de reverberaţie sau/şi egalizare consideraţi sunt bazaţi pe identificarea sistemului necunoscut

(încăperea acustică ideală) cu ajutorul unui filtru FIR. Implementarea unor algoritmi de reverberaţie artificială

Out11

LPF

InOut

Integer Delay3

-1Z

Integer Delay2

-1Z

Integer Delay1

-1Z

Integer Delay

-1Z

Input.

Input

Gain5-K-

Gain4

-K

Gain3-K-

Gain1

-1

Gain-K-

Double AP1

In Out

Add3

Add2Add1

Add

AP2

In Out

AP1

In Out

Figura 13. Schema Simulink a reverberatorului Gardner

Au fost considerate următoarele algoritme de reverberaţie artificială: Schroeder I, Schroeder II, Moorer şi Gardener. Pentru fiecare din algoritmii consideraţi au fost realizate implementări în Verilog, precedate de simulări în Simulink (Fig. 13). Semnalul de intrare a fost un impuls modelat în Matlab. Pentru implementarea Verilog datele de intrare furnizate de Matlab au fost transformate în fişiere specifice; datele au fost scalate cu 1024 [6].

Proiectarea celor 4 reverberatoare a implicat implementarea de filtre pieptene, trece-tot şi trece-jos cu toate componentele specifice de la nivelul regiştrilor. Semnalele globale au fost: ceasul ‚clk’ la 50 MHz şi reset ‚rst’, sistemul putând fi oprit în orice moment. Pentru verificarea sistemului proiectat, au fost proiectate module speciale, precum: un generator de ceas ‚clock generator’, un banc de testare ‚test bench’ (furnizează semnalul de intrare şi simulează diferitele situaţii, care pot apărea), un modul de ieşire ‚dump_out’ (preia semnalul de ieşire şi îl transformă într-un fişier de date .data) şi ‚top_level’ (instanţiază toate modulele). Compilarea şi simularea modulelor de test a fost vizualizată în mediul ModelSim. Implementările realizate pot fi încărcate pe orice tip de plăci FPGA. Pentru verificarea acurateţii implementării în Verilog s-au comparat răspunsurile la impuls ale celor două simulări (Fig. 14) şi s-a constatat perfecta asemănare dintre ele.

a)

Figura 14. Răspunsul la impuls al reverberatorului Gardener simulat in: a)

Simulink ; b) Verilog

5

Page 8: SINTEZA LUCRĂRII Etapa unică 2009 - UTCluj · 2009-10-13 · care este scăzută din semnalul recepţionat. Filtrarea adaptivă este necesară pentru obinerea unei replici de ţ

Implementarea HDL a algoritmilor LMS şi NLMS In Fig. 15 a) şi 16 a sunt prezentate implementările hardware ale unor filtre LMS, respectiv NLMS,

iar în Figurile 15 b şi 15 b semnalele de eroare ale hardware-ului implementat, plotate în Matlab prin intermediul unui mic program de afişare a ieşirilor din hardware. Implementările au fost realizate de ordin 4, iar în Fig. 15 b şi c semnalul de eroare aşa cum apare în ModelSim, respectiv prin plotarea lui în Matlab. Ambele filtre implementate sunt de ordinul 4, iar implementarea s-a realizat în Verilog HDL [7].

Implementarea noii structuri de filtru FIR

a)

b)

Figura 15 a) Implementarea Hardware a algoritmului LMS; b) semnalul de eroare plotat în Matlab

a)

b)

Figura 16 a) Implementarea Hardware a algoritmului NLMS; b) semnalul de eroare plotat în Matlab

Deoarece semnalele sonore au un spectru colorat, filtrele FIR necesare sunt de ordin mare, iar şi implementarea lor pe echipamente existente este de multe ori imposibilă. În consecinţă am dezvoltat o nouă structură de filtru FIR capabilă să aproximeze o funcţia de transfer FIR de ordin ridicat. Un filtru FIR este definit de ecuaţia:

, (3) 0

( ) ( )N

ii

y n h x n i=

= ⋅ −∑

unde y(n) este răspunsul filtrului, hi sunt coeficienţii filtrului, obţinuţi prin filtrare adaptivă, iar x(n) este semnalul sonor, care trebuie procesat [8].

Figura 17. Structura directă a unui filtru FIR

Considerăm forma directă de implementare pentru filtrul FIR, reprezentată în figura 17. Prin simpla inspecţie a acestei structuri se poate vedea că o structură FIR de ordin N necesită N-1 elemente de întârziere şi N-1 multiplicatoare cu o constantă. Toate elementele vor lucra la frecvenţa de eşantionare a semnalului acustic.

Noua structură FIR propusă este prezentată în Fig. 18. Eşantioanele semnalului sunt scrise într-o memorie („Sample memory”) de dimensiune N la frecvenţa fs = 44 kHz şi citite la o frecvenţa mai ridicată fp = 100 MH., Valoarea frecvenţei fs este dictată de semnalul acustic, iar cea a frecvenţei fp de circuitul FPGA, pe care se face implementarea. Aceasta înseamnă că între două eşantioane consecutive de intrare un număr de fp/fs eşantioane pot fi citite din memorie şi procesate. Coeficienţii filtrului vor fi stocaţi şi memoraţi într-o memorie separată (ROM). Fiecare eşantion este multiplicat cu coeficientul corespunzător, iar rezultatul este cumulat. După ce fp/fs eşantioane sunt procesate, acumulatorul livrează la ieşire rezultatul la frecvenţa de eşantionare. Un controller de dimensiuni mici supervizează acest proces.

Figura 18. Structura noului filtru FIR

6

Page 9: SINTEZA LUCRĂRII Etapa unică 2009 - UTCluj · 2009-10-13 · care este scăzută din semnalul recepţionat. Filtrarea adaptivă este necesară pentru obinerea unei replici de ţ

Ordinul filtrului FIR permis de această implementare este limitat superior de raportul dintre frecvenţa de citire şi frecvenţa de eşantionare. Controlerul va citi fiecare al L-lea eşantion, iar relaţia pentru semnalul de ieşire este:

/

0

( ) ( )N L

ii

y n c x n iL=

= ⋅ −∑ , (4)

unde ci sunt coeficienţii stocaţi în memoria ROM iar raportul N/L este egal cu valoarea trunchiată a raportului fp/fs .

Ţinând cont de raportul N/L şi presupunând că semnalul acustic este cuasi-invariant pe L eşantioane, răspunsul filtrului FIR din relaţia (3) poate fi rescris ca:

/

0 0( ) ( )

N L L

iL ji j

y n x n iL h += =

= − ⋅∑ ∑ . (5)

Pentru a măsura performanţa noului filtru, vom evalua eroarea introdusă: / / /

0 0 0 0 0( ) ( ) ( ) ( ) ( ) ( )

N L L N L N L L

iL j i iL j ii j i i j

e n y n y n x n iL h c x n iL x n iL h c+ += = = = =

⎛ ⎞= − = − ⋅ − ⋅ − = − ⋅ −⎜ ⎟

⎝ ⎠∑ ∑ ∑ ∑ ∑ . (6)

Pentru micşorarea erorii, coeficienţii ci ai noului filtru trebuie să fie calculaţi conform:

0

L

i iLj

c h j+=

=∑ . (7)

Implementarea acestui noi structuri a fost realizată pe FPGA. Placa selectată ML501 Virtex-5 Evaluation Platform are un audio codec AD1981B, compatibil cu AC’97, folosit atât pentru redare, cât şi pentru scriere si un XC5VLX50 FPGA cu memorie de 1728 kb dual-port BRAM (Block RAM). Sistemul din Figura 19 a fost implementat folosind mediul de proiectare Xilinx ISE 10.1

Figura 20 prezintă schema bloc a interfeţei AC’97. Aceasta permite comunicare în ambele sensuri între codec şi sistem. Frecvenţa maximă de transmisie şi recepţie este de 48 KHz. Codec-ul lucrează cu orice frecvenţă între 7 KHz şi 48 KHz cu incremenţi de 1 Hz. Fiind capabil de funcţionare în ambele sensuri, orice răspuns al sistemului poate fi măsurat şi reprezentat folosind audio codec-ul prin simpla aducere înapoi a ieşirii generate de codec. De aceea interfaţa AC’97 este configurată pentru înregistrare/redare continuă ale canalului line-in/line-out la frecvenţa de 44 kHz cu rezoluţie de 20 biţi. Memoria eşantioanelor este generată folosind Xilinx ISE Core Generator, care însoţeşte mediul ISE. Dimensiunea memoriei este de 44 Kcuvinte. În implementarea noastră un cuvânt este de 20 de biţi, datorită rezoluţiei convertoarelor A/D şi D/A din codec. Dimensiunea memoriei permite stocarea unei secunde din semnalul de intrare şi deci lungimea memoriei este N = 44000. Ştiind că raportul N/L egalează fp/fs, rezultă ca valoarea lui L este 38 [8].

BITCLK

SYNC

RESET

SDATA IN

SDATA OUT

PCM_IN_L

PCM_IN_R

SLOT_VALID

SLOT_REQ

ADDR_OUT

DATA_OUT

DONE

TAG_IN

ID

RNW

DATA_WR

PCM_OUT_L

PCM_OUT_R

LOAD

SHIFTREG IN 95 94 …… 0

0 1 …… 95SHIFTREG OUT

STC State machine

0000… SHIFTREG IN

Figura 19. Sistemul implementat pe FPGA

Figura 20. Schema bloc a interfeţei AC’97

Figura 21 a prezintă răspunsul la impuls al unei încăperi. Măsurătorile aferente acestui răspuns s-au realizat la frecvenţa de eşantionare de 44 kHz pe o durată de 1 secundă. Răspunsul la impuls al sistemului implementat este prezentat în Fig. 21 b. Comparând cele două răspunsuri se poate observa că ele sunt

7

Page 10: SINTEZA LUCRĂRII Etapa unică 2009 - UTCluj · 2009-10-13 · care este scăzută din semnalul recepţionat. Filtrarea adaptivă este necesară pentru obinerea unei replici de ţ

aproape identice. Răspunsul sistemului implementat este mai zgomotos decât cel al sistemului dorit. Acest fapt se datorează simplificărilor care au apărut în numărul de coeficienţi.

a) b)

Figura 21. a) Răspunsul la impuls al unei încăperi; b) răspunsul la impuls al noului filtru FIR

Noul filtru FIR ocupă circa 77% din capacitatea plăcii, iar în varianta tradiţională filtrul FIR nu ar fi putut fi implementat.

4. Determinarea funcţiei plenacustice pentru o încăpere Compararea timpului de reverberaţie măsurat în încăperea reală cu timpul de reverberaţie al încăperii modelate

Pentru măsurarea timpului de reverberaţie (şi implicit a celorlalţi parametrii acustici) al încăperii au fost utilizate două incinte acustice suprapuse (incinta de jos - pentru redarea başilor, iar cea de sus pentru redarea sunetelor medii şi înalte) şi un microfon portabil cardioidă (dB VH 210). A fost determinat răspunsul la impuls al încăperii, folosind două tipuri de semnale de excitaţie: swept sine şi impuls (baloane). Modelarea încăperii s-a realizat cu ajutorul programului CARACAD. Figura 22 prezintă imagini din încăperea reală [9].

Pentru determinarea timpului de reverberaţie au fost efectuate măsurători cu ajutorul sonometrului digital HD 2010. Încăperea a fost împărţită pe 17 rânduri, pe 15 rânduri făcându-se câte 5 măsurători pe rând, iar pe 2 rânduri câte 4 măsurători, valorile fiind mediate (Fig. 23). Măsurătorile au fost făcute cu ajutorul programului Dirac, răspunsul la impuls fiind generat sub forma unor fişiere de sunet wav. Aceste fişiere au fost prelucrate cu programele Dirac şi Winmls. Tabelul 1 prezintă timpii de reverberaţie măsuraţi cu ajutorul diferitelor surse de excitaţie (swept sine şi impulsive sources), precum şi estimarea acestora cu ajutorul programelor amintite şi rezultatele simulării în CARACAD. În acest ultim caz, timpii de reverberaţie au fost determinaţi folosind relaţiile lui Eyring şi Kutruff.

b)a) Figura 22. Imaginea încăperii reale; a) vedere dinspre scenă; b) Vedere cor.

8

Page 11: SINTEZA LUCRĂRII Etapa unică 2009 - UTCluj · 2009-10-13 · care este scăzută din semnalul recepţionat. Filtrarea adaptivă este necesară pentru obinerea unei replici de ţ

Figura 23. Punctele în care au fost făcute măsurători pentru determinarea timpului de reverberaţie

Tabelul 1. Valorile măsurate şi simulate ale timpilor de reverberaţie

Frecvenţa 125 250 500 1000 2000 4000 8000 Valorile medii măsurate ale RT folosind o sursă ‘liniar sweep sine’ - WINMLS 1.69 1.94 2.14 2.06 1.95 1.63 1.26

Valorile medii măsurate ale RT folosind o sursă ‘liniar sweep sine’- Dirac 1.67 1.93 2.12 2.04 1.94 1.60 1.17

Valorile medii măsurate ale RT folosind o sursă de impuls - WINMLS 1.77 1.98 2.22 2.17 1.96 1.68 1.29

Valorile medii măsurate ale RT folosind o sursă ‘de impuls - Dirac 1.71 1.97 2.21 2.16 1.96 1.68 1.28

CARACAD RT - Eyring 2.22 2.46 2.48 2.23 1.93 1.64 1.03 CARACAD RT - Kutruff 2.18 2.40 2.41 2.16 1.86 1.59 1.01

Figurile 24 şi 25 prezintă o comparaţie între timpii de reverberaţie măsuraţi şi simulaţi. Diferenţe considerabile nu există între prelucrarea măsurătorilor cu cele două programe (Dirac şi Winmls). Diferenţe mai mari există între varianta măsurată şi cea modelată sub frecvenţa de 500 Hz. Peste această valoare nu există diferenţe considerabile. Neconcordanţa valorilor provine din faptul că: - nu s-a putut realiza modelarea diferitelor obiecte din încăpere (candelabre, diferite modele ornamentale); - nu au putut fi modelate obiectele rotunde, ele au fost aproximate cu hexagoane (unde era posibil); - neconcordanţa coeficienţilor de absorbţie a diferitelor materiale aflate în biblioteca programului, cu materialele reale.

Reverberation time evaluation

0.00

0.50

1.00

1.50

2.00

2.50

3.00

125 250 500 1000 2000 4000 8000

Frequency (Hz)

Reve

rber

atio

n tim

e (s

)

measured mean valuesfor RT using a liniar sweepsine generator - WINMLSmeasured mean valuesfor RT using a liniar sweepsine generator - Diracmeasured mean valuesfor RT using an impulsivesource - WINMLSmeasured mean valuesfor RT using an impulsivesource - DiracCARACAD RT - Eyring

CARACAD RT - Kutruff

Figura 24. Timpii de reverberaţie măsuraţi şi simulaţi

Reverberation time evaluation

0.00

0.50

1.00

1.50

2.00

2.50

3.00

125 250 500 1000 2000 4000 8000

Frequency (Hz)

Reve

rber

atio

n tim

e (s

)

measured mean valuesfor RT using a liniarsweep sine generator -WINMLSmeasured mean valuesfor RT using a liniarsweep sine generator -Diracmeasured mean valuesfor RT using animpulsive source -WINMLSmeasured mean valuesfor RT using animpulsive source -DiracCARACAD RT - Eyring

Figura 25. Timpii de reverberaţie măsuraţi şi simulaţi

9

Page 12: SINTEZA LUCRĂRII Etapa unică 2009 - UTCluj · 2009-10-13 · care este scăzută din semnalul recepţionat. Filtrarea adaptivă este necesară pentru obinerea unei replici de ţ

Funcţia plenacustică

Se va evalua funcţia plenacustică de-a lungul unei linii drepte din încăperea studiată. Vor fi comparate rezultatele măsurătorilor cu simulările făcute pe încăperea modelată cu ajutorul programului CARACAD. Figura 26 prezintă amplasarea sursei şi ascultătorilor (microfoane).

Figura 27 prezintă funcţia plenacustică în timp. Axa x reprezintă axa spaţiului, axa y fiind axa timpului iar axa z reprezintă axa valorii răspunsului la impuls în dB. Spaţiul corespunde poziţiei ascultătorului (a microfonului), iar timpul este durata răspunsului la impuls. Studiul funcţiei plenacustice s-a realizat pe o linie a încăperii. Pe această linie au fost preluate 60 de eşantioane, adică a fost înregistrat răspunsul la impuls sub forma fişierelor wav în 60 de locaţii ale liniei, distanţa dintre locaţii fiind de 10 cm (eşantionare spaţială). Frecvenţa de eşantionare a răspunsului la impuls este de 44 100Hz (eşantionare în timp).

Atunci când funcţia plenacustică este eşantionată se produc repetiţii ale spectrului de-a lungul axei temporale şi spaţiale. Având o anumită distanţă de eşantionare d, frecvenţa maximă f neafectată de efectul de aliere poate fi calculată folosind relaţia:

2cfd

=⋅

, (8)

unde c reprezintă viteza sunetului în aer. Înlocuind datele noastre, reiese faptul că frecvenţa maximă care nu este afectată de efectul de aliere este 1700Hz.

Efectuând transformata Fourier bidimensională (2D-FT) a funcţiei plenacustice obţinem Figura 28. Se poate observa forma triunghiulară a transformatei Fourier a funcţiei plenacustice. Vârful triunghiului indică frecvenţa maximă neafectată de efectul de aliere. Atât în cazul simulării, cât şi în cazul măsurătorilor obţinem acelaşi rezultat ca şi cel calculat (aproximativ 1700Hz). Diferenţele care apar între modelul simulat şi măsurători se datorează: - simplificării formei încăperii pentru a creşte viteza de execuţie a simulărilor; - zgomotului din măsurători.

3.15

m

6m

300c

m

600cm

Figura 26. Amplasarea sursei şi a ascultătorilor în vederea determinării funcţiei plenacustice

b) a)

Figura 27. Funcţia plenacustică obţinută de-a lungul unei linii din încăpere prin: a) simulare; b) măsurători

10

Page 13: SINTEZA LUCRĂRII Etapa unică 2009 - UTCluj · 2009-10-13 · care este scăzută din semnalul recepţionat. Filtrarea adaptivă este necesară pentru obinerea unei replici de ţ

b) a)

Figura 28. Transformata Fourier bidimensională a funcţiei plenacustice obţinută prin: a) simulare; b) măsurători.

Referinţe [1] Ioana Homănă, Marina Dana Ţopa, Botond Sandor Kirei, “Echo Cancelling Using Adaptive

Algorithms”, International Symposium for Design and Technology of Electronics Packages SIITME (indexată Scopus), 16-20 September, 2009, Gyula, Hungary, acceptată pentru prezentare.

[2] Ioana Homană, Marina Ţopa, “Variable stepsize NLMS algorithm for echo cancelling”, Novice Insights, 2009, acceptată pentru publicare.

[3] Irina Dornean, Marina Ţopa, Botond Sandor Kirei, Marius Neag, “Sub-Band Adaptive Filtering for Acoustic Echo Cancellation”, Proceedings of the European Conference on Circuit Theory and Design ECCTD 2009 (indexată IEEE), 23-27 August, 2009, Antalya, Turkey, on CD (C3L-D-3).

[4] Ecaterina Arvai, Marina Ţopa, „Echo Cancellation Using Sub-Band Adaptive Filtering, Novice Insights, 2009, acceptată pentru publicare.

[5] Marina Dana Ţopa, Irina Mureşan (Dornean), Ioana Homănă, Botond Sandor Kirei, “Digital Adaptive Echo-Canceller for Room’s Acoustics Improvement”, trimisă la Advances in Electrical and Computer Engineering (ISI), ISSN: 1582-7445..

[6] Irina Dornean, Marina Ţopa, Botond Sandor Kirei, “Digital Implementation of Artificial Reverberation Algorithms”, Acta Tehnica Napocensis - Electronics and Telecommunications (indexată în TRD, Metadex, GoogleScholar, etc.), ISSN 1221-6542, Volume 49, Number 4, pp.1-4, 2008.

[7] I. Dornean, Marina Ţopa, B. S. Kirei, G. Oltean, “HDL Implementation of the Variable Step Size N-LMS Adaptive Algorithm”, Proceedings of the 2008 IEEE International Conference on Automation, Quality and Testing (AQTR 2008) (indexată IEEE), ISBN 978-1-4244-2576-1, May 22-25, 2008, Cluj-Napoca, Romania, pp.243-246.

[8] Botond Sandor Kirei, Marina Dana Topa, Albert Csaba Fazakas, Norbert Toma, “Novel FIR Implementation for Acoustic Signal Processing”, International Symposium for Design and Technology of Electronics Packages SIITME (indexată Scopus), 16-20 September, 2009, Gyula, Hungary, acceptată pentru prezentare.

[9] Norbert Toma, Marina Ţopa, Irina Mureşan, Botond Sandor Kirei, Marius Neag, Albert Fazakas, “Acoustic Modelling and Optimization of a Room”, Acta Tehnica Napocensis - Electronics and Telecommunications (indexată în TRD, metadex, GoogleScholar, etc.), ISSN 1221-6542, Volume 50, Number 2, pp. 25-30, 2009.

11