Pulmonary crackles are used as indicators for the diagnosis of different pulmonary disorders in auscultation. Crackles are very common adventitious transient sounds. From the characteristics of crackles such as timing and number of occurrences, the type and the severity of the pulmonary diseases may be assessed. In this study, a method is proposed for crackle detection. In this method, various feature sets are extracted using time-frequency and time-scale analysis from pulmonary signals. In order to understand the effect of using different window and wavelet types in time-frequency and time-scale analysis in detecting crackles, different windows and wavelets are tested such as Gaussian, Blackman, Hanning, Hamming, Bartlett, Triangular and Rectangular windows for time-frequency analysis and Morlet, Mexican Hat and Paul wavelets for time-scale analysis. The extracted feature sets, both individually and as an ensemble of networks, are fed into three different machine learning algorithms: Support Vector Machines, k-Nearest Neighbor and Multilayer Perceptron. Moreover, in order to improve the success of the model, prior to the time-frequency/scale analysis, frequency bands containing no-crackle information are removed using dual-tree complex wavelet transform, which is a shift invariant transform with limited redundancy compared to the conventional discrete wavelet transform. The comparative results of individual feature sets and ensemble of sets, which are extracted using different window and wavelet types, for both pre-processed and non-pre-processed data with different machine learning algorithms, are extensively evaluated and compared. (C) 2012 Elsevier Inc. All rights reserved.