This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.
Follow the steps in following order:
DevelopmentEnvironment: instruction to install Python and OpenCV on Windows and Linux systems
TTLandZmodo: instructions to set up TTL wiring for synchronizing the Picamera system with the neural recording system. Also contains information about setting up Zmodo multi display system. These instructions will work with minor modifications for any cheap security camera system capable of displaying videos from multiple cameras, which accepts composite video inputs from multiple cameras.
PicameraTrackingSystem: information about the Picamera system, operating the system and changes required to be made to Picamera library for accurate timestamping.
PicameraLibraryModified: modified Picamera (http://picamera.readthedocs.io/en/release-1.13/) Python library code which allows accurate timestamping
PicameraVideoAcquistionScripts: codes used in capturing video data, frame timestamps and Transistor-Transistor Logic (TTL) pulse timestamps with difference in logging TTL timestamp.
LinuxStitchingCodes: codes used in calculating the camera intrinsic parameter and position tracking from multiple cameras
adjustTime_multiplesync: python script to account for temporal drift between the Picamera system and the Neuralynx data acquisition system. Requires: neuralynxio.py to read Neuralynx event file data.
(Compilation and running instruction are present within each sub folder)