SAMS

Spectral Analysis and Management System
Ve r s i o n 2 . 0

U s e r ’s M a n u a l

C a r l o s A . Ru e d a a n d A n n e F. Wr o n a
C e n t e r f o r S p a t i a l Te ch n o l o g i e s a n d Re m o t e S e n s i n g
D e p a r t m e n t o f L a n d , A i r, a n d Wa t e r Re s o u r c e s
U n ive r s i t y o f C a l i f o r n i a , D av i s
April, 2003

Table of Contents
1 Introduction..................................................................................................................................4
2 Installation ....................................................................................................................................5
3 Getting started – a brief tour ......................................................................................................6
3.1 Creating a database.................................................................................................................6
3.2 Importing signatures................................................................................................................6
3.3 Browsing spectra .....................................................................................................................7
3.4 Performing an operation – an example ...................................................................................8
4 Overview .....................................................................................................................................10
4.1 Graphical interface................................................................................................................10
4.2 Selection area and group management..................................................................................11
4.2.1 Imported signatures .........................................................................................................12
4.2.2 Computed signatures .......................................................................................................12
4.2.3 My groups........................................................................................................................12
4.2.4 Automatic groupings .......................................................................................................12
4.3 Status info ..............................................................................................................................12
4.4 Plot area ................................................................................................................................13
4.5 Metadata ................................................................................................................................15
4.6 Keyboard shortcuts ................................................................................................................15
5 Signature operations ..................................................................................................................15
5.1 Notation .................................................................................................................................16
5.2 One-to-one operations ...........................................................................................................16
5.2.1 Scale ................................................................................................................................16
5.2.2 Crop .................................................................................................................................16
5.2.3 Smooth.............................................................................................................................17
5.2.4 Derivative ........................................................................................................................17
5.2.5 Jump correction ...............................................................................................................17
5.2.6 Change wavelength unit...................................................................................................19
5.3 Many-to-one operations.........................................................................................................19
5.3.1 Conform requirement.......................................................................................................20
5.3.2 Average............................................................................................................................20
5.3.3 Standard deviation ...........................................................................................................20
5.3.4 Minimum .........................................................................................................................20
5.3.5 Maximum.........................................................................................................................20
5.3.6 Absorption feature analysis .............................................................................................21
5.3.7 NDWI ..............................................................................................................................22
5.3.8 Simple extraction .............................................................................................................22
5.3.9 Sum..................................................................................................................................23

5.4 Reference-based operations...................................................................................................23
5.4.1 Simple ratio......................................................................................................................23
5.4.2 Subtraction.......................................................................................................................23
5.4.3 Normalize ........................................................................................................................23
5.5 Operations on groups ............................................................................................................24
6 Reference ....................................................................................................................................24
6.1 Database menu ......................................................................................................................24
6.1.1 New (Ctrl-N)....................................................................................................................24
6.1.2 Open (Ctrl-O) ..................................................................................................................24
6.1.3 Save (Ctrl-S) ....................................................................................................................25
6.1.4 Close (Ctrl-W) .................................................................................................................25
6.1.5 Delete...............................................................................................................................25
6.1.6 Properties .........................................................................................................................25
6.1.7 Edit metadata structure ....................................................................................................26
6.1.8 Import signatures from.....................................................................................................27
6.1.9 New grouping by… .........................................................................................................28
6.1.10 Quit (Ctrl-Q) ..................................................................................................................30
6.2 Selected menu ........................................................................................................................30
6.2.1 Compute...........................................................................................................................30
6.2.2 Plot (Enter) ......................................................................................................................30
6.2.3 Add to plot (Ctrl-Enter) ...................................................................................................30
6.2.4 Set as reference (Alt-Enter) .............................................................................................30
6.2.5 Copy (Ctrl-Insert) ............................................................................................................30
6.2.6 Cut (Shift-Delete) ............................................................................................................31
6.2.7 Delete (Delete).................................................................................................................31
6.2.8 Export options..................................................................................................................31
6.3 Plot menu ...............................................................................................................................32
6.3.1 Clear ................................................................................................................................33
6.3.2 Range ...............................................................................................................................33
6.3.3 Export ..............................................................................................................................33
6.3.4 Format..............................................................................................................................33
6.3.5 Print (Ctrl-P) ....................................................................................................................34
6.3.6 Legends window..............................................................................................................34
6.3.7 Anti-aliased......................................................................................................................35
6.4 Query menu............................................................................................................................35
6.5 Help menu ..............................................................................................................................35
6.5.1 About SAMS ...................................................................................................................35
6.5.2 The BeanShell window....................................................................................................35
6.6 Pop-up menus ........................................................................................................................35
6.6.1 Signature popup menu .....................................................................................................35
6.6.2 Group pop-up menu.........................................................................................................36
Appendix A

Recognized file formats......................................................................................38

ASCII file .....................................................................................................................................38
GER file .......................................................................................................................................38
Binary ASD file ............................................................................................................................39

ASCII ASD file .............................................................................................................................39
ENVI Standard file.......................................................................................................................39
Only-Reflectance..........................................................................................................................39
Appendix B

Available Savitzky-Golay filters........................................................................40

3 ENVI. xi . a new version of SAMS originally written by Michael O’Neill in 1999.( xn . adds new options to import. visualize. Environment for Visualizing Images. Recognized formats are (Appendix A): ƒ ƒ ƒ ƒ ASD1 (binary and ASCII variants) GER2 ASCII ENVI3 Standard file. Analytical Spectral Devices. y1 ). organize. SAMS 2. and a richer set of plotting capabilities. SAMS usually assumes values are measured in nanometers. a signature. signature groupings. SAMS can read multiple files at once which facilitates importing a lot of files. drag-and-drop. This operation is called importation of signatures. Linux.0. SAMS 2. Features include: import/export options in various formats. and UNIX).… . Use SAMS to create new database(s). metadata management. y2 ). Signature Defined as an ordered sequence of real points. manipulate. yn )] where xi is a wavelength value and yi is the reflectance value at wavelength. Databases are interchangeable among these platforms. Geophysical & Environmental Research Corporation. It will make any necessary rearrangement so that x1 < x2 < .( x2 . When importing signatures.. import spectra files into an existing database. 2 GER.. common operations on single or multiple signatures. Files can be from: ƒ a given directory 1 ASD. and export spectral data. After a database has been created. and delete database(s). The new version is a stand-alone Java application requiring a Java Runtime Environment (JRE). open existing database(s).0 does not require Matlab and runs on multiple platforms (Windows. Each database is managed by SAMS as an independent entity and can have its own spectra metadata definition. < xn holds.1 Introduction The Spectral Analysis and Management System (SAMS) is used to manage field spectra databases and analyses. the user imports a number of spectra files in a recognized format. s = [( x1 . 4 . Main concepts Database Spectra files are organized in databases.

4 or newer) properly installed on your machine is the only requirement for SAMS.sun. Grouping Groups of signatures can be created manually with user-defined criteria or. JRE can be downloaded from: http://java. 4 5 . sometimes. Typically “c:\Documents and Settings\username” on Windows systems. automatically by SAMS. 2 Installation A Java Runtime Environment (JRE version 1.ƒ ƒ the system clipboard drag-and-drop operations. This dialog box appears: Typically you use your home directory according to your operating system. ƒ ƒ Go to: http://www. The first time it is run.4 but you can use a directory of your choosing. and “/home/username” on UNIX or Linux systems.edu/software/sams/.cstars.ucdavis.4/download. Follow the instructions for installation. SAMS will ask you to set the base directory where settings and databases will be stored.html.com/j2se/1.

3. 3 Getting started – a brief tour This brief tour assumes you have a number of spectra files in a recognized format (Appendix A).This path setting is very useful if you are running SAMS from different machines and want to access the same data through a networked drive or directory. 3. descriptive name. SAMS will add a new entry in its list of databases. The dialog box appears only once for a given machine/OS. 6 . SAMS will ask you for some options to perform the operation. Assign a short. Select a base directory.1 Creating a database Use the option Database -> New.2 Importing signatures Use the option Database -> Import signatures from -> Directory.

Search subdirectories? Check to scan all files in the directory and its subdirectories. Choose these options to import files of these formats:5 ƒ ƒ ƒ ƒ ƒ GER. 5 Appendix A describes the currently recognized formats. ASD binary format. Select for unknown format.3 Browsing spectra Use your mouse to select some signatures in the left window. ASD. ASDb. File type. 7 . Best guess. ASD ASCII format. Only-Reflectance. ASCII files with at least one column (reflectance values). GER. SAMS will attempt to automatically recognize each file. or for files with different formats. 3.

8 .4 Performing an operation – an example Average the current selected signatures: Selected -> Compute -> Average.SAMS includes a Selected menu containing these options: 3.

9 .SAMS will ask you to enter a name and a missing value indicator: AVERAGE automatically becomes a member of the Computed signatures special group: Clicking on this signature while holding down the Ctrl key adds it to the plot.

1 Graphical interface 10 .4 Overview 4.

11 . four highlighted signatures were selected by clicking while holding down the Ctrl key. one. or more signatures can be selected at a time. None. Most SAMS commands act on the current selection. Each entry corresponds to a signature.4.2 Selection area and group management Use your mouse and/or keyboard to operate in this area. Above.

See section 6.3 Status info 12 . 4. Page-down.Only one focused element (surrounded by a square) can be selected at a time. There are three main groups in a SAMS database. 4.2 Computed signatures All signatures resulting from an operation. are in the Computed signatures group.4 Automatic groupings SAMS can generate groups automatically.2.3 My groups Define as many groups as you want by right-clicking on My groups and using the pop-up menu. ƒ ƒ ƒ Imported signatures Computed signatures My groups These groups are created automatically with every database and cannot be deleted. The focused element is used as the reference signature for reference-based operations when the command Alt-Enter is used. 4. as described in Section 5. 4. Home. Page-up. 4.1 Imported signatures All imported signatures are in the Imported signatures group. To change the focused element. Populate the group by copying and pasting.2.1. hold down the Ctrl key and use the navigational keys (Up and Down arrows.9 for options. End).2.2.

Focused – name of current focused element (either a group or a signature). If it is a signature. Group selection . if only one signature is selected).number of selected signatures (or its name. drag the left mouse button down and to the right to draw a box around an area that you want to see in detail. Mouse interaction To zoom in.4 Plot area Includes buttons for common plot operations (see Section 6. Reference signature . 13 .3).name of current signature (used as reference for reference-based operations). Also shows the mouse location in X-Y coordinates. pressing Alt-Enter will make this element the reference.number of selected groups (or group’s name if only one group is selected). 4.ƒ ƒ ƒ ƒ Signature selection .

To zoom out. use the fill command Plot -> Range -> Full scale. drag the left mouse button up and to the right.SAMS enlarges the area in the box. 14 . To just fill the drawing area with the available data.

1.. too.3 6.1.2.2 6.4.2..1 6.10 6.7.2. f ( s ) → s ' many-to-one.5 6. See Section 6.1. Choose Database -> Edit metadata structure.2.6 6.4 6.6 Keyboard shortcuts Most frequent commands have keyboard shortcuts as follows.2..3 6.2.2 6..1. 4.4 6. you can define new attributes. f ( s1 . sn ) → s' reference-based. s2 .1.5 6.7 5 Signature operations In SAMS a signature operation f can be: ƒ ƒ ƒ one-to-one.1. Key stroke Action See Ctrl-N Ctrl-O Ctrl-S Ctrl-W Ctrl-Q Alt-Enter Enter Ctrl-Enter Ctrl-P Ctrl-Insert Shift-Delete Delete Create new database Open existing database Save current database Close current database Quit SAMS Sets the “reference” signature Plot only selected signatures Plot selected signatures while keeping the already plotted ones Print plot Copy selected signatures to internal clipboard Cut selected signatures to internal clipboard Delete selected signatures 6. Attributes are specific to each database.5 Metadata Metadata associated with each signature is shown in the above table.3. Although each SAMS database has a default set of associated attributes. f r ( s ) → s ' 15 .

s2 .. 5.1 Notation Operations are described in this manual according to the following notations: s1 . SAMS will make a copy s '( wk ) of s ( wk ) for wavelengths. 5. SAMS will apply the operation n times to generate n resulting signatures. 5. sn r s = [( w1 . wk . w .2 Crop Given two wavelength values. at wavelength index. SAMS will compute s' from s by multiplying each ordinate point by a : s '( wk ) = a × s ( wk ) . sn are selected signatures. A point value of signature . r1 ). rm )] s ( wk ) = s( k ) = rk s ( w) s' Current selected signatures. a and b . s2 .. such that a ≤ wk ≤ b ....… . in [ w1 . at wavelength .Signature operations are applied to the current selection where s1 . or. wk . a .( wm ...( w2 . this value s( w) is computed by linear interpolation between nearest neighbors. at an arbitrary wavelength. s .2. A signature resulting from an operation. wm ] . A defined signature. If necessary.1 Scale Given a scalar value.2 One-to-one operations f ( s) → s ' A one-to-one operation takes one signature and produces one signature. Current reference signature. r2 ). 16 . rk . equivalently. A reflectance value.. k .2. 5.

Original reference is Savitzky A. Press. Cambridge University Press. b .5. SAMS will create s ' by applying the filter on s over the interval [a. where a jump in s values occurs (a break-point). SAMS automatically can apply a Savitzky-Golay smoothing filter to s.3 Smooth Given a Savitzky-Golay filter6 c = [c− nL .H. 5..5 Jump correction Given a wavelength. Numerical Recipes in C. 1992.. where a ≤ wk ≤ b . 1964. c . b] : s '( wk ) = j =+ nR ∑c j =− nL j × s ( wk + j ) for wavelengths.2.. is calculated as follows.2. 36. pp. M. so s ' will not have a jump. 650655. “Smoothing and differentiation of data by simplified least squares procedure. Second Edition...E.” Analytical Chemistry. pp. c .2. s '( wk ) will differ from s ( wk ) by a correction value. SAMS will perform an algorithm to adjust the values for wavelengths.. 1627-1639. c+ nR ] (see Appendix B for available filters).4 Derivative SAMS calculates s ' by taking the first discrete derivative of s : s ' ( wk ) = s ( wk +1 ) − s( wk ) . and two wavelength values. that can be applied either multiplicatively or additively: This operation can be used to correct spectra recorded by an instrument which was calibrated incorrectly in a limited section of its spectral range. wk .  c × s( wk ) if multiplicative correction s '( wk ) =  if additive correction  s ( wk ) − c The correction.J. vol. 5.. In the interval of modification. W. c0 .. wk > b (or wk < b ). a and b . wk +1 − wk Before taking the derivative.. et al. and Golay. 6 17 .

wq − w p Solving for s '( wq ) . according to the following equation: t= s '( q) − s ( p ) . from points o and p and the second tangent. So the correction will be 18 . lying between w p and wq . will be used to estimate the value at point. SAMS will calculate the first tangent. with a break-point. the estimated value. t2 . and r be indices of four consecutive points of interest.Let o . The average tangent. t = (t1 + t2 ) / 2 . b . q . t1 . we have: s '( q) = (t1 + t2 )( wq − w p ) 2 + s( p) . q . from points q and r . p .

. In a constructed signature.. SAMS computes s' as a copy of s such that s '( k ) = s(k ) . then a conversion factor of 0. 5. s2 .7 and absorption feature analysis in Section 5.6 Change wavelength unit Given a conversion factor.g. SAMS treats them as such. if wavelength values are measured in nanometers..001 will convert them to microns. Although the resulting signatures are not necessarily “real” signatures.6).3. c . For example. NDWI in Section 5.3.2.. s '( q) / s ( q) for multiplicative correction c= for additive correction  s ( q) − s '( q) A multiplicative correction was applied to the right of the break point in this graph: 5. but where wavelengths are multiplied by c : wk ' = c × wk . 19 . Averages and standard deviations are examples.3 Many-to-one operations f ( s1 . sn ) → s' Two types of many-to-one operations exist: ƒ ƒ In aggregate operations. SAMS computes single values from corresponding input signature operations (e. SAMS outputs one signature from point-wise operations on selected signatures.

5.2 Average Calculates point-wise average of selected signatures: s '( wk ) = 1 n ∑ si ( wk ) . n i =1 5. i 20 . s2 . n ] and all k in [1.4 Minimum Gives point-wise minimum of selected signatures s '( wk ) = min si ( wk ) . m ] ...5 Maximum Gives point-wise maximum of selected signatures s '( wk ) = max si ( wk ) .5. 5. j in [1.3. i 5. m being sampled at the same wavelengths: si ( wk ) = s j ( wk ) for all i. all selected signatures s1 .3. SAMS alerts you if this requirement is not satisfied.1 Conform requirement For aggregate many-to-one operations.3 Standard deviation Takes point-wise square root of sample variance of selected signatures 1/ 2  1  s '( wk ) =  [ si ( wk ) − si ( wk )]2  ∑  n −1 i  where s ( wk ) is the average at wavelength..3.3.. sn are expected to conform to each other by: ƒ ƒ having the same length.3. wk .

First SAMS identifies the local maxima within each interval. Given two wavelength intervals. For this example. wavelength.(2. in [b. wq ..5. c ] and wavelength. si .. [b. a1 ). as follows. 21 . w p . from signature. e] . an )] by computing each value. SAMS constructs s ' = [(1..( n. a2 ).6 Absorption feature analysis This construction quantifies the magnitude of an absorption feature over selected signatures. ai ..3. e] are the maxima. c ] and [d . in [d .

ai . 257-266.( n.SAMS computes ai as one minus the ratio between the area under the function in the interval [ w p . Remote Sensing of Environment.( n.8 Simple extraction This construction extracts a single reflectance value at a given wavelength. an )] ... 58. a1 ).C.3. an )] where ai = si (b) . a2 ). b . wq ] area under line segment connecting si ( w p ) and si ( wq ) . from each of the signatures selected.3. is the NDWI7 of signature.(2. si (860nm) + si (1240nm) 5. si : ai = si (860nm) − si (1240nm) .. SAMS constructs s ' = [(1.. 7 22 . where each value..(2... B. 5. SAMS creates the signature s ' = [(1.7 NDWI This construction uses wavelengths in nanometers. 1996: NDWI: A normalised difference water index for remote sensing of vegetation liquid water from space. a2 ). pp. wq ] and the area under the straight line segment connecting the maxima: ai = 1 − area under curve in [ w p . a1 ).. Gao.

9 Sum Calculates a point-wise sum of selected signatures. f ( s. r ) . s . r : s '( wk ) = s ( wk ) − r ( wk ) . whose second argument is taken as a reference.  s( w ) s ( b) = 0 k  23 . i 5. r :  s( wk )  s '( wk ) =  r ( wk )  0  r ( wk ) ≠ 0 .4 Reference-based operations f r ( s ) → s' A reference-based operation is a binary operation.3 Normalize Uses point-wise scaling according to reflectance ratio at a given wavelength.4.5.3. s '( wk ) = ∑ si ( wk ) . and reference. b :  r (b) × s ( wk ) s(b) ≠ 0  s '( wk ) =  s (b) .4. r ( wk ) = 0 5. The command to establish the reference signature is Alt-Enter. it can be written f r (s ) and be treated as a one-to-one operation (see above). SAMS includes these reference-based operations: 5.4. and reference.2 Subtraction Takes a point-wise difference between selected signature.1 Simple ratio Calculates a point-wise ratio between selected signature. 5. So. s .

descriptive name. If any signatures are selected at the same time as groups. To apply an operation to selected signatures. SAMS adds a new entry in its list of databases and lets you assign a short. SAMS ignores them since group selection takes precedence over signature selection. 6 Reference This section gives descriptions of options available from the menu bar and pop-up menus. SAMS performs an operation on a group’s signature members and assigns the resulting name signature from the name of the group and the suffix given in the dialog box.1.1 Database menu 6.1.2 Open (Ctrl-O) Opens a database and first saves and closes any other already-open database. 6. 6. make sure no groups are selected.1 New (Ctrl-N) Creates a new database.5. 24 .5 Operations on groups SAMS can apply a many-to-one operation on a selection of groups.

5 Delete Deletes database.sams/dbs/. SAMS confirms. it shows: ƒ ƒ database name directory under which data are stored. 6. [SAMS created <base directory> as a user-defined setting the first time it was run.1. Find the directory under <base directory>/. It also saves automatically when you close a database or quit the program.1.1. SAMS asks for confirmation.3 Save (Ctrl-S) Saves database.4 Close (Ctrl-W) Saves and closes database. 6. Specifically.6.] 25 .6 Properties Shows database properties.1. See Section 2. 6.

Add as many attributes as you need. SAMS opens a window of default attributes. Click on the Add attribute button. Add species and comment attributes. To change an attribute. 26 . SAMS will update your database as shown.6.1. Humm and not so good were added to the comment column in this table.7 Edit metadata structure Modifies metadata associated with database. click on the cell in the spectra table and make changes.

6. 6. Use it to import signatures into a database from different sources. See Appendix A.1.1.8 Import signatures from Opens a submenu.1 Directory Specifies a directory to have SAMS search for spectra files.8.8.1. 27 .1. 6.8.6.2 ENVI Standard file Reads an ENVI standard file in BIP format after you specify which location to read.3 ASCII file Reads multiple signatures from an ASCII file.

1. Use this option as an alternative to dragand-drop.4 System clipboard Pastes copied spectra files from the system clipboard. SAMS ignores this suffix in separator processing.9 New grouping by… Opens a submenu with options to make automatic groupings.1 Attribute value Creates a group for each value of an attribute.6.1. 28 .1.2 Filename Creates a group for each prefix (set-off by separators assigned by the user) in signature filenames.” to separate groups.9. In this example: 6.9. SAMS uses characters like “. ƒ ƒ Separators. 6. Ignore suffix. 6.1.8.

’ as the only separator and leaving the suffix blank: SAMS creates this group structure: 29 .Several signatures are in this example database: Using ‘.

1.2.6. 6.2.6. See Section 5.4 Set as reference (Alt-Enter) Sets focused signature as the reference signature for reference-based operations.10 Quit (Ctrl-Q) Quits program. 6.1 Compute Choose one of these operations to perform on a selection: ƒ ƒ ƒ Many-to-one operations. See Section 5.2.3. 30 .2 Selected menu 6.2. 6.5 Copy (Ctrl-Insert) Copies selected signatures to an internal clipboard. use Paste (Section 6.1). allows reassignment of legends.2.4. SAMS asks for confirmation.4. 6.2. To paste references to selected signatures into a group.3 Add to plot (Ctrl-Enter) Plots selected signatures in addition to those already displayed. See Section 5.2. Reference-based operations.2 Plot (Enter) Displays selected signatures in the plot area. One-to-one operations. See Section 5. 6.

.8 Export options For all export options. To paste references to removed signatures into a group. 6. s1 . s2 ( w2 ) .2.8.. sn . sn ( wm ) 6.1 Export to ASCII format SAMS exports selected signatures. if n = 18 .6. SAMS asks for confirmation.3..1)... Each signature is located in the image as shown: Where  x  is the greatest integer that is not greater than x .6. s2 ( w1 ) . s2 ( wm ) .. If N > n . 6. …. 6. to a CSV (comma-separated-values) file.8. id( s2 ) . So. Wavelength..2. s1 ( w1 ) . selected signatures. s1 .. sn ( w1 ) sn ( w2 ) wm . sn . s1 ( wm ) .. s2 . ….2.2 Export to ENVI format SAMS exports n selected signatures.6 Cut (Shift-Delete) Removes selected signatures from a selection and copies them to an internal clipboard. s2 .7 Delete (Delete) Deletes selected signatures from the group. The identification name for signature si is id( si ) in the following discussion. use Paste (Section 6. s1 ( w2 ) . then the remaining N − n elements will be zero-filled.2. s2 .. s1 .2. id( s1 ) . and  x  is the smallest integer that is not less than x . must conform to each other as explained in Section 5. lines = 4 and samples = 5 .. …. w2 . 8 31 .1. to a multi-band image in ENVI standard format with dimensions:8 lines =  n   n  samples =   lines  bands = m It follows that the image can store N = lines × samples ≥ n signatures. id( sn ) w1 ..2. sn .

8. SAMS prompts you for a file name to export the selected signatures and writes a corresponding header file. wavelengths. … sn ( w2 ) . *. s1 ( wm ) s2 ( w1 ) . version 5. SAMS prompts you for a file name and writes a corresponding header file. …. 6. s2 ( wm ) … sn ( wm ) … …. s1 ( w2 ) . s2 ( w2 ) . and spectral library for the ENVI file type.hdr.eecs.s1 s2 s3 s4 s5 s6 s7 s8 s9 s10 s11 s12 s13 s14 s15 s16 s17 s18 ∅ ∅ Where ∅ denotes a signature with m zero values.hdr. 6. … sn ( w1 ) .berkeley.3 Plot menu9 Plot capabilities based on Ptolemy 2D data plotter package. The header displays signature identifications.2.3 Export to ENVI Spectral Library An ENVI spectral library file is an ENVI binary image with the number of samples equal to the number of bands and the number of lines equal to the number of signatures in the selection: lines = n samples = m bands = 1 Signatures are ordered as shown: s1 ( w1 ) . ….edu/java/ptplot/ 9 32 . *.1p2: http://ptolemy.

1 Full range Rescales plot to fit data. 6.4 Format Opens a dialog box to modify plot parameters such as: 33 . 6.2.4 Chlorophyll [550:680] Sets X range to ~550-680 nm.3.3.3. 6.3.3. 6.3. Any range can be specified–see format option below.2.2 Visible [400:700] Sets X range to ~400-700 nm. 6.2 Range Opens submenu with options to adjust X and Y ranges.6 Zoom current Y-range Rescales plot horizontally to fit data in Y range.6.3.2.3 Export Opens submenu with options to export the plot in different formats.3. Currently.2. only EPS is supported. 6.3.3 NDVI [500:900] Sets X range to ~500-900 nm. 6. 6.1 Clear Clears contents of plot area.2.2.5 Zoom current X-range Rescales plot vertically to fit data in X range. 6.3.3. 6.3.1 Encapsulated Postscript (EPS) format Opens dialog box in which to specify a name for the plot file compatible with word processors.

. Marks. Labels X and Y axes. X ticks and Y ticks. . Check to plot spectra with different colors. Specifies how axes are labeled.5 Print (Ctrl-P) Prints plot. label position. A label must be surrounded by quotation marks if it contains any spaces. To change tick marks. printer. 6. Use color.3. Check to show background grid. Assigns title to plot. orientation. Stems.3. X range and Y range.. Stipulates plotted ranges by separating low values from high with a comma. margins. Grid. Check to connect point values with lines. SAMS automatically computes them. Connect. Add marks specified to distinguish spectra. A position is a number assigning the location of the tick mark along the axis. opens print dialog box with options to choose paper. X label and Y label. 6. 34 . enter into the X Ticks or Y Ticks entry boxes a string of the following form: label position.6 Legends window Opens a floating window containing plot legends – a useful tool when many signatures are displayed and there is not enough room for the legends to fit in their normal location. Check to plot stems.ƒ ƒ ƒ ƒ ƒ ƒ ƒ ƒ ƒ Title.

6.4 Query menu Do not use yet.1 Signature popup menu Contains same options as Selected in the menu bar.7 Anti-aliased Improves plot appearance.2 The BeanShell window Do not use.5 Help menu 6.6 Pop-up menus Appear by right-clicking over elements of the selection area like signatures and groups.3. This menu is in an early stage of development. 6. Opens a tool for developers to use to test SAMS.1 About SAMS Shows current version.6. 6. 35 .5. and copyright agreement for SAMS. contact information. 6. 6.6.5.

1.6. 6. 36 .1 View data Shows contents of selected signature in SAMS’ memory (two columns.6. when only one signature is selected.1 New subgroup Applies to My groups. Use option View data for binary sources.2. 6.1. SAMS prompts you for a name and a description.6.3 Rename Renames selected signature and associated groups. wavelength and reflectance).6.2 View source Shows contents of source file where selected signature is stored (ASCII sources only).2 Group pop-up menu Includes the following options when a group is selected: 6.6.Includes the following options. 6.1. 6.

6). Computed signatures.2.6.4 Export options Applies to members of selected group as explained in Section 6.6.2. 37 .2.5 and 6. Use Copy and Cut to put signatures on clipboard (Sections 6.6.3 Delete group Deletes selected group. Imported signatures.2.2. 6.2.2 Paste reference Adds references to signatures to selected group from clipboard.6. and My groups cannot be deleted. 6.8.

then w / 100 is taken as the reflectance value. ƒ The first line is expected to be one of the following: ///GER SIGNATUR FILE/// ///GER ASCII FILE/// ƒ ƒ ƒ ƒ Subsequent lines are parsed for three or four numerical values. Each token is a floating point value. is parsed successfully. is interpreted as the abscissa value for all imported signatures. the line is ignored. v1 . say w . vn . that is. and/or tabs.. consecutive floating point values found in a line are denoted by v0 .. 38 . A GER file is an ASCII file that SAMS reads following these rules. Lines that cannot be parsed to at least three values are ignored. If a fourth value. the point ( v0 .Appendix A Recognized file formats File formats that SAMS currently recognizes in importing signatures into a database.. v0 will be its abscissa and vi its ordinate. ASCII file SAMS imports this simplest file type using these rules. For 1 ≤ i ≤ n . The first column in the file. Otherwise. The scanned. GER file GER files are identified as GER. A line is recognized if it starts with at least two floating point values. v0 .. Separators for tokens are simple spaces. The first value is always taken as a wavelength. although the usual case is to have exactly the same number of columns. commas. Each line is scanned as a sequence of tokens. Recognized lines in the same file can contain different numbers of tokens (columns). vi ) is assigned to signature i -th. ƒ ƒ ƒ ƒ ƒ ƒ ƒ ƒ ƒ The file is scanned one line at a time.

10 BIP. Only-Reflectance This ASCII file is scanned for at least one column assumed to contain reflectance values.ƒ Otherwise. the reflectance value will be y / z . SAMS imports ASCII ASD files using the same rules it uses for ASCII files except for the assumption that only one signature comes in the file. Binary ASD file Binary ASD files are identified as ASDb. where y and z are the second and third values in the line. 351. In this way the first two tokens (columns) are taken into account. …. 352. 39 . These values are associated with fixed wavelengths: 350. ENVI Standard file SAMS can read directly ENVI Standard files in BIP10 format. Reflectance data files generated by an ASD instrument can be read directly by SAMS as long as they are float and little-endian formatted. ASCII ASD file ASCII ASD files are identified as ASD. Band Interleaved by Pixel: Reflectance values for each signature are stored together.

and nR is the number of right data points used. M − nL − nR .Appendix B Available Savitzky-Golay filters Savitzky-Golay filters in SAMS are named by the convention. nL is the number of left data points used. M − nL − nR 3-40-40 3-20-20 3-12-12 2-2-2 2-3-1 2-4-0 2-5-5 4-4-4 4-5-5 40 . where M is the order of the fitting polynomial.