Friday, 13 March 2015

arcgis desktop - Rhombus shaped pixels when viewing an image referenced in WGS84


Following the Question What is the projection of WGS84 in GIS software?, in the comments section of the answer https://gis.stackexchange.com/a/73578/5256, Jake very well explains that




Because the coordinates -180°,-90° in WGS84 are in angular units, and they need to be mapped to cartesian coordinates. In this case, that's done using the trivial equirectangular projection, which simply exchanges the angular units with linear units, but that process is still a projection.



I think that a related visual example of an image referenced in Geographic Coordinates is illustrated below. Perhaps my guess is completely wrong. I would like to understand what causes the "skewing" of pixels, which happens in both OpenEV as well as in ArcGIS (using data from the same satellite acquisition, packed in an NTF file). So, the question is What is this skewing effect?


A visual example


A small fragment from a WorldView-2 image, purely in Geographic Coordinates, for which gdalinfo reports the following


Coordinate System is `'                                                                                                                                                                                                             
GCP Projection =
GEOGCS["WGS 84",
DATUM["WGS_1984",
SPHEROID["WGS 84",6378137,298.257223563,

AUTHORITY["EPSG","7030"]],
TOWGS84[0,0,0,0,0,0,0],
AUTHORITY["EPSG","6326"]],
PRIMEM["Greenwich",0,
AUTHORITY["EPSG","8901"]],
UNIT["degree",0.0174532925199433,
AUTHORITY["EPSG","9108"]],
AUTHORITY["EPSG","4326"]]
GCP[ 0]: Id=UpperLeft, Info=
(0.5,0.5) -> (-16.8511111111111,13.0025,0)

GCP[ 1]: Id=UpperRight, Info=
(9215.5,0.5) -> (-16.6588888888889,13.03,0)
GCP[ 2]: Id=LowerRight, Info=
(9215.5,7167.5) -> (-16.6588888888889,12.8911111111111,0)
GCP[ 3]: Id=LowerLeft, Info=
(0.5,7167.5) -> (-16.8511111111111,12.8641666666667,0)

when displayed in OpenEV as Non-Georeferenced (squared pixels, term derived from OpenEV's related Viewer icon/button)


small fragment from a WorldView-2 image, Non-Georeferenced viewing


and Georeferenced (rhombus-shaped pixels!)



small fragment from a WorldView-2 image, Georeferenced viewing.


As explained in OpenEV's manual, for the Georeferenced Display icon/button: Non-Georeferenced means that the view is being displayed in raw pixel/line coordinates for the source raster and Georeferenced means that the view is trying to display in georeferenced units (if any are available).


The same skewing effect appears also in ArcGIS when viewing another fragment from the same acqusition (credits for the screenshot to a friend): skewing effect in ArcGIS



Answer



This happens because the grid of your NITF raster is not aligned with the latitude longitude grid: If you take a look at the ground control points (GCP), which map the corners of the raster to their geographic coordinates, you'll see that upper left and upper right pixels are at different latitudes, as are the lower left and lower right pixels.


If you plot the corner coordinates on a cartesian grid (applying an equirectangular projection), you'll get this:



So you get a skewing effect when viewing your raster in an equirectangular projection because your raster covers an area that's not rectangular in that projection.


No comments:

Post a Comment

arcpy - Changing output name when exporting data driven pages to JPG?

Is there a way to save the output JPG, changing the output file name to the page name, instead of page number? I mean changing the script fo...