Hey! This thing is still a Work in Progress. Files, instructions, and other stuff might change!

Bird's Eye Camera Stand

by profhankd, published

Bird's Eye Camera Stand by profhankd Apr 8, 2016
0 Share
Download All Files

Thing Apps Enabled

Order This Printed View All Apps

Design Tools



Liked By

View All

Give a Shout Out

If you print this Thing and display it in public proudly give attribution by printing and displaying this tag.

Print Thing Tag

Thing Statistics

2913Views 169Downloads Found in Camera


A bird's eye lens is a very close relative to a fisheye lens, but uses a reflective optic to provide a 360-degree view. This thing is a stand designed to implement bird's eye imaging by holding an $80 Canon PowerShot ELPH115IS centered over a reflecting element -- a standard silvered glass ornament like you can get around Christmas for $0.50. Because the ELPH115IS can be programmed using CHDK, the rig can be used as a stand-alone device to capture everything happening in a room, and it is even possible for the camera to be programmed to "unwrap" the images to a more convenient representation for viewing (e.g., cylindrical projection).

Print Settings

Printer Brand:













Trivial print in PLA. I used black for the top and bottom, but natural clear for the connecting piece (which I also used a concentric fill pattern for); this makes the connecting piece less visually distracting in the 360-degree photos.



The pieces go together in the rather obvious way, and can be just friction-fit or can be glued. However, the glass ornament takes a little preparatory work. First, remove the metal top with the hanger. This leaves the top open. To make the unit more stable, I filled the ball with sand and then sealed it in place with a little cement/glue. I then realized that the ball had a thin plastic coating over it (probably to prevent shattering if it is dropped) -- that coating degrades the reflected image a little, so I washed it off. Basically, with the ball under cool running water, the clear plastic coating simply slid off. Once dried, the ball is simply placed in the base with the top in the indentation shaped to hold it.

Custom Section

Unwarping the 360-degree image

There is lots of software that can unwarp the images into other projections. However, these balls are not mathematically precise, so reprojecting by a calibrated mapping works better than applying a simple function. In fall 2015, my students wrote CHDK code that performed this mapping in the camera, but I don't have a version in a nice, clean, releasable state yet... I'll post one when I get a chance....

More from Camera

view more

All Apps

Auto-magically prepare your 3D models for 3D printing. A cloud based 3D models Preparing and Healing solution for 3D Printing, MakePrintable provides features for model repairing, wall thickness...

App Info Launch App

Kiri:Moto is an integrated cloud-based slicer and tool-path generator for 3D Printing, CAM / CNC and Laser cutting. *** 3D printing mode provides model slicing and GCode output using built-in...

App Info Launch App
KiriMoto Thing App

With 3D Slash, you can edit 3d models like a stonecutter. A unique interface: as fun as a building game! The perfect tool for non-designers and children to create in 3D.

App Info Launch App

Print through a distributed network of 3D printing enthusiasts from across the US, at a fraction of the cost of the competitors. We want to change the world for the better through technology, an...

App Info Launch App

Quickly Scale, Mirror or Cut your 3D Models

App Info Launch App

Treatstock is an online platform that offers decentralized manufacturing services such as 3D printing and CNC machining for business-to-business and business-to-consumer sales all over the world. W...

App Info Launch App

3D print your favourite design with NinjaPrototype, a professional 3D manufacture with consistent quality and speed.

App Info Launch App

Nice and usefull tool for photography.
Please, can You upload code for calculating projection into cylindrical form ?
Anything in C or C++, Python, Java...

Thank You

Unfortunately, the ornaments have enough deformations that a formula doesn't work very well -- so we used a calibrated mapping that was computed from a test chart. The (rather large) test chart (imaged at http://aggregate.org/CACS/IMG_2592.JPG ) basically has an array of targets on it and is wrapped loosely around the unit to capture a calibration image. From the array of target marks, a piecewise linear mapping was generated, and then that was implemented by my students as CHDK code using Bresenham's algorithm. In sum, a somewhat awkward process that I haven't had time to clean-up for posting here....