Indirect opthalmoscopy is a commonly used technique by clinicians to view the retina of a patient, using a condensing lens with a power of 20 Dioptres ("20D lens").
Our team decided to start here. We used a low-cost disposable 20D lens (Sensor Med Tech) and a 3D-printed housing for the raspberry PI (rPI), camera and screen. We used a raspberry PI camera with an M12 lens mount so we could use off the shelf CCTV lenses with a narrow field of view (16mm focal length lens in our case).
To view the retina, we need to shine a collimated beam of light into the eye, through the pupil. But this naturally causes the pupil to constrict, which reduces our view of the retina and makes it very difficult to use an Indirect ophthalmoscope. The medical fraternity gets around this problem using dilating drops - eye drops which temporarily relax the iris and artificially dilate the pupil for a few hours. This causes blurry vision for a few hours and is something we wanted to avoid.
We instead decided to use a simple workaround: Using infrared (IR) illumination to look into the retina (in a dark surrounding). Since IR is invisible to the human eye, the pupil should dilate in the darkness and allow a large portion of the retina to be visible. At this stage, we would flash a white LED (3200K colour temperature to mimick incandescent illumination, similar to the spectrum of light used in state of the art devices) and quickly take an image while the pupil was still dilated.
Rather than get started testing on patients right away, we decided to test our system out on a model eye (Gulden Ophthalmics). We observed that we could get a clear retinal image when the distance between the 20D lens and the camera was at an optimum of 270mm. At this distance, the retina view occupied the maximum portion of the field of view of the camera.
Issues to work on:
1. Removal of glare (the shiny points at the center of the image) caused by the 20D lens
2. "Crescent" shadow at the bottom caused by off-axis illumination
3. The entire setup was very long and clumsy. It would be better to compress it into a smaller product.
4. The tiny screen of the rPI could not allow us to view small details while debugging.