I've been using
mplayer for almost all of my multimedia needs... it reads almost anything you can throw at it, it's blazingly fast, it is rock
solid and configurable. It even has an almost working GUI, should you like to have one... I don't :-)
Coming to your problem: it supports a JPEG video output mode that saves each video frame as a separate jpeg image; it's not difficult to extract just a single frame, if that's what you want:
mplayer -vo jpeg -frames 1 _video_file_
Since everything can be configured and used from the command line, automating the work with a few Perl strokes should be an almost trivial task.
HTH,
Ant9000