This doesn't look like a reasonable solution for casual situations, but it makes me wonder - what is the state of the art on reading keystrokes based on vision? Is there any research on an automated system that would read the keystrokes and in case of an imperfect read maybe match them against dictionary words? How reliable could such system be and what technical limitations would it have?