Quote Originally Posted by MrBragg View Post
Hey Naima, I may not have explained my issues super well, so sorry about that. Doing as you suggest is fine and easy enough to do, but since even the initial conversion from "local" projection to equirectangular results in some loss / distortion of information, any projections from that compiled equirectangular just propogate and amplifies those artifacts. E.g. if I go local projection -> equirectangular -> local projection I don't end up with precisely the same image, which is kind of suboptimal. I'm looking for something that retains all of the information from the various local projections--a "master" file, if you will--from which I can generate any arbitrary other projection without accumulating artifacts. Does that make sense?
I missed this the first time around, but the kind of damage/distortion that you're discussing is inevitable because you're resampling your grid of point-sampled data during every conversion. That means that one point in the input image samples to somewhere between zero and many points in the output image. If you save in a lossy image format such as JPEG, then things get even worse because those pixels are further mangled during the processing steps.
The only way I know of to reduce total artifacts (and Naima alluded to in the next post) is to convert your explicit RGBA (or altitude for height fields) with implicit UV coordinate representation that you get in an image into an explicit UVX representation (X is RGBA or altitude in this case). There aren't a lot of tools available to work with lists of explicit points like this because an ideal representation would look a lot like a gaussian splat representation (the final image color is sampled from the UVX point cloud with a size determined by the local sparsity of the desired output area).
One kind of representation that has tooling that _is_ widely available, though, is vector representations. Converting your input into a vector representation gives you something that QGIS can convert between projections without a huge loss in fidelity. There will inevitably be some losses due to numeric precision, but it is usually very much smaller than the losses due to raster grid conversions. If you are willing to keep your data in a UVX (or lat,lon,{data}) representation very early on and only go raster at the very last conversion for tools like Photoshop, then you'll get much better results than trying to keep everything raster all of the time.
Going to a vector format requires that you convert your raster inputs to vector representations. There will be unavoidable losses from the vectorizer, but they are much better than they used to be. However, if you're working from a highly-detailed raster image (e.g. a lighted image of mountain ranges) then you may get lots and lots of tiny polygons that may translate to ugly slivers in different projections. The storage requirements for a vector representation may increase in that case (lots of tiny polygons) as well. The best case for a vector representation is things like continental outlines and relatively few altitude contours (or detail polygons).