 |
|
|
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
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).
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.
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.
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.
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.
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'.
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.
Faster Fill-Up Operations
Detailed release notes can be obtained for the following topics:
- HDevelop
- HALCON Library
- HALCON/C++
- HALCON/COM
- Frame Grabber Interfaces
- Extension Package Interface
- Miscellaneous
Enhancements:
-
HDevelop now has an internal break operator that can be used to
exit for or while loops.
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.
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.
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.
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.
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.
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'.
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.
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.
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.
Bug Fixes:
-
The COM interface of standard HALCON (halconx.dll) was not
threadsafe. This problem has been fixed.
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++.
- The latest information about new extensions and newly supported
boards can be found on the frame grabber index page.
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.
Modified Frame Grabber Interfaces:
-
The following HALCON frame grabber interfaces have been revised:
BitFlow,
DFG-LC,
File,
Fire-i,
FirePackage,
Ginga++,
IDS,
MatrixVision,
MultiCam,
Opteon.
Please refer to the corresponding documentation for more
information, especially whether a new revision of the
corresponding device driver is required.
Manual:
-
In the "Extension Package Programmer's Manual", the signature of
the routine HCopyXLDContPart is now given correctly.
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.
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.
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",...).
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).
|