2

I am using Python picamera2 to capture a max res still image from a new Pi Camera Module 3. I create a picamera2 instance (I'll call picam2), configure it ahead (including manual fixed focus) and start it. Then I wait for a falling edge on a GPIO pin as a trigger. Finally, I issue picam2.capture_file(fileName) . I am wondering roughly how long before the image sensor data is captured. I don't mind waiting a long time for that data to be available to me, but I'm wondering roughly how long it takes after the trigger for the light on the sensor to be encoded (i.e. a moment captured!). Could anyone explain what needs to happen inside capture_file leading up to that moment? I'm using a new Raspberry Pi 3A+. Thank you, DS

3
  • I guess the time it take is roughly exposure time + readout time + file IO
    – Vadim
    Commented Mar 19, 2023 at 19:12
  • Thank you. The reason I'm asking is I'm building an array of cameras for photogrammetry and synchronization is important. My trigger is a falling edge that arrives at all cameras synchronously. In a little test of two cameras viewing the default Android stop watch on a Pixel 7 phone (perhaps 90 Hz update; I know the screen update rate is an issue), I observe delays in the two captured images of at minimum about 10 to 20 ms (perhaps! given the phone screen). In one instance the delay between images was a whopping 5 seconds! I'll post a more targeted question about how to minimize this delay. Commented Mar 22, 2023 at 19:05
  • 1
    Sounds like you need some more sophisticated way to trigger your cameras or even a different hardware concept. With Raspberry Pi you are controlling the cameras with software and Linux is not a real-time operating system, meaning getting timing below 10ms will be a challenge if possible at all...
    – Vadim
    Commented Mar 23, 2023 at 10:12

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.