Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Make one large image by tiling many smaller images in specified order?
#1
How do you get GIMP to make one large image out of about 6,800 small (256x256 pixel) images? It's like you had one large picture and you cut it up into 6,800 little squares. I only have the little squares, not the original, and I want to put them together without any seams showing to make the large original image. They're numbered in sequence, they must stay in the exact sequence, and I already know exactly how many rows and columns the composite needs to have. If it's easier in some other program than GIMP that's fine too.
Reply
#2
You can get a plugin ofn_tiles.py from here: http://sourceforge.net/projects/gimp-too...s/scripts/

Near the top of the list at the moment. Uzip it, read the html blurb on useage.

I do not know how it copes with 6800 tiles, that is one large canvas.

On a smaller scale 100 images goes like this: https://i.imgur.com/bRaQYmw.mp4
Reply
#3
(04-14-2023, 11:06 AM)rich2005 Wrote: You can get a plugin ofn_tiles.py from here: http://sourceforge.net/projects/gimp-too...s/scripts/
I do not know how it copes with 6800 tiles, that is one large canvas.

Thanks. I would have never found that. It couldn't handle 6800 tiles on my computer though; I gave it 10 minutes or so and processor was getting hot. In the meantime I discovered XNView photo management program can do it; computing time was maybe 20 seconds. In case anyone else needs this (unlikely; I'm seeing virtually no discussion anywhere online about joining large numbers of tiles) you do it by making a contact sheet and set the spacing to zero. IrfanView also does it but it couldn't handle 6,800 tiles although it did handle 3,500.
Reply
#4
(04-14-2023, 04:24 PM)jupiter Wrote:
(04-14-2023, 11:06 AM)rich2005 Wrote: You can get a plugin ofn_tiles.py from here: http://sourceforge.net/projects/gimp-too...s/scripts/
I do not know how it copes with 6800 tiles, that is one large canvas.

Thanks. I would have never found that. It couldn't handle 6800 tiles on my computer though; I gave it 10 minutes or so and processor was getting hot. In the meantime I discovered XNView photo management program can do it; computing time was maybe 20 seconds. In case anyone else needs this (unlikely; I'm seeing virtually no discussion anywhere online about joining large numbers of tiles) you do it by making a contact sheet and set the spacing to zero. IrfanView also does it but it couldn't handle 6,800 tiles although it did handle 3,500.

That's a 22k*22k image, not impossible with Gimp but you need a PC with some serious RAM.

Also, took a hard look at the script and some optimizations a possible. Given its popularity it's worth trying to speed this up.
Reply
#5
(04-14-2023, 10:15 PM)Ofnuts Wrote: Also, took a hard look at the script and some optimizations a possible. Given its popularity it's worth trying to speed this up.

I would if I could but I don't know anything about writing scripts or programming, sorry!
Reply
#6
Isn't there somehting in the GMIC plugin that puts small images together or does it just take them apart? I forget the name.

Smile
Reply
#7
(04-14-2023, 09:48 AM)jupiter Wrote: How do you get GIMP to make one large image out of about 6,800 small (256x256 pixel) images? It's like you had one large picture and you cut it up into 6,800 little squares. I only have the little squares, not the original, and I want to put them together without any seams showing to make the large original image. They're numbered in sequence, they must stay in the exact sequence, and I already know exactly how many rows and columns the composite needs to have. If it's easier in some other program than GIMP that's fine too.

1. Open GIMP and create a new blank image that is large enough to fit all the small images together.

2. Go to "File" > "Open as Layers" and select all the small images you want to merge.

3. GIMP will open each small image as a separate layer. Select all the layers by holding down "Shift" and clicking on each layer.

4. Go to "Image" > "Configure Grid" and set the grid size to match the size of your small images (256x256 pixels in this case).

5. With all layers still selected, go to "Layer" > "Distribute" > "Distribute Layers" and select "By Grid" from the drop-down menu.

6. This will align all the small images perfectly on the grid. You can now merge all the layers together by going to "Layer" > "Merge Visible Layers".

7. Finally, you can save your new large image by going to "File" > "Export As" and selecting your desired file format.
Reply
#8
(04-17-2023, 08:49 AM)Melisa Wrote:
(04-14-2023, 09:48 AM)jupiter Wrote: How do you get GIMP to make one large image out of about 6,800 small (256x256 pixel) images? It's like you had one large picture and you cut it up into 6,800 little squares. I only have the little squares, not the original, and I want to put them together without any seams showing to make the large original image. They're numbered in sequence, they must stay in the exact sequence, and I already know exactly how many rows and columns the composite needs to have. If it's easier in some other program than GIMP that's fine too.

1. Open GIMP and create a new blank image that is large enough to fit all the small images together.

2. Go to "File" > "Open as Layers" and select all the small images you want to merge.

3. GIMP will open each small image as a separate layer. Select all the layers by holding down "Shift" and clicking on each layer.

4. Go to "Image" > "Configure Grid" and set the grid size to match the size of your small images (256x256 pixels in this case).

5. With all layers still selected, go to "Layer" > "Distribute" > "Distribute Layers" and select "By Grid" from the drop-down menu.

6. This will align all the small images perfectly on the grid. You can now merge all the layers together by going to "Layer" > "Merge Visible Layers".

7. Finally, you can save your new large image by going to "File" > "Export As" and selecting your desired file format.

Technically, not  a bad solution, but... even with Open as layers to load the whole thing in one go, it takes 20 minutes to load the OP's 6800 layers only rather capable PC (I timed that while trying to improve my script).
Reply
#9
Quote:....Layer" > "Distribute" > "Distribute Layers"...

Is that a photoshop function or am I missing something ?

+

Quote:...Select all the layers by holding down "Shift" and clicking on each layer.

You might be able to do that in Gimp 2.99 (I think) but really ....6800 clicks ?
Reply
#10
Seems like a ChatGPT response Melisa gave...

I remember a thread where someone created a script for something like this... was it Kev, Kevin (with the robot head thumbnail)?.. will try to find it.

EDIT: To difficult to know how to search for it - anyway the OP is using XNView so, great!
Reply


Forum Jump: