Eining 3 / 12

Merkjavinnsla: Síur, sýnatöku og tíðnigreining

Hagnaður:

  • Hæfni til að smíða og beita sýnatöku, Nyquist og samheiti með AI stuðningi á réttan hátt
  • Geta til að þýða FFT, síuhönnun og gluggaskref í drög að kóða og útreikningum með gervigreind
  • Geta til að sannreyna merkjavinnsluniðurstöður framleiddar af gervigreind með viðmiðunarmerki, einingastjórnun og mælingu

Merkjavinnsla er hjarta rafeinda- og fjarskiptaverkfræðinnar: listin að taka spennubylgju, hljóðupptöku, skynjaralestur eða útvarpsmerki og draga út upplýsingarnar í þeim, hreinsa upp hávaða hennar og umbreyta þeim. Í þessari einingu muntu sjá hvernig á að nota gervigreind til að læra merkjavinnsluhugtök, smíða síu- og umbreytingarútreikninga og framkvæma greiningu með Python kóða. En viðvörun frá upphafi: lítil hugmyndavilla í merkjavinnslu (röng sýnatökutíðni, sleppt gluggum, truflunareining) mun skekkja niðurstöðuna algjörlega og hljóðlaust; Grafið lítur enn vel út, en það er rangt. Þess vegna er mikilvægt að prófa allar niðurstöður sem gervigreindin framleiðir gegn þekktu viðmiðunarmerki og einingastýringu.

Sýnataka og Nyquist: þar sem allt byrjar

Til að vinna hliðrænt merki (samfelld bylgja) í tölvu mælum við það með ákveðnu millibili og umbreytum í tölu; Þetta er kallað sýnataka. Það er sýnatökutíðnin (fs, eining Hz) hversu mörg sýni við tökum á sekúndu. Nyquist viðmiðunin segir að til að endurheimta merki nákvæmlega þarf sýnatökutíðnin að vera að minnsta kosti tvöfalt hæsta tíðnin í merkinu. Ef þetta skilyrði er ekki uppfyllt, byrja há tíðni að líta út eins og lág tíðni; Þetta er kallað aliasing og gögnin eru varanlega skemmd vegna þess að þú getur ekki greint á milli þessara tveggja aðstæðna.

AI útskýrir þetta hugtak mjög vel og getur sýnt það með dæmum. En þú ákveður þegar þú velur sýnatökutíðni þína: hver er raunveruleg bandbreidd merksins þíns, ertu með hliðræna síu með hliðstæðum hliðstæðum, hvaða hraða virkar ADC (Analog-Digital Converter: flísinn sem breytir hliðrænu merkinu í tölu) í raun og veru. AI gæti „stungið upp á“ sýnatökutíðni, en þessi tillaga er ágiskun án þess að mæla raunverulegt litróf merksins þíns.

Ábending: Þegar þú spyrð gervigreindarspurningar skaltu tilgreina hæstu tíðni og bandbreidd merkis þíns sjálfur. "Ef hæsti hluti merkisins míns er ~4 kHz, hvernig ætti ég að velja fs og hvar ætti ég að setja anti-aliasing síuna?" eins og. Ekki láta gervigreindina giska á litrófið; mæla.

FFT og tíðnigreining

FFT (Fast Fourier Transform) er hröð reiknirit sem breytir merki frá tímaás yfir í tíðniás. Svo "hvaða tíðnir eru í þessu merki og með hversu miklu afli?" svarar spurningunni. AI gerir mjög vel hvernig á að innleiða FFT, túlka niðurstöður og skrifa Python kóða (numpy/scipy). En það eru algengar villur í FFT og gervigreindarkóði getur hljóðlaust innihaldið þær:

  • Stærð tíðniáss: Tíðniás FFT úttaksins fer eftir sýnatökutíðni. Ef fs er rangt slegið inn eru allar tíðnir rangt gefnar út en grafið virðist eðlilegt.
  • Glugga: Þegar endanlegt merki er tekið á móti kemur ósamfella fram við brúnirnar og sýndardreifing (rófleki) sést í litrófinu. Gluggar eins og Hann og Hamming draga úr þessu. Ef gervigreindarkóði sleppir að glugga, verður niðurstaðan villandi.
  • Amplitude normalization: Kvarða og gluggaleiðrétting er nauðsynleg til að umbreyta amplitude FFT úttaksins í raunverulegt líkamlegt gildi. Ef því er sleppt verða amplitudurnar rangar.

síu hönnun

Sía er hringrás eða reiknirit sem dregur út óæskilega tíðni úr merki. Það eru fjórar grunngerðir: lágpass (hleypir lágtíðni), hápass, bandpass og bandpass (hak). Það eru tvær stórar fjölskyldur af stafrænum síum: FIR (endanlegt höggsvörun, stöðugt og línulegt fas) og IIR (óendanlegt höggsvörun, brött umskipti með minni útreikningum en stöðugleika og fasaáhættu).

AI útskýrir hönnunarþrep síu (cutoff tíðni, passband, stöðvunarbandsdempun, pöntunarval) og skrifar kóða sem mynda stuðul með scipy. En skerðingartíðni síunnar sem þú hannar er gefin eðlileg (miðað við Nyquist tíðnina), og að slá inn fs rangt hér eru mjög algeng mistök. Að auki getur stöðugleiki og fasabjögun verið vandamál í IIR síum og leynd getur verið vandamál í rauntímakerfum. Vertu viss um að sannreyna gervigreindarsíuna með tíðnisvarsgrafi og þekktu prófunarmerki.

þrjú smámál

Tilvik 1 — Skarast titringur. Verkfræðingur tekur sýnishorn af titringi mótor við 1 kHz og sér sterkan topp í FFT við 300 Hz. Þessi toppur, sem passar ekki við hönnun vélarinnar, er ruglingslegur. Það er í raun raunverulegur hluti í vélinni í kringum 1300 Hz; 1 kHz sýnataka er ófullnægjandi fyrir þetta (Nyquist 500 Hz) og 1300 Hz skarast 300 Hz. Eftir að hafa rætt við gervigreindina „hvort þessi toppur sé raunverulegur eða samheiti“ og aukið sýnatökutíðnina í 5 kHz birtist toppurinn á réttum stað við 1300 Hz. Lexía: á vafasömum hæð, fyrsta spurningin um sýnatöku.

Mál 2 - Sleppt glugga. Nemi biður um FFT kóða frá gervigreindinni og framkvæmir hann. Hann býst við einum tíðniprófstóni en sér breitt yfir litrófið. Vandamálið er að kóðinn gerir ekki windowing (rófleka). Segðu gervigreindinni „bæta við Hann glugganum og beita amplitude leiðréttingu“ og framleiðslan fer aftur í væntan skarpan hámark. Lexía: Prófaðu FFT kóðann með þekktu eintíðnimerki; Athugaðu gluggann ef það er leki.

Mál 3 — Rangt fs. Verkfræðingur greinir gögnin úr upptökutækinu. Tækið tók upp á 48 kHz, en sjálfgefið 44,1 kHz var slegið inn í gervigreindarkóða. Allar tíðnir eru færðar um 8%; 1000 Hz tónn birtist við 1088 Hz. Villa finnst þegar raunverulegt fs mælitækisins er athugað. Lexía: sýnatökutíðni er eina mikilvægasta talan í greiningarkeðjunni; verður að vera staðfest frá uppruna.

Afritanleg hvetja sniðmát

FFT SETUP TEMPLATE"Skrifaðu FFT greiningarkóða í Python (numpy/scipy). Inntak: samplingfrequency fs=[gildi] Hz, merkjastrengur 'x'. Láttu kóðann gera EFTIRFARANDI: (1) Notaðu Hann gluggann, (2) Fáðu FFT, (3) mælikvarða nákvæmlega tíðniás, flitröð ás-ás (4) leiðréttingu Í hverju skrefi kóðans "Vinsamlegast tilgreinið í athugasemdarlínunni hvaða forsendur þú ert að gera svo ég geti staðfest það."

STJÓRNMÁTTAÐA STYRKJA „Hæsta marktæka tíðni merkis míns er um það bil [X] Hz. Útskýrðu Nyquist-bilið, þörfina fyrir and-aliasing síu og hagnýt öryggismörk þegar þú velur sýnatökutíðni. Leggðu til svið en leggðu áherslu á að ég ætti að sannreyna þetta með því að mæla hið sanna litróf merkisins.“

SÍUHÖNNUN Sniðmát "Hannaðu [low/high/band] pass digital filter with scipy. Cutoff frequency [X] Hz, sampling frequency fs=[Y] Hz. Berðu saman FIR og IIR valkosti (stöðugleika, fasa, seinkun, reikniálag). Sýndu greinilega í kóðanum hvernig cutoff tíðnin er stöðluð með síu við tíðnina. línurit."

NIÐURSTAÐASTAÐMIÐ "Skoðaðu merkjavinnslukóðann hér að neðan og merktu uppsprettur hljóðlausra villna: rangt fs, gluggun sem var sleppt, einingarvíxlun (Hz/kHz,V/mV), skortur á eðlilegu, ein-/tvíhliða litrófsvíxl. Stingdu upp á hvernig ég ætti að prófa (með hvaða viðmiðunarmerki) fyrir hvern. Kóði: [líma]."

Veik kvaðning / Sterk kvaðning

WEAK PROMPT: "Finndu tíðni þessa merkis."

STERK HRINGING: "Ég er með merkjafylki með sýnatökutíðni upp á 10 kHz. Skrifaðu Python kóða sem finnur ríkjandi tíðniþætti með FFT; notaðu Hann glugga og amplitude leiðréttingu, skalaðu tíðniásinn í samræmi við fs. Í lok kóðans skaltu bæta við staðfestingarblokk með tilbúnu prófunarmerki fcals og sjá hvort er rétt prófmerki fcal."

Veik kvaðning gefur samhengislaust svar og gerir ráð fyrir fs; Það skilar sterkum hvetjandi breytum og biður um sjálfsstaðfesta prófunarblokk.

Tafla yfir einingar og forsendur í merkjavinnslu

hugtak

tíð villa

sannprófun

Sýnatökutíðni (fs)

Sjálfgefið í stað raunverulegs FS tækisins

Staðfesting frá upptökustillingu

tíðniás

Ef fs er rangt færist allur ásinn

Þekktur tíðniprófstónn

Glugga

Litrófsleki þegar sleppt er

Hámarksbreidd í eintóna merki

Amplitude

Stöðlun/leiðréttingu vantar

Samanburður við þekkt amplitude merki

síu skorið

staðla villu samkvæmt fs

Tíðni svörunar línurit

Varúð: Þó að FFT línurit líti út fyrir að vera slétt og trúverðugt þýðir það ekki að það sé nákvæmt. Ef tíðniásinn er rangt lagaður eru allir topparnir á röngum stað en grafið lítur fullkomið út. Kvörðaðu alltaf með þekktri tilvísun.

Algeng mistök

  • Ekki sannreyna sýnatökutíðni frá uppruna. Rangt fs færir allar tíðnir.
  • Að brjóta gegn Nyquist og taka ekki eftir aliasing. Á grunsamlegum hæðum skaltu fyrst efast um að sýnatöku sé fullnægjandi.
  • Sleppir gluggamyndun í FFT. Litrófsleki lítur út eins og alvöru toppur.
  • Að gleyma amplitude normalization. Amplitudes haldast óskalaðar að líkamlegu gildi.
  • Röng staðla síuskerðingartíðni í fs. Sían sker sig á öðrum stað en búist var við.

Í stuttu máli

Í þessari einingu hefur þú sett gervigreind sem öflugt hjálpartæki við að læra merkjavinnsluhugtök, skrifa FFT og síukóða og smíða greiningu. En í merkjavinnslu geta niðurstöðurnar brenglast hljóðlaust: röng sýnatökutíðni, gluggun sem var sleppt, truflun á hljóðstyrk eða skortur á eðlilegu ástandi gera línuritið fallegt en ónákvæmt. Svo prófaðu hvern kóða sem gervigreindin framleiðir gegn þekktu viðmiðunarmerki, sannreyndu sýnatökutíðnina frá upprunanum og prófaðu hverja niðurstöðu fyrir einingu og líkamlega trúverðugleika. Athugaðu hugmyndina um Nyquist og samnefni í upphafi hverrar greiningar.

Umsóknarverkefni

Búðu til tilbúið prófunarmerki í Python: summa tveggja þekktra tíðna (t.d. 1 kHz og 3 kHz), fs=10 kHz. Biðjið um greiningarkóðann frá gervigreindinni með „FFT uppsetningu“ sniðmátinu og staðfestið að topparnir komi fram á réttum tíðni. Sláðu síðan vísvitandi inn fs rangt (t.d. 8 kHz) og athugaðu hvernig topparnir breytast. Að lokum skaltu fjarlægja gluggann og sjá litrófsleka. Skrifaðu niður niðurstöður hverrar tilraunar í einni setningu.

gátlisti

  • [ ] Ég sannreyndi sýnatökutíðni (fs) út frá raunverulegri stillingu upptökutækisins.
  • [ ] Ég athugaði Nyquist-viðmiðið og metur hættuna á samheiti.
  • [ ] Ég hef athugað að gluggastilling og amplitude leiðrétting séu innleidd í FFT kóðanum.
  • [ ] Ég prófaði kóðann með viðmiðunarmerki með þekktri tíðni.
  • [ ] Ég sannreyndi með sjónrænum viðbrögðum að síunarskerðingartíðni væri rétt staðlað í fs.
  • [ ] Ég gerði allar einingar (Hz/kHz, V/mV) samræmdar.