Tulong sa akin sa Matlab at WAV File ** Ang abuloy 100 puntos **

G

glenjoy

Guest
Maaari isang tao tumulong ako sa pagdisenyo ng isang mababang filter na pumasa sa Matlab, ang input file ay isang file na DTMF wav, lamang na ibinigay ay ang sampling rate ng 8kHz at, 40ms duration.

Salamat.
Huling na-edit sa pamamagitan ng glenjoy on Marso 16, 2005 2:56; edit ng 4 na beses sa kabuuang

 
Z najnowszej analizy firmy Gemius, dotyczącej stron operatorów logistycznych wynika, że zdecydowanym liderem popularności jest Poczta-polska.pl. Na dr ...

Read more...
 
Hi,

Alin ang bandwidth ng filter (passband at stopband)?

Pagbati,

- PHP

 
glenjoy wrote:

Sa tingin ko ito ay ang boses ng banda, 0 sa 4khz.
 
hi,

i am sorry, i couldnt makakuha ng iyong tanong pa!

<img src="http://www.edaboard.com/images/smiles/icon_sad.gif" alt="Malungkot" border="0" />

ito lumilitaw masyadong malabo sa akin, ako ay nais makatulong sa u sa pagsasaalang-alang na ito, ikaw.kung ka could magbigay ng impormasyon sa isang maliit na mas malinaw.

/ cedance

 
Okay dito ay ang problema, ang input ay isang tunog (DTMF) na may ingay sa mga ito, ang ingay ay dapat nasala upang ang equation na ang kung ano ang numero ay ang DTMF tono.

Sampling Dalas ay 8khz.Kaya ito ay nangangailangan ng isang filter na mababa ang pumasa o ng isang bandpass filter.Hangga't ingay ay na-filter out at ang lahat ng DTMF tones makapasa sa pamamagitan ng.

 
Hi glenjoy,
ang gusto mong tuklasin ang mga tones?Pagkatapos ang kailangan mo a paglangkay-langkayin ng mga filter.
http://www.hut.fi/ ~ pagkatapos / mytexts / dtmf_generation.html
ep20k.

 
Oo ito ay kailangan ng isang kumpol ng mga filter.May 12 tones, kaya ito ay nangangailangan ng 12 mga filter din.

 
Quote:

Oo ito ay kailangan ng isang kumpol ng mga filter.
May 12 tones, kaya ito ay nangangailangan ng 12 mga filter din.
 
well, ako ay binayaran para tapusin ito ..dont malaman kung ako pumunta na karapatan!(hindi para sa 100 na puntos

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Ngiti" border="0" />

)

ang pangunahing file na ako i-dikit dito ..at ang kumpletong isa ako attaching.ang huling set ng mga linya ..ay tamad na maglagay ng isang loop ..kaya-cut at i-paste!

<img src="http://www.edaboard.com/images/smiles/icon_biggrin.gif" alt="Very Happy" border="0" />
Code:

% sampling frequency 8Khz

% ako ay hindi kabilang ang anumang kadahilanan na resolution dito ..
lamang ng mga operasyon ng matematika ay

% gumanap.

% hal: x = kasalanan (...) kasalanan (..) balutin u kailangan 8 bit resolution lamang baguhin ang mga ito

% formula sa x = 128 63 * kasalanan (...) 63 * kasalanan (...)% Frequency ay 697,770,852,941,1209,1336,1477,1633 binuo gamit ang pir

% Kaiser window sa sampling rate ng 8khz lamang.
gamitin ang tool ng FDA kung pangangailangan sa

Baguhin%% Misc parameterf = [697,770,852,941,1209,1336,1477];

t = 1:320;

samp = 8000;

% sain alon at ingay henerasyon, gaussian para sa kaginhawaan

para i = 1: haba (f),

sinw (ako,:) = kasalanan (2 * * * * * * pay f (i) / samp * t);

parti ng (i,:) = sinw (ako,:) randn (1, haba (t));

wakasan

% mabuo ang summed alon na panahon.
na ang lahat ng 12

% kumbinasyon

temp = 1;

para i = 1:4,

para sa mga j = 5:7,

sum_sin (temp,:) = parti (ako,:) parti (j,:);

temp = temp 1;

wakasan

wakasanF1 = f_697;

F2 = f_770;

f3 = f_852;

f4 = f_941;

F5 = f_1209;

f6 = f_1336;

F7 = f_1477;out_1 = Conv (sum_sin (1,:), F1) Conv (sum_sin (1,:), ang F5);

out_2 = Conv (sum_sin (2,:), F1) Conv (sum_sin (2,:), f6);

out_3 = Conv (sum_sin (3,:), F1) Conv (sum_sin (3,:), F7);

out_4 = Conv (sum_sin (4,:), F2) Conv (sum_sin (4,:), ang F5);

out_5 = Conv (sum_sin (5,:), F2) Conv (sum_sin (5,:), f6);

out_6 = Conv (sum_sin (6,:), F2) Conv (sum_sin (6,:), F7);

out_7 = Conv (sum_sin (7,:), f3) Conv (sum_sin (7,:), ang F5);

out_8 = Conv (sum_sin (8,:), f3) Conv (sum_sin (8,:), f6);

out_9 = Conv (sum_sin (9,:), f3) Conv (sum_sin (9,:), F7);

out_10 = Conv (sum_sin (10,:), f4) Conv (sum_sin (10,:), ang F5);

out_11 = Conv (sum_sin (11,:), f4) Conv (sum_sin (11,:), f6);

out_12 = Conv (sum_sin (12,:), f4) Conv (sum_sin (12,:), F7);kapirasong (abs (fft (out_1)));

tayahin

kapirasong (abs (fft (out_2)));

tayahin

kapirasong (abs (fft (out_3)));

tayahin

kapirasong (abs (fft (out_4)));

tayahin

kapirasong (abs (fft (out_5)));

tayahin

kapirasong (abs (fft (out_6)));

tayahin

kapirasong (abs (fft (out_7)));

tayahin

kapirasong (abs (fft (out_8)));

tayahin

kapirasong (abs (fft (out_9)));

tayahin

kapirasong (abs (fft (out_10)));

tayahin

kapirasong (abs (fft (out_11)));

tayahin

kapirasong (abs (fft (out_12)));

tayahin
 
Paano baguhin ang may wavread?Added pagkatapos ng 5 oras 7 minuto:Ang wavfile ibinigay ay tones mula sa iba't ibang numero sa
DTMF.Isang numero ay binubuo 1,024 mga halimbawa.Ang sampling
kadalasan ay 8,000 Hz.Ang iyong gawain ay upang makilala ang mga
numero
Paumanhin, ngunit kailangan mong mag-login in upang makita ang attachment na ito

 
Sa tingin ko na maaari kong tuklasin ang bilang dialed nang hindi gumagamit ng isang LPF.
Maaari ko bang malutas ang iyong problema nang hindi gumagamit ng isang LPF o ito ay isang dapat?

 
Mina Ayman wrote:

Sa tingin ko na maaari kong tuklasin ang bilang dialed nang hindi gumagamit ng isang LPF.

Maaari ko bang malutas ang iyong problema nang hindi gumagamit ng isang LPF o ito ay isang dapat?
 
Narito ang aking mga solusyon.
Maaari mong gamitin ang FFT para sa bawat alon at pagkatapos makahanap ng may frequency ay ang pinakamataas na magnitude.
Kaya, sa wakas ay maaari mo ng mapa na ito na kung saan ang susi ay pipi.

 
Nakarating na sinubukan na maghanap MathWorks para sa "DTMF"?Ito ang unang hit:
http://www.mathworks.com/products/demos/signaltlbx/dtmf/dtmfdemo.html

Sa pamamagitan ng ang paraan, ang DTMF tones sa wav file ay 201,020.Ako did ito sa MATLAB:

x = wavread ( 'batandsplab.wav');
specgram (x, 512, 8000, hamming (512), 500);
colormap (bone. ^ 4); ylim ([0 2000]);

Code:

1,209 Hz 1,336 Hz 1,477 Hz

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _

| | | |

| | ABC | DEF |

697 Hz | 1 | 2 | 3 |

| _ _ _ _ __ _ _ _ __ _ _ _ _ _ |

| | | |

| GHI | JKL | MNO |

770 Hz | 4 | 5 | 6 |

| _ _ _ _ __ _ _ _ __ _ _ _ _ _ |

| | | |

| PRS | TUV | WXY |

852 Hz | 7 | 8 | 9 |

| _ _ _ _ __ _ _ _ __ _ _ _ _ _ |

| | | |

| | | |

941 Hz | * | 0 | # |

| _ _ _ _ __ _ _ _ __ _ _ _ _ _ |

 
mata wrote:

Narito ang aking mga solusyon.

Maaari mong gamitin ang FFT para sa bawat alon at pagkatapos makahanap ng may frequency ay ang pinakamataas na magnitude.

Kaya, sa wakas ay maaari mo ng mapa na ito na kung saan ang susi ay pipi.
 
Mangyari lamang na ako ang parehong problema ngunit kailangan ko ito sa LabVIEW

 

Welcome to EDABoard.com

Sponsor

Back
Top