Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Scanner Examples

This directory contains simple examples and full applications that demonstrate how to use Scanner.


  • Walkthrough.ipynb: an IPython notebook that goes through a simple application (shot detection) using Scanner.
  • List of Tutorials: a set of well-commented files exploring different Scanner features in code.

If you want to run the notebook yourself so that you can interactively edit the code, run:

cd path/to/your/scanner/directory/
cd examples
jupyter notebook --allow-root --ip= --port=8888

Then in your browser, go to http://localhost:8888/notebooks/Walkthrough.ipynb and copy in the token from the console logs. Follow the instructions in the Jupyter notebook.

Example Applications

  • face_detection: Detect all faces in a video, and then render a new video overlaying the face bounding boxes on the video.
  • shot_detection: Segment a video into shots and then create a single image montage featuring one thumbnail for each shot. (Same application as the walkthrough.)
  • hyperlapse: Create a stable timelapse video using the Hyperlapse algorithm.
  • optical_flow: Use OpenCV to compute flow fields within a video.
  • object_detection_tensorflow: Use Tensorflow's SSD Mobilenet DNN to detect objects.
  • detectron: Use the Detectron object detection API for Caffe2 to detect objects.
  • reverse_image_search: Search through a video to look for a query frame.
  • depth_from_stereo: Compute a per-pixel depth image from two views of the same location.


  • tensorflow: How to expose TensorFlow computations as Scanner graph operations.
  • caffe: How to use Caffe nets as Scanner graph operations.
  • python_kernel: How to implement Scanner graph ops in Python.
  • halide: How to use Halide kernels as Scanner graph operations.