Tutorial: Image Blurring and Rotation with Intel® Integrated Performance Primitives

ID 751830
Date 6/30/2025
Public

Tutorial: Image Blurring and Rotation with Intel® Integrated Performance Primitives

Intel® Integrated Performance Primitives (Intel® IPP) is an extensive library of software functions to help you develop multimedia, data processing, and communications applications. These ready-to-use functions are highly optimized using Intel® Streaming SIMD Extensions (Intel® SSE) and Intel® Advanced Vector Extensions (Intel® AVX) instruction sets.

Intel IPP supports application development for various Intel® architectures. By providing a single cross-architecture application programmer interface, Intel IPP permits software application repurposing and enables porting to unique features across Intel® processor-based desktop and server platforms. Using the Intel IPP primitive functions can help drastically reduce development costs and accelerate time-to-market by eliminating the need to write processor-specific code for computation-intensive routines.

One key area of the Intel IPP library is image processing, which includes various operations on two-dimensional signals like filtering, geometric transforms, color conversion, and morphological transforms.

Discover how to use Intel® IPP image processing functions to implement image blurring and rotation in your application.

About This Tutorial

This tutorial demonstrates how to:

  • Implement box blurring of an image with the Intel IPP filtering functions

  • Rotate an image with the Intel IPP functions for affine warping

  • Set up an environment to build the Intel IPP application

  • Compile and link your image processing application

Estimated Duration

10-15 minutes

Learning Objectives

After you complete this tutorial, you should be able to:

  • Understand the basic concepts of Intel IPP image processing

  • Use Intel IPP functions for image filtering

  • Use Intel IPP functions for image geometry transformation

  • Develop an image processing application that loads an image from a BMP file and applies rotation and blurring after you press the arrow keys

  • Set up an environment to build the application

  • Compile and link your code with Intel IPP

More Resources

  • The Intel® Integrated Performance Primitives (Intel® IPP) Developer Guide and Reference contains detailed descriptions of function syntax, parameters, return values, library configuration, development environment, domain dependencies, and linkage modes.
  • The Intel IPP installation includes a collection of example programs that demonstrate the various features of the Intel IPP library, and the source code for the tutorial. If the Intel IPP installation directory is <ipp_install_dir>, the location is the archive in the folder, for example: 
    • On Linux*: <ipp_ install_dir>/share/doc/ipp/components_and_examples_lin.tgz 
    • On Windows*: <ipp_ install_dir>/share/doc/ipp/components_and_examples_win.zip

    The tutorials folder in the archive contains the source code for this tutorial.

See the Intel® Integrated Performance Primitives product page for additional resources.

Get Technical Support

If you did not register your Intel® software product during installation, please do so now at the Intel® Software Development Products Registration Center. Registration entitles you to free technical support, product updates, and upgrades for the duration of the support term.

For general information about Intel technical support, product updates, user forums, FAQs, tips and tricks and other support questions, see Intel® Product Support.

NOTE:

If your distributor provides technical support for this product, please contact them rather than Intel.

For technical information about the Intel® Integrated Performance Primitives (Intel® IPP) library, including FAQ's, tips and tricks, and other support information, see the Intel® IPP forum.

Product and Performance Information

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.

Notice revision #20201201