Special
Tools for demanding imaging applications
Machine
Vision Software
Increased
production speed, more complex tasks and high-resolution, high-speed
cameras require more and more computing power for imaging applications.
The Common Vision Blox GPU processing tool is the
perfect solution
GPU and CPU - Perfect teamwork maximises
performance. In order to increase system performance it
is mandatory to use optimised algorithms and to distribute computing between
more processors or processor cores. Since its first release Common
Vision Blox supports multi-threading and multiprocessor systems
and, thanks to its open architecture, offers the developer full
control of how the application distributes its processor load.
spaAs
graphics cards are designed especially for image processing and have gone
through tremendous improvements to follow the requirements of the gaming
industry, the logical consequence is to use the GPU also for imaging.
Thanks to their vast use in the mass market, GPUs are available at an
incredible price/performance ratio and are therefore the perfect
solution for many tasks in imaging applications. In addition
the graphics processors out-perform other imaging acceleration methods
in many technical aspects, even compared with the fastest available FPGAs.
The Common Vision Blox GPU processing tool is the perfect solution, enabling
the power of graphics processing units (GPUs) to be used for imaging applications:
spac-- Use
the graphics card as additional independent CPU
spac-- Works
asynchronous to acquisition
spac-- Allows
pipelining of several tasks
spac-- Based
on High Level Shader Language (part of Microsoft DirectX)
spac-- Predefined
modules for standard tasks
spac-- Own
algorithms can be developed flexibly using HLSL
spac-- Manufacturer
independent
Why use the CVB GPU Processing tool?
As both processors have their individual strengths, it is the perfect
teamwork of GPU and CPU that makes the difference. In addition it has
to be noted that not every algorithm is suitable for transfer to the GPU
and of course the acceleration has to offset the additional transfer.
The big advantage of CVB; however, is that several algorithms
can be executed on the image before it is transferred back.
The CVB GPU Processing tool offers maximum performance
by:
spac-- Freeing the programmer
from the complex programming of DirectX
spac-- Taking
care for the memory management on the host computer and the graphics board
spac-- Organising the data
transfer between host and graphics board
spac-- Allowing image access
before and after GPU processing
spac-- Processing image
data at full camera speed
spac-- Supporting
all common acquisition technologies
Maximum flexibility is secured as the GPU is programmed by uploading the
HLSL code modules upon program start or even during runtime.
Skillful use of GPU image processing avoids the need for special
hardware even in applications with extremely high data throughput.
The CVB GPU processing tool combines the DirectX-API and the High Level
Shader Language (HLSL) compiler from Microsoft together with functions
in the Common Vision Blox software library. It enables developers of imaging
software to transfer images between the host and the GPU and therefore
use all processors in the system in an optimum way. Functions for GPU
processing can be called from a CVB application without any additional
GPU programming experience.
Multiple predefined GPU functions implement tasks such as image filtering,
point operations between two images, parallel processing of four monochrome
images, transformations from RGB to HSI and Bayer to RGB formats, flat
field corrections, rotation and scaling of images.
Experienced HLSL programmers can also implement their own code on the
GPU. To optimise the image data transfer between main memory and GPU it
is also possible to combine several algorithms within the graphics card
by using the open programming possibilities of the HLSL language.
Adept Electronic Solutions are "The Machine Vision and Imaging
Specialists" and distributor of Stemmer products in Australia and
New Zealand. To find out more about any Stemmer machine vision products,
please email us at: adept@adept.net.au
or call us at Perth (08) 92425411 / Sydney (02) 99792599 / Melbourne
(03) 95555621 or use our online contact
us page.
|