Satlas: Open Geospatial Data Generated by AI
satlas.allen.ai
satlas.allen.ai
They also do some object recognition, which is useful if you're an electric infrastructure nut. It spotted some solar fields in Shanghai which I've never heard of before -- a look at the same coordinates (30.753, 121.392) on Google sure shows the expected blue.
We report the accuracy of the data at [1]; the Satlas project is quite new and we're aiming to improve accuracy as well as add more categories over time.
We expect the geospatial data will be useful for certain applications, but I agree that the upscaled super-resolution output has more limited uses, especially in its current state outside the US since it is trained using NAIP imagery that is only available in the continental US. We're exploring methods to quantify and improve the accuracy of the upscaled imagery.
Note that the model weights, training data, and generated geospatial data can all be downloaded at [2].
[1] https://github.com/allenai/satlas/blob/main/DataValidationRe...
Also, all of the models input three or four images of the same location (captured within a few months), with max temporal pooling used at intermediate layers to enable model to synthesize information across the images. This helps a lot, definitely when one image has a section obscured by clouds (so model can use the other images instead), and maybe also when different images provide different information (e.g. shadows going in different directions due to slightly different times of day).
- For applications that only need summary statistics over certain geographies, analyzing small samples of data can yield correction factors and error estimates.
- The data could also be combined with manual verification to improve existing higher-precision but lower-recall datasets (e.g. OpenStreetMap where features are more likely to be correct but also have less overall coverage).
My first assumption is that it takes existing datasets of high and low res imagery, covering the same areas, and builds a complex understanding of extrapolation between the two. A sort of reverse-engineering guidebook. It can then be fed low res imagery alone, and refer to the guidebook its built up, in attempt to extrapolate high res output.
"The example data suggests, at X.X% likelihood, that this particular pattern of low res pixels resolves into a high res shape of these particulars : ".
Compare how a text to image model imagines what a whole image looks like based on a prompt and input noise.
The other important part is that the model inputs many low-res images (up to 18, i.e. about three months of images) to produce each high-res image. If you were to down-sample an image by 2x via averaging, then offset the image by one pixel to the right and down-sample it, then repeat for two more offsets, then across the four down-sampled images, you should have enough information to reconstruct the original image. We want our ML model to attempt a similar reconstruction but with actual low-res images. The idea breaks down in practice since pixel values from a camera aren't a perfect average of the light reflected from that grid cell, and there are seasonal changes and clouds and other dynamic factors, but with many aligned low-res captures (with sub-pixel offsets) an ML model should still be able to somewhat accurately estimate what the scene looks like at 2x or 4x higher-res (the Satlas map shows a 4x attempt). The current model we've deployed does this far from perfectly, so there are some issues like figuring out where the model might be making a mistake and enabling the model to best make use of the many low-res input images, and we're actively exploring how to improve on these.
This shares ideas with burst super-resolution, see e.g. Deep Burst Super-Resolution [https://arxiv.org/pdf/2101.10997.pdf].
Also, google maps changes the url as you pan and zoom.