Signal processing and feature extraction are two of the most significant steps for bearing fault diagnosis. The adaptive multi-scale morphological gradient (AMMG) algorithm, which can keep the detail of the signal with small scale structure elements and depress noise with large scale structure elements, was employed to extract the impulsive components hiding in the vibration signals from bearing. Furthermore, the non-negative matrix factorization technology was utilized to calculate the features of the signal processed by AMMG for bearing fault diagnosis. The vibration signals acquired from bearing with seven states were employed to validate the proposed signal processing and feature extraction scheme. Experimental results have demonstrated the superiority of the proposed methods over the traditional signal processing and feature extraction methods.