Create Your Own Bullet Time Camera Rig With Raspberry Pi
sfcrazy writes "A team of extremely creative people have created a really inexpensive bullet time set-up using Raspberry Pis — and the whole set-up costs less than a professional DSLR camera. The rig looks more like the LHC at CERN using nearly half a kilometre of network cables, 48 Raspberry Pis fitted with cameras and PiFace Control. The rig worked perfectly — in terms of doing what a bullet time set-up should do. Raspberry Pis achieved the Hollywood's 'frozen time' effect at a much lesser cost."
Submitter either meant 'effect' or is being a little sarcastic about the prevalence of bullet time.
Raspberry Pis achieved the Hollywood's 'frozen time' effect at a much lesser cost."
Really, judging from the movie in the link, the lesser cost was rather obvious in the quality of the product. Still cool, though.
"First they came for the slanderers and i said nothing."
I thought the quality of this one was better - and it's got to be cheaper and more reliable:
http://jeremiahwarren.com/blog/2013/06/30/how-to-create-a-diy-matrix-bullet-timetime-slice-rig-using-a-ceiling-fan-and-a-gopro/
But the Raspberry Pi 3D body scanner with many Pi's was cool:
http://www.raspberrypi.org/archives/5232
hold really still, have a bullet on a string, move the camera around it and you're done, and maybe still be culturally relevant since you weren't waiting 13 years for this.
48 rpis = 48 * $35 = $1680
48 cameras = 48 * $30 = $1440
48 piface = 48 * $34 = $1632
48 2gb sd cards = 48 * $8 = $384
48 5V PSU = $48 * 3 = $144
Up to here, it's $5280. Not including:
about half a kilometre of network cable
2 x 24 port switches
1 wireless router
custom laser cut frame
shipping
So let's say $6k. You can buy a nice professional DSLR for much much cheaper than that.
People were just sitting still while the camera eye circled them.
To maximize the effect, you should jump in the air to make it obvious you are frozen while the camera circles you.
They need to interpolate and time sequence the frames, but that is post processing.
Help stamp out iliturcy.
I'm not sure of the reason for the LCD's. Surely just one LCD for the control unit, or managing from a central PC would work fine.
The idea is great. Especially for stuff like school projects and the like, getting kids involved in computing by giving them the tools to recreate awesome movie effects is, by itself, a nice idea. But we're talking about something where inexpensive is a very relative thing. Of course, compared to the cost of a professional bullet time rig it might be inexpensive. But we're still talking 4-5 digit cost here. Which can easily push the limits for the average hobbyist, let alone something like a school class. I don't know about your classes, but we sure as hell did not have 4 figures to blow on a school project, let alone one that is kinda hard to justify towards some parents.
It remains a nice project, but I guess any halfway decent film maker would probably rather rent some time at a studio equipped with something like that, and everyone else can't blow roughly 5,000 to 10,000 bucks on a toy.
We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
Oops
The technique was not invented by the matrix creators. Take a look at this music video from 1985. http://www.youtube.com/watch?v=9el2lg2olpE (Accept - Midnight Mover)
For each station, we have (priced at Newark):
$40 Raspberry Pi B w/ NOOBS SD card.
$25 Camera module
$34 Piface display/control (seriously? why? aren't they controlled over the network? why aren't they headless? Oh, right: because this whole project is advertisement for Piface, even though their hardware contributes nothing of value to it...)
Making a total of $99 at each station. That's not counting ethernet cable, switches, and for no obvious reason, a separate 5V PSU for each Pi -- I left that out of the per-station cost, because anyone sane would use one power supply for multiple stations.
Now for $99, I can damn sure buy a cheap digital camera for each station, (and an SD card for each of them, if necessary), and have larger sensors, better glass, and crazy features like not being fixed-focus vs. the Raspberry Pi camera module. Sadly, remote shutter is not a common thing on the sort of cheap camera we're looking at, so some hardware hacking (*gasp*) might be required, and many camera models have issues like automatic power off that will make your life miserable -- so for an arbitrary cheap camera, this is better in some ways, worse in others, and not necessarily better on the whole. But with CHDK, we can beat it easily.
It'd be great if we had $120 a station -- for that money, we can easily rock CHDK. $99 is just on the edge, but I think you can find CHDK-compatible Canons for less (e.g. this one; note that other colors are cheaper, but very limited quantity, and without more research, I'm not sure that any of them will actually have firmware revisions supported by CHDK) -- if so, or if we can agree that the combination of better image quality, extra features, and reduced ethernet hardware, is worth a few extra bucks, you should have two options:
1. use USB hubs with CHDK's PTP extensions to control multiple CHDK-loaded cameras from each Raspberry Pi -- this will allow staggering individual cameras for the true bullet-time effect where the viewpoint revolves around a slow-motion (not completely frozen) subject, as well as the all-at-once mode described in TFA, and any combination.
2. forget the Raspberry Pis, and control the cameras using CHDK's USB remote shutter capability -- this is very simple in the all-at-once case, as you can simply wire 48 USB ports to a single 5V PSU, and switch it on and off. The proper effect is a little more complicated, but still no-CPU-required, e.g. use a single debounced pushbutton to generate a pulse, and clock source + a half-dozen 8-bit shift registers to sequence that pulse to all 48 USB cables. Or use a microcontroller with those shift registers to generate the pulse and the clock -- by varying the clock, you speed/slow the ratio of subject motion to viewpoint motion. Or use a microcontroller with enough GPIO to control all the cameras directly.
Well for a real frozen time effect you need the LHC - time passes over 14,000 times slower for the protons in it than it does for us. Although it is a little bit less interesting on film given that the protons don;t really do much!
While I agree that the device is really interesting comparing it to the LHC is like comparing a pea shooter to a nuclear missile. Our "cameras" are 14 storeys tall, take 25 million pictures per second, have single cables that are over 500m long and took decades of work by thousands of people to design and build. The feeling you get when something that big finally works and, even better, discovers some new, fundamental physics is a little bit more intense.
If I were building this rig, I would have used the $40 Model A+camera bundle for a cost-per-node of ~$50 including a USB Ethernet adapter and an SD card per node and a decent PSU shared between four nodes.
A bigger issue looking at the videos is the need to equalize the AGC setup (easy) and color temperature correction (harder) across the modules. Perhaps shoot RAW and then fix it with post-processing? This is where the CHDK alternative, with it's better optics and lower sensor variability, really wins out. Plus you'll have Christmas gifts for all your friends and family once you take the rig apart :)
It has the word "bullet" in it, and you can make it at home? Prepare to hear the sweet music of militarized cops breaching your front door.
Last remark of Eben is very important, I think. When you're finished playing with the matrix effect ( and yes, they should really think of photographing something more dynamic - people jumping, water splashing, fireworks, etc) you simply store that wooden frame and build the 3d people scanner (I would love to have a 3d print of my daughter, my wife,...). Finished with that? Store the wooden frame next to the first one and come up with something else to do with your 48 Raspberry Pies. After all, each of them is a full-fledged, if somewhat underpowered, PC.
A team of extremely creative people
Extremely creative? Not really.
Raspberry Pis achieved the Hollywood's 'frozen time' effect at a much lesser cost.
And much lower quality! And without doing any of the time consuming post-processing that's required for an actual film!
I still think it's cool - or I expect I would if the site was working - but go easy on the hyperbole.
systemd is Roko's Basilisk.
If you're handy enough to set all this up, you could buy second hand DSLRs like the Nikon D70 or the D70s with a small problem like soldering of the card slot gone bad. Fix those and you'd be able to use DSLRs with a much better sensor than the crappy picam. Many a wedding was shot with these cameras, including sometimes usage of the kit lens.
Yes, I did factor in the cost of the kit lens, which the guy I'm commenting on didn't. If you're going to talk about the 1D-X you should add in the roughly $1500 for the lens too. Plenty of money to get the control stuff and second hand kit lenses for my D70 rig sorted out.
The fun bit here is that they did a bullet time setup with the RPI using Ethernet and home brew software. Yes, it'd cost less to do it this way than if they would use professional grade cameras, or even amateur stuff, but the image quality isn't better than the average web cam or front cell phone camera. It's an exorcize in setting this sort of thing up, not an attempt to get it done on the cheap.
I was promised a flying car. Where is my flying car?
See above, the D70(s) was used by professionals when it was just out. Buy a few broken ones (hey, if you're handy enough to use an RPI, you should be able to fix a card slot soldering problem) and you're in the same price range.
I was promised a flying car. Where is my flying car?
They forgot to program a time delay in and had all the cameras shoot at the same moment. It will be fixed in the next major release though. ;)
I was promised a flying car. Where is my flying car?
Cool ideas, seems like a more sane design (some people get hung up on RPi, "when all you have is a dick, all problems look like assholes"). Couldn't you wire all cameras with USB to a single computer via some hubs? There may be some latency in issuing the "take picture" PTP commands, but it seems like with a computer you could 1) define the delays arbitrarily in software and 2) load all the pictures immediately, saving you from reading 48 SD cards.
Must be running their server off a Raspberry Pi as well...
Now for $99, I can damn sure buy a cheap digital camera for each station, (and an SD card for each of them, if necessary), and have larger sensors, better glass, and crazy features like not being fixed-focus vs. the Raspberry Pi camera module.
Except, after every run, you'd have to extract the SD cards from each camera and download them one-by-one to a PC to turn into a movie. With this, you can download all the images over the network in a few seconds.
Anyway - you weren't listening to TFA: this idea is primarily aimed at schools & colleges that already have or want class sets of Pi's for teaching programming and computer control, and the idea is that students will get involved in the programming to make it all work. As others have posted before: when you've had fun with this you tear it apart and use the Pis for the next project.
As for the boring videos: having kids moving or throwing things without 15cm of woodchips on the floor and padded helmets would probably waken the dreaded Safety 'Elf. Hopefully they had some actual fun in the clips that didn't get published on the internet. Actually, having a bunch of kids practicing scissor-kicks in the workshop does sound like an accident waiting to happen...
In a survey of 100 programmers, 111111 thought that duck-typing was a good idea.
You could, in fact Stanford did it ~10 years ago
https://graphics.stanford.edu/papers/highspeedarray/
Who logs in to gdm? Not I, said the duck.
Ok. I was one of the people building one of the first computer controlled multi camera rigs (http://www.reelefx.com/index.php?c=multicam.list) , so here's some background info to put this into context:
Multiple cameras triggered to capture motion is older than the movies. Eadweard Muybridge did it.
There were several people who built "one long strip of film with multiple simultaneous lenses and shutters" rigs in the 90s (one was a bunch of inexpensive cameras with the backs removed and a single long piece of film)
The famous GAP "swing dance" commercial was done by convention rotoscoping/animation: they filmed from various angles, and built 3-d models and texturemapping/morphing.
We did our camera rig for a commercial directed by Tony Kaye using Andre Agassiz, where he wanted the POV of the camera to track the tennis ball as it went down the court. And Tony Kaye didn't want to do it with visual effects (film the ball separately from the crowd, and composite it). So we built a rig with 100 cameras, carefully timed to fire as the ball went downcourt. Andre can hit the ball at the same speed every time without any problem, so it's just a matter of triggering the sequence by hand at the right time. Since they're standard 35mm film cameras with standard 36 exposure loads, you get 36 takes before you have to reload 100 cameras. Then, in post production you take frame 1 from camera A, frame 1 from camera B, etc.and string them together.
The cameras were fired by a bunch of digital I/O cards in a rack mounted PC, and frankly, that was a nightmare. Miles(literally) of cables and connectors. Those Rpi folks learned that lesson too.
There have been tons of commercials and movies that have used that rig and subsequent versions.
There's really cool stuff you can do: fire the cameras at a varying rate to essentially create any motion profile you want; use cine cameras to allow intercutting motion frames with the still frames, etc.
So here's what the RPi folks (or followers) will find:
1) Cameras are not identical, particularly in terms of the color of the lens. Your eye automatically will compensate for an overall color cast, particularly on multiple pictures from the same camera, or when you get the film turned into prints, they adjust to grey or skin tones. But in real life, modern camera lenses made of plastic (which are high optical quality, and can be made aspheric, which helps) have slight color casts that vary from camera to camera, and when you start making composites of frames from multiple cameras, it's really obvious. So you have some post processing to do.
2) Camera shutters have a lot of timing uncertainty. Back in the mechanical shutter days, we found that the microprocessor inside the camera (Canon EOS) had a polling loop looking at the shutter release button. A polling loop with 50 ms cycle time probably isn't noticeable to the casual user, but it's very noticeable when you're taking multiple shots of an object moving at constant speed. We wound up modifying cameras
3) the optical geometry of the cameras is not consistent. So that adds another step in post production and calibration of all the cameras ahead of time.
The big one is interconnections. The 100 parallel cables is a deployment nightmare, keeping track that camera 1 is plugged into cable 1, etc. For the second iteration, we built a microcontroller inside the camera to replace the original camera controller, and set up a daisy chain approach with individual ID numbers. Then the master just sends messages saying "camera N, you fire at time T1, T3, T4", and a master sync signal goes to all cameras. Lots less cable. Subsequently (I don't work there any more) they've gone to digital cameras, which is a post production godsend. Pulling 100 rolls of film and keeping them straight (you have to slate each camera individually, so the strips are identified), then scanning them for post, then doing all the corrections, and allowing for the inevitable "skipped" or "extra" frames was a nightmare.
Except, after every run, you'd have to extract the SD cards from each camera and download them one-by-one to a PC to turn into a movie. With this, you can download all the images over the network in a few seconds.
Yeah, I'm pretty sure I mentioned that without CHDK it's definitely not an improvement in all ways. Note that the first CHDK option does permit automatic image retrieval* over the network, and even if you go with the second one, or with non-CHDK cameras, I'd just walk around with a laptop and a USB cable, plugging it into each one, let a script automatically mount/copy/umount, then unplugging it -- not only is the USB port typically more accessible than the SD slot (and if not, I've already got a cable in it for the remote-shutter, so I can break in at the other end of that!), but this way I don't risk cameras mysteriously swapping UUIDs because somebody mixed up the SD cards. It's still a fair bit of work, but given that the point of the rig is a cool tech demo you fire up once rather than a tool you use routinely, I don't see it as prohibitive -- once you get it working, you can take quite a number of pictures before you have to do the USB run-around and "develop" the results.
* As another poster suggested, you might be able to form a 3-level tree of 4-port hubs, connecting all cameras to one computer and skipping the network entirely -- not sure if latency would be a problem or not, but you can certainly connect a few to each of several networked nodes, and use the network to transfer files to a central location.
"Error establishing a database connection"
Another hobbyist nuked.
"If any question why we died, Tell them because our fathers lied."
yes, but you can only buy one DSLR! for that? You need 48 for a bullet time rig!? so that 48*6000 = $28000!
Maybe a slight math(s) fail there?
I'm changing my time zone to Bullet Daylight Savings Time.
I remember seeing The Matrix in the theatres (or even the trailer) and, while Bullet Time was awesome, I thought "Neat! It's just like that Gap ad on tv!"
Gap Bullet Time 1998 ad
while your sitting around your desk, critiquing someones work...try look around and tell me what the last thing you created was...a hot pocket pizza maybe, cholesterol, high blood pressure, jiz stains?
Give this guy some due credit...he went out on a limb in order to help teach students to use new tech in ways not done before. Can you get better fx with better equipment...of course! He knows that.
Can a school bust out money for 40dslrs & matching lens...probably not while they are laying off teachers and having furlough days.
BTW math studs, 40xDLSRS rigs >>>>> 40pi rigs. yea a 7d costs around $1500 (with no lens) but do you want to buy 40 of them?
Calm down nerds and quit hatin!