Today I want to share how I created a few huge, Gigapixel photos, using a DIYed panoramic head. Actually, it is not a panoramic head because it not only goes right and left, but also up and down.
I’ve been a big fan of panoramic photography and of landscape in general for a long time. But four years ago I was climbing a mountain and the view from the top simply took my breath away. I felt an urgent need to share the image with people don’t climb and therefore will never get access to such views.
Here is the thing though, standard photos do not have enough details. Our eyes have far more resolution that your standard digital camera, so a new project began: I wanted to build the best Gigapan Robot – an automated panoramic head for DSLR.
[editor's note: things get highly nerdy techy from this point on]
I got inspired by some pro grade products, but could not find one that fits my needs: total control and A LOT of weight. The idea is to move a Nikon D90 (about 650 grams) body mounted with a Sigma 150-500mm lens (1.9 Kg) at small increments on two axis overlapping images in both the vertical and horizontal axis.
GIGA-PANORAMIC ROBOT V1.0
Incandescently, just a few days prior to climbing, my friends (Alex & Joan) gave to a quick down about Arduino: it’s a small micro controller with open source software and a lot of expansion options: control motors & sensors and interact with inputs and outputs just like a small PLC.
I’ve had some PLC experience so I was up for the task. only two minor items remained: learn Arduino and build a robot.
My first step was to buy an Arduino UNO and a stepper motor. This stepper motor moves by small increments, around 200 steps for a complete turn. If I can control the movement of the motor , I can control the movement of the camera, now I just needed the write the software.
I took me six months, but I had my robot finished, it was time to test it out.
My first photo - 1098 shots nearing 10 GigaPixels – turned Ok after rendered with AutoPanoGiga.
But while the final results were good photo-wise, I needed to make some improvements to reduce the weight and size of the robot. It was impossible to bring the robot over the mountains. To get it up I would have to split the thing between more than a handful of people, the weight of all parts it’s over 35 kilos.
GIGA-PANORAMIC ROBOT V2.0
Next step was to do some software optimizations, install two wheels and add two aluminum. Now it’s easier to lag around. I still had a big risk of damaging a stepper motor while hiking on rough terrains at the mountains, so this v1.5 was not good enough for me, and I decided to re-design the robot over the next winter.
For the version 2.0 I used a geared stepper motor for the horizontal axis movement, and stronger motor for the others axis.
for control I am still using an Arduino platform, and using switches I can modify the settings of the robot (stuff like zoom, camera type, overlap %, and more).
With this robot I created a 99GPx Gigaphoto of my village, S.ria, a potash village in the center of Catalonia, near Barcelona . It is made out of 4520 single shots. And the magnification is astounding: Nikon d5200 body + Sigma 150-500 @ 500 mm + 1.4x teleconverter.
Both robots are heavy and they both weight about a ton (or at least this is how it feels). Another caveat is the difficulty to move with the needed accessories (battery for the robot, lens, camera, tools, support for the robot), so finally I decide to create a new robot which would be cheaper and lighter.
GIGA-PANORAMIC ROBOT XS
Building on the experience I accumulated building the previous two robots, I tried to optimize all sizes and weights. It was time to design the Panoramic Robot XS !
For this robot I used an aluminium box for install inside the x-axis stepper geared and all electronics parts (Arduino MEGA2560R3, two L298N drivers for the steppers motors, a relay for remote camera shot switch, a step-down voltage converter to reduce the 12v of UPS battery to 5v of the motors NEMA-17, switches, LCD, plugs, etc…)
This is the parts list:
Metal plate (1-1.5 mm): We need a plate approximately 800 x 200 mm.
Metal box . I use an aluminium Hammond 1590FBK
Two NEMA-17 stepper motors . I spend a lot of time to found it! The problem appears of the height of the box. I use a Kysan 1040222 buyed on eBay .
Next , It was time to do a lot of holes in the aluminium box and start assembling
I used a metal plate to support the Y axis, and we fixed the camera using a 1/4-20 bolt. Since this place will only perform with one camera, we wanted to make it fixed on the camera’s Nodal Point. The nodal point would then correspond to the center of both axis. For the horizontal and vertical axis, it was easy, we only needed to calculate the distance from the hole to the center of both axis. The difficult part is finding the d3 value. You can use this guide, or just google for it.
Now, again, it was time for assembling the electronics parts, wiring the steppers motors, the drivers and connecting power supply.
And the last step was uploading the Arduino code. If you are building this and need the code, please contact with me (via the comments or the contact details supplied below).
Using this last robots I create Gigaphotos of about 30 GPx. This is the resolution I get using a Nikon d5200+ Tamron 70-300 @300mm. It takes about 1,000 per panorama. If you thought the camera part was hard, wait till you feed 1,000 photos to your computer ;).
I have another robot optimized for a Sigma 150-500mm lens, more stronger. The electronics and code are the same, I only had to change the mechanics of it to support more weight. With the bigger robot I can create 99 GPx photos composed of over 4500 shots each.
ABOUT THE AUTHOR
Xavier Gonzalo is a climber and a photographer based in Spain. You can see his panoramic work here. You can also read more about his panoramic robots (in Spanish / Gooogle translated) here. Lastly, you can visit Xavier’s youtube channel here.