Closed lionfish0 closed 1 week ago
Plan:
1) Either
(a) rely on initial [wifi] call to trigger the cameras being assumed to be synchronised
(b) think of another way of sending a sync signal to all the cameras?
(c) Use a version of the binary clock to sync them
2) During operation we can use buffer.get_timestamp()
after raw = np.frombuffer(buffer.get_data(),dtype=np.uint8).astype(float)
. About here.
I think these numbers are the times the images were captured in nanoseconds since power-up.
Note: I think I'll go with option (a) and start on building the binary clock into the Matrix Code spatial registration object.
References
closing as the bee_track issue can deal with this.
How we we calibrate the camera clocks/timing accurately?
How fast are bees? (What timing resolution is necessary)
The pin trigger and the camera capture aren't perfectly correlated.
There may also be time jitter if the time lag itself varies over time.
Ideas
systemd
service withcgroup
dedicated core)The problem might be that this only solves the problem of "jitter" in the timings, but the difference between cameras might still be a problem (in principle we should be able to set all the pis to the right time to the nearest 3-5ms, but I didn't have success!).