MVTec Software GmbH
  Building Vision For Business


Release Notes for HALCON 6.0.4

This document provides the release notes for MVTec HALCON 6.0.4, i.e., revision 4 of HALCON 6.0, as released in July 2003. HALCON 6.0.4 is primarily a maintenance release that fixes all known bugs in HALCON 6.0.3; besides, it provides added functionality and speedups.


Overview

This document contains the following information:

Compatibility
Major New Features of HALCON 6.0.4
Detailed Description of Changes in HALCON 6.0.4
Major New Features of HALCON 6.0
Detailed Description of Changes in HALCON 6.0.3
Detailed Description of Changes in HALCON 6.0.2
Detailed Description of Changes in HALCON 6.0.1
Detailed Description of Changes in HALCON 6.0
Notes for Users of the Beta Version of HALCON 6.0
Major New Features of HALCON 5.2
Detailed Description of Changes in HALCON 5.2.3
Detailed Description of Changes in HALCON 5.2.2
Detailed Description of Changes in HALCON 5.2.1
Detailed Description of Changes in HALCON 5.2



Compatibility

o Licenses
    HALCON 6.0 licenses are also valid for HALCON 6.0.4. In contrast, all HALCON 5.2 licenses must be replaced or upgraded. Please contact your local distributor.
    If you are using the floating license scheme, you may need to restart the floating license manager daemon because of an upgrade of the FLEXlm license manager software by GLOBEtrotter (see here for details).

o HALCON Library
    HALCON 6.0.4 is source code compatible with HALCON 6.0.3, HALCON 6.0.2, HALCON 6.0.1, and HALCON 6.0, i.e., programs written for HALCON 6.0 - 6.0.3 can be compiled and linked with HALCON 6.0.4. Compared to HALCON 5.2.x, however, many extensions have been introduced. Thus, the HALCON 6.0.4 libraries are not compatible with HALCON 5.2.x or earlier versions.

o HALCON Applications
    Applications (i.e., executables) developed with the HALCON/COM or HALCON/C interface of earlier HALCON 6.0 versions can be used with HALCON 6.0.4 without recompilation or linking.
    In contrary all C++ applications developed with the HALCON/C++ interface must be rebuilt in order to run these programs with HALCON 6.0.4.
    Please re-compile all C or C++ programs developed with HALCON 5.2.x. The incompatibility with HALCON 5.2.x or earlier versions mainly concerns the binaries, with only few changes in the operators' signatures. If you encounter problems during recompiling your programs, please check the detailed description of changes below and look up the signatures of the concerned operators in the reference manual.

o Frame Grabber Interfaces
    Please re-generate your own frame grabber interfaces developed with HALCON 5.2.x. Note that HALCON 6.0 introduced syntactic and semantic changes into the HALCON Frame Grabber Integration Interface, i.e., you might also need to adapt the code of your interface; please refer to the Frame Grabber Integration Programmer's Manual for details about the changes.

o Extension Packages
    Extension packages developed with HALCON 6.0.3 can be used without further action. Older extension packages that make use of the overloaded input and output operators >> and << must be recompiled (see here for details).
    Please note that extension packages that were generated for HALCON 6.0 must be generated anew. The same holds for extension packages developed with HALCON 5.2.x.

o ActivVisionTools
    In contrast to ActivVisionTools 1.0 to 2.0, which are based on HALCON 6.0 (or HALCON 6.0.1), the newer ActivVisionTools versions 2.1 and 2.2 are all based on HALCON 6.1 (or HALCON 6.1.1); thus, by installing HALCON 6.0.4 you would disable such an ActivVisionTools installation.
    Furthermore, the older versions ActivVisionTools 1.0 to 2.0 are not fully compatible with HALCON 6.0.4, HALCON 6.0.3, and HALCON 6.0.2 (see here for more information). Therefore, the setup program of HALCON 6.0.4 checks whether there is an ActivVisionTools installation on your computer.
    • If it detects ActivVisionTools 2.1 or 2.2, it warns that by continuing to install HALCON 6.0.4 you will damage your ActivVisionTools installation. As a workaround, you could keep the corresponding HALCON 6.1.x installation and switch back to it as described in the manual 'Getting Started With HALCON'.
    • If it detects ActivVisionTools 2.0, it offers to replace the corresponding OCX with a new one that is compatible to HALCON 6.0.4. Then, you can use ActivVisionTools 2.0 without any further action. Typically, you will choose this option. If not, you can replace the OCX manually as described in the manual 'Getting Started With HALCON'.
    • For ActivVisionTools 1.0 to 1.3 no compatible OCX is available. If the setup program of HALCON 6.0.4 detects such an ActivVisionTools version, it therefore warns that by continuing to install HALCON 6.0.4 you will damage your ActivVisionTools installation. As a workaround, you could keep your old HALCON 6.0.1 or HALCON 6.0 installation and switch back to it as described in the manual 'Getting Started With HALCON'.
    Please note that if you are using ActivVisionTools 2.0 and update to HALCON 6.0.4 using the ZIP file instead of the setup program, you must download and install the replacement OCX manually as described in the download area or in the manual 'Getting Started'.


Major New Features of HALCON 6.0.4

o Enhanced 1D Bar Code Reader
    HALCON's 1D Bar Code Reader has been further improved. The list of supported bar code types has been extended by PharmaCode and Code 93. Furthermore, the bar code reader can now handle extra elements before and after the code. For details see here.

o Faster Fill-Up Operations


Detailed Description of Changes in HALCON 6.0.4

Detailed release notes can be obtained for the following topics:

HDevelop
HALCON Library
HALCON/C++
HALCON/COM
Frame Grabber Interfaces
Extension Package Interface
Miscellaneous

HDevelop

o Enhancements:
  • HDevelop now has an internal break operator that can be used to exit for or while loops.

o Functionality:
  • HDevelop functions now return an error message in case an input control parameter has an undefined value.
  • The HDevelop dialogs 'Pixel Information', 'Zooming', 'Grey Histogram' 'Region Feature Histogram' and 'Region Features' no longer have a maximize box under Windows.
  • HDevelop now recognizes operator names with leading or tracing blanks.
  • The HDevelop functions pow, fmod and ldexp now accept input parameters with different numbers of elements.
  • The HDevelop functions asin, acos, log, log10, pow and fmod now return an error message in case input parameters with wrong values are passed.
  • The layout of the visualization parameter window has been made more consistent.
  • The value 'line' of the Mode parameter in the operator dev_set_paint has been renamed to 'row' for consistency reasons. The old mode 'line' is still supported for backward compatibility. The visualization menu and the visualization parameter dialog have been adapted accordingly.
  • HDevelop no longer activates a deactivated line when pasting the line.
  • The selection of default iconic variables in HDevelop's operator window is now identical in experienced mode and standard mode, i.e., it takes into account the type of variables.
  • When exiting by calling the internal operator exit, HDevelop now saves window positions, file history, and options, and closes frame grabbers.
  • It is no longer possible to reduce the height of HDevelop graphics windows to an extent where the display part of the window becomes invisible.
  • HDevelop no longer scrolls the program window to the position of the program counter after deleting or cutting a program line.
  • In case the option Experienced Programmer is activated, HDevelop now also lists input variables with special semtype in the lists of cobmoboxes for input control parameters in the operator window.
  • HDevelop now observes the selected color scheme under X. This change is particularly beneficial under KDE 3.0, where the KDE control center sets many, but not all, Motif-relevant resources when changing the color scheme, and hence HDevelop's background colors sometimes could appear inconsistent.

o Bug Fixes:
  • The HDevelop functions ord and ords returned wrong results for characters with codes greater 127. This problem has been fixed.
  • The HDevelop functions and, or and xor crashed in case empty tuples were passed. This problem has been fixed.
  • HDevelop showed erroneous behavior when trying to open files that did not exist or were not HDevelop programs. This problem has been fixed.
  • HDevelop exported endfor statements incorrectly to C. This problem has been fixed.
  • HDevelop sometimes erroneously exported the simple version of an operator to C. This problem has been fixed.
  • HDevelop didn't reset loops exited by the break statement. This problem has been fixed.
  • In HDevelop's program window the insert cursor was not set correctly after pasting program lines using the window menu. This problem has been fixed.
  • HDevelop's gray histogram displayed an incorrect peak value for int2/int4 images. This problem has been fixed.
  • HDevelop crashed when trying to open a HDevelop graphics window that was too large. This problem has been fixed.
  • HDevelop sometimes erroneously exported the simple version of an operator to C. This problem has been fixed.

o Manual:
  • The HDevelop User's Manual is available in a new edition. It now also describes the new internal operator break and contains more information about the function number and octal/hexadecimal numbers.

o Examples:
  • In the directory hdevelop\Image\Framegrabber, the new examples bcam1394.dev, bcam1394_2cameras.dev, bcam1394_crop.dev, bcam1394_frame_rate.dev, bcam1394_parameters.dev, bcam1394_simple.dev, and bcam1394_trigger.dev show how to use the new interface for Basler's IEEE 1394 cameras.
    The new examples directshow.dev, directshow_2cameras.dev, directshow_camera_types.dev, directshow_exposure.dev, directshow_frame_rates.dev, directshow_parameters.dev, and directshow_simple.dev show how to use the new interface for the application programming interface DirectShow from Microsoft.
    Further new examples in the directory hdevelop\Image\Framegrabber: ginga++_capture_freq.dev, ginga++_external_drive.dev, ginga++_frame_exposure.dev, ginga++_walking.dev.

HALCON Library

o Speedup and Enhancements:
  • HALCON's 1D bar code reader has been improved significantly: First of all, it now also supports PharmaCode and Code 93 bar codes. Furthermore, extra elements before and after the code can now be handled. Users can specify the maximum number of extra elements the bar code reader should be able to compensate with a generic parameter 'max_extra_elements'. The documentation has been adapted accordingly.
  • The operators fill_up and connect_and_holes are now up to 4 times faster. The operator fill_up_shape is now up to 10 times faster. The speedup depends on the size of the region and the number of holes.
  • The operator lines_facet is now faster by up to 10%.
  • Under Windows, the drawing of one pixel wide runs now is up to three times faster.
  • HALCON now supports the reading and writing of PNG images in the operators read_image and write_image, respectively. The documentation has been extended accordingly.
  • The models created by create_shape_model and create_scaled_shape_model now use less memory if multiple models are generated.
  • The operator select_contours_xld now has a mode 'open' in which open contours can be selected.
  • The operators convol_image and gen_filter_mask now allow filter masks to be specified as a tuple of integer numbers in addition to the existing mode of reading filter masks from file. The format of the tuple is identical to the format in the filter mask file. The parameter FileName has been renamed to FilterMask.

o Modified Operators:
  • The bar code names in gen_1d_bar_code_descr now have consistent spellings: code 39, 2/5 industrial, and 2/5 interleaved have been renamed to Code 39, 2/5 Industrial, and 2/5 Interleaved. The old names are still supported for backward compatibility.
  • The operators gen_region_polygon, gen_region_polygon_filled, and gen_region_line now are able to handle empty input tuples.
  • There is no longer a restriction to 10,000 input points for the operators gen_region_polygon and gen_region_polygon_filled. Now, polygons with up to 200,000 points can be created. Similarly, the number of input points for the operator gen_region_points and of input runs for the operator gen_region_runs is no longer restricted to 50,000. The number of input lines for the operator gen_region_lines is no longer restricted to 100,000.
  • The operator region_to_mean now is able to handle multichannel images.
  • The operator select_shape_proto now has a mode in which the overlap of the regions with the pattern is determined. It is possible to calculate the overlap as an absolute area ('overlaps_abs') or as relative to the size of the region to be tested ('overlaps_rel'). The documentation has been extended accordingly.
  • The value 'line' of the Mode parameter in the operator set_paint has been renamed to 'row' for consistency reasons. The old value of 'line' is still supported for backward compatibility. Furthermore, the parameter Mode now has a list of suggested values.
  • set_system("flush_graphic","false") now also works for images (disp_image, disp_obj, disp_color) under Windows.
  • 'string' is now the default type for parameter T1 in operator tuple_strlen.
  • HALCON tuple operators now return an error message in case an input control parameter has an undefined value.
  • The functions write_string and new_line now observe the system parameter 'flush_graphic'.

o Bug Fixes:
  • Changing the kind of HALCON's temporary memory management in between operator calls could cause a memory leak. This problem has been fixed.
  • The operator affine_trans_image produced incorrect results in a half pixel wide strip that corresponds to the top and left border of the original image if 'int_zooming' was set to 'false' with set_system and if Interpolation != 'none'. Furthermore, the operator produced incorrect results if the image was scaled by a factor of more than 200 and if the interpolation was set to 'constant' or 'weighted'. The same problem occured in zoom_image_size and zoom_image_factor. These problems have been fixed.
  • The operator check_difference sometimes included too many pixels in the segmentation result. This problem has been fixed.
  • The operator close_edges returned wrong results if 'init_new_image' was set to 'false' by the set_system operator.
  • The operators closing_golay, erosion_golay, and opening_golay sometimes returned the errors 3503-3506 (Run length row < 0, Run length row >= image height, Run length column < 0, and Run length column >= image width) for certain combinations of structuring elements and rotations. thinning_seq and thickening_seq sometimes returned the error 3510 (Exceeding the maximum number of run lengths while automatical expansion) for certain structuring elements, thickening_golay, thinning_golay, and hit_or_miss_golay for structuring elements of type 'h'. These problems have been fixed.
  • The operator complement returned with an error in case the system parameter 'alloctmp_single_block' was set 'true'. This problem has been fixed.
  • The operator contour_to_world_plane_xld exchanged the coordinates when transforming the contour. This exchange led to the fact that the transformed contours did not match an image that was rectified with the same parameters with image_to_world_plane. This problem has been fixed.
  • The operator convert_image_type was not able to convert images of type 'int2' into the types 'int1' or 'complex'. The missing functionality has been implemented.
  • The operator create_template sometimes crashed with values 'gradient' or 'sobel' for parameter GrayValues. Furthermore, it sometimes crashed if Optimize = 'sort'. This happened if the domain of the template image was too close to the image border. These problems have been fixed.
  • The operator crop_domain crashes for input images with empty domain. It now returns the error 3111 (At least one input object has an empty region) in this case. The operator crop_domain_rel now also returns this error if the domain is empty.
  • The parity check of Codabar bar codes in decode_1d_bar_code returned incorrect results. Furthermore, decode_1d_bar_code did not check whether the start and stop symbol are present for Code 39. This led to the fact that sometimes an invalid bar code was decoded if the number of elements is correct even though the start or stop symbol were incorrect. These problems have been fixed.
  • The operator decode_2d_bar_code crashed on DataMatrix symbols greater than 48x48 modules. This problem has been fixed.
  • The operator do_ocv_simple sometimes did not free all internal temporary memory. This problem has been fixed.
  • The operator dual_rank sometimes returned the error 3513 (Internal error: number of chords too big for num_max). This problem has been fixed.
  • The operator dual_threshold now works correctly for byte images.
  • The operator dyn_threshold returned with an error in case the system parameter 'alloctmp_single_block' was set 'true'. This problem has been fixed.
  • The operators erosion_rectangle1 and opening_rectangle1 sometimes returned the error 3510 (Exceeding the maximum number of run lengths while automatical expansion). This problem has been fixed.
  • The operator exhaustive_match and exhaustive_match_mg sometimes crashed, independent of the correlation mode. This problem has been fixed.
  • The operators expand_gray and expand_gray_ref sometimes crashed if Mode == 'region'. Furthermore, they crashed if an input region is larger than the image or the region lies outside of the image domain. These problems have been fixed.
  • The operator fill_up suppressed all components of the input region that were only one pixel in size if the input region consisted of several connected components and had more than three runlengths altogether. Furthermore, on regions with many of runlengths the operator sometimes crashed or returned an error message: 3502: Run length row with negative length. These problems have been fixed.
  • The operator fill_up_shape did not use the correct neighborhood for the holes. If 8-neighborhood was used for the foreground, fill_up_shape also used 8-neighborhood for the background (holes), whereas 4-neighborhood should have been used. An analogous problem existed if 4-neighborhood was used for the foreground. This problem has been fixed.
  • The operator find_2d_bar_code crashed very rarely if it was used on big images with many details, possible 2d bar codes, or noise, and if the generic parameters switched off some of the region features. This problem has been fixed.
  • The operator find_shape_model (and all other variants thereof) sometimes did not discard overlapping model instances. This happened for very elongated models. This problem has been fixed.
  • The operator find_shape_model sometimes returned the error 3513 (Internal error: number of chords too big for num_max). Furthermore, it sometimes returned the error 3510 (Exceeding the maximum number of run lengths while automatical expansion) for small images. This problem only occurred if find_shape_model was used in compiled programs, i.e., it did not occur in HDevelop. The problem has been fixed.
  • In the operator gen_checker_region, the parameters WidthPattern and HeightPattern were interchanged. This problem has been fixed.
  • In some cases, the operator gen_contour_region_xld with the mode set to 'border' created contours with end points that were not equal although they should be, and although the contour was marked as closed. This problem has been fixed.
  • The operator gen_contours_skeleton_xld no longer causes a memory leak if Mode is set to 'generalize1' or 'generalize2'.
  • The operator get_2d_bar_code sometimes caused a memory leak. This problem has been fixed.
  • On input regions with a very long contour (more than 100,000 contour points) the operator get_region_contour crashed or did not return the whole contour of the input region. This problem has been fixed.
  • The operator get_region_convex sometimes missed points on the convex hull. Because of this, shape_trans (..., 'convex') also sometimes missed points on the convex hull. These problems have been fixed.
  • The operator gen_region_polygon_filled sometimes had unsymmetric raster behavior in x-y direction. This problem has been fixed.
  • In some rare cases the operator gen_contour_polygon_xld returned a wrong polygon approximation. This problem has been fixed.
  • There was a memory leak in operator gen_ellipse_contour_xld. This problem has been fixed.
  • The operator get_region_polygon returned for some input regions a wrong polygon approximation. This happened especially with small or detailed input regions and a small tolerance parameter. These problems has been fixed.
  • The operator get_string_extents now returns the correct values.
  • The operator gray_projections crashed if the smallest enclosing rectangle of the input region extended beyond the image borders. Furthermore, it crashed in Mode 'simple' in case the input region contained points outside the input image and the system parameter 'clip_region' was set 'false'. These problems have been fixed.
  • The operator hamming_change_region sometimes returned the error 6002 (Memory partition on heap has been overwritten). This problem has been fixed.
  • The operator hom_mat2d_to_affine_par returned incorrect results if the matrix contained a slant around the x-axis or the matrix contained a negative slant. This problem has been fixed.
  • The operator learn_class_box sometimes crashed if a tuple of integers and strings was passed as the feature vector. This problem has been fixed.
  • The operator lines_facet sometimes returned results for input images of type byte and type real, although they contained exactly identical data. This problem occured with masks of size 9 and 11. The problem has been fixed.
  • The operator lines_gauss sometimes returned the error 3513 (Internal error: number of chords too big for num_max) if the domain of the image was very small. This problem has been fixed.
  • The operator median_image treated image borders incorrectly for MaskType 'rectangle' and Radius 2. This problem has been fixed.
  • The operator mirror_region sometimes returned an error if the checking of region data was enabled with set_check('data') (the default setting in HDevelop). This problem has been fixed.
  • The operator morph_hat sometimes returned the error 3513 (Internal error: number of chords too big for num_max) for very large regions. This problem has been fixed.
  • The operator move_rectangle did not work correctly. On all systems, the destination coordinates were treated as offsets. The destination coordinates now are treated as absolute coordinates, as in copy_rectangle. Furthermore, on Windows systems the movement was clipped to the original rectangle. These problems have been fixed.
  • The operator opening_circle returned the error 1301 (Wrong value of control parameter: 1) if the radius was set to 0.5. This problem has been fixed.
  • The operators plateaus and plateaus_center returned the error 6041 (No memory block allocated at last) if called with the wrong image type (vectorfield or complex images). They now return the error 9001 (Image to process has wrong gray value type) instead.
  • The parameters Width and Height in rank_region were handled incorrectly internally. The parameter Width was treated as the height of the mask and the parameter Height as the width of the mask. Furthermore, the operator only worked with mask sizes smaller than 100x100. These problems have been fixed.
  • The operator read_string now displays the typed characters under Windows, and the default string is also displayed.
  • The operator regiongrowing_n sometimes crashed. Furthermore, it only used the first channel of a mult-channel image. In particular, either empty regions or full regions were returned as output when using the metrics 'variance', 'correlation', 'variance-diff', 'variance-ratio', 'mean-abs-diff', 'mean-abs-ratio', 'max-abs-diff', 'max-abs-ratio', 'min-abs-diff', 'min-abs-ratio', and 'plane'. These problems have been fixed.
  • The operator rotate_image sometimes did not free all temporary memory. This problem has been fixed.
  • The operator runlength_distribution sometimes returned the error 6002 (Memory partition on heap has been overwritten). This problem has been fixed.
  • The operators segment_contours_xld and fit_ellipse_contour_xld caused a memory leak under Parallel HALCON. This problem has been fixed.
  • When zooming (with set_part and disp_image) into a huge image the runtime error 3510 was sometimes caused. This problem has been fixed.
  • The operator shape_trans with 'inner_center' used the wrong center of gravity. The center of gravity of the skeleton was used instead of the center of gravity of the input region. This problem has been fixed.
  • The operator shape_trans_xld had a memory leak. This problem has been fixed.
  • The operator skeleton returned incorrect skeletons for regions with one-pixel holes. The one-pixel holes were filled before computing the skeleton. This is no longer done. Programs that rely on the old behavior should call fill_up_shape with Feature = 'area' and Min = Max = 1 before calling skeleton.
  • The operator tile_images crashed if NumColumns was set to 0. Since this parameter value is illegal, an error message is now returned.
  • The operator tuple_ords returned wrong results in case the input tuple contained integers. This problem has been fixed. Furthermore, the operators tuple_ord and tuple_ords returned wrong results for characters with codes greater 127. These problems have been fixed.
  • The tuple operators tuple_lsh, tuple_rsh, tuple_band, tuple_bor, tuple_bxor, tuple_bnot, tuple_and, tuple_or, tuple_xor and tuple_not erroneously returned with an error in case one or both input parameters were empty tuples. This problem has been fixed.
  • The operator union_straight_contours_xld sometimes returned the error 3257 (Regression parameters of contours not yet entered! Please compute them by calling regress_cont_xld) even though the regression parameters had been computed. This problem has been fixed.
  • The operator vector_to_rigid sometimes crashed. This problem has been fixed.
  • The operator write_string did not observe the selected window part (set_part) for graphics windows under Unix. This problem has been fixed.

o Manual:
  • The manual 'Getting Started with HALCON' is available in a new edition; it has been clarified and extended at many points. For example, it now uses the terms 'license / license file / license key' and 'update / upgrade' consistently. Furthermore, it now clearly states that an application can only use one HALCON language interface, that the license file MUST be called license.dat, warns that the number of modules should be determined in the actually used environment, and describes how to upgrade a license. Also, the section regarding floating licenses has been extended significantly.
  • The documentation of the operator tuple_number (and of the HDevelop function number) now describes that strings starting with '0x' and '0' are interpreted as hexadecimal and octal numbers, respectively.
  • The example of union1 in the HDevelop Reference Manual contained a syntax error, which has been corrected.
  • The documentation of the operator change_format now correctly describes the domain of the output image.
  • The documentation of the operators affine_trans_image and affine_trans_image_size now notes that the output image is always clipped to positive coordinates.
  • The example in the documentation of power_ln did not use the operator power_ln. This error has been corrected.
  • The documentation of the mode 'closed' in select_contours_xld incorrectly stated that Max2 is the parameter that is used to select the closed contours. The correct parameter is Max1. This error has been corrected.
  • The HALCON documentation now consistently uses the expression 'neighborhood' to describe the pixel neighborhood. Previously, sometimes 'connectivity' was also used.
  • The examples in the documentation of open_window and set_window_dc contained obsolete calls. The parameter 'pixel_ratio' is no longer supported by set_system. These calls have been removed from the example programs.
  • An error in the documentation about the range of indices that get_region_index returns has been corrected.
  • The operators tuple_ceil and tuple_floor have been moved to the chapter Tuple/Arithmetic. tuple_is_number has been moved to the chapter Tuple/Conversion.
  • The description of the operators edges_sub_pix and lines_gauss has been extended to indicate how much temporary image memory will be allocated depending on the input image size.

HALCON/C++

o Bug Fixes:
  • The HALCON/C++ member function HTuple::Number() returned an error in case the input parameter was a string that cannot be converted to a number. This problem has been fixed.
  • The HALCON/C++ member functions HTuple::Ord() and HTuple::Ords() returned wrong results for characters with codes greater 127. This problem has been fixed.

HALCON/COM

o Bug Fixes:
  • The COM interface of standard HALCON (halconx.dll) was not threadsafe. This problem has been fixed.

o Manual:
  • The HALCON/COM User's Manual is available in a new edition. It clarifies the point that only one HALCON language interface can be used in an application. Furthermore, it decribes how to use the COM interface of Parallel HALCON and briefly lists the example projects for Visual Basic.NET, C#, Delphi, and Visual C++.

Frame Grabber Interfaces

The latest information about new extensions and newly supported boards can be found on the frame grabber index page.


o New Frame Grabber Interfaces:
  • HALCON now also includes an interface to Basler's IEEE 1394 cameras based on the Basler BCAM 1394 Driver/SDK.
  • HALCON now also includes an interface to the DirectShow application programming interface from Microsoft.
  • The existing HALCON PicPort interface has been extended to access also the PicProdigy and PicPortPro frame grabber boards from Leutron.

o Modified Frame Grabber Interfaces:

Extension Package Interface

o Manual:
  • In the "Extension Package Programmer's Manual", the signature of the routine HCopyXLDContPart is now given correctly.

o Examples:
  • The extension package makefile make.i586-nt4 used the environment variable MSDEV. Since this variable became dispensable it has been eliminated from that file.

Miscellaneous

o Installation:
  • The default working directory of HDevelop, Parallel HDevelop, and HDevelop Demo is set to %HALCONROOT%/examples/hdevelop instead of %HALCONROOT%.
  • The HALCON setup now also installs the system file COMDLG32.OCX, which is necessary for running HMatchIt.
  • At the beginning of the installation on Unix computers the MVTec license agreement is shown and the user is asked to accept it. The corresponding file 'eula.txt' is located in the root directory on the HALCON CD and will be installed into the %HALCONROOT% directory.

o Examples:
  • The MFC and Motif example programs (examples/mfc/Matching, examples/mfc/MatchingExtWin, and examples/motif/Matching) used the undocumented call set_system("border_width",...). They now use the preferred and documented call set_window_attr("border_width",...).

o Licensing:
  • HALCON now uses version 8.3 of the FLEXlm license manager software by GLOBEtrotter, together with a new version of the device drivers for USB dongles.

    Information for users of floating licenses: Please note that if you are updating to HALCON 6.0.4 (e.g., from HALCON 6.0.3) you must restart the floating license manager daemon after the installation (see the manual 'Getting Started with HALCON' for detailed information).



© Copyright 2012, MVTec Software GmbH, corporate/legal/privacy information






Webmaster Last modified: Tue May 02 14:01:36 CEST 2006