Forskjellen mellom konvolusjon og kryss-korrelasjon fra et signalanalysesynspunkt
On februar 12, 2021 by adminJeg prøver å forstå forskjellen mellom konvolusjon og krysskorrelasjon. Jeg har lest et forstått Dette svaret. Jeg forstår også bildet nedenfor.
Men når det gjelder signalbehandling, (et felt som jeg ikke vet noe om ..), Gitt to signaler (eller kanskje et signal og et filter?), Når skal vi bruke konvolusjon og når skal vi foretrekker å bruke krysskorrelasjon, jeg mener, når vi i det virkelige liv analyserer, vil vi foretrekke konvolusjon, og når, krysskorrelasjon. bruk?
* Tverrkorrelasjonen her skal lese g*f
i stedet for f*g
Svar
I signalbehandling er to problemer vanlige:
-
Hva er utdataene til dette filteret når det er $ x (t) $? Svaret er gitt av $ x (t) \ ast h (t) $, hvor $ h (t) $ er et signal kalt «impulsrespons» av filteret, og $ \ ast $ er konvolusjonsoperasjonen.
-
Gitt et støyende signal $ y (t) $, er signalet $ x (t) $ på en eller annen måte til stede i $ y (t) $? Med andre ord, er $ y (t) $ av formen $ x (t) + n (t) $, hvor $ n (t) $ er støy? Svaret finner du ved korrelasjonen mellom $ y (t) $ og $ x (t) $. Hvis korrelasjonen er stor for en gitt tidsforsinkelse $ \ tau $, kan vi være trygge på å si at svaret er ja.
Merk at når de involverte signalene er symmetrisk, konvolusjon og krysskorrelasjon blir den samme operasjonen; denne saken er også veldig vanlig i noen områder av DSP.
Kommentarer
- Har det. Tusen takk for ditt klare og lyse svar!
- Det jeg liker med impulsresponsforklaringen er at du virkelig får en intuisjon hvorfor konvolusjon er » reversert «. I diskrete termer er strømutgangen gjeldende inngang x impulsrespons på tiden 0 + restutgang fra tidligere innganger impulsresponser (skriv inn en n-1 * impuls 1 + inngang n-2 * impuls 2 og så videre).
- @ Jean-FredericPLANTE ja, at ‘ er en god måte å forklare det på.
- Dette svaret med @ Jean-FredericPLANTE-kommentar gjør det mer fornuftig.
Svar
De to begrepene konvolusjon og krysskorrelasjon er implementert på en veldig lignende måte i DSP.
Hvilken du bruker, avhenger av applikasjonen.
Hvis du utfører en lineær, tidsvariabel filtreringsoperasjon, onvolverer du signalet med systemets impuls respons.
Hvis du «måler likheten» mellom to signaler, så krysskorrelerer du dem .
De to begrepene kommer sammen når du prøver å produsere a matchet filter .
Her prøver du å bestemme om et gitt signal, $ s [n] $ inneholder en kjent «puls» (signal), $ p [n] $. En måte å gjøre det på er å samle det gitte signalet, $ s $ med tidsreversjonen av den kjente pulsen, $ p $: du bruker nå konvolusjon til å utføre krysskorrelasjonen av det gitte signalet med den kjente pulsen.
En sidemerknad
Begrepet «krysskorrelasjon» misbrukes (for noen) innen DSP-feltet.
For statistikere er en korrelasjon en verdi som måler hvor nær to variabler er og bør være mellom $ -1 $ og $ + 1 $.
Som du kan se fra Wikipedia-oppføringen om krysskorrelasjon , brukes DSP-versjonen og de sier:
krysskorrelasjon er et mål på likhet mellom to serier som en funksjon av lagret til den ene i forhold til den andre.
Problemet med DSP-definisjonen: $$ \ sum _ {\ forall m} x [n] y [n + m] $$ er at dette «likhetstiltaket» avhenger av energien i hvert signal.
Kommentarer
- Dette er veldig nyttig for meg. Takk!
Svar
@MathBgu Jeg har lest alle ovennevnte svar, alle er veldig informative en ting Jeg vil legge til for din bedre forståelse, ved å vurdere formelen for konvolusjon som følger
$$ f (x) * g (x) = \ int \ limits_ {- \ infty} ^ {\ infty} f (\ tau) g (x- \ tau) \, d \ tau $$
og for krysskorrelasjonen
$$ (f \ star g) (t) \ stackrel {\ text {def}} {=} \ int \ limits _ {- \ infty} ^ {\ infty} f ^ * (\ tau) g (t + \ tau) \, d \ tau, $$
vi kommer til å vite at ligningsmessig er den eneste forskjellen at i konvolusjon før vi gjør glidende prikkprodukt vipper vi signalet over y-aksen i.e endrer vi $ (t) $ til $ (- t) $ , mens krysskorrelasjonen bare er det glidende prikkproduktet av to signaler.
Vi bruker konvolusjonen for å få utgang / resultat av et system som har to blokker / signaler, og de er rett ved siden av hverandre (i serie) i tidsdomenet.
Kommentarer
- Takk for at du nevnte dette tilleggs ryddende punktet!
- Betyr * i f * komplisert konjugert? I stedet for » over y-aksen «, bør du vurdere » snu tidsaksen «, fordi flip føles som noe vertikalt skjer, spesielt når man nevner y-aksen.
Svar
I signalbehandling utføres konvolusjonen for å oppnå utgangen av et LTI-system. Korrelasjonen (automatisk eller kryss korrelasjon) beregnes vanligvis for å bli brukt senere for å gjøre noen andre beregninger.
Du må være forsiktig så du ikke forveksler korrelasjon, kovarians og korrelasjonskoeffisient. Korrelasjonen trenger ikke nødvendigvis å være mellom -1 og 1. Korrelasjonskoeffisienten ( https://en.wikipedia.org/wiki/Pearson_product-moment_correlation_coefficient ) faller mellom – 1 og 1 fordi det skaleres av de to tilfeldige variablene. Det vi må huske er at den virkelige operasjonen som skal gjøres i statistisk signalbehandling for å analysere hvor relaterte to tilfeldige variabler er «Kovariansen», ikke korrelasjonen. Men for de fleste applikasjoner der et signal blir fanget opp av en sensor og omdannet til en spenning og digitalisert med en ADC, kan du anta at signalet er null gjennomsnitt, derfor er korrelasjonen lik kovariansen.
Kommentarer
- Jeg ser litt på den lenken. Takk!
Svar
Det er mye subtilitet mellom betydningen av konvolusjon og korrelasjon. Begge tilhører den bredere ideen om indre produkter og projeksjoner i lineær algebra, dvs. projisere en vektor på en annen for å bestemme hvor «sterk» den er i retning av sistnevnte.
Denne ideen strekker seg inn i feltet av nevrale nettverk, der vi projiserer et dataeksempel på hver rad i en matrise, for å bestemme hvor godt den «passer» den raden. Hver rad representerer en bestemt klasse objekter. For eksempel kan hver rad klassifisere en bokstav i alfabetet for håndskriftgjenkjenning. Det er vanlig å referere til hver rad som et nevron, men det kan også kalles et matchet filter.
I det vesentlige måler vi hvor like to ting er, eller prøver å finne en bestemt funksjon. i noe, f.eks et signal eller et bilde. Når du for eksempel samler et signal med et båndpassfilter, prøver du å finne ut hvilket innhold det har i det båndet. Når du korrelerer et signal med en sinusformet, f.eks. DFT, leter du etter styrken til sinusformet frekvens i signalet. Merk at i sistnevnte tilfelle glir ikke korrelasjonen, men du «korrelerer» fortsatt to ting. Du bruker et indre produkt til å projisere signalet på sinusformet.
Så hva er forskjellen? Vel, tenk at signalet er bakover i forhold til filteret ved vikling. Med et tidsvarierende signal har dette den effekten at dataene er korrelert i for at den skal inn i filteret. For et øyeblikk, la oss definere korrelasjon som et punktprodukt, dvs. projisere en ting på en annen. Så i begynnelsen korrelerer vi den første delen av signalet med den første delen av filteret. Når signalet fortsetter gjennom filteret, blir korrelasjonen mer fullstendig. Merk at hvert element i signalet bare multipliseres med elementet i filteret det «berører» på det tidspunktet.
Så da, med konvolusjon, korrelerer vi på en måte, men vi prøver også å bevare rekkefølgen i tide som endringer skjer når signalet samhandler med systemet. Hvis filteret er symmetrisk, som det ofte er, spiller det imidlertid ingen rolle. Konvolusjon og korrelasjon vil gi de samme resultatene.
Med korrelasjon sammenligner vi bare to signaler, og ikke prøver for å bevare en rekkefølge av hendelser. For å sammenligne dem ønsker vi at de vender i samme retning, dvs. å stille opp. Vi skyver det ene signalet over det andre slik at vi kan teste deres likhet i hvert tidsvindu, i tilfelle de «er ute av fase med hverandre eller vi ser etter et mindre signal i et større.
I bildebehandling er ting litt annerledes. Vi bryr oss ikke om tid. Convolusjon har fremdeles noen nyttige matematiske egenskaper , men hvis du prøver å matche deler av et større bilde til et mindre (dvs. matchet filtrering), vil du ikke snu den for da vil ikke funksjonene stilles opp. Med mindre filteret selvfølgelig er symmetrisk.I bildebehandling brukes korrelasjon og konvolusjon noen ganger om hverandre, spesielt med nevrale nett . Tydeligvis er tiden fremdeles relevant hvis bildet er en abstrakt representasjon av 2-dimensjonale data, der en dimensjon er tid – f.eks. spektrogram.
Så i sammendrag er både korrelasjon og konvolusjon glidende indre produkter, som brukes til å projisere en ting på en annen ettersom de varierer over tid eller tid. Konvolusjon brukes når ordre er viktig, og brukes vanligvis til å transformere dataene. Korrelasjon brukes vanligvis til å finne en mindre ting inne i en større ting, dvs. å matche. Hvis minst en av de to «tingene» er symmetrisk, spiller det ingen rolle hva du bruker.
Svar
Hold signalbehandling til side, hvis du bare prøver å forstå hva som skjer i Convolution og Correlation, er begge veldig like operasjoner. Den eneste forskjellen er i Convolution, en av variablene er invertert (snudd) før du utfører akkumuleringen av produktet. Se at jeg ikke bruker ordet signal noe sted over. Jeg snakker bare når det gjelder operasjonene som er utført.
Nå, la oss komme til signalbehandling.
Konvolusjonsoperasjon brukes til å beregne utgangen fra et Linear Time Invariant System (LTI-system) gitt en inngangssingal ( x ) og impulsrespons fra systemet ( h div For å forstå hvorfor bare konvolusjonsoperasjon brukes til å få utdata fra et LTI-system , det er stor avledning. Vennligst finn avledningen her.
http://www.rctn.org/bruno/npb163/lti-conv/lti-convolution.html
Korrelasjonsoperasjon brukes for å finne likheten mellom de to signalene x og y. Mer verdien av korrelasjon, mer er likheten mellom de to signalene.
Forstå forskjellen her,
-
Konvolusjon -> mellom signal og et system (filter)
-
Korrelasjon -> mellom to signaler
Så, fra signalanalysesynspunkt, brukes ikke konvolusjonsoperasjon . Bare korrelasjon brukes fra signalanalysesynspunkt. Mens konvolusjon brukes fra systemanalysesynspunkt.
Den beste måten å forstå operasjonene av konvolusjon og korrelasjon er å forstå hva som skjer når to konvolusjon og korrelasjon gjøres mellom to kontinuerlige variabler som vist i diagrammene i spørsmålet.
Legg igjen en kommentar