8mm Film Face Detection

About

A quick project to analyze digitized 8mm family films using face detection. The application processes video files and generates an HTML report showing detected faces across the timeline.

Screenshot of the HTML report showing detected faces of me when I was about 1 year old, and a list of movies with timestamps where these faces were detected Screenshot of the HTML report showing detected faces of me when I was about 1 year old, and a list of movies with timestamps where these faces were detected

Technical Details

For more details and source code, check out github.com/kbals/8mm-face-recognition

Built using:

  • Python
  • OpenCV for face detection
  • face_recognition library for face recognition
  • Jinja2 for HTML report generation

The application:

  1. Processes video files frame by frame and detects faces with OpenCV
  2. Recognizes faces in each frame using the face_recognition library
  3. Saves face thumbnails and a list of timestamps where these faces were detected
  4. Generates an HTML report showing all detected faces

Development Time

A few hours, developed using Cursor AI IDE

Background

This project came about after digitizing my grandfather’s collection of 8mm films. The films contain family footage from the mid 1970s through the early 1980s, and I wanted an easy way to catalog who appears when in these videos. You can read more about the digitization process in my blog post, Digitizing Family Memories: From 8mm to AI Analysis.

Results

The face detection worked ok on older footage, although it certainly wasn’t perfect. The HTML report makes it easy to quickly scan through all appearances of family members throughout the videos. Some tuning of a threshold parameter allows for more or less strict detection.