Soru sorMatlab filterbuilder
senna tarafından 3 yıl önce soruldu

Matlab de ses sinyaline highpass bandpass gibi filtreleri uygulamaya çalışıyorum.filterbuilder komutu ile kodları otomatik oluşturup sonra sinyalime uygulamaya çalıştım.İlk seferde filtreleri uyguladı ancak daha sonra bir türlü uygulayamadı.Bilgisayarım yeterince hızlı ama böyle bir sıkıntı yaşıyorum.çözümü var mıdır?

8 Cevap
sayginer Yönetici tarafından 3 yıl önce cevaplandı

Çok ilginç bir durum. Bu söylediğinizin doğrudan verilebilecek bir cevap olduğunu sanmıyorum. Acaba parametrelerde bir değişiklik olmuş olabilir mi? Hata alıyorsanız hatayı paylaşır mısınız?

senna tarafından 3 yıl önce cevaplandı
[s,fs]=audioread("101_1b1_Al_sc_Meditron.wav"); %882000xdouble

%filterbuilder ile filtre oluşturma
Fstop = 0.6; % Stopband Frequency
Fpass = 0.7; % Passband Frequency
Astop = 60; % Stopband Attenuation (dB)
Apass = 1; % Passband Ripple (dB)
Fs = 14400; % Sampling Frequency

h = fdesign.highpass('fst,fp,ast,ap', Fstop, Fpass, Astop, Apass, Fs);

Hd = design(h, 'kaiserwin', ...
'MinOrder', 'any');

f=filter(Hd,s); %bu kısımda matlab bir türlü çalışmayı tamamlayamıyor.15 dk bekledim ama yine de olmadı
sayginer Yönetici tarafından 3 yıl önce cevaplandı

Daha kısa bir sinyal deneyerek veya varolan sinyalinizi kısaltarak tekrar denemenizi tavsiye ediyorum.

senna tarafından 3 yıl önce cevaplandı

Peki parça parça sinyal işleme yaparsam sonrasında hepsini nasıl birleştirebilirim? Yani diyelim ki 10000 sample içeren 8 parçaya ayırdım.Bunları ayrı ayrı işledim.Sonra bütün sesi işlenmiş bir şekilde birarada görebilir miyim?

sayginer Yönetici tarafından 3 yıl önce cevaplandı

Evet, tüm sonuçları birletirmeniz gerekecek.
Ancak tek seferlik bir sinyal işleme yapıyorsanız, daha uzun süre de bekleyebilirsiniz. Diğer bir ifade ile sadece örneği yapıp işiniz bitecekse, uzun süre beklemek sinyalleri birleştirmekten daha pratik olabilir.

senna tarafından 3 yıl önce cevaplandı

Ben akciğer seslerini işlemek istiyorum.Hedefim yazdığım kodları bir program haline getirebilmek.Böylece hastadan alınan sesleri hemen işleyebilmek istiyorum.Çok uzun süre beklemek mantıklı değil benim için.Ama birleştirmeyi nasıl yapacağım onu bilemiyorum yardımcı olursanız çok sevinirim

sayginer Yönetici tarafından 3 yıl önce cevaplandı

Anladım.Birleştirme dahi yapacaksanız bir miktar zaman alacaktır.
Eğer bu alana ve MATLAB'e yeni başlıyorsanız varolan çalışmalar üzerinden ilerlemeniz çok faydalı olacaktır. Bu konuda bir literatür araştırması yapmanızı tavsiye ederim. Şimdiye kadar kimler ne şekilde yapmış diye görmüş olursunuz. Probleminize uygun daha hızlı çalışan, daha efektif algoritmalar olabilir.
 
 

senna tarafından 3 yıl önce cevaplandı

İlginiz ve yardımlarınız için teşekkür ederim.Önerilerinizi dikkate alacağım.