5 Mayıs 2014 Pazartesi

Dalgacık Fonksiyonları

Dalgacıklar bir ana dalgacıktan, kaydırma ve ölçekleme parametrelerinin değiştirilmesiyle türetilen fonksiyonlardır. Matlab dalgacık Toolbox’ı Matlab’da oluşturulan fonksiyonların birleşimidir. Bu Toolbox sayesinde sinyallerin ve görüntülerin dalgacık dönüşümü ve dalgacık paketleri kullanılarak sentezlenmesini ve analizini sağlar.

Komut satır fonksiyonları (CL): Komut satırı ya da uygulama kodları olarak ifade edilirler. help wavelet komutu yazılarak detaylı bir liste elde edilebilir. 

Grafiksel İnteraktif Tool: Komut satırına wavemenu yazılarak çağrılabilir.

Komut satırına wavemngr('read') yazılarak dalgacıklar hakkında bilgi elde edilebilir. Bu komutun kullanılmasıyla dalgacık fonksiyonları ve ölçek fonksiyonları elde edilecektir. 

wavefun dalgacık ve ölçekleme fonksiyonlarının komut satırında yazılıp çalıştırılması için kullanır. Bu fonksiyon, dalgacık fonksiyonlarının türüne ve ölçekleme değerlerine göre yaklaşık değerlerini geri döndürür. 

Aşağıdaki tabloda bazı dalgacılara ait analitik formlara yer verilmiştir. 


Dalgacıklar bir ana dalgacıktan, kaydırma ve ölçekleme parametrelerinin değiştirilmesiyle türetilen fonksiyonlardır. Aşağıda Mexican Hat dalgacığının matematiksel ifadesine yer verilmiştir.


Burada s, ölçekleme parametresi ve r,kaydırma parametresi olarak tanımlanmaktadır.

Örnek 1 

Aşağıdaki Matlab programında r=-1,0,1 kaydırma parametreleri ve s=0.8,1.0,1.2 ölçek parametreleri için hesaplanmış ve grafiği çizdirilmiştir.


function psi = mh(t,tau,s)
% giriş t Vektör
% s ölçekleme parametresi
% tau Zaman gecikmesi
tn = (t-tau)/s;
psi = (1/(sqrt(2*pi)*s^3))*(tn.^2-1).*exp(-0.5*tn.^2);

Oluşturulan mh.m dosyası mh fonksiyonunu çağırmak üzere kullanılacaktır.

% Mexican Hat 
t = -5:0.1:5;
psi1 = mh(t,0,0.8);
psi2 = mh(t,0,1.0);
psi3 = mh(t,0,1.2);
plot(t,psi1,'g--',t,psi2,'b-+',t,psi3,'c-*');
xlabel('t');
title('tau=0, s=0.8(g), 1.0(b) and 1.2(c)');
ylabel('Genlik');

pause
psi1 = mh(t,-1,0.8);
psi2 = mh(t,-1,1.0);
psi3 = mh(t,-1,1.2);
plot(t,psi1,'g--',t,psi2,'b-+',t,psi3,'c-*');
title('tau=-1, s=0.8(g), 1.0(b) and 1.2(c)');
ylabel('Genlik');
pause

psi1 = mh(t,1,0.8);
psi2 = mh(t,1,1.0);
psi3 = mh(t,1,1.2);
plot(t,psi1,'g--',t,psi2,'b-+',t,psi3,'c-*');
title('tau=-1, s=0.8(g), 1.0(b) and 1.2(c)');
ylabel('Genlik');

Dalgacık fonksiyonu keyfi bir şekilde kaydırılabilir ve genişletilebilir. Dalgacığın ortalama değeri sıfırdır ve aşağıdaki formül ile ifade edilir.

Dalgacığın anlık değeri hesaplamak için aşağıdaki formül kullanılır. µn sıfır ise Ψ fonksiyonu sonsuz sıradadır.

Bir n dizili wavelet <=n-1 derecesindeki bütün polinomlara göre diktir. 

Buna göre yukarıdaki programın çıktıları: 




6 yorum:

  1. Merhaba hocam ben ekonomi öğrenciyim daha önce hiç matlab kullanmadım.ama wavelet analizi öğrenmem gerekiyor.teoriyi anlatan çok çalışma olmasına rağmen uygulama için kaynak sıkıntısı var.bana bu analizi bireysel öğrenebileceğim yöntem ve kaynaklar önerebilirmisiniz?

    YanıtlaSil
    Yanıtlar
    1. Niyazi Arı ve arkadaşlarının Dalgacık Dönüşümü isimli bir kitabı var. Hem sinyal hem görüntü üzerinde çeşitli uygulamalarda içeriyor, işinize yarayabilir. Bunun dışında Matlab Help'den faydalanabilirsiniz, çok sade ve anlaşılır örneklerle dolu.

      Sil
    2. Niyazi Arı'nın kitabını almıştım hocam.Matlab help'i inceleyeceğim.önerilerinin için teşekkür ederim.

      Sil
    3. Matlab için hazırlanmış bazı programlar var elimde bir e-posta atarsanız onları da göndereyim, belki faydası olur. comertzafer@gmail.com

      Sil
    4. teşekkür ederim hocam. size mail gönderdim.

      Sil
  2. merhabalar hocam ben elektrik elektronik mühendisliği öğrencisiyim. bir projem var wavelet coherance hesaplamak ile ilgili. orada scale parametresini frekanslara göre hesaplayıp bulmam gerekiyormuş bunu nasıl yaparım bilemedim. size mail atsam bakabilir misiniz?

    YanıtlaSil