# Articulation Index

A quantitative measure of the intelligibility of speech; the percentage of speech items correctly perceived and recorded. An articulation index of 100% means that all speech can be understood, 0% means that no speech can be understood.
Articulation Index is calculated from the 1/3 octave band levels between 200Hz and 6300Hz centre frequencies. Each of the 1/3 octave dB(A) levels are weighted according to the following criteria:

• If A-weighted 1/3 octave level lies between upper and lower limits then it will be a linear value between 0 and 1.
• If value falls above the upper limit then result =0 for that particular 1/3 octave band.
• If value falls below the lower limit then result =1 for that particular 1/3 octave band.
• Multiply all of the calculated values by the AI weighting and sum all the values to get the AI in percentage terms.
 1/3 Octave Centre Frequency Hz AI lower level dB(A) AI upper level dB(A) AI Weighting 200 23.1 53.1 1.0 250 30.4 60.4 2.0 315 34.4 64.4 3.25 400 38.2 68.2 4.25 500 41.8 71.8 4.5 630 43.1 73.1 5.25 800 44.2 74.2 6.5 1000 44.0 74.0 7.25 1250 42.6 72.6 8.5 1600 41.0 71.0 11.5 2000 38.2 68.2 11 2500 36.3 66.3 9.5 3150 34.2 64.2 9.0 4000 31.0 61.0 7.75 5000 26.5 56.5 6.25 6300 20.9 50.9 2.5
AI

Frequency (Hz)

Notes:
• There are other methods of calculating articulation index. This particular method is that used within the automotive industry as a wind noise metric.
• AI is designed for use where the noise is broadband in nature.
• AI uses a limited frequency range 178Hz to 7080Hz (lower frequency of 200Hz 1/3 octave band to upper frequency of 6300Hz 1/3 octave band).
• An AI < 0.05 is representative of very poor speech intelligibility, and an AI > 0.80 represents good speech intelligibility.
• The Speech Privacy Index (PI) is derived from the AI.

### VBA Function

` Function AIval(thrdOct, dBA) Dim tho As Range th = Array(200, 250, 315, 400, 500, 630, 800, 1000, 1250, 1600, 2000, 2500, 3150, 4000, 5000, 6300) ailow = Array(23.1,30.4,34.4,38.2,41.8,43.1,44.2,44,42.6,41,38.2,36.3,34.2,31,26.5,20.9) aiwgt = Array(1, 2, 3.25, 4.25, 4.5, 5.25, 6.5, 7.25, 8.5, 11.5, 11, 9.5, 9, 7.75, 6.25, 2.5) 	′ count throught the array 	I = 0 		For Each tho In thrdOct 			I = I + 1 			For t = 0 To 15 				If tho = th(t) Then 					AIB = ((dBA(I) - ailow(t)) / 30) * aiwgt(t) 					If dBA(I) <= ailow(t) Then AIB = 0 					If dBA(I) >= ailow(t) + 30 Then AIB = aiwgt(t) 					AI = AI + AIB 				End If 			Next t 		Next tho 	AIval = 100 - AI End Function `

Subjects: Noise & Vibration