MVTEC Halcon 18.11.4.0 Runtime 64位Linux系统运行时版本
MVTEC Halcon 18.11.4.0 Runtime 64位Linux系统运行时版本HALCON 18.11.4.0 Linux Runtime运行版 (x64-linux)
文件名: halcon-18.11.4.0-linux-runtime.tar.gz
文件大小: 168717677 字节 (160.90 MB)
修改日期: 2021-12-03 00:07
MD5: 449ee018de24ccf2c5b493a67ac430b5
SHA1: 76362c3d0e5dadc31e860bec4d8e2e8af025bc77
SHA256: 2c252f4662fc2ea332dfc818e6be96db40957bfa196345765fcc36487ae79cbe
CRC32: 7e309b94
百度网盘下载地址:
通过百度网盘分享的文件:halcon-18.11.4.0-linux-runtime.tar.gz
链接:https://pan.baidu.com/s/1lvKuRkqrYSPTyyMWAb4DeQ
提取码:**** Hidden Message *****
--来自百度网盘超级会员V7的分享
Release Notes for HALCON 18.11.4 SteadyThis document provides the release notes for MVTec HALCON 18.11.4.0 Steady, as released in December 2021.HALCON 18.11.4.0 Steady is primarily a maintenance release that fixes all known bugs in HALCON 18.11.3; besides, it provides added functionality.Contents
[*]Compatibility
[*]Licenses
[*]HALCON Library
[*]HALCON Applications
[*]Image Acquisition Interfaces
[*]Digital I/O Interfaces
[*]Extension Packages
[*]Discontinuation of the x86-win32 Platform Version for Windows
[*]Supported Operating Systems
[*]Detailed Description of Changes in HALCON 18.11.4.0 Steady
[*]HDevelop
[*]Bug Fixes
[*]HDevEngine
[*]Bug Fixes
[*]HALCON Library
[*]New Functionality
[*]Bug Fixes
[*]HALCON/C++
[*]HALCON/.NET
[*]HBench
[*]Image Acquisition Interfaces
[*]Digital I/O Interfaces
[*]Documentation
[*]Installation
[*]Release Notes of Previous HALCON Versions
CompatibilityLicensesHALCON 18.11 Steady licenses are also valid for HALCON 18.11.4.0 Steady. In contrast, all HALCON 13.0 licenses or licenses of earlier versions must be replaced or upgraded. Please contact your local distributor.
HALCON LibraryHALCON 18.11.4.0 Steady is fully compatible with HALCON 18.11 Steady, HALCON 18.11.2, and HALCON 18.11.3 except for the changed behavior of some operators owing to bug fixes. Compared to HALCON 13.0, many extensions have been introduced. Thus, the HALCON 18.11 Steady libraries are not compatible with HALCON 13.0 or earlier versions.In detail, please note the following incompatibility with respect to HALCON 18.11.3 :
[*]get_data_code_2d_results now returns the value '-1' for all result-specific parameters if 'CandidateHandle' is 'general'. Applications that expect another value or an empty tuple need to be adapted. More information.
[*]Due to changes in merging scanlines, find_bar_code might return different results if the barcode parameter 'merge_scanlines' is set to 'true'. More information.
[*]The orientation returned by text_line_orientation can differ slightly from previous results. More information.
[*]set_scene_3d_instance_param now returns the error 1302 ("Wrong value of control parameter 2") if indices of non-existent instances are passed. More information.
HALCON ApplicationsApplications (i.e., executables) developed with HALCON 18.11 Steady, HALCON 18.11.2, or HALCON 18.11.3 can be used with HALCON 18.11.4.0 Steady, i.e., HALCON 18.11.4.0 Steady is binary compatible with HALCON 18.11 Steady, HALCON 18.11.2, and HALCON 18.11.3.All programs (C, C++ or .NET) that have been developed with HALCON 13.0 must be recompiled. The incompatibility with HALCON 13.0 or earlier versions mainly concerns the binaries, with only few changes in the language interfaces. If you encounter problems during recompiling your programs, please check the detailed description of changes below and for HALCON 18.11 Steady, HALCON 18.11.2, and HALCON 18.11.3, respectively.Please note that applications using HALCON/.NET (and HDevEngine/.NET) have local copies of the corresponding assemblies (halcondotnet.dll etc.). After installing HALCON 18.11.4.0 Steady, these applications would therefore use the old version of the HALCON/.NET interface together with the new version of the HALCON library. In order to benefit from the bug fixes in the HALCON/.NET interface as well, you must either replace the assemblies manually or recompile the projects. If you do not recompile the application, you need to add an application configuration file mapping the application's expected assembly version to the new version. See the Programmer's Guide for more information.
Image Acquisition InterfacesIn general, image acquisition interfaces of HALCON 18.11.4.0 Steady are library compatible to those of HALCON 18.11 Steady, HALCON 18.11.2, and HALCON 18.11.3, as well as HALCON 13.0.x.HALCON 18.11.4.0 Steady includes only a subset of available image acquisition interfaces. Image acquisition interfaces that are included are: BitFlow, DirectFile, DirectShow, Ensenso-NxLib, File, GenICamTL, GigEVision2, GStreamer, LinX, MILLite, MultiCam, O3D3xx, pylon, SaperaLT, SICK-3DCamera, SiliconSoftware, uEye, USB3Vision, and Video4Linux2. You can download additional interfaces from our web server.
Digital I/O InterfacesIn general, digital I/O interfaces of HALCON 18.11.4.0 Steady are library compatible to those of HALCON 18.11 Steady, HALCON 18.11.2, and HALCON 18.11.3, as well as HALCON 13.0.x.HALCON 18.11.4.0 Steady includes only a subset of available digital I/O interfaces. Digital I/O interfaces that are included are: Linux-GPIO, OPC_UA, and Hilscher-cifX. You can download additional interfaces from our web server.
Extension PackagesExtension packages developed with HALCON 18.11 Steady, HALCON 18.11.2, or HALCON 18.11.3 can be used with HALCON 18.11.4.0 Steady without further action. Extension packages developed with HALCON 13.0 or earlier versions must be re-generated. Note that the old makefiles for HALCON/C++ must be adapted according to the sample makefile under extension_packages/halconuser.
Discontinuation of the x86-win32 Platform Version for WindowsWith HALCON 20.11, the x86-win32 platform version for Windows was discontinued. Switch any existing x86-win32 applications to the x64-win64 platform version for Windows to be able to use HALCON 20.11 or later.
Supported Operating SystemsWindowsHALCON 18.11.4.0 Steady has been compiled for the following Windows platform versions:
[*]x86-win32 platform version for Windows 7/8.1/10 or Windows Server 2008 R2/2012 R2/2016/2019 on Intel Pentium 4 or AMD Athlon 64 with SSE2
[*]x64-win64 platform version for Windows 7/8.1/10/11 or Windows Server 2008 R2/2012 R2/2016/2019/2022 x64 Edition on Intel 64 or AMD 64 processors
The setup process checks whether it is running on a 32- or 64-bit system and provides a suitable list of platform versions that can be installed. During the installation, the environment variable HALCONARCH is set to x86sse2-win32 or x64-win64 to indicate the installed platform version. Please note that if you want to switch to another platform version, you must first install it. Then, you must adapt the environment variable HALCONARCH (see the Installation Guide for more information).
LinuxHALCON 18.11.4.0 Steady has been compiled for the following Linux platform versions:
[*]x64 platform version for Linux x86_64, GLIBC_2.17, GLIBCXX_3.4.15, on Intel 64 or AMD 64 processors
[*]armv7a platform version for Linux armv7a, Kernel with hidraw support, hard-float ABI, GLIBC_2.7, GLIBCXX_3.4.15 on Armv7-A processors with NEON support
[*]aarch64 platform version for Linux aarch64, Kernel with hidraw support, GLIBC_2.17, GLIBCXX_3.4.20 on AArch64 processors
Please refer to the Installation Guide for detailed system requirements corresponding to the different Application Binary Interfaces.
macOSHALCON 18.11.4.0 Steady has been compiled for the x64 platform version of macOS 10.13/10.14/10.15 on Intel 64.
Detailed Description of Changes in HALCON 18.11.4.0 SteadyThe changes in HALCON 18.11.4.0 Steady are described with respect to HALCON 18.11.3 .HDevelopBug FixesAssistants
[*]Deleting individual calibration images in the Calibration Assistant, followed by adding new images could yield incorrect calibration results as not all images were used in the calibration process. This problem has been fixed.
[*]The Calibration Assistant wrongly indicated an error when trying to modify calibration parameters if no images were loaded. This problem has been fixed.
[*]The code generated by the matching assistant for finding DXF models only considered the first (red) channel ('ignore_local_polarity') instead of all channels ('ignore_color_polarity') when using color images. This problem has been fixed.
[*]Using planar deformable matching with calibration in the HDevelop Matching Assistant could lead to failures, even though the model was actually found correctly and code generated from the assistant would work fine. This problem has been fixed. In addition, the assistant now visualizes the transformed model contour properly for this scenario.
Code Export
[*]If an output variable for an operator call was also used in an expression passed as input parameter (e.g., concatenation), the export to C# and VB.net did not work. This problem has been fixed.
[*]For C, Visual Basic .NET, and C#, HDevelop exported the comparison of two objects '( obj1 != obj2)' as test_equal_obj, without the necessary negation. This problem has been fixed.
[*]Using the HDevWindowStack member functions of the C++ language interface before calling the first HALCON operator led to a crash. This problem has been fixed.
GUI
[*]For big numbers, variable inspection may have corrupted the input. This problem has been fixed.
[*]Minimizing the line profile dialog caused it to stop updating after ROI changes. This problem has been fixed.
[*]In the Move mode of HDevelop's graphics window, moving an image outside of the graphics window while pressing the CTRL key (i.e., displaying the pixel info) caused the displayed image to jump and change its display size. This problem has been fixed.
[*]When opening the 'Invalid Lines' tab of the Quick Navigation window, HDevelop crashed in rare cases. This problem has been fixed.
[*]HDevelop crashed when either a zoom window received keyboard input or the content of a zoom window was moved by dragging. This problem has been fixed.
[*]In certain cases, HDevelop's autocompletion obscured the line that was currently being edited. This happened if a procedure was running in a subthread during editing. This problem has been fixed.
[*]Double-clicking in the HDevelop graphics window could result in incorrect coordinates when using interactive operators like get_mposition. This problem has been fixed.
[*]HDevelop could crash when using the magnify mode in a graphics window. This problem has been fixed.
IDE
[*]If the variable window was closed then the automatic display of changed iconic variables in the graphics window did not work. This problem has been fixed.
[*]HDevelop was not able to load ROIs of the type 'Arbitrary Region' from file. This problem has been fixed.
Miscellaneous
[*]Calls to HDevelop's inline functions tuple_select and tuple_substr could have been corrupted by HDevelop's command line option reset_free_text. This happened when the first argument of the inline function was an infix operation, e.g., reset_free_text turned six := ( + ) into six := + , which has completely different semantics. This problem has been fixed.
HDevEngineBug Fixes
[*]Failing to initialize a vector output parameter of a procedure caused the return values for all subsequent output parameters to be ignored as well if the call was made using par_start. This problem has been fixed.
[*]Initializing HDevEngine in a multi-threaded context could cause a crash in rare cases. This problem has been fixed.
[*]When executing programs or procedures with par_start subthreads, an uncaught exception in a subthread could cause a crash of the application. This problem has been fixed.
[*]When JIT compiling procedures that contained comparisons of iconic variables using the == operator, the HEngine could crash either during the compilation or when attempting to execute the compiled procedure. This problem has been fixed.
HALCON LibraryNew FunctionalityBar Code
[*]HALCON now supports the GS1 application identifier 395x.
[*]HALCON now supports all GS1 application identifiers specified in the latest version of the "GS1 General Specifications" (January 2021).
Data Code
[*]HALCON now supports the GS1 application identifier 395x.
[*]HALCON now supports all GS1 application identifiers specified in the latest version of the "GS1 General Specifications" (January 2021).
Bug Fixes3D
[*]Some files in the binary PLY format could not be read by read_object_model_3d. This problem has been fixed.
[*]The procedure visualize_object_model_3d returned the error "Wrong type or value for parameter" when the used attribute for GenParamName 'color_attrib', 'red_channel_attrib', 'green_channel_attrib', 'blue_channel_attrib' was not attached to the points of the 3D object model. This problem has been fixed.
visualize_object_model_3d now returns the error extended by GenParamValue "may not be attached to the points of the 3D object model. Compare the parameter AttachExtAttribTo of set_object_model_3d_attrib."
[*]When using find_surface_model with 'ReturnResultHandle' set to 'true', a memory leak occurred. This problem has been fixed.
[*]triangulate_object_model_3d, find_text, segment_object_model_3d, and prepare_object_model_3d with parameter 'Purpose' set to 'segmentation' have not been thread-safe. This problem has been fixed.
[*]register_object_model_3d_pair and register_object_model_3d_global crashed, leaked memory, or deadlocked if at least one of the input models did not contain any points. This problem has been fixed.
[*]Errors were not handled properly when passing wrong parameters to set_metrology_model_param, get_metrology_model_param, select_object_model_3d, volume_object_model_3d_relative_to_plane, or adjust_mosaic_images. This problem has been fixed.
[*]triangulate_object_model_3d with 'Method' set to 'greedy' crashed in very rare cases. This problem has been fixed.
[*]binocular_disparity, binocular_distance, and reconstruct_surface_stereo for a stereo model with 'disparity_method' set to the default 'binocular' may have crashed in rare cases when applied to large images. This problem has been fixed.
[*]pose_compose, pose_invert, serialize_pose, write_pose, set_metrology_model_param, create_calib_descriptor_model, create_planar_calib_deformable_model, create_planar_calib_deformable_model_xld, refine_surface_model_pose, refine_surface_model_pose_image, and set_surface_model_param did not raise an error when an input pose contained an invalid pose type in its last entry. This problem has been fixed. Now, the operators return the error 8427 ("Wrong type in Pose (rotation / translation)").
[*]segment_object_model_3d could crash if the input 3D object model contained triangles that were topologically invalid. This problem has been fixed. Now, the operator returns an error when encountering such a topology.
[*]simplify_object_model_3d in rare cases generated meshes that subsequently could not be segmented by segment_object_model_3d but raised an error. This problem has been fixed.
[*]disp_object_model_3d, display_scene_3d, and render_object_model_3d in rare cases might have crashed for ObjectModel3D containing primitives not of type plane. get_object_model_3d_params with GenParamName set to 'has_primitive_rms' or 'primitive_rms' in rare cases did not work correctly for primitives of type plane. These problems have been fixed.
[*]triangulate_object_model_3d with 'Method' set to 'implicit' in rare cases generated meshes that were not watertight, i.e., were not completely closed. This problem has been fixed.
[*]set_scene_3d_instance_param did not work correctly if (unrelated) instances had been removed from the scene before. This problem has been fixed. Note that this change affects the compatibility. Read more.
Bar Code
[*]In rare cases, find_bar_code failed to decode Pharmacodes if the width of a thick bar was larger than the width of the spaces. This problem has been fixed.
[*]In rare cases, find_bar_code, decode_bar_code_rectangle2, get_bar_code_result, and get_bar_code_object raised the error 3513 ("Internal error: number of chords too big for num_max"). This problem has been fixed.
[*]When in training mode, find_bar_code sometimes returned results that could not be decoded with the trained parameter afterwards. This problem has been fixed.
[*]In very rare cases, find_bar_code could have caused a deadlock if the barcode parameter 'merge_scanlines' was set to 'true'. This problem has been fixed. Note that this change affects the compatibility. Read more.
[*]In find_bar_code, the training of the parameter 'barcode_width_min' could lead to wrong results when training multiple different images. This problem has been fixed.
[*]In rare cases, find_bar_code could misread certain GS1 Databar Limited barcodes, resulting in a slightly wrong symbol region and an incorrectly decoded string. This problem has been fixed.
[*]For Pharmacodes with 16 bars, get_bar_code_result always returned the 'Decode' grade 0 ('quality_isoiec15416'). This problem has been fixed.
[*]In some cases, find_bar_code did not return any result if it was aborted or a timeout was set even though results could have been found with a smaller timeout or earlier abort. This problem has been fixed.
Calibration
[*]merge_regions_line_scan may have crashed in rare cases with empty output regions. This problem has been fixed.
Classification
[*]add_sample_class_train_data wrongly handled mixed float and integer values inside the parameter 'Features'. This problem has been fixed.
Color Processing
[*]In rare cases, an overflow could occur in the operator trans_from_rgb for the color spaces 'cielchab' and 'cielchuv', leading to wrong results for single pixels. This problem has been fixed.
Compute Device
[*]When used with large images of more than two gigapixels, some OpenCL operations (arithmetic image operations like abs_diff_image) were very slow or returned an error. This problem has been fixed.
Data Code
[*]In some cases, get_data_code_2d_results returned inconsistent values if a result-specific parameter name was passed in 'ResultNames' but 'CandidateHandle' was set to 'general'. This problem has been fixed. Now, get_data_code_2d_results returns the value '-1' in those cases. Note that this change affects the compatibility. Read more.
[*]For mirrored Data Matrix ECC 200 codes with a square shape, get_data_code_2d_objects returned wrong results for 'module_1_rois' and 'module_0_rois' in some cases. Additionally, get_data_code_2d_results returned wrong results for 'bin_module_data' for the same cases. These problems have been fixed.
[*]In very rare cases, find_data_code_2d showed non-deterministic behavior if the Data Matrix ECC 200 code was located very close to the image borders. This problem has been fixed.
[*]get_data_code_2d_objects returned wrong results for 'module_1_rois' and 'module_0_rois' in case of mirrored QR codes. This problem has been fixed.
[*]When find_data_code_2d was called in training mode for data codes with modules greater than 100 pixel, the parameters 'module_size_min' and 'module_size_max' in some cases were set to values greater than 100, thus exceeding the maximum value that can be set for them with set_data_code_2d_param. This problem has been fixed.
[*]For Data Matrix ECC 200 symbols, get_data_code_2d_results in some cases returned wrongly calculated grades for fixed pattern damage with the parameters 'quality_aimdpm_1_2006' or 'quality_isoiec_tr_29158'. This problem has been fixed.
[*]find_data_code_2d in rare cases could not find and decode mirrored Data Matrix ECC 200 codes if the parameter 'mirrored' was set to 'yes' but could if it was set to 'any'. This problem has been fixed.
[*]For mirrored Data Matrix ECC 200 codes with a square shape and multiple data fields, get_data_code_2d_objects returned wrong results for 'module_1_rois' and 'module_0_rois' in some cases. This problem has been fixed.
[*]HALCON did not cope well with QR codes encoded in local encoding where a single character was split between two decoding modes. This problem has been fixed.
[*]The grades for Unused Error Correction, Modulation, and Reflectance Margin have been computed incorrectly for M1 MicroQR codes. This problem has been fixed.
[*]get_data_code_2d_objects leaked memory if the process and/or search image for candidates with a process and/or search image on pyramid level -1 was queried. This problem has been fixed.
[*]The QR code reader crashed in rare cases with very small codes. This problem has been fixed.
Deep Learning
[*]Serializing and deserializing a classifier as a handle was leading to a crash. This problem has been fixed.
File
[*]In rare cases, read_image read only one color channel of bitmap RGB image files (BMP). This problem has been fixed.
[*]read_image leaked memory for 'jpegxr' images containing an alpha channel. This problem has been fixed.
Filter
[*]abs_diff_image with image type 'byte' returned wrong results if the multiplication parameter was larger than 127 and at least one of the available SIMD optimizations (SSE41 or AVX2) were enabled. This problem has been fixed.
[*]In rare cases, abs_diff_image returned wrong results for image type 'byte' and 'int1' on all supported platforms. The maximum difference was 1 gray value. This problem has been fixed.
[*]In rare cases, optical_flow_mg could return nondeterministic results that might include NaNs. This problem has been fixed.
Graphics
[*]If any interpolation mode but 'nearest_neighbor' was chosen with set_part_style, the visualization displayed garbage data outside the image when setting the window part such that the image did not completely fill the window. This problem has been fixed.
[*]When using specific corner-case parameters with legacy pixmap windows, a crash could occur. This problem has been fixed.
[*]drag_region1, drag_region2, and drag_region3 could not be canceled correctly using the HDevelop stop button when running in windows opened with open_window. This problem has been fixed.
[*]In very rare cases, draw_rectangle2 returned the error 3513 ("Internal error: number of chords too big for num_max") if the current image part was very small. This problem has been fixed.
[*]In very rare cases, dev_display and disp_obj crashed if the region or image domain to be displayed had to be scaled down to fit the window and contained a large number of runlengths. This problem has been fixed.
[*]get_os_window_handle could return truncated handles on 64-bit systems. This problem has been fixed.
[*]get_drawing_object_iconic and get_drawing_object_params were not synchronized with window events. In rare cases, get_drawing_object_iconic thus returned the error 3513 ("Internal error: number of chords too big for num_max"). This problem has been fixed.
[*]disp_obj with the '3d_plot' paint mode displaying contour lines crashed in rare cases on Linux systems. This problem has been fixed.
Inspection
[*]Some operators could crash when used on large images in HALCON XL, including apply_texture_inspection_model, train_texture_inspection_model, find_bar_code, find_data_code_2d, find_ncc_model, and find_shape_model. This problem has been fixed.
Images
[*]threshold in rare cases did not clip 'MinGray' and 'MaxGray' to the correct bounds for 'int4' images. set_grayval in rare cases did not clip 'Grayval' to the correct bounds for 'int8' images. gen_image_proto, paint_region, and overpaint_region in some cases for large values did not paint the correct 'Grayval' for 'int8' images. These problems have been fixed.
[*]cooc_feature_matrix could crash on non-symmetric input. This problem has been fixed. Now, cooc_feature_matrix returns the error 2106 ("Wrong image width") in case of non-symmetric input.
[*]write_image did not correctly write images bigger than 2 GB. This problem has been fixed.
Matching
[*]read_shape_model crashed in rare cases when the model was corrupt. This problem has been fixed.
[*]In rare cases, create_uncalib_descriptor_model could lead to a memory corruption if the operator was unable to create a model because of too few descriptor points. This problem has been fixed.
[*]The operators match_fundamental_matrix_distortion_ransac, proj_match_points_distortion_ransac, proj_match_points_distortion_ransac_guided, vector_to_fundamental_matrix_distortion, and vector_to_proj_hom_mat2d_distortion could fail with memory errors in rare cases. This problem has been fixed.
[*]An error in the parallelization of shape-based matching resulted in a miss of a potential match in very rare cases. This problem has been fixed.
[*]set_shape_model_metric, set_local_deformable_model_metric, set_planar_calib_deformable_model_metric, and set_planar_uncalib_deformable_model_metric crashed in rare cases when the operator was cancelled or when an out of memory error occurred. This problem has been fixed.
Measure
[*]Errors were not handled properly when passing wrong parameters to set_metrology_model_param, get_metrology_model_param, select_object_model_3d, volume_object_model_3d_relative_to_plane, or adjust_mosaic_images. This problem has been fixed.
[*]In rare cases, fuzzy_measure_pairs crashed with cyclic measure objects (i.e., spanning 360 degrees) if no edges were found. This problem has been fixed.
Morphology
[*]gray_range_rect crashed in rare cases if operator parallelization was disabled. This problem has been fixed.
OCR
[*]In some cases, the result of find_text with text models of mode 'auto' was dependent on the internal image width and height of the system or the current thread. This problem has been fixed.
[*]In multi-threading applications, HALCON could crash during the execution of do_ocr_word_cnn, do_ocr_word_mlp, do_ocr_word_svm, or do_ocr_word_knn. This problem has been fixed.
[*]In some cases, text_line_orientation used uninitialized values outside of the input region, which led to inaccurate results. This problem has been fixed. Note that this change affects the compatibility. Read more.
[*]In some cases, find_text returned overlapping or duplicate regions when using text models created with mode 'auto'. This problem has been fixed.
Region
[*]gen_region_points, gen_region_runs, and gen_rectangle1 did not raise an error if coordinates were too small or too big for MAX_FORMAT. This problem has been fixed. Now, they return the errors 3040 ("Row value of a coordinate > 2^15-1"), 3041 ("Row value of a coordinate < -2^15"), 3042 ("Column value of a coordinate > 2^15-1"), or 3043 ("Column value of a coordinate < -2^15"), respectively.
[*]rectangularity, as well as region_features and select_shape for the feature 'rectangularity', sometimes unnecessarily ran out of memory for very large regions. This problem has been fixed.
Segmentation
[*]The operators watersheds and watersheds_threshold did not always return the correct watersheds when passing an image of type 'real' with a reduced domain. This problem has been fixed.
System
[*]Under certain conditions, timeouts for socket operations were ignored. This problem has been fixed.
[*]Under certain language settings on Windows systems, socket-related extended error messages were not encoded correctly and unreadable. This problem has been fixed.
[*]In rare cases, HALCON could crash when resetting a program in HDevelop with F2 while a mutex or another synchronization object was destructed. This problem has been fixed.
Transformation
[*]In rare cases, projective_trans_image_size could have crashed or resulted in undefined behavior. This problem has been fixed.
Tuple
[*]When calling the operators get_handle_tuple, get_handle_object, or get_handle_param simultaneously from two different threads for the first time, HALCON could return an incorrect error code or in crash in rare cases. This problem has been fixed.
[*]Serializing the same dictionary or message either through write_dict, write_message, or serialize_handle from multiple threads at the same time could lead to incorrect serializations, error messages or, in rare cases, crashes. This problem has been fixed. The serialization of dictionaries and handles is now fully reentrant.
[*]When calling integer_to_handle with multiple input integers and if some of those integers did not represent a handle or represented a cleared handle, the operator could leave the other handles in a defective state. This problem has been fixed.
[*]If the handle legacy mode was enabled and either clear_handle was called twice on the same handle, or handle_to_integer was called on an already cleared handle, HALCON could show undefined behavior and crash in rare cases. These problems have been fixed. handle_to_integer now raises an exception when called on an already cleared handle.
XLD
[*]read_contour_xld_dxf and read_polygon_xld_dxf did not properly treat the orientation of the arbitrary axis for the DXF 2D entities POLYLINE and ARC. This caused wrong position and/or orientation of XLDs when an arbitrary axis was specified. This problem has been fixed.
[*]DxfStatus messages of read_contour_xld_dxf and read_polygon_xld_dxf were not returned completely in some cases. This problem has been fixed.
[*]In rare cases, union_cotangential_contours_xld returned suboptimal results when the parameter 'FitLength' was set to 'auto'. This problem has been fixed.
[*]When connecting both ends of two contours to each other, union_cotangential_contours_xld sometimes connected the wrong endpoints. This problem has been fixed.
[*]gen_cube_map_mosaic and gen_spherical_mosaic may have crashed in rare cases. This problem has been fixed.
[*]Certain excessively large values of 'Lookaround' for get_contour_angle_xld were not detected as invalid, resulting in a crash. This problem has been fixed.
[*]gen_contour_nurbs_xld crashed if an empty tuple was passed to the parameter 'Weights'. This problem has been fixed. Now, if an empty tuple is passed, the default value 'auto' is used.
[*]distance_cc_min_points returned an erroneous point in case of crossing contours. This problem has been fixed.
[*]union_collinear_contours_xld did not unite almost collinear contours for large values of 'MaxAngle' in rare cases. This problem has been fixed.
HALCON/C++Functionality
[*]The performance of convert_vector_to_tuple and convert_tuple_to_vector_1d when using the C++ language interface has been substantially improved under certain circumstances.
Bug Fixes
[*]The ToLArr, ToDArr, and ToSArr HTuple member functions in the HALCON C++ language interface could leak memory in case an exception was thrown. This problem has been fixed.
[*]Accessing the string value of a tuple element with .C() threw an exception when the tuple was a mixed tuple. This problem has been fixed.
HALCON/.NETFunctionality
[*]The performance of convert_vector_to_tuple and convert_tuple_to_vector_1d when using the .NET language interface has been substantially improved under certain circumstances.
Bug Fixes
[*]On 64-bit systems, certain window messages could lead to arithmetic overflow when using HWindowControlWPF. This problem has been fixed.
HBenchBug Fixes
[*]The hbench memory benchmarks could crash on Linux machines in low memory situations. This problem has been fixed.
Image Acquisition InterfacesThe latest information about new interface revisions and newly supported image acquisition devices can be found on MVTec's web server. Please refer to the release notes within the documentation of the individual image acquisition interfaces for information about improvements, bugfixes, or whether a new revision of the corresponding device driver is required.Miscellaneous
[*]GStreamer Image Acquisition Interface was not listed when requesting the parameter 'Name' of the operator info_framegrabber or open_framegrabber via the operator get_param_info.
Linux-GPIO I/O Interface was not listed when requesting the parameter 'IOInterfaceName' of the operator control_io_interface, open_io_device, or query_io_interface via the operator get_param_info. These problems have been fixed.
[*]The MVTec GigE Vision Streaming Filter version 2.2.8.4, which is part of the Windows installer, fixes two problems:
[*]With the streaming filter, EventTransferEnd was only fired for successfully received blocks but not for undeliverable ones.
[*]In rare cases, if an application did not shutdown gracefully while streaming was underway, automatic unloading of the streaming filter could lead to a crash of the operating system.
Image Acquisition Example Programs
[*]The HDevelop example program hdevelop/Image/Acquisition/genicamtl_basler_tof_objectmodel3d.hdev has been replaced with the new example program genicamtl_basler_blaze_objectmodel3d.hdev.
[*]It is now possible to write and load persistence files for individual GenTL Producer modules or the GenTL Consumer if the device has already been opened. This was so far only possible for the remote device. The persistence file to be written or loaded is selected with the parameter 'settings_selector'.
The following HDevelop examples have been added to demonstrate writing parameter values to files and restoring parameter values from files:
[*]hdevelop/Image/Acquisition/gstreamer_parameter_persistence.hdev
[*]hdevelop/Image/Acquisition/gigevision2_parameter_persistence.hdev
[*]hdevelop/Image/Acquisition/genicamtl_parameter_persistence.hdev
[*]hdevelop/Image/Acquisition/usb3vision_parameter_persistence.hdev
[*]The example hdevelop/Image/Acquisition/usb3vision_information.hdev has been added to gather information about the system and the camera configuration for USB3Vision devices.
Digital I/O InterfacesThe latest information about new interface revisions and newly supported digital I/O interfaces can be found on MVTec's web server. Please refer to the release notes within the documentation of the individual digital I/O interfaces for information about improvements, bugfixes, or whether a new revision of the corresponding device driver is required.Miscellaneous
[*]GStreamer Image Acquisition Interface was not listed when requesting the parameter 'Name' of the operator info_framegrabber or open_framegrabber via the operator get_param_info.
Linux-GPIO I/O Interface was not listed when requesting the parameter 'IOInterfaceName' of the operator control_io_interface, open_io_device, or query_io_interface via the operator get_param_info. These problems have been fixed.
DocumentationProgrammer's Manuals
[*]The documentation did not mention that HALCON Variable Inspect cannot inspect objects located in GPU but only those in CPU memory. The Programmer's Guide has been updated accordingly.
User Guides
[*]The list of reserved words in the HDevelop User's Guide was not complete. This problem has been fixed.
Solution Guides
[*]The Solution Guide III-C 3D Vision still stated that camera parameters, camera pose, light plane pose, and movement pose of calibrated sheet-of-light models could not be obtained. As this is not the case anymore, the corresponding section has been adapted.
Reference Manual
[*]The reference manual entries of add_scene_3d_camera, disp_object_model_3d, object_model_3d_to_xyz, and project_object_model_3d now explain more about using camera distortion on faces and primitives.
[*]The reference manual entry for find_planar_uncalib_deformable_model contained a paragraph that was only available in German. This problem has been fixed. Now, it is included for all languages.
[*]The reference manual entry for get_disp_object_model_3d_info erroneously mentioned that the operator would return an error in case of faulty row and column input values. This problem has been fixed.
[*]The reference manual entry of reconstruct_surface_stereo stated that small base lines instead of long base lines between camera pairs are more suitable for the extraction of depth information. This problem has been fixed.
[*]The reference manual entry of rectangle1_domain stated that the old image domain would be ignored, which is not the case. The reference has been adapted accordingly.
[*]The reference manual still mentioned an outdated option of using set_paint with 'histogram'. This problem has been fixed.
[*]The reference manual entry of write_dl_model did not mention that the runtime-specific parameters 'runtime' and 'runtime_init' are not written. This problem has been fixed.
Miscellaneous
[*]The Installation Guide mentioned Visual Studio support up to version 2017. This has been extended to include version 2019 as well.
Installation
[*]The MVTec GigE Vision Streaming Filter version 2.2.8.4, which is part of the Windows installer, fixes two problems:
[*]With the streaming filter, EventTransferEnd was only fired for successfully received blocks but not for undeliverable ones.
[*]In rare cases, if an application did not shutdown gracefully while streaming was underway, automatic unloading of the streaming filter could lead to a crash of the operating system.
Release Notes of Previous HALCON VersionsFollow this link to read about the changes of previous HALCON versions.
页:
[1]