Advanced Imaging


Advanced Imaging Magazine

Updated: July 8th, 2008 05:26 PM CDT

SDKs Provide a Wealth of Capabilities

Power, Ease of Use and Flexibility
Horde3D is a small open-source 3-D rendering SDK.
Media Cybernetics' Image-Pro Plus.
Mercury Computer Systems, Inc.'s MultiCore Plus SDK 1.0, an intuitive programming environment for the Cell Broadband Engine and other multi-core processors.

By Lee J. Nelson
Contributing Editor

With the recent addition of its HDevelop Engine, MVTec Software GmbH (Munich, Ger.) incorporates an IDE into the HALCON software library. Now, the machine vision SDK can export application code directly to C++, C, C# or Visual BASIC under Windows, Linux and UNIX. And, MVTec adds password protection with release of HALCON version 7.1.1. HALCON also contains conventional machine vision features for mensuration, object matching, character recognition, data and bar code reading and blob analysis.

For positioning and measurement applications, HALCON provides 3D operators, on-line calibration, instruction and dual-camera support. According to Dr. Lutz Kreutzer, Manager of Public Relations and Marketing, two cameras significantly abet stereo techniques. Such a set-up can "determine the depth of each single object-point based on transformed images via the distance of corresponding pixels ... and can deliver sub-pixel or, rather, sub-millimeter positional data to a robot."

A 3D capability exists for single-camera systems, too. After calibration, HALCON constructs an entity's 3D position in "world coordinates" (employing monocular reconstruction). A similar approach makes use of circles—like drill holes—which are imaged on the camera detector as ellipses. By analyzing those ellipses, 3D data are calculated. Depth information is computed from an object's reflectance which is resolved by illuminating it over a range of orientations.

Horde3D from Next Generation Graphics Engine (Neus, Ger.)—a spin-off of the University of Augsburg (Ger.)—is a small open-source 3-D rendering SDK. Conceived to craft the stunning visual effects exacted by next-generation photo-realistic infotainment, the Horde3D engine is lightweight and conceptually clean with a relatively short learning curve. A simple intuitive interface, accessible from virtually any programming language, is particularly suitable for rendering large crowds of animated characters. Deferred shading, a novel technique for lighting and shadowing, is the hallmark of Horde3D. The methodology first renders material attributes like diffuse reflection color (albedo) or specular mask and fragment-specific features to an intermediate repository, the G-Buffer. Actual computations are done in a post-processing step, using the G-Buffer contents. An advantage of deferred shading is its ability to handle a large number of inputs more adeptly than conventional practice; although, it doesn't support anti-aliasing ... a drawback which principal programmer, Nicolas Schulz, hopes to remedy in the near future.

Stemmer Imaging GmbH's (Puchheim, Ger.) release 9.0.1 of Common Vision Blox adds Microsoft and Borland compilers and ActiveX and LabView controls (National Instruments Corporation, Austin). A new file format enables users to load images from a hard-drive or over a network, while an emulator tests the application by running a continuous simulation with those images to mimic a real-time frame grabber. Once created, it can be configured for alternate hardware since Common Vision Blox addresses specifications for the GigE Vision standard from the Automated Imaging Association (Ann Arbor, Mich.) and the GenICam standard from the European Machine Vision Association (Frankfurt am Main, Ger.) along with Firewire (EIA-1394) and USB.

Subscribe to our RSS Feeds