Thursday, April 23, 15:30 - 18:00, Location: Show and Tell Area A
Vanishree Gopalakrishna, Nasser Kehtarnavaz, Philip Loizou
Cochlear implants are prosthetic devices that are used to restore partial hearing in profoundly deaf people. Currently there are more than 110,000 patients fitted with cochlear implants worldwide. There is a need for development of improved speech processing in cochlear implants. Currently there are no available research platforms which are portable and easy-to-use for development and evaluation of new algorithms. The ones which are available, for example SPEAR3, require knowledge of assembly language programming. Hence, the main aim of this project is to come up with a portable, interactive and low cost research platform for cochlear implant studies.
An interactive real-time cochlear implant system is developed on PDA platforms. The user has a choice to process speech signals using two well-known speech processing strategy that are used in most commercial cochlear implants. The two speech processing strategies are Continuous Interleaved Sampling (CIS) and Advanced Combination Encoder (ACE). CIS uses a set of bandpass filters or a filterbank to divide the input signal into different channels and using lowpass filters and rectifiers to extract the channel envelopes, which are then used to excite implanted electrodes. In the ACE strategy, FFT is used in place of a filterbank. In commercial cochlear implants using ACE, FFTs are computed at a lower rate compared to the input sampling rate due to the FFT computation demand at this rate. In our implementation of ACE, a recursive update procedure is adopted to update Fourier transform with every new input sample. This produces a higher analysis rate which in turn helps achieving a higher stimulation rate without having to repeat the stimulus frames.
The implementation is developed in LabVIEW in a hybrid mode that is by using both the graphical tools and C DLL (Dynamic Link Library). The graphical tools are used to provide user interactivity while the signal processing is implemented in C. The user has a choice to change various signal processing parameters such as the number of channels and channel spacing.
To have a real-time solution, various code optimizations have been carried out, one of which is fixed-point implementation in two different word sizes: 16 and 32 bit. Due to quantization errors introduced by the fixed-point processing, the computation of DFT is reset every 50ms in order to keep the MSE in the channel output to less than 1 percent as compared to the floating-point version.