For my next project I started analyzing apps that measure pulse via camera (you press a finger against the camera and you get your pulse info).
I concluded that the apps receives data from the camera with the help of a light. How do the achieve this? Can you direct me to any area I should Investigate?
If anyone is in a mood to help me explaining how does pulse measure apps work? I cannot find ANY doc on the net on this topic.
Thanks in advance
AFAIK such apps are using the preview mode of the Camera.
Using the method setPreviewCallBack(..) (and of course
startPreview())you can register your own listener that receives continuously calls from the camera containing the current seen picture:The image data is contained in the data byte array. The format of the data can be set via setPreviewFormat(). Using this data you can for example process the image and reduce it it’s brightness at certain point in the image. Over the time the image brightness should show pulses.
I don’t think that the necessary image algorithms are available by default in the Android runtime, therefore you have to develop own algorithms or look for 3rd party libraries that can be used on Android.