comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Re: ENVI_CONVERT_FILE_COORDINATES returning negative values
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Switch to threaded view of this topic Create a new topic Submit Reply
Re: ENVI_CONVERT_FILE_COORDINATES returning negative values [message #53945] Fri, 11 May 2007 10:11 Go to next message
James Kuyper is currently offline  James Kuyper
Messages: 425
Registered: March 2000
Senior Member
hanneliebx@yahoo.co.uk wrote:
> Hi everyone, I'm a new ENVI/IDL user and hope to get some help here
>
> I am attempting to extract 3x3 pixel windows from MODIS images using
> lat/long coordinates. To do this I have

All of the MODIS product files have a prefix which is called an ESDT,
which starts with "MOD" for Terra, or "MYD" for Aqua products, or
"MCD" for the combined Terra/Aqua products. What is the ESDT on the
product files you are looking at?
Re: ENVI_CONVERT_FILE_COORDINATES returning negative values [message #53947 is a reply to message #53945] Fri, 11 May 2007 08:36 Go to previous messageGo to next message
Jean H. is currently offline  Jean H.
Messages: 472
Registered: July 2006
Senior Member
> (the xcoord= -35.406368 and ycoord=149.80322, XF and YF output was
> -30954 and -34019 respectively)

shouldn't it be x = 149.80322 and y = -35.406368 ???

The returned pixel coords values would make sense if you made this
inversion!

Jean
Re: ENVI_CONVERT_FILE_COORDINATES returning negative values [message #53954 is a reply to message #53947] Fri, 11 May 2007 06:42 Go to previous messageGo to next message
Jeff N. is currently offline  Jeff N.
Messages: 120
Registered: April 2005
Senior Member
On May 11, 1:00 am, hanneli...@yahoo.co.uk wrote:
> Hi everyone, I'm a new ENVI/IDL user and hope to get some help here
>
> I am attempting to extract 3x3 pixel windows from MODIS images using
> lat/long coordinates. To do this I have
> -created two variables containing the latitude and longitude of the
> area I want to extract
> - opened the relevant image file (which has a related .hdr file with
> the map info of the image)
> - used the command [ENVI_CONVERT_FILE_COORDINATES, fid, XF, YF,
> xcoord, ycoord] to change from lat/long coordinates to pixel values
> (the xcoord= -35.406368 and ycoord=149.80322, XF and YF output was
> -30954 and -34019 respectively)
> - used the XF and YF output values to extract the 3x3 pixel window
> e.g.
> Output[0] = xcoord
> Output[1] = ycoord
> Output[2] = floor(XF)
> Output[3] = floor(YF)
> ; set the extent of the image you want to extract
> dims = [-1, Output[2]-1, Output[2]+1, Output[3]-1, Output[3]+1]
> ; retrieve the pixels
> data = ENVI_GET_DATA(fid=fid, dims=dims, pos=1)
>
> The XF and YF values that are generated are negative and much larger
> than the lines and samples of the image (7451x9580), so I am obviously
> doing something wrong.
>
> The location is in the Southern hemisphere, so the latitude that I
> provided has a negative value (e.g. -35) - I'm sure that is not the
> problem though.
>
> Could it be that the header information of the image is not read
> properly when the file is opened? Is there a way of displaying the map
> info saved in the header when the IDL program is run to check if it is
> read correctly? Or am I on the wrong track?
>
> I would really apprecite any pointers.
> Hannelie

I'm unfamiliar with MODIS data, and also not particularly
knowledgeable with map projections in general, but I have an idea I'll
share nonetheless :) My gut feeling is that your MODIS data are have
had some sort of map projection applied. This would mean that the map
information stored in the file are not geographic coordinates (lat/
lon's), but instead are the coordinates of whatever projection your
data are in. You might want to check the documentation for MODIS data
to verify this. But your statement that the coordinates
ENVI_CONVERT_FILE_COORDINATES is giving you is much larger than the
input image dimensions hints at some sort of map projection to me. If
this is true, after your call to ENVI_CONVERT_FILE_COORDINATES you can
then make a call to ENVI_CONVERT_PROJECTION_COORDINATES to get your
lat/lon values.

Hope that helps,
Jeff
Re: ENVI_CONVERT_FILE_COORDINATES returning negative values [message #54029 is a reply to message #53947] Sun, 13 May 2007 16:19 Go to previous message
hanneliebx is currently offline  hanneliebx
Messages: 2
Registered: May 2007
Junior Member
On May 12, 1:36 am, "Jean H." <jghas...@DELTHIS.ucalgary.ANDTHIS.ca>
wrote:
>> (the xcoord= -35.406368 and ycoord=149.80322, XF and YF output was
>> -30954 and -34019 respectively)
>
> shouldn't it be x = 149.80322 and y = -35.406368 ???
>
> The returned pixel coords values would make sense if you made this
> inversion!
>
> Jean

YES! thank you for pointing that out. Such a simple mistake that I
kept overlooking the obvious :-) My code works perfectly now and
returns the correct location.

Thanks to everyone who took the time to reply, I really appreciate it.

Hannelie
  Switch to threaded view of this topic Create a new topic Submit Reply
Previous Topic: How to return Values from an options dialog widget to the main program (Pointers)
Next Topic: IDL/Astro/mscred

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Wed Oct 08 19:20:14 PDT 2025

Total time taken to generate the page: 0.00588 seconds