Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Konvolúcie dvoch časových signálov v prostredí MATLAB

MATLAB je softvér pre inžinierske simulácie , spracovanie signálu , matematické operácie a analýzu dát . Konvolúcie je matematická operácia , ktorá sa mieša dve funkcie dohromady . MATLAB poskytuje metódy pre convolving dva časové signály v čase alebo frekvenčnej doméne . Môžete použiť vstavané funkcie pre Convolve časových signálov v Matabi , alebo napísať svoj ​​vlastný kód , ktoré vám pomôžu pochopiť fungovanie konvolúcie . Konvolúcie

operácia konvolúcie je definovaná ako integrálna , alebo v jednotlivých prípadoch , súčet , v rozsahu funkcia f ( t ) * g ( tT ) , pokiaľ ide o T. Pri pohybe po rad funkcie f , každý bod sa vynásobí druhej funkcie g V časovej oblasti , konvolúcia je výpočet intenzívnu prevádzku , ale po transformácii do frekvenčnej oblasti pomocou Fourierovej transformácie , konvolúcia zjednodušuje na násobenie
Vstavaný Funkcia
.

" conv ( ) " , alebo dvoch - dimenzionální variant " conv2 ( ) , " funkcie možno ľahko a efektívne zvinúť sa signály v prostredí MATLAB . Bežne sa predpokladá , že signály sú v časovo alebo priestorovo doméne , na rozdiel od frekvenčnej oblasti . Prvé dva argumenty sú dva signály , ktoré majú byť konvolvovaného , alebo signálu a filter . Tretí argument je tvar argument , ktorý určuje veľkosť výstupu . Platné voľby sú " plná " , " rovnaký" alebo " platný "

mixed_signal = conv ( SIGNAL1 , SIGNAL2 , " rovnaký " ) . New_image = conv2 ( image1 , image2 , " full ' ) ; .
Time - Domain

Hoci prevedení konvolúcie v časovej doméne , môže byť užitočné pochopiť , ako operácia konvolúcie práce

% pre dva 1 - D signály , f a gmy_length = dĺžka ( f ) + dĺžka ( g ) - 1 ; výsledok = nuly ( my_length , 1 ) ;

pre i = 1 : my_lengthfor j = 1 : dĺžka ( f ) v prípade , ( ( i - j +1 ) > 0 && ( i - j +1 ) < dĺžka ( g ) ) , výsledok ( i ) = f ( j ) * g ( i - j +1 ) ; endendend
Frequency - Domain

signály Time - domény môžu byť transformované do frekvenčnej oblasti pomocou Fourierovej transformácie . MATLAB implementuje rýchla Fourierova transformácia v " FFT ) ( " funkcia . Vo frekvenčnej doméne , dva signály môžu byť zmiešané s použitím point - múdry násobenie pomocou operátora celým

% pre dva signály , f a GF = fft ( f ) " * . " . G = fft ( g ) , u = F * G ; . u = ifftshift ( IFFT ( u ) ) ;

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené