home *** CD-ROM | disk | FTP | other *** search
- . Credits
- \uImageLab V2.4\u
-
- (C) Copyright 1991
- by Gary Milliorn
-
- This program is copyrighted, but
- is freely redistributable excluding
- commercial concerns.
-
- Send suggestions, bugs, complaints,
- to:
-
- mail: 5915 Shanghai Pierce Rd.
- Austin, Texas 78749-1927
- bix: gmill
-
- Last revision: 3 February, 1991
- . Overview
- \uImageLab V2.4\u
-
- \uImageLab\u is a program that
- performs functions on image files. It
- is principally oriented towards greyscaled
- images, though there are some color
- functions provided.
-
- \uImageLab\u only works on IFF files.
-
- All operations can be limited to
- areas by drag-selecting an area on the file
- opened: just click at one corner and drag
- to the opposite; only the selected area
- will be affected.
- .Convolution
- \iConvolution\i (the graphical or
- spatial form) is a general purpose image
- processing transform that can be used to
- extract or enhance features of the image,
- under control of a matrix called the
- \ikernel\i.
-
- \uImageLab\u V2.x is limited to a
- 3 x 3 kernel, but there are many operations
- which can be performed with this small
- kernel, such as smoothing, edge detection,
- etc.
- .Area
- Operations may be applied to the
- whole screen or to a sub-area.
-
- To select an area, click the mouse
- on the picture and drag to outline the
- desired area.
- .Clipboard
- The clipboard functions can be used
- to import or export graphical data, or to
- hold data temporarily when moving between
- screens you open.
- .Project
- The \iProject\i menu contains general
- information selections: About and
- Information.
-
- Note: if the `checkmark' option is set
- and the special font is available, then
- \uImageLab\u will convert the Project menu into
- an Amiga-style checkmark.
- .File
- The \iFile\i menu contains all File I/O
- operations, as well as the Quit option.
- .Edit
- The \iEdit\i menu contains the clipboard
- functions, plus general purpose editing
- facilities (such as Paint, Flip, Erase, etc.)
- .Transform Menu
- The \iTransform\i menu contains various
- picture/area modification functions,
- including the FFT menus, the Convolution
- and Averaging menus, and the Filters menus.
- .Picture Menu
- The \iPicture\i menu contains various
- global picture operations, including color
- table manipulations and screen parameter
- editing (change size, etc.)
- .Other Menu
- The \iOther\i menu contains miscellaneous
- functions, including:
-
- Position - screen positioning
- Save Mode - compression type and
- FFT inclusion.
- Restrict Palette- limit color range.
- Bell - controls bell usage.
- Icons - controls icon
- creation.
- .About
- \iAbout\i displays information about
- \uImageLab\u, including the copyright
- information, current memory availability
- (\uImageLab\u can use quite a bit)
- and provides access to \iHelp\i.
-
- Note: Help is also available using the
- `Help' key.
- .Picture Info
- \iPicture Info\i shows information about
- the current open picture, including:
-
- Filename.
- File size.
- Display modes.
- Select size and area.
- FFT memory usage.
- .Open
- \iOpen\i opens an \bIFF\b picture file.
- If a screen is currently open already, it
- will be closed first (if it has been
- modified, a warning will be issued).
-
- If the \bALT\b key is held while \iOpen\i
- is selected, when the IFF file is opened,
- the most-significant bit plane will be
- stripped away. This is useful in
- processing \iDigiView\i files, which
- create extra bitplanes that can adversely
- affect \uImageLab\u's operation.
-
- See also: \iRestrict Palette\i
- and \iEdit Parameters\i.
- .Revert
- \iRevert\i re-opens the previously opened
- IFF picture file, undoing any changes that
- have been made.
-
- This option is disabled if you have not
- made any changes to your file.
- .Close
- \iClose\i closes the current picture screen.
- If the picture has been modified, you will be
- warned.
- .Save
- \iSave\i saves the current picture back to
- the filename used when the picture was
- loaded.
-
- The `Save' option is disabled when the
- picture's screen modes have been altered
- (by the \iEdit Parameters\i command).
- .Save As
- \iSave As\i saves the current picture to
- a filename specified using a file requester.
- .Delete
- \iDelete\i brings up a file requester
- allowing you to specify files to be deleted.
- .Quit
- \iQuit\i leaves \uImageLab\u. If the
- current picture has been altered but not
- saved, you will be warned first.
- .Undo
- \iUndo\i undoes most operations, even if
- it has to re-load the picture from disk.
- .Cut
- \iCut\i copies the selected area to the
- clipboard, then erases the area to the
- background color (color #0).
-
- If the \bALT\b key is held down, the
- area is cleared to the foreground color
- (the maximum color register).
- .Copy
- \iCopy\i copies the selected area to the
- clipboard as an IFF picture. Selected areas
- can be exported to other programs by the
- clipboard.
- .Paste
- \iPaste\i pastes the IFF graphics area
- to the current picture. If the clipboard
- contains an IFF compatible picture, the
- picture screen will be brought up and a
- select box will be active.
-
- Position the box to the desired location
- and press the left mouse button.
-
- To abort a \ipaste\i in-progress, press
- the \bESC\b key.
- .Clear
- \iClear\i erases the selected area (or
- the entire screen) by setting it to the
- background color (color #0).
-
- If the \bALT\b key is held down, the
- area is cleared to the foreground color
- (the maximum color register).
- .Unselect
- \iUnselect\i removes the selected area
- from the picture. Alternately, just click
- once on the picture without moving the
- mouse.
- .Move
- \iMove\i allows you to reposition a
- selected area. To use, select an area, then
- the \iMove\i option. The screen is brought
- up, with the selected area shown.
-
- To move that area, click the left mouse
- button to drag the area to the new location,
- and release the button when the area is
- positioned properly.
-
- To abort a move in-progress, press the
- \bESC\b key before releasing the right
- mouse button, or press the left mouse
- button.
- .Resize
- The \iResize\i option allows to you to
- change the size of a selected area. The
- first two options, \iCopy\i and
- \iInterpolate\i control whether pixels
- which must be created are simply copied
- or are produced by a two-dimensional
- averaging technique.
-
- To use those methods, you select
- them and then select a new area. \iResize\i
- will expand and/or contract your image
- as needed to fit the available area.
-
- The second two options, \iHalve\i
- and \iDouble\i, do not require you to
- specify the target area.
-
- \bNote:\b \iDouble\i always interpolates,
- so it is somewhat slower.
- .Flip
- The \iFlip\i option produces mirror images
- of selected areas. The suboptions allow you
- to flip around an imaginary center vertical
- axis (making horizontal flips) or around an
- imaginary center horizontal axis (making
- vertical flips).
- .Invert
- The \iInvert\i option produces negatives
- of selected areas (the Palette Negative
- function pruduces negatives of the entire
- image).
- .Paint
- The \iPaint\i functions allow you to
- modify areas on the screen. When any
- paint mode is selected, the pointer changes
- to a cross hair, and the image data under
- the center of the pointer changes in the
- following ways:
-
- Draw - draw using last palette color.
- Trace - draw, but connect between dots.
- Xor - exclusive-or (invert) pixels.
- Random - draw with random pixels.
-
- To select the color to paint with in
- the Draw or Trace modes, use the Palette
- function and select a color.
-
- The Function keys F6..F10 map to the
- drag-select/paint modes as follows:
-
- F6 - no paint, drag select.
- F7 - draw.
- F8 - Trace.
- F9 - Xor.
- F10 - Random.
- .Position
- The submenus of the \iPosition\i menu
- allow control over the position of the open
- picture screen, which has no drag bar.
-
- The \iHigh\i, \iMiddle\i, and \iLittle\i
- selections put the screen at the top, halfway
- down, or near the bottom.
-
- Since menu selections are made from the
- WorkBench screen, the last two allow easy
- access to the ImageLab window.
-
- The command key mnemonics were chosen
- for convienent access using the right Amiga,
- not for some bizarre meaning.
- .Save Type
- The \iSave Type\i menu allows you to
- select whether pictures will be compressed
- or not, and whether FFT data (if any)
- will be saved as well.
-
- The "Compress Picture" menu selection is
- checked to reflect the compression mode of
- the currently open picture, if any.
- .Bell
- The \ibell\i menu, if checked, causes a
- bell to be sounded when an operation is
- complete. This is handy with some of the
- lengthy functions, such as FFT's.
- .Icons
- The \iIcons\i menu, if checked, allows
- controlling whether icons are generated with
- saved picture files. The default is OFF if
- \uImageLab\u was started from the CLI,
- or ON if it was started from WorkBench.
- .FFT
- The \iFFT\i menu contains the main FFT
- transform function, \iTransform\i, \iInverse\i
- and \iDisplay\i.
- .Color to B&W
- The \iColor to B&W\i menu converts the color
- palette to a greyscale. It does this using
- the EIA weighting factors. This is one step
- in converting a color picture for \uImageLab\u
- use.
-
- Note: if the palette is not in order
- after using this command, use \iLinearize\i.
- .Linearize
- The \iLinearize\i menu sorts the palette,
- and rewrites all pixel values on the screen
- so that no change in appearance occurs.
-
- \uImageLab\u requires a linearly increasing
- palette for most operations to perform as
- expected.
- .Negative
- The \iNegative\i menu inverts the order of
- the palette. If you have a standard
- greyscale, this will produce a negative
- image. If not, unpredictable results will
- occur.
- .Saturate
- The \iSaturate\i menu saturates all colors
- in the palette. If the \bALT\b key is held,
- then the intensity levels are forced to their
- maximum values also; this produces a palette
- of primary colors.
- .Pseudo Color
- The \iPseudo Color\i menu converts a grey-
- scaled palette to a "thermographic" palette,
- where blue represents coldest (darkest) and
- red represents hottest (whitest). Values in-
- between are scaled accordingly.
-
- If the \bALT\b key is held while selecting
- \iPseudo Color\i, the palette is given random
- colors. This serves no useful purpose,
- except for hours of enjoyment.
- .Delete Color
- The \iDelete Color\i menu brings up a window
- containing selection gadgets, one per color.
- Selecting the gadgets changes them to an 'X',
- and when "OK" is selected, all marked colors
- are deleted from the palette and their pixels
- are deleted from the picture.
-
- Unchanged colors and pixels are moved
- down, freeing up space in the palette/image.
- .Map Color
- The \iMap Color\i menu brings up a window
- containing selection gadgets, one per color.
- Selecting the gadgets changes them to an 'X',
- and when "OK" is selected, the two (and only
- two) marked colors are exchanged in the
- palette and their pixels are exchanged in the
- picture.
-
- Warning: this is a slow operation.
- .Sobel
- The \iSobel\i transform is a specialized,
- highly effective edge detecting transform.
- Areas processed by the \iSobel\i transform
- will be replaced with bright pixels in area
- of greatest change, and dark where there is
- little change.
- .Roberts
- The \iRoberts\i transform is a specialized,
- effective edge detecting transform. Areas
- processed by the \iRoberts\i transform will
- be replaced with bright pixels in area of
- greatest change, and dark where there is
- little change.
- .Binary
- The \iBinary\i function converts the
- selected area to white or black, depending
- upon whether the pixel are greater than or
- less than a supplied value.
- .Threshold
- The \iThreshold\i function limits the
- selected area. Pixels outside a specified
- pair of limits are forced to be within that
- range.
- .Pixelize
- The \iPixelize\i function converts a group
- of <n> pixels into their average value.
- This produces blocky images (i.e.,
- "computerized" ones).
- .Transform
- The \iTransform\i function begins an FFT
- transform. The selected area must be a
- power of two in size (2, 32, 128, etc.);
- if not, a modification requester is
- brought up.
-
- When ready, the FFT operation begins.
- A bar chart monitors its progress. When
- the FFT completes, the data is saved in
- memory and is associated with the image.
- Select the \iDisplay\i function to view the
- results.
- .Inverse
- The \iInverse\i function begins an inverse
- FFT transform. This converts the data back
- to an image. When done, the data can be
- displayed via \iDisplay\i. Theoretically,
- if no changes have occured to the raw FFT
- data, you should get your picture back.
-
- The \iPaint\i option also modifies any FFT
- data.
- .Display
- The \iDisplay\i function displays a screen
- image using the FFT data. The options
- \iLog Display\i and \iNo Display\i control
- whether a logarithmic enhancement is applied
- to the data.
- .Intensity
- The \iIntensity\i function alters the
- apparent brightness of an area up or down in
- steps. The \iBrighten\i and \iDarken\i area
- additive operations, while the \iScale\i
- operations are multiplicative.
-
- Note that Brighten and Darken affect the
- appearance of the background color (0),
- while Scaling does not have this problem.
- .Merge
- The \iMerge\i function merges two pictures.
- The options are:
-
- Overlay - copy new picture to current,
- wherever the current pixel
- is black.
- Add - add the pixel values
- together.
- Subtract- subtract the pixel values
- together.
- And - logically AND the pixel
- values together.
- Or - logically OR the pixel
- values together.
- XOR - logically XOR the pixel
- values together.
-
- Other...- do a custom blitter
- operation.
- .Average
- The \iAverage\i function smooths a selected
- area by replacing each pixel by the weighted
- average of its neighboring pixels. Different
- suboptions select which neighbors to use.
-
- If the \bALT\b key is held while selecting
- \iAverage\i, you can edit the control matrix.
- .Convolve
- The \iConvolve\i function alters a pixel
- based upon factors weighted by selected
- neighboring pixels.
-
- By varying the kernel used, smoothing,
- enhancing, or edge detection can be
- performed.
-
- If the \bALT\b key is held while selecting
- \iConvolve\i, you can edit the control matrix.
- .Histogram
- The \iHistogram\i function counts pixels in
- a selected area, and shows a graph from that
- data.
-
- The \iBar Graph\i menu option, if checked,
- instructs ImageLab to create a Bar Graph;
- otherwise, a line graph is displayed.
- .Equalize
- The \iEqualize\i function adjusts the values
- in the palette so normalize the greyscale to
- a Gaussian distribution, producing a more
- normal appearance.
-
- \bNote\b: a \iHistogram\i function \bmust\b have
- been invoked first.
- .HAM Conversion
- The \iHAM Conversion\i function is enabled
- only when a HAM picture has been loaded. It
- converts the picture or selected area to a
- 16-color greyscaled image.
-
- \bNote\b: this function \bdoes\b work correctly
- for selected areas which do not start at the
- left edge.
- .Halftone
- The \iHalftone\i function converts the
- selected area or picture to a halftoned
- image. A halftone cell size of 2 or 3
- can be selected, which increases the
- size of the resulting image by 2 or 3,
- respectively.
- .Restrict Palette
- The \iRestrict Palette\i function
- prevents \uImageLab\u from using the upper
- half of a palette. This is needed to
- process DigiView pictures properly.
- .Greyscale
- The \iGreyscale\i function converts the
- palette to a linearly increasing greyscale.
- .Median
- The \iMedian\i filter replaces each pixel
- in an area with the median value of its
- eight surrounding pixels.
- .Minimum
- The \iMinimum\i filter replaces each pixel
- in an area with the minimum value of its
- eight surrounding pixels.
- .Maximum
- The \iMaximum\i filter replaces each pixel
- in an area with the maximum value of its
- eight surrounding pixels.
- .Distort
- The \iDistort\i function randomly distorts
- a selected area. A probability of 0% to 100%
- can be set.
- .Noise
- The \iNoise\i function randomly produces
- impulse noise in an area. A probability of
- 0% to 100% can be set.
-
- If the \bALT\b key is held while selecting
- \iNoise\i, the noise generated is 0, instead
- of the maximum color.
- .Palette
- The \iPalette\i function places a color
- palette on the screen. You can select each
- color, and alter its RGB components using
- the provided sliders. Select "OK" to make
- the changes permanent, or "CANCEL" to restore
- the old values.
- .Edit Screen
- The \iEdit Screen\i function changes the
- size and modes of the display screen,
- producing a new screen. A window allows
- you to edit the screen width, depth, and
- height. You can select HAM, Interlace, HIRES,
- and EHB (Extra-Half-Bright) modes as well.
-
- If the \bALT\b key is held while
- selecting \iEdit Screen\i, it change the
- screen width and height values to the
- currently selected area.
- .Edit Image
- The \iEdit Image\i function changes the
- size of the image, which may be larger or
- smaller than the display screen.
- A window allows you to edit the screen
- width, height, or depth.
-
- If the \bALT\b key is held while
- selecting \iEdit Image\i, it change the
- image width and height values to the
- currently selected area.
-