Forums > Digital Art and Retouching > Cutting up and reassembling a digital photo

Body Painter

Eric Mayhem

Posts: 481

Seattle, Washington, US

I'd like to cut a photo into 50 or 100 vertical strips and reassemble them randomly.  I could do this by cropping/cutting/pasting in Photoshop Elements, but it would be a lot of work.  Does Elements offer a better way?  Is there software or a website that I can use to do this simply and cheaply?

Feb 23 13 05:46 pm Link

Photographer

PHOTOSTUDIOdotCA

Posts: 114

Kamloops, British Columbia, Canada

FotoFusion - easy not cheap

Feb 23 13 05:54 pm Link

Photographer

normad

Posts: 11372

Saint Louis, Missouri, US

python + ImLib

C++

C#

Feb 23 13 06:02 pm Link

Photographer

normad

Posts: 11372

Saint Louis, Missouri, US

you might want to just program it on your own smile or ask a friend that knows how to program smile

Feb 23 13 06:03 pm Link

Retoucher

Joann Empson

Posts: 430

Walnut Creek, California, US

Eric Mayhem wrote:
I'd like to cut a photo into 50 or 100 vertical strips and reassemble them randomly. Is there software or a website that I can use to do this simply and cheaply?

In GIMP, you can use the G'MIC plugin called "Taquin."

1. Open your photo in GIMP.

2. In the menu, go to Filters --> G'MIC.

3. Under "Arrays and Frames," select "Taquin."

5. In the X-tiles box, enter the number of horizontal splits.

6. In the Y-tiles box, enter the number of vertical splits.

4. Click OK.

Boom. Random reassembly of cuts.


https://i.imgur.com/VWgzR5R.png]

https://i.imgur.com/66uavol.png

https://i.imgur.com/HVHMKdB.png


Edit: I just realized that the Taquin plug-in limits the number of slices to 20. It won't cut it into 50 or 100 strips.

Feb 23 13 09:47 pm Link

Body Painter

Eric Mayhem

Posts: 481

Seattle, Washington, US

Thanks, Joann.  The GIMP/Taquin solution is almost exactly what I'm looking for.  I keep thinking there must be a way to get more slices.  Maybe slice a second or third time, or move the image and slice again, or something like that.  But, I haven't been successful.  Anybody have any ideas?

Feb 24 13 04:40 pm Link

Photographer

NothingIsRealButTheGirl

Posts: 35726

Los Angeles, California, US

If you want to slice the image and drag slices around by hand here are the numbers 1 - 50 in random order:

50, 24, 35, 26, 31, 45, 3, 2, 18, 39, 29, 36, 28, 5, 37, 1, 49, 40, 34, 48, 17, 15, 32, 25, 30, 21, 11, 44, 16, 4, 47, 42, 20, 41, 43, 8, 12, 46, 19, 7, 13, 9, 33, 38, 27, 23, 10, 22, 14, 6

And here's how I got those numbers:

http://www.randomizer.org/form.htm

So drag the slices in order from one image into the random slots in a second image. It's a chore but if you don't need to do it a lot you can get away with no automation

Feb 24 13 05:02 pm Link

Photographer

NothingIsRealButTheGirl

Posts: 35726

Los Angeles, California, US

I'll bet I could come up with a displacement image for you made of random red bars (and 127 in the green channel for no vertical offset) and you could use the displacement map filter in Photoshop together with the random red bar image to 'shuffle' the input image.

Feb 24 13 05:04 pm Link

Photographer

NothingIsRealButTheGirl

Posts: 35726

Los Angeles, California, US

https://jfrancis.smugmug.com/photos/i-tJKQx99/0/L/i-tJKQx99-L.jpg
Original image

https://jfrancis.smugmug.com/photos/i-PxCzBNT/0/L/i-PxCzBNT-L.jpg
Random red bars - green at 50%, blue doesn't matter - I set at 0% - hence the orange color.

Displacement Map with x set to width of image in pixels, Green set to whatever you like (since green is 50% in the image, which means no dis[placement) but you may as well set vertical displacement to zero in the menu box, as well. No reason not to.

https://jfrancis.smugmug.com/photos/i-RgjnwpC/0/L/i-RgjnwpC-L.jpg
Result

** You still have to come up with a way to randomize the red bars. I rendered a cloud and mosaic'd it and stretched it but that doesn't make a very random thing, nor does it guarantee each random number is unique.

Feb 24 13 05:25 pm Link

Photographer

NothingIsRealButTheGirl

Posts: 35726

Los Angeles, California, US

https://jfrancis.smugmug.com/photos/i-FKS9bb9/0/O/i-FKS9bb9.gif

Screwing around with After Effects - the bottom gray stripes are the displacement map for the top image

Feb 25 13 11:04 pm Link

Photographer

Eastfist

Posts: 3582

Green Bay, Wisconsin, US

Piscis Noctis wrote:
python + ImLib

C++

C#

wink

Feb 25 13 11:18 pm Link

Photographer

Eastfist

Posts: 3582

Green Bay, Wisconsin, US

Otherwise, you can use javascript and css, which won't physically alter your image. That is, I'm assuming you want to slice it up for a webpage.

Feb 25 13 11:24 pm Link

Body Painter

Eric Mayhem

Posts: 481

Seattle, Washington, US

Eastfist wrote:
Otherwise, you can use javascript and css, which won't physically alter your image. That is, I'm assuming you want to slice it up for a webpage.

That seems to be a common but incorrect assumption:-)  I'm just slicing it up to print.  What I'm looking for is something like the Gimp/Taquin solution above, but I need more slices.

Feb 26 13 02:11 pm Link

Digital Artist

Platinum Dust

Posts: 106

San Francisco, California, US

You can try breaking your original image into 5 pieces, then using the plugin at 20 slices each for a total of 100. Technically not truly random across the entire image, but randomized enough to be unrecognizable.

Another option:

1. Use the plugin for 20 slices.

2. Shift the entire image over to one side by half the width of a slice (i.e. if the original image was 1000px wide, the plugin would make 20 slices at 50 px wide. Shift the image over to one side by 25 px)

3. Move the part of the picture you bumped off the canvas to the empty spot on the other side to make sure you don't wind up missing a piece of the image.

4. Run the plugin again to double the number of slices. End up with 40 slices.

You can run the plugin two more times to double the number of slices again -- first time shift the image over by half of the distance you used earlier, second time shift the image by the same distance you used earlier. End up with 80 slices.

Feb 26 13 03:02 pm Link

Photographer

Mask Photo

Posts: 1453

Fremont, California, US

Platinum Dust wrote:
You can try breaking your original image into 5 pieces, then using the plugin at 20 slices each for a total of 100. Technically not truly random across the entire image, but randomized enough to be unrecognizable.

this *might* work great, but I worry that the fact that 5 and 20 are not co-prime (they share factors) might be an issue.

I would use 9 and 11, myself, as they don't share any common factors and you'll get 99 slices

Something in my math-brain is tickling me. You slice 5 times... each 1/5th of the image is one solid block. Then you slice 20 times. each 1/5th of the image is then broken up into 4 more slices, so you still only get 20 slices. You'd need to slice each 1/5th block 20 times.

I think 9 and 11 might produce varied-width slices, and nowhere near 100 of them. Anyone want to try it?

There has to be a solution. Slice 20 times. offset left by 1/100th the width of the image, repeat the slice and offset 4 more times.

Feb 26 13 10:42 pm Link

Photographer

NothingIsRealButTheGirl

Posts: 35726

Los Angeles, California, US

Joann Empson wrote:
Edit: I just realized that the Taquin plug-in limits the number of slices to 20. It won't cut it into 50 or 100 strips.

What about Array[Random] from that same list?

Same limitation?

Feb 26 13 11:22 pm Link

Retoucher

Joann Empson

Posts: 430

Walnut Creek, California, US

The Space Cowboy wrote:

What about Array[Random] from that same list?

Same limitation?

Yes, the "Array [random]" filter has the same upper limit on its parameters.

https://i.imgur.com/pRlQUBL.png

Feb 27 13 12:46 pm Link

Digital Artist

Platinum Dust

Posts: 106

San Francisco, California, US

Mask Photo wrote:
Something in my math-brain is tickling me. You slice 5 times... each 1/5th of the image is one solid block. Then you slice 20 times. each 1/5th of the image is then broken up into 4 more slices, so you still only get 20 slices. You'd need to slice each 1/5th block 20 times.

What I meant was to first cut up the original photo into five pieces, each one being a separate image file. Then run the plugin at 20 slices on each of those images so you end up with five images with 20 slices each (100 slices total). You then just put those five files together again in whatever order you want (or even what looks most aesthetically pleasing). The final image will have 100 slices, not 20.

I see what you're trying to come up with, to figure out a number combo that would let you just run the plugin a few times so you don't need any manual work, but I don't see how that would get you evenly sized slices. Good thought though.

Feb 27 13 12:52 pm Link