34.4 Automatic Video Analysis

Video room monitor

Another area of research is the application of automatic video analysis to interactive multimedia. Chris Lindblad has termed this "computer-participative multimedia" since the computer is actively involved, reacting to the content of the video data [Lin93]. VideoScheme's monitor object makes it possible to easily implement such applications. For example, this VideoScheme code fragment implements the core of a video room monitor:

(set! camera (open-monitor 1))                  ; create a monitor object for a camera
(get-monitor-image camera baseline)             ; capture a baseline image
(while t
 (get-monitor-image camera new-image)           ; capture a new image
 (if (image-diff baseline new-image)            ; compare to baseline
  (record-segment camera "monitor-movie" 5.0))) ; record 5 seconds of video

With a camera pointed at a door this fragment keeps a running log of all the people who enter and leave the room. With the addition of a sound playback command this function could also serve as a video answering machine: people approaching a closed door could be automatically prompted to leave a videotaped message. This fragment assumes that any significant change in the image striking the camera represents a person. More sophisticated analysis functions could look for more specific phenomena. So, for example, they could automatically record television programs with a certain opening screen or on-screen logo