Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

Required fields*

11
  • 1
    I've seen this geometric layout before, but I can't find any info on it after tons of googling. I'm curious if somebody has a reference Commented Oct 27, 2021 at 13:32
  • is that black-gray-white-recursing square just a way of mapping the channels of all the different size images into a square grid? As in that the largest actual image is 1/4 of the full square, with the black, gray and white quarters the three channels, and then repeating the same for the lower quarter and the next smaller size? I wonder if that's any more useful than just storing the different images as regular images back to back. Commented Oct 27, 2021 at 17:05
  • I've never seen the recursive square used in practice, but maybe there are some advantages to using a single image for all scaled images instead of multiple files. Commented Oct 27, 2021 at 19:49
  • @qwr Sure. When you're storing on disk, space is allocated in clusters/chunks so you can have wasted space up to almost the cluster size - per file. Like carrying 2.1 gallons of liquid when your only container is 1 gallon jugs. When you have 10 small files you can lose up to 10*cluster size, vs only 1*cluster size for one larger file. You lose some space with the larger file because you have overhead of the grey and white areas, but compressing image formats such as PNG are very good at large areas of solid color, instead of saving "pixel 1, grey, pixel 2, grey, etc."... Commented Oct 28, 2021 at 11:24
  • ...it will just save "pixels 1 through (1234), grey". (Or similar to that, the exact algorithm varies by image format but you get the idea.) For network transfer there is a similar per connection overhead. To transfer a file your computer first takes some time to contact the remote server, make sure that it is listening, and then explain what file is wanted. That's usually about the same amount of time per file, so 10 files has 10x as much transfer overhead as 1 file. Etc. (Same concepts apply to file reads, in memory storage, etc.) Commented Oct 28, 2021 at 11:24