Vectorization License Option
BT Vectorization DLL accepts raster based images ( in BMP, PNG, GIF, or JPG format ) and converts these to Vector format images made up of multiple polygon objects.
Support is also provided for Noise reduction and Color reduction.
Once an image is converted to vector format, the image and it's multiple individual elements may be further manipulated within MetaDraw either by the end user (dragging, resizing, rotating elements and adding new elements) or programmatically.
Note, BT Vectorization DLL is best suited to conversion of images such as "Color Maps", images where there are regions of a single color needing to be converted to polygons. For example scanning a geographic map where each country or state is represented by a different color, and then converting to vectors may result in independant vector objects for each state or country.
BT Vectorization is not generally suitable for CAD drawings (development partners/sponsors are invited to discuss options for extending support to CAD and Line Drawings).
Photographs do not generally vectorize well, however they may be suitable for vectorization in certain specific applications after significant color and noise reduction. Possible applications may include recognizing countable objects against a background. Even after color and noise reduction however, vectorized photographs are likely to require very large amounts of memory and long processing times for conversion.
Development use of the BT Vectorization DLL requires purchase of both the MetaDraw 3 OCX license and the optional Vectorization license for MetaDraw 3. ( MetaDraw .NET is not currently supported )
When distributing an application using the Vectorization features both the MetaDraw 3 control (MDRAW30.OCX) and the BT Vectorization DLL (BTVECTOR.DLL) must be installed on the end-user machine. No end-user licensing is required.
BT Vectorization DLL provides three principle functions, Color Reduction, Noise Reduction, and Raster to Vector Conversion. It is recommended that all images to be converted to vector format first be reduced to the minimum number of necessary colors (at a maximum of 256 colors) and that noise reduction be performed to eliminate possible erroneous information in the image.
Before vectorizing an image it is recommended to reduce the number of colors in the
image (at a maximum there should be 256 colors before vectorizing). Reducing the
number of colors helps to deal with possible errors introduced into an image
as a result of scanning as well as reducing the number of vector objects -
(each vector object will have at most one color so that two nearly identical colors
next to each other may appear to the eye as a single object but will be treated as
two seperate objects when vectorizing).
To reduce the number of colors use the ColorReduction Method:
ColorReduction (ByVal SrcPic As Picture, ByVal nNumColors As Long) As Picture
NumberOfColors = 8
MetaDraw.Picture = MetaDraw.ColorReduction ( Picture1.Picture, NumberOf Colors )
This function reduces the number of color of the given picture (bitmap)
to the specified value. The function returns a new picture with a palette of no more
than nNumColors colors.
This function applies only to raster images (before conversion
to vector format).
In case of errors (DLL not found or non-bitmap image) the function returns a null picture.
Note that nNumColors should be less than 256.
- Noise Reduction
Noise Reduction removes stray spots which may be accidentally introduced by processes such as scanning.
"Noise" is areas of the picture with the same color and whose size is less than XNoise bitmap pixels in X-direction and YNoise bitmap pixels in Y-directions.
To eliminate noise in the image use the NoiseReduction Method:
NoiseReduction (ByVal Pic As Picture, ByVal XNoise As Long, ByVal YNoise As Long) As Picture
xNoise = 2 ' measured in pixels
yNoise = 2
MetaDraw.Picture = MetaDraw.ColorReduction ( Picture1.Picture, XNoise , YNoise )
This function applies only to raster images (before conversion to vector format).
The function returns the resulted picture or NULL picture in case of errors.
To vectorize the image use the Vectorize Method:
Vectorize (ByVal Pic As Picture, ByVal nMinPointSize As Long) As Picture
This function finds all the areas of the same color in the given bitmap picture and converts them to polygons. The result of the function is a metafile that contains a set of the corresponding polygons. The function returns NULL picture in case of errors.
If a resulting polygon is less than nMinPointSize in pixels using the original scale, that object will be ignored (not added to metafile).
Note, The Vectorization function is best suited to vectorizing images such as color maps where regions of different colors must be converted to polygons. BT Vectorization is not generally suitable for CAD drawings (development partners/sponsors are invited to discuss options for extending support to CAD and Line Drawings).