Odtwarzanie sygnałów w Matlabie plik dźwiękowy *.wav zmienna w Matlabie (wektor, macierz Mx2) interfejs audio
Odtwarzanie sygnałów w Matlabie Funkcja odczytu sygnału z pliku audio *.wav d = wavread(plik); [d, fs, nbits] = wavread(plik); [d, fs, nbits] = wavread(plik, [n1 n2]);
Odtwarzanie sygnałów w Matlabie Przykładowy program umożliwiający odczyt dźwięku z pliku przy pomocy GUI [file, path] = uigetfile('*.wav'); if file == 0 return; end; [d, fs] = wavread([path, file]);
Odtwarzanie sygnałów w Matlabie Odtwarzanie sygnału ze zmiennej sound (d, fs); sound (d, fs, nbits); soundsc (d, fs, nbits, zakres); wavplay (d, fs, async ); wavplay (d, fs, sync );
Odtwarzanie sygnałów w Matlabie plik obrazu zmienna w Matlabie (macierz) obraz
Odtwarzanie sygnałów w Matlabie Funkcja odczytu sygnału z plików obrazu [x, map] = imread (plik, fmt); dostępne formaty zapisu obrazu: bmp, jpg, tiff, pcx, png, xwd, ico, cur, hdf, pgm,ppm,pbm,ras
Odtwarzanie sygnałów w Matlabie Wyświetlenie obrazu ze zmiennej imshow(x, map); Imshow (rgb); Imshow (bw); image (x); colormap (map);
Odtwarzanie sygnałów w Matlabie plik audio_video *.avi zmienna w Matlabie (struktura) Interfejs audio-video
Odtwarzanie sygnałów w Matlabie Funkcja odczytu sygnału z pliku audio-video *.avi s = aviread (plik, klatka); struktura s (klatka) s. cdata macierz pikseli s. colormap definicja macierzy kolorów
Odtwarzanie sygnałów w Matlabie Struktura info pliku *.avi info = aviinfo (plik); nazwa pliku rozmiar pliku liczba klatek liczba klatek/sek rozmiar obrazu typ obrazu kompresja jakość - [1:100] format audio
Odtwarzanie sygnałów w Matlabie Odtwarzanie klatek ze zmiennej strukturalnej s (klatka) movie (s); movie (s, n); movie (s, n, fps); s. cdata macierz pikseli s. colormap definicja macierzy kolorów
interfejs audio zmienna w Matlabie (wektor, macierz Mx2) plik dźwiękowy *.wav
Funkcja odczytu sygnału z urządzenia audio d = wavrecord (nsmp, fs); d = wavrecord (nsmp, fs, ch);
Funkcja zapisu sygnału do pliku dźwiękowego *.wav wavwrite (d, fs, plik); wavwrite (d, fs, nbits, plik);
Funkcja zapisu sygnału do pliku audio_video *.avi movie2avi (s, plik); s. cdata macierz pikseli s. colormap definicja macierzy kolorów Parametry zapisu: liczba klatek/sek - fps kompresja mapa kolorów opis strumienia video
Zapis obiektów GUI w postaci sekwencji obrazów s = getframe (obj) Funkcje dodatkowe: [x, map] = frame2im(s(klatka)) s(klatka) = im2frame(x, map)
Odtwarzanie sygnałów w Matlabie przy użyciu obiektu DAQ plik dźwiękowy *.wav zmienna w Matlabie (wektor, macierz Mx2) Obiekt DAQ interfejs audio
Odtwarzanie sygnałów w Matlabie przy użyciu obiektu DAQ Przegląd dostępnych urządzeń audio: Wybór urządzeń audio do odtwarzania: adv = audiodevinfo; adv.output Parametry n tego urządzenia audio: adv.output(n).name adv.output(n).driverversion adv.output(n).id {0,1,2 }
Odtwarzanie sygnałów w Matlabie przy użyciu obiektu DAQ Inicjalizacja obiektu: ao = analogoutput ( winsound, id) Przypisanie kanałów: ch = addchannel (ao, 1) - mono ch = addchannel (ao, [1, 2]) - stereo
Odtwarzanie sygnałów w Matlabie przy użyciu obiektu DAQ Parametry kanałów sygnału mono: ch.channelname = [ Mono ] ch.hwchannel = 1 ch.outputrange = [-1, 1] ch.unitsrange = [-1, 1] ch.units = Volts
Odtwarzanie sygnałów w Matlabie przy użyciu obiektu DAQ Parametry kanałów sygnału stereo: ch.channelname = [ Left, Right ] ch.hwchannel = [1, 2] ch.outputrange = [-1, 1], [-1, 1] ch.unitsrange = [-1, 1],[-1, 1] ch.units = [ Volts, Volts ]
Odtwarzanie sygnałów w Matlabie przy użyciu obiektu DAQ Podstawowe parametry (domyślne): ao.bufferingconfig = [512, 0]; ao.samplerate = 8000 {8000, 44100} ao. RepeatOutput = 0 {1,2,3 Inf}
Odtwarzanie sygnałów w Matlabie przy użyciu obiektu DAQ Odtwarzanie danych ze zmiennej: Załadowanie obiektu: uruchomienie obiektu: putdata (ao, d) start (ao)
Odtwarzanie sygnałów w Matlabie przy użyciu obiektu DAQ Przykład programu do ciągłego odtwarzania sygnału audio: ao. RepeatOutput = Inf; putdata (ao, d); start (ao); pause; stop (ao);
przy użyciu obiektu DAQ Interfejs audio Obiekt DAQ Zmienna w Matlabie (wektor, macierz Mx2) Plik dźwiekowy *.wav
przy użyciu obiektu DAQ Przegląd dostępnych urządzeń audio: Wybór urządzeń audio do rejestracji: adv = audiodevinfo adv.input Parametry n tego urządzenia audio: adv.input(n).name adv.input(n).driverversion adv.input(n).id {0,1,2 }
przy użyciu obiektu DAQ Inicjalizacja obiektu: ai = analoginput ( winsound, id) Przypisanie kanałów: ch = addchannel (ai, 1) - mono ch = addchannel (ai, [1, 2]) - stereo
przy użyciu obiektu DAQ Parametry kanałów sygnału mono: ch.channelname = [ Mono ] ch.hwchannel = 1 ch.inputrange = [-1, 1] ch.sensorrange = [-1, 1] ch.unitsrange = [-1, 1] ch.units = Volts
przy użyciu obiektu DAQ Parametry kanałów sygnału stereo: ch.channelname = [ Left, Right ] ch.hwchannel = [1, 2] ch.inputrange = [-1, 1], [-1, 1] ch.sensorrange = [-1, 1], [-1, 1] ch.unitsrange = [-1, 1], [-1, 1] ch.units = [ Volts, Volts ]
przy użyciu obiektu DAQ Podstawowe parametry (domyślne): ai.bufferingconfig = [512, 30] ai.samplerate = 8000; {8000, 44100} ai.triggertype = immediate { manual, software } ai. TriggerRepeat = 0 {1,2,3 Inf} ai. SamplesperTrigger = 1024
przy użyciu obiektu DAQ Zapis danych przy wyzwalaniu natychmiastowym : ai.triggertype = immediate uruchomienie obiektu: przesunięcie danych z obiektu do zmiennej: start(ai); d = getdata (ai);
przy użyciu obiektu DAQ Zapis danych przy wyzwalaniu ręcznym : ai.triggertype = manual uruchomienie obiektu: rozpoczęcie wczytywania danych do obiektu: przesunięcie danych z obiektu do zmiennej: start(ai) trigger(ai) d = getdata (ai)
przy użyciu obiektu DAQ Zapis danych przy wyzwalaniu programowym (sygnałowym) ai.triggertype = software Nastawy dodatkowych parametrów: przypisanie trybu wyzwalania do kanału: wybór warunku wyzwalania: ai.triggerchannel = ch ai.triggercondition
przy użyciu obiektu DAQ Rodzaje warunków wyzwalania: rising przekroczenie progu przy wzroście sygnału ai.triggercondition = falling przekroczenie progu przy spadku sygnału leaving sygnał poza zakresem entering sygnał wewnątrz zakresu
przy użyciu obiektu DAQ wybór progu wyzwalania: ai.triggerconditionvalue = tr { rising, falling } ai.triggerconditionvalue = [tr1, tr2] { leaving, entering } uruchomienie obiektu: start(ai) przesunięcie danych z obiektu do zmiennej po spełnieniu danego warunku: d = getdata (ai)
przy użyciu obiektu DAQ Przykład programu do rejestracji ciągłej wyzwalanie natychmiastowe: ai.triggertype = immediate ; ai.samplespertrigger = Inf; start (ai); pause; stop (ai); ns = ai.samplesavailable; d = getdata (ai, ns),
przy użyciu obiektu DAQ Kasowanie obiektów DAQ: delete (ao) delete (ai) daqreset
przy użyciu obiektu IAQ Interfejs video Obiekt IAQ zmienna w Matlabie (struktura) plik *.avi
przy użyciu obiektu IAQ Inicjalizacja obiektu: vid = videoinput ( winvideo, id);
przy użyciu obiektu IAQ Podstawowe parametry (domyślne): vid.videoresolution = [160 120]; vid.returnedcolorspace = YCbCr; {rbg} vid.framespertrigger = 10;
przy użyciu obiektu IAQ uruchomienie obiektu: przesunięcie danych z obiektu do zmiennej: start (vid); s = getdata(vid); s jest zmienną czterowymiarową rozmiar obrazu 3 wymiary Numer klatki 4 wymiar
przy użyciu obiektu IAQ Przykład programu do rejestracji ciągłej : vid.framespertrigger = Inf; start (vid); pause; stop (vid); nf = vid.framesavailable; s = getdata (vid, nf),
przy użyciu obiektu IAQ Kasowanie obiektów IAQ: delete (vid); Imaqreset;