USGS-OEMG Image Visualization Software Tutorial Software by Dr. Russell A. Ambroziak Tutorial by Christine Cook U.S. Geological Survey Office of Energy and Marine Geology National Center, Mail Stop 915 Reston VA 22092 Tel : 703-648-6481 Fax : 703-648-5464 * * * To view images contained within square brackets, hit the F6 key to highlight the image and then hit the key to view the image. The images [canon02], [canon03], and [canon04] are quite dark; you may need to adjust the brightness on your monitor to see the image on the screen. * * * * * * Table of Contents * * * Introduction.....................................................Page 1 System Requirements..............................................Page 2 Disclaimer.......................................................Page 2 Descriptions of the Different Types of Label Files...............Page 3 Example 1: Simple Gray Scale Image.........................Page 4 Example 2: Color Image.....................................Page 5 Example 3: Registered Image set............................Page 6 Example 4: Composite image created by IMVIS................Page 7 Example 5: Earth Located Image -- Polynomial Fit to Projection......................................Page 8 Example 6: Earth Located Image -- Albers Equal Area Projection & MAPPER Data........................Page 9 Example 7: Earth Located Image -- Mercator Projection & MAPPER Data...................................Page 12 To View a Single Image...........................................Page 14 IMVIS Quick Reference Guide......................................Page 15 Description of IMVIS Functions...................................Page 16 To Create An 8-bit Color Image...................................Page 19 Other Options for a Registered Set Label File....................Page 24 To Digitize Linework.............................................Page 26 * * * Introduction * * * Program IMVIS, created by Dr. Russell Ambroziak of the U.S. Geo- logical Survey, is a simple to use image viewer which uses ASCII label files to describe the binary image data files. Program IMVIS can also do some limited image processing such as converting three images out of a set of N images to either 24-bit or 8-bit color images with color palettes. Some boxcar filter applications are possible, such as smoothing and relief shading, and color palette changes can be made in both IHS (Intensity, Hue, and Saturation) and RGB (Red, Green, Blue) space. Color images made from red, green and blue input files can be analyzed in 5-dimensions (x,y,R,G and B) with program MAKE5D. Program EIGEN will N-dimensionally rotate up to 10 registered images and output a new image set of up to N images with a new set label. These eigen vector images can then be viewed or processed via IMVIS in the same way as the original images. * * * System Requirements * * * IMVIS and it's related suite of image processing software, are programs written for the IBM PC and compatible microcomputers. The 386 models are recommended for speed, but the programs will work on the 286 machines. Other requirements : 640 kb RAM MS- or PC-DOS* version 3.1 or later Microsoft MSCDEX version 2.1 or later hard disk drive with minimum 4 megs of free memory EGA/VGA graphics system with one of the following: TSENG 3000 or 4000 chip set (Orchid) or PARADISE VGA Professional Board or ATI VGA XL Wonderboard or TRIDENT Graphics card * Any use of trade, product, or firm names is for descriptive purposes only and does not imply endorsement by the U.S. government. * * * Disclaimer * * * Although this program has been used by the U.S. Geological Survey, no warranty, expressed or implied, is made by the USGS as to the accuracy and functioning of the program and related program material, nor shall the fact of distribution constitute any such warranty, and no responsibility is assumed by the USGS in connection therewith. * * * Descriptions of the Different Types of Label Files * * * The heart of the system is the label file which is patterned after the JPL 'IMDISP' ASCII label files. For program IMVIS, each image must have it's own separate label file. The simplest label file possible is a file of type '.lbl' containing the rows, columns and image data file name. The following is an example of a simple .LBL file 'xxx.lbl': IMAGE_LINES = 2057 LINE_SAMPLES = 1435 IMAGE_POINTER = 'l:\coredata\PD356001.dat' This will view file 'l:\coredata\PD356001.dat' which is a box of rock cores from the USGS 'Sampler of Digital Rock Core Information from the Core Research Center' CD-ROM. It tells IMVIS that the image has 2057 lines and each line contains 1435 pixels (picture elements). The image is assumed to be a gray scale image with no color palette file. Each pixel will be one byte in size and there is no header in the image file, which is in directory \coredata\ on CD-ROM drive L:. If you copy 'IMVIS.exe' to your hard disk, enter 'xxx.lbl' into a file on your hard disk, and enter the word IMVIS, then the following screen should appear: *.lbl Use up and down arrow keys, PgUp or ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» PgDn, or type the filename to positionºxxx LBL 128 2/21/92 1102 º highlighted cursor. Hit 'Enter' to ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ select the file or 'Esc' to leave this menu. When a box appears on an image use: (l)arger or (s)maller to change size. If the shape of the box can be changed use: (H)igher, (S)horter, (W)ider, or (N)arrower to change shape. If you have a CD-ROM reader installed as drive L: and have the Core Library disk in it, hit to display the image. It is not necessary to include path names in the label file as they can be entered on the command line : imvis d:\imgdata\land\ d:\imgdata\water\ The above will cause the program to check d:\imgdata\land\ and d:\imgdata\water\ as well as the current directory and the directory in which 'imvis.exe' is located when opening files or giving lists of label files. In general the label files are a bit larger than the above example, and contain more information in them. The following are six examples of '.lbl' files in order of increasing complexity. Example 1: Simple Gray Scale Image FILE_TYPE = IMAGE IMAGE_LINES = 400 LINE_SAMPLES = 640 HEADER_BYTES = 0 IMAGE_POINTER = 'canon01.dat' END This is the simplest type of label file. Three of the lines are not needed but are included for clarity : FILE_TYPE is not necessary but helps tell someone why this file is here. HEADER_BYTES in this case is zero; the default. These bytes are skipped when the image is processed. END is not required by IMVIS, but other programs which can read this type of file require it. IMAGE_LINES are the number rows in the image file. LINE_SAMPLES are the number of columns in the image file. IMAGE_POINTER is the name of the image file. Example 2: Color Image FILE_TYPE = IMAGE IMAGE_LINES = 400 LINE_SAMPLES = 640 HEADER_BYTES = 0 IMAGE_POINTER = 'canon01.dat' PALETTE_POINTER = 'canon01.pal' END This file is identical to the first except a palette file name has been given. This is a list of red, green and blue values that define up to 256 colors. The format is four integers on a line -- color number, red, green and blue. All numbers range from 0 to 255. An example of a typical palette file follows : # R G B <-- not in file, but given here to ID the columns ------------- 0 8 15 11 1 32 21 65 2 40 22 107 3 18 68 20 4 36 70 65 5 41 68 107 . . . . . . . . . . . . 255 0 128 0 Example 3: Registered Image set FILE_TYPE = IMAGE IMAGE_LINES = 400 LINE_SAMPLES = 640 SET_POINTER = 6 canon01.dat 40 70 100 canon02.dat 10 30 50 canon03.dat 10 37 65 canon04.dat 5 37 70 canon05.dat 0 65 130 canon07.dat 0 33 65 END If you have a set of images of the same scene, but with different information, (i.e. the seven different channels of Thematic Mapper data) they can be combined into an image set. All images must be of the same size and each pixel must be of the same geographic location. In short they must be registered. Currently you can have up to 20 images in a set. This can be extended to any reasonable number by changing the macro NUM_IMAGE in the source code for 'IMVIS.C' and recompiling. "SET_POINTER = 6" in the above example means that there are 6 images in the set. The "END" is for the file, not the image set. The names of the images are listed followed by optional scaling parameters. These indicate the image value to be plotted as 0, 127 and 255 in the output image. If there are no numbers the default is 0, 127, and 255 which means no change in the way the image is displayed. If there are only two numbers they are assumed to be the first and last parameter and the middle is chosen to be their average. Example 4: Composite image created by IMVIS FILE_TYPE = IMAGE IMAGE_LINES = 400 LINE_SAMPLES = 640 IMAGE_POINTER = 'can_432.dat' PAL_POINTER = 'can_432.pal' PALETTE_POINTER = 'can_432.pal' SAMPLE_RATE = 1 CHANNEL_INPUT: RED = canonb4.dat Range = 11 40 65 GREEN = canonb3.dat Range = 13 34 61 BLUE = canonb2.dat Range = 15 28 46 This label file was created by IMVIS (see section describing IMVIS program functions) and is for a color composite image from channels 4, 3 and 2. The ranges indicate that for the red channel 0 on the screen is 11 (or less) in the file, 127 on the screen is from 40 in the file, and 255 on the screen is from 65 (or greater) in the file. The sample rate is 1 which means that every pixel was used. A sample rate of 2 means every second pixel is used, etc. The file names are given here so that IMVIS can read pixel data from them in 'pixel info' mode. Example 5: Earth Located Image -- polynomial fit to projection FILE_TYPE = IMAGE IMAGE_LINES = 4583 LINE_SAMPLES = 3132 IMAGE_POINTER = 'pac36.glo' LATITUDE_COEF = 6 4.9993160e+001 -4.4824000e-004 -2.7323000e-011 2.7988001e-005 -2.0332001e-009 -3.3854000e-010 LONGITUDE_COEF = 6 -1.2918469e+002 6.9518998e-004 4.0232001e-010 4.3117001e-005 -4.0440001e-010 -6.1135998e-009 END The addition of LATITUDE_COEF and LONGITUDE_COEF allow the program to convert X and Y in the image file to latitude and longitude. This is useful when the projection of the map is unknown. The upper left corner of the image is X=0 and Y=0 with X increasing to the right and Y increasing downward. Because north is up on many images the order of the X and Y are reversed in the two equations : Lat = A(0) + A(1)*Y + A(2)*X + A(3)*Y*Y + A(4)*X*X + A(5)*Y*X Lon = B(0) + B(1)*X + B(2)*Y + B(3)*X*X + B(4)*Y*Y + B(5)*X*Y For the above example, the polynomial fit is : LAT=5.0 - 4.48e-004y - 2.732e-011x + 2.79e-005y*y - 2.03e-009x*x - 3.38e-010x*y LON=-1.29e+002 + 6.95e-004x + 4.02e-010y + 4.31e-005x*x - 4.04e-010y*y - 6.13e-009x*y You can also get the x and y from the lat and lon via the following equations : X = A(0) + A(1)*lon + A(2)*lon*lon + A(3)*lat + A(4)*lat*lat + A(5)*lat*lon Y = B(0) + B(1)*lat + B(2)*lat*lat + B(3)*lon + B(4)*lon*lon + B(5)*lat*lon This example uses 6 values for latitude and 6 for longitude but any number from 2 to 6 can be used as long as the order shown above is used. If only 5 are used the last value is dropped, etc. Example 6: Earth Located Image -- Albers Equal Area Projection & MAPPER Data FILE_TYPE = IMAGE IMAGE_LINES = 1575 LINE_SAMPLES = 2627 IMAGE_POINTER = 'rad_shd.dat' PAL_POINTER = 'rad_shd.pal' PALETTE_POINTER = 'rad_shd.pal' Projection = Albers equal area elliptical 23.0 Lat0 29.5 Lat1 45.5 Lat2 -96.0 Lon0 -2630000 X0 3328046 Y0 2000 PixelSize (meters) 7 ellipsoid (Clark 1866) (0-10) VECTOR_SETS = 6 county = 1 county 120.0 0.0 253 coast = 1 coast 120.0 0.0 254 state = 1 state 120.0 0.0 246 rivers = 1 rivers 120.0 0.0 251 nation = 1 nation 120.0 0.0 245 The addition of Projection allows the program to convert X and Y in the image file to latitude and longitude and back again. In the case of a projected image there are two sets of x/y coordinates -- one for the map and one for the image. The image is in pixels as before but the map x/y is in meters from the map origin. At this time only Albers equal area elliptical projections and Mercator projections can be processed but others will be added as the need arises. The in- formation presented is as follows: Lat0 = central latitude of map Lat1 = 1st standard latitude Lat2 = 2nd standard latitude Lon0 = central longitude of map X0 = x map coordinate of pixel 0,0 Y0 = y map coordinate of pixel 0,0 PixelSize = map coordinate size of a pixel in meters ellipsoid = number of ellipsoid used in making map 0 GRS 80 1980 6378137.0 6356752.3 Newly adopted 1 WGS 72 1972 6378135.0 6356750.5 NASA, DoD, oil Co. 2 Australian 1965 6378160.0 6356774.7 Australia 3 Krasovsky 1940 6378245.0 6356863.0 Soviet Union 4 International 1924 6378388.0 6356911.9 Remainder of the World 5 Hayford 1924 6378388.0 6356911.9 Remainder of the World 6 Clarke 1880 6378249.1 6356514.9 Most of Africa; France 7 Clarke 1866 6378206.4 6356583.8 North America; Philippines 8 Airy 1830 6377563.4 6356256.9 Great Britain 9 Everest 1830 6377276.3 6356075.4 India;Burma;Pak; Afgan.;Thailand;etc. Line work from program mapper can be brought in by using the vector set option: VECTOR_SETS = 6 < there are 6 groups of lines > county = 1 < group 1 'country' has 1 file to > county 120.0 0.0 253 < be plotted in color 253 for > < pixel size 120 to 0 kilometers. > coast = 1 coast 120.0 0.0 254 state = 1 state 120.0 0.0 246 rivers = 1 rivers 120.0 0.0 251 nation = 1 nation 120.0 0.0 245 The colors may be any color in the image .PAL palette file by number. If Program 'img8bit' was used (this is what is used if IMVIS makes the image, see 'To Create an 8-bit Color Image') the last 16 colors will be as follows: ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ number color name R G B ÄÄÄÄÄÄ ÄÄÄÄÄÄÄÄÄÄ ÄÄÄ ÄÄÄ ÄÄÄ 240 BUFF 105 90 75 241 BLACK 0 0 0 242 D_GRAY 70 70 70 243 M_GRAY 127 127 127 244 L_GRAY 191 191 191 245 WHITE 255 255 255 246 RED 255 0 0 247 ORANGE 255 128 0 248 YELLOW 191 192 0 249 GREEN 0 191 0 250 CYAN 0 191 191 251 BLUE 0 0 255 252 MAGENTA 191 0 191 253 BROWN 96 28 14 254 D_CYAN 0 91 91 255 D_GREEN 0 128 0 The are differences between plotting vectors in IMVIS and in MAPPER. These differences are as follows : 1) For IMVIS, projection is important and you must tell the program the projection of the image. Currently, only three types of projection can be handled. These are : Mercator, Albers Equal Area, and a Polynomial-fit Projection. In MAPPER, projection plays a very minor role. 2) IMVIS does not require the vectors to be turned ON or OFF as MAPPER does. This is because in IMVIS, none of the vectors will automatically plot, if you wish to see linework, you must call it up while using IMVIS (See 'Description if IMVIS Functions'). 3) In IMVIS, vector colors are numbers, not names as in MAPPER. The color numbers are found within the image .PAL file. You may use any of the 255 color numbers available, but it is recommended to use the last 16 numbers. These 16 numbers are added on by the program IMG8BIT (which IMVIS uses) and are always the same. These 16 colors are listed above. 4) For MAPPER, the number of vectors within a set must be given. For IMVIS, the number of vector sets must be given (VECTOR_SETS = 6 from above) along with the number of vectors within a set (country = 1 from above) must be given. Example 7: Earth Located Image -- Mercator Projection & MAPPER Data FILE_TYPE = IMAGE IMAGE_LINES = 256 LINE_SAMPLES = 384 IMAGE_POINTER = 'aland.img' PAL_POINTER = 'aland.pal' SAMPLE_RATE = 1 Projection = mercator 30.993814 = Upper Left Pixel Latitude -90.410624 = Upper Left Pixel Longitude 1.25 km = Pixel Size at Equator VECTOR_SETS = 5 county = 1 l:\geophys\county 120.0 0.0 253 coast = 10 wtrbcb 3.0 0.3 253 wtrbc 0.3 0.0 253 wtrb2b 3.0 0.3 253 wtrb2 0.3 0.0 253 wtrb3b 3.0 0.3 253 wtrb3 0.3 0.0 253 wtrb4b 1.0 0.3 253 wtrb4 0.3 0.0 253 wtrb5 0.3 0.0 253 wtrb6 0.3 0.0 253 state = 1 l:\geophys\state 120.0 0.0 246 rivers = 1 l:\geophys\rivers 120.0 0.0 251 nation = 1 l:\geophys\nation 120.0 0.0 245 CHANNEL_INPUT: RED = a900404b.ch2 Range = 0 50 107 GREEN = a900404b.ch1 Range = 0 59 90 BLUE = a900404b.ch1 Range = 0 59 90 CAPTION = 3 LINES TEXT_COLOR = 248 TEXT_SIZE = 2 AVHRR LAC False Color IR RED = a900404b.ch2 Range = 0 50 107 BLUE and GREEN = a900404b.ch1 Range = 0 59 90 This label file is similar to Example 6 with two changes. The projection of this image is Mercator. For this projection, three pieces of information are required : Upper Left Pixel Latitude Upper Left Pixel Longitude Pixel Size at Equator If you do not know this information than use the label file described in Example 5. Also, the 'caption' option has been added to this image. This option allows text to be printed on the image. The caption can be any reasonable length, but the number of lines in the caption has to be identified in the line : CAPTION = n LINES Where 'n' is the number of lines. You must also pick the color the caption is to print in. The color information is found in the image .PAL file. For ease of color identification, use one of the last 16 colors. These 16 colors are shown in Example 6. In the above example, the text will plot in color number 248, which is yellow. Next, you must determine the size of the text to be plotted on the screen. A text size of 1 means the following : a character is 10 pixels wide and a space is 5 pixels wide a character is 19 pixels above the line and 6 below the line (for letters such as 'y' which hang down) for a total of 25 pixels in height. Generally, a text size of 2 (which means the text is plotted half as large) is the must useful. After the size of the text has been determined, the caption itself must be type in. The caption will be plotted in the lower right hand corner of the screen. The caption plots if you do not zoom in on the image or if you chose the 'caption' option in the IMVIS menu. See the section describing IMVIS functions. * * * To View a Single Image * * * When you enter IMVIS, you will see an alphabetical list of all type '.LBL' files in a window located at the top right part of your screen. The window will display a maximum of 19 file names at a given time, but up to 300 file names may be present. You can access the extra file names by scrolling the list (arrow keys, 'Pg Dn', 'Pg Up', 'Home' or 'End') or by typing the file name. Select a file by positioning the cursor (highlight bar) over the file name and hit . To exit the menu without choosing an image hit . If you have given path options in the command line, the program will search the other directories designated in the command line for existing label files. If you continue to hit , you will eventually exit from the program. If the label file you chose is for a single image (examples 1,2 and 4 above) you will leave text mode and go into image mode. The image mode can be forced by entering a slash followed by the letter identification (Id). For example : imvis /e will force the program into EGA mode. The available modes are: Id Mode Columns Rows Colors Total Palette --- ----------------- ------- ------ ------ -------------- E EGA 640 350 16 64 V VGA 640 480 16 262144 S VGA 320 200 256 262144 Y Extended VGA 640 400 256 262144 X Extended VGA 640 480 256 262144 The program will try to boot the board in the following order -- X,Y,S,E -- until it finds a mode which can be booted. The 'V' mode must be requested if you wish to use it. Many of the functions will not work in the V and E modes and none of them will work well in the E mode. The command line 'imvis scan' will cause imvis to scan through all the images contained within the working directory. Each image will be displayed for 3 seconds with the image name printed in the upper right hand corner. If a .XMG file for that image does not exist, one will be created by IMVIS at this time. An .XMG file is a screen save of the image. The image will come up on the screen much faster when an .XMG file exists. Also, .XMG files must exist in order to do a histogram necessary for creating a color composite image. See the section 'To Create an 8-bit Color Image' for more information on this. * * * IMVIS Quick Reference Guide * * * SYSTEM ZOOM ANALYZE PLOT DIGITIZE QUIT ÚÄÄColor pixel info boundary ³ ³ ³ targa file histogram labels.grf ³ ³ ³ shade caption ³ ³ ³ smooth ³ Return to ³ rescale ³ list of all ³ ³ .lbl files ³ Give input ÀÄÄÄchange +/- ,789,123 filename : stretch RGB ³ reset ³ change one color ³ save new table ³ exit color Making binary copy of .xyc ³ ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ³ System Enter line Get Line Zoom Pan Line Quit cur color ³ ³ in Color ³ Hide menu ³ ³ out Attrib. ³ Line length ³ ³ Return to ³ ³ list of all 1st time : ³ .lbl files L button down, ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ move up + down to ³ change, R button ³ to keep ³ ³ ³ ÚÄÄ >1 point ÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄ 1 point ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄ 0 points ÄÄÄ¿ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³ End+Save Close+Save Discard Edit Give latitude: places ³ No ³ ³ '*' in ³ Yes ³ Give longitude: file ³ ³ ³ ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ³ ³ ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ³ Save Close Screen Quit Line Add/Delete Move Point Snap Point Refresh Discard Move Add Points Zoom In Restore Color Double Zoom Out Attribute Half Pan Cut Delete Pt. Shape Area * * * Description of IMVIS Functions * * * SYSTEM : 'Color': The following functions alter the color of the image. 'change +/-,789,123' : This allows you to change the color image as a whole. '+' increases the intensity and '-' decreases it. The number pad controls the hues. It is operated as follows : Red Green Blue --- ----- ---- 7 8 9 increases the hue value 1 2 3 decreases the hue value 'stretch RGB' : If the color image does not use the full range of intensity in its color palette you can stretch the colors. The option will have no effect on gray tone images. There is no change in the hues or saturations of the colors. Only intensities are changed. 'reset' : This will set the palette back to the original. 'change one color' : If you wish one color on your image to be different, this function allows you to change that one color without changing any of the other colors. 'save new table' : After you have altered the image colors, you can save the new palette information in place of the old information. It is a good idea to save a copy of the old palette file first before using this option. To save the old palette to a backup file, you must exit from IMVIS. 'exit color' : This allows you to exit the color functions and returns you back to the main SYSTEM menu. 'targa file': This allows you to output a 32-bit targa file of the image you are working with. ZOOM : If the image is too large to fit on the screen, a sub-sampled image is displayed. This function allows a selected area od the sampled image to be viewed at full resolution. If the full resolution image will fit on the screen, then this option is inoperative. A box appears on the image which represents the size and shape of a full resolution (every pixel) sample of the image. The box can be moved 16 pixels at a time in any direction by using the arrow keys. To change the distance the box moves each time use '+' and '-' keys to double and halve this value respectively. The size (not the shape) of this box can be changed by using 'l' for larger and 's' for smaller. Hit to select a potion of the image or to exit without changing the display. Note, if the zoom box is made to be smaller than full resolution, the box will change color. Beware of zooming in too far and thus causing replication of pixels to occur. ANALYZE : 'pixel info': This puts a cursor in the middle of the screen which can be moved to get pixel information. The cursor is moved with the arrow or number pad ('Num Lock' = off) and the amount of movement is controlled with '+' and '-'. The display at the bottom will change with available information but it will look something like this: x=256 y=416 84 r: 57 g: 31 b: 26 3520 5120 lat = 47.76468 lon = -126.63266 Not all images will have all of the above information. Some will only give x and y locations. In this example the cursor on the screen is at pixel (256,416) which is pixel (3520,5120) in the image file. The value of the pixel on the screen is 84 while the value of the red, green and blue pixels used to make the color image are 57, 31 and 26 respectively. These RGB values come directly from the files used to make the composite image and are not scaled in any way. 'output Targa file': This outputs a 32 bit Targa file. 'histogram': This does a histogram of the screen data by dn. The first choice is a box that asks where you want the graph. Use the following to position the histogram box: (l)arger (s)maller (H)igher (S)horter (W)ider (N)arrower '+' move more '-' move less Do not cover data with this box as it will be destroyed (on the screen only, not in the file.) When you are satisfied with the position of the histogram box, hit . After hitting , any information existing under the box will be blanked out. Next, a smaller box appears on the screen. This box is also operated by the commands above. After you have sized this box, hit , the histogram of information contained within this box is then graphed in the area determined by the first box placement. To end this function hit . 'shade': Makes a shaded relief of the image with the light source to the right. This function asks for the contrast value (between 1 and 20). Trial and error will determine which is best, start with a contrast of 10 and work from there. 'smooth': Does a 3x3 average of the pixels. Use this before 'Shade'. PLOT : 'boundary plot': If a vector section exists within the image .LBL file, this function allows you to plot those vectors. After you have called this function, a menu will appear on the right hand side of the screen with the vector sets listed. Move the highlight bar over the linework you want and hit . You will see the vector plotted over the image. After they have finished plotting, the menu of vector sets will return. Either plot more linework, or exit this function to return back to the main menu. 'labels.GRF': 'caption': If a caption section exists within your image .LBL file, this option allows you to plot the caption. The caption will automatically plot on the sub-sampled image, but if you have zoomed into a section of the image, then the caption will not automatically plot; you have to call it up. After you have selected the caption function, you will see the caption plot in the lower right hand corner of the screen. DIGITIZE : See the section 'To Digitize Linework' for the description of these functions. QUIT : This returns you back to the listing of all .LBL files within your working directory. You can either view another image by moving the highlight bar over the image name and hit , or you can exit the program by hitting . You may have to hit a number of times as IMVIS will check the working directory along with any directories included in the path for all .LBL files. Hit until you see the DOS prompt. * * * To Create An 8-bit Color Image * * * The following section contains specific references to the images [canon02], [canon03], and [canon04]; and to the label file canon.lbl. These files are contained on the 5.25" disks provided. I recommend that you walk through the following section with those files and create your own composite image. IMVIS allows you to create an 8-bit composite image from a set of registered images. An example of a registered image set, canon.lbl, follows (Example 3 above also describes this type of .LBL file) : FILE_TYPE = IMAGE IMAGE_LINES = 400 LINE_SAMPLES = 640 SET_POINTER = 6 canon01.dat 0 255 canon02.dat 0 255 canon03.dat 0 255 canon04.dat 0 255 canon05.dat 0 255 canon07.dat 0 255 END This .LBL file does not contain a pointer to a .DAT file and therefore does not display an image on the screen when called. The above is a registered set of 7 images (the seven TM channels) of the exact same area. That is, each pixel of each image has the same latitude and longitude value. When you chose this type of .LBL file in IMVIS, the following menu appears : Display quick color Make 8-bit color image Make RGB composite file Scale image set Scan set -- full image Scan set -- sub image x -- exit 'Esc'=Quit 'Enter'=Choose file (This section describes how to create an 8-bit image. The rest of the functions listed above are described in the following section, 'Other Options for a Registered Set Label File'.) To create an 8-bit image, move the highlight bar over that option and hit . You will then see a list of all the registered images as shown in the .LBL file. This list will be in red. Chose the image you wish to be the red plane of your composite image and hit . The list will now turn green; chose the image for the green plane and hit . Last, the list will turn blue; chose the image for the blue plane and hit . For demonstration purposes, I used 'canon04.dat' for the red plane, 'canon03.dat' for the green plane, and 'canon02.dat' for the blue plane. You will then see what you have chosen for the planes and you are asked if this is what you want. If it is, type 'y', if not, type 'n'. After you have chosen your color plane choices, another menu appears along with the following information : Use current parameters Histogram from full image files Histogram from sub image files Input scale parameters Exit scale option -------------------------------------- Current Scaling Parameters -------------------------------------- Minimum Mid-Point Maximum --------------- ------------ --------- red 0 63 255 green 0 127 255 blue 0 127 255 The above information shows the scaling parameters as given in the .LBL file. If you look at the file canon.LBL, you will see after each image file, the numbers 0 and 255. 0 is taken as the minimum and 255 is taken as the maximum parameter value. You now have a number of options. If you are content with the current parameters, you may move the highlight bar over 'Use current parameters' and hit . You will then be prompted to enter the filename you wish for the composite image. For example, [can_432] was created using channel 4 of canon TM data for the red plane, channel 3 for the green plane, and channel 2 for the blue plane. IMVIS will then call program IMG8BIT which creates the composite image. You will be asked the resolution of the image. For the first try, it is a good idea to use 4 for 1/4 resolution to get an idea of what the image looks like. If it is correct, you can run through all the above steps and create the image at full resolution. This simply saves you a lot of time since creating a full resolution image takes a lot of time and if the image is incorrect you must go through it all again. If you wish to change the scaling parameters, you must first run a histogram on the images. The histogram determines the minimum, maximum, and mid-point of each image color plane. To do this, the image .XMG files must be present in the working directory. (This assumes you are operating IMVIS with the /X option mentioned in the 'Viewing a Single Image' section above. If you are using the /V option, for example, you will need the .MG files and so on.) Therefore, to run this option, you must have already created .XMG files for the images you are using as the color planes. IMVIS automatically creates the image .XMG file when you first look at the image through IMVIS. An .XMG file is a screen dump of the image information, so the next time you look at that image, it will appear on the screen much faster than the first time you viewed it. To ensure you have all the .XMG files, simply view all the images first, and then call the image registered set .LBL file. You may make a histogram of either the full image or the sub image, depending on the level of resolution you require. Mover the highlight bar over the histogram option and hit . You will see the massage : 'processing .xmg' for each of the three color planes. When all three planes have been processed you will see the following appear on the screen : -------------------------------------- Current Scaling Parameters -------------------------------------- Minimum Mid-Point Maximum ------ -------- ------------ --------- red 22 40 56 green 18 34 49 blue 18 28 38 red 0 63 255 green 0 127 255 --------------- ------------ --------- Use 'Number Pad' to change percentiles --------------- ------------ --------- up 7 8 9 --------------- ------------ --------- 0.05 0.50 0.95 percentile --------------- ------------ --------- down 1 2 3 --------------- ------------ --------- along with the following menu : use as is change table change image If you chose the option 'use as is' you will be returned to the previous menu. At this point, if you 'exit scale option,' IMVIS will call the program IMG8BIT and your composite color image will be created. The option 'change table' allows you to change the percentiles on the screen using the number pad. The 7, 8, and 9 keys on the number pad increase the percentile numbers. The 1, 2, and 3 keys decrease the value. This allows you to manually change the values, but this option is not recommended because you have no basis or reference for the values. The last option 'change image' is the option that is recommended to use. The three channels are shown as they exist in the files, but are subsampled to fit on the screen. When you hit any key, you will see the three-point stretch of the images. Generally, you want this to be a linear stretch; that is, you want the middle number to be the average of the minimum and maximum numbers. To do this, move the highlight bar by hitting either the or the backspace keys. You can change the values using the arrow keys. You will see the effect of your changes on the screen as the numbers change. When you have altered the numbers to your satisfaction, hit the key. You will be returned to the following menu : Use current parameters Histogram from full image files Histogram from sub image files Input scale parameters Exit scale option At this point, you can 'exit scale option' to begin creating your color composite image. You will see a verification of the images and color planes, and then you are prompted to give the output image file name. For example : Input Images: < Verification of images > RED -- 'canon04.dat' < and color planes. > GREEN -- 'canon03.dat' BLUE -- 'canon02.dat' Give output image file name can_432 < The file name I typed in. > Give sample rate (1 = full res, 2 = 1/2 size etc.) 1 < The sample rate I typed in.> IMVIS will continue the creation of the composite image without further interaction from the user. As the program works, the screen will fill with information describing the process. This also lets you know that the computer is working. It takes a number of minutes to create a composite image. The information that will fill the screen will look something like the following : Making 24 bit image file -- 'imvis.cmg' and info file 'imvis.chn' sample = 1 offset = 0 29 of 400 Dither constant changed from 5.00 to 5.00 Minimum points to keep set from 1 to 10 Maximum colors reset from 255 to 240 Processing 24 bit image 'imvis.cmg' into 8 bit image 'can_432'. row = 400 col = 640 Loading Dither constants. Creating Dithered image. 29 of 400 There are 400 rows and 640 columns. Scaling Red, Green and Blue to fit image colors. enough colors = 228 36 red x 44 grn x 27 blu -- 2740 colors max discernable colors: 119.377480 -- red 158.931797 -- green 70.978980 -- blue 8 red x 10 grn x 6 blu -- 138 colors 10 red x 12 grn x 7 blu -- 217 colors 11 red x 13 grn x 8 blu -- 266 colors Image has 247 colors at 11 x 13 x 7 Image has 235 colors at 11 x 12 x 7 Now filling color assignment table. Averaging lookup table colors: 29 of 400 creating image file SAMPLE_RATE = 1 CHANNEL INPUT : RED = canon04.dat Range = 11 40 65 GREEN = canon03.dat Range = 13 34 61 BLUE = canon02.dat Range = 15 28 46 29 of 400 lines. At this point, the program has finished and you are at the DOS prompt. A .LBL file for your composite image has automatically been created and will look similar to the following : FILE_TYPE = IMAGE IMAGE_LINES = 400 LINE_SAMPLES = 640 IMAGE_POINTER = 'can_432.dat' PAL_POINTER = 'can_432.pal' PALETTE_POINTER = 'can_432.pal' SAMPLE_RATE = 1 CHANNEL_INPUT: RED = canon04.dat Range = 11 40 65 GREEN = canon03.dat Range = 13 34 61 BLUE = canon02.dat Range = 15 28 46 You can now enter IMVIS and view the new composite image by placing the highlight bar over the filename and hitting . The process of creating a color composite image is finished. * * * Other Options for a Registered Set Label File * * * When you call a registered set label file, there are options available to you other than creating a color composite image. Below is the menu displayed after you have called a registered set label file : Display quick color Make 8-bit color image Make RGB composite file Scale image set Scan set -- full image Scan set -- sub image x -- exit 'Esc'=Quit 'Enter'=Choose file 'Display quick color' : This will make a 7 red by 7 green by 5 blue color image. After you have chosen this function, you will be asked to chose which files you wish to use for each color plane. Next, you will see a listing of the files and the respective color planes with the question : 'Is this what you want?' If so, type 'y.' A color image is displayed on the screen. It is not very good, but it shows some color. This new image is not saved -- it is simply a display. Hitting will return you to the main menu. 'Make 8-bit color image' : This function is described in detail in the preceding section 'Creating an 8-bit Color Image.' 'Make RGB composite file' : This function is similar to 'Make 8-bit color image' except a .CMG file is created rather than an image. After you have chosen this function, you will be asked to chose which files you wish to use for each color plane. Next, you will see the 'Current Scaling Parameters' (as shown in the preceding section) along with the following menu : Use current parameters Histogram from full image files Histogram from sub image files Input scale parameters Exit scale option This menu is operated the same as for the function 'Make 8-bit com- posite image.' If you chose to make a histogram, you can alter the parameters by either changing the table or changing the image. See the preceding section. When you exit the scale option, a .CMG file is created. In order to create an image from the .CMG file, you must fully exit IMVIS and run the program IMG8BIT. This program will create an 8-bit image from your newly created .CMG file. If you type 'IMG8BIT ' you will see the following information : img8bit [infile] [outfile] where infile -- name of input file of type '.cmg' outfile -- name of output file set dither -- amount of dithering : default = 5 min points -- minimum number of pixels of a color to use max colors -- maximum number of colors on final image: default = 256 example : img8bit infile outfile 7 /m 10 /c 240 The advantage of creating a .CMG file and then running IMG8BIT over creating the image in IMVIS, is the ability to change the defaults. When IMVIS calls IMG8BIT, the default dither and max colors are used. When you call IMG8BIT from the DOS prompt, you are able to alter these defaults to the needs of your map. For example, if you have an image of a photograph, then an dither value of 5 works well. If you have an image of a geologic map containing the contact points and colored formations, then no dither (dither value = 1) is recommended. After you have run IMG8BIT, you can view the image with IMVIS. 'Scale image set' : 'Scan set -- full image' : Each image listed within the registered set label file is displayed on the screen for three seconds. The name of each image is printed on the upper left hand corner of the screen. This function allows you to quickly scan a set before creating a composite image. After all the images have been shown, the menu will return. You can not alter the images at this point, this is simply a display function. 'Scan set -- sub image' : * * * To Digitize Linework * * * Included is an 8-bit color image of a section of a geologic map, [geo_map], which was scanned in at 150 dots-per-inch (dpi). Through IMVIS, you can create digitized linework from scanned maps. This linework can then be converted to latitude and longitude data and used with MAPPER and LINEFIX. To digitize linework, move the highlight bat over 'DIGITIZE' and hit the left mouse button. The prompt 'Give input filename' will appear in the upper left hand corner of the screen. (To see the given example, type 'geo') With the keyboard, enter the filename. After the message 'Making binary copy of .xyc' disappears, you will then see another menu appear at the top of the screen. The options available to you from this menu are : System cur color -- Allows you to change the cursor color. hide menu -- Hides the menu so you can see the entire screen while you are digitizing. LineLength -- In order for this function to work, the image .lbl file must be altered. The algorithm used to calculate the line length uses the scan rate of the image (dpi) and the scale of the image. This latter bit of information is found by running LATLON on the .xyc file. LATLON creates text file of the same filename as the .xyc file. In this text file, you will see the scale information. Append this information to the image .lbl file after the PALETTE_POINTER line : SCAN_RATE = 150 DPI IMAGE_SCALE = 930595:1 (the numbers given above are examples) After you have altered the .lbl file, re-enter IMVIS and call up the .xyc file. While in this function, move the cursor to the line and hit the left mouse button. The line will highlight and the length will be displayed in the bottom left hand corner. If you continue to highlight lines, the length of the individual line will be displayed along with the total length traversed. Enter Line -- See below for the options available from this function. Get Line -- Edit a previously digitized line. Zoom in -- Zooms into the image. out -- Zooms out of the image Pan -- Pans the screen in reference to cursor. Line Color -- The following message appears in the lower left hand corner of the screen : 0 L button down, move up + down to change, R button to keep. While depressing the left mouse button, move the mouse up and down, you will see the color and number change on the screen. When you have the color you want, release the left button and depress the right mouse button. The line color will then be that color. Subsequent digitized lines will be this same color unless you invoke this function again and alter the color. Attrib. -- This allows you to separate the lines by an attribute identifier. If the line is bathymetry, for example, then you can distinguish the line by its depth value. Quit -- Returns you to the main menu. Enter Line : When you chose the 'Enter Line' function, a number of options become available depending on what you have previously entered : 1) If you have not yet chosen a line color, then the following prompt appears in the lower left hand corner of the screen '0 L button down, move up + down to change, R button to keep'. While depressing the left mouse button, move the mouse up and down, to see the color and number change on the screen. When you have the color you want, release the left button and depress the right mouse button. The line color will then be that color. Subsequent digitized lines will be this same color unless you invoke this function again and alter the color. You must enter a color from the image palette file. The following is the list 16 colors contained in the file 'geo_map.PAL'. I recommend that you use colors from the last 16 in the palette file as these are placed there by IMG8BIT or TGA2LBL and are constants. Attribute R G B --------- --- --- --- 241 46 46 46 242 128 128 128 243 255 255 255 244 105 90 75 245 130 111 93 246 96 28 14 247 255 0 0 248 255 128 0 249 160 160 0 250 0 200 0 251 0 120 0 252 0 72 0 253 0 0 200 254 0 20 60 255 255 0 255 2) To enter control points, move the cursor to a graticule point and hit the left button on the mouse only once, then hit the right button. You will see the prompt 'Give latitude:' Key in latitude value and hit . The prompt 'Give Longitude:' will then appear. Key in the longitude value and hit . After both the latitude and longitude have been entered, you will again see the cursor on the screen. Continue on until all control points have been entered. Enter the control points before you digitize the lines; the control points must be at the very beginning of the .XYC file. 3) If you do not enter any points, that is, you immediately hit the right button on the mouse, then an asterisk (*) will be placed in the file. The file format for the control points of an .XYC file is : 47 17 47.0000 21.3333 47 18 350.6667 30.0000 46 18 340.3333 466.0000 46 17 31.3333 456.3333 * Where the first line is the latitude and longitude and the second line is the corresponding x and y. The '*' marks the end of the control point section of the .XYC file. 4) If you have previously entered an attribute or color, you will see a cursor on the screen. If you have entered your control points, move the cursor over the point at which you wish to begin the line and hit the left button on the mouse. Move the cursor along the line and hit the left button as many times as necessary to define the line. To end the line, hit the right button. You will then see another menu at the top of the screen : End+Save -- Ends the line and adds it to the file imvis.XYC Close+Save -- Connects the first and last point od the line and adds it to the file imvis.XYC. Discard No -- The line will be kept in the .xyc file. This is a safeguard feature in the event you inadvertently invoked this function. Yes -- The line will not be added to the file imvis.XYC. It will remain on the screen, however, until the screen is redrawn by either pan, zoom or refresh. Edit -- See the options below. Edit : If you chose to edit the line you have just digitized, the line will turn black with the points in white. You will see the following menu at the top of the screen : Save -- Changes made to the line will be saved and added to the file 'imvis.XYC'. Close -- The first and last point of the line will be connected. Screen Refresh -- Redraws the screen at the current zoom. No previously discarded lines will appear. Zoom In -- Zooms into the image. Zoom Out -- Zooms out of the image Pan -- Pans the screen in reference to cursor. Quit Discard -- Does not enter the line in 'imvis.XYC' Restore -- Restores a previously discarded line provided the screen has not been refreshed or zoomed in or out. Line Move -- Pick a point on the line, then move the cursor to where that point should be and hit the left button. The entire line is moved that amount. Color -- The color of the line can be changed as described above. Attribute -- The attribute of the lien can be changed. This is useful for topography, bathymetry, or gravity for example. The line can be defined by attribute rather than by color. Add/Delete Add Points -- Adds points to the line. Double -- A point is added in between all existing points, thus doubling the number of points in the line. Half -- Every other point is removed from the line except for the first and last points. Delete Points -- Deletes the chosen point from the line*. Move Point -- Moves a point on the line from it's original position to the position of the cursor. Snap Point -- Connects the chosen point from the line being edited to the nearest point of another line. Ideal for 'Å' type junctions. * A chosen point has a little white box drawn around it. Get Line : This function gives you the editing menu as shown above. By this, you are able to edit a line that has been previously digitized. This is most helpful in the 'Snap Point' option. In order to create a 'T' junction between lines, a point must be located at that junction. If a point is not at the junction, when you chose 'Snap Point', the junction will look 'Y'shaped. While digitizing, it is easy to forget to put a point at every line junction. The 'Get Line' function allows you to edit a line and add a point where needed in addition to all the other editing options. When you have finished digitizing, exit out of IMVIS. You will see the following prompt : Do you wish to replace '.xyc' (the original data file) with 'imvis.xyc' (the updated file)? (y or n) If you type 'y', then all new changes made will be added to .XYC. If you type 'n', you will see : All changes are only in 'imvis.xyc' No changes have been made to '.xyc' To view the linework in MAPPER or LINEFIX, convert the .XYC file to a .RAW file using LATLON. For further information on LATLON and the related programs, see the 'Demonstration Disk for USGS-OEMG Mapping Software'. [mapper00] shows what the final product of [geo_map] looks like.