Intel Corp. (Santa Clara, CA) chose the recent Computer Vision and Pattern Recognition conference (Hilton Head Island, SC) to unveil its Computer Vision Library—a set of image-processing functions optimized to run on Intel microprocessors. Unlike Microsoft's Vision software-development kit, which includes classes and functions for working with images but no image-processing functions, Intel's Computer Vision Library includes image-processing, recognition, measurement, and geometric image-processing functions. Freely downloadable from the Web: www.intel.com/research/mrl/research/cvlib/, the 53.8-Mbyte file also includes camera calibration, face recognition, and feature-tracking applications.
Started two years ago by Intel's Visual Interactivity Group, this package is the first open-source release of the Vision Library. "Our goal is to establish an open-source vision community and to provide a site where the distributed efforts of this community can be consolidated and performance optimized," says Gary Bradski of Intel's Microprocessor Research Laboratory.
Intel Computer Vision Library includes a camera-calibration tool that computes parameters such as focal length, principal point, and distortion coefficients.
"To involve and benefit from the combined expertise of the vision community," says Bradski, "we have recruited a committee of experts to participate in acceptance decisions for new library content and in setting library direction." Intel's contribution is to provide research, host the library on its Web site, and contribute assembly-language-optimized versions of the most compute-intensive codes.
Two applications that use the image-processing functions contained within the library are automatic camera calibration and face recognition. Developed by Intel designers Bradski, Jean-Yves Bouguet, and Vadim Pisarevsky, the camera-calibration tool automatically tracks a calibration object and then applies a calibration algorithm developed by Zhengyou Zhang at Microsoft Research (Redmond, WA). The Vision Library's camera-calibration tool can calibrate a video camera in a few seconds.
"During operation," says Bouguet, "a flat checkerboard pattern is placed in front of the camera, and the program automatically acquires a number of images. These images are then used to compute the focal length, principal point, and distortion coefficients of the camera and the three-dimensional position of the pattern for each image. "Because the corners of the pattern are located automatically on each image, the entire procedure is automatic," says Bouguet. "Once calibration is complete, the program can generate undistorted video images in real time."
Using an algorithm developed by researchers Ara Nefian and Monson Hayes at Georgia Tech University (Atlanta, GA), the Vision Library's face-recognition tool lets Intel-based PCs read a facial image from bmp files or from a USB-based camera. "Previous approaches to face recognition included geometric feature-based methods, template-based methods, and more recently, model-based methods; our approach uses a statistical network," says Nefian.
"Significant facial features include hair, forehead, eyes, nose, and mouth—features that occur in a natural order, from left to right, top to bottom, even if the images undergo small rotations," Ara says. As a result, facial images can be modeled using a pseudo two-dimensional (2-D) statistical method called the embedded hidden Markov model (eHMM). It assigns each of the facial regions to a state in a 2-D grid. In this method, the states themselves are not observable; rather, they yield observation vectors that are statistically dependent on the state of the eHMM. These vectors are used in the face-recognition process. According to Nefian, this eHMM achieves recognition rates of 98% to 100%.