DIVE is a web interface for performing data management, video annotation, and running a portion of the algorithms stored within the VIAME repository. When compiled, docker instances for DIVE can be run either as local servers or online in web services. A sample instance of DIVE is running on a public server at viame.kitware.com.
- video annotation
- still image (and image sequence) annotation
- deep integration with VIAME computer vision analysis tools
- single-frame boxes, polygons, and lines
- multi-frame bounding box tracks with interpolation
- Automatic transcoding to support most video formats
- Customizable labeling with text, numeric, multiple-choice attributes
- Client User Guide
- Client Development Docs
- Server Development Docs
- Deployment Overview
- Running with Docker Compose
DIVE uses Girder for data management and has a typical girder + girder worker + docker architecture. See docker scripts for additional details.
- The client application is a standard @vue/cli application.
- The job runner is built on celery and Girder Worker. Command-line executables for VIAME and FFmpeg are built inside the worker docker image.
DIVE supports two Docker Compose modes:
- Default mode (GPU-enabled): starts the web stack, the standard worker, and GPU workers (
girder_worker_pipelines,girder_worker_training) for VIAME pipelines and training. - CPU-only mode (
--profile cpu): starts only the standard worker (girder_worker_default) and omits GPU workers.
# Default mode (GPU-enabled workers)
docker compose up -d
# CPU-only mode
docker compose --profile cpu up -dWhen GPU workers are not running (for example, in CPU-only mode), the web UI and API automatically disable pipeline and training actions.
DIVE takes two different kinds of input data, either a video file (e.g. .mpg) or an image sequence. Both types can be optionally accompanied with a CSV file containing video annotations. Example input sequences are available at https://viame.kitware.com/girder#collections.
When running an algorithmic pipelines or performing manual video annotation (and saving the annotations with the save button) output CSV files are produced containing output detections. Simultaneously a detection plot of results is shown underneath each video sequence.

