Kompiuteriai

Konversija „Matlab“ su kodų pavyzdžiais

Autorius: Laura McKinney
Kūrybos Data: 3 Balandis 2021
Atnaujinimo Data: 13 Gegužė 2024
Anonim
Digital Image Processing with matlab coding.. Mod 1 {Image sampling and quantization }
Video.: Digital Image Processing with matlab coding.. Mod 1 {Image sampling and quantization }

Turinys

„Matlab®“ per kelias sekundes gali būti atliekami diskretiški, tęstiniai ir žiediniai sukrėtimai su sąlyga, kad gausite prieinamą kodą ir keletą kitų pagrindinių dalykų.

Šios pamokos tikslas:

  • Parodykite būtinus kodo komponentus, naudojamus konvoliucijai „Matlab“ atlikti supaprastintai.
  • Vizualizuokite rezultatus, braižydami susisukusių funkcijų grafikus.

Ši pamoka išdėstyta tokia seka:

  1. Tęsia konvoliuciją.
  2. Diskretioji konvekcija.
  3. Žiedinė konvoliucija.

Logika:

Paprasta kodavimo koncepcija turėtų būti:

1. Apibrėžkite dvi atskiras arba kontineusines funkcijas.

2. Sujunkite juos naudodami „Matlab“ funkciją „conv ()“

3.Rezultatus nubraižykite naudodami „subplot ()“.


Tęsia „Matlab“ konvoliuciją

Tai parodysime naudodamiesi dviem tęsiamomis funkcijomis:

  1. Pulso bangos forma. Žymima funkcija „square ()“. Tai yra sistemos įvestis x (t).
  2. Laikinas kondensatoriaus atsakas. Pažymima formos a * e lygtimi1 / RC * t. Tai galima laikyti sistemos impulsiniu atsaku h (t).

„Matlab“ kodas konvoliucijai

atspalvis = 0; tfinalas = 0,05; tstep = 0,0005; t = atspalvis: tstep: tfinal; x = 4 * kvadratas (500 * t, 50); // Čia naudokite pasirinktą funkciją. potvarkis (3, 1, 1); siužetas (t, x); h = 400 * exp ((-400 * t)); // Naudokite pasirinktą funkciją. potvarkis (3, 1, 2); sklypas (t, h); t2 = 2 * atspalvis: tstep: tfinal * 2; // Suderinta funkcija reikalauja, kad būtų visiškai nupieštas platesnis diapazonas. y = konv (x, h) * tžingsnis; potvarkis (3, 1, 3); diagrama (t2, y);

1–5 eilutės: Apibrėžkite laiko ašies verčių diapazoną.

7 eilutė: Kvadratinė banga inicijuojama naudojant „Matlab“ funkciją “kvadratas ()jo amplitudė yra 4, ω = 500 rad / s, o veikimo ciklas - 50%.


9 eilutė:Plotas () padalija išvesties langą, kad viename ekrane tilptų 3 siužetai, ty sukuriama 3 eilučių ir 1 stulpelio (-ių) lentelė ir paskutinis argumentas subplot () parenka 1-ąjį sklypą tolimesniam darbui.

10 eilutė: brėžiniai x (t).

12-15 eilutė: Apibrėžta impulsinė sistemos reakcija h (t). Plotas () parenka 2 grafiką ir jame braižo h (t).

18 eilutė: Gautai susuktai funkcijai nustatytas naujas diapazonas.

19–22 eilutė: x (t) galiausiai suvyniojamas su h (t) ir tada braižomas šiame naujame diapazone. * tstep buvo pridėtas, kad atitinkamai sureguliuotumėte x ir y ašis.

Diskretioji „Matlab“ konvoliucija

Diskrečiosios konvekcijos atlikimas matlab yra labai paprastas ir paprastas. Jums tereikia apibrėžti atskiras kiekvienos funkcijos reikšmes ir pritaikyti funkciją 'konv. ()abiejose šiose funkcijose.


„Matlab“ kodas diskrečiai konvoliucijai

a = -1; // Tai yra pradinė x (t) laiko vertė. b = 0; // H (t) pradinė laiko vertė. x = [2-1 1]; h = [3 2 1]; potvarkis (3, 1, 1); t = a: a + ilgis (x) -1; // tstep čia nereikalingas. kamienas (t, x); potvarkis (3, 1, 2); t = b: b + ilgis (h) -1; stiebas (t, h); y = konv (x, h); potvarkis (3, 1, 3); t = a + b: a + b + ilgis (y) -1; kamienas (t, y);

4-5 eilutė: Apibrėžkite atskiras x (t) ir h (t) reikšmes.

8, 12 ir 18 eilutės: Apibrėžkite laiko ašies diapazoną grafikuose, kurie vėliau bus braižomi naudojant kamienas () funkcija (jei braižyti nereikia, galite praleisti šiuos veiksmus).

Žiedinė konvoliucija „Matlab“

Apykaitinę konvoliuciją galima atlikti šiais veiksmais:

  1. Paimkite dviejų vektorių diskretiąją Furjė transformaciją.
  2. Padauginkite dvi transformacijas.
  3. Paimkite atvirkštinę diskretinę Furjė produkto transformaciją ir rezultatas yra dviejų vektorių žiedinė konvoliucija.

„Matlab“ kodas žiedinei konvoliucijai

// Apibrėžkite du apskritos konvekcijos vektorius x = [2 5 4 1]; y = [1 4 3]; // „Zeropad vectrs“ iki 4 + 3-1 xpad = [x nuliai (1, 6 ilgio (x))]; ypad = [y nuliai (1, 6 ilgio (y))]; // Padauginkite abiejų vektorių fft ir paimkite produkto idft ccirc = ifft (fft (xpad). * Fft (ypad)); // Dabar siužeto rezultato kamieno (ccirc, 'užpildytas') ylim ([0 35]) pavadinimas ('Xpad ir ypad žiedinė konvoliucija');

Populiariausi Portale

Mes Rekomenduojame Jus

4 geriausios 13 colių „MacBook Pro“ dėklai 2021 m
Kompiuteriai

4 geriausios 13 colių „MacBook Pro“ dėklai 2021 m

Pauliu yra ai tringa naujom technologijom ir keletą metų dė tė JK kaitmeninė žinia klaido tudija . Dabar ji gyvena Floridoje, JAV.Daugelį metų dirbdama u „Mac“ kompiuteriai , manau, kad galiu par ivež...
„Oracle VM VirtualBox“ diegimas į USB diską
Kompiuteriai

„Oracle VM VirtualBox“ diegimas į USB diską

Jeremiah yra jaune ny i tinklo admini tratoriu , kuri mėgauja i vi kuo, ka u iję u technologijomi ir šalia, į kaitant švarią energiją ir taupiu automobiliu .„VirtualBox“ yra puiku nemokamo programinė ...