QRS detection is a crucial step in analyzing the electrocardiogram (ECG). For ECG collected by wearable devices, a robust QRS detection algorithm that yields high accuracy in spite of abnormal QRS morphologies and severe noise is needed. In this paper, we propose a QRS detection method based on high-resolution wavelet packet decomposition (HR-WPD) and convolutional neural network (CNN). Firstly, we design the HR-WPD that decomposes the ECG into multiple signals with different frequency bands to provide detailed QRS features. Secondly, all the decomposed signals are forwarded to a CNN for comprehensive morphology analysis and QRS prediction. To further improve the robustness, a time-attention module acting on the input signals is added to the CNN. Finally, a variable threshold is imposed to locate the QRS. The proposed method is validated by using two noisy databases (i.e., Telehealth Database (TELEDB) and MIT-BIH Noise Stress Test Database (NSTDB)) and one database with multiple ECG morphologies (i.e., MIT-BIH Arrhythmia Database (ARRDB)). The experiment results show that the proposed method achieves a comparable or even better performance compared with state-of-art methods on the TELEDB (SE 98.99%, P+ 95.57%, ER 5.61%, F1 97.25%), NSTDB (SE 99.25%, P+ 96.31%, ER 4.55%, F1 97.76%) and ARRDB (SE 99.89%, P+ 99.90%, ER 0.21%, F1 99.89%), suggesting that it is highly applicable to the QRS detection for ECG collected by wearable devices. INDEX TERMS Electrocardiogram, convolutional neural network, wavelet packet decomposition, QRS detect.