10 ms·
We use a strobe light instead of a mechanical shutter with a flash duration of 500ns.
by revalo 7y ago
We use a strobe light instead of a mechanical shutter with a flash duration of 500ns.
- andrewstuart 7y agoHow does it work from a code perspective inside the RP?
- revalo 7y agoWe reverse engineered the camera module's I2C protocol and figured out how to ask it to to energize all pixel lines at once instead of it going line by line. The heart of it is just sending a few bytes down the I2C bus, but reverse engineering the register set was the challenging part as the datasheets are given only to OEMs.
- andrewstuart 7y agoIs it actually capturing 2 million frames per second? What is the resolution/byte size of each frame versus the bandwidth of the I2C bus? Is there room on the bus for all that data?
- adrianpike 7y agoIt is not - from what I gather it's capturing a single exposure of a scene lit via a strobe to give a virtual 1/2000000s shutter speed. Still super cool - the meat of what's novel here isn't the image assembly though, but rather the reverse engineering of the pi cams in a global shutter mode - I'm definitely interested in what the tradeoffs are around global vs. rolling shutter, if there's image artifacts or bandwidth issues, or what. Neat work gang!
- HanayamaTriplet 7y agoVery neat! Was this also tested to see if it works on the Camera Module V2, by any chance?
- benboughton1 7y agoI would also like to know this.
- revalo 7y agoWe spent the first month of the project on the v2 modules. These are based on the Sony IMX219. Unlike the v1 cameras, the datasheets are publicly available and even then, after much hacking around we couldn't get all the lines to expose at the same time :'/
- jacobush 7y agoHow often can you get a readout? If it can go as often as 24fps, I can make my digital Super 8 camera with global shutter. :)