A method of detecting abnormalities in an ECG signals, comprising receiving an ECG signal, extracting at least one ECG beat the ECG signal; providing the at least one ECG beat to a neural network. Within the neural network, performing at least two layers of convolution operations, and for a beat of the ECG signal, determining a confidence map for the location of each of the P, Q, R, S and T points, determining, from the respective confidence maps the position or absence of points, the points comprising each of the P, Q, R, S and T points; and reporting the positions and/or absence of the points.