Software is an important element in any vision system. Depending on your specific application, the software you need will differ. Imaging Technology offers 3 basic software packages: ITEX, MVTools, and Sherlock32. ITEX is a hardware level driver package that allows you to interact with the frame grabber and camera. It is the most basic of the 3 packages. MVTools is a complete set of C/C++ - based software tools for vision professionals developing machine vision systems. With programming knowledge, you can create completely customized software to suit your specific needs. Sherlock32 is a graphic user interface (GUI) which employs the libraries in MVTools. Sherlock32 is a complete general purpose Windows-based machine vision software that lets you sketch out sophisticated applications, perform "what if" testing, and run, all in a friendly point-and-click graphical environment. No programming required!
Following is a discussion of key features in each software package. ITEX MVTOOLS SHERLOCK32
ITEX
ITEX is a "foundation class" library used in every application. ITEX functions control the hardware and included is a set of high level API's for making complex board functions easier.
For the PCVision and IC- products, ITEX is used to:
Set and adjust the camera parameters (timing, source, and etc.)
Partition the linear image memory into individual "frames", i.e., creating two frames to allow simultaneous image acquisition from a camera and transfer of the previous image to the host memory ("double buffering").
Control the operation of the PCVision or IC-PCI, including setting options for data clipping, rotation, and sub-sampling.
Acquire images from the camera and transfer them to the host CPU memory. Single frames or sequences of frames can be acquired and transferred, limited only by the host CPU speed and memory size.
Control the display of images on the host CPU display
Interface with IPL to provide processing (see IPL Library)
Interface to MVTools to provide machine vision processor
Use of interrupt & threads on Win32 for maximizing CPU performance
ITEX for the IM- products includes the above, and adds control of the pipelined processing elements - the "Computational Modules" or CMs. ITEX commands are used to set up the data paths through the CMs, select CM operations, and to "fire" the pipe by sending data through the CMs.
Features & Benefits
Save time and money - ITEX "encapsulates" the knowledge about ITI's hardware so you don't have to learn the hardware details while programming your application
Easy to use - ITEX commands are highly integrated, logically constructed, thoroughly documented and comes with examples you can "cut" and "paste" right into your application
Lightening fast execution - ITEX is optimized for fast control of ITI's hardware and for transferring images from the board at maximum PCI bus rates
Device independent and portable - ITEX runs on all of ITI's hardware making it easy to move your application to higher performance or lower cost hardware
Fast development of applications - Extensive demos and source code demos give you a framework for quickly developing your application
Maximizes hardware capability - Support for standard and non-standard input and a wide variety of display formats
Non-destructive hardware overlay sipport with color keying on VGA cards with overlay surfaces
Non-desctuctive software overlay support on any VGA card
MVTools
MVTools, the core algorithm library from Sherlock32, is a complete set of C/C++ - based software tools for vision professionals developing machine vision systems. Designed for speed, ease of use, and precision, MVTools offers a comprehensive library of vision development tools that significantly reduces time-to-market. By using MVTools, Applications Developers are assured of accuracy, robustness and cycle time before the first line of code is written.
Features & Benefits
Robust and proven software library of core machine vision routines - Lets developers focus on their specific competitive issues while providing speed and accuracy normally found only in intensively engineered solutions.
Use the Windows environment of Sherlock32 as a prototyping tool - Quickly determine the performance of each algorithm before writing the first line of applications code
Designed to fully exploit Intel MMX technology and advanced optimization techniques - Many MVTools routines are available in both C++ and MMX calls.
Single source solution - Lower learning and training investment when deploying both low volume and high volume applications
Subpixel accuracy - Measurements returned have been fully tested to assure you they are the most accurate in the industry.
Develop in various environments - Program in C++ or Visual Basic.
Applications
Alignment
Gauging
Flaw Detection
Presence/Absence
OCV (Optical Character Verification)
Robot Guidance
Read Barcode 39
Whether you have a high or low volume application, use Sherlock32 as your evaluation tool. Using Sherlock32, you can completely prototype the application without writing a single line of code. Once satisfied with performance, deployment can be executed in three ways.
For low volume applications, you can immediatly install using the Sherlock32 environment without additional development time.
If you want to put a custom user interface on Sherlock32, you can write a Visual Basic program calling the Sherlock32 application from server mode.
For high volume applications, you can write a complete custom application calling MVTools, the core machine vision algorithms from Sherlock32. Programming using MVTools after prototyping in Sherlock32 assures performance before spending a lot of development time.
Library, DLL & Header Files for Algoirthms, Image Utilities and Imager for Win32 (NT or 95)
MVTools examples in source and executable form
5 "C", 2 "C++" , and 1 Visual Basic examples
On-line and printed user manual
Camera Configurator
Hardware set-up utility
Win32 ITEX (NT or 95)
- Hardware driver level functions and API
Source code for Imager to allow user to modify
MVTools runs on Microsoft Windows NT and Windows 95/98. If your computer has MMX technology, MVTools will automatically use it to greatly increase the speed of operations such as image subtraction for "golden template" defect detection.
Geometry - Line intersection, Line perpendicular, Point to line distance, Point to point distance, Angle, Bisector, Line length
Curve Fitting - Line, Circle, Get line of pixels from an image
High-Level Tools
Search - Normalized correlation for pattern matching
Bar Code - Set constraints, Read, Report bar code 39
Sherlock32
Creating custom machine vision applications that are both robust and fast can be very challenging and time consuming. Imaging Technology's Sherlock32/MVTools integrated products, with vision developers can quickly try various image processing and analysis methods and when satisfied program the complete application in either C++ or Visual Basic. This method empowers OEMs and System Integrators with the ability to focus on the application without spending time developing core vision algorithms. Faster development means faster time to market without sacrificing.
Start with Sherlock32, our complete general purpose Windows-based machine vision software that lets you sketch out sophisticated applications, perform "what if" testing, and run, all in a friendly point-and-click graphical environment. No programming required! Sherlock can be used to determine Lighting; Optics; Place ROIs; Choose algorithms; Determine accuracy & repeatability and also to Determine cycle time. You can deploy your system at this point, or you can design a Visual Basic front-end or completely write a custom application by exporting your Sherlock32 algorithms into MVTools.
Click here for a detailed description of Sherlock32