ABSTRACT:
A one meter long strip of 60 neo-pixels is connected to an Arduino Uno and a portable battery to recreate images with a long exposure camera. Images can either be downloaded online or created in Adobe Photoshop. Images are compressed to 60 pixels high, while maintaining proportional horizontal dimensions, and exported as a JPEG. This JPEG is read in a Java program (written in Eclipse Neon), which exports a text file with each pixel’s color as one element in a long list.
Each pixel in the JPEG image is converted to its’ binary RGB representation and then color mapped to the rainbow colors (ROYGBIV). The outputted list is copy and pasted into an Arduino IDE script and saved in flash memory. The script reads the list in 60 element chunks and flashes them to the LED stick. A camera on a tripod is set up with an exposure time of around ten seconds. A user walks across the frame while holding up the LED stick during the duration of the exposure.
MATERIALS
- 1 one meter long flat wooden stick (Home Depot)
- 1 neo pixel strip (Adafruit.com)
- 1 ArduinoUno
- Electrical wires
- Electrical tape
- 2 Zip ties
- 1 portable iPhone battery
CONSTRUCTION
- Peel off the back of the LED strip and attach to the wood stick with the
provided 3M adhesive. - Reinforce top and bottom by wrapping with a zip tie.
- Attach the Arduino Uno to the back of the wooden strip.
- Connect LED data line to a digital port on the Arduino Uno.
- Connect LED ground and power to ground and 5V on the Arduino Uno.
- Attach portable battery to wood stick.
- Connect portable battery to the Arduino via the power jack.
HOW TO TAKE A PHOTO
- Set up a DSLR on a tripod and use test shots to find a 10 second exposure that is very dark but light enough to just see the foreground and background.
- Download the Arduino script to the Arduino Uno, unplug from the computer and plug into the portable battery.
- Set the camera on a ten second timer and press the shutter button.
- List ento the ten beeps from the camera and between the 8th and 9th beep press the rest button on the Arduino.
- At the same time begin walking across the frame perpendicular to the direction the camera is pointing while holding up the LED stick and maintain a constant velocity, height, and distance from the camera.
- In Photoshop raise the shadows and darks so that the background is more visible.
IMAGE PROCESSING
Images chosen from the Internet must be somewhat simple in design so when compressed to 60 pixels high the graphic is still recognizable and also must have a uniform background color. In Adobe Photoshop Replace Color is used to change the background color to black (by default the LED stick does not turn on a pixel when it is sent black color). The image is then compressed to 60 pixels in height while maintaining proportions. The maximum width the Arduino can store is about 180 pixels. The image is then saved as a JPEG in the highest quality.
Source: Cornell University
Author: Stefano Barbier