- EzCheck Image : eCImage
- Image Processing : eCImg Group
- Template Matching : eCTM
- Blob Analysis : eCBlob
- Optical Character Recognition : eCOCR
- 3D Calibration : eCCalib3D
- Gauge/Measure : ePointGauge, eLinegauge, eCircleGauge, eRectangleGauge.
- ezCheck Utility
- USB Hardware Key
EzCheck Vision Library is an “Image processing and analysis library” provided by ICP DAS. It helps users to create their own machine vision system easily and fast.
EzCheck Vision Library supports several image file types and provides many basic image processing functions, and some useful advanced functions, such as OCR (Optical character recognition), Image Calibration, Template Matching, Gauge, etc. Along with Utility and demo programs, Users may realize how to develop systems with EzCheck Vision Library.
Provide utility software for users to test and verify – EzCheck Utility
Users can fully experience the capability of EzCheck Vision Library through the friendly utility software which is developed with EzCheck Vision Library.
USB Hardware Key protection and leveling package
To protect customer’s rights, USB hard key is applied to EzCheck Vision Library to classify the packages of the library and manage the license.
Provide sample programs for multiple development platforms
By referencing the open source sample programs, users can learn how to develop applications by EzCheck Vision Library in short time.
Sample programs of Borland C++ Builder 6.0 and Visual C++ 6.0 are now available.
Support the image capture of cameras
Users can capture the images of cameras through EzCheck Vision Library. The integration of software and hardware will be very efficient.
Fig.2. EzDetect－detects the impurities in the bottle
Fig.3. Solar wafer OCR.
Fig.4. Diamond blade thickness detection.
In order to defend the rights of users who buy EzCheck Vision Library, every EzCheck Vision Library will be protected by an USB Hardware Key from ICP DAS. ICP DAS also provides several packages of EzCheck Vision Library to fit different requirements of different users.
If users want to change or upgrade their packages, it is necessary to get the serial number of the USB hardware key through an upgrade tool built in EzCheck Utility. Send this serial number to ICP DAS by email and then an upgraded serial number will be delivered to users. Users can put it into the upgrade tool to finish the upgrade process for advanced functions.
The eCImage is the core of EzCheck Vision Library, all functions in the library must depend on it.
Multi-format image file access
The eCImage supports several formats image file such as Bmp, Jpg, Tif, and Png for loading and saving. The image capturing of cameras is also supported by eCImage.
Image pixel access
Every pixel of an image is free to get or set its value of RBG or Gray-Level.
Users can resize the image by setting the absolute size or ratio.
The core of processing and analysis functions
All of the image pre-processing and analysis are done in the eCImage. Users can get the processed results from it.
Fig.5. The eCImage supporting architecture.
The EzCheck Vision Library provides many practical and common basic image processing functions. Users can quickly and easily to do a variety of image pre-processing. Main Feature Including several common image pre-processing functions.
- Color Channel
Easy to learn and easy to use
Users can use functions of eCImg Group without any background knowledge of image processing.
Support ROI operation
Majority of the functions can process the image in the region of interest while leave the rest not processed.
Fig.6. Threshold can only perform on ROI.
The eCTM is a gray-level template matching library which can search similar matching areas to a specific template on the image. Users can assign an image as template, search for its matching areas on another image, and then obtain the location and similarity of the “matchings”. Through the built-in functions Users can get images with matching information marked on it.
Fig.6. The eCTM perform on an image of ICs.
The matching is based on “Correlation coefficient matching” algorithm. Users can search the matching areas which have assigned similarity range.
Users can assign the similarity range before matching to reduce unnecessary information with low similarity.
The matching results can be sorted and selected by similarity or coordinates.
Every matching result contains similarity and coordinates. Users can sort and select the matching results to get necessary information.
Output the matching results into the text files.
Users can output the matching results into the text files for later validation and check.
Output the image with similarity value and rank marking on it.
Through the eCTM, Users can get the image marked with matching results, such as the similarity value and rank as well as the location of similar sections on it.
Fig.7. An Image with all matching results marked on it.
Output the image with single matching marking on it.
Through the eCTM, Users can output the image with markings of single matching result such as frame effects, similarity value and similarity place on it.
Fig.8. An Image with single matching result marked on it.
The eCBlob is a blob analysis library that can analyze isolated areas and connected areas which we called them “blob” on the image. Users can sort or select blob information such as location, gravity center, measure of area, etc, and even merge the blobs nearby each other.
Fig.6. Results of eCBlob perform on a CT image of knee bones.
Analyze the blobs on the image and mark them by different color.
Each blob will be marked by unique color while the non-blob areas are shown in black color.
Support the selection and sorting to the result of Blob Analysis
Every blob contains information such as measure of area and location, etc. Users can sort and select the blob by those features to get rid of unnecessary information.
Fig.7. The selecting of the eCBlob can filter unnecessary blobs.
Support the function of merging nearby blobs
Except selecting the blobs, Users can also merge them together. It is very important to merge the blobs before OCR which will be introduced later.
Fig.8. The merging of the eCBlob can merge nearby blobs.
Get image of connected or selected blobs
Users can output the images with connected or selected blobs which can be useful to other application and validation.
The eCOCR is an Optical Character Recognition library. With the trained database, Users can recognize character from several languages such as Chinese (Simplified and Traditional), Korean, Japanese, English or even numbers on the image.
Fig.6. The eCOCR recognize the characters on an image with Japanese characters painting on it.
Support numbers and characters recognition from several languages. As long as the OS can display that language, Users can recognize it on the image by the eCOCR, no matter it is Simplified Chinese, Traditional Chinese, English, Japanese or even Korean.
Recognition database by folder management
With the classified character databases for different purpose which are stored in different folders, the recognition accuracy can be increased.
Support the output and sorting results.
Users can not only obtain the OCR results such as coordinates and words but also output them as text files.
Fig.7. The eCOCR can recognize characters of multi languages.
The eGauge is an object-oriented measurement tool library which can measure several shapes and features by edge information. It is very easy to finish your measurement works by the object-oriented designed measure tools.
Fig.6. An Image with several eGauge tools performed on it.
Object-Oriented design for Measurement Tool
Every measurement tool in the eGauge is designed of object-oriented way, Users can fully use it without being an expert in programming.
Provide measurement tools for multiple shapes.
The eGauge includes four gauge tools to fit different measurement applications such as point, line, circle, and rectangle.
Provide flexible parameter settings.
Users can measure the images with different properties by tuning proper settings such as the direction and location of the gauge tools, the definition of edge, or the way that gauge result should be.
Coexistence of different gauge tools
Users may have the demand of several different gauges applied on one image. The eGauge provides several shapes of gauge tools that can work on the same time.
Provide built-in image interface.
The eGauge contains built-in image interface for users to observe the effects with respect to different parameter settings.
Provide APIs for user interface development
With the APIs integrated in the eGauge, Users can easily to develop an interactive image interface.
Support sub-pixel measurement output.
The eGauge can perform sub-pixel gauge and output sub-pixel result to raise the accuracy of the measurement. Gauge Tools ePointGauge : Measure the number of feature points that the edges intersect a line segment. The location of points can also be obtained.
- Number of feature points.
- The coordinates of the feature points.
Fig.7. A demo of ePointGauge. The ePointGauge calculates the number of image borders
eLineGauge: Measure the lines formed by the edge points within a square area. The location and angle of the lines can be obtained.
- The coordinate of the center of the line segment.
- The angle of the line.
Fig.8. A demo of eLineGauge. The eLineGauge can obtain line information on an image
eCircleGauge: Measure circles within the circular ring area of the eCircleGauge. The center of the circle and its diameter can be obtained.
- The coordinate of the center of the circle.
- The diameter of the circle.
Fig.9. A demo of eCircleGauge. The eCircleGauge can obtain circular information on an image
eRectangleGauge: Measure the rectangles within the rectangular path area of the eRectangleGauge. The center of the rectangle and its size can be obtained.
- The coordinate of the center of the rectangle.
- The width and height of the rectangle.
- The angle of the rectangle.
Fig.10. A demo of eRectangleGauge. The eRectangleGauge can obtain rectangular information on an image
The eCCalib3D is an image calibration library. It can calibrate or unwarp the images which are skew or warped that caused by the difficulties in photography. The unwarped image may be very useful or even necessary to the subsequent measurement or recognition.
Fig.6. The demo of eCCalib3D.
The image calibration is not limited by angle or dimensions.
Regardless of the rotation and warped of the image, the calibration can be achieved only by four correspondence points on both source image and pattern image.
Support semi-auto process.
The eCCalib3D can calibrate the image with assigned parameters and auto sorted feature points.
Fig.7. The eCCalib3D can unwarp a skewed image.
ICP DAS provide the EzCheck Utility developed with EzCheck Vision Library for users who would like to experience the usage and convenience of the EzCheck Vision Library.
Achieved with EzCheck Vision Library
Every capability including image accessing, processing and analysis is achieved with EzCheck Vision Library.
A full demonstration of EzCheck Vision Library
The Utility contains all of the main functions of EzCheck Vision Library which is combined with useful interactive user interface. Users can quickly understand EzCheck Vision Library.
Utility demonstrates the easy and practical user interfaces for the main functions of the EzCheck Vision Library. Users can test the functions of the library and evaluate the images by the interfaces. It’s a very convenient and helpful tool along with the EzCheck Vision Library.
Multi-image window framework
The Image-window takes responsibility of loading, saving, and displaying image. Besides, it contains some interactive user interfaces of each main function. Users can create several Image-forms to do some complex works such as template matching and calibration.
Basic Image Processing Interface
The Basic Image Processing interface provides some common functions of image processing such as threshold, color-channel processing, morphology operation…etc.
Fig.6. The Basic Function Interface of the EzCheck Utility.
Template Matching Interface
The Template Matching interface provides the eCTM demo along with the interactive Image UI. It includes the matching, selecting, and sorting functions. Beside, clicking on the analyzed outcome of the Image Form would be helpful for uses to understand the result of matching.
Fig.7. The Template Matching Interface of the EzCheck Utility.
Blob Analysis Interface
The Blob Analysis interface provides the eCBlob demo along with the interactive Image UI. Users can test the blob types selecting, blob selecting, and see how the result image shows. Beside, clicking on the analyzed outcome of the Image Form would be helpful uses to understand the result of blob analysis.
Fig.8. The Blob Analysis Interface of the EzCheck Utility.
The OCR interface provides the eCOCR demo. After some blob analysis steps such as selecting and merging, users can recognize the characters on the image by a pre-trained database.
Fig.9. The OCR Interface of the EzCheck Utility.
The Gauge interface provides the eGauge demo along with the interactive image UI. Users can create the eGauge tools on the specified image form and change their size and position by drag and drop. It demonstrates the convenience of the eGauge tool.
Fig.10. The Gauge Interface of the EzCheck Utility.
Image Calibration Interface
The Image Calibration interface provides the eCCalib3D demo along with the interactive image UI. Just click four relative points on both the source image and the pattern image, the source image will be unwarped without additional settings.
Fig.11. The Calibration Interface of the EzCheck Utility.
Fig.12. The ”Click help” interface can help users more accurate to click on an image
To allow users to quickly understand and apply various functions of EzCheck Vision Library, ICP DAS provides not only a utility with useful function, but also sample programs for users to develop their own machine vision systems in short time.
Sample programs of Borland C++ Builder 6.0 and Visual C++ 6.0 are now available.