Image Processing

LEADTOOLS has over 200 image processing functions, some of which are typically found only in high performance end-user programs such as PhotoShop. The following overview divides these functions according to their availability in the different products. Those functions listed in the Raster Image Processing section are available in the Raster, Document and Medical toolkits. Functions described in the Document Image Processing section are available in the Document and Medical toolkits. Functions described in the Medical Image Processing section are available only in the Medical toolkits.

Raster Image Processing:

The raster image processing functions are separated into four categories:

Transforms: LEADTOOLS transforms include resize, resample (interpolated resize), rotate (.01 degree), flip, invert, reverse, crop, underlay, shear, transpose, fill, and combine bitmap (using your choice of mathematical and Boolean operations).

Filters: LEADTOOLS color filters include sharpen, blur, intensity, contrast, gamma correct, invert, hue and saturation, histogram equalize, emboss, mosaic, posterize, median, average, oilify, edge enhance, solarize, and add noise. LEADTOOLS spatial filters (which can be pre-defined or user-defined) include gradient, laplacian, sobel, prewitt, shift and difference, line segment. LEADTOOLS binary filters include erosion, dilation, max and min.

Drawing: With the LEAD DeviceContext, LEADTOOLS gives you access to the bitmap surface, on which you can draw or paint using Microsoft Windows GDI functions (such as TextOut, BitBlt, Ellipse, and Rectangle).

Region of Interest: The LEADTOOLS region of interest makes it possible for you to process or paint only a specific portion of an image rather than the entire image. Regions can be comprised of any combination of rectangles, ellipses, rounded-rectangles, freehand shapes, polygons, transparent color and more.

Most of the LEADTOOLS functions that change the appearance of an image act on the bitmap (not just the display). This is an important distinction, because the changes become permanent when the bitmap is saved to a file.

To change the appearance of the image in a bitmap, you can do the following:

image\sqrblit.jpg Define the bitmap as a display surface where you can use Windows graphics device interface (GDI) functions for drawing or adding text.

image\sqrblit.jpg Automatically trim a bitmap to remove blank space around the edges.

image\sqrblit.jpg Rotate the image. (Angles can be precise to 100th of a degree.)

image\sqrblit.jpg Do fast rotation in 90-degree increments

image\sqrblit.jpg Shear the image in the fashion of a parallelogram. (Angles are precise to 100th of a degree.)

image\sqrblit.jpg JPEG and CMP compressed images can be rotated in 90 degree increments or flipped with no loss of quality.

image\sqrblit.jpg Change the orientation by flipping the image horizontally or vertically.

You can adjust colors and intensities as follows:

image\sqrblit.jpg Change brightness using a flat scale.

image\sqrblit.jpg Change brightness using gamma correction.

image\sqrblit.jpg Change contrast.

image\sqrblit.jpg Stretch the range of intensities.

image\sqrblit.jpg Remap intensities using a lookup table.

image\sqrblit.jpg Create look up tables based on points on a curve or a mathematical function.

image\sqrblit.jpg Invert colors.

image\sqrblit.jpg Change hue and saturation.

image\sqrblit.jpg Use the Histogram equalize function to bring out the detail in the dark areas of the image.

image\sqrblit.jpg Fill with a specified color.

image\sqrblit.jpg Get and put colors of individual pixels.

You can apply the following kinds of conversions:

image\sqrblit.jpg Halftone for display or printing.

image\sqrblit.jpg Sharpen or blur.

image\sqrblit.jpg Posterize, specifying the number of color planes.

image\sqrblit.jpg Mosaic, specifying the tile size.

image\sqrblit.jpg Emboss, specifying the lighting direction.

image\sqrblit.jpg Soften an image using an average filter.

image\sqrblit.jpg Reduce noise using a median filter.

image\sqrblit.jpg Add noise in any or all color planes.

image\sqrblit.jpg Apply an oil-painting effect.

image\sqrblit.jpg Apply a solarization effect.

image\sqrblit.jpg Picturize with a list of images or a single image.

You can use filters to do the following:

image\sqrblit.jpg Detect ranges of intensity.

image\sqrblit.jpg Detect edges using gradient or Laplacian edge detection.

image\sqrblit.jpg Detect lines using Sobel, Prewitt, shift and difference, or line segment detection.

image\sqrblit.jpg [DLL only] Implement your own spatial filters.

image\sqrblit.jpg Combine images using boolean and arithmetic operators, and color masking. (This is useful for combining filtered images with originals.)

image\sqrblit.jpg Combine two images so that one appears to be an underlying texture of the other.

image\sqrblit.jpg Combine multiple images to create a new image that resembles the current image.

image\sqrblit.jpg Apply Fourier Transforms to images.

image\sqrblit.jpg And many other effects such as: Swirl, Ripple, Radial Blur, Impressionist, Wave, Shear, Remove Redeye, Cubism, Glow, Age, etc.

You can use low-level functions to change parts of an image as follows:

image\sqrblit.jpg Get and put rows of image data.

image\sqrblit.jpg Get and put parts of rows.

image\sqrblit.jpg Get and put the colors of individual pixels.

image\sqrblit.jpg Process a region within a bitmap

The LEADTOOLS Raster Image Processing features are available in the following products:

LEADTOOLS Raster Imaging

LEADTOOLS Raster Imaging Pro

LEADTOOLS Raster Imaging Pro for .NET

LEADTOOLS Document Imaging

LEADTOOLS Document Imaging Suite

LEADTOOLS Medical Imaging

LEADTOOLS Medical Imaging Suite

Support for the Raster Image Display features is provided for the following programming interfaces:

ActiveX

API

Class Library

COM

.NET

VCL

Document Image Processing

To support Document Image Processing, LEADTOOLS incorporates specialized technology optimized for use with bitonal (2-color or black/white) images such as scanned text documents, line art or technical drawings. This includes the ability to do fast rotation in 90-degree increments.

To change the appearance of the image in a bitmap, you can do the following:

image\sqrblit.jpg [Document/Medical only] Automatically straighten (deskew) a 1-bit image.

image\sqrblit.jpg [Document/Medical only] Remove specks from (despeckle) a 1-bit image or perform other document clean-up operations

Apply filters to do the following:

image\sqrblit.jpg [Document/Medical only] Apply morphological (binary) filters to erode or dilate black objects.

The LEADTOOLS Document Image Processing features are available in the following products:

LEADTOOLS Document Imaging

LEADTOOLS Document Imaging Suite

LEADTOOLS Medical Imaging

LEADTOOLS Medical Imaging Suite

Support for the Document Image Display features is provided for the following programming interfaces:

ActiveX

API

Class Library

COM

.NET

VCL

Medical Image Processing

In addition to the capabilities described for Document Imaging Processing, Medical Imaging Processing capabilities include support for 1-16, 24, and 32 bit color as well as complete support for 12 and 16 bit grayscale image processing, display, window-leveling and LUT processing. The grayscale support includes support for 16-bit grayscale TIFF. The window-leveling capabilities allow you to develop applications that can detect and set LowBit and HighBit for image data, display images with automatic LUT intensity expansion, or set LUT entries and ranges with specific values and gradients. You can also develop applications that can display images through the LUT without changing the data, or process the image data using the LUT.

The LEADTOOLS Medical Image Processing features are available in the following products:

LEADTOOLS Medical Imaging

LEADTOOLS Medical Imaging Suite

Support for the Medical Image Display features is provided for the following programming interfaces:

ActiveX

API

Class Library

COM

.NET

VCL