[GRASS-user] Reprojection of raster maps in various platforms: projected coordinates are different

Hi All,

This is the projection information of a single Landsat scene in ENVI, GRASS and using gdalwarp. GRASS and gdalwarp gave somewhat similar output but ENVI is totally different. I have been informed that the projected image from ENVI is correct as verified from the earlier work.

Original data (in Sinusoidal Projection)

···

On Sun, Sep 27, 2015 at 1:48 AM, Markus Neteler <neteler@osgeo.org> wrote:

On Sep 26, 2015 1:00 AM, “Uttam Kumar” <uttamsinha09@gmail.com> wrote:

Thank you all. It worked.

However I noticed that the projected boundary values of N, S, W and E in GRASS are not same as the values obtained from projecting the same image in ENVI image processing software and in gdalwarp.

Projection of the scene in Lambert Azimuthal Equal Area is similar (but not exactly equal) in GRASS and gdal, but in ENVI it is totally different. I just did the comparison to see if things are similar from different softwares in case they have to be ported to other platforms.

Can you print the projection information in both GRASS (g.proj -p or -w) and ENVI? Are they really the same?

Markus

On Thu, Oct 8, 2015 at 9:36 PM, Uttam Kumar <uttamsinha09@gmail.com> wrote:

Hi All,

This is the projection information of a single Landsat scene in ENVI, GRASS
and using gdalwarp. GRASS and gdalwarp gave somewhat similar output but ENVI
is totally different. I have been informed that the projected image from
ENVI is correct as verified from the earlier work.

Original data (in Sinusoidal Projection)
------------------------------------------------------
Corner Coordinates:
Upper Left (-10801805.198W, 4130102.079N)
Lower Left (-10801805.198W, 3971252.079N)
Upper Right (-10642955.198W, 4130102.079N)
Lower Right (-10642955.198W, 3971252.079N)

So, I generated the upper left *corner* as a point:
echo "-10801805.198|4130102.079|1" | v.in.ascii input=- output=point

It appears to be located in California. Right?

Reprojected in GRASS GIS (Lambert Azimuthal Equal Area, Datum: WGS84)

Can you please give more information here?

----------------------------------------------------------------------------------
N: 5564460
S: 5185590 |
E: -5451390
W: -5762490

... is this the upper box?
In EU LAEA (EPSG 3035), my SIN point becomes

-674447.24192338|9862187.84799817

... without data it is hard to say. Could you export your SIN box as a
SHAPE file and make available?

Markus

On 2015-10-10 22:56, Markus Neteler wrote:

... is this the upper box?
In EU LAEA (EPSG 3035), my SIN point becomes

-674447.24192338|9862187.84799817

As a small side-remark, related to the use of EPSG:3035 rather than to the OP's question:

EPSG:3035 is related datum ETRS89, which in return is in some fuzzy way connected to "the stable part of the Euroasian plate" (Whenever in doubt, one could look up some INSPIRE documents, of which there is no shortage).

With you above coordinates, you are pretty far away from the Euroasian plate and the stable part thereof, so one might want to reconsider the choice of CRS.

Hermann

You are right. The scene belongs to a small area near Central California region.

I have available image boundary in SINUSOIDAL projection in vector format (shp file). How do I share this to grass users ?

(attachments)

Image_Bounding_box.zip (1.33 KB)

···

On Thu, Oct 8, 2015 at 12:36 PM, Uttam Kumar <uttamsinha09@gmail.com> wrote:

Hi All,

This is the projection information of a single Landsat scene in ENVI, GRASS and using gdalwarp. GRASS and gdalwarp gave somewhat similar output but ENVI is totally different. I have been informed that the projected image from ENVI is correct as verified from the earlier work.

Original data (in Sinusoidal Projection)

Corner Coordinates:
Upper Left (-10801805.198W, 4130102.079N)
Lower Left (-10801805.198W, 3971252.079N)
Upper Right (-10642955.198W, 4130102.079N)
Lower Right (-10642955.198W, 3971252.079N)

Reprojected in GRASS GIS (Lambert Azimuthal Equal Area, Datum: WGS84)

N: 5564460
S: 5185590 |
E: -5451390
W: -5762490

Reprojected in ENVI (Lambert Azimuthal Equal Area, Datum: WGS84)

Corner Coordinates:

Upper Left (-2265106.681W, 1064601.383N)
Lower Left (-2265106.681W, 830181.383N)
Upper Right (-1960126.681W, 1064601.383N)
Lower Right (-1960126.681W, 830181.383N)

Reprojected using gdalwarp (Lambert Azimuthal Equal Area, Datum: WGS84)

Corner Coordinates:
Upper Left (-5148766.236W, 3000477.570N)
Lower Left (-5148766.236W, 2724274.973N)
Upper Right (-4826973.503W, 3000477.570N)
Lower Right (-4826973.503W, 2724274.973N)

Any comment is appreciated.

Uttam.

On Sun, Sep 27, 2015 at 1:48 AM, Markus Neteler <neteler@osgeo.org> wrote:

On Sep 26, 2015 1:00 AM, “Uttam Kumar” <uttamsinha09@gmail.com> wrote:

Thank you all. It worked.

However I noticed that the projected boundary values of N, S, W and E in GRASS are not same as the values obtained from projecting the same image in ENVI image processing software and in gdalwarp.

Projection of the scene in Lambert Azimuthal Equal Area is similar (but not exactly equal) in GRASS and gdal, but in ENVI it is totally different. I just did the comparison to see if things are similar from different softwares in case they have to be ported to other platforms.

Can you print the projection information in both GRASS (g.proj -p or -w) and ENVI? Are they really the same?

Markus

You are right. The scene belongs to a small area near Central California region.

I have available image boundary in SINUSOIDAL projection in vector format (shp file). How do I share this to grass users ?

···

On Sat, Oct 10, 2015 at 1:56 PM, Markus Neteler <neteler@osgeo.org> wrote:

On Thu, Oct 8, 2015 at 9:36 PM, Uttam Kumar <uttamsinha09@gmail.com> wrote:

Hi All,

This is the projection information of a single Landsat scene in ENVI, GRASS
and using gdalwarp. GRASS and gdalwarp gave somewhat similar output but ENVI
is totally different. I have been informed that the projected image from
ENVI is correct as verified from the earlier work.

Original data (in Sinusoidal Projection)

Corner Coordinates:
Upper Left (-10801805.198W, 4130102.079N)
Lower Left (-10801805.198W, 3971252.079N)
Upper Right (-10642955.198W, 4130102.079N)
Lower Right (-10642955.198W, 3971252.079N)

So, I generated the upper left corner as a point:
echo “-10801805.198|4130102.079|1” | v.in.ascii input=- output=point

It appears to be located in California. Right?

Reprojected in GRASS GIS (Lambert Azimuthal Equal Area, Datum: WGS84)

Can you please give more information here?


N: 5564460
S: 5185590 |
E: -5451390
W: -5762490

… is this the upper box?
In EU LAEA (EPSG 3035), my SIN point becomes

-674447.24192338|9862187.84799817

… without data it is hard to say. Could you export your SIN box as a
SHAPE file and make available?

Markus

On 13/10/15 21:24, Uttam Kumar wrote:

You are right. The scene belongs to a small area near Central California
region.

I have available image boundary in SINUSOIDAL projection in vector
format (shp file). How do I share this to grass users ?

This is perfect, but could you please give us precise information about the target projection ? You mention Lambert Azimuthal Equal Area, Datum: WGS84, but this is not enough as you can different x0 and y0, different false easting and false northing, etc.

Moritz

[Please keep conversations on the list]

On 14/10/15 23:19, Uttam Kumar wrote:

_

_
_*This information is for the original data (Source):*_

*PROJ.4 : '+proj=sinu +lon_0=0 +x_0=0 +y_0=0 +a=6371007.181
+b=6371007.181 +units=m +no_defs '*

Coordinate System is:
PROJCS["Sinusoidal",
     GEOGCS["GCS_Unknown",
         DATUM["Unknown",
             SPHEROID["S_Unknown",6371007.181,0.0]],
         PRIMEM["Greenwich",0.0],
         UNIT["Degree",0.0174532925199433]],
     PROJECTION["Sinusoidal"],
     PARAMETER["False_Easting",0.0],
     PARAMETER["False_Northing",0.0],
     PARAMETER["longitude_of_center",0.0],
     UNIT["Meter",1]]
Origin = (-10801805.197699999436736,4130102.079069999977946)
Pixel Size = (30.000000000000000,-30.000000000000000)

*
_This information is for the destination data (Target):_*

*PROJ.4 : '+proj=laea +lat_0=30 +lon_0=-96 +x_0=0 +y_0=0 +datum=NAD83
+units=m +no_defs '*

In your first mail you said:

Lambert Azimuthal Equal Area, Datum: WGS84

but here the datum is NAD83.

Using your projection info, I get almost exactly the same results in GRASS as you report from ENVI:

On 08/10/15 21:36, Uttam Kumar wrote:> Reprojected in ENVI (Lambert Azimuthal Equal Area, Datum: WGS84)
> -------------------------------------------------------------------------
> Corner Coordinates:
>
> Upper Left (-2265106.681W, 1064601.383N)
> Lower Left (-2265106.681W, 830181.383N)
> Upper Right (-1960126.681W, 1064601.383N)
> Lower Right (-1960126.681W, 830181.383N)

GRASS 7.0.1 (test_LAEA):~ > v.info -g Image_Boundary_box
north=1064601.38274499
south=830176.771464028
east=-1960125.15283348
west=-2265106.68066176

Don't have the time now to explore the exact differences, but either it's a question of definition of the bounding box, or it possibly be a question of which specific NAD83 transformation parameters were used.

Moritz

Thank you so much.

Yes the datum should have been NAD83. This is perfect. Please summarize me how did you do this transformation from sinusoidal to Lambert Azimuthal Equal Area?

I have all my source images in sinusoidal projection in a location called “Landsat_sinu”.

I want to create a target locatoin “Landsat_laea”? I tried using the default option in GRASS GUI and the options I selected was

1.) Select coordinate system parameters from a list

2.) Projection code: laea

3.) Datum with associated ellipsoid:

Central parallel: 30

Central Meridian: -96

False easting: 0

False northing: 0

4.) Datum code: nad83

5.) Select from the list of datum transformation: 1 used in whole nad83 region

+proj=laea

+lat_0=30

+lon_0=-96

+x_0=0

+y_0=0

+no_defs

+a=6378137

+rf=298.257222101

+towgs84=0.000,0.000,0.000

to_meter=1

+datum=nad83

Finish.

Is everything ok with this for the below (required) target definition?

PROJ.4 : '+proj=laea +lat_0=30 +lon_0=-96 +x_0=0 +y_0=0 +datum=NAD83
+units=m +no_defs ’

Looks like at some point I am making a small mistake.

···

On Wed, Oct 14, 2015 at 4:52 PM, Moritz Lennert <mlennert@club.worldonline.be> wrote:

[Please keep conversations on the list]

On 14/10/15 23:19, Uttam Kumar wrote:

_

_
This information is for the original data (Source):

PROJ.4 : '+proj=sinu +lon_0=0 +x_0=0 +y_0=0 +a=6371007.181
+b=6371007.181 +units=m +no_defs ’

Coordinate System is:
PROJCS[“Sinusoidal”,
GEOGCS[“GCS_Unknown”,
DATUM[“Unknown”,
SPHEROID[“S_Unknown”,6371007.181,0.0]],
PRIMEM[“Greenwich”,0.0],
UNIT[“Degree”,0.0174532925199433]],
PROJECTION[“Sinusoidal”],
PARAMETER[“False_Easting”,0.0],
PARAMETER[“False_Northing”,0.0],
PARAMETER[“longitude_of_center”,0.0],
UNIT[“Meter”,1]]
Origin = (-10801805.197699999436736,4130102.079069999977946)
Pixel Size = (30.000000000000000,-30.000000000000000)

This information is for the destination data (Target):*

PROJ.4 : '+proj=laea +lat_0=30 +lon_0=-96 +x_0=0 +y_0=0 +datum=NAD83
+units=m +no_defs ’

In your first mail you said:

Lambert Azimuthal Equal Area, Datum: WGS84

but here the datum is NAD83.

Using your projection info, I get almost exactly the same results in GRASS as you report from ENVI:

On 08/10/15 21:36, Uttam Kumar wrote:> Reprojected in ENVI (Lambert Azimuthal Equal Area, Datum: WGS84)


Corner Coordinates:

Upper Left (-2265106.681W, 1064601.383N)
Lower Left (-2265106.681W, 830181.383N)
Upper Right (-1960126.681W, 1064601.383N)
Lower Right (-1960126.681W, 830181.383N)

GRASS 7.0.1 (test_LAEA):~ > v.info -g Image_Boundary_box
north=1064601.38274499
south=830176.771464028
east=-1960125.15283348
west=-2265106.68066176

Don’t have the time now to explore the exact differences, but either it’s a question of definition of the bounding box, or it possibly be a question of which specific NAD83 transformation parameters were used.

Moritz