pinpoint: behavioral tracking using 2D barcode tags
pinpoint is a Python library for generating and tracking 2D barcode tags. The library uses numpy and matplotlib to generate barcode tags and uses OpenCV to automatically track each tag. It provides a high-level API for the automated measurement of animal behavior and locomotion.
This software is still in early-release development. Expect some adventures.
If you use this software for academic research, please consider citing it using this zenodo DOI:
Install the development version:
pip install git+https://www.github.com/jgraving/pinpoint.git
Please submit bugs or feature requests to the GitHub issue tracker
Released under a Apache 2.0 License. See LICENSE for details.
pinpoint is based on ArUco:
Garrido-Jurado, S., Muñoz-Salinas, R., Madrid-Cuevas, F. J., & Marín-Jiménez, M. J. (2014). Automatic generation and detection of highly reliable fiducial markers under occlusion. Pattern Recognition, 47(6), 2280-2292.
Other similar marker systems are also publicly available, such as AprilTag:
Wang, J., & Olson, E. (2016). AprilTag 2: Efficient and robust fiducial detection. In Intelligent Robots and Systems (IROS), 2016 IEEE/RSJ International Conference (pp. 4193-4198). IEEE.
If you require barcode tracking in MATLAB see BEETag:
Crall, J. D., Gravish, N., Mountcastle, A. M., & Combes, S. A. (2015). BEEtag: a low-cost, image-based tracking system for the study of animal behavior and locomotion. PloS one, 10(9), e0136487.