Detection Algorithm Comparison

I have been thinking about seizure detection algorithms.   The one I use for the OpenSeizureDetector Pebble watch looks for movement in the range 5-10 Hz, which seems to work for the high frequency jerky type of movements that I associate with a tonic-clonic seizure.   Although they have not published their algorithm, this seems similar to the Neutun app detection method.  Ryan Clark’s PebbleSeizureDetect uses a band pass filter to select a 1-3 Hz range, which is a much slower movement.     I am sure he has found that this works for the sort of seizures he is trying to detect.

I have made a couple of videos showing the sort of movement that the two algorithms detect – the watch on the left is running OpenSeizureDetector, and the one on the right PebbleSeizureDetect – you can hear the buzz when PebbleSeizureDetect alarms, or see the ‘WARNING’ or ‘ALARM’ phrase on the OpenSeizureDetector screen.

My concern is that the two algorithms are quite different – a seizure that alarms with OpenSeizureDetector will not trigger PebbleSeizureDetect.   I am pretty happy with the OpenSeizureDetector one – I have had some positive reports of it detecting seizures ok, and the movement it detects is consistent with some of the movement you can find on some slightly disturbing YouTube videos of people having seizures,  But Ryan developed his to work for his application…so which one is best to give the highest detection reliability?

Any thoughts would be appreciated – please either email graham@openseizuredetector.org.uk or use the Facebook OpenSeizureDetector page.

Video 1 – shows the ‘borderline’ movement that just alarms OpenSeizureDetector – first a few intermittent ‘WARNING’ alarms, then with a slightly higher amplitude movement, goes into ‘ALARM’ – PebbleSeizureDetect does not respond.

Video 2 – lower frequency movement that alarms PebbleSeizureDetect (about 25 seconds in), but not OpenSeizureDetector – demonstration of the higher frequency movement that alarms OpenSeizureDetector at the end of the video.

Final Testing of OpenSeizureDetector V2.0

I am just doing some final testing of V2.0 of OpenSeizureDetector, with a view to releasing it at the weekend, which will be exactly a year since I published the original version.

The things that have changed for V2.0 are:

  1. Manually raise an alarm by pressing and holding the DOWN watch button.
  2. Mute the alarms (for a selectable period) by pressing and holding the UP watch button.
  3. Major internal re-write of the android companion app, so it can use different data sources – this means it is ready for when Embrace ship their seizure detector watches – I will be able to make it compatible with the OpenSeizureDetector phone app.
  4. The Android app acts as both the server (which talks to the watch) and also the client (which talks to the server to give remote alarm annunciation) – no need for a separate client app any more.
  5. Pretty bar graphs showing how close you are to an alarm state.
  6. Tidier settings screens.
  7. Start-up screen to show the system initialising.
  8. User selectable data transfer period – you can reduce the amount of data sent from the watch to the phone – this is the most disappointing feature because it does not give the saving in battery power that I had hoped for.