Rank: 89 based on 715 downloads (last 30 days) and 16 files submitted
photo

Kamil Wojcicki

E-mail
Company/University
Starkey Hearing Technologies
Lat/Long
44.8547, 93.4708

Personal Profile:

Professional profile:
http://www.linkedin.com/in/kamilwojcicki

Websites and blogs:
http://linux.dsplabs.com.au
http://kamil.dsplabs.com.au

Resumes:
http://cv.dsplabs.com.au (pdf)
http://kamil.dsplabs.com.au/resume (html)

PhD Dissertation:
http://tinyurl.com/phd-dissertation

Professional Interests:
Speech processing, speech enhancement, speech and speaker recognition, speech perception, machine learning and pattern recognition.

 

Watch this Author's files

 

Files Posted by Kamil View all
Updated   File Tags Downloads
(last 30 days)
Comments Rating
03 Mar 2012 Screenshot Multiple Colormaps Superimpose multiple semitransparent images with individual colormaps on the current axis. Author: Kamil Wojcicki colormap, colormaps, transparency 37 0
23 Jan 2012 Screenshot Exponential Smoother Exponential smoothing of time series. Author: Kamil Wojcicki smooth, exponential smoother, signal processing 29 0
  • 4.0
4.0 | 1 rating
02 Dec 2011 Screenshot Pure Tone Generator Generate pure tone or mixture of pure tones. Author: Kamil Wojcicki tone, pure tone, tone generator, fade 40 0
  • 5.0
5.0 | 1 rating
02 Dec 2011 Screenshot Mix Signals Mix two signals at a specific location. Author: Kamil Wojcicki mix, mix signals, mixer 7 0
01 Dec 2011 Screenshot Fade Signal Fades leading and trailing samples of a given input signal. Author: Kamil Wojcicki fade, taper, fadein, fadeout, signal processing 13 0
Comments and Ratings by Kamil View all
Updated File Comments Rating
15 Aug 2014 fshift Shifts the elements of an array by a (possibly non-integer) given number of elements. Author: Francois Bouffard

27 Apr 2012 Triangular Filterbank Frequency domain triangular filterbank with uniform spacing on arbitrarily warped frequency scale. Author: Kamil Wojcicki

If all you want is a warping other than the mel scale, then the function is written to support that, i.e., no need to change trifbank.m. I would just pass different warping / unwarping functions to it:

- in MATLAB type in: help trifbank

- then try the example given there ( it will poduce a mel filterbank ), e.g.:

fs = 16000; % sampling frequency (Hz)
nfft = 2^12; % fft size (number of frequency bins)
K = nfft/2+1; % length of each filter
M = 23; % number of filters

hz2mel = @(hz)(1127*log(1+hz/700)); % Hertz to mel warping
mel2hz = @(mel)(700*exp(mel/1127)-700); % mel to Hertz warping

% Design mel filterbank of M filters each K coefficients long,
% filters are uniformly spaced on the mel scale between 0 and Fs/2
[ H1, freq ] = trifbank( M, K, [0 fs/2], fs, hz2mel, mel2hz );

hfig = figure('Position', [25 100 800 600], 'PaperPositionMode', ...
'auto', 'Visible', 'on', 'color', 'w'); hold on;

plot( freq, H1 );
xlabel( 'Frequency (Hz)' ); ylabel( 'Weight' ); set( gca, 'box', 'off');

- in the above code, the warping function are defined in following variables:

hz2mel = @(hz)(1127*log(1+hz/700)); % Hertz to mel warping
mel2hz = @(mel)(700*exp(mel/1127)-700); % mel to Hertz warping

- to use different warping functions you first have to define these, e.g., if you want uniformly spaced filters on Hz scale use:

hz2warp = @(hz)( hz );
warp2hz = @(warp)( warp );

- and make sure you then update the trifbank call with the new function handles:

[ H1, freq ] = trifbank( M, K, [0 fs/2], fs, hz2warp, warp2hz );

02 Aug 2011 Gammatone filterbank Produce an array of responses from a fourth-order Gammatone filter via FFT Author: Christopher Hummersone

Works great, thank you.

13 Jun 2011 varycolor Provides maximum color variation for lines on plots. Author: Daniel Helmick

08 Jun 2011 Noise tracking algorithm for single-microphone speech signals Implements a data-driven noise tracking algorithm suitable for nonstationary noise sources. Author: Jan Erkelens

Comments and Ratings on Kamil's Files View all
Updated File Comment by Comments Rating
20 Oct 2014 Pure Tone Generator Generate pure tone or mixture of pure tones. Author: Kamil Wojcicki Su-Cheol

13 Aug 2014 Exponential Smoother Exponential smoothing of time series. Author: Kamil Wojcicki Mike

24 Jul 2014 HTK MFCC MATLAB Mel frequency cepstral coefficient feature extraction that closely matches that of HTK's HCopy. Author: Kamil Wojcicki yong, clarissa

Does anyone know which file should I run to achieve the final outcome? please help,thanks!!

23 Jul 2014 PESQ MATLAB Wrapper MATLAB wrapper for the PESQ binary. Both narrowband and wideband (WB-PESQ) modes are supported. Author: Kamil Wojcicki Prodeus, Arkadiy

5. Function pesqbin.m has bags: its results are NaN, when "reference" and "degraded" arguments are string variables.

For getting correct results, it is necessary make next corrections in pesqbin_linux and pesqbin_windous functions:

First correction:

if ischar(reference)
% WRONG:
%file.reference = reference;
%[ ~, fs, nbits ] = wavread( file.reference );
% RIGHT:
[ ref, fs, nbits ] = wavread( reference );
file.reference = sprintf( '%s%s%s', tmpdir, filesep, '~80b4eb734d.wav' );
wavwrite( 0.999*ref./max(abs(ref)), fs, nbits, file.reference );
else
...

Second correction:

if ischar(degraded)
% WRONG:
%file.degraded = degraded;
%[ ~, fs, nbits ] = wavread( file.degraded );
% RIGHT:
[ deg, fs, nbits ] = wavread( degraded );
file.degraded = sprintf( '%s%s%s', tmpdir, filesep, '~be4dfad7fba.wav' );
wavwrite( 0.999*deg./max(abs(deg)), fs, nbits, file.degraded );
else
...

Notice that we also changed "isstr" on "ischar" because of Matlab recommendations.

20 Jul 2014 PESQ MATLAB Wrapper MATLAB wrapper for the PESQ binary. Both narrowband and wideband (WB-PESQ) modes are supported. Author: Kamil Wojcicki Prodeus, Arkadiy

The idea is excellent. However, in practice (I use Windows XP), PESQ Matlab Wrapper has some significant drawbacks:

1. We find in description that "binary has to be installed on the target PC"; but only through experimentation we found out that file pesq.exe should be copied to directory C:\WINDOWS\system32 or as an alternative to the directory C:\DOCUME~1\USERNAME\LOCALS~\Temp

2. Calculation results are placed in the file pesq_results.txt, which is stored in the directory C:\DOCUME~1\USERNAME\LOCALS~1\Temp; it is inconvenient because researched audio files are not usually stored in the temporary directory.

3. Calculation results, placed in the file pesq_results.txt, are extremely uncomfortable for subsequent analysis, because identical "temporary" file names are used instead of genuine (and, of course, different) file names; it is especially inconvenient when analyzing the processing results of a set of different audio files.

4. Function pesqbin.m arguments are not the names of audio files, but the names of their corresponding numeric arrays; it confuses the user, as is different from the syntax of the program pesq.exe

Contact us