From: Shikano M. <sh...@us...> - 2016-11-02 07:13:42
|
Update of /cvsroot/sp-tk/SPTK/doc/ref_e In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv8343 Modified Files: lmadf.tex Log Message: add the cascaded filter option and the figures of LMA filter Index: lmadf.tex =================================================================== RCS file: /cvsroot/sp-tk/SPTK/doc/ref_e/lmadf.tex,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -d -r1.25 -r1.26 *** lmadf.tex 18 Dec 2015 07:53:25 -0000 1.25 --- lmadf.tex 2 Nov 2016 07:13:40 -0000 1.26 *************** *** 42,45 **** --- 42,46 ---- % POSSIBILITY OF SUCH DAMAGE. % % ----------------------------------------------------------------- % + \hypertarget{lmadf}{} \name[ref:acep-IEEESP,ref:LMA-IECE]{lmadf}% *************** *** 47,58 **** \begin{synopsis} ! \item [lmadf] [ --m $M$ ] [ --p $P$ ] [ --i $I$ ] [ --P $Pa$ ] [ --v ] [ --t ] [ --k ] ! {\em cfile} [ {\em infile} ] \end{synopsis} \begin{qsection}{DESCRIPTION} {\em lmadf} derives a Log Magnitude Approximation filter ! from the cepstral coefficients $c(0),c(1),\ldots,c(M)$ in {\em cfile} ! and uses it to filter an excitation sequence from {\em infile} (or standard input) in order to synthesize speech data, sending the result to standard output. --- 48,60 ---- \begin{synopsis} ! \item [lmadf] [ --m $M$ ] [ --p $P$ ] [ --i $I$ ] [ --P $Pa$ ] [ --k ] ! [ --v ] [ --t ] [ --B $B1,B2,...$ ] ! \item [\ ~~~~]{\em cfile} [ {\em infile} ] \end{synopsis} \begin{qsection}{DESCRIPTION} {\em lmadf} derives a Log Magnitude Approximation filter ! from the cepstral coefficients \\ ! $c(0),c(1),\ldots,c(M)$ in {\em cfile} and uses it to filter an excitation sequence from {\em infile} (or standard input) in order to synthesize speech data, sending the result to standard output. *************** *** 66,79 **** H(z) = \exp \sum_{m=0}^{M} c(m) z^{-m} \end{displaymath} ! If we remove the gain $K = \exp c(0)$ from the transfer function $H(z)$, then we obtain the following transfer function \begin{displaymath} D(z) = \exp \sum_{m=1}^{M} c(m) z^{-m}, \end{displaymath} ! which can be realized using the basic FIR filter \begin{displaymath} F(z) = \sum_{m=1}^{M} c(m) z^{-m} \end{displaymath} ! as shown in Figure \ref{fig:lmadflt_LMA}(a). ! Also, as it can be seen in Figure \ref{fig:lmadflt_LMA}(b), the basic filter $F(z)$ can be decomposed as follows \begin{displaymath} --- 68,88 ---- H(z) = \exp \sum_{m=0}^{M} c(m) z^{-m} \end{displaymath} ! If we remove the gain $K = \exp c(0)$ from the transfer function ! $H(z)$, then we obtain the following transfer function. \begin{displaymath} D(z) = \exp \sum_{m=1}^{M} c(m) z^{-m}, \end{displaymath} ! The filter $D(z)$ can be constructed as shown in Figure ! \ref{fig:lmadflt_LMA}(a), where the basic ! FIR filter (Figure \ref{fig:lmadflt_LMA}(b)) is ! the following filter. \begin{displaymath} F(z) = \sum_{m=1}^{M} c(m) z^{-m} \end{displaymath} ! If the -t option is assigned, the basic FIR filter (Figure ! \ref{fig:lmadflt_LMA}(b)) are transposed. The transposed FIR filter ! can be constructed as shown in Figure \ref{fig:lmadflt_LMA}(c). ! ! It can be seen in Figure \ref{fig:lmadflt_LMA}(d), the basic filter $F(z)$ can be decomposed as follows \begin{displaymath} *************** *** 87,95 **** By doing this decomposition, the accuracy of the approximation is improved. ! Also, the values of the coefficients $A_{4,l}$ are given ! in table \ref{tbl:lmadflt_pade} \par \setcounter{figure}{0} ! \begin{figure}[ht] \setlength{\unitlength}{0.9mm} \begin{center} --- 96,108 ---- By doing this decomposition, the accuracy of the approximation is improved. ! ! The values of the coefficients $A_{4,l}$ are given ! in table \ref{tbl:lmadflt_pade}. ! ! \newpage ! \par \setcounter{figure}{0} ! \begin{figure}[h] \setlength{\unitlength}{0.9mm} \begin{center} *************** *** 157,161 **** \end{center} ! \vspace{2mm} \setlength{\unitlength}{0.9mm} \begin{center} --- 170,194 ---- \end{center} ! \vspace{1mm} ! \setlength{\unitlength}{0.9mm} ! \begin{center} ! \leavevmode ! \includegraphics{fig/FIRflt.eps} ! \end{center} ! \begin{center} ! (b) ! \end{center} ! ! \vspace{1mm} ! \setlength{\unitlength}{0.9mm} ! \begin{center} ! \leavevmode ! \includegraphics{fig/transflt.eps} ! \end{center} ! \begin{center} ! (c) ! \end{center} ! ! \vspace{1mm} \setlength{\unitlength}{0.9mm} \begin{center} *************** *** 167,185 **** \put(47,8){\vector(1,0){10}} \put(89,8){\vector(1,0){15}} ! \put(2,10){\makebox(0,0)[lb]{$x(n)$}} ! \put(93,10){\makebox(0,0)[lb]{$y(n)$}} ! \put(0,17){\makebox(0,0)[lb]{Input}} ! \put(91,17){\makebox(0,0)[lb]{Output}} \end{picture} \end{center} \begin{center} ! (b) \end{center} \caption{\protect\parbox[t]{8cm}{ (a)~~$R_L(F(z))\simeq D(z)$~~~$L=4$ \protect\\ ! (b)~~2 level cascade realization\protect\\ \hspace*{5mm} $R_L(F_1(z))\cdot R_L(F_2(z))\simeq D(z)$ }} \label{fig:lmadflt_LMA} \end{figure} --- 200,218 ---- \put(47,8){\vector(1,0){10}} \put(89,8){\vector(1,0){15}} ! \put(0,10){\makebox(0,0)[lb]{Input}} ! \put(91,10){\makebox(0,0)[lb]{Output}} \end{picture} \end{center} \begin{center} ! (d) \end{center} + \caption{\protect\parbox[t]{8cm}{ (a)~~$R_L(F(z))\simeq D(z)$~~~$L=4$ \protect\\ ! (d)~~2 level cascade realization\protect\\ \hspace*{5mm} $R_L(F_1(z))\cdot R_L(F_2(z))\simeq D(z)$ }} \label{fig:lmadflt_LMA} + \end{figure} *************** *** 203,208 **** --- 236,243 ---- \label{tbl:lmadflt_pade} \end{table} + \end{qsection} + \begin{options} \argm{m}{M}{order of cepstrum}{25} *************** *** 213,217 **** \argm{k}{}{filtering without gain}{FALSE} \argm{v}{}{inverse filter}{FALSE} ! \argm{v}{}{transpose filter}{FALSE} \end{options} --- 248,255 ---- \argm{k}{}{filtering without gain}{FALSE} \argm{v}{}{inverse filter}{FALSE} ! \argm{t}{}{transpose filter}{FALSE} ! \desc[1ex]{(level 2)} ! \argm{B}{B1~B2~$\ldots$~Bn}{block size of cascaded filter,\\ ! where $(|B1|+\ldots+|Bn|)=m$}{FALSE} \end{options} *************** *** 223,232 **** {\em data.syn}. \begin{quote} ! \verb!excite < data.pitch | lmadf data.cep > data.syn! \end{quote} \end{qsection} \begin{qsection}{NOTICE} ! $Pa$ = 4 or 5. \end{qsection} --- 261,283 ---- {\em data.syn}. \begin{quote} ! \verb!excite < data.pitch | lmadf -m 15 data.cep > data.syn! \end{quote} + If one wants to divide the filter into several blocks, the -B option + can be used to specify the block size of each filter. + For example, when dividing 15-dimentional filter into 3 sub-parts(4, + 5, and 6), the corresponding command line is below. + \begin{quote} + \verb!excite < data.pitch | lmadf -m 15 -B 4 5 6 data.cep > data.syn! + \end{quote} + If the block size value assigned by the -B option is negative, the + block is not used. + \begin{quote} + \verb!excite < data.pitch | lmadf -m 15 -B 4 -5 6 data.cep > data.syn! + \end{quote} + \end{qsection} \begin{qsection}{NOTICE} ! $Pa$ = 4 or 5.\\ \end{qsection} |