资源简介
声音响度计算matlab程序,iso532(zwicker模型),计算整体响度,短时响度以及脉冲响度
代码片段和文件信息
function [N_tot N_specif BarkAxis LN] = Loudness_ISO532B(VectNiv3Oct FieldType)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% USE:
% [N_tot N_specif BarkAxis LN] = Loudness_ISO532B(VectNiv3Oct FieldType)
%
% FUNCTION:
% Computation of loudness (Zwicker model) according to ISO 532B / DIN 45631 norms.
% This model is valid for steady sounds.
% Code based on BASIC program published in the following article:
% “Program for calculating loudness according to DIN 45 631 (ISO 532B)“
% E.Zwicker and H.Fastl J.A.S.J (E) 12 1 (1991).
%
%
% INPUT:
% VectNiv3oct: vector of 1/3 octave levels into the 28 normalized bands (dBSPL)
% (see band frequency values below)
% FieldType : sound field type (0: free field (default value) 1: diffuse field)
%
% OUTPUT:
% N_tot : total loudness in sone
% N_specif: specific loudness in sone/bark
% BarkAxis: vector of Bark band numbers used for N_specif computation
% LN : loudness level in phon
%
%
% NOTA:
% third octave bands center frequencies required:
% [25 31.5 40 50 63 80 100 125 160 200 250 315 400 500 630 800 1000 1250 1600 2000 2500
% 3150 4000 5000 6300 8000 10000 12500]
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Pre-processing
if nargin < 2
FieldType = 0; % free field by default
elseif nargin == 2
if FieldType ~= 1 && FieldType ~= 0
error(‘FieldType value must be 0 or 1. (0=free field 1=diffuse field)‘);
end;
end;
Nbands3Oct = 28;
VectNiv3Oct = VectNiv3Oct(:);
if size(VectNiv3Oct1) ~= Nbands3Oct
error([‘Input vector must have ‘ num2str(Nbands3Oct) ‘ third octave bands values‘]);
end
if (max(VectNiv3Oct)) > 120 || min(VectNiv3Oct) < -60
error(‘Third octave levels must be within interval [-60 120] dBSPL (for model validity)‘);
end
%% Variables definition
% For information - Third octave bands center frequencies
% FR = [25 31.5 40 50 63 80 100 125 160 200 250 315 400 500 630 800 1000 1250 1600 2000 2500 3150 4000 5000 ...
% 6300 8000 10000 12500];
% Ranges of 1/3 octave band levels for correction at low frequencies
% according to equal loudness contours
RAP = [45 55 65 71 80 90 100 120];
% Reduction of 1/3 octave band levels at low frequencies according to
% equal loudness contours within the eight ranges defined by RAP
DLL = [-32 -24 -16 -10 -5 0 -7 -3 0 -2 0;
-29 -22 -15 -10 -4 0 -7 -2 0 -2 0;
-27 -19 -14 -9 -4 0 -6 -2 0 -2 0;
-25 -17 -12 -9 -3 0 -5 -2 0 -2 0;
-23 -16 -11 -7 -3 0 -4 -1 0 -1 0;
-20 -14 -10 -6 -3 0 -4 -1 0 -1 0;
-18 -12 -9 -6 -2 0 -3 -1 0 -1 0;
-15 -10 -8 -4 -2 0 -3 -1 0 -1 0];
% Critical band rate level at absolute threshold without taking into
% account the transmission characteristics of the ear
LTQ = [30 18 12 8 7 6 5 4 3 3 3 3 3 3 3 3 3 3 3 3];
% Correction of
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 9381 2014-03-17 11:04 Loudness_ISO532B.m
文件 2023 2014-03-17 11:04 Loudness_ISO532B_from_sound.m
文件 5081 2014-03-17 11:04 Loudness_LMIS.m
文件 12062 2014-03-17 11:06 Loudness_TimeVaryingSound_Moore.m
文件 16840 2014-03-17 11:07 Loudness_TimeVaryingSound_Zwicker.m
文件 14728 2014-03-17 11:05 Loudness_Validation.m
----------- --------- ---------- ----- ----
60115 6
相关资源
- Pattern Recognition and Machine Learning(高清
- MATLAB 编程 第二版 Stephen J. Chapman 著
- 均值滤波和FFT频谱分析Matlab代码
- 《MATLAB扩展编程》代码
- HDB3码、AMI码的MATLAB实现
- 3点GPS定位MATLAB仿真
- MATLAB数字信号处理85个实用案例精讲入
- matlab从入门到精通pdf94795
- 欧拉放大论文及matlab代码
- 跳一跳辅助_matlab版本
- 全面详解LTE MATLAB建模、仿真与实现
- MIMO-OFDM无线通信技术及MATLAB实现_孙锴
- MATLAB Programming for Engineers 4th - Chapman
- matlab 各种谱分析对比
- 分数阶chen混沌matlab程序
- 基于粒子群算法的非合作博弈的matl
- MATLAB车流仿真 包括跟驰、延误
- matlab空间桁架计算程序
- 基于MATLAB的图像特征点匹配和筛选
- DMA-TVP-FAVAR
- GPS信号的码捕获matlab代码.7z
- 一维光子晶体MATLAB仿真代码吸收率折
- newmark法源程序
- 传统关联成像、计算鬼成像matlab
- pri传统分选算法
- 摆动滚子推杆盘形凸轮设计
- 医学图像重建作业matlab源码
- Matlab实现混沌系统的控制
- 检测疲劳驾驶
- Matlab锁相环仿真-Phase Locked Loop.rar
评论
共有 条评论