Technology

DIY Rig Tracks 16 Cameras at Four Billion Pixels

DIY optical – A maker-led DIY build aims to deliver Hollywood-style optical motion capture for V-tubing, using 16 infrared cameras, synchronized Raspberry Pi compute modules, and a custom pixel-processing pipeline—reportedly processing around four billion pixels per second.

He doesn’t claim he needed the rig to become an anime character—he’s explicit about that. Dennis, who runs the YouTube channel “Made By Dennis,” says he’s a maker, not a V-tuber. But his latest project lands squarely in the kind of optical motion-capture world that studios use. and it’s built with enough precision to turn “I wonder if I can…” into something that looks genuinely production-ready.

The core idea is optical motion capture: track a subject by placing markers on the parts you want tracked. filming from multiple angles. and processing the resulting pixels into coordinates in 3D space. The upside is speed and precision, especially at high speeds. The downside is brutal compute and setup—markers everywhere, cameras around the subject, and a mountain of pixels to process. Dennis’ build doesn’t just feel like a lot of work. It ends up at roughly four billion pixels being processed per second.

That number isn’t just a flex. The project leans on a hard requirement for accuracy: your camera positions have to be known extremely precisely. If you want sub-millimeter precision in 3D space, the cameras have to be fixed with sub-millimeter tolerance. It’s a big project, which is why Dennis packaged it into a long video.

At the center are DIY cameras built around an AR0234 MIPI camera mounted on a custom PCB with M12 lenses and infrared filters. Because optical motion capture typically uses near-IR light to improve the signal-to-noise ratio, the cameras are paired with ring lights made of near-IR LEDs.

Sync is handled through Raspberry Pi compute modules. The camera boards connect over the MIPI interface to Raspberry Pi compute modules—Dennis says the cheapest CM4 should work. but he’s using CM5s. Those compute modules sit on custom boards that provide PoE. with added control electronics including a small microcontroller that uses the pulse-per-second pin to help trigger the cameras in sync.

Power and timing are where the details get especially intense. Each camera has its own ring light of near-IR LEDs pulsing at 160 W. That sounds like a lot, and Dennis acknowledges it would be far beyond what PoE is specced to provide. The catch is duty cycle: the LEDs are only on when the camera is taking a frame. With 16 cameras. each with its own ring light. it still amounts to a huge burst of near-IR photons—just not a constant one. “Don’t forget your safety squints,” he adds.

Processing is where he departs from typical off-the-shelf tooling. Rather than handle the images with OpenCV. Dennis built a custom solution optimized for this use-case and reports it’s 300x faster. Even if you never care about V-tubing. the approach is positioned as something others can study rather than a closed black box. Dennis places the implementation on GitHub alongside the rest of the project.

The build also frames optical motion capture as part of a broader ecosystem. IMU-based setups exist—strap sensors to yourself and you can get an easier, cheaper path. But you shouldn’t expect the same precision.

For now. the rig stands as a meticulous answer to one question: what would it take to get optical motion capture working at a scale that feels. at least in engineering spirit. closer to Hollywood than hobby?. Dennis’ project points to a simple truth—four billion pixels per second is what it takes to make the illusion feel convincing.

V-tubing optical motion capture DIY IR cameras Raspberry Pi CM5 AR0234 MIPI near-IR LED ring lights PoE GitHub motion tracking rig

Leave a Reply

Your email address will not be published. Required fields are marked *

Are you human? Please solve:Captcha


Secret Link

Warning: foreach() argument must be of type array|object, null given in /home/misryoum/public_html/wp-content/plugins/wp-defender/src/component/class-network-cron-manager.php on line 216