Download as pdf or txt
Download as pdf or txt
You are on page 1of 7

FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA

DIGITALNA OBRADA SLIKE

IZVJEŠTAJ PROJEKTA

OTKRIVANJE PISKUTANJA U ZVUKU DAHA OBRADOM


SPEKTROGRAMA

Peter Škoda
Roko Končurat

Zagreb, 03.06.2004.
Sažetak

U ovom projektu je napravljena jedna metoda detekcije piskutanja u dahu


čovjeka koja se temelji na metodama digitalne obrade slike. Te su metode
primijenjene na spektrogram zvuka daha, koji je tretiran kao slika. Piskutanja su
visokofrekvencijske komponente, pa su VF filtrom uklonjene sve niskofrekventne
smetnje. Spektrogram je izračunat uz FFT procjenu spektra u 256 točaka. Osnovna
je ideja da se na spektrogramu kao slici detektiraju rubovi aproksimacijom gradijenta.
Od svih rubova izdvajaju se oni koji su horizontalni ili približno horizontalni, koje onda
nazivamo vrhovima. Vrhove čine piskutanja i VF šum. Da bi se uklonilo što više ovog
šuma primijenjen je još i labeling algoritam.

1. Uvod

Piskutanja su kontinuirane visokofrekvencijske komponente signala zvuka daha


koji traju najkraće 100ms. Najvjerojatnije nastaju kad tok zraka tijekom disanja
prolaskom kroz uske kanale respiratornog sustava uzrokuje vibracije tih kanala.
Piskutanja su najčešći klinički znakovi da pacijent ima neku bolest respiratornog
sustava, poput astme. Piskutanja nisu uvijek prisutna u zvuku daha pacijenata s
nekim oboljenjem respiratornog sustava koje ih uzrokuje, ali njihova učestalost
pojavljivanja vezana je za teškoću tog oboljenja.
Automatske detekcije piskutanja, odnosno one temeljene na analognoj i (ili)
digitalnoj obradi signala nude objektivan i točan način analize piskutanja u zvukovima
daha. Iz rezultata automatske detekcije mogu se dobiti informacije o količini,
frekvenciji te sadržaju piskutanja i ovisnosti piskutanja o toku zraka kroz kanale
respiratornog sustava.

2. Opis područja i aktivnosti u svijetu

U svijetu su u zadnje vrijeme razvijene različite metode automatske detekcije


piskutanja, neke više ili manje učinkovite. Ipak najznačajnije su one koje se
uglavnom temelje na traženju vrhova (peak) iz sukcesivnog spektra. Općenito
razmatrajući, postojeći algoritmi su prilično jednostavni i stoga brzi, ali i nepouzdani.
Neki od njih nemaju ni kliničku vrijednost u smislu valjane detekcije piskutanja. Takve
algoritme su razvijali: R. Baughman i R. Loudon, T. Fenton, H. Pasterkamp, A. Tal i
V. Chernik, G. Charbonneau, N. Meslier, J. Racineaux i Y. Qian.
Jednu cjelovitu metodu temeljenu na metodama digitalne obrade slike razvili
su M. Waris i ostali u Laboratoriju za Biomedicinski Inženjering Tehnološkog
Sveučilišta Helsinki u suradnji sa Laboratorijem za Kliničku Fiziologiju centralne
bolnice Sveučilišta Helsinki u Finskoj. Ova metoda dala je puno bolje rezultate i jedna
od glavnih prednosti joj je što je ostavila širok spektar mogućnosti za daljnja
poboljšanja. Na Tehnološkom Sveučilištu Helsinki korišten je spektrogram zvuka
daha kao slika. Spektrogram je dobiven na dva načina: procjenom spektra signala
FFT i procjenom autoregresivnim metodama. Autoregresivne metode dale su bolje
rezultate od FFT-a u 256 točaka i manje, dok se rezultati nisu razlikovali za FFT u
512 točaka. U suradnji sa Laboratorijem za Signale i Sustave sveučilišta Pariz razvili
su metodu klasifikacije zvukova disanja koja se temelji na wavelet dekompoziciji i
neuronskim mrežama.

2
3. Metode

U ovom projektu je napravljena detekcija piskutanja u zvuku daha metodama


digitalne obrade slike prema osnovnoj metodi koja je razvijena na Tehnološkom
Sveučilištu Helsinki [1]. Pri izračunu spektrograma korištena je samo procjena
spektra FFT-om, dok slučaj sa spektrogramom dobivenim pomoću autoregresivnih
metoda procjene spektra nije razmatran.
Svi programski kodovi za realizaciju ovog projekta napravljeni su u programu
MATLAB. Glavna skripta je “wheeze”, koja poziva funkcije “grad2d” i “fpeak”.
U skripti “wheeze” učitava se zvuk daha kao zvučni signal. Signal sadrži
niskofrekvencijske smetnje, a čine ih šumovi različitog porijekla, ali su uglavnom
posljedica procesa u organizmu koji se odvijaju u blizini respiratornog sustava: rad
srca, pokretanje mišića tokom disanja i sl. Za eliminaciju ovih smetnji koristi se
visoko-propusni filtar. U ovoj funkciji korišten je filtar tipa Butterworth, 4. reda,
granične frekvencije 80Hz.
Nakon filtriranja računa se spektrogram signala zvuka daha. Za računanje
spektrograma ovog signala koristi se funkcija specgram. Pri izračunu je korištena
FFT (Fast Fourier Transform) u 256 točaka uz preklapanje od 35%. Svaki odsječak
signala je propušten kroz Hanningov prozor duljine 256 uzoraka. Spektrogram se
računa u 256 točaka, a prikazuje se samo 128 točaka jer je signal realan, pa je
spektar simetričan. Kao konačna slika spektrograma na kojoj se vrši detekcija
piskutanja uzet je logaritam po bazi 10 apsolutne vrijednosti matrice dobivene
funkcijom specgram. Piskutanja su, osim šuma, jedine visokofrekvencijske
komponente u zvuku daha (100Hz do 800Hz) i imaju najveću energiju. Ono je gotovo
periodički signal, pa se u spektru pojavljuje kao niz vrhova, a u spektrogramu se
pojavljuje kao niz linija.
Potrebno je najprije detektirati sve rubove u spektrogramu. Detekcija rubova
vrši se izračunom gradijenta slike. U skripti “wheeze” detekcija ruba vrši se pomoću
aproksimacije gradijenta spektrograma pozivom funkcije “grad2d”. Dobivene su
aproksimacije gradijenta po vremenu i po frekvenciji. Iz njih se dobije apsolutna
vrijednost i smjer gradijenta. Zatim se izračuna apsolutna vrijednost aproksimacije
gradijenta te njezina srednja vrijednost, kao i korijen srednjeg kvadratnog odstupanja
od te srednje vrijednosti. Detekcija ruba vrši se prema sljdećem kriteriju: neki piksel
smatramo da pripada rubu ako je vrijednost gradijenta u tom pikselu strogo veća od
određene vrijednosti koju zovemo prag. Prag se računa kao zbroj srednje vrijednosti
apsolutne vrijednosti gradijenta pomonožene s koeficijnetom c_a i korijena srednjeg
kvadratnog odstupanja od te srednje vrijednosti pomnoženog s koeficijentom c_b.
Da bi se mogli izdvojiti oni pikseli rubova koji pripadaju piskutanjima potrebno
je naći one dijelove rubova koji su horizontalni ili približno horizontalni. Osim
piskutanja na ovaj način izdvojit će se i velik dio šuma, što će predstavljati poseban
problem. Da bi se izdvojili vrhovi potrebno je pronaći nagib aproksimacije gradijenta u
svakom pikselu koji pripada rubu. Nagib je izračunat kao kut između aproksimacije
gradijenta i vertikalne frekvencijske osi. Smjer nagiba ruba se određuje pomoću tog
kuta. Da li je nagib uzlazni ili silazni određeno je sljedećim kriterijem: ako je
apsolutna vrijednost tog kuta manja od 70° onda je nagib uzlazni i označava se sa 1,
a ako je veća od 110° onda se nagib smatra silaznim i označava se sa -1. U točkama
sa drugim apsolutnim vrijednostima ovog kuta informacija o smjeru nagiba odbačena
je i označuje sa 0. Nagibi u pikselima koji ne pripadaju rubovima su nebitni i oni se
odbacuju. Ovime se dobiva matrica s elementima 1, -1, 0, koju zovemo matrica
nagiba. Vrhovi se računaju pozivom funkcije fpeak.

3
Procjena gradijenta izračunata je funkcijom “grad2d”. Za procjenu su korištene
Sobelove maske (operatori). Funkcija kao ulazni argument prima matricu (sliku) i
vraća matricu gradijenta po recima (po frekvenciji) i matricu gradijenta po stupcima
(po vremenu). Ulaznu matricu potrebno je proširiti ponavljanjem elemenata na
rubovima radi izbjegavanja rubnih efekata koji nastaju zbog proširenja matrice
nulama pri konvoluciji. Pri izračunu procjene gradijenta uzimaju se samo vrijednosti
izračunate bez nula dodanih na rubovima.
Funkcija “fpeak” je funkcija koja pronalazi vrhove u matrici nagiba. Vrhovi se
nalaze na onim dijelovima spektrograma gdje je udaljenost između piksela ruba sa
uzlaznim i piksela ruba sa silaznim nagibom manja ili jednaka 3 piksela. Vrhovi se
traže samo po stupcima matrice. Vrhovi se traže po stupcima računanjem korelacije
između ulazne matrice i stupac vektora h, za udaljenost rubova od 1, 2 i 3 piksela.
Vrh se nalazi tamo gdje je korelacija jednaka 2. Tamo gdje je korelacija jednaka –2
nalazi se dol. Vektori h koji imaju paran broj elemenata prošireni su jednom nulom da
bi broj redaka matrice korelacije bio za paran broj veći od broja redaka ulazne
matrice. To će omogućiti jednostavnije uzimanje središnjeg dijela matrice. Pri
ispitivanju vrhova najznačajniji vrh je onaj pri udaljenosti 1, a najmanje značajan vrh
je pri udaljenosti 3. Ako je na nekom pikselu nađen vrh, manje značajni vrhovi na
susjednim pikselima se odbacuju. Provjera se vrši samo po stupcima jer su nam
zanimljivi jedino vrhovi po frekvenciji.
Nakon dobivenih svih vrhova potrebno je eliminirati što više komponenata koje
pripadaju šumu i izdvojiti različita piskutanja. Da bismo razlikovali pojedine piskutanja
potrebno je izvršiti “označavanje”. To označavanje se vrši labeling algoritmom, koji
svakoj 8-povezanoj komponenti (8-susjedstvo piksela) dodjeljuje jedinstveni broj.
Korištena je MATLAB funkcija (Image Processing Toolbox) “bwlabeln”. Ovim
postupkom su se odvojila različita piskutanja. Nakon označavanja traži se duljina
svake komponente i odbacuju se komponente kraće od praga. Na ovaj način
eliminira se velik dio šuma.

4. Rezultati

Metoda je provedena na tri signala zvuka daha.

1.) Uzorak zvuka daha osmogodišnjeg dječaka s astmom. Piskutanja se nalaze


na 3 mjesta. Spektrogram uzorka prikazan je na slici 1. Na slici 2 je spektrogram sa
svim vrhovima, a na slici 3 je spektrogram s vrhovima nakon primjene labeling
algoritma i odbacivanja komponenti kraćih od 5 piksela. Koeficijenti: c_a=1, c_b=0.

Slika 1.

4
Slika 2.

Slika 3.

2.) Uzorak zvuka daha osmomjesečne bebe sa bronhitisom. Piskutanja se nalaze


na 8 mjesta. Spektrogram uzorka prikazan je na slici 4. Na slici 5 je spektrogram sa
svim vrhovima, a na slici 6 je spektrogram s vrhovima nakon primjene labeling
algoritma i odbacivanja komponenti kraćih od 7 piksela. Koeficijenti: c_a=1, c_b=-1/2.

Slika 4.

Slika 5.

Slika 6.

5
3.) Uzorak zvuka daha jedanaestogodišnje djevojčice s astmom. Spektrogram
uzorka prikazan je na slici 7. Na slici 8 je spektrogram sa svim vrhovima, a na slici 9
je spektrogram s vrhovima nakon primjene labeling algoritma i odbacivanja
komponenti kraćih od 5 piksela. Koeficijenti: c_a=1, c_b=0.

Slika 7.

Slika 8.

Slika 9.

Sva tri uzorka zvuka daha su uzeta sa [4]. U svim uzorcima je prisutno dosta šuma,
što je otežalo detekciju. Zbog nesavršenosti metode, posebno dijela u kojem se šum
eliminira na temelju trajanja pronađenih komponenti, imali smo velik broj lažnih
detekcija.

5. Zaključak

Ono što je napravljeno u ovom projektu nije dovoljno dobro za kliničku


upotrebu zbog velikog broja lažnih detekcija.
Lažne detekcije su se pojavile iz sljedećih razloga:
ƒ Loši uzorci zvuka daha – za dobru detekciju potrebno je imati kvalitetne uzorke sa
što manje šuma,
ƒ Loše podešeni pragovi detekcije rubova – pragovi su određivani metodom
pokušaja i pogrešaka. Zbog ograničenosti vremenom isprobano je svega nekoliko
vrijednosti, pa izabrana vrijednost gotovo sigurno nije optimalna.
ƒ Loše podešeni pragovi duljine komponente – i ovdje su pragovi određeni
metodom pokušaja i pogrešaka, a isprobane su svega tri vrijednosti: 3, 5 i 7
piksela.

6
ƒ Nepotpunost kriterija za razlikovanje piskutanja od šuma.
Metodu je moguće poboljšati uvođenjem kriterija za izdvajanje piskutanja iz
šuma na temelju intenziteta i trajanja pojedine komponente. U [1] je upotrebljen
eksponencijalno vremensko ovisni kriterij. Prema tom kriteriju jačina komponente
mora bi to veća što je njena duljina manja, da bi bila prihvaćena kao piskutanje.
Dodatno poboljšanje postiglo bi se i spajanjem pojedinih komponenti koje su
dovoljno blizu u vremenu i frekvenciji u jednu komponentu, nakon što je primijenjen
kriterij za razlikovanje piskutanja od šuma. Time bi se izbjeglo lažno prepoznavanje
više piskutanja tamo gdje se nalazi samo jedno.

6. Literatura

[1] M. Waris, P. Helistö, S. Haltsonen, A. Saarinen and A.R.A. Sovijärvi, “A new


method for authomatic wheeze detection”, Techonology and Health Care 6
(1998), 33-40.
[2] Sven Lončarić, Materijali s predavanja iz predmeta Digitalna obrada slike,
dosl.zesoi.fer.hr, 2004.
[3] Tomislav Petković, Upute za laboratorijske vježbe iz digitalne obrade slike,
dosl.zesoi.fer.hr, 2004.
[4] The R.A.L.E.® repository, www.rale.ca, 2004.

You might also like