GLIMSView is a cross platform application intended to aid the process of glacier digitization for the GLIMS project. Specifically, it allows the users to view various forms of satellite imagery, digitize glacier outlines within it, attach GLIMS specific attributes to segments of these outlines, and export them to the ingest format described in the GLIMS documentation. An ingest created with this tool is able to be directly inserted into a database of similar digitizations that can then be anylized for scientific purposes. GLIMSView has been designed specifically for this functionality. Below are descriptions of methods to use the application and produce ingests.
As of the current version, v1.0, GLIMSView is not packaged with an installer. The binaries are available in a zipped folder and contain everything needed to run. You can obtain the most recent release at http://www.glims.org. Download the file and unzip it to wherever you prefer. Inside the unzipped folder will be an executable named "glimsview", on Windows it will be named "glimsview.exe". To open GLIMSView, execute this file.
With GLIMSView opened, the steps to create a new Project are:
Choose "Project" from the menubar
Choose "New" from the menu, this will open a dialog
Choose "Browse" from the dialog to choose a base image for your project
Choose the image you wish to open from the File Chooser
Press the Open button in the File Chooser or double click on the file.
For multi file types such as Landsat Fast/NLAPS/GeoTIFF check the "Multi File" checkbox and choose the format from the drop down list. For NLAPS choose any of the files ending in .Hx where x a number between 1 and 3. For Fast choose any file ending in the HDx.FST. For GeoTIFF, choose any of the geotiff files in the image. GLIMSView will attempt to load all bands associated with the image based on standard file naming conventions. If the files names do not match these then you can change them or load them individually without the "Multi File" checkbox selected.
Press the Open button
If the image is loadable, GLIMSView will open the Band Selector. See the following section for instruction on selecting bands.
All bands available and compatible with GLIMSView will be displayed in the band selector. You can choose Greyscale for single band display, or Color to display multiple bands in RGB. To assign a band a color, just select it in the list. When selecting a RGB set, you choose the color that will be assigned to the next band selection with the color buttons by the Color radio button. These are automatically cycled through as you select bands. When choosing a set of bands for RGB you must have a band selected for every color. To load the bands into the views, press the Load Bands button.
To zoom in and out use the zoom tools in GLIMSView's toolbar. Zooming can not be done on the Whole View. Choose a respective zoom tool and press the left mouse button on one of the views. The view will be centered and zoomed on the pixel chosen.
To pan and move the displays select the Pan tool from GLIMSView's toolbar. Press and hold the left mouse button inside a red view box and drag it to the desired position to change the view that is linked to it. For example, when changing the location of the red view box in the Whole View, the location of the display in the Fixed view will change to that location.
To pan a view's display, press and hold the left mouse button within the view but not within its red view box and drag the image to the new location.
To create glacier outlines choose the Line Tool in the GLIMSView's toolbar. When this tool is selected you can create lines in all but the Whole View. To start a line, move the mouse over an editable view and press the left mouse button once. This will leave a point that is the start of the line. Continue pressing with the left mouse button along the desired line to add points to the line. To complete a line, press the right mouse button once. If you wish to have the beginning point and the end point connected to form a polygon, hold the Control button down on the keyboard while pressing the right mouse button.
Creating Glacier IDs
To create GLIMS glacier id's choose the ID button in GLIMSView's toolbar. Move the mouse to the position where you want the ID and press the left mouse button. A new glacier id will now be located there and in the Glacier ID list in the configuration dialog.
To select points and lines choose the selection button in GLIMSView's toolbar. If you were previously using the line tool or the glacier id tool, the selections made will affect those respectively. To make selections move the mouse to an editable view and begin a selection box by pressing and holding the left mouse button. Drag the mouse to the desired dimensions and release to left mouse button. All elements within the selection box will be selected. If the Glacier ID list in the configuration dialog is open, the associated Glacier ID's will be highlighted in the list.
To delete points, select them as described above and press the Delete key on your keyboard. If you delete all points for a line the entire line will be removed from the dataset. This process is the same for deleting both points within lines and glacier ids.
To delete an entire line, select any portion of it. Then hold down the Control key and press the Delete key on you keyboard.
To join to lines together, select two endpoints of two lines and press the Join Line button in GLIMSView's toolbar.
To break a line into two separate lines, select the point where you wish to break the line and press the Break Line button in GLIMSView's toolbar. This will leave the point at which the line was broken in both resulting lines.
Continuing Lines and Inserting Points
When the Line tool is selected, the currently selected point will be the continuation point and the next point will come after it. To continue a line from its end point, select the end point, choose the Line tool and continue adding points. To continue a line from a non end point, select the point to continue from and continue adding points.
Select a line to make its nodes available. Then move the mouse to the point you wish to move. The cursor will turn to a cross designating that you're over the point. Press the left mouse button to select that node only and drag the point. Release the left mouse button where you want the point.
To revert to the previous state in the digitization, press both the Control and Z keys. This will undo selections, node placements, and deletions.
To put back a state that was reverted using the Undo function, press the Control, Shift, and Z keys (or Control and Y keys). This will restore selections, node placements, deletions, etc. that were changed by perforing an Undo. As soon as a new action is taken (for example, placing or moving a node), the Redo history is cleared and Redo is no longer available until the next time an Undo is performed.
*** Keyboard Tricks While Digitizing ***
To center the current display without switching to the Pan tool, just move the mouse over a view to the position you would like the view centered on and press both the Control and C keys.
To add nodes to a line in reverse, hold the Control key down and click with the left mouse button.
This dialog is used to modify line properties, modify glacier id properties, modify the session data, and modify the image acquisition date and time. To open the dialog choose Tools from GLIMSView's menu bar, then choose Open Config. The dialog will popup. The different tabs let you select between the categories.
Line configurations are attribute sets that can be assigned to line segments in the views. A default set is provided when a new project is created.
To create a new line configuration choose the New button, select the different attributes for the line and press Ok to add it to the list.
To edit a line configuration, use the mouse to select it in the list, then press the Edit button. Modify the attributes and press the Ok button.
The Import and Export buttons allows you to save and retrieve the list for different sessions. If you have created a list that you want to use for different sessions, press the Export button. Use the file chooser that pops up to choose the file to save it to. To retrieve a previously exported list, press the Import button. Use the file chooser that pops up to choose the exported file.
Use the Change Line button to assign the currently selected line configuration to the selected lines within the views. First make line selections with the selection process described above. Then select the line configuration to change the selections to. Then press the Change Line button.
This allows you to view, create, modify, and assign glacier ids.
To where a Glacier ID and its associated lines are on the image, select a Glacier ID in the list. The Glacier ID point and associated lines will be highlighted in each of the views (if they are on the image).
To create a glacier id press the New Glacier ID button. Fill in the attributes and press the Add button. The new glacier id will be available in the list. The preferred method for adding glacier ids is to use the glacier id tool and placing them on the views as described above. If there is a known glacier id that is off the image and not accessible in the view, you can manually add one this way.
To modify glacier ids, use the mouse to select a glacier id from the list, then press the Edit Glacier ID button. Modify its attributes and press the Update button.
To assign glacier ids to line segments, select the line segments in the views and press the Set Lines button. A dialog box with the list of Glacier IDs will open. Select the desired Glacier ID and click the Apply button.
Modifying any of the session parameters automatically updates the dataset that will be exported.
RC ID: this is the number associated with the Regional Center the analyst (that's you) are associated with.
First/Last Name: Your first (given) and last (family or surname) names.
Analysis Time: This is the time the final product (the GLIMS Shapefile) is created. The time is automatically updated when you export your project to GLIMS Shapefile for submission to the GLIMS database.
Process Desc: Processing Description - Description of the processing done on/with the base image used to automatically or manually derive the glacier outlines. This field is multiple lines and unlimited length - a scrollbar will appear if needed.
3D Info Desc: 3D Information Description - Description of how 3-D information (elevations) was derived. This field is multiple lines and unlimited length - a scrollbar will appear if needed.
This dialog contains the image metadata. When you create a new project, this dialog will be populated with as much information as can be found in the image file. This information is saved with the project, and opening an exisiting project will populate this dialog with the information saved in the project file. Image information should only be changed if it is missing or incomplete.
Image URL: The path and filename of the image.
Acquisition Date/Time: The date and time the image was acquired by the instrument. This field should be in ISO 8601 format (see below). If GLIMSView cannot recognize a correctly formatted date-time in the image header, the date-time will be displayed verbatim as it appears in the image header, and you will need to format the date-time correctly. The "Check" button will check the currently displayed date-time for valid formatting.
The formats are as follows. Exactly the components shown here must be present, with exactly this punctuation. Note that the "T" appears literally in the string, to indicate the beginning of the time element, as specified in ISO 8601.
Year: YYYY (eg 1997) Year and month: YYYY-MM (eg 1997-07) Complete date: YYYY-MM-DD (eg 1997-07-16) Complete date plus hours and minutes: YYYY-MM-DDThh:mmTZD (eg 1997-07-16T19:20+01:00) Complete date plus hours, minutes and seconds: YYYY-MM-DDThh:mm:ssTZD (eg 1997-07-16T19:20:30+01:00) Complete date plus hours, minutes, seconds and a decimal fraction of a second YYYY-MM-DDThh:mm:ss.sTZD (eg 1997-07-16T19:20:30.45+01:00)
YYYY = four-digit year MM = two-digit month (01=January, etc.) DD = two-digit day of month (01 through 31) hh = two digits of hour (00 through 23) (am/pm NOT allowed) mm = two digits of minute (00 through 59) ss = two digits of second (00 through 59) s = one or more digits representing a decimal fraction of a second TZD = time zone designator (Z or +hh:mm or -hh:mm)
Image ID: For ASTER, this is the ASTERSCENEID, made up of the path, row, and view. For now, GLIMSView will display Path=# Row=# View=#, where the #s are filled in with the path-row-view values from the image header.
Instrument ID: The short name of the instrument (e.g. ETM+, ASTER)
Origin ID: Original ID of the image (e.g. granule ID).
Center Latitude: Latitude of the center of the image
Center Longitude: Longitude of the center of the image
Center Latitude Uncertainty: Uncertainty of the center latitude, in meters
Center Longitude Uncertainty: Uncertainty of the center longitude, in meters
Image Azimuth: Image azimuth, degrees east of north
Cloud Cover: Percentage of the image obscured by clouds
Sun Azimuth: Sun/solar azimuth; degrees east of north
Sun Elevation: Sun/solar elevation (angle subtended between solar rays and the Earth's surface); degrees
Instrument Azimuth: Instrument azimuth; degrees east of north
Instrument Zenith: Instrument zenith (0° is nadir); degrees
Projection: Name of geographic projection of the image
There are two different formats to save a project as. One is the GLIMS ingest format described in the GLIMS documentation. This populates a directory with shapefiles that hold all necessary data for a GLIMS ingest. The other format saves to a single XML file containing all ingest information and information to return to the state the project was in when saved.
To export a GLIMSView project file choose Project from GLIMSView's menu bar. Then choose Save As which opens a file chooser. Choose the file you wish to save it as.
To export a GLIMS ingest choose Project from GLIMSView's menu bar. Then choose Ingest which pops up a submenu. Then choose Export. This opens a directory chooser. Select a directory that will be populated with a number of shapefiles that are in the GLIMS ingest format.
To open a GLIMSView project file choose Project from GLIMSView's menu bar. Then choose Open. This pops up a file chooser where you select the XML project file that was previously saved.
The format the final product of your digitization and analysis work in GLIMSView is a set of shapefiles, often referred to as the "GLIMS ingest files" because these are the files which are ingested into the GLIMS database. The shapefile naming conventions for GLIMSView are any prefix, followed by "session.shp", "images.shp", "glaciers.shp", and "segments.shp".
To export GLIMS Shapefiles, choose Project from GLIMSView's menu bar. Then choose Import/Export, then Export GLIMS Shapefiles from the submenu. This pops up a file chooser to select the directory where you'd like the shapefiles to be saved.
When a generic shapefile is imported, its shape objects are added to the current project's vector dataset with default configurations. This feature may produce unexpected results, so test the shapefiles in a new, empty project before committing to your working file.
To import a generic shapefile choose Project from GLIMSView's menu bar. Then choose Import/Export, then Import Generic Shapefile from the submenu. This pops up a file chooser to select the shapefile.
To open an GLIMS ingest choose Project from GLIMSView's menu bar. Then choose Ingest which pops up a submenu. Then choose Import. This pops up a file chooser where you choose one of the shapefiles in the ingest. The shapefile naming conventions for GLIMSView are any prefix, then either "session.shp", "images.shp", "glaciers.shp", and "segments.shp". These shapefiles should have those names on the end of their filenames in order for GLIMSView to find them. GLIMSView will attempt to locate the image that corresponds to the ingest with the shapefile data. If it can't you will be prompted to specify the image associated with the chosen ingest. Choose the image with the file chooser that is provided.
The image menu in GLIMSView's menu bar contains options for changing the way the image is displayed.
The Histogram allows for contrast stretching. Open the histogram dialog and double click with the left mouse button on the histogram display to add points to the piecewise linear contrast stretch. Use the menu items to change between different bands and modify the points in the histogram display.
The Band Selector, as described above, allows band selection within the views.
The Memory Buffer toggle changes the buffering type. When the Memory Buffer menu item is toggled on, the entire image will be loaded into memory which drastically speeds up image rendering on computers with large amounts of memory. Otherwise the image is left on the hard drive and only the portions of the image displayed are stored within memory.
The Resample Method changes the resampling method to either bilinear or nearest neighbor.
The ImageCalculator Tool takes in an equation resolving to true/false and selects all areas in the image that are "true". The equation must resolve to true/false (i.e. 1 or 0) for the Tool to behave properly. This means that at least one of >, <, >=, <=, =, !=, must be used. The 'and' and 'or' can be used if multiple constraints need to be satisfied. Single points that are 'true' are not selected by the tool, however both lines and shapes of 'true' values will be selected. You may need to modify selection slightly as the tool is only so accurate. To use the tool:
To enter an equation, you have several options. You can:
All variables used to represent layers are listed in a box on the right side of the tool. These variable area 'b' followed by a number. These and only these variables can be used to represent a layer. You may double click the layer you want to enter its variable into the textbox, or type the variable in manually.
The color and style of a line can be selected using the drop-down menu box below the variable selection box. The line will appear in the style of whatever is selected. There is no "default" line color. If you create a custom line style while the ImageCalculator tool is running, you will need to close and re-open the tool to select your new line style.
All accepted function are in a drop down menu below the line style drop-down box. This can be used if the desiered function does not have a button.
Once an equation has been entered, press convert to run the tool. If there is an error in your equation, a message will appear telling you where the error occured. The tool may take several minutes to run, especially if the layers used in the equation are large and/or many. Lines will be drawn on the image, and the tool will dissappear when the run is complete.
Algorithm Chooser: The algorithm for drawing is still being refined. Currently there is a drop-down box in the tool to allow you to choose among the three algorithms -- this is more for the developer than the user, but if you find that one of the three techniques works for you, by all means use it! When this tool is completed, the algorithm chooser will be removed.
Raw Image Output to GLIMSView Directory: When the tool is run, three RAW images are created in the GLIMSView installation directory. This was implemented for testing and debugging, but left in place for the release because GLIMSView users might find the images useful. The images will have the same dimensions as your image data, are 8-bit, and will probably need to be contrast stretched in order to be viewable. Eventually a user interface for saving some of these intermediate files will be created.
The "Output to Spreadsheet" tool takes a selection and writes out a text file that can be imported into a speadsheet. The text file contains the xy location of each pixel in the selection, as well as that pixels value in each layer. In the case of differently sized layers, smaller layers are scaled to the larger size using the "nearest neighbor" algorithm. All selections are assumed to be polygons, so if the shape is not closed the tool will automatically connect the first and last pixel.
To use the Tool:
Plugins allow third party software developers to create extensions to GLIMSView as share libraries. These are DLLs in windows and Shared Objects in Unix.
Upon receiving a plugin file you must import it through GLIMSView in order to use it. To do this choose Tools from GLIMSView's menu bar. Then choose Plugins which opens a submenu. Then choose Configure. This opens the Plugin Configuration dialog. Press the Import button at the bottom which opens a file chooser. Choose the shared library file to be imported. If successful, the plugin name will appear in the list of plugins. Otherwise you will receive an error message.
NOTE: Do not put the plugin in the $GLIMSVIEWPATH/plugins directory before importing. GLIMSView copies it to this directory for its own use. Then you can dispose of the original file.
To obtain a plugin's description and usage details, open the plugin configurator and select it from the list. The description will be displayed in the Description text area. To execute the plugin choose Tools from GLIMSView's menu bar. Then choose Plugins which opens a sub menu. Then choose the plugin in the list.