MVTec Software GmbH
  Building Vision For Business


Release Notes for HALCON 7.1.2

This document provides the release notes for MVTec HALCON 7.1.2, as released in December 2006. HALCON 7.1.2 is primarily a maintenance release that fixes all known bugs in HALCON 7.1.1; besides, it provides added functionality and speedups.



Overview

This document contains the following information:

Compatibility
Detailed Description of Changes in HALCON 7.1.2
Major New Features of HALCON 7.1
Detailed Description of Changes in HALCON 7.1.1
Detailed Description of Changes in HALCON 7.1
Detailed Description of Changes in HALCON 7.0.2
Detailed Description of Changes in HALCON 7.0.1
Detailed Description of Changes in HALCON 7.0



Compatibility

o Licenses
    HALCON 7.1 licenses are also valid for HALCON 7.1.2. In contrast, all HALCON 7.0 licenses must be replaced or upgraded. Please contact your local distributor.

o HALCON Library
    HALCON 7.1.2 is fully compatible with HALCON 7.1 and 7.1.1. Compared to HALCON 7.0.x, many extensions have been introduced. Thus, the HALCON 7.1.2 libraries are not compatible with HALCON 7.0 or earlier versions.

o HDevEngine

o HALCON Applications
    Applications (i.e., executables) developed with HALCON 7.1 or 7.1.1 can be used with HALCON 7.1.2, i.e., HALCON 7.1.2 is binary compatible with HALCON 7.1 and 7.1.1.
    C or C++ programs developed with HALCON 7.0.x must be re-compiled. The incompatibility with HALCON 7.0 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
    If you developed your own frame grabber interfaces with HALCON 7.1 or 7.1.1, you can use them with HALCON 7.1.2 without further action. Frame grabber interfaces developed with HALCON 7.0.x and 6.1.x are binary compatible with HALCON 7.1.2, interfaces developed with older versions must be re-generated.

o Extension Packages
    Extension packages developed with HALCON 7.1 or 7.1.1 can be used with HALCON 7.1.2 without further action. Extension packages developed with HALCON 7.0.x must be re-generated.

o ActivVisionTools
    Only ActivVisionTools 3.1 and 3.1.1 can be used directly with HALCON 7.1.2 because they are based on (a modified version of) HALCON 7.1 or 7.1.1, respectively. All older ActivVisionTools versions are based on HALCON 7.0.1 or below; by installing HALCON 7.1.2, you would thus disable such an ActivVisionTools installation. Therefore, the setup program of HALCON 7.1.2 checks whether there is an ActivVisionTools installation on your computer.
    • If it detects ActivVisionTools 3.1 or 3.1.1, no further action is required, as this version is compatible to HALCON 7.1.2.
    • If it detects ActivVisionTools 3.0, please contact your distributor for further information on how to run this version together with HALCON 7.1.2.
    • In contrast, ActivVisionTools 1.0 to 2.2 cannot be used with HALCON 7.1.2. If the setup program detects such an ActivVisionTools version, it warns you that by continuing to install HALCON 7.1.2 you will disable your ActivVisionTools installation.

      If you still want to use your ActivVisionTools installation you must also keep your old HALCON installation and switch back to it as described in the "Installation Guide".



Detailed Description of Changes in HALCON 7.1.2

Detailed release notes can be obtained for the following topics:

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

HDevelop

o Enhancements
  • In HDevelop there is now an improved mechanism for entering and modifying external procedure passwords. Furthermore, it is now possible to make unlocked protected external procedures not editable (again), thus put protected external procedures in the state they were be after being loaded by HDevelop on startup. The above functionalities are implemented through a dialog which enables the user to enter or modify the password, as well as change the status (editable vs. not editable), of multiple external procedures at the same time.

o Functionality
  • HDevelop's functionality for removing unused variables (File->Cleanup) now applies to all procedures, not only to the currently displayed procedure.
  • HDevelop now automatically removes unused variables (File->Cleanup) from the program before exporting code.

o Bug Fixes
  • The menu item 'Display' of popup menus of HDevelop graphics windows did not contain variables that were iconic input procedure parameters. This problem has been fixed.
  • Displaying objects in HDevelop graphics windows caused a memory leak in case the displayed object was a tuple of images and the tuple elements shared the same image matrix but had different domains. This problem has been fixed.
  • Iconic objects were sometimes not displayed correctly in HDevelop graphics windows, if a window had been resized after new graphics settings had been applied to it. In this case, displaying an iconic object (e.g., via dev_display) would use the settings that had been valid while resizing the window. This problem has been fixed.
  • HDevelop sometimes crashed when trying to display XLD contours with very large coordinates. This problem has been fixed.
  • If an HDevelop program stopped at a draw_* operator while 'Update PC' was off, the PC, insert cursor, break points etc. were not shown. This problem has been fixed.
  • When an HDevelop program stopped at a draw_* operator while the option 'Update Variable' was on and the displayed procedure changed, then the icons of the iconic objects were not updated. This problem has been fixed.
  • HDevelop sometimes exported unnecessary HTuple constructor calls when exporting assign statements to C++. This problem has been fixed.
  • HDevelop exported procedures incorrectly to C, VB.NET, and C#, if a procedure contained iconic input parameters and at least one of this parameters was used as an output parameter in any operator or procedure call inside the procedure. Additionally, in exported C code the same applied for control input parameters. These problems have been fixed.
  • C# and Visual Basic .NET programs exported by HDevelop could cause a memory leak if the programs contained procedures using local iconic variables or if the programs contained program lines using the same iconic variables as input and output parameters. These problems have been fixed.
  • HDevelop exported non-constant negation expressions incorrectly to Visual Basic 6.0. This problem has been fixed.
  • HDevelop remained in an inconsistent state after modifying a deactivated loop statement. This problem has been fixed.
  • In rare cases, after pasting previously copied local procedures containing procedure call lines, HDevelop remained in an inconsistent state. This problem has been fixed.
  • HDevelop did not create the procedure menu correctly if two procedures had different first level chapters, but the same second level chapter. This problem has been fixed.
  • HDevelop did not check the consistency of variable names when pasting previously copied program lines into the current procedure body, which could lead to programs containing control and iconic variables with the same name. This problem has been fixed.
  • HDevelop did not check for a correct variable name when loading an image via the menu item 'File->Read Image', which could leave HDevelop in an inconsistent state. This problem has been fixed.
  • Instead of returning an error message, HDevelop sometimes crashed when using iconic variables in control statements. This problem has been fixed.
  • HDevelop showed erroneous behavior when trying to save the current program after previously failing to load a HDevelop program file. In that case, instead of prompting for a file name, HDevelop saved the current program to the file '.dev' in the current directory. This problem has been fixed.

o Manual:
  • The HDevelop User's Manual is now available in a new edition. It has been updated and extended following the changes in HALCON 7.1.2. In particular, it now describes the improved user interface for external procedure passwords. Furthermore, the tables in the chapter "Language" have been revised.

o Examples
  • The following new example programs in examples/hdevelop/Image/Framegrabber show how to use the new frame grabber interfaces:
    • dahengcam.dev, dahengcam_2cameras.dev, dahengcam_parameters.dev, and dahengcam_simple.dev
    • dpict.dev, dpict_parameters.dev, and dpict_simple.dev
    • lucam_2cameras.dev, lucam_crop.dev, lucam_simple.dev, and lucam_parameters.dev
    • pylon.dev, pylon_crop.dev, pylon_parameters.dev, and pylon_simple.dev

    Besides, the following examples have been added in the above directory:

    • menable3_shaftencoder.dev shows how to use line scan cameras and shaft encoders with the mEnable3 interface.
    • multicam_picolo.dev shows how to use Euresys PICOLO frame grabber boards with the MultiCam interface.

HALCON Library

o Speedup and Enhancements
  • The operators affine_trans_image and affine_trans_image_size are now faster by up to 200% if both scale factors are >= 1 in the affine transformation. Consequently, rotate_image is also faster by up to 200%. Likewise, zoom_image_factor and zoom_image_size will be faster by up to 200% if they enlarge the input image.
  • The operator dyn_threshold is now faster by up to 30% for LightDark = 'light' and LightDark = 'dark' on Linux systems.
  • The operator gray_histo_abs is now significantly faster for quantization factors different from 1.

o Modified Operators
  • Standard HALCON was not thread-safe for applications using multiple language interfaces under Windows. This has been fixed.
  • The operator check_par_hw_potential (and also the binary hcheck_parallel) update the hardware knowledge about CPUs, e.g., number of CPUs, at every call. So far, the knowledge about CPUs has been determined at the first call only.
  • The operator cooc_feature_image returned undefined values for empty input regions. Now, the output control parameters are set to zero in this case.
  • The operator create_ocv_proj now allows to create an unlimited number of OCV handles.
  • The data code reader is now able to read ECC DataMatrix codes even if the sizes of the modules change over different rows or columns up to a certain amount. For controlling this behavior the data code model has a new generic parameter 'module_grid' that can be set to 'fixed', 'variable', or 'any'. For more information see the description of the operators create_data_code_2d_model, set_data_code_2d_param, get_data_code_2d_param, find_data_code_2d, and get_data_code_2d_results in the HALCON operator reference manual.
  • The operator disp_arc now supports negative angles.
  • The operator disp_caltab now only displays calibration targets that lie in front of the camera.
  • The operators do_ocr_* now return an error if the character region is empty.
  • The operator dump_window_image now supports windows with Mode = 'buffer' on UNIX systems.
  • When calling the operator find_data_code_2d repeatedly for different images, the memory consumption of the data code reader sometimes increased significantly, depending on the number of results and result candidates. Therefore, in order to use less memory, the data code reader was changed in a way that less memory space is cached in the model.
  • The operator get_system now supports a query 'hostids' that returns the hostids that can be used for licensing HALCON.
  • The operators match_rel_pose_ransac and match_essential_matrix_ransac now provide a new algorithm using a minimum number of point correspondences. The operators can also handle the special case where all 3D scene points lie in a single plane and are all closer to one of the cameras. Then, two solutions in the stereo geometry exist, which are both contained in the output parameters, i.e., RelPose/EMatrix and CovRelPose/CovEMat are of double length. To be compatible to HALCON 7.1 and 7.1.1, the output parameter Error is in any case a single value taking the mean error of both solutions. Please note that this will be changed in future versions.
  • The operators match_fundamental_matrix_ransac, match_essential_matrix_ransac, and match_rel_pose_ransac for uncalibrated stereo now support the case of pure translational motion. In constrast to the general motion case the operators are faster and match_fundamental_matrix_ransac can even handle planar scenes.
  • The operators polar_trans_image_ext and polar_trans_image_inv now support centers with negative coordinates.
  • The operator read_image now supports 16 bit PGM and PPM images.
  • The operator regiongrowing_mean now allows tuples of more than 10000 elements in StartRows and StartColumns.
  • The operators rgb1_to_gray and rgb3_to_gray now support images of type uint2.
  • The operator select_contours_xld now automatically calls regress_contours_xld internally if necessary, i.e., if Feature = 'direction' or Feature = 'curvature' and the contours do not have valid regression parameters. The behavior is as if regress_contours_xld had been called with Mode = 'no' and Iterations = 1.
  • Until now, the operator union_collinear_contours_xld did not unify contours if they overlap, even if the overlap is very small. In some cases, apparently collinear lines (because they were derived from one object edge) were not connected, due to small inaccuracies during the segmentation of the contours and the evaluation of the reference line that was used to determine the overlap. This behavior was counterintuitive. Therefore, a small overlap tolerance of 0.5 pixels was implemented.
  • The operators write_tuple and read_tuple are now able to handle tuples with undefined values.

o Bug Fixes
  • The operators affine_trans_point_3d, affine_trans_point_2d, and affine_trans_pixel limited the number of elements in the input tuples to a maximum of 200000. This restriction has been abolished. Now, input tuples of arbitrary length are allowed.
  • The operator binocular_calibration returned wrong results for RelPose and NFinalPose2 when using values for parameter EstimParam specifying the relative pose, like 'pose_rel', '~pose_rel', 'alpha_rel', 'transz_rel'. This problem has been fixed.
  • The operator camera_calibration returned different results for line scan images when called multiple times. This problem has been fixed.
  • The operator change_radial_distortion_cam_par did not work correctly if Kappa was set to a value different from 0 and Mode was set to 'fullsize' or 'adaptive'. In these cases, the visible part of the scene was not computed correctly. This problem has been fixed.
  • The operators create_template and create_template_rot created inconsistent templates if the smallest enclosing axis-aligned rectangle of the input domain was only 1 pixel wide in at least one direction. As a consequence of this inconsistency, create_template(_rot) directly or any operator that used the template (e.g., fast_match* or best_match*) was likely to crash. This problem has been fixed.
  • The operator crop_part crashed in rare cases. This problem has been fixed.
  • The operator deviation_image crashed if the input image is of type real and the mask size is greater than 101x101. This problem has been fixed.
  • The operator disp_channel sometimes returned the error 3513 ("Internal error: number of chords too big for num_max"). This problem has been fixed.
  • The operators dist_ellipse_contour_xld and dist_ellipse_contour_points_xld now handle the case of an ellipse degenerated to a straight line, i.e. Radius2 equal to zero, in a correct way.
  • The operator dump_window_image now works correctly with windows of type 'pixmap'.
  • The operator expand_domain_gray did not work correctly if the domain of the input image corresponded to the full domain but with some rows (other than the first and the last row) completely missing. In this case, expand_domain_gray returned the input image without filling up the missing rows. This problem has been fixed.
  • The operator find_marks_and_pose returned wrong results for line scan images if the component vy of the motion vector was negative. Furthermore, it returned slightly different results when called multiple times. These problems have been fixed.
  • The operator fit_line_contour_xld sometimes wrongly returned the error 3264 ("All points classified as outliers (ClippingFactor too small)"). This especially happened if all points of the input contour exactly or almost exactly lay on a straight line. This problem has been fixed.
  • The operator gen_circle sometimes rounded the center coordinates of the circle incorrectly. This problem has been fixed.
  • The operator gen_contour_polygon_rounded_xld generated contour segments with small observable direction error when sampling long straight line segments with a very short sampling distance. This problem has been fixed.
  • The operator get_window_extents returned wrong results for buffer windows. This problem has been fixed.
  • The operator gray_dilation_rect returned wrong results for real images that contain negative values. This problem has been fixed.
  • The operator image_points_to_world_plane did not work correctly if tuples of values were passed in Rows and Cols and the values had different types, i.e., some of the values were of type integer and some of them were of type real. In these cases, the resulting X and Y coordinates were not meaningful. This problem has been fixed.
  • The operator load_par_knowledge no longer causes a memory leak.
  • For large pixel values and large mask sizes, the operator mean_image returned erroneous results on int2, uint2, and int4 images. This problem has been fixed.
  • The operator measure_pos sometimes returned slightly inaccurate results (errors in the order of 1/100 pixel) for synthetic images with perfectly sharp edges. This problem has been fixed.
  • The operator phase_deg returned the phase angles erroneously as (atan2(imaginary part,real part)+PI)*90/PI. It now returns the phase angle correctly as atan2(imaginary part,real part)*90/PI, i.e., half the phase angle in degrees. Negative phase angles are normalized by adding 180. Hence, ImagePhase now contains half the phase angle normalized to the interval [0;179].
  • The operator read_image erroneously returned int4 images for 16 bit TIFF images. Now, it returns uint2 images. Furthermore, it did not read plain PPM images, i.e., images in which the color values are stored in ASCII as numbers, correctly. This problem has been fixed.
  • The operator read_template sometimes returned the error 8503 ("Inconsistent match file: coordinates out of range") or crashed when trying to read a template file that was previously written to a file by using write_template. This happened if at least one rotation of the template at any pyramid level contained no template points during the creation of the template with create_template_rot or create_template. This problem has been fixed. In order to avoid the creation of such inconsistent templates, the number of pyramid levels now is automatically reduced until all rotations on all levels contain a minimum number of template points. If a rotation at the lowest pyramid level does not contain enough template points, an appropriate error message is returned by create_template(_rot) and no model is created.
  • The operator segment_contours_xld sometimes crashed when passing contours with global attributes. Instead of crashing, sometimes the error message 6001 ("Not enough memory available") or 6002 ("Memory partition on heap has been overwritten") was returned. This problem has been fixed.
  • The operator test_self_intersection_xld sometimes returned meaningless results, i.e., values different from 0 or 1 that are not related to whether the input contour is self-intersecting or not. This problem has been fixed.
  • The operator vector_to_rigid was not thread-safe and might have returned wrong results or an error #6041 when running concurrently in multiple threads. This problem has been fixed.
  • There was a problem with writing some data code ECC200 models into a file with write_data_code_2d_model and re-reading them with read_data_code_2d_model. The problem occurred for models that were created in enhanced mode and saved without modifying the slant_max value. These models could not be read because of a rounding error while writing. This problem has been fixed.
  • The operator zero_crossings_funct_1d returned the error 6002 ("Memory partition on heap has been overwritten") if the function had exactly one control point whose y value is 0. This problem has been fixed.
  • The operator zoom_image_factor did not work correctly for uint2 images with Interpolation = 'none' and large zoom factors. This problem has been fixed.

o Manual
  • The "Quick Guide" is available in a new edition. It now describes how to load image files from a directory without using a sequence file. Besides, it references the new section in the "Programmer's Guide" that lists the exceptions to Standard HALCON's thread-safety.
  • The "Installation Guide" is available in a new edition. The chapter "Licensing" has been revised in order to better guide the reader to the searched information. Besides, corrections and extensions have been integrated , e.g., regarding the manual uninstallation and the use of dongles under Windows XP x64.
  • The "Programmer's Guide" is available in a new edition. The chapter on parallel programming has been revised and extended, introducing a section on parallel programming with Standard HALCON, which lists the exceptions to Standard HALCON's thread-safety. Besides, the "Style Guide" for parallel programming with Parallel HALCON and the part on HDevEngine have been extended.
  • The "Application Note on 3D Machine Vision" is available in a new edition. It has been corrected and extended, e.g., by a section on estimating the pose of circles using the operator get_circle_pose.
  • The "Application Note on 2D Data Codes" is available in a new edition. It now explains how to use the new parameter 'module_grid'.
  • In the "Application Note on 1D Metrology" (new edition) and in the description of the operators measure_pairs and fuzzy_measure_pairs, the effect of the parameter Transition is now explained in more detail.
  • In the Reference Manuals, the header of the example for an operator now indicates if the example itself is in a different programming language, e.g., a HDevelop example in the C++ Reference Manual.
  • In the descriptions of the operators binocular_disparity and binocular_distance now the variables used in the formulas are listed and explained more concisely. Regarding the gray values, it is mentioned additionally that the gray values of the unprocessed image are used.
  • The documentation of change_domain has been extended. It now notes more clearly that the input region must not exceed the matrix of the input image and that using such corrupt iconic objects during subsequent operations will likely lead to program crashes.
  • The behavior of the operator complement for the case that the system flag 'clip_region' is set to 'false' is now explained in more detail.
  • In the description of copy_obj, an error in the restriction for the parameter NumObj has been corrected.
  • The description of count_seconds has been revised.
  • In the description of create_shape_model and create_scaled_shape_model, the restriction of the parameter AngleStep has been extended to indicate that values larger than pi/16 are set to pi/16.
  • The description of estimate_noise now lists some typical applications of this operator.
  • The documentation of find_1d_bar_code_region now includes a note that in images with several bar codes with varying orientation only those in the dominating orientation are found.
  • The main differences between the algorithms of Huber and Tukey are now explained for the fit_* operators in the reference manual.
  • In the description of gen_rectangle2, the restriction for the parameter Length2 was unnecessary and has therefore been deleted.
  • In the description of the operator get_data_code_2d_results in the reference manual, some clarifications have been added. In particular, it is now mentioned that the number of decoding errors returns the number of code words that led to problems, and that the results of the operator depend also on the pyramid level where the operation stopped.
  • For the measure_* operators in the reference manual it is now mentioned that the value for the parameter Sigma should be less than 0.5*Length1.
  • In the description of measure_pairs and fuzzy_measure_pairs in the reference manual the mode 'all' for the parameter Transition is explained in more detail.
  • The documentation of orientation_region and orientation_xld stated a wrong interval for the resulting orientation. In the documentation an interval of [-pi/2;3/2pi] was specified. However, the correct interval is [-pi; pi]. The documentation has been corrected accordingly.
  • In the description of rank_region, an error in the section "Attention" has been corrected.
  • In the description of set_system and get_system, the obsolete system parameters ignore_colormap, only_lines, and single_lut have been deleted. For the system parameter icon_name a description was added.
  • The term skeleton is now shortly explained inside the reference manual in the description for the operator skeleton.
  • The description of smooth_funct_1d_gauss and smooth_funct_1d_mean now notes that the functions to smooth must be equidistant.
  • The description of tile_images_offset has been extended by an example how to use this operator to enlarge an image.

HALCON/C++

o Bug Fixes
  • The class implementation of HALCON/C++ returned error #7200 when passing empty objects. It returns an empty object now.
  • Due to a compiler bug in Microsoft Visual C++ 6.0, the method HCtrlVal::ClearCtrlVal() sometimes crashed under Windows if the HCtrlVal object contained a string. This problem has been fixed.
  • When exiting a program that uses HALCON/C++, HALCON might have caused an error or crash in very rare cases. This problem has been fixed.

HALCON/C

o Manual
  • In the PDF version of the Reference Manual, tuple versions of many operators (T_*) were not listed. This has been corrected. To keep the table of contents readable, here now only the base name of the operator is used (even if only the tuple version exists). In the index, all existing operator versions are listed explicitly.

    In the HTML version, the content pages for the sections (toc_*) now also list only the base name of the operator. In contrast to the PDF version, in the index only one entry per operator is listed, with (T_) indicating that the operator is provided in a simple and in a tuple version.


HALCON/COM

o Bug Fixes
  • When exiting a program that uses HALCON/COM, HALCON might have caused an error or crash in very rare cases. This problem has been fixed.

o Examples
  • The new example cpp.net\Matching shows how to use HALCON/COM within managed C++ (Visual C++ 2005) to creating a matching and measurement application.

o Manual:
  • The part on HALCON/COM in the "Programmer's Guide" now warns that you must not mix instances of classes like HFramegrabberX or HShapeModelX with calls to operators like CloseFramegrabber or ClearAllShapeModels (via HOperatorSetX).

HDevEngine

o Bug Fixes
  • The class HDevProcedureCall had a wrong limitation regarding the maximum number of procedure parameters. Therefore, the maximum number of procedure parameters per parameter class has been changed and is now limited to 100, according to the limitations when creating procedures in HDevelop. Note that programs that use class HDevProcedureCall will most likely be binary incompatible and therefore need to be recompiled.
  • Executing the methods HDevProcedureCall::SetInputObject(const char*, const Hobject&), HDevProcedureCall::SetInputCtrl(const char*, const Htuple&), HDevProcedureCall::GetOutputObject(const char*, Hobject*), and HDevProcedureCall::GetOutputCtrl(const char*, Htuple*), caused a deadlock on Linux/UNIX systems. This problem has been fixed.
  • Executing the methods HDevProcedureCall::HDevProcedureCall(const char*), HDevProcedureCall::SetInputObject(const char*, const Hobject&), HDevProcedureCall::GetOutputCtrl(const char*, Htuple*), HDevEngine::SetProcedurePath(const char*), and HDevEngine::DeleteProcedure(const char*) could cause a deadlock in case an error occurred during execution. This applied for Windows systems only in case of multithreaded applications and for Linux/UNIX systems for all applications. This problem has been fixed.

o Manual
  • The part on HDevEngine in the "Programmer's Guide" has been revised and extended. It now describes the limitations of Parallel HDevEngine in more detail and shows how to create applications with it. A new chapter lists the methods of the provided classes (C++ and COM version) with a short description and contains additional tips.

Frame Grabber Interfaces

The latest information about new extensions and newly supported boards can be found on MVTec's web server.
o New Frame Grabber Interfaces:
  • HALCON's 1394IIDC interface for all IIDC 1394 compliant cameras is now also available for Linux x86 and Windows x64.
  • HALCON now also includes the DahengCAM interface for USB 2.0 cameras from Daheng Group. The new example programs dahengcam.dev, dahengcam_2cameras.dev, dahengcam_parameters.dev, and dahengcam_simple.dev in the directory examples\hdevelop\Image\Framegrabber show how to use this interface.
  • HALCON now also includes the dPict interface to support the Aexeon and Nexeon frame grabber boards from dPict Imaging. The new example programs dpict.dev, dpict_parameters.dev, and dpict_simple.dev in the directory examples\hdevelop\Image\Framegrabber show how to use this interface.
  • HALCON now also includes the LuCam interface to support the USB 2.0 cameras from Lumenera Corporation. The new example programs lucam_2cameras.dev, lucam_crop.dev, lucam_simple.dev, and lucam_parameters.dev in the directory examples\hdevelop\Image\Framegrabber show how to use this interface.
  • HALCON now also includes the pylon interface to support the Basler scout GigE Vision cameras. The new example programs pylon.dev, pylon_crop.dev, pylon_parameters.dev, and pylon_simple.dev in the directory examples\hdevelop\Image\Framegrabber show how to use this interface.
  • HALCON's uEye interface for for the uEye USB 2.0 cameras from IDS Imaging Development Systems GmbH is now also available for Linux x86.

o Modified Frame Grabber Interfaces

Extension Package Interface

o Examples
  • The example filter user_laplace in the example extension package now returns absolute values instead of clipping negative values to 0.

Miscellaneous

o Installation
  • The documentation is now included in the downloadable setup packages.

o Licensing
  • The USB dongle driver for Windows has been updated to version 4.99. Note that this version now also supports the usage of HALCON 7.1.2 for Windows x86 (i.e., ARCHITECTURE set to i586-nt4) on a Windows x64 system.

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






Webmaster Last modified: Fri December 15 17:27:07 CET 2006