Intel® Image Processing Library v2.5

Product Release Notes

Contents

Intel Image Processing Library 2.5
System Requirements
Compiler Support
License Definitions
Installation
Library Use
What's New in Version 2.5
History
Known Limitations in Version 2.5
Technical Support and Feedback

Intel Image Processing Library 2.5

The Intel® Image Processing Library provides a set of low-level image manipulation functions in standard DLLs and static libraries form. The functions are optimized for Intel® Architecture processors, and are particularly effective at taking advantage of MMX™ technology, the Streaming SIMD Extensions (SSE) and SSE-2.. Currently, versions have been developed for the Intel486™ and compatible processors, the Pentium® processor, the Pentium Pro processor, the Pentium processor with MMX technology, the Pentium II processor, the Pentium III processor, and, most recently, the Pentium 4 processor.  A separate DLL is available for each processor.

The library contains functions that perform filtering, thresholding, and transforms (FFT, DCT, geometric), as well as arithmetic and morphological operations. The library uses a flexible image format, supporting channels of 1-, 8-, 16-, and 32-bit integer pixels, as well as 32-bit floating point pixels, with an arbitrary number of channels per image. Conversion to and from the Windows* DIB (device independent bitmap) image format is supported, as are conversions between color and gray-scale.

Major changes from the Image Processing Library 1.0 include many more geometric functions, mask region of interest, floating point support, example code, and color space conversions.

Changes since version 2.2  include further optimization for Pentium III processors and support for the Pentium 4 processor.

Additional information on this software as well as other libraries is available at the Intel Performance Libraries homepage.

System Requirements

The Intel® Image Processing Library requires the following software and hardware:

Recommended hardware: A Pentium II,  Pentium III, or Pentium 4 processor-based PC with memory appropriate to the image sizes needed.

Software Requirements: Windows* 95, 98, 2000, or Windows NT* 3.51 or 4.0.

Compiler Support

Intel® C/C++ Compiler, Borland* C/C++ 5, or Microsoft* Visual C/C++* 4.2 or later. Other compatible compilers have not been tested extensively but might work.

License Definitions

Please see the license file ipllic.htm for the license definitions and restrictions on the library.

Installation

You can install the Image Processing Library package by downloading and running the appropriate self-extracting installation files from the Web site.  See the  Intel Image Processing Library homepage for updates, when available.

Library Use

To get started using the library, the following steps are required:

What’s New in the Intel Image Processing Library Version 2.5

History

New in v2.2:

New in v2.1:

New in v2.01:

New in v2.0:

  • Many new geometric operations: Affine, Bilinear, Perspective, Shear
  • Mask Region Of Interest (ROI)

A field IplImage* maskROI was added to the IplImage header. This parameter is used by most functions to select whether an operation is done on a pixel-by-pixel basis. It is a 1-bit, 1-plane image that, when applied to the source image, determines which pixels are used for an operation; when applied to the destination image, it determines which pixels can be set in that destination.

  • 32-bit floating point pixel depth

Support is limited to some functions. See Appendix A of the manual for details of which functions support IPL_DEPTH_32F. Key support for this includes: AddSFP, SubtractSFP, ...;IplCreateConvKernelFP; Convolution, dyadic arithmetic operations, FFT

  • Color conversions

Many color conversions to and from RGB have been added. These include: YUV, CIELUV, CIELab (XYZ), YCC, and YCrCb.

  • New functions: iplAbs, iplFixedFilter, iplCloneImage, iplMoments

The library now includes functions to calculate the absolute value, perform various pre-determined filters, create a copy of an entire image including the header, and calculate the 0-3rd order moments of an image.

  • API and behavior changes

IplCoord* mapping parameter was removed from all functions and the IplCoord structure was eliminated

Alpha compositing functions now support in-place operation

All coordinate and size pairs have been reordered to (x,y) or (width,height).

iplAllocateImage now includes a flag to opt to fill the image data or not

Convolution kernel values changed from int to char; for conversion convenience, the functions iplCreateConvKernelChar and iplSetConvKernelChar have the same interface as the old create and set functions.

See above and below about alpha channel behavior.

Note: The header file conv1_2.h and executable conv1_2.exe support this conversion. The conversion header is the best reference for the changes made to the API.

  • __cdecl changed to __stdcall

The IP Library can now be used without modification or hassle with the Borland compiler in a C++ program; it also allows compatibility with Microsoft Visual Basic*. This change should not otherwise be noticable, except in the declaration of callback functions for tiling.

  • Bug fixes and performance enhancements

Thread-local storage fixes for multi-thread safety

A specified alpha channel should not be operated upon by any but alpha compositing operations; several exceptions to this rule have been found and most were corrected. Note: to have a given function operate on the alpha channel, set alphaChannel in the header to 0 for that call.

A problem that resulted in a missing line was fixed in geometric functions

iplTransformFromDIB no longer resets the alphaChannel field.

A problem with mask processing for an arithmetic function on a two-channel image was corrected

A problem with iplConvolve2D, 16S data, and a shift-only kernel was corrected

Other problems were corrected in Open, Close, MaxFilter, Convolve2D, FixedFilter, Mirror, Norm, yCrCb2RGB.

The performance improvement in some geometric operations is significant; other faster functions include: iplConvertToDIB, iplReduceBits; iplConvolve2D, iplErode, iplDilate.

Known Limitations In Version 2.5

  • Tests indicate several failures with iplMoment on a Pentium® III processor when using the Borland compiler.
  • The tutorial uses a test certificate for the user to permit the execution of the examples. This certificate results in an ugly dialog box from Internet Explorer*.

Technical Support and Feedback

If you would like to provide feedback or if you encounter problems with installation or usage of the Intel Image Processing Library, we want to hear from you. Submit all questions and problems via our Intel Premier Support website. This web site requires either Microsoft* Internet Explorer* 4.0 (or higher) or Netscape Navigator* 4.0 (or higher). The following are guidelines for getting access to and using Intel Premier Support:

You must first register for a Premier Support account. Go to the Intel Image Processing Library support page and click on the Service & Support link to find the account request information.

Once you have your account, the URL to the Intel Premier Support website is https://premier.intel.com

If you have forgotten your password, please email a request to: quadsupport@mailbox.intel.com

If you are unable to access your Intel Premier Support account, or it has not been enabled, contact developer_support@intel.com

To submit an issue via the Intel Premier Support website:

  1. Go to https://premier.intel.com/
  2. Type in your Premier Support Login and Password
  3. Click the "Submit" button
  4. Read the Confidentiality Statement and click the "I Accept" button
  5. Click on the "Submit Issue" link in the left navigation bar
  6. Choose "Initiatives, technologies & tools" from the "Product Type" drop-down list
  7. Choose "Intel® Performance Library Suite" from the "Product Name" drop-down list.
  8. Enter your question and complete the fields in the windows that follow to successfully submit the issue.

Please follow these guidelines when forming your problem report or product suggestion:

  1. Describe your difficulty or suggestion.
    For problem reports please be as specific as possible, so that we may reproduce the problem. Please include a small test case if possible.
  2. Describe your system configuration information.
    Be sure to include specific information that may be applicable to your setup: operating system, version numbers of the specific library, and anything else that is relevant to helping us address your concern.

Contact us with your suggestion or problem report using your Intel Premier Support account. A technical support engineer will respond within one (1) Intel business day.

Intel, the Intel logo, and Pentium are registered trademarks of Intel Corporation.
Intel386, Intel486, and MMX are trademarks of Intel Corporation.
*Other brands and names are the property of their respective owners.

Copyright 2000, Intel Corporation, All Rights Reserved.