X
PrevPrev Go to previous topic
NextNext Go to next topic
Last Post 19 Jan 2012 04:39 AM by  anon
ENVI Projection Interrupted Goode
 6 Replies
Sort:
You are not authorized to post a reply.
Author Messages

anon



New Member


Posts:5
New Member


--
19 Jan 2012 04:39 AM
    ENVI 4.5 supported Interrupted Goode projection as no. 24 but this projection is missing in ENVI 4.8 The file created with interrupted Goode projection in ENVI 4.5 when opened in ENVI 4.8 show it as Arbitrary projection. I tried to add the projection in map_proj.txt file of 4.8 by copying the parameters from 4.5 but to no avail. Can anybody help? Vinay Sehgal, India

    Deleted User



    New Member


    Posts:
    New Member


    --
    19 Jan 2012 12:48 PM
    The Goode Homolosine projection is one that was dropped from direct support in ENVI when ENVI switched to using the ESRI projection engine in version 4.7. If the ESRI projection engine supports it, though, which I think it does, then you can get ENVI to correctly interpret the projection. There is a Help Article that explains how to do this: How to use a projection type that the ESRI Projection Engine supports but ENVI does not - Peg

    Deleted User



    New Member


    Posts:5
    New Member


    --
    24 Jan 2012 06:06 AM
    Dear Peg Thanxs for the info but I still could not accomplish the task. The original header file is given below: ENVI description = { File Resize Result, x resize factor: 1.000000, y resize factor: 1.000000. [Tue Oct 22 14:11:03 2002] EURASIA LAND COVER IGBP Ver2.0} samples = 4482 lines = 3843 bands = 1 header offset = 0 file type = ENVI Classification data type = 1 interleave = bsq sensor type = Unknown classes = 18 class lookup = { 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 255, 255, 0, 0, 255, 255, 255, 0, 255, 176, 48, 96, 46, 139, 87, 160, 32, 240, 255, 127, 80, 127, 255, 212, 218, 112, 214, 160, 82, 45, 127, 255, 0, 216, 191, 216, 238, 0, 0, 205, 0, 0} class names = { Unclassified, Evergreen NeedleLeaf Forest, Evergreen Broadleaf Forest, Deciduous Needleleaf Forest, Deciduous Broadleaf Forest, Mixed Forest, Closed Shrublands, Open Shrublands, Woody Savannas, Savannas, Grasslands, Permanent Wetlands, Croplands, Urban and Built-Up, Cropland/Natural Vegetation Mosaic, Snow and Ice, Barren or Sparsely Vegetated, Water Bodies} byte order = 0 map info = {Sample Interrupted Goode, 1.0000, 1.0000, 6223500.0000, 4442500.0000, 1000.00000000, 1000.00000000, WGS-84, units=Meters} projection info = {24, 6370997.0, WGS-84, Sample Interrupted Goode, units=Meters} band names = { Resize (Band 1:eaigbp2_0g.img)} I added the ESRI Projection manually from file EnviPEProjcsStrings.txt and now it looks like: ENVI description = { File Resize Result, x resize factor: 1.000000, y resize factor: 1.000000. [Tue Oct 22 14:11:03 2002] EURASIA LAND COVER IGBP Ver2.0} samples = 4482 lines = 3843 bands = 1 header offset = 0 file type = ENVI Classification data type = 1 interleave = bsq sensor type = Unknown classes = 18 class lookup = { 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 255, 255, 0, 0, 255, 255, 255, 0, 255, 176, 48, 96, 46, 139, 87, 160, 32, 240, 255, 127, 80, 127, 255, 212, 218, 112, 214, 160, 82, 45, 127, 255, 0, 216, 191, 216, 238, 0, 0, 205, 0, 0} class names = { Unclassified, Evergreen NeedleLeaf Forest, Evergreen Broadleaf Forest, Deciduous Needleleaf Forest, Deciduous Broadleaf Forest, Mixed Forest, Closed Shrublands, Open Shrublands, Woody Savannas, Savannas, Grasslands, Permanent Wetlands, Croplands, Urban and Built-Up, Cropland/Natural Vegetation Mosaic, Snow and Ice, Barren or Sparsely Vegetated, Water Bodies} byte order = 0 band names = { Resize (Band 1:eaigbp2_0g.img)} map info = {World_Goode_Homolosine_Land, 1.0000, 1.0000, 6223500.0000, 4442500.0000, 1000.00000000, 1000.00000000, WGS-84, units=Meters} coordinate system string = coordinate system string = {PROJCS["World_Goode_Homolosine_Land",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0], UNIT["Degree",0.0174532925199433]],PROJECTION["Goode_Homolosine"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",0.0], PARAMETER["Option",1.0],UNIT["Meter",1.0]]} ****************** When I open it in ENVI I get following two errors: 1. Problem: No carriage returns found. Unable to read this file as an ASCII file. 2. Problem: An unknown projection has been referenced in the map projection. Unable to use. Can you help in finding the fault in this header? Vinay Sehgal

    Deleted User



    New Member


    Posts:
    New Member


    --
    27 Jan 2012 10:04 AM
    I've been playing around with your before and after headers, copied into a plain text document from your posting. I generated a test image that fit the header. I found that I couldn't get ENVI to open the file with your "after" header at all. I think it has something to do with the formatting of the text in that file. But nothing I tried in terms of reformatting made it possible for me to use that header to open your file. So, I copied your "before" header into a text editor, and saved that to a plain text file. ENVI could then open my test image using that header. I then worked from that header, editing all of the lines that were different by hand, and was able to get the header below to work for my test data. The important changes, I think, from the original header were: 1. I changed the projection name in the map info field to "Arbitrary". I believe this just needs to be some projection name that ENVI recognizes. Not the name of the projection in the ESRI projection engine. 2. I took out all of the carriage returns from the coordinate system string. Until I did this, I kept getting the same carriage return error that you were seeing. I think this must be some formatting problem that came up during copying and pasting the string. I'm not sure what the problem is, but removing those carriage returns seems to resolve it. Let me know if you can't get this header to work, if you copy and past it into a plain text file to be the header for your image. - Peg ******************************* ENVI description = { File Resize Result, x resize factor: 1.000000, y resize factor: 1.000000. [Tue Oct 22 14:11:03 2002] EURASIA LAND COVER IGBP Ver2.0} samples = 4482 lines = 3843 bands = 1 header offset = 0 file type = ENVI Classification data type = 1 interleave = bsq sensor type = Unknown classes = 18 class lookup = { 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 255, 255, 0, 0, 255, 255, 255, 0, 255, 176, 48, 96, 46, 139, 87, 160, 32, 240, 255, 127, 80, 127, 255, 212, 218, 112, 214, 160, 82, 45, 127, 255, 0, 216, 191, 216, 238, 0, 0, 205, 0, 0} class names = { Unclassified, Evergreen NeedleLeaf Forest, Evergreen Broadleaf Forest, Deciduous Needleleaf Forest, Deciduous Broadleaf Forest, Mixed Forest, Closed Shrublands, Open Shrublands, Woody Savannas, Savannas, Grasslands, Permanent Wetlands, Croplands, Urban and Built-Up, Cropland/Natural Vegetation Mosaic, Snow and Ice, Barren or Sparsely Vegetated, Water Bodies} byte order = 0 map info = {Arbitrary, 1.0000, 1.0000, 6223500.0000, 4442500.0000, 1000.00000000, 1000.00000000, WGS-84, units=Meters} coordinate system string ={PROJCS["World_Goode_Homolosine_Land",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Goode_Homolosine"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",0.0],PARAMETER["Option",1.0],UNIT["Meter",1.0]]} band names = { Resize (Band 1:eaigbp2_0g.img)}

    Deleted User



    New Member


    Posts:5
    New Member


    --
    31 Jan 2012 04:56 AM
    The header shown by you is working and ENVI is able to recognize the Projection information - EXCEPT for one problem. Now my coastline boundries (High resolution of ENVI) donot perfectly overlay over the image. To nearly match the coastline with my image, I have to change image tie point to -9,3 insetad of 1,1 on the original header to nearly match the coastline with image i.e map info = {Goode_Homolosine, -9.0000, 3.0000, 6223500.0000, 4442500.0000, 1.0000000000e+003, 1.0000000000e+003, WGS-84, units=Meters} I rechecked in ENVI 4.5 and found that coastal boundaries are perfectly overlaying over image. Also note that I have changed "Arbitrary" to "Goode_Homolosine" and its still working fine. The change in image tie points means that the changed projection as per ESRI is not exactly mactching the original projection. So, this way of changing projection may not work - and ofcourse is not a perfect solution. Overall, my conclusion is ENVI new version (i.e 4.7 & 4.8) is not supporting its earlier version data - a very disheartening fact to note for a user who is using ENVI since 1999 (ver 3.0). Thanxs for your support & time Vinay

    Deleted User



    New Member


    Posts:
    New Member


    --
    31 Jan 2012 08:31 AM
    Dear Vinay, It is true that with the switch to the ESRI projection engine, some projections that were directly supported in ENVI are no longer directly supported. If you can't find an equivalent projection in the ESRI projection engine, then there is not another way to get ENVI to use the projection. I would have thought that the ESRI projection engine's version of the Goode Homolosine projection would be the same as what earlier versions of ENVI were using, but it's possible that it is not. In that case, I wouldn't be shocked if the problem were with the implementation of the projection in earlier versions of ENVI. That possibility is one reason that ENVI switched to using the ESRI projection engine. Or perhaps ESRI just defines the projection a bit differently than older versions of ENVI did. With that said, it is odd that a simple shift of the image brings it into alignment with your coastline vectors. That sounds like it could be due to some kind of datum shift. For example, if your vectors and your image use a different datum. Although, if you are using the same datum in both versions of ENVI, then that explanation doesn't make sense. I noticed that ENVI's Sample Interrupted Goode projection uses a spheroid radius of 6370997.00, while the ESRI projection engine uses a spheroid radius of 6378137.0. Perhaps that accounts for the difference? - Peg

    Deleted User



    New Member


    Posts:5
    New Member


    --
    03 Feb 2012 08:00 AM
    Dear Peg You are right - difference is in spheroid. One I changed it to 6370997.00, the vectors are coming in place over coast. The final parameters are as given below: map info = {Goode_Homolosine, 1.0000, 1.0000, 6223500.0000, 4442500.0000, 1.0000000000e+003, 1.0000000000e+003, WGS-84, units=Meters} coordinate system string = {PROJCS["World_Goode_Homolosine_Land",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6370997.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Goode_Homolosine"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",0.0],PARAMETER["Option",1.0],UNIT["Meter",1.0]]} But I was wondering how the spheroid has changed because in both cases (Envi 4.5 and 4.8 with ESRI projection engine) we used WGS_84 datum. The original documnetation of image also specify that radius of sphere is 6370997 m. I suspect the problem is with ESRI projection engine rather than implemetation of projections in earlier versions of ENVI. Anyway problem is solved but its may not easily implementable by others in future. thansx again Vinay
    You are not authorized to post a reply.