-
Notifications
You must be signed in to change notification settings - Fork 237
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Query about the timestamp of image frame #795
Comments
Quoting @alex-luxonis ^ |
@lenardxu The timestamp is assigned at the MIPI SoF (start of frame) event, when the sensor starts streaming the frame. For global shutter sensors, this follows immediately after the exposure for the whole frame was finished, so we can say the timestamp assigned is aligned with end-of-exposure-window (within a margin of few microseconds). Marked on the timing diagram from our docs (that you linked above): For rolling shutter sensors (as our high resolution RGB sensors), it's slightly different, MIPI SoF follows after the first row of the image was fully exposed and it's being streamed, but the following rows are still exposing or may have not started exposing yet (depending on exposure time).
|
@themarpe , @alex-luxonis First off, my hearty gratitude for your comprehensive clarification of timestamping method that is adopted by you, which is a brilliant way. Then I'd like to double check if I understand your way of timestamp assignment since it should be different from the normal way of timestamp assignment where timestamp is defined at the beginning of each image capture and of exposure, and I am not familiar with the concept of Request for an update/extension to another timestamping methodFinally, I'd like to request for an update/extension from your current timestamping method to the one which assigns the mid-exposure time to frame timestamp. That is out of better sync quality (no matter for hardware sync or software sync), for which you may still refer to section "B. Sensor Synchronization and Data Acquisition" of this paper (https://ieeexplore.ieee.org/document/6906892) and experiment section. According to their experiment results, the switch to aligning imu trigger to timestamp (mid-exposure time) of triggered image frame improves sync greatly. Although upon your description, I've learned that would be hard since the fixed period between each two frames would be broken when a simple switch to mid-exposure time is adopted, I still think it deserves your attention. |
@themarpe , @alex-luxonis There's still one question about exposure time. Given your current timestamping method and auto exposure by default, I'd like to try using fixed exposure in my software synchronization program (image frame as visual cue, imu measurement as triggered), to see if the alignment of mid-exposure time with imu timestamp will improve the sync quality. However, I don't know which temporal length of fixed exposure (say 0-33.3ms) is reasonable, I'd like to ask for you opinion. |
Now I am working on a project of synchronization between image and imu readings. To render the sync more precisely, I'd like to ask how the timestamp is assigned to the image frame that is acquired say using
depthai.DataOutputQueue.get()
method. Is it defined as the time instant when exposure finishes and the image is (fully) read from the sensor (You may refer to your shared doc (https://docs.luxonis.com/projects/hardware/en/latest/pages/guides/sync_frames.html?#software-soft-sync))? OR is it set as the time instant when exposure begins and the image capture starts, as commonly pointed out in related papers (you may refer to Section "B. Sensor Synchronization and Data Acquisition" of this paper (https://ieeexplore.ieee.org/document/6906892))?The text was updated successfully, but these errors were encountered: