[HN Gopher] Learning About the GeoTIFF File Format with a Hex Ed... ___________________________________________________________________ Learning About the GeoTIFF File Format with a Hex Editor (2018) Author : oldpatricka Score : 71 points Date : 2021-05-05 16:42 UTC (6 hours ago) (HTM) web link (medium.com) (TXT) w3m dump (medium.com) | ivanhoe wrote: | speaking of this, what hex editor would community recommend for | examining (potentially quite large) binaries? | redrobein wrote: | ImHex | gspr wrote: | I haven't gotten my hands dirty with it myself yet, but Poke | looks super interesting! | | https://www.jemarch.net/poke | | https://media.ccc.de/v/ASG2019-127-gnu-poke-an-extensible-ed... | | Actually, it sounds like a fun weekend task to redo this | GeoTIFF writeup in Poke :-) | MontagFTB wrote: | On the Mac, I cannot recommend Hex Fiend enough: | https://hexfiend.com/ | punnerud wrote: | Could we build a static "Google Maps" using really big GeoTIFF | files and downloading part of them with the section of a file | functionality. | | Just like the SQLite example: | https://news.ycombinator.com/item?id=27025829 | gregsadetsky wrote: | I think that you meant to link to | https://news.ycombinator.com/item?id=27016630 instead which was | the recently posted SQLite/SQL.js/HTTP range library | | And there was a specific sub-thread in the conversation that | mentioned using this for maps too! | | https://news.ycombinator.com/item?id=27020372 | punnerud wrote: | Thank you, a bit too fast there | kylebarron wrote: | You could, you'd just have to be wary of how large the header | metadata would be. If you had a single Cloud-Optimized GeoTIFF | of the world with internal tiles up to zoom 14, the header | metadata could be a few MB, which wouldn't be ideal to load in | every client. | kylebarron wrote: | See also: https://github.com/pangeo-data/cog-best- | practices/issues/9 | simonw wrote: | Sad to say it but these days loading a few MB to a client is | par for the course. I don't think it's a reason not to try | and get this working - the range header trick does sound | particularly relevant to this format. | | UPDATE: Just read https://kylebarron.dev/blog/cog- | mosaic/overview which is excellent and clearly you're already | very on top of the range request mechanism! | gregsadetsky wrote: | The posts on this topic on your site are really fascinating! | | https://kylebarron.dev/blog/cog-mosaic/overview | | https://kylebarron.dev/blog/cog-mosaic/naip | kylebarron wrote: | Thanks! The text is still relevant but those demos are a | little old. If you're curious these demos are from last | week (using Cloud-Optimized GeoTIFFs under the hood to | serve image data quickly): | | - https://studio.unfolded.ai/public/9a2c5cd8-f0f0-43ce-b231 | -78... | | - https://studio.unfolded.ai/public/96c70224-dd89-431f-ae7a | -0a... | | - https://studio.unfolded.ai/public/af792fd8-1990-4cdc- | bf2b-99... | kylebarron wrote: | This is a good hex editor overview, but also the part about | Cloud-Optimized GeoTIFFs is quite good. In the past couple of | years COGs have really revolutionized the satellite imagery | industry. Even USGS has seen this is the future and publishes the | official Landsat data in Cloud-Optimized GeoTIFF format [0]. | | I've been leveraging COGs recently to quickly bring satellite | imagery into the browser for analysis [1]. | | [0]: https://www.usgs.gov/core-science- | systems/nli/landsat/landsa... | | [1]: https://www.unfolded.ai/blog/2021-04-28-raster-layer/ | alleycat5000 wrote: | We use COGs at work with mapserver (and GDAL's /vsis3/ magic) | to serve up imagery internally for qa/qc: | | https://github.com/pedros007/mapserver-docker | | Literally saves hundreds of thousands of dollars a year by | avoiding having to stage the imagery locally before serving it | out! | darekkay wrote: | I recently did something similar with Foobar 2000's playlist | format [1]. It was a fun learning experience :) | | [1] https://darekkay.com/blog/foobar2000-playlist-index-format/ ___________________________________________________________________ (page generated 2021-05-05 23:00 UTC)