# v_stoi2prob

## PURPOSE

V_STOI2PROB convert STOI to probability

## SYNOPSIS

function p=v_stoi2prob(s,m)

## DESCRIPTION

    V_STOI2PROB convert STOI to probability

      Inputs:  S(M,N)       matrix containing STOI values
               M            mapping: 'i' IEEE sentences [default]
                                     'd' Dantale corpus

     Outputs:  P(M,N)       Corresponding probability values

     STOI is an intelligibility metric described in [1]. The
     mapping from STOI to intelligibilty is corpus-dependent:
     this functions implements two mappings given in [1].

     [1]    C. H. Taal, R. C. Hendriks, R. Heusdens, and J. Jensen.
           An algorithm for intelligibility prediction of time-frequency weighted noisy speech.
           IEEE Trans. Audio, Speech, Language Processing, 19 (7): 2125-2136, 2011.
           doi: 10.1109/TASL.2011.2114881.

## CROSS-REFERENCE INFORMATION

This function calls:

- v_stoi2prob V_STOI2PROB convert STOI to probability

This function is called by:

- v_stoi2prob V_STOI2PROB convert STOI to probability

## SOURCE CODE

    0001 function p=v_stoi2prob(s,m)
    0002 %V_STOI2PROB convert STOI to probability
    0003 %
    0004 %  Inputs:  S(M,N)       matrix containing STOI values
    0005 %           M            mapping: 'i' IEEE sentences [default]
    0006 %                                 'd' Dantale corpus
    0007 %
    0008 % Outputs:  P(M,N)       Corresponding probability values
    0009 %
    0010 % STOI is an intelligibility metric described in [1]. The
    0011 % mapping from STOI to intelligibilty is corpus-dependent:
    0012 % this functions implements two mappings given in [1].
    0013 %
    0014 % [1]    C. H. Taal, R. C. Hendriks, R. Heusdens, and J. Jensen.
    0015 %       An algorithm for intelligibility prediction of time-frequency weighted noisy speech.
    0016 %       IEEE Trans. Audio, Speech, Language Processing, 19 (7): 2125-2136, 2011.
    0017 %       doi: 10.1109/TASL.2011.2114881.
    0018
    0019 %      Copyright (C) Mike Brookes 2014
    0020 %      Version: $Id: v_stoi2prob.m 10865 2018-09-21 17:22:45Z dmb $
    0021 %
    0022 %   VOICEBOX is a MATLAB toolbox for speech processing.
    0023 %   Home page: http://www.ee.ic.ac.uk/hp/staff/dmb/voicebox/voicebox.html
    0024 %
    0025 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    0026 %   This program is free software; you can redistribute it and/or modify
    0027 %   it under the terms of the GNU Lesser General Public License as published by
    0028 %   the Free Software Foundation; either version 3 of the License, or
    0029 %   (at your option) any later version.
    0030 %
    0031 %   This program is distributed in the hope that it will be useful,
    0032 %   but WITHOUT ANY WARRANTY; without even the implied warranty of
    0033 %   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    0034 %   GNU Lesser General Public License for more details.
    0035 %
    0036 %   You can obtain a copy of the GNU Lesser General Public License from
    0037 %   https://www.gnu.org/licenses/ .
    0038 %
    0039 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    0040
    0041 if nargin<2 || ~numel(m) || m(1)=='i'
    0042     a=-17.4906;
    0043     b=9.6921;
    0044     if ~nargin
    0045         s=[];
    0046     end
    0047 else
    0048     a=-14.5435;
    0049     b=7.0792;
    0050 end
    0051 p=1./(1+exp(a*s+b));
    0052 if ~nargout
    0053     if ~nargin
    0054         s=linspace(0,1,100);
    0055     end
    0056     plot(s,v_stoi2prob(s,'d'),':k',s,v_stoi2prob(s,'i'),'-k')
    0057     xlabel('STOI');
    0058     ylabel('Intelligibility');
    0059     legend('Dantale corpus','IEEE sentences','location','best');
    0060 end