Also determining when the move stopped would be an interesting question for computer vision to solve.
These kinds of problems have been solved in other situations, but not with 100% accuracy, and certainly not at prices that are even close to being competitive with the DGT board.
We need to find a way to communicate the idea to professors.
Maybe with two cameras placed in two different locations this can be done reliably.
But then my programming background kicked in and I thought "there must be some software that can process a movie and write the PGN". I think the board has to be filmed from top-down to produce a "2D"-image.
Then in 2014 other students created a better version for Android named chesstrack.
Oh by the way, what you're asking for is done already, but not using software as far as I know, there's an old project that was coded using Pascal, cameras placed over the board, robots do image processing and make a move. Edit: promoting to anything different than queen will make everything explode.
It will also be very hard to support this (my program for Part 2 supports underpromotion, but storing the info of Part 1 purely by reading pixels is a nightmare).
Sometimes during blitz games over the board, or when in zeitnot, it gets very difficult to annotate them.
I've seen several software / hardware to help in writing the notation, even one that's FIDE approved; these require that you repeat the moves on the device.
That was easy, now the hard part, you need to start doing image processioning, for that, the most powerful is Open CV.