Difference between revisions of "Photobooth Mark I"
From Makers Local 256
(→Progress: Added link to pictures.) |
(Added Materials section to Mark II) |
||
Line 257: | Line 257: | ||
* 05/11/2007: Met [[User:Korc|Korc]] at his office in the Optics Building at UAH to go over the final design for the Mark II. We managed to make several improvements of the design over the course of ~3 hours, most notably being it's more origami-like, and finalize all the measurements. Korc took a video of me drawing the final structural design with his new [http://theflip.com/ Flip video camera]. We have yet to find the material we need in town in order to begin construction, but did manage to figure out the curtain rods and their secondary use as handles. [http://www.sketchup.com/ Sketchup] drawings will be made within a couple of days of each individual element. Video and pictures to follow shortly. | * 05/11/2007: Met [[User:Korc|Korc]] at his office in the Optics Building at UAH to go over the final design for the Mark II. We managed to make several improvements of the design over the course of ~3 hours, most notably being it's more origami-like, and finalize all the measurements. Korc took a video of me drawing the final structural design with his new [http://theflip.com/ Flip video camera]. We have yet to find the material we need in town in order to begin construction, but did manage to figure out the curtain rods and their secondary use as handles. [http://www.sketchup.com/ Sketchup] drawings will be made within a couple of days of each individual element. Video and pictures to follow shortly. | ||
** [http://strages.net/gallery/view_album.php?set_albumName=photobooth_mark2 Pics] | ** [http://strages.net/gallery/view_album.php?set_albumName=photobooth_mark2 Pics] | ||
+ | |||
+ | == Materials == | ||
+ | * Main sheet material | ||
+ | ** "Ponderosa Pine Panels" spotted at Lowes. Not cheap, but lighter than corresponding width plywood, strong, and will hold screws well. | ||
+ | * Curtain Rods/Stabilizing poles | ||
+ | **(4) 3-foot sections of steel pipe | ||
+ | ** (2) Joining adapters (freely spinning to handle right-handed threads on each side. | ||
+ | ** (6) Threaded flanges. 4 to mount to the front and back walls to stabilize the booth, 2 to mount to a small 1x4 to be slid into place on the side of the packed up booth box and used as levers to help move it (like a wheelbarrow). | ||
+ | * Mobility | ||
+ | ** 2 short 1x4 pieces | ||
+ | ** 4 short steel U-Channel pieces, wide enough for 1x4 to slide into | ||
+ | ** Casters for mounting to 1x4, to slide into place in angle iron brackets | ||
+ | |||
=Alternate Designs= | =Alternate Designs= | ||
? | ? |
Revision as of 10:08, 17 May 2007
Contents
[hide]Overview
Basically a photobooth just like at the mall, but with a maker's charm.
Features
- Initially shows video of the individuals in the booth to let them position accordingly.
- Large button to hit when you're ready.
- Has to be durable.
- Countdown video before the computer driving it snaps the photo.
- Takes between four and six pictures with a three second timer between pictures.
- Automatically uploads the pictures online for everyone to see.
- Possibly without the users knowing. More fun that way ;).
- Must use as little power as possible to obtain it's function.
- Solid state storage only.
- Fanless if possible.
- Wifi on demand(ie. not always connected).
- Remote administration is a must.
Other options
- Autodetection and mounting of thumbdrives so the booth can load the pictures onto it.
- Cheap print of the pictures.
- Not sure how to accomplish this yet.
- Making the whole thing modular so it can be taken down and setup other places rather easily.
- GPS enabled and automatic geotagging of photos.
Mark I
Physical Design Elements
- Two towers
- Tower 1: 3 boxes stacked on top of each other like Legos.
- Bottom two empty.
- Top one housing the camera and tablet.
- Individual boxes are designed to slide under the seat of the other tower for easy transport.
- Dimensions:
- Tower 2: seat topped with a three-sided partition surrounding the user.
- Partition is removable with folding sides and folds in half.
- The seat is a box designed to house the 3 Tower 1 boxes.
- Handles on one side close the ground.
- Casters on the other side to facilitate easy movement when lifted from the handles.
- Dimensions:
- Tower 1: 3 boxes stacked on top of each other like Legos.
- Two curtain rods made of PVC, one for each side of the booth.
- Length:
- Curtain: Black shower curtain cut to the desired height of 38".
Tablet Technical Data
- Form Factor: Slate
- Model: Ramline 510
- Screen: 10.4 inch touch screen
- Model: 3M/Dynapro SC3
- Type: restive
- CPU: Intel Pentium3 500Mhz
- RAM: 256MB
- Drive Space: 6GB
- Camera: Logitech Quickcam Orbit
- Resolution: 1.2MP
- Used: 640x480
- Resolution: 1.2MP
- OS: Windows XP SP2
- Other software:
- Other software:
Windows perl code
This file contains the code to wait for the user input and then take the pictures.
#!c:\perl # command for vlc wallpaper stuff is vlc dshow:// --directx-wallpaper #there is also a command console attached to localhost:42789 use Image::Magick; use Audio::Beep::Win32::API; use Win32::GUI; my ($DOS) = Win32::GUI::GetPerlWindow(); Win32::GUI::Hide($DOS); sub doBeeps { # this command will play a video full screen and then quit which is better than beeps #`vlc -f --video-on-top "54321.mpg" vlc:quit`; $window->Button1->Change(-title => "3"); sleep 1; $window->Button1->Change(-title => "2"); sleep 1; $window->Button1->Change(-title => "1"); sleep 1; $window->Button1->Change(-title => "Taking Picture!"); } $font = Win32::GUI::Font->new( -size => 20, ); $window = new Win32::GUI::Window( -name => "Window", -title => "Main Window", -left => 300, -top => 400, -width => 200, -height => 200, -minsize => [200,200], -maxsize => [200,200] ); $window->Show(); $window->AddButton( -name => "Button1", -title => "Take Pictures!", -left => 0, -top => 0, -width => 200, -height => 170, -font => $font ); $window->Button1->Show(); $lock = 0; sub Button1_Click { if ($lock == 1) { return; } $lock = 1; print "taking images\n"; doBeeps(); system ("twaincom.exe image1.jpg -h"); # grabs image1 doBeeps(); system ("twaincom.exe image2.jpg -h"); # grabs image2 doBeeps(); system ("twaincom.exe image3.jpg -h"); # grabs image3 doBeeps(); system ("twaincom.exe image4.jpg -h"); # grabs image4 $window->Button1->Change(-title => "Please Wait..."); # need to pull in the images and set them 10px apart # input image dimensions are 640x480, so: # total image size is 640 + 20(border)x480*4+50 # 660x1970 $image = new Image::Magick; print "importing images\n"; # read in the images $x = $image->Read("image11.jpg"); warn $x if $x; $x = $image->Read("image21.jpg"); warn $x if $x; $x = $image->Read("image31.jpg"); warn $x if $x; $x = $image->Read("image41.jpg"); warn $x if $x; # set the proper image origins print "moving images\n"; $montage = $image->Montage(geometry =>'640x480', tile=>'1x4', border=>'10', background=>'white'); $tmptime = time; print "writing image\n"; $montage->Write("finalstrips/$tmptime.jpg"); # here, either read the gps coords or set them manually # WGS84 is the most widely used standard for mapping of the earth # we may want to remove the alt refs # insert the gps coords into the image system ("exiftool -overwrite_original -GPSLatitude=34,44,0.42 -GPSLongitude=86,38,26.39 -GPSLatitudeRef=N -GPSLongitudeRef=W -GPSAltitude=5 -GPSAltitudeRef=\"Above Sea Level\" -GPSMapDatum=WGS84 finalstrips/$tmptime.jpg"); $window->Button1->Change(-title => "Done!"); #show the pic for 15 seconds system ("start finalstrips\\$tmptime.jpg"); sleep 8; system ("taskkill /f /im rundll32.exe"); system ("taskkill /f /im mspaint.exe"); $window->Button1->Change(-title => "Take Pictures!"); $lock = 0; } # do init here #kill explorer system("taskkill /f /im explorer.exe"); #system("devmgmt.msc"); system("c:\devcon disable *PNP0501"); system("c:\devcon enable *PNP0501"); while (1) { Win32::GUI::Dialog(); }
This is the script that is used to upload images to Flickr. The format is flickr_upload <filename to be uploaded>
#!/usr/sbin/perl # $_[0] is the first option passed to the script $flickr_upload = Flickr::Upload->new('key' => '', 'secret' => ''); # this can be either sync or async $phid = $flickr_upload->upload('photo' => $_[0], 'auth_token' => $auth_token, 'tags' => 'photobooth', 'is_public' => 1, 'async' => 1); # wait for upload to finish while ($flickr_upload->check_upload($phid) == 0) { # not done yet sleep 1; } if ($flickr_upload->check_upload($phid) == 1) { # upload completed } else { # upload failed }
Progress
- 01/11/2007: After many revisions and drawings we've settled on a final design, and construction should begin this weekend on it.
- A 1:12 scale paper mockup of the design and drawings can be found here.
- 01/13/2007: Materials purchased.
- 01/14/2007: Day 1 of construction. Ran into a snag when it came to the dimensions of the thing packed up and the dimensions of the doorway to the backseat of a car. After a few adjustments and some reworking of the camera tower all is well. The base of both sides were completely and tested for maneuverability and fit in the backseat of a car, both tests when perfectly.
- 01/16/2007: Ramline 510 tablet purchased for use in the photobooth.
- 01/27/2007: 09:00-12:00 Day 2 of construction. Three sided partition that sits atop the seat is done and parts have been purchased to attach the curtains.
- 01/28/2007: 12:00-16:00 in 32 degree conditions, Day 3 of construction. Everything is built with the exception of 3 more leaf sections going up one side of the camera tower.
- 02/10/2007: Make Shop meeting yielded an arguable more functional OS on the tablet being used in the booth as well as some more revisions to the scripts.
- 02/11/2007 Day 4 of construction: Finished the final three boards that needed to be cut and added, as well has the curtain poles. More supplies were purchased for completing it in the coming three days before the Outerz0ne3.
- 02/17/2007 Outerz0ne3: Photobooth went over splendidly and finally got a feel for how heavy the damned thing this, which is to say very. Something to work out in the next model I suppose.
- 02/24/2007 SNAPL LAN Party: Photobooth went over pretty well though not as much as I would have liked, different crowd with different interests I suppose.
- 03/17/2007 St Patty's Day Party: Photobooth got a lot of use again proving that it can hold up well against drunk people. People are finally starting to realize the fun of using the whiteboard background. Likely the last time it'll be moved until the Make Shop is setup, which it will reside in permanently.
ToDo
- Make upload script work or find another solution for automatic uploading.
- Have the booth automatically mount a user's thumbdrive and load last saved photostrip on it.
- This will likely be their own, but there is a fair chance that if they place if put it in quick enough they can get the one before them.
- Live video from the camera to allow the user to see what they look like on camera prior to pictures being taken.
References
[Serial Controller Reference Document]
Mark II
Goals
- Smaller profile when packed up.
- Retaining the same overall height as the Mark I when setup though.
- Significantly lighter
- Lighter but equally as strong building material?
- Linux based for more flexibility.
- All open source if possible.
- Better project documentation.
- Chronological record.
Preliminary Notes
- Improved stability by the addition of a floor attached to the seat and either:
- Accordians up under the seat.
- Folds up covering the opening under the seat and goes over the top. See bottom left of the drawing.
- End opposite the seat has pegs or something to set the camera town onto.
- Everything that can be made lighter is.
- Dimensions when put together are the same as the Mark I but compacts more.
- Attempting to make all parts(curtains and rods) go into the final package.
Progress
- 04/30/2007: Initial design discussion began with Korc.
- 05/04/2007: At the 2600 meeting Korc brought his design notes in the form of some drawings. "Project board" was suggested as being strong enough and light enough(lighter than plywood from the Mark I design) to suit our purposes.
- 05/05/2007: Linux has been decided as the OS for the Mark II with mencoder to handle live video and "picture" taking, thanks Brimstone for offering that suggestion. Linux would allow us to have remote access as well providing security and remote trouble shooting capability.
- 05/11/2007: Met Korc at his office in the Optics Building at UAH to go over the final design for the Mark II. We managed to make several improvements of the design over the course of ~3 hours, most notably being it's more origami-like, and finalize all the measurements. Korc took a video of me drawing the final structural design with his new Flip video camera. We have yet to find the material we need in town in order to begin construction, but did manage to figure out the curtain rods and their secondary use as handles. Sketchup drawings will be made within a couple of days of each individual element. Video and pictures to follow shortly.
Materials
- Main sheet material
- "Ponderosa Pine Panels" spotted at Lowes. Not cheap, but lighter than corresponding width plywood, strong, and will hold screws well.
- Curtain Rods/Stabilizing poles
- (4) 3-foot sections of steel pipe
- (2) Joining adapters (freely spinning to handle right-handed threads on each side.
- (6) Threaded flanges. 4 to mount to the front and back walls to stabilize the booth, 2 to mount to a small 1x4 to be slid into place on the side of the packed up booth box and used as levers to help move it (like a wheelbarrow).
- Mobility
- 2 short 1x4 pieces
- 4 short steel U-Channel pieces, wide enough for 1x4 to slide into
- Casters for mounting to 1x4, to slide into place in angle iron brackets
Alternate Designs
?