Contents

On-line Help for the AccuSoft Demo


On-line Help for the AccuSoft Demo

Introduction

Welcome to the AccuSoft Pro Gold Demonstration program.  This demo illustrates some of the features of AccuSoft's powerful Image Format Library and the all-new Pro Imaging Toolkit.

The AccuSoft products have been specifically designed to provide the most imaging capability to application developers of all ranges of expertise.  Both the novice and the more seasoned imaging professional will find many useful routines in our toolkits.  All developers can solve their image processing problems using AccuSoft's high and low level routines.

The Menu options of this demo.

The View pulldown menu

Intensity Profile Chart ...

Pixel Dump ...

Pan Window ...

Histogram ...

The Transform pulldown menu

Rotate...

90 degrees

180 Degrees

270 Degrees

Rotation Angle

Expand for rotated image

Resize...

Image Processing...

Isolate Points

Edge Detection

Horizontal Edge Detection

Vertical Edge Detection

45 Degree Edge Detection

-45 Degree Edge Detection

Laplacian

Dialation

Roberts Cross

Color Separation...

Median Filter

Smooth ...

Type

Kernel Size

RGB Mode

Sigma

Sharpen...

Kernel Size

Gain

Edge Filters...

Type

RGB Mode

Kernel Size

Gain

Result Form

The Options pulldown menu

Gamma Correction...

Gamma Value

Dither Mode...

Dither Mode

Aliasing

Alias Setting

Auto-Color

Status Bar Display

Use DDBs for Display

Show Toolbar

The FX pulldown menu

Pixelate

Emboss...

Chroma Key...

Motion Blur ...

Texture Tile...

Twist...

Diffuse...

Blur

Posterize...

Intensity Dot...

Stitch...

Watermark...

Add Noise...


Intensity Profile Chart ...

In the View pulldown menu

Move the cross hair cursor to a location in the desired image.  Press the button and drag the cursor to the other end of the desired line.  When the button is released the pixel values along the highlighted line are read in and charted.  To select and chart a new line, repeat this procedure.

File pulldown menu

View pulldown menu


File pulldown menu

Save to File...

Save to Clipboard

Print...


Save to File...

In the File pulldown menu of the Intensity Profile Chart

Saves the charted pixel values to a file.  Enter the name of the file to be created in the provided dialog box.


Save to Clipboard

In the File pulldown menu of the Intensity Profile Chart

Saves the charted pixel values to the clipboard.  The values can then be pasted into other Windows applications as a column of integers.  RGB triples are seperated by spaces on the same row.


Print...

In the File pulldown menu of the Intensity Profile Chart

Prints the currently displayed chart to the printer.


View pulldown menu

R

G

B

RGB Stacked

RGB Overlayed

Intensity

Raw

Palette


R

In the View pulldown menu of the Intensity Profile Chart

For color images this view allows the red component of each pixel to be charted.


G

In the View pulldown menu of the Intensity Profile Chart

For color images this view allows the green component of each pixel to be charted.


B

In the View pulldown menu of the Intensity Profile Chart

For color images this view allows the blue component of each pixel to be charted.


RGB Stacked

In the View pulldown menu of the Intensity Profile Chart

For color images this view allows the red, green, and blue components of each pixel to be charted as a stacked bar chart.  The total height of each charted value represents the intensity of the RGB triple (R + G + B).


RGB Overlayed

In the View pulldown menu of the Intensity Profile Chart

For color images this view charts each to the red, green, and blue components on top of one another.


Intensity

In the View pulldown menu of the Intensity Profile Chart

Charts the intensity of each pixel on the line.


Raw

In the View pulldown menu of the Intensity Profile Chart

Charts pixel values taken directly from the image


Palette

In the View pulldown menu of the Intensity Profile Chart

Charts pixel values translated by the image palette.


Pixel Dump ...

In the View pulldown menu

Displays a spreadsheet like window which contains rows and columns of pixel values taken from the image.  A movable outline will show up on the source image.  This outline can be moved about using the hand cursor.  The size of the outline reflects the size of the pixel dump window.  If the pixel dump window is re-sized the outline will also re-size appropriately.  As the outline is moved about the pixel dump window is updated.  The pixel dump window shows the row and column numbers of the source image from where the pixels where extracted and displayed.

File pulldown menu

View pulldown menu

Mode pulldown menu


File pulldown menu

Save to File ...

Save to Clipboard

Exit


Save to File ...

In the File pulldown menu of the Pixel Dump window

Saves the currently displayed pixel values into a file.  Enter the name of the file into the provided dialog box.


Save to Clipboard

In the File pulldown menu of the Pixel Dump window

Saves the currently displayed pixel values to the Windows clipboard.  The clipboard can then be pasted into another Windows application.  The values are stores as they appear in the pixel dump window.  That is as rows and columns separated by spaces.


Exit

In the File pulldown menu of the Pixel Dump window

Closes the pixel dump window.


View pulldown menu

R

G

B

RGB (All)

Intensity

Raw

Palette

Unsigned

Signed

Hex


R

In the View pulldown menu of the Pixel Dump window

Displays the red component of each pixel in the window.


G

In the View pulldown menu of the Pixel Dump window

Displays the green component of each pixel in the window.


B

In the View pulldown menu of the Pixel Dump window

Displays the blue component of each pixel in the window.


RGB (All)

In the View pulldown menu of the Pixel Dump window

Displays each pixel as a triple of red, green, and blue components.


Intensity

In the View pulldown menu of the Pixel Dump window

Displays the intensity of each pixel.


Raw

In the View pulldown menu of the Pixel Dump window

Displays the pixel values taken directly from the image (un-translated by the images palette).


Palette

In the View pulldown menu of the Pixel Dump window

Displays the pixel values from the image translated by the images palette.


Unsigned

In the View pulldown menu of the Pixel Dump window

Displays each value as an unsigned integer.


Signed

In the View pulldown menu of the Pixel Dump window

Displays each value as a signed 8-bit integer.  This is used is inspect the values output by some image processing routines that create signed output pixels such as convolution.


Hex

In the View pulldown menu of the Pixel Dump window

Displays the values as 8-bit hexadecimal values.


Mode pulldown menu

RGB

IHS


RGB

In the Mode pulldown menu of the Pixel Dump window

For color images this mode displays the values in the standard RGB format.


IHS

In the Mode pulldown menu of the Pixel Dump window

For color images this mode displays the values.


Pan Window ...

In the View pulldown menu

The pan window provides a easy to use method of viewing details within large images.  A smaller Pan Window will pop up containing a reduced size copy of the original image.  The reduced version will have a highlighted rectangle within it.  This area can be moved about the pan window using the hand cursor.  The region within the highlighted area is what is displayed in the original image window.

The original image windows is updated as the highlighted region is moved about.  Note that when the original image does not contain scroll bars the highlighted region is the entire reduced image.


Histogram ...

In the View pulldown menu

The histogram window displays in chart form the pixel value distribution.  The X axis represents the range of possible pixel values.  The Y axis represents the number of pixels with the given pixel value.

Pixels are tabulated from the current ROI of the image with focus.  If no ROI is defined the entire image is processed.  To tabulate a new ROI simply redefine the ROI.  The histogram will be redrawn.

The scroll bar on the right of the histogram allows the scale of the Y axis to be altered.

Just below the X axis is a color bar.  This bar displays the pixel values represented by the X axis.  For an intensity histogram the color bar will display a gray scale contrast ramp.  For color, the bar will show the colors being counted in the displayed histogram.

File pulldown menu

View pulldown menu


File pulldown menu

Save to File ...

Save to Clipboard

Print

Exit


Save to File ...

In the File pulldown menu of the Histogram window

Saves the currently displayed histogram values to a file.  The name of the file is entered in the provided dialog box.


Save to Clipboard

In the File pulldown menu of the Histogram window

Saves the currently displayed histogram values to the Windows clipboard.  The contents of the clipboard can then be pasted into other Windows application.  The values are stored as a column of integers.


Print

In the File pulldown menu of the Histogram window

Prints the currently displayed histogram chart on the printer.


Exit

In the File pulldown menu of the Histogram window

Closes the histogram window.


View pulldown menu

R

G

B

Intensity


R

In the View pulldown menu of the Histogram window

For color images this tabulates the red component of the images pixels.


G

In the View pulldown menu of the Histogram window

For color images this tabulates the green component of the images pixels.


B

In the View pulldown menu of the Histogram window

For color images this tabulates the blue component of the images pixels.


Intensity

In the View pulldown menu of the Histogram window

Tabulates and displays the intensity of the image pixel values.


Rotate 90 Degrees
Rotate...

Rotate 90 Degrees

Rotates the image 90 degrees clockwise

Rotate 180 Degrees

Rotates the image 180 degrees clockwise

Rotate 270 Degrees

Rotates the image 270 degrees clockwise

Rotation Angle

Rotates the image by the specified angle about the center of the source.

Expand for rotated image

If Rotate Angle is selected, this check box determines if the resulting image is to be the same size as the original or expanded to fit the new dimensions.  If the destination image is not expanded, the corners will be clipped.

Toggle Backfill

If Rotate Angle is selected this toggle determines the color to use to fill the newly uncovered background of the expanded destination image.


Resize...

Horizontal Size

Determines the new horizontal dimension of the image.  The default value shows the current image width. If Maintain aspect ratio is checked then changing this value will alter the Vertical Size value at the same time.

Vertical Size

Determines the new vertical dimension of the image.  The default value shows the current image height. If Maintain aspect ratio is checked then changing this value will alter the Horizontal Size value at the same time.

Maintain aspect ratio

Check this box is the aspect ratio of the new image is to be the same as the original image.

Use Interpolation

Check this box to use interpolation when resizing the image.  If not checked the closest pixel will be use.


Image Processing...

Several different edge map algorithms are presented.  Each map is created using a different 3x3 convolution kernel.


Isolate Points

Produces a  thin edge map of the image.  Edges can be of any orientation.


Edge Detection

Produces a  thick edge map of the image.  Edges can be of any orientation. Brightness in this edge map represents the amount of contrast in the original image.


Horizontal Edge Detection

Produces a horizontal edge map of the image.  Brightness in this edge map represents the amount of horizontal contrast in the original image.


Vertical Edge Detection

Produces a vertical edge map of the image.  Brightness in this edge map represents the amount of vertical contrast in the original image.


45 Degree Edge Detection

Produces a 45 degree edge map of the image. Brightness in this edge map represents the amount of 45 degree contrast in the original image.


-45 Degree Edge Detection

Produces a -45 degree edge map of the image.  Brightness in this edge map represents the amount of -45 contrast in the original image.


Laplacian

Produces a Laplacian edge map of the image.


Dialation


Roberts Cross

Produces a Roberts Cross edge map of the image.


Color Separation ...

Produces a color separation of a 24 bit image.  A new image is produced for each of the desired components.  Each new image is the same size as the original and is 8-bits in depth.

To separate 8-bit color images, first promote the image to 24-bit color.

Tint Palette

Check this box to tint (or color) the resulting images according to the color component that it is representing.  That is if a RGB image is separated into its R, G, and B components and this box is checked the resulting three 8-bit images will be tinted, red, green, and blue.  If this box is not checked the resulting images will be left 8-bit grayscale.

RGB

Separates the image into its red, green, and blue components.

IHS

Separates the image into its intensity, hue and saturation components.

YIQ

Separates the image into its luminance (Y) and color difference (I and Q) components.

CMYK

Separates the image into its cyan, magenta, yellow, and black (K) components.  Black is generated using the default linear under color removal and black generation functions.

HSL

Separates the image into its hue, saturation, and lightness components.

CMY

Separates the image into its cyan, magenta, and yellow components.

Lab

Separates the image into its C.I.E. Lab color components.

YCrCb

Separates the image into its luminance Y and color difference (Cr and Cb) components.

Intensity

Produces a single intensity image.


Median Filter ...

Performs a median filter on the image.  This filter reduces graininess or snow-like noise.  Sometimes called a de-speckle filter.  The median function is performed over a small neighborhood called the kernel size.  The size of the neighborhood defines the amount of filtering that will occur.  Larger neighborhoods will reduce mode noise at the expense of spatial resolution.  For most applications a 3x3 or 5x5 neighborhood should suffice.

Note that as the size of the kernel increases the amount of time needed to process the image increases exponentially.  If you are not sure how large a kernel to process for the amount of noise in your image start with a small 3x3 kernel and increase the size slowly.

Width

Width of the filters processing neighborhood.

Height

Height of the filters processing neighborhood.

RGB Mode

For 24 bit images this mode selects which color component or components to process.  If red, green, or blue is selected only that component is processed.  The other 2 are left alone.  To process all 3 components select the Red, Green, and Blue mode.


Smooth ...

Performs a smoothing filter on the image.  This reduces the contrast in the image blurring sharp edges.


Type

There are several types of kernels that can be used to carry out the smoothing; Circle, Rectangle, and Gaussian.  A circle provided fast and accurate smoothing of edges in all directions.  A rectangle is also fast but a little less accurate.  However, the rectangle fits into the corners of the image better.  A Gaussian (or bell curve) provides the most accurate smoothing.


Kernel Size

The height and width of the kernel selected above.


RGB Mode

For 24 bit images this selects which of the color components to process.  If Intensity is selected each pixel is converted to the IHS color space.  The I component is smoothed and the resulting I is combined with the original HS values, converted back to RGB and placed into the resulting, smoothed, image.


Sigma

If Gaussian smoothing kernel is selected above, this value is used to compute the shape of the curve.  A standard sigma is about the square root of the width of the curve.  A larger sigma value results in a narrower bell curve.


RGB Mode

For 24 bit images this selects which of the color components to process.  If Intensity is selected each pixel is converted to the IHS color space.  The I component is sharpened and the resulting I is combined with the original HS values, converted back to RGB and placed into the resulting, sharpened, image.


Kernel Size

The height and width of the kernel.


Gain

Controls the amount of sharpening.  Higher values will cause a greater effect will lower number will be somewhat more gentle.


Edge Filters ...


Type

Laplacian - An edge map operator created by taking the second derivative of a Gaussian curve.  Produces a tuned edge map where edges are represented as zero crossings.

Prewitt - a standard 3x3 edge map.

Roberts - a standard 2x2 edge map.  This creates thinner edge lines than the Prewitt or the Sobel but is more sensitive to image noise.

Sobel - a standard 3x3 edge map.


RGB Mode

For 24 bit images this selects which of the color components to process.  If Intensity is selected each pixel is converted to the IHS color space.  The I component is convolved and the resulting I is combined with the original HS values, converted back to RGB and placed into the resulting, edge map image.


Kernel Size

The height and width of the kernel. Used for the Laplacian kernel.


Gain

Controls the strength of the resulting Laplacian edge map.  Higher values will create stronger (brighter) results from lower contrast edges.


Result Form

Edge maps can produce signed values.  This selection determines how the signed values are to be stored in the resulting 8-bit image.

8 bit signed - converts the result to 8-bit signed values.  Values are clipped between -127 and +127.  Negative values appear as very bright pixels.

Absolute Value - converts the result to the absolute value.  Values are clipped between 0 and +255.

Raw - stores the lower 8 bits of the signed 16 bit result.  This works for small results.

Sign Centered - produces a 8-bit signed result except zero is shifted to the middle or center of the 8-bit range.  That is 0 to 126 are negative results and 128 to 255 are positive.  127 corresponds to 0.  This produces a more viewable image than 8-bit signed while still maintaining the sign.  Sign Centered images are also used to produce Watermark and Textures special effects.


Gamma Correction ...


Gamma Value

Sets the gamma display value.  The gamma value corrects for non-linearities in the image display or in the image sensor which created the image.  Black remain black, whites remain white, while the center values are shifted brighter or darker.  The value selected is displayed in hundredths.  That is a value of 150 indicates a gamma of 1.50.  A value of 100 equates to 1.00 which is the linear gamma (produces no correction).  Smaller number (<100) cause the image to darken as a whole.  Larger numbers (>100) cause the image to brighten.  The gamma selected here is used for display only and does not alter the image.


Dither Mode ...


Dither Mode

Bayer Dithering - Displays color images using the Bayer dithering algorithm.

Diffusion Dithering - Displays color images using the Diffusion dithering algorithm.

Windows Dithering - (Very Slow) - Displays color images using Windows dithering


Aliasing ...

Selects how large 1-bit images should be displayed into windows with lower resolutions.


Alias Setting

No Aliasing - The pixel from the source which is closest to the scaled position is used in the display.

Preserve Black - If a specified proportion of the original pixels in the neighborhood of the scaled pixel are black the displayed pixel will also be black.  The proportion is set with the Quality setting described below.

Scale to Gray - The source pixels are used as weights when computing the display pixels.

Quality - Used with the Preserve black setting.  This value determines the proportion of black pixel needed to set the display pixel black.


Auto-Color

When the Auto-color option is selected images will be displayed using an optimized palette which can be used by all images in all windows simultaneously.  When this item is not selected the palette of the image window which has the focus is used for display.  This may cause all other displayed images to be displayed with strange colors.  When the Auto-color is switched on all images are always displayable but their colors may be a bit off due to their sharing a common color palette.

Since full black and full white are always included in the display palette this option has not effect on black and white images.


Status Bar Display

When the Status Bar Display option is selected most imaging functions in this package will display a percentage done status bar at the bottom of the main window.  This horizontal bar graph displays the percentage done of the currently executing process.

This option defaults to off because its use can slow down the execution speed of many of the processes.  To optimize many processes you should turn off this feature.


Use DDBs for Display

Selects the method used for displaying images.  The images can be converted directly from their DIB internal format to the display buffer.  The other method is to convert the DIB to a DDB and then copy the new DDB directly to the frame buffer.  Even though less direct the second method is much faster.


Show Toolbar

Determines if the button toolbar is displayed on the top of the main display window.  This toolbar provides several of the most used functions as buttons which are quicker to find and use then their equivalent menu commands.  Turing off the toolbar frees up more display area of the main window.


The FX pulldown menu


Pixelate ...

Produces an effect which is often seen on images in which the identity of a person is to be hidden.  The resolution around the person's face to reduced to the point where the face is no longer recognizable.

The new image is composed of larger pixels which take on values generated from their same location in the original image.

Function

Square - Produces a square pixel output for each new pixel.

Dot - Produces a filled circle pixel output for each new pixel.

Pixel Size

X - The horizontal dimension of the output pixel size.

Y - The vertical dimension of the output pixel size.

Input Mode

Average - The output pixel value is computed from the average of the pixels from the original image.

Center - The output pixel value is taken from the center pixel value of the original image.

Maximum - The output pixel value is taken from the maximum pixel value of the original images pixel.

Minimum - The output pixel value is taken from the minimum pixel value of the original images pixel.

Background Color

When Dot is selected this pixel value is used to fill in any space between output pixels which do not completely overlap.

Radius

For Dot output this determines the radius of the output pixels.


Emboss ...

Produces an image that appears to be carved into stone or pressed into gray paper.  Also, the output of an embossed 8-bit gray scale image can be used to create a watermark or texture special effect.

The effect produces a flat gray image where there is no edges.  Edges appear as deviations from the gray.  The stronger the image edge the larger the deviation.

Direction

The direction from which the light source seems to be coming from.

Strength

The overall output strength.  Higher values (>1.0) produce stronger output values.  Number lower than 1.0 reduce the effect.

RGB Mode

For 24 bit color images this determines which color components to process.


Chroma Key ...

Chroma key allows a specified hue within the image to be replaced with pixel from a different image.  This is often seen with weather reports where the weatherman stands in front of a solid blue or green curtain.  The color of the curtain is then digitally processed to make it appear that the person is standing in front of a large weather map.

This effect works best with a solid background of a strong consistent color.

Background Image

The disk file name of the image that is to be placed into the image where the hue range is matched.  The background image will be resized to match the current window dimensions.  If the name of the background image is not known the browse button  can be pressed to search your disk drive for the desired file.

Hue

The hue of the pixels which are to be replaced.  This is divided into two values.

Center - the hue value at the center of the hue range to be replaced.  The center hue is displayed in a square to the right of the selected center value.

Range - the range on both side of center that the hue is allowed to vary and still match as a key.

Smooth

To reduce the sharpness between the original and the background image this value can be raised.  Larger numbers blend the two images when the hue is near the edge of the hue range.

Intensity Threshold

Since the hue of very dark pixels is not well defined and can match the hue range this threshold value allows darker pixels to be ignored.  The higher this number becomes the brighter and brighter pixels are ignored


Motion Blur ...

Produces an effect that make the image appear as if it moved when the camera snapped the picture.

Direction

The direction which the image moved.

Extent

The amount of the motion.  Larger number will make the image appear to moved further.

RGB Mode

The color component(s) of a 24 bit color image that are to be processed.


Texture Tile ...

Produces an effect that makes the image appear to be painted on a textured background.

Textures

A list of 9 pre-computed textures is presented.  Select the texture you wish to apply.


Twist ...

Produces an effect that make the image look as if is being view through a piece of water glass (the type used in many bathroom showers).

Length

The size in pixels of each region to be shuffled or twisted.

Twist Angle

The angle to rotate each group of pixels.

90 - Rotate each group 90 degrees

180 - Rotate each group 180 degrees

270 - Rotate each group 270 degrees

Random - Randomly rotate each group 0, 90, 180, or 270 degrees.


Diffuse ...

Shuffles pixels in the image producing a diffusing effect.

Dimensions

The dimensions of the region to be shuffled at a time.

X Resolution - The horizontal length of the shuffling region.

Y Resolution - The vertical length of the shuffling region.

Overlap

The amount of overlap for placing each shuffling region.  A value of zero places each region by the dimensions specified above.  By giving some overlap, the diffusing process appears more uniform.

X Overlap - the amount of overlap in the x direction.  Must be less then the x resolution.

Y Overlap - the amount of overlap in the y direction.  Must be less then the y resolution.


Blur ...

Blurs the image.  The blur is equal in all directions.

Amount

The amount of blurring to be applied.  Smaller numbers will apply less blurring.  Larger numbers will apply more.


Posterize ...

Reduces the number of levels of intensity a pixel in the image can have.  The value of each pixel in the image is assigned the pixel level that it is closest to.

Pixel Levels

The number of pixel values that is to be allowed.

Channel

For 24 bit color images this selects which of the color components to process.

Red - Process the red only.

Green - Process the green only.

Blue - Process the blue only.

All (RGB) - Process all components.


Intensity Dot ...

Subtracts a specified amount from each pixel in the image except for a specified dot region.  This is used to highlight a single person in a team picture or to darken the space around a person's portrait.

Center

The pixel location where the center of the dot is to be placed.

X - the x coordinate of the dots center.

Y - the y coordinate of the dots center.

Radius

The radius, in pixels, of the dot.

Inside - The inside radius.  No intensity will be subtracted from this region.

Slope - The number of pixels from the inside radius to gradually subtract more and more from until the constant subtraction value is to be applied.  Allows the effect to smoothly become apparent.

Subtract

Max - The amount to subtract from the region outside of the inside radius and slope.


Stitch ...

Produces an effect similar to emboss except edges produce a quilt stitch effect.

Direction

The direction from which the light source seems to be coming from.

Strength

The overall output strength.  Higher values (>1.0) produce stronger output values.  Number lower than 1.0 reduce the effect.


Watermark ...

Produces a watermark effect.

Watermark Image

The image to be used as the watermark.  It should be a sign centered 8-bit image (such as one produced via emboss or stitch).  The watermark image will be resized to match the resolution of the image to which it is being applied.


Add Noise ...

Add random noise to an image.  This effect can make an image look older or of poorer quality.

Type

The mathematical type of noise distribution.

Linear - produces equally common noise values through out the strength range.

Gaussian - produces noise which is distributed throughout the strength range according to a Gaussian or normal bell curve.

Binary - for binary image this type produces random 1 and 0 noise.

Strength

The highest amount any random noise event can add to or subtract from the original image pixel.  Higher values produce a more pronounced noise effect.

Hit Rate

The number of pixels to randomly skip between random noise strikes.  This value does not, however, affect the strength of the applied noise only how often it occurs.  Lower numbers produce more noise events in the image.  High values reduce the amount of noise events in the image.

Sigma

For the Gaussian noise type this value adjust the shape of the noise distribution curve.  Smaller values produces a noise distribution curve which tends to be closer to 0.

RGB Mode

For 24 bit color images this selects which of the color components to process.

Red - Process the red only.

Green - Process the green only.

Blue - Process the blue only.

All (RGB) - Process all components.