The simple concept behind blood tests is chromatographic comparison of different chemicals at different concentrations. Many such chemical strips come with labelled values with change in color.
Using Image Processing we can use these values to interpolate results for images of these strips that have been captured via webcam, mobile cameras, scanners etc. We get the RGB values of standard concentrations i.e. 0, 100, 300, 1000, 3000 mg/dL which will be used for interpolation.
This is done by calculating the number of bounded objects in each frame and capturing the frame when that number is one. This can be done by using canny edge detection.
The co-ordinates of this bounded rectangle are traversed through and we try to get the RGB values at the point of application i.e. most commonly the centroid of the bounded retangle. The RGB values of the centroid are used as the independent variable in the interpolating function to calculate the concentration.
This can prove to be a simple yet very effective way for glucose, protein, pH tests in places where special devices are not accessible. The core technology is valid for similar forms where such strips are used i.e. most components of blood tests.
The windows app (health.exe) and the source code are up on Github: https://github.com/Aakash10399/simple-health-glucheck