Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Constraints on tile data ordering when using multiple "bands" #17

Open
Kirill888 opened this issue Sep 13, 2023 · 0 comments
Open

Constraints on tile data ordering when using multiple "bands" #17

Kirill888 opened this issue Sep 13, 2023 · 0 comments

Comments

@Kirill888
Copy link

It's possible to have multiple samples per pixel, each stored as a separate pixel plane.

Example: 5 independently compressed pixel planes of the same dimensions:

  • 0x0115 SamplesPerPixel=5
  • 0x011C PlanarConfiguration=2 (separate)

Let's say we have 3 overview levels, for a total of (3+1)*5 pixel planes. How should tile data be arranged, in what order. Validate cog script only seems to be checking main and mask bands. There aren't really a lot of different options here

  1. All tiles for a given band for a given overview level next to each other in row-major order
    • A00, A01, ... B00, B01 ... C00, C01...
    • maximizes http get merges when reading a single band
  2. Interleave tiles (like RGB but in tiles rather pixels)
    • A00, B00, C00, ..., A01, B01, C01, ...
    • maximizes http get merges when reading all the bands for the same location

I'm guessing that (1) makes most sense, would be nice to have that case explicitly covered by the spec. Need to expand Tile content of (full resolution image|last overview level|first overview level) to include multi-sample case, and in fact row-major ordering is not mentioned by the spec only by the validate script.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant