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

Pixel Beads Self Portrait Panel

by anoved Mar 29, 2014
Download All Files

Thing Apps Enabled

Please Login to Comment

I tried to do this in a 50x50, it took 3 hrs 54min rendering in OpenSCAD.
Upon saving it said : openscad object isn't a valid 2-manifold and i couldn't save it... so sad because the rendering looked very nice.
Don't know how to solve this. Any help is appreciated.

Check out this version rewritten by jsc - it should render faster and possibly fixes some of the bugs too. http://www.thingiverse.com/thing:310541

Faster Pixel Beads Photo Pane
by jsc

Amazing! Just made one now, this is great. Would it be possible to up
the size a little to a 30x30 grid? I have been experimenting with images
and 30x30 is so much more recognisable than 20x20.

Yeah! If you are comfortable using OpenSCAD (1) directly, you can download the customizer script (2) and change the width/height variables and 20x20 label to any values you desire, then paste in new picture data created with the Thingiverse image_array tool (3). Or, once you change the dimension variables you could re-upload the script to Thingiverse as a remix tagged "customizer". (I'd be happy to do so if you prefer, but am equally content to encourage others to give it a go.)

  1. http://www.openscad.org/http://www.openscad.org/
  2. http://www.thingiverse.com/download:515839http://www.thingiverse.com/dow...
  3. http://customizer.makerbot.com/image_arrayhttp://customizer.makerbot.com...

We tried this and found changing brightness contrast and saturation settings in a photo editor helped. You want as much contrast or shadowing between facial features as possible.

Are there suggestions/tips on what picture makes for the best results? I tried a couple of photos and they're not too visible.

same issues...i would like some suggestions as to what pic makes a good print.

Good question. As hokie94 mentions, a lot of contrast between features helps. Consider saving the image in grayscale before you upload it, so you can see it the way the customizer will see it. You want the light areas to be white and the dark areas to be black (or nearly so). Otherwise, if the shades are too similar, all the pixels will appear about the same size.

Thanks for the feedback and the model!

As said above, I went into photoshop and did a convert to B&W (rather than just convert to greyscale). I then resized the image to 20x20 pixels.Went into the levels and crushed the blacks a bit. Then adjusted the contrast up and moved the midpoint a little.

Basically I would make an adjustment, walk across the room and see how the image looked at 20x20, and kept adjusting it until the detail I wanted was there. Only then did I upload the image and make the piece.
If there was a way to make it 30x30 or so, instead of 20x20 it would be a lot easier to keep the detail, but I am still learning how to do this stuff, so don't know how.

super cool... would you mind if i borrow the idea to make a grasshopper script? i am more comfortable with that

really cool idea. especially impressive is the fact that you can use it to project the image. can't wait to see the .scad...

Yeah, the diffraction blurring in the shadow can actually make the image more recognizable!

This is pretty cool. Could you upload the .scad? Just don't tag it customizer if it's too slow. I'd like to take a look at it to see if I can come up with a way to make it faster.

Thanks for the interest. I've uploaded the .scad file and photos of a circular version to this Thing. I would appreciate some feedback on the script, since it actually doesn't display as expected in Customizer - the panel appears solid. Perhaps a problem with the resize command? I haven't investigated in depth - could be something else.

Oh and you should try extruding 2d shapes wherever possible which should make it compile faster. I noticed you're using cubes for the grid lines, try making them squares. Also try eliminating the minkowski and the cylinder in the base shape and replace it with circles, etc.

Thanks for the tips! Incidentally my original plan was to make each strand of pixels a single extruded polygon, but I couldn't quite figure out how to generate the points array given OpenSCAD's immutable arrays.

Customizer is running OpenSCAD 2013.06 and I think your script suffers from the bug that version had with the resize() function when you resize something < 0, thereby shrinking. You could try rewriting it so that you do not shrink to work around it...

I posted a remix incorporating the fixes you recommended and now it works nicely. Thanks!

I'm glad to see people like the idea! I will try to post the customizer tomorrow.

another very cool customizer idea! I can't wait to try it.

Great idea! Keep up the good job!