Search
Použité rovnice:
Šíření signálu Nechť máme ultrazvukové vlnění s rycholstí šíření $1540 m/s$ v látce s hustotou $1000\:kg \cdot m^{-3}$. Určete (Youngův) modul pružnosti. Jaká je specifická akustícká impedance dané látky?
Řešení Youngův modulus (elasticita) $E$ je převrácená hodnota stlačitelnosti $E = \frac{1}{K}$. Ze vztahu pro šíření signálu získáme $$ c = \frac{1}{\sqrt{\rho K}} \quad \to \quad K = \frac{1}{c^2 \rho} \quad \text{tím pádem je} \quad E = c^2 \rho = 1540^2 * 1200 = 2.85 \cdot 10^9 Pa = 2.85 GPa $$
Odrazivost Nechť máme měkkou tkáň s ak. impedancí $800\;\text{kRayl}$ a dále kost s ak. impedancí $6\;\text{MRayl}$. Jaká je energie (!) uzv. vlny odražené na rozhraní měkká tkáň – kost?
Řešení Pro jednoduchost budeme uvažovat úplný odraz (tj. vlna se šíří kolmo na rozhraní). Impedanci známe: $Z_t = 0.8 \cdot 10^6 Rayl, Z_k = 6 \cdot 10^6 Rayl$. Koeficient odrazivosti (poměr amplitudy dopadajícího a odraženého vlnění) je tím pádem $$R = \frac{Z_k - Z_t}{Z_k + Z_t} = \frac{6 - 0.8}{6 + 0.8} = 0.765$$. Energie vlny je proporcionální s kvadrátem amplitudy, tím pádem je odražená energie $R_e = R^2 = 0.585$
[HW] Odrazivost tkáně II Mějme tkáň s hustotou $900\;\text{kg} \cdot m^{-3}$, ultrazvuk s rychlostí šíření $1540 m \cdot s^{-1}$ a dále kost s ak. impedancí $6.75 \cdot 10^6 Rayl$. Jaká je odrazivost na rozhraní tkáň – kost?
[HW] Vzorkovací frekvence Typický (užitný) dosah ultrazvuku v lidském těle je 40 cm, rychost US je $1540\;m\cdot s^{-1}$. S jakou maximální obrazovou frekvencí (frame rate) jsme schopni snímat v této hloubce, pokud na každý obrázek potřebujeme 200 paprsků?
Jako vstupní data máme videosekvenci (odkaz je v MS Teams), která obsahuje záznam snímání krční tepny ultrazvukem. V rámci domácího cvičení chceme za použití dvou technik analýzy časových signálů – rychlé Fourierovy transformace (FFT) a autokorelace určit z této sekvence frekvenci srdečního tepu (údery/min). Podrobný popis cvičení nejprve představuje způsoby, jak získát časově-závislý signál a pak popisuje způsob analýzy.
Načtení dat:
%% Load video v_file='C:\Echo Images\krkavice_ax.avi'; obj = VideoReader(v_file); frame0 = obj.readFrame();
[fr0, c_region] = imcrop(frame);
%% Apply cropping to other frames i = 1; clear X; while hasFrame(obj) c_frame = imcrop( obj.readFrame(), c_region); X(:, :, i) = c_frame(:, :, 1); i = i + 1; end
Definice signálu [2 pt]
Pro každý frame spočteme hodnotu signálu $R(t)$, který bude mít podobnou (ideálně stejnou) charakteristiku jako srdeční tep a ten pak v další části vyhodnotíme. Představíme si dva možné způsoby definice $R(t)$
regiongrowing
thr
J = regiongrowing(double(c_frame), int32(size(c_frame, 1)/2), int32(size(c_frame, 2)/2), threshold);
Proveďte extrakci a následnou analýzu signálu pro dva způsoby spočtení $R(t)$.
Analýza signálu Jako vstup máme signál $R(t)$, který svým průběhem kopíruje srdeční tep.
[acorr, lag] = xcorr(j(t))
[peakval, peakpos] = findpeaks(...);
(pozor na jednotky – signál $j(t)$ měříme v $t$=frames, ale potřebujeme převést na srdeční tep (úderů za minutu). K převodu použijeme hodnotu FrameRate)
FrameRate
Užitečné funkce
imshow(c_frame, 'InitialMag', 'fit'); % Make a truecolor all-green image. green = cat(3, zeros(size(fIm)), ones(size(fIm)), zeros(size(fIm))); hold on; h = imshow(green); hold off; % Use the logical values of the region to paint over the input image set(h, 'AlphaData', J)