Как я могу найти интенсивность звука с помощью Matlab? - PullRequest
1 голос
/ 22 декабря 2011

Я ищу некоторые функции в MATLAB, чтобы узнать некоторые параметры звука, такие как интенсивность, плотность, частота, время и спектральная идентичность. я знаю, как использовать «аудиорекордер» в качестве функции для записи сэмплированного голоса, а также «getaudio» для его построения. Но мне нужно реализовать параметры сэмплированного записанного голоса, о которых я упоминал выше. будь так благодарен, если кто-нибудь сможет мне помочь.

Ответы [ 2 ]

1 голос
/ 22 декабря 2011

Это очень расплывчатый вопрос, вы, возможно, захотите сузить его (сначала) и добавить как можно больше контекстных деталей, это, безусловно, привлечет гораздо больше ответов (также, как упомянул Ион, вы можете опубликоватьhttp://dsp.stackexchange.com).

Интенсивность звука : давление обычно измеряется микрофонами, но из этого вы можете легко получить интенсивность (см. этот вопрос ). Ваша основная проблемамикрофоны обычно не откалиброваны, это означает, что вы не можете связать амплитуду с давлением. Вы можете получить плотность звука из интенсивности звука.

Частота : выможно получить спектр вашего звука, используя быстрое преобразование Фурье (см. функцию Matlab fft).

Что касается спектральной или временной идентичности, я считаю, что это понятия психоакустики, которыеэто не моя область знаний.

0 голосов
/ 22 декабря 2011

Я не эксперт, но я немного играл с Матлабом в прошлом.

Одна функция, которую я помню, была wavread () для ввода звукового сигнала в Matlab, который при выполнении в этой форме [Y, FS, NBITS]=WAVREAD("AUDIO.WAV") вернул бы что-то вроде:

AUDIO.WAV: 
Fs = 100 kHz 
Bits per sample = 10 
Size = 100000

(цифры с макушки головы)

Теперь о других вещах, которые вы спрашиваете, я не совсем уверен. Вы можете ожидать лучшего ответа от кого-то еще. Я думаю, что этот вопрос должен быть перенесен в Signal Processing SE, кстати.

...