Strand Camera - low-latency single camera acquisition and tracking software
Strand Camera is free, open-source low-latency camera acquisition and tracking software. It is useful for 2D tracking of animals, robots, or other moving objects. It also serves as the basis for 3D tracking using Braid.
Strand Camera is the successor of fview, and is the result of a rewrite focused on performance, ease of use, and flexibility.
Features
- Low-latency, marker-free 2D tracking of multiple animals based on high-performance background subtraction.
- Tracking latency is dominated by image acquisition time, with all aspects of the program written to prioritize low latency image acquisition and processing.
- Basler USB3 and GigE area cameras are supported
- Recording of compressed video into MP4 files with precise timestamps
- H264 hardware encoding via Nvidia NVENC (direct) or via ffmpeg (supports NVENC, Intel Quick Sync, AMD AMF, and software encoding)
- Post triggering to enable "time travel" to the past. Images are continuously buffered to computer memory and then, if the command is given, this data from the past is used at the start of recording an MP4 video to disk.
- Web based user interface allowing easy remote control
- Loading of camera settings files saved with the manufacturer-supplied camera application.
- Integrated Python scripting
- Python-based image processing (e.g. with DeepLabCut)
- Python-based control of all user interface elements in the web-based interface.
Documentation
- User's guide for Strand Camera (and Braid)
- API documentation for
flydra_feature_detector_types::ImPtDetectCfg. Follow links for other API documentation.
Download
Releases are provided via GitHub.
Supported operating system
Ubuntu Linux (64 bit Intel/AMD) is supported. The lab tests internally on macOS and Windows.
Licensing
Strand Camera is free and open source software.
Support
Support is offered on a best effort basis via the github repository or the online forum. Contact Andrew Straw regarding for potential availability for collaboration or custom development.
Funding
Strand Camera is developed partly via the BeeTracked project which is funded by the the VolkswagenStiftung. Further support comes from the University of Freiburg.