Release Notes for MERLIC 5.3.1

Here you can read the release notes for MVTec MERLIC 5.3.1, as released in June 2023.

Supported Operating Systems

Windows

MERLIC 5.3.1 is available for Windows 10 (64-bit). During the installation of MERLIC via the MVTec Software Manager (SOM), no environment variable will be set.

Please refer to the "Readme" in the MERLIC manual for more information about the system requirements.

Linux

MERLIC provides a test version for evaluating MERLIC RTE (Runtime Environment) for Linux on PC (Linux x86_64) and for Arm-based platforms (AArch64). This means that both embedded devices based on the widely used Arm architecture and Linux alternatives to the typical Windows operating system can now be tested for image processing with MERLIC. This is a first step towards making MERLIC available on additional platforms in the future.

Developing the MVApp is still done on a Windows system with the MERLIC Creator. The application can then be tested on the "new" systems using MERLIC RTE for Arm-based platforms and Linux. Cameras can be set up remotely with the help of MERLIC RTE Setup. The test version requires a specific license. Please contact MVTec to get more information about how to obtain this license.

MVTec appreciates any feedback on the test version. The feedback can be submitted on the MERLIC feedback website which can be accessed from the MERLIC Creator either via the feedback icon on the top right or via the "Help" menu.

Process Integration

  • Fixed Problems
    • If the name of an image source was changed in the "Image Sources" tab of the MERLIC RTE Setup, the live image of other image sources did not work anymore. This problem has been fixed.

MERLIC Creator

  • Fixed Problems
    • In some cases, the tool flow visualized wrong connections that led to no tools. This could lead to unexpected connections in the Tool Flow panel. This problem has been fixed.
    • In rare cases, MERLIC crashed when using the keyboard shortcut CTRG+U to ungroup a tool group in the Tool Flow panel of the MERLIC Creator. This problem has been fixed.
    • If a MERLIC tool was de-selected or moved in the Tool Flow panel of the MERLIC Creator while the respective tool flow connections were broken, MERLIC sometimes crashed. This problem has been fixed.

Tools

  • Fixed Problems
    • If the tool "Find Objects" used a deep learning model that was trained with images of a smaller dimension than the one of the images that were used in the tool for the processing, the scaling of the X and Y coordinates, the regions, and the contours did not work as expected. This led to wrong result values and to a wrong visualization of the results. This problem has been fixed.

Release Notes for Windows Systems Only

In this section, you can find the release notes that apply only for Windows systems.

  • If non-ASCII characters were used in the name of an image source configuration in the "Image Sources" tab of the MERLIC RTE Setup, MERLIC Creator and MERLIC RTE could crash on startup depending on the selected Windows system locale. This problem has been fixed.

Known Issues

The following issue is already known and in development process. It will be fixed for upcoming releases.

  • In frequent cases, when using TensorRT™ accelerated processing units in MERLIC tools with deep learning technology, MERLIC crashes if the required memory for the deep learning model exceeds the available memory on the GPU.
  • When an instance of MERLIC Creator or MERLIC RTE of version 5.0 is remotely configured using a MERLIC RTE Setup 5.1 or newer, removing an image source from a configuration will cause the Creator or RTE application to crash. We recommend to upgrade Creator/RTE to the current version or, in lieu of that, to use RTE Setup 5.0 to configure Creator/RTE 5.0.
  • When an instance of MERLIC Creator or MERLIC RTE of version 5.2 (or newer) is remotely configured using a MERLIC RTE Setup 5.1, it is not possible to rename image sources or configurations, despite the fact that this feature has been added in MERLIC 5.1. We recommend upgrading the MERLIC RTE Setup to version 5.2.

Legal Note: Intel, the Intel logo, OpenVINO, the OpenVINO logo, and Movidius are trademarks of Intel Corporation or its subsidiaries.

 


Release Notes for MERLIC 5.3.0

This document provides the release notes for MVTec MERLIC 5.3.0, as released in April 2023. You can also refer to the topic What's New in MERLIC5.3.0 in the MERLIC manual for further information on new features and enhancements.

Supported Operating Systems

Windows

MERLIC 5.3.0 is available for Windows 10 (64-bit). During the installation of MERLIC via the MVTec Software Manager (SOM), no environment variable will be set.

Please refer to the "Readme" in the MERLIC manual for more information about the system requirements.

Linux

MERLIC provides a test version for evaluating MERLIC RTE (Runtime Environment) for Linux on PC (Linux x86_64) and for Arm-based platforms (AArch64). This means that both embedded devices based on the widely used Arm architecture and Linux alternatives to the typical Windows operating system can now be tested for image processing with MERLIC. This is a first step towards making MERLIC available on additional platforms in the future.

Developing the MVApp is still done on a Windows system with the MERLIC Creator. The application can then be tested on the "new" systems using MERLIC RTE for Arm-based platforms and Linux. Cameras can be set up remotely with the help of MERLIC RTE Setup. The test version requires a specific license. Please contact MVTec to get more information about how to obtain this license.

MVTec appreciates any feedback on the test version. The feedback can be submitted on the MERLIC feedback website which can be accessed from the MERLIC Creator either via the feedback icon on the top right or via the "Help" menu.

Major New Features

Training Functionalities in the MERLIC Frontend

With the new version 5.3 it is now possible to use training functionalities in the MERLIC Frontend even during runtime. For example, new matching models or code reading parameters can be trained. This increases the user-friendliness since the intermediate step via the MERLIC Creator for training is no longer necessary.

Plug-in for Mitsubishi Electric MELSEC PLCs

With MERLIC 5.3 it is possible to communicate directly with the widespread Mitsubishi Electric PLC via the MC/SLMP protocol. This is made possible by a newly developed plug-in included in MERLIC. This plug-in supports the Mitsubishi Electric iQR, iQF, L- and Q-series. MERLIC thus offers significant added value for customers working with Mitsubishi Electric PLCs.

New Tool for Deep Learning-Based Object Recognition

The deep learning technology Object Detection is now also available in MERLIC. The "Find Objects" tool locates trained object classes and identifies them with a surrounding rectangle (bounding box). Touching or partially overlapping objects are also separated, which allows counting of objects. Labeling and training are also possible without programming knowledge using the free MVTec Deep Learning Tool. The trained network can then be loaded into MERLIC and used with a single click.

Tool Grouping for Clearer Workflows

With MERLIC, complex machine vision applications can be solved even without programming knowledge. To ensure this, the visual Tool Flow helps. To maintain an overview even with complex applications, it is now possible to group several tools into a virtual tool inside the Tool Flow.

Concise Startup dialog for Easy Access to Functions and Machine Vision Applications

Usability is one of MERLIC's unique selling points. To further strengthen this ease-of-use approach, an image-centric start dialog was integrated into the MERLIC Creator. This allows users to get an overview of their most recently opened MVApps. All standard examples are also clearly displayed. Especially for new users, these offer a guide to reliably create their own applications. In addition, helpful introductory material as well as the documentation can be easily accessed via quick links.

Compatibility

Since the last MERLIC version we have been working hard to improve MERLIC in every way. This has, however, resulted in a few of incompatibilities. We apologize for the inconvenience.

  • Tools
    • MERLIC Vision Apps containing the previous concept tool "Find Objects" are no longer compatible because the tool has been adjusted and is now provided as a standard MERLIC tool in the category "Deep Learning - AI". More information.
  • Tool Development
    • The procedure "MeTest_destroy_tool_handle" is not supported anymore because it has been removed. Therefore, the corresponding lines must be removed in any HDevelop scripts for MERLIC custom tools. More information.
  • Miscellaneous
    • Due to the new underlying HALCON version, the behavior of existing custom tools might have changed since the last MERLIC version. Therefore, it is recommended to check the functionality of existing custom tools in this MERLIC version in addition to other required updates of the custom tools due to the revised interface for the tool development.  More information.

Image Source Manager

  • New Features
    • In the "Image Sources" tab of the MERLIC RTE Setup, the IP and MAC addresses of connected GigEVision camera devices are now displayed in the correct format in the section of the camera parameters.
    • The image preview in the "Image Sources" tab of the MERLIC RTE Setup now supports zooming of camera images. It is now possible to zoom in and out of the image that has been acquired for the configuration of a camera device. For this, a new zooming toolbar is now available if a camera device is configured. It allows the user to zoom in, zoom out, and reset the zoom via mouse click. With each change of the zooming parameters, a new image is acquired. It is also possible to use the mouse wheel and keyboard shortcuts for zooming. In addition, the user can also specify the area to be zoomed by drawing a rectangle with the right mouse button over the desired area in the image. This allows the user to inspect certain image parts in more detail, for example, to set the focus of the camera.
    • MERLIC now provides a new program that can be used to collect hardware information on the system. If the user runs into problems and needs to contact the local distributor for help, the user can use this program to collect information and provide it to the support team. It can be started via the Windows start menu "MVTec MERLIC 5.3 > MERLIC 5.3 Collect Support Information". The respective executable file is called "merlic_collect_support_information.exe". The program collects information on the available cameras, image source configurations (ISM configurations), log files, and .ini files on the system. This information helps the support team to find a solution for the problem more quickly.
  • Enhancements
    • The log messages of the Image Source Manager have been improved. If a camera device was successfully opened, the respective message in the log file now contains more detailed information about the used device, for example, the name of the model and the firmware version. In addition, the message that was logged if an image source configuration was missing has been revised to be more clear.
  • Fixed Problems
    • If a camera was configured in the "Image Sources" tab of the MERLIC RTE Setup and one of the camera parameters was set to a value that is not supported by the camera device, an error message occurred. However, the error message stated that the camera parameter is set to the value that is actually not supported. This problem has been fixed. The error message has been revised and now shows the correct value of the camera parameter.
    • When configuring camera parameters via the "EasyParams" in the "Image Sources" tab of the MERLIC RTE Setup, the state of the EasyParam "Trigger Delay" was sometimes not updated correctly after changing other EasyParams with internal dependencies. If "Trigger Method" was set to use hardware trigger and "Trigger Activation" was set to "LevelHigh", the EasyParam "Trigger Delay" was still enabled for configuration although it should be disabled. If the user then adjusted the value for the trigger delay, an error occurred. This problem has been fixed. The EasyParam "Trigger Delay" is now disabled if it is not applicable because of the configuration of other EasyParams.
    • If the device name of a camera had changed after successfully installing a new driver for a USB3Vision or GigEVision2 camera, an error was shown with the information that the installation was successful and the device name had changed. This could be confusing because an error implies that the installation of the driver was unsuccessful. However, the error referred to the changed device name. This problem has been fixed. Now, a warning message is shown if the device name has changed after successfully installing a driver instead of an error.
    • If a new GigEVision camera was added to the active configuration in the "Image Sources" tab of the MERLIC RTE Setup, the IP address of the camera was displayed in the "Info" section only after clicking "Refresh". This problem has been fixed. The IP address is now displayed automatically after a new camera has been added as image source.
    • In some cases, if a new USB3Vision camera device was connected and the installation of the respective driver was canceled, a wrong message about a successful installation appeared. This problem has been fixed.
    • If the screen resolution had been changed after acquiring an image in the "Image Sources" tab of the MERLIC RTE Setup, the image display was scrambled or showed a completely gray image. This problem has been fixed.
    • If an image source was renamed in the "Image Sources" tab of the MERLIC RTE Setup after an image had been acquired, no further image was acquired. This problem has been fixed.
    • Error messages that occurred while selecting a camera device in the "Image Sources" tab of the MERLIC RTE Setup did not disappear after an image source from a file was selected instead. This problem has been fixed.
    • If an error occurred after a camera parameter within the "All Parameters" tab had been changed in the "Image Sources" of the MERLIC RTE Setup, the values of other camera parameters were not refreshed although a refresh might have solved the error. This problem has been fixed.

Process Integration

  • New Features
    • MERLIC has been extended by new configuration options to define fixed ports for the remote configuration of image sources and Communicator plug-ins. It is now possible to define fixed ports for the configuration services when using the MERLIC RTE Setup on a remote system. The following .ini properties have been added:
      • ImageSourceConfigurationPorts: This property defines the ports for the configuration services of the Image Source Manager (ISM).
      • PluginConfigurationPorts: This property defines the ports for the configuration services of Communicator plug-ins. 
      In addition, MERLIC also provides new command line options that enable the user to define the ports via the command line:
      • --image_source_config_ports: This command line option is available for "merlic_creator.exe" and "merlic_rte.exe". It corresponds to the .ini property "ImageSourceConfigurationPorts".
      • --plugin_config_ports: This command line option is available for "merlic_communicator.exe". It corresponds to the .ini property "PluginConfigurationPorts".
  • Enhancements
    • The layout of some GUI elements in the MERLIC RTE Setup has been revised to be more clear on feedback regarding the configuration and to provide better control of editing parameter values. For example, previously the modified flag was very small and hard to detect and some parameter values could only be set manually. Now, the MERLIC RTE Setup provides a clear visualization of modified parameters and new sliders to adjust values more comfortable.
  • Fixed Problems
    • When entering a non-zero decimal digit in one of the plug-in user parameters of the "Communication" tab of the MERLIC RTE Setup, trailing zeroes were immediately added to the digit until a given precision was defined. This problem has been fixed. The plug-in user parameters now wait until the user confirms their entry before adding the trailing zeroes.
    • When using MERLIC RTE and starting single jobs with iteration parameters, all resulting outputs were erroneously marked as outdated and MERLIC warned about result parameters not being determined in the current iteration. This problem has been fixed. Now, only results of tools that were not executed in the recent iteration, for example, in inactive branches of "Branch on condition" tools, are marked as outdated.
    • If the MERLIC RTE Setup was closed while configuration services were searched, for instance, when launching MERLIC Creator, MERLIC RTE, or the MERLIC Communicator using the buttons in the disconnected "Image Sources" or "Communication" tabs, the MERLIC RTE Setup window was closed but its process still remained. Therefore, the user had to end the process of the MERLIC RTE Setup manually in order to enable a new connection to a new instance of the MERLIC RTE Setup. This problem has been fixed.
    • If a plug-in parameter in the "Communication" tab of the MERLIC RTE Setup provided a drop-down menu with a lot of parameter values, it could be cumbersome to select the desired value because no scrollbar was provided for the drop-down menu. This problem has been fixed.

Communicator

  • New Features
    • The MERLIC RTE Setup now allows the use of sliders for the configuration of Communicator plug-ins. Thus, it is now possible to use the eMVPluginParameterPresentationProperty_PreferredWidget property to define that a plug-in parameter should be represented by a slider. The respective configuration option in the "Communication" tab of the MERLIC RTE Setup will then show the desired slider for the respective parameter. When defining a slider for a plug-in parameter, it is necessary that a range constraint is imposed on the parameter. If additionally a step size is provided, or if the parameter is an integer and thus has an implicit step size of 1, the slider will snap to the allowed values. In the MERLIC RTE Setup, ticks are displayed beneath the slider to indicate the allowed positions unless they would be so frequent as to cause visual noise.
      The new sliders are now also available for the configuration of the standard Communicator plug-ins that are provided by MERLIC.
  • Fixed Problems
    • If MVApp results were added to an MVApp which was referenced by an unprepared recipe and if that recipe was later prepared followed by a single or continuous job, the OPC UA server crashed. This problem has been fixed.

Interfaces for Process Integration

  • New Features
    • MERLIC has been extended by the new Communicator plug-in "MELSEC Communication". It enables the user to communicate directly with Mitsubishi Electric's programmable controllers of the MELSEC-L Series and MELSEC-Q Series and allows the user to control and monitor the vision system in the process integration mode. For the communication between the MELSEC Communication plug-in and the Mitsubishi Electric MELSEC PLC, the MELSEC communication (MC) protocol is used.
      The plug-in offers a rich set of configuration options in the "Communication" tab of the MERLIC RTE Setup, for example, plug-in parameters to set the connection settings to the PLC, to select the number of MVApp results that shall be available to be queried by the PLC, as well as the number of iteration parameters that shall be available for the PLC to overwrite the parameter values defined in the recipe. After configuring the plug-in, the user may export the labels of the selected MVApp parameters and results and import the exported file into the PLC program. The imported labels can then be accessed by both the plug-in and the PLC to transmit commands, results, and further information.
    • MERLIC has been extended by the new Communicator plug-in "save-results". It can be used to automatically save data contained in MVApp results to a configurable directory on disk. The data will be stored in a file in .csv format. In contrast to the example plug-in "save-images", this plug-in saves only non-image data and the source code of the plug-in is not available. The plug-in offers some configuration options in the "Communication" tab of the MERLIC RTE Setup, for example, to define the output directory and the file name.
  • Fixed Problems
    • If MERLIC RTE was running while changing MVApp results of an MVApp that is referenced in a recipe, the resulting mismatch in the result interface could cause a crash of the provided standard plug-ins "OPC UA", "MQTT", and "save-images" because the results that were generated by the MVApp that is actually prepared for MERLIC RTE differed from the results that were expected by the Communicator plug-in. This problem has been fixed. Now, the plug-ins check for inconsistencies between the recipe interface and the results and alert the user about any discrepancies in a log message.
    • When image results have been enabled in the configuration of the OPC UA server plug-in, a memory leak occurred. This problem has been fixed.

MERLIC Creator

  • New Features
    • MERLIC now enables the user to combine multiple tools of a MERLIC Vision App in a group. A group can be used to combine tools that perform similar processing tasks, or to provide a better overview in the MVApp. The tools to be grouped can be selected and grouped in the Tool Flow panel within the MERLIC Creator. In the Tool Flow panel, a group is visualized with a graphical representation of stacked tools including a specific icon for tool groups. In the Tool Workspace, a group is visualized similar to a regular MERLIC tool. It shows connections to previous and subsequent tools and a graphic window if available, and also enables some configuration options depending on the tools within the group. The group also provides a Quick Info with general information on how to work with groups.
    • MERLIC now provides a new start dialog for the MERLIC Creator. It provides quick access to introductory material and documentation and enables the user a quick start to the processing of new and existing MERLIC Vision Apps (MVApps). The start dialog shows an overview of the provided example MVApps and recently opened MVApps, and when selecting an MVApp, you will also see further information on the MVApp such as the location or the date of the last modification.
  • Enhancements
    • The visualization of images when hovering over the respective tool results has been improved. Previously, a black image was shown when hovering over the connector of an empty image result. Now, the currently displayed image, that is, the default image, will still be visible when hovering the mouse over an empty image result.
    • The context-sensitive help for the MERLIC Creator and MERLIC Designer has been improved. Previously, context-sensitive help via the shortcut F1 was only provided for some basic MERLIC components and dialogs. Now, context-sensitive help is provided for many more GUI elements in focus, that is, for the last clicked area, tool, or widget.
  • Improved Usability
    • The display of renamed MERLIC tools in the Tool Flow panel has been improved. Previously, the original name of the tool was often redacted although there was enough space to show the complete name. This made it difficult to recognize which tool is represented, especially if there are multiple tools with similar names. Now, the original name will be fully displayed if there is enough space.
  • Fixed Problems
    • The menu entry "Help > View Help" in the MERLIC Creator opened the context-sensitive help instead of the start page of the MERLIC manual. This problem has been fixed. Now, the context-sensitive help is only opened when pressing F1 and the menu entry opens the start page of the MERLIC manual.
    • Sometimes, the visualization of trigger connections in the Tool Flow panel was broken and showed a gap. This problem has been fixed.
    • Sometimes, when copying MERLIC tools in the Tool Flow panel and pasting the tools to a position where there was not enough space for the tools, more rows than necessary were added to the Tool Flow. This problem has been fixed.
    • If the context menu of a tool parameter was opened to connect a result of a previous tool and "Evaluate Expression" was one of the previous tools, MERLIC erroneously provided the option "<add connection>" for the previous "Evaluate expression" tool. However, this option had no effect because it is only used for tool results of tools prior to "Evaluate Expression" to enable adding a connection to a new dynamic parameter of "Evaluate Expression". This problem has been fixed. Now, this option is only shown if it is applicable.
    • When using easyTouch in a MERLIC tool and running the MVApp via the keyboard shortcuts F5 or F6 without moving the mouse pointer, the easyTouch overlay was not updated after the execution. This problem has been fixed.
    • Some of the buttons in the menu bar of the MERLIC Creator were not positioned correctly with too much spacing on the left. This problem has been fixed.
    • If a warning dialog was shown in the Tool Flow panel when moving a tool because any connections would be lost, it was still possible to delete the respective tool in the Tool Workspace. If the warning was then confirmed, other tools were moved instead. This problem has been fixed. Now, it is not possible anymore to make any changes in other parts of the MERLIC Creator while a warning dialog is shown in the Tool Flow panel.
    • If a MERLIC Vision App contained unsaved changes and the "File" menu was used to open the current MERLIC Vision App again, the dialog to save or discard the changes appeared. If the user selected to discard the changes, the MERLIC Vision App was opened again without the changes but the window title bar of the MERLIC Creator still showed the modification flag. This problem has been fixed.
    • When changing one or more ROIs in the graphics window, sometimes an outdated state of the ROIs was displayed in the graphics window, which therefore seemed to respond with a time delay. This problem has been fixed. Now, it is only possible to draw a new ROI if the latest ROI is has been done calculating and is available.
    • In some cases, the connections between tools in the Tool Flow panel were drawn too close to the tools. This problem has been fixed.
    • In some cases, trigger connections were not correctly drawn in the Tool Flow panel. In addition, connections were sometimes unnecessarily overlapped which made it harder to follow the connections. These problems have been fixed.
    • MERLIC sometimes crashed when renaming a MERLIC tool that was previously connected to a "Label" widget. The crash occurred only if the "Label" widget was deleted while connected to the renamed tool. This problem has been fixed.
    • When MERLIC could not be started because of an erroneous .ini file, the respective error message was always shown in English even if a different language was set. This problem has been fixed.
    • The visualization of connections to tools that cannot be executed was sometimes not correct. The arrowheads of these connections were still displayed in blue instead of red, and in some cases, the connections were not displayed in red at all. This problem has been fixed.

MERLIC Designer

  • New Features
    • MERLIC now supports training functionality in the MERLIC Frontend. For this, a "Training" widget has been added to the MERLIC Designer. It can be connected to the desired MERLIC tools whose training functionality should be provided in the Frontend. The "Training" widget offers the same training functionality as the connected MERLIC tool in the MERLIC Creator. The user may activate the training mode, select new training images, use regions of interest (ROIs) or easyTouch, if provided, to select training objects, and perform the training with the new settings.
  • Fixed Problems
    • After the window size of the MERLIC Designer was changed or the panels in the MERLIC Designer were moved to a different position, the layout changes were lost after the MERLIC Creator was restarted. This problem has been fixed.
    • The scrollbar in the properties panel of the MERLIC Designer was sometimes hard to recognize because the color of the scrollbar matched the background color. This problem has been fixed.
    • When copying Designer widgets from one view to another, they were moved by 10 pixels. This problem has been fixed. Copied widgets are now inserted in the other view at the same position. However, if the widgets are copied to the same view, they are still shifted by 10 pixels to avoid a complete overlap.
    • The grid in the workspace of the MERLIC Designer was not visible on the right and bottom borders of the workspace. This problem has been fixed.
    • The "Undo" and "Redo" functionalities did not work as expected in the MERLIC Designer. After adding new tab views to the workspace, using the "Undo" functionality to undo the creation of the last tab view had no effect. In addition, when using the "Redo" functionality afterward, an extra tab view with the same name was added although the name of a tab view must be unique. This problem has been fixed.
    • If the "Execution Control" widget was set to show only the "Run Continuous" button, the respective allowed minimum width could only be set via drag-and-drop of the widget in the workspace but not via the widget properties. Instead, the minimum width of the widget for the case where both execution buttons are displayed was expected when entering the width manually in the properties. This problem has been fixed.
    • When rearranging multiple tabs in the MERLIC Designer and then using the "Undo" functionality on a widget, a different tab than the one that contains the modified widget became active. This problem has been fixed.
    • In the workspace properties of the MERLIC Designer, the path of the selected background image was visible behind the actual input field and the respective buttons instead of within the input field. This problem has been fixed.

MERLIC Frontend

  • New Features
    • The MERLIC Frontend now supports new keyboard shortcuts which can be used to control the execution of the MVApp (F5 and F6) and to add new training images in the new "Training" widget (F3).
  • Enhancements
    • The MERLIC Frontend now offers more configuration options for customization. MERLIC now provides the new MERLIC .ini file property "ShowMVTecMerlicInFrontendWindow". It enables to hide the company and product name of MVTec MERLIC in the window title and in the status message that is shown while the Frontend is being loaded.
  • Fixed Problems
    • If an ROI toolbar was provided at the "Image Display" widget in the MERLIC Frontend and the drop-down menu of the available ROIs was opened, scrolling the list of ROIs in the drop-down had the effect that the image was zoomed instead of scrolling through the ROI list in the drop-down menu. This problem has been fixed.
    • If the size of the workspace exceeded the initial size of the MERLIC Frontend window, the workspace area was cropped to the Frontend window size and could not be resized. This problem has been fixed.
    • When starting the MERIC Frontend via the MERLIC Creator or Designer, for example, by using the provided keyboard shortcuts or menu entries, or when starting the MERLIC Frontend via the command line by using the "--frontend" option for the "merlic_creator" or "merlic_rte" applications, no error message or information was provided to the user in case the Frontend could not be launched. This problem has been fixed. If the Frontend fails to start via the user interface, an error message will now be displayed. If the command line is used, an error message will be logged when the Frontend could not be launched and the startup of the "merlic_creator" or "merlic_rte" application, respectively, will be inhibited.
    • Entering parameter values of type "long" in the "Spin Box" and "Label" widgets in the MERLIC Frontend led to unexpected behavior if commas were used as a thousand separator. This problem has been fixed. Now, entering "long" values in the "Spin Box" and "Label" widgets is only allowed without commas or dots to ensure a correct conversion.
    • When using the "Spin Box" widget or the "Radio Button Group" widget in the MERLIC Frontend and the modification in the Frontend was deactivated, for example, because the MERLIC Vision App was executed in the MERLIC RTE mode, the "Spin Box" and "Radio Button Group" widgets were not displayed grayed out. Therefore, it seemed as if the widgets were still active for modification. This problem has been fixed.

Tools

  • New Features
    • The tool category "Preprocessing > ROI Creation" has been renamed to "Preprocessing > ROI" in accordance to the new MERLIC tools "Convert Region to ROI" and "Convert ROI to Region" which are now provided in this category. This way, the name of the tool category fits to the new tool as well as to the ROI creation tools that were already available in previous MERLIC versions.
    • MERLIC has been extended by the new tool "Convert Region to ROI" in the tool category "Preprocessing > ROI". It enables the user to convert region outputs of previous tools to regions of interest (ROIs). Each region will be converted into a separate ROI. This might be useful if a MERLIC tool is used that accepts only ROIs as input. The new tool can then be used in a preprocessing step to convert the results into the required semantic type.
    • MERLIC has been extended by the new tool "Convert ROI to Region" in the tool category "Preprocessing > ROI". It enables the user to convert regions of interest (ROIs), i.e., circles, paraxial rectangles, points, rectangles or segments, to regions. The ROIs can either be connected from a previous tool or be drawn using the ROI buttons in the Tool Board. This might be useful if a MERLIC tool is used that accepts only regions as input. The new tool can then be used in a preprocessing step to convert the results into the required semantic type.
    • The tool "Evaluate Expression" now allows changing the order of expressions. This is especially useful if you are using multiple expressions and want to change their order. You can simply drag and drop the expressions to the new positions instead of removing and adding the respective expressions again as previously required.
    • MERLIC has been extended by the new MERLIC tool "Find Objects" in the tool category "Deep Learning - AI". Previously, this tool was provided as a concept tool in an early stage of development. The tool has been revised and improved and is now provided as a standard MERLIC tool, ready for productive use. It can be used to locate objects within an image and classify them based on a deep learning model that has been trained for object detection in MVTec's Deep Learning Tool or in MVTec HALCON. For the final integration as a standard MERLIC tool, the names of the tool parameters and tool results have been revised to be more clear. In addition, the Quick Info of the tool has been revised and a tool reference has been added to the MERLIC manual. Note that this change affects the compatibility. Read more.
    • The "Image Source" tool has been extended by several new tool results:
      • "Used Source": This result returns information on the image source that was used for the image acquisition.
      • "Acquisition Time": This result returns the time it took to acquire an image from the selected image source. It is provided as an additional result and is also displayed in the status bar of the MERLIC Creator.
      • "Total Acquisition Time": This result returns the time it took to acquire an image from all image sources in the currently active configuration. It is provided as an additional result.
    • The following tools of the tool category "File Access" have been extended:
      • Read from File
      • Read Region from File
      • Write to File
      • Write Region to File
      All of these tools have been extended by the new result "Current File Name" which returns the name and path of the file that has been saved in the last iteration. In addition, the tools "Write to File" and "Write Region to File" have been extended by the new parameter "Create Directories". It allows the user to define whether the directory specified in the parameter "File Name" should be created if it doesn't exist.
  • Enhancements
    • The concept tool "Segment Image Pixel Precise" has been revised. The tool results "Segmentation Image" and "Preprocessed Image" were obsolete and have been removed. In addition, the description in the Quick Info has been improved to be more clear.
  • Improved Usability
    • The MERLIC tools of the category "File Access" have been revised. Relative paths that have been defined for the tool parameter "File Name" are now handled relative to the location of the saved MERLIC Vision App and if an empty "File Name" is defined, the default value of the parameter is restored.
  • Fixed Problems
    • Some tool parameter names of the tool "Convert Disparity to Height Image" were incorrectly translated into Chinese and Japanese. These parameters refer to specific camera parameters and should therefore not be translated. This problem has been fixed.
    • When copying and pasting an instance of a trained "Detect Anomalies" tool, the trained model was not copied. Therefore, the copied tool needed to be manually trained again. This problem has been fixed.
    • In some cases, the value defined as an expression of an "Evaluate Expression" tool was not applied anymore if an invalid expression was entered and then corrected after switching to the "Evaluate Expression" tool from another one. This problem has been fixed.
    • If the "Image Source" tool was used but no image source was connected, the displayed warning was outdated and not very helpful. This problem has been fixed.
    • The tool "Read from File" needed to be executed twice to start reading from the specified file but it also read from the file when a parameter was changed. In addition, changing a parameter of the tool "Write to File" was handled as an error that was instantly cleared. These problems have been fixed.
    • After changing the write mode for an already connected file in the tool "Write to File", the file was not automatically reconnected again. Instead, the user had to manually reconnect to the file before starting writing with the new write mode. This problem has been fixed.
    • When entering an integer that was larger than the numeric maximum of signed 64-bit or lower than the numeric minimum, for example, a value greater than 9223372036854775807 or less than -9223372036854775808, the number was automatically set to the nearest numeric limit without any user notification. This problem has been fixed. The value will not be adjusted automatically anymore and an error will occur instead.
    • In some MERLIC tools, the usage of the parameter sliders for tool parameters that define the minimum and maximum values of a feature has been improved. In general, the parameter that defines the maximum value of a feature cannot be set lower than the current minimum value of that feature. Previously, the value range of the sliders did not adjust according to the value of the other corresponding tool parameter. For example, if the parameter for the minimum value was increased, the corresponding parameter for the maximum value could not be set lower than the new minimum value but the range of the slider still allowed the user to move the handle to lower values than allowed even if they could not be set. Now, the value range of the sliders is adjusted automatically to the allowed value range to make it easier to set the respective value.
    • The translations of some tool messages were missing. Thus, they were always displayed in English even if a different language was set. This problem has been fixed.
    • If an incompatible model was used in the concept tool "Segment Image Pixel-Precise", an internal error message of HDevEngine was shown which did not provide any helpful information. This problem has been fixed.
    • If multiple codes were detected in a MERLIC tool for reading data codes, the decoded data were not returned in the same order as the extracted contours which made it hard to assign the decoded data to the respective contours. This problem has been fixed.
    • If an ROI of an unsupported type was connected to a MERLIC tool, often no warning or error occurred. This problem has been fixed. Now, all MERLIC tools show a warning or an error if an ROI is connected that is not supported.

Examples

  • New Features
    • MERLIC has been extended by the new MVApp example "count_frozen_dough_with_training.mvapp" which demonstrates the use of the new "Training" widget and the training mode in the MERLIC Frontend.
  • Enhancements
    • The MERLIC Vision App (MVApp) examples provided with the MERLIC installation have been improved. Previously, they were not write-protected and could therefore be overwritten. Now, all MVApp examples are delivered write-protected to ensure that they cannot be overwritten.

Documentation

  • New Features
    • The MERLIC manual has been extended by a new topic "What's New in MERLIC 5.3.0". It gives an overview of the new features and enhancements in this MERLIC version. This topic will also be provided in future MERLIC versions to give an overview of the respective new features.
  • Enhancements
    • The documentation of the Image Source Manager (ISM) in the MERLIC manual has been improved. Previously, the process of configuring image sources was documented on a single page. Now, this page has been divided into several subpages for better clarity.
    • The language settings when switching from the Tool Development manual and the Communicator Reference documentation which are only provided in English to one of the translated manuals have been revised. Previously, the settings were inconsistent. When opening the MERLIC manual from the Tool Development manual, the help was opened in the language that was set as default in the browser. However, when opening the manual from the Communicator Reference, the help was opened in English. Now, the MERLIC manual and the MERLIC Communicator manual will be opened in the default language of the browser if the manual is available in the default language and if they are opened from the Tool Development manual or the Communicator Reference.
    • The documentation of the example Communicator plug-in "save-images" in the MERLIC Communicator manual has been improved. It now provides more detailed information on how to use the plug-in.
    • The documentation of the tool "Delay Execution" has been improved. Now, the tool reference and the quick info also provide information about the delay of the execution of a single tool.
    • The MERLIC manual has been extended by a new "Getting Started" section. It provides an overview to help the user get started with MERLIC. It also gives practical information such as an introduction to the user interface, an overview of the available keyboard shortcuts, and an introduction to MERLIC’s various components.
  • Improved Usability
    • The usability of the MERLIC tool documentation has been improved. The quick info of the MERLIC tools has been extended to provide a hyperlink to the respective tool reference in the MERLIC manual. Thus, the documentation for a tool can be accessed more quickly and easier.
  • Fixed Problems
    • Some tables in the MERLIC manual and the MERLIC Communicator manual were not scaled correctly for smaller browser widths. This problem has been fixed.
    • In the quick info of the tools "Branch on Condition" and "Evaluate Expression", the example expressions were not completely visible if the quick info area was too narrow. This problem has been fixed.
    • In the MERLIC manual and MERLIC Communicator manual, some translations were missing. This problem has been fixed.
    • Some videos in the MERLIC manual were a bit blurry. This problem has been fixed.
    • If the user login dialog of the MERLIC Frontend was open and the shortcut F1 was pressed to open the respective context-sensitive help, the MERLIC manual was opened with the overview topic of the MERLIC Frontend instead of the description of the user login. This problem has been fixed.
    • The topic "Working with the Training Mode" in the MERLIC manual was not up-to-date. Some of the newer MERLIC tools were missing in the list of MERLIC tools with training mode. In addition, the list of example applications in the reference documentation of some Designer widgets was not up-to-date. This problem has been fixed.
    • The tool reference of the tool "Delay Execution" contained wrong information. It stated that the maximum value for the parameter "Milliseconds" is 1000 ms. However, it is possible to set a delay of more than 1000 ms. This problem has been fixed.
    • The documentation of the interface procedure "Me_set_parameter_disabled" was missing in the Tool Development Manual. This problem has been fixed.
    • The Communicator Reference documentation contained outdated information and did not mention clearly where example plug-ins are installed by default. This problem has been fixed.
    • The documentation of the OPC UA server plug-in in the MERLIC Communicator manual stated in the "Requirements" section that for the full feature set also the features of the recommended features set are required. However, there is no recommended features set. This problem has been fixed. It now states correctly that the features of the extended feature set are required for the full feature set.
    • In the Communicator Reference documentation, the instructions for linking Boost libraries to a plug-in were outdated. This problem has been fixed.

Installation

  • Enhancements
    • MERLIC now supports to start further MERLIC applications directly from the MVTec Software Manager (SOM). Previously, only the MERLIC Creator could be started from the MVTec Software Manager. Now, also the MERLIC RTE Setup and MERLIC Frontend can be started via new launch buttons. In addition, it is also possible to start MERLIC RTE, MERLIC Communicator, and the MERLIC Frontend together. This allows the user to immediately open the applications after the installation.
  • Fixed Problems
    • MERLIC could not be uninstalled via the MVTec Software Manager (SOM) if the installation directory contained non-ASCII characters. This problem has been fixed.

Licensing

  • New Features
    • The license restrictions for the MERLIC RTE Setup have changed. Previously, a license dongle was required to use the MERLIC RTE Setup. Now, a license is installed automatically for the MERLIC RTE Setup with each MERLIC installation. This allows the use of the MERLIC RTE Setup without any licensing dongle, for example, on remote systems.
    • The license restrictions for image acquisition have changed. The license of the MERLIC package determines how many image acquisition tools are allowed for use per MERLIC Vision App. Previously, this restriction applied to all tools of the category "Acquisition". Now, the tool "Acquire Image from File" is excluded from the license restriction. Thus, it may be used in the MERLIC Vision App as often as desired without any license restriction.

Tool Development

  • Enhancements
    • The configuration options for custom tools have been improved. Previously, the setting for the location of custom tools and the setting to enable remote debugging in HDevelop needed to the defined in the .ini file of MERLIC. Now, these settings can also be defined in the preferences dialog of the MERLIC Creator. The configuration options are provided in a new tab "Custom Tools". It enables the user to comfortably define the path settings for custom tools and additional procedures via the user interface. In addition, it also allows the activation of the HDevelop remote debugging mode. In contrast to previous versions, it is now also possible to change the port for the remote debugging mode.
      The new "Custom Tools" tab in the MERLIC preferences will only be available if the MERLIC license supports the use of custom tools, that is, if the licensing package "X-Large" or the licensing add-on "Extension Tools" is activated. If the used license does not support custom tools, the new tab will not be visible in the preferences.
    • The interface procedure "Me_set_drawing_color" has been updated. Previously, the procedure could be used for iconic output parameters and for ROI parameters although there are also other interface procedures to define the color of ROIs. To avoid confusion about which procedure should be used, the procedure "Me_set_drawing_color" can now only be used for iconic output parameters but not for ROI parameters. To change the color of ROI parameters, the procedures "Me_set_active_roi_color" or "Me_set_inactive_roi_color" can be used instead.
    • With the new HALCON version, the interface procedure "MeTest_destroy_tool_handle" is not necessary anymore because handles are now cleared automatically in HALCON. Therefore, this interface procedure has been removed. Note that this change affects the compatibility. Read more.
  • Fixed Problems
    • If a non-ASCII path was configured multiple times for the parameter "ToolPath" in the [General] section of the .ini file, MERLIC did not start. This problem has been fixed. Now, MERLIC logs information containing the multiple configured paths and starts normally.

Miscellaneous

  • To profit from the improvements of the new HALCON version, the HALCON libraries used by MERLIC have been upgraded to the HALCON 22.11 Progress version.  Note that this change affects the compatibility. Read more.
  • A MERLIC Vision App could be executed at most 25 times per minute. This problem has been fixed.
  • The behavior of MERLIC during a crash has changed. Due to the new CodeMeter version that is used for MERLIC's licensing, stack traces are no longer provided if MERLIC crashes. Therefore, the respective log file and crash data are no longer available after a crash.
  • The logging mechanism of MERLIC has been improved. The log files of the MERLIC Creator, MERLIC RTE, and the MERLIC RTE Setup now provide information on the used CPU and the available cores. This information helps the support team to find suitable solutions more quickly if the user runs into problems and needs to contact the local distributor or MVTec for help.

Release Notes for Windows Systems Only

In this section, you can find the release notes that apply only for Windows systems.

  • If an update or uninstallation of MERLIC was started via the MVTec Software Manager (SOM) while there were still MERLIC processes that were currently running, the update or uninstallation was stopped which could led to an incomplete MERLIC installation. This problem has been fixed. Now, a warning dialog occurs if any MERLIC processes are still running and the user has the possibility to end the running MERLIC processes and to continue the update or uninstallation, respectively.
  • When using MERLIC on Windows 11 and opening a menu in one of the MERLIC components, for example, in the MERLIC Creator, the selected menu entry was highlighted badly and with a dark background color which resulted in a low contrast. This made it hard to read the name of the menu entry. This problem has been fixed.
  • While installing MERLIC via the MVTec Software Manager (SOM), some file rights were not set correctly. This could prevent users in a multi-user environment from using the MERLIC RTE Setup. This problem has been fixed.
  • If the software rendering mode was activated, MERLIC crashed when a warning or error message in a MERLIC tool was opened. This problem has been fixed.

Release Notes Linux Systems Only

In this section, you can find the release notes that apply only for Linux systems.

  • On Linux systems, the parameter "Start Time" of the tool "Get Execution Info" could not handle time values of time format "relative" that were connected from another instance of the same tool. This problem has been fixed.

Known Issues

The following issue is already known and in development process. It will be fixed for upcoming releases.

  • In frequent cases, when using TensorRT™ accelerated processing units in MERLIC tools with deep learning technology, MERLIC crashes if the required memory for the deep learning model exceeds the available memory on the GPU.
  • When an instance of MERLIC Creator or MERLIC RTE of version 5.0 is remotely configured using a MERLIC RTE Setup 5.1 or newer, removing an image source from a configuration will cause the Creator or RTE application to crash. We recommend to upgrade Creator/RTE to the current version or, in lieu of that, to use RTE Setup 5.0 to configure Creator/RTE 5.0.
  • When an instance of MERLIC Creator or MERLIC RTE of version 5.2 (or newer) is remotely configured using a MERLIC RTE Setup 5.1, it is not possible to rename image sources or configurations, despite the fact that this feature has been added in MERLIC 5.1. We recommend upgrading the MERLIC RTE Setup to version 5.2.

Legal Note: Intel, the Intel logo, OpenVINO, the OpenVINO logo, and Movidius are trademarks of Intel Corporation or its subsidiaries.

 


Release Notes for MERLIC 5.2.1

This document provides the release notes for MVTecMERLIC5.2.1, as released in November 2022.

Supported Operating Systems

Windows

MERLIC 5.2.1 is available for Windows 10 (64-bit). During the installation of MERLIC via the MVTec Software Manager (SOM), no environment variable will be set.

Please refer to the "Readme" in the MERLIC manual for more information about the system requirements.

Linux

MERLIC provides a test version for evaluating MERLIC RTE (Runtime Environment) for Linux on PC (Linux x86_64) and for Arm-based platforms (AArch64). This means that both embedded devices based on the widely used Arm architecture and Linux alternatives to the typical Windows operating system can now be tested for image processing with MERLIC. This is a first step towards making MERLIC available on additional platforms in the future.

Developing the MVApp is still done on a Windows system with the MERLIC Creator. The application can then be tested on the "new" systems using MERLIC RTE for Arm-based platforms and Linux. Cameras can be set up remotely with the help of MERLIC RTE Setup. The test version requires a specific license. Please contact MVTec to get more information about how to obtain this license.

MVTec appreciates any feedback on the test version. The feedback can be submitted on the MERLIC feedback website which can be accessed from the MERLIC Creator either via the feedback icon on the top right or via the "Help" menu.

Interfaces for Process Integration

  • Fixed Problems
    • Some of the #include directives in the example code of the "save-images" plug-in could not be resolved when building the plug-in from source using the installed Communicator SDK. This problem has been fixed.

MERLIC Frontend

  • Fixed Problems
    • If the size of the workspace exceeded the initial size of the Frontend window, the workspace area was cropped to the Frontend window size and could not be resized. This problem has been fixed.

Tools

  • Fixed Problems
    • The tools "Read from Serial Interface" and "Write to Serial Interface" did not open the selected ports anymore. This problem has been fixed. The semantic type "serial_id" has been changed to "serial".

Documentation

  • Fixed Problems
    • The link in the table of content of the MERLIC manual to the MERLIC Communicator Reference Documentation did not work if a sub-topic in the MERLIC manual was currently open. This problem has been fixed.

Tool Development

  • Fixed Problems
    • If a non-ASCII path was configured multiple times for the parameter "ToolPath" in the [General] section of the .ini file, MERLIC did not start. This problem has been fixed. Now, MERLIC logs information containing the multiple configured paths and starts normally.

Known Issues

The following issue is already known and in development process. It will be fixed for upcoming releases.

  • In frequent cases, when using TensorRT™ accelerated processing units in MERLIC tools with deep learning technology, MERLIC crashes if the required memory for the deep learning model exceeds the available memory on the GPU.
  • When an instance of MERLIC Creator or MERLIC RTE of version 5.0 is remotely configured using a MERLIC RTE Setup 5.1 or newer, removing an image source from a configuration will cause the Creator or RTE application to crash. We recommend to upgrade Creator/RTE to the current version or, in lieu of that, to use RTE Setup 5.0 to configure Creator/RTE 5.0.
  • When an instance of MERLIC Creator or MERLIC RTE of version 5.2 (or newer) is remotely configured using a MERLIC RTE Setup 5.1, it is not possible to rename image sources or configurations, despite the fact that this feature has been added in MERLIC 5.1. We recommend upgrading the MERLIC RTE Setup to version 5.2.

Legal Note: Intel, the Intel logo, OpenVINO, the OpenVINO logo, and Movidius are trademarks of Intel Corporation or its subsidiaries.

 


Release Notes for MERLIC5.2.0

This document provides the release notes for MVTecMERLIC5.2.0, as released in October 2022.

Supported Operating Systems

Windows

MERLIC5.2.0 is available for Windows 10 (64-bit). During the installation of MERLIC via the MVTec Software Manager (SOM), no environment variable will be set.

Please refer to the "Readme" in the MERLIC manual for more information about the system requirements.

Linux

MERLIC provides a test version for evaluating MERLIC RTE (Runtime Environment) for Linux on PC (Linux x86_64) and for Arm-based platforms (AArch64). This means that both embedded devices based on the widely used Arm architecture and Linux alternatives to the typical Windows operating system can now be tested for image processing with MERLIC. This is a first step towards making MERLIC available on additional platforms in the future.

Developing the MVApp is still done on a Windows system with the MERLIC Creator. The application can then be tested on the "new" systems using MERLIC RTE for Arm-based platforms and Linux. Cameras can be set up remotely with the help of MERLIC RTE Setup. The test version requires a specific license. Please contact MVTec to get more information about how to obtain this license.

MVTec appreciates any feedback on the test version. The feedback can be submitted on the MERLIC feedback website which can be accessed from the MERLIC Creator either via the feedback icon on the top right or via the "Help" menu.

Major New Features

Integration of "Global Context Anomaly Detection"

In MERLIC 5.2, the newly developed Deep Learning method "Global Context Anomaly Detection" will be available. The outstanding feature: The new technology "understands" the logical content of images and thus detects new variants of anomalies. The feature is useful for any industry in which, for example, completeness checks, quality inspections, defect detection or print inspections have to be carried out. A concrete example is the inspection of imprints and whether they are in the right place. For training, "Global Context Anomaly Detection" only requires good images. This means that no labeling is required. For the training of Deep Learning applications, it is possible to use the free Deep Learning Tool (DLT) from MVTec. The results can then be imported from the DLT into MERLIC and executed there without any programming effort.

MVTec EasyParams

The introduction of MVTec EasyParams in MERLIC 5.2 allows users to quickly and easily find and set the relevant camera parameters. Regardless of the camera manufacturer, this simplified configuration tool means that the application can be put into operation more quickly. In addition, MERLIC automatically saves all EasyParams. This increases the number of compatible cameras supported by MERLIC.

Export Image Data from MERLIC

MERLIC 5.2 now also makes it possible to export image data from MERLIC to other interfaces. This is a handy feature for users, because now they can use the images for visualization purposes directly via the communication interface. A communication plug-in, now also included in the scope of delivery, makes it possible to save images separately, such as for quality assurance purposes.

Extension of the Functional Scope of Custom Tools

With the "Extension Tool Add-On" in MERLIC 5.2, it is now much more convenient to implement even sophisticated machine vision applications. Experienced users in particular benefit from being able to develop their own custom tools based on MVTec HALCON. For example, the development environment HDevelop can now be connected to MERLIC. This makes debugging the custom tools much easier. The execution of a custom tool can be tracked directly in HDevelop.

Concept Tools: Foretaste of "Segment Image Pixel-Precise“

"Concept Tools" in MERLIC offer customers a first taste of future functions. At the same time, they can use the tools to carry out initial evaluations of possible new applications. In addition, customer feedback actively contributes to development.

In MERLIC 5.2, the deep-learning-based feature "Segment Image Pixel-Precise" can be tested as part of the Concept Tools-AI. This makes it possible to localise trained defect classes with pixel precision. In this way, users can solve inspection tasks, for example, that were previously not possible at all or only with considerable programming effort.

Compatibility

Since the last MERLIC version we have been working hard to improve MERLIC in every way. This has, however, resulted in a few of incompatibilities. We apologize for the inconvenience.

  • Communicator
    • The behavior of the API function MV_ActionInfo_GetParameter has been changed. Previously, it expected users to provide a pre-initialized MVValue_t to set its value. This is in contrast to all the other *_GetParameter functions which will initialize the MVValue_t and require the users to clear it afterward. The behavior of MV_ActionInfo_GetParameter has been aligned with the rest of the API in this regard. While this is technically a breaking change of the function's contract, it should not stop existing plug-ins from working but may cause a (slow) memory leak. More information.
  • MERLIC Frontend
    • Existing applications that are using pipe connections are not compatible anymore because starting with this MERLIC version only TCP/IP-based inter-process communication is supported. Therefore, the configuration of existing applications based on pipe connections need to be updated to use TCP connections. More information.
  • Installation
    • Previous MERLIC versions that were installed via the MERLIC installer cannot be updated to the new MERLIC 5.2.0 version via the "Check for Updates..." dialog in the MERLIC Creator because MERLIC now only supports the installation via the MVTec Software Installer (SOM). To use the new MERLIC version, the installation must be performed via the SOM which can be obtained via the MVTec download area. More information.
  • Tool Development
    • Custom MERLIC tools that were created for a previous MERLIC version and that make use of any of the following procedures cannot be used in MERLIC 5.2.0 because the "ToolHandle" parameter has been removed from the procedures.
      • _Info
      • Me_add_roi_support_all
      • Me_add_roi_support_circle
      • Me_add_roi_support_paraxial_rect
      • Me_add_roi_support_point
      • Me_add_roi_support_rectangle
      • Me_add_roi_support_segment
      Existing custom tools that make use of these procedures need to be updated to remove the "ToolHandle" parameter from the respective procedures. In addition, some other interface procedures are not supported anymore for the tool development in MERLIC 5.2.0. Therefore, existing custom tools using unsupported interface procedures also need to be updated. This can be done with the Python script "ConvertTool.py" that is provided with the MERLIC installation. More information.
  • Miscellaneous
    • MERLIC Frontends of a previous MERLIC version are not compatible with MERLIC Creator or MERLIC RTE of the new MERLIC 5.2.0 version and vice versa. When connecting the MERLIC Frontend of a MERLIC 5.2.0 installation remotely to an instance of the MERLIC Creator or MERLIC RTE of a MERLIC 5.1 installation (or older), the connection succeeds but the window of the MERLIC Frontend remains blank. Vice versa, the MERLIC Frontend of a MERLIC 5.1 (or older) installation fails to display the Frontend served up by an instance of MERLIC Creator or MERLIC RTE of a MERLIC 5.2.0 installation.
    • Due to the new underlying HALCON version, the behavior of existing custom tools might have changed since the last MERLIC version. Therefore, it is recommended to check the functionality of existing custom tools in this MERLIC version in addition to other required updates of the custom tools due to the revised interface for the tool developoment. More information.
    • Due to the changes of the system requirements regarding the fallback for OpenGL, the system configurations in which the environment variable for OpenGL was set to use DirectX, i.e., "QT_OPENGL=desktop", do not work anymore with the new MERLIC version. Instead, software-only OpenGL must be used as fallback. Therefore, the configuration of the environment variable needs to be adjusted to "QT_OPENGL=software", if required. More information.

Image Source Manager

  • New Features
    • The Image Source Manager has been extended by the MVTec EasyParams. They represent a predefined set of new parameters which serve as a clear and easy interface to define the actual settings of the underlying camera parameters. The predefined set of MVTec EasyParams focuses on the configuration for the most important and most used camera features to enable a quick and simplified configuration for the most common use cases. For this, the MVTec EasyParams will always be displayed with the same name for all types of camera devices. In addition, the MVTec EasyParams combine the settings of several camera parameters into a single MVTec EasyParam to simplify the configuration, e.g., for the trigger settings. In contrast to the actual camera parameters, the parameter settings of the MVTec EasyParams are always saved persistently.
      In MERLIC, the MVTec EasyParams are available in the configuration area of the "Image Sources" tab in the MERLIC RTE Setup. The configuration area for camera parameters has been adjusted to provide two tabs. The parameter representing the MVTec EasyParams are available in the tab "EasyParams". The complete set of camera parameters that are available for the connected camera are listed in the tab "All parameters". The user may switch between both tabs for the configuration of the camera. In case the connected camera device does not provide all underlying camera parameters of the MVTec EasyParams, the respective configuration in the "EasyParams" tab will not be visible. This way, only the configurable settings are provided.
  • Enhancements
    • The behavior when using certain features of the Image Source Manager (ISM) in the MERLIC RTE Setup while an MVApp is running continuously in the MERLIC Creator has been improved. Previously, ISM failed to grab an image and returned an error after another ISM configuration was activated or after an image source has been reconnected or newly been added. In such a situation, the execution of the MVApp had to be stopped and started again in order to enable a correct acquisition again. Now, the image acquisition works correctly for all newly added or reconnected image sources as well as for all image sources of a newly activated configuration without restarting the execution of the MVApp.
    • The behavior when starting acquiring live images in the "Image Sources" tab of the MERLIC RTE Setup has been improved. Previously, the software trigger was temporarily activated on a camera when the live image was started to acquire images from the camera. Now, the trigger settings of the camera are not modified anymore when starting the live image.
    • The image acquisition interfaces that are used for the Image Source Manager (ISM) as well as for the tools "Acquire Image from Camera" and "Acquire Image from File", respectively, have been updated to a new revision. MERLIC now contains the following versions of the interfaces:
      • GigEVision2: Revision 18.11.15
      • GenICamGenTL: Revision 18.11.15
      • USB3Vision: Revision 18.11.18
  • Fixed Problems
    • In some cases, the "Image Source" tool returned an error and displayed the error image when the execution was stopped in the MERLIC Creator while the image acquisition in the Image Source Manager was still in progress. This problem has been fixed. Now, the "Image Source" tool always displays the latest executed image when stopping the execution. The latest executed image might not be the latest acquired image because the active configuration might contain other image sources for which the image acquisition is not finished. If the acquisition of the selected image source succeeded but the acquisition of any other image source in the active configuration is still in progress when the execution is stopped, the latest executed image that is shown in the "Image Source" tool is not the same as the latest acquired image because the next iteration of the MVApp has not started yet.
      In addition, the "Image Source" tool also returned an error when modifying the parameters of a camera in the MERLIC RTE Setup while an MVApp was running continuously in the MERLIC Creator. This problem has been fixed. Now, the execution of the MVApp might be suspended momentarily until the modified camera parameters have been applied.
    • When clicking the "New image source" button in the "Image Sources" tab of the MERLIC RTE Setup, it took a while before the corresponding dialog was brought up. This problem has been fixed.
    • In the "Image Sources" tab of the MERLIC RTE Setup, the live image mode could not be stopped and also blocked all other user actions to be applied before a new live image was acquired or the configured "grab timeout" (default 5 seconds) occurred. This problem has been fixed. Now the live image and also the snapshot can reliably be aborted at any time.
    • When editing and using camera configuration files for MERLIC, i.e., ".pers" files, the line endings in the files were not compatible with different operating systems. This problem has been fixed.
    • In some cases, the live image or snapshot that was displayed for an image source in the "Image Sources" tab of the MERLIC RTE Setup was erroneously associated with a different image source. This problem occurred if the image source of the active configuration had exactly the same name as an image source of an inactive configuration and if this inactive configuration had been previously activated in the same instance of the MERLIC RTE Setup. If the live image was then started or a snapshot was taken for the image source of the active configuration, the respective images were still displayed when changing to the identically named image source of the inactive configuration.

Process Integration

  • New Features
    • MERLIC RTE now supports the transmission of image results that have been added to the MVApp results of the respective MVApp. Thus, they will be stored in memory along with the other results when executing the respective MVApp via an associated recipe in the MERLIC RTE mode. As with regular results, the image results are deleted from memory when the ring buffer that stores the results exceeds its capacity and starts dropping results, beginning with the oldest one. It might be required to adjust the respective setting in the .ini file, i.e., "ResultBufferSize", depending on the amount and size of the images, the frequency of the recipes' execution, the delay between the generation of the result and its processing by the Communicator plug-ins, and the system resources available to MERLIC.
    • The MERLIC RTE application, i.e., "merlic_rte.exe", has been extended by the following new command line options:
      • "-r", "--recipe": This option overrides the default recipe and specifies a different recipe for the startup.
      • "-R", "--no_recipe": This option overrides the default recipe and specifies that no recipe is loaded on startup.
      • "-x", "--execute": This option starts a continuous execution of the startup recipe immediately after it is prepared.
  • Improved Usability
    • In the "Image Sources" and "Communication" tab of the MERLIC RTE Setup, the contrast on disabled parameters has been improved. Previously, the contrast was very low which made it sometimes difficult to read the parameters. Now, the contrast has been increased to ensure better readability.
  • Fixed Problems
    • When the MERLIC RTE Setup was connected to a remote system on which MERLIC RTE was currently running and the "Recipes" tab was selected, a wrong message with misleading information was displayed. This problem has been fixed. Now, the "Recipes" tab correctly states that recipes cannot be managed remotely when the MERLIC RTE Setup is connected to a remote system.
    • On Linux systems, the parameters defined in a recipe were not set in the same order as on Windows systems when using MERLIC RTE. This problem has been fixed. Now, the recipe parameters will be set in the same order as on Windows systems.
    • In the "Image Sources" and "Communication" tabs of the MERLIC RTE Setup, the values of some parameters were clipped on the left-hand side in the respective GUI controls if not enough horizontal space was available. This problem has been fixed. Now, the content of the GUI controls will be elided on the right-hand side if necessary unless the cursor is placed in the control for editing.
    • If a new MERLIC RTE Setup was opened with a forced connection after a previous instance of the MERLIC RTE Setup had ended unexpectedly, the configuration on the "Image Sources" tab was still locked. This problem has been fixed. Now, the "Image Sources" tab is available even if the previously connected MERLIC RTE Setup had ended unexpectedly.
    • When scrolling the parameter list in the "Image Sources" and "Communication" tabs of the MERLIC RTE Setup, the list was scrolled down/up too fast which made it difficult to look through the parameters. This problem has been fixed.
    • When using the up and down arrow keys to change the selected plug-in instance in the "Communication" tab of the MERLIC RTE Setup, the view in the configuration area on the right did not change to the currently selected plug-in instance. This problem has been fixed.
    • The names of camera parameters in the "Image Sources" tab and the names of plug-in parameters in the "Communication" tab of the MERLIC RTE Setup were not correctly elided with an ellipsis (...) if the name did not fit within the available space in the respective configuration area. This problem has been fixed. Now, also a tooltip is displayed when hovering the mouse pointer over an elided parameter name.
    • On Windows systems, MERLIC RTE did not shut down immediately if the terminate signal, e.g., CTRL+C, was received while the startup was still in progress. In addition, MERLIC RTE could never be terminated gracefully again afterwards. This problem has been fixed.

Communicator

  • New Features
    • The Communicator API now supports the transmission of image results that have been added to the MVApp results of the respective MVApp. For this, the results and the "ResultReady" event now include so-called "data component descriptors" that reference the individual images as a "data container descriptor". These can then be used to fetch a "data container" containing the actual binary "data components", i.e., the image results, from the vision system. The resolution and binary format of the images can be customized by setting the corresponding properties of the data component descriptors before fetching them.
    • The C++ plug-in support library has been extended to also support the transfer and retrieval of image results analogously to the underlying C API.
    • The Communicator API and accompanying support C++ library have been extended to allow plug-ins to specify a preferred control widget for a plug-in configuration parameter. Several (new) widgets are available:
      • A file chooser and a directory chooser to allow specifying a path by browsing the (local) filesystem as an alternative to a plain text field.
      • A password entry text field that allows toggling between obfuscated and plain text entry, also as an alternative to a plain text field.
      • A button group which can be used as an alternative to a combo box to let the user choose between a few options.
      The MQTT plug-in, the OPC UA server plug-in, and the new "save-images" example plug-in all make use of this ability.
    • The Communicator API has been extended by a new property eMVPluginProperty_RapidValidation which may be specified in the MVDetails API function. Setting this Boolean to "true" allows a Communicator plug-in to opt into a new "rapid validation" behavior which will trigger the validation of the tentative plug-in configuration in the MERLIC RTE Setup upon every modification. Plug-ins that do not set this property maintain the existing behavior, i.e., a validation only takes place when the user saves the plug-in configuration. The MQTT and OPC UA server plug-ins support this rapid validation.
  • Enhancements
    • The "Config::Builder" class of the C++ plug-in support library has been extended by the functions WithPrefix and WithSuffix. These functions can be used to set prefixes and suffixes for the user parameters that are available the MERLIC RTE Setup.
    • The MERLIC Communicator now also supports building a Communicator plug-in using the C++ support library in C++20 mode. Previously, some warnings related to the deprecation of bitwise operations on enumerators of different enumeration types might have occurred when using the C++ plug-in support library in  C++20 mode. Now, C++20 is fully compatible with building Communicator plug-ins using the C++ plug-in support library and no warnings are returned regarding any deprecations.
  • Fixed Problems
    • When using the C++ plug-in support library, some MVValue_t objects were not cleared correctly when querying information of the underlying C API data types. This led to a (slow) memory leak in all plug-ins that were using these objects. This problem has been fixed. Note that this change affects the compatibility. Read more.

Interfaces for Process Integration

  • New Features
    • The MQTT plug-in has been extended by the ability to publish result image data. The plug-in now also provides a new set of user parameters for the configuration of the image data, i.e., to define how the image data should be published. They can be accessed in the user parameter section "Image Results" which is displayed in the configuration area of the plug-in within the "Communication" tab of the MERLIC RTE Setup. By default, the image data are not published and this feature has to be enabled in the configuration of the plug-in.
    • The OPC UA server plug-in has been extended by the ability to retrieve result image data. The plug-in now also provides a new set of user parameters for the configuration of the image data, i.e., to define how the image data should be provided. They can be accessed in the user parameter section "Image Results" which is displayed in the configuration area of the plug-in within the "Communication" tab of the MERLIC RTE Setup. By default, the image data are not provided and this feature has to be enabled in the configuration of the plug-in.
    • MERLIC has been extended by a new Communicator example plug-in "save-images". It demonstrates the use of the new "data container descriptors" and "data component descriptors" of the image API. When running, the plug-in automatically saves the image data contained in MVApp results to a configurable directory on disk. The plug-in offers a rich set of configuration options to customize the image format, output directory structure, and conditions upon which to output an image. The source code for this plug-in is available at "examples/communicator_plugins/save-images" inside the MERLIC installation directory.
  • Enhancements
    • The "event-logger" example plug-in has been improved. It now also logs the data information of image results that have been added to the MVApp results for the process integration, i.e, MERLIC RTE. In addition, the new "data component descriptors" that are included in each "ResultReady" event are logged.
    • The MQTT plug-in is now capable of connecting to MQTT brokers which require authentication via username and password. Authentication can be enabled via newly added parameters in the plug-in's configuration on the "Communication" tab of MERLIC RTE Setup. Please note that these credentials are stored and transferred in plain text.
    • The OPC UA server plug-in has been extended by a new optional add-in, i.e., the "VisionCompanion" object. It facilitates the integration with OPC UA clients that are not able to handle the complexities of the information model specified by the "OPC UA for Machine Vision - Part 1" companion specification, e.g., simple OPC UA clients such as PLCs. It enables the user to operate the OPC UA server in an easier way by providing an alternative approach to start the execution and get the results.

MERLIC Creator

  • New Features
    • MERLIC now supports adding image results of a MERLIC tool to the MVApp results for the process integration, i.e., for MERLIC RTE. The connector of the respective tool results representing an image now also provides the button for adding the result to the MVApp result. The required data type is automatically selected when adding an image result to the MVApp result. They will then appear in the panel "MVApp Parameters and Results" and they will be available to Communicator plug-ins through the new "data container descriptors" of the Communicator API.
    • The update mechanism of MERLIC has been improved. Previously, the user had to check for available updates manually via the "Help > Check for Updates" menu. Now, the MERLIC Creator automatically checks for new updates at every startup, and if a newer version is available, the user will be notified via a dialog.
    • MERLIC now supports a preview of all types of graphical data in MERLIC tools, i.e., images, contours, or regions. When hovering the mouse pointer over a tool parameter or tool result that contains graphical data, the respective graphical data will be displayed in the graphics window of the MERLIC tool. Tool parameters and results that enable such a preview can now be recognized by a new icon that appears on mouse hover. MERLIC also enables to display the graphical data permanently by clicking on the connector of the respective tool parameter or tool result. This functionality is especially helpful if a MERLIC tool has multiple tool parameters or results with graphical data, or if you would like to check the graphical data of a tool result without connecting it to a subsequent tool.
  • Enhancements
    • If an MVApp with user management of a previous MERLIC version was converted while loading the MVApp in the MERLIC Creator, the back-up of the MVApp did not contain a back-up of the user management database. Instead, the original user management database was overwritten with the new database schema and the original database was lost. Therefore, the back-up of the MVApp no longer worked correctly in the MERLIC version in which it was originally created because the older MERLIC version did not work with the new database schema of the user management. This problem has been fixed. Now, also a back-up for the user management database is created when converting MVApps of previous MERLIC versions.
  • Fixed Problems
    • If a reserved keyword that is not allowed has been entered while renaming a tool parameter or tool result, the displayed error message was not clear and did not mention the actual cause for the error. This problem has been fixed.
    • If an MVApp contained a large amount of MERLIC tools, the context menu with the list of available tools for connecting was not completely visible in some cases. This problem has been fixed.
    • In rare cases, MERLIC Creator could crash on shutdown if the Tool Flow of the MVApp contained crossing points. This problem has been fixed.
    • A wrong tooltip was shown at a MERLIC tool when hovering the mouse pointer over the arrow icon of an MVApp result. The tooltip mentioned "MVApp Parameter" instead of "MVApp Result" which might have led to confusion. This problem has been fixed.
    • In some cases, deleting a MERLIC tool could take very long if the MVApp contained a large number of "Branch on Condition" tools. This problem has been fixed.
    • After resolving a race condition in an MVApp, the respective tool parameter has been set to its default value even though a tool result of a previous tool was connected to the parameter. This problem has been fixed. Now, the value of the connected tool result is correctly propagated.
    • When switching between the processing image and a training image of a MERLIC tool with training mode, the MVApp was incorrectly marked as modified even though this has no effect on the program state. This problem has been fixed.
    • After selecting the connector of a tool parameter for editing and deleting the current value, some problems occurred when trying to edit the value again. This problem has been fixed.
    • In the "About MERLIC" dialog in the MERLIC Creator, the translation of some texts were missing when using MERLIC in German. This problem has been fixed.
    • If an error was returned at a MERLIC tool and the respective error message dialog was opened in detailed view, the information provided under "Details" vanished when changing the focus to a different tool, e.g., by clicking on a different tool in the Tool Flow panel. This problem has been fixed.

MERLIC Designer

  • Improved Usability
    • The usability of the Frontend Designer has been improved. Previously, the color of the grid in the workspace was too dark which made it hard to focus on the actual Designer widgets. Now, the default color for the grid has been changed to a lighter color to keep the focus on the Designer widgets.
  • Fixed Problems
    • The grid properties within the Frontend Designer were not saved persistently. This problem has been fixed.
    • In the Frontend Designer, a white border was visible on the right and bottom of the workspace. This problem has been fixed.
    • When adding, deleting, and removing groups within the user management settings in the MERLIC Designer, some issues related to the display of the list of user groups could occur. This problem has been fixed.

MERLIC Frontend

  • Enhancements
    • Starting with this version, only TCP/IP-based inter-process communication is supported. The inter-process communication using Microsoft pipes has been removed for the MERLIC Frontend. Note that this change affects the compatibility. Read more.
  • Fixed Problems
    • When using the MERLIC Frontend in one of the MERLIC languages other than English, the error messages in the login dialog of the MERLIC Frontend were not translated. This problem has been fixed.
    • When using the MERLIC Frontend in one of the MERLIC languages other than English and closing the MERLIC Frontend with pending changes, the buttons in the dialog asking the user whether changes should be saved were not translated. This problem has been fixed.
    • The MERLIC Frontend leaked memory at a rate of about 0.7 MB/h. This problem has been fixed.

Tools

  • New Features
    • MERLIC now makes it easier to recognize if a MERLIC tool has mutually exclusive parameters, e.g., parameters that are not applied during computation depending on the value of some other parameters. In case such a parameter is not applied, the corresponding connector is now visually grayed out and its value cannot be changed manually anymore. Currently, the following tools are affected:
      • Check Presence With Matching
      • Count with Matching
      • Evaluate Contours
      • Evaluate Regions
      • Level Surface
      • Locate with Matching
      • Read Bar Code
      • Read ECC 200
      • Read QR Code
      • Read Text And Numbers With Deep Learning
      • Remove Outlier Pixels
      • Scale Gray Range To 8 Bit
    • MERLIC has been extended by the new concept tool "Segment Image Pixel Precise". It enables a pixel-precise segmentation of the image in pre-trained classes using a deep-learning-based approach. The tool requires a classifier, i.e., a trained deep learning model, as input which needs to be trained in MVTec HALCON. This concept tool can be used to evaluate the current stage of development for the deep-learning-based approach of pixel-precise segmentation in MERLIC. MVTec appreciates any feedback on desired changes or further feature requests. The feedback can be submitted on the MERLIC feedback website which can be accessed from the MERLIC Creator either via the feedback icon on the top right or via the "Help" menu. 
    • MERLIC has been extended by a new tool "Detect Anomalies in the Global Context" in the tool category "Deep Learning - AI". It enables the user to detect structural and logical anomalies in images on a larger scale, e.g., structural anomalies including unknown features such as scratches, cracks, or contamination, as well as logical anomalies that violate constraints regarding the image content such as a wrong number or a wrong position of an object. In contrast to the tool "Detect Anomalies", a pre-trained deep learning model is required as input for the tool. The tool allows the user to select which data of the trained deep learning model should be used to detect anomalies. It also supports the use of Artificial Intelligence Acceleration Interfaces (AI²) for the NVIDIA® TensorRT™ SDK and the Intel® Distribution of OpenVINO™ toolkit.
  • Enhancements
    • The tool "Write Image to File" has been extended by two new additional tool parameters "File Prefix" and "File Suffix". They allow the user to add a prefix and/or suffix to the respective file name under which the image is stored. In addition, the tool has been extended by the new tool result "Current File Name" which returns the complete path and file name of the last written image.
  • Improved Usability
    • The usability of the tool "Evaluate Expression" has been improved. Previously, it was not possible to see the complete name of an expression if the name was truncated due to its lengths. Now, the complete name is displayed in a tooltip when hovering the mouse over the respective name in the tool board.
  • Fixed Problems
    • The following MERLIC tools of the category "ROI Creation" did not report any error when an inappropriate ROI was connected to its ROI tool parameter. This problem has been fixed.
      • Create Circle
      • Create Paraxial Rectangle
      • Create Rectangle
      • Create Segment
    • After selecting a defect cluster in the tool "Evaluate Defect Clusters", the preview of further defect clusters via easyTouch was hard to distinguish from the previously selected defects because they were displayed in the same color. This problem has been fixed.
    • When adding a parameter to the MERLIC tools "Evaluate Expression" or "Branch on Condition" by connecting a result with the semantic type "condition" from a previous MERLIC tool, the new parameter was created with the wrong semantic type. Instead of the semantic type "long", the type "double" was set for the new parameter. This caused logical operators (e.g., "not", "and", "or") in the expression to fail as they can only handle integral values. This problem has been fixed.
    • If the tool results "Confidence", "Classes", "Angle", "X", or "Y" of the concept tool "Find Objects" have been connected to a tool parameter of the tool "Evaluate Expression", only the first tuple element of the results were transferred to the connected parameter of "Evaluate Expression". This problem has been fixed. The semantic type of these tool results has been changed to reflect the fact that they contain tuples with multiple values.
    • The tool "Locate with Matching" did not report any error if no object could be found within the processing image. This problem has been fixed.
    • MERLIC crashed when using a tool of the category "Deep Learning - AI" if the PATH environment variable contained a directory with an incompatible version of "libprotobuf.dll". This problem has been fixed.

Examples

  • New Features
    • MERLIC has been extended by a new MVApp example "segment_pill_defects.mvapp".  It shows the use of the new concept tool "Segment Image Pixel Precise". The concept tool is meant for evaluation only and is not recommended to be used in production because it may be unstable, work-in-progress, or be changed or removed in future MERLIC releases. 
    • MERLIC has been extended by the new MVApp example "detect_anomalies_of_bottles_in_the_global_context.mvapp". It shows the use of the new tool "Detect Anomalies in the Global Context". 

Documentation

  • New Features
    • The Communicator manual has been extended with new language versions. It is now available in the same languages as the MERLIC manual, i.e, in German, Japanese, and simplified Chinese.
    • MERLIC has been extended by the MERLIC Tool Development manual, a revised version of the manual that was provided in MERLIC 3. It provides documentation of the required development process for custom MERLIC tools including step-by-step instructions on how to develop a custom tool, and it contains a procedure reference with a description of all available procedures that can be used for the tool development. In addition, it also provides some further information that is relevant for the tool development such as the available tool template or debugging information.
    • The MERLIC manual has been extended by the topic "Parameter and Result Types". It offers an overview of the different types of parameters and result that are supported in MERLIC.
  • Enhancements
    • The tool reference of the following tools of the category "Preprocessing > Filter" has been improved.
      • Adapt Brightness
      • Apply Gray Morphology
      • Correct Shading
      • Emphasize Edges
      • Merge Images
      • Reduce Image Noise
      The description of the tool result "Processed Region" now provides more detailed information.
    • The MERLIC documentation has been improved. Previously, the underlying HALCON version of the respective MERLIC version was only mentioned in the release notes. Now, the HALCON version is also mentioned in the "Readme" topic of the MERLIC manual and in the Tool Development manual.
    • The documentation of the I/O configuration in the MERLIC manual has been improved. It now describes in more detail which requirements and restrictions need to be taken into consideration when connecting an I/O device to the MERLIC RTE Setup.
    • The MERLIC documentation regarding the usage of multiple cameras has been improved. It now provides some more details on possible alternatives.
    • The print settings for the MERLIC manuals have been improved. Previously, it was possible that some content was not visible when printing a topic, e.g., in large tables. Now, the print settings have been revised and all contents of a topic are visible in the print output.
  • Fixed Problems
    • Previously, the MERLIC documentation used the term "run time environment" when speaking of the MERLIC Designer or the MERLIC Frontend. This could be confusing, as the term was not referring to the MERLIC Runtime Environment, i.e,. the MERLIC RTE mode. This problem has been fixed.
    • The topic "Checking the MERLIC State (Hilscher)" in the MERLIC manual contained wrong information that did not refer to the process integration with Hilscher cards. This problem has been fixed.
    • The MERLIC documentation mentioned a wrong installation path of MERLIC in several topics. This problem has been fixed.
    • In the MERLIC Communicator manual, the links to the EULA and the third-party license information in the "Legal Notices" were broken. This problem has been fixed.
    • In the topic "Protocols for the Data Exchange" within the MERLIC manual, the overview table with the description of the respective members of the protocol "FromMERLICProtocol" was missing. This problem has been fixed.
    • In the MERLIC manual, some example images in the overview topic for the MERLIC tools of the category "ROI Creation" were mixed up. The example image of a paraxial rectangle was displayed at the description for regular rectangles and vice versa. This problem has been fixed.
    • The topic "Keyboard Shortcuts" in the MERLIC manual did not mention all available shortcuts. This problem has been fixed.

Installation

  • New Features
    • Starting with this MERLIC version, MERLIC can be installed only via the MVTec Software Manager (SOM). The new MERLIC version will be installed beside all previous MERLIC versions. Thus, previous MERLIC versions must be uninstalled manually. Note that this change affects the compatibility. Read more.

Tool Development

  • New Features
    • The support of the quick info for custom MERLIC tools has been revised. Previously, the quick info had to be added to the procedure settings of the respective HDevelop procedure library representing the custom tool. Therefore, it could only be provided in one language. Now, the quick info needs to be provided as an HTML file in a predefined structure at a predefined location next to the respective HDevelop procedure library. This way, the quick info can be provided in all languages that are available in MERLIC, i.e., English, German, Japanese, and simplified Chinese. In addition, it is now also possible to provide a tool tip that is shown when hovering over the custom tool in the Tool Library of the MERLIC Creator.
    • The interface for developing custom MERLIC tools has been extended with the new procedures to aid in the development of custom tools whose execution conveys side effects such as tools that communicate with the outside world or tools performing I/O.
      • Me_get_tool_execution_context
      • MeTest_set_execution_context_to_running
      • MeTest_set_execution_context_to_unknown
      The procedure Me_get_tool_execution_context allows the tool to detect whether it is being executed as part of a regular execution of the MVApp or due to (partial) executions of the tool flow, e.g., to propagate the effects of a parameter change. It is provided in the procedure library "MERLICDefinedOperators.hdpl" which can be found in the directory "examples ool_development\procedures" within the MERLIC installation. The procedures MeTest_set_execution_context_to_running and MeTest_set_execution_context_to_unknown allow to set the respective execution context for testing purposes in HDevelop programs. They are provided in the auxiliary procedure library "ToolTestFramework.hdpl" which can be found in the directory "examples ool_development\procedures" within the MERLIC installation.
    • MERLIC now supports remote debugging of custom MERLIC tools in HDevelop. This enables the user to attach to the process of a MERLIC application to debug custom tools "live" in the special debug mode of HDevelop.
    • MERLIC has been extended by the new tool template "Check_Wafer". It represents an example of a custom MERLIC tool and can be used as a basis for the development of a custom tool. The tool template is provided in the directory "examples ool_development ool_templates"" within the MERLIC installation.
    • The interface for developing custom MERLIC tools has been extended. It now supports logging of parsing error messages to help the user when developing new custom tools.
  • Enhancements
    • The interface for developing custom MERLIC tools has been revised. Previously, the "_Info" procedure of a custom tool and all interface procedures, i.e., procedures with the prefix "Me_*", required the parameter "ToolHandle" even though the ToolHandle was not necessary for the actual processing in all procedures. Therefore, the "ToolHandle" parameter has been removed from the signature of the following procedures:
      • _Info
      • Me_add_roi_support_all
      • Me_add_roi_support_circle
      • Me_add_roi_support_paraxial_rect
      • Me_add_roi_support_point
      • Me_add_roi_support_rectangle
      • Me_add_roi_support_segment
      In addition, the following procedures are not supported anymore:
      • Me_convert_from_encoding_to_utf8
      • Me_quickinfo
      • Me_set_drawing_linestyle
      • Me_set_drawing_linewidth
      • Me_set_drawing_mode
      • Me_set_drawing_style
      • Me_set_font
      • Me_set_font_color
      Note that this change affects the compatibility. Read more.
  • Fixed Problems
    • MERLIC could crash if an inappropriate value was assigned to a tool parameter of a custom tool, i.e., if the assigned value did not fit the respective semantic type of the parameter. This problem has been fixed.

Miscellaneous

  • To profit from the improvements of the new HALCON version, the HALCON libraries used by MERLIC have been upgraded to the HALCON 22.05 Progress version.  Note that this change affects the compatibility. Read more.
  • On AArch64 systems, the wrong CPU architecture has been reported in the log files. This problem has been fixed.
  • The system requirements regarding the fallback of OpenGL have changed. Previously, DirectX or software-only OpenGL was automatically used as fallback if the required versions of OpenGL were not available. Now, software-only OpenGL will be automatically used as the only fallback. Note that this change affects the compatibility. Read more.
  • If a setting in the preferences dialog of the MERLIC Creator had been changed, the default values of the other settings in the preference dialog were also written to the .ini file although they had not been changed. This problem has been fixed. Now, only the modified settings are written to the .ini file.
  • The support for HiDPI scaling has been improved. Previously, only integer scaling factors such as 100% and 200% were supported. Now, also fractional window scaling factors such as 125% are supported.

Known Issues

The following issue is already known and in development process. It will be fixed for upcoming releases.

  • In frequent cases, when using TensorRT™ accelerated processing units in MERLIC tools with deep learning technology, MERLIC crashes if the required memory for the deep learning model exceeds the available memory on the GPU.
  • When an instance of MERLIC Creator or MERLIC RTE of version 5.0 is remotely configured using a MERLIC RTE Setup 5.1 or newer, removing an image source from a configuration will cause the Creator or RTE application to crash. We recommend to upgrade Creator/RTE to the current version or, in lieu of that, to use RTE Setup 5.0 to configure Creator/RTE 5.0.
  • When an instance of MERLIC Creator or MERLIC RTE of version 5.2 (or newer) is remotely configured using a MERLIC RTE Setup 5.1, it is not possible to rename image sources or configurations, despite the fact that this feature has been added in MERLIC 5.1. We recommend upgrading the MERLIC RTE Setup to version 5.2.

Legal Note: Intel, the Intel logo, OpenVINO, the OpenVINO logo, and Movidius are trademarks of Intel Corporation or its subsidiaries.

 


Release Notes for MERLIC5.1.0

This document provides the release notes for MVTecMERLIC5.1.0, as released in April 2022.

Supported Operating Systems

Windows

MERLIC5.1.0 is available for Windows 10 (64-bit).

During the installation with the MERLIC installer, the environment variable MERLIC5EXAMPLES is set to "C:\Users\Public\Documents\MVTec\MERLIC 5" by default. It contains the path to the directory in which additional files such as example applications or images are installed. If MERLIC is installed via the MVTec Software Manager (SOM), no environment variable will be set.

Please refer to the "Readme" in the MERLIC manual for more information about the system requirements.

Linux

MERLIC now provides a test version for evaluating MERLIC RTE (Runtime Environment) for Linux on PC (Linux x86_64) and for Arm-based platforms (AArch64). This means that both embedded devices based on the widely used Arm architecture and Linux alternatives to the typical Windows operating system can now be tested for image processing with MERLIC. This is a first step towards making MERLIC available on additional platforms in the future.

Developing the MVApp is still done on a Windows system with the MERLIC Creator. The application can then be tested on the "new" systems using MERLIC RTE for Arm-based platforms and Linux. Cameras can be set up remotely with the help of MERLIC RTE Setup. The test version requires a specific license. Please contact MVTec to get more information about how to obtain this license.

MVTec appreciates any feedback on the test version. The feedback can be submitted on the MERLIC feedback website which can be accessed from the MERLIC Creator either via the feedback icon on the top right or via the "Help" menu.

Major New Features

Deep OCR

MERLIC 5.1 includes a new tool for optical character recognition, which is based on HALCON’s Deep OCR technology.

Compared to other algorithms, this holistic deep-learning-based approach can localize characters much more robustly, regardless of their orientation, font type, and polarity – and requires significantly less parameter tuning. Recognition performance is further increased by the automatic grouping of characters. This allows the identification of whole words and thus reduces the chance of misinterpretation of similar-looking characters. This new tool does not require the Deep Learning Add-On. It is included in all MERLIC packages, starting with the MERLIC S package.

Support for AI Accelerator Hardware

MERLIC 5.1 includes Artificial Intelligence Acceleration Interface (AI²) plug-ins for the NVIDIA® TensorRT™ SDK and the Intel® Distribution of OpenVINO™ toolkit.

This enables users to benefit from compatible AI accelerator hardware – quickly and conveniently. MERLIC tools using deep learning functionality can thus achieve significantly faster inference times when paired with compatible hardware like NVIDIA GPUs or Intel processors including GPUs, CPUs and VPUs like the Intel® Movidius™ Neural Compute Stick. By expanding the range of supported Intel devices, customers now have even more flexibility in their choice of hardware. By adding support for AI², MERLIC will also benefit from any future plug-ins that integrate new accelerator hardware.

Compatibility

Since the last MERLIC version we have been working hard to improve MERLIC in every way. This has, however, resulted in a few of incompatibilities. We apologize for the inconvenience.

  • Interfaces for Process Integration
    • The MQTT plug-in has been updated to version 2.0.0. Due to the revised topic hierarchy provided by the new version of the MQTT plug-in, it might be necessary to change other MQTT clients that process the revised topics. More information.
  • Licensing
    • Due to the changes for time-limited licenses of MERLIC, an active network connection is now required when using MERLIC on a virtual machine with a time-limited license. More information.

Image Source Manager

  • New Features
    • The "Image Sources" tab of the MERLIC RTE Setup now provides a search bar in the "Camera Parameters" section which enables the user to search for specific camera parameters. In addition, the "Camera Parameters" section now also provides some further features to simplify the configuration and differentiation of camera parameters:
      • Parameters that are not persistent on the camera and therefore cannot be saved are now marked with an icon in the parameter list. This makes it easier to recognize if changes at the respective parameter can be saved.
      • A new filter menu allows the user to hide non-persistent parameters so that the list of camera parameters shows only those that are persistent and can be saved.
      • The visibility setting is now also provided in the new filter menu. This way, all filter options can be found in one place.
    • The Image Source Manager now supports the renaming of image sources and shared configurations in the "Image Sources" tab of the MERLIC RTE Setup. The new name will be validated and accepted if it is unique and contains only valid characters.
  • Enhancements
    • The detection of the current connection status of a camera has been improved. Previously, the Image Source Manager could not recognize when the connection to a camera was lost and continued to show the corresponding image source as "Connected" in the "Image Sources" tab of the MERLIC RTE Setup and in the "Image Source Configuration" panel of the MERLIC Creator. Now, the Image Source Manager recognizes a lost connection to a GigEVision2 camera and changes the status of the corresponding camera to "Not Connected".
    • The error messages in the "Image Sources" tab of the MERLIC RTE Setup have been improved. Previously, the messages for errors caused by the connected instance of the MERLIC Creator or MERLIC RTE, respectively, were available only in English. Now, all error messages are translated and will be shown in the language of the MERLIC RTE Setup. For better consistency, the corresponding English error messages will also be logged by the connected instance, i.e., MERLIC Creator or MERLIC RTE, and they will also be shown in the command prompt that runs MERLIC RTE with the same message as shown in the "Image Sources" tab.
    • The image acquisition interfaces that are used for the Image Source Manager (ISM) as well as for the tools "Acquire Image from Camera" and "Acquire Image from File", respectively, have been updated to a new revision. MERLIC now contains the following versions of the interfaces:
      • GigEVision2: Revision 18.11.13
      • GenICamGenTL: Revision 18.11.13
      • USB3Vision: Revision 18.11.15
      • File: Revision 18.11.5
      MERLIC Vision Apps that use the previous revision of the interfaces are still compatible and require no changes.
  • Improved Usability
    • The usability of the "Image Sources" tab of the MERLIC RTE Setup has been improved. Previously, no visual indication had been given when an ISM configuration was activated by way of clicking on the link in the banner of the image source overview. Now, a spinner is displayed while the configuration is being activated.
    • The usability of the "New image source" dialog in the "Image Sources" tab of the MERLIC RTE Setup has been improved. Previously, if no camera was available, a click on the drop-down menu "Available Cameras" did not produce a reaction. Now, if there is no camera available, the drop-down menu opens and states "No cameras available". Also, the configuration of a new image source can now be completed by pressing the return key.
  • Fixed Problems
    • If an ISM configuration was removed manually outside of MERLIC by deleting the respective folder in the file explorer, the configuration was not removed from the "Image Sources" tab of the MERLIC RTE Setup. This problem has been fixed.
    • If the IP address of an existing GigEVision image source was configured incorrectly and the automatic reconnection failed after setting a suitable IP address, the banner message in the "Image Source" tab still showed the wrong status. This problem has been fixed.
    • If an ISM configuration that contained at least one "File" image source was activated in the "Image Sources" tab of the MERLIC RTE Setup, an error message was wrongly written to the log file. If MERLIC RTE was running, the error message was also displayed in the respective command prompt. This problem has been fixed.
    • When creating a new image source in the "Image Sources" tab of the MERLIC RTE Setup, in some cases, paths containing "<" and ">" which were specified as "Image Directory" for image sources have been rendered as HTML. This problem has been fixed. The paths are now displayed as plain text; additionally, the characters "<" and ">" are no longer allowed in the image directory path when creating new image sources.
    • When using the Image Source Manager on a Windows system, the paths of file-based image sources were shown with a regular slash "/" as directory separator instead of the Windows-specific backslash "\". This caused inconsistencies with other parts of the MERLIC RTE setup. This problem has been fixed.
    • If the name of a new ISM configuration ended with a space, no image source could be added to this configuration. This problem has been fixed. MERLIC now automatically removes spaces at the end of ISM configuration names.
    • After the installation of the driver for a USB3Vision device, an error message appeared in the "Image Sources" tab of the MERLIC RTE Setup stating that the driver installation failed, even when it was successful. This problem has been fixed.
    • If an image directory for a new image source was selected with the file system browser, a "file://" URL was sometimes inserted into the text field instead of a valid path, e.g., when selecting a directory from a network share. This problem has been fixed. The URLs are now resolved to the correct path when possible.
    • If the MERLIC Creator, i.e., merlic_creator.exe, was started via the command line with the option "--frontend", no ISM configuration was activated by default. Thus, the user had to activate a configuration manually via the MERLIC RTE Setup in order to use the MERLIC Creator in Frontend mode in conjunction with the Image Source Manager. This problem has been fixed. Now, the shared configuration that was used last in the MERLIC Creator will automatically be activated.
    • In the "Image Sources" tab of the MERLIC RTE Setup, integer camera parameters whose actual value is greater than 231-1 were incorrectly displayed as negative numbers and would not accept larger values, e.g., for the camera parameter "Gev Device IP Address" or other camera parameters that encode the IP address as a 32-bit unsigned integer. This problem has been fixed. Integer parameters can now be displayed and edited up to the maximum limit of 263-1.
      If you run the MERLIC RTE Setup of MERLIC 5.0 while using MERLIC RTE or MERLIC Creator of MERLIC 5.1, the same parameters are also displayed correctly. However, their value can only be edited up to the maximum limit of 231-1.
    • When the JSON file representing a "File" image source was edited by the user such that the "ImageReference" entry contains a string that was not a well-formed path, MERLIC Creator and MERLIC RTE could crash in some circumstances. This problem has been fixed. The image source will now be displayed as "Not Connected" and the log file will contain an error message detailing the cause.
    • If MERLIC was not able to properly restore the values of camera parameters when activating the respective image source, the connection status of the camera was erroneously displayed as "Connected" in the MERLIC RTE Setup, whereas the status in the MERLIC Creator showed "Connected, but parameters could not be restored". This problem has been fixed. Now, the status is consistently displayed as "Connected, but parameters could not be restored". When saving the camera parameters afterward, the connection status will be updated to "Connected".
    • If a camera device was connected to MERLIC via the Image Source Manager and the respective configuration files that could be found for the camera on the system were not compatible, the camera device could become inoperable. This problem has been fixed. If a camera cannot be loaded with the existing configuration files, the camera configuration will now be reset to the previous state before MERLIC started to load the configuration files.

Process Integration

  • Fixed Problems
    • MERLIC RTE crashed sporadically on startup if the following two conditions were met:
      • MERLIC RTE was started with a default recipe that referenced an MVApp containing tools with training images.
      • A Communicator was running and one or multiple plug-ins that query available recipes on startup, e.g., the plug-ins "OPC_UA" or "MQTT", were running.
      This problem has been fixed.
    • If the MERLIC RTE Setup tried to connect to a remote system, while another MERLIC RTE Setup was already connected locally and the service for the Image Source Manager was already busy, it crashed. This problem has been fixed. Now, a message is displayed stating that another user is already configuring the host. The user can then choose to forcibly connect to the remote system.
    • When configuring a plug-in in the "Communication" tab of the MERLIC RTE Setup, several errors occurred within the user parameters:
      • In some cases, the default value of user parameters declared as Int8 was interpreted as character.
      • If the values of a user parameter consisted of a large integer, sometimes they were accidentally displayed using scientific notation, e.g., 1e+18.
      • If a number greater than 254 was entered for a user parameter that is declared as Int64/UInt64, rounding issues could occur resulting in a loss of precision.
      • User parameters that expect an UInt32 value but whose range is constrained by a defined step size could not process values outside of -231 to 231-1, which could cause an integer overflow.
      These problems have been fixed. Now, user parameters that expect an UInt32 value but whose range is constrained by a defined step size are represented by a text field instead of a spin box if the range of their constraint covers values outside -231 to 231-1.
    • If a recipe was loaded into the MERLIC RTE Setup that contained an MVApp parameter with a value of the type SINT, no value appeared in the MERLIC RTE Setup, because it interpreted the parameter as a character instead of an integral number. This problem has been fixed.
    • If a Communicator plug-in started the execution by calling "StartContinuous" with iteration-specific parameters, i.e., parameters that override the parameter values defined in the currently prepared recipe, MERLIC RTE ignored the provided parameters. This problem has been fixed.
    • When starting the execution multiple times by calling "StartSingleJob" or "StartContinuous" with iteration-specific parameters, i.e., parameters that override the parameter values defined in the currently prepared recipe, and then starting the execution again without any iteration-specific parameters, the "StartSingleJob" and "StartContinuous" jobs were erroneously executed with the iteration-specific parameters of the previous jobs instead of the original parameters defined in the recipe. This problem has been fixed. Now, "StartSingleJob" and "StartContinuous" will be executed with the original recipe parameters if no compatible iteration-specific parameters are defined.
    • In rare cases, MERLIC RTE crashed just after it was started or when a recipe was unprepared. This problem has been fixed.

Communicator

  • New Features
    • The Communicator API has been extended by a C++ support library. This header-only library provides reusable abstractions and value wrappers around the C API's primitives to aid in the development of Communicator plug-ins written in C++.
  • Enhancements
    • The setting of the plug-in directory for Communicator plug-ins has been improved. Previously, only one directory could be specified as the plug-in directory. Now, it is possible to specify multiple plug-in directories which allow the user to store custom Communicator plug-ins in different locations.
  • Fixed Problems
    • In case a plug-in failed to start in MERLIC 5.0, i.e., if it returned from its implementation of "MVStart" with an error code other than "MV_CODE_OK", the Communicator erroneously considered the plug-in to be running nonetheless. This was not apparent from the "Communication" tab of the MERLIC RTE Setup unless the user clicked on the "Refresh" button. This problem has been fixed.
    • When running a Communicator plug-in which defines a configuration parameter of type Int32 or Int64, an overflow in the function MV_PluginUserParameterDescription_ImposeConstraint sometimes wrongly rejected constraints whose values were actually valid. This problem has been fixed.
    • When creating a new plug-in for the MERLIC Communicator it was possible to inject HTML code into the plug-in description tooltip and the validation message. This problem has been fixed.

Interfaces for Process Integration

  • New Features
    • The MQTT plug-in has been updated to version 2.0.0. The structure of the topics to which the plug-in publishes and subscribes has been revised as follows:
      • The former topic "merlic/status/json" which summarized several data has been removed. Its constituents are now published on the topics "merlic/state", "merlic/mode", "merlic/preparedRecipeIds", and "merlic/runningJobId".
      • All topic payloads are now valid JSON and enum-like topics are represented by JSON strings. Consequently, the user parameter "Message format" has been removed and the suffix "/json" has been dropped from several other topics.
      • A new topic "merlic/recipes/ {id}/isPrepared" has been introduced for each recipe which contains a Boolean indicating whether that specific recipe is prepared.
      Note that this change affects the compatibility. Read more.
  • Enhancements
    • It is now possible to pass iteration-specific parameters, i.e., parameters that override the parameter values defined in the currently loaded recipe, to a single or continuous job when triggering it using the MQTT plug-in. To do so, an entry "parameters" needs to be added to the JSON message which is published on the "<prefix>/action/json" topic, containing an array of values which correspond to the MVApp parameters of the recipe that is being executed. If the number of supplied parameters does not match or if at least one of the values which have been provided cannot be converted losslessly to the data type specified by the recipe, a warning is emitted and the whole parameter set is ignored. In this case, the recipe is instead executed using the recipe's default input parameters.

MERLIC Creator

  • New Features
    • The "Help" menu of the MERLIC Creator has been extended by the new entry "Submit Feedback" which leads the user to the MVTec MERLIC feedback website to provide feedback and ideas regarding MERLIC.
  • Improved Usability
    • The usability of the "Save recipe..." dialog in the "MVApp Parameters and Results" tab of the MERLIC Creator has been improved. Previously, no visual indication had been given that the recipe was being saved, which could lead to the user thinking nothing was happening when they tried to save a large recipe file. Now, after clicking the "Save" button, the "Save recipe..." dialog is closed and a "Saving..." overlay is shown.
    • The usability of the display options in the MERLIC preferences has been improved. The option "Visualize skipped tools" has been renamed to "Highlight tools that were not executed" to be more clear and to avoid confusion about this setting.
  • FixedProblems
    • If the MERLIC5.ini file was removed from the respective folder in the file explorer, the Tool Flow in the MERLIC Creator was displaying unnecessary scroll bars. This problem has been fixed.
    • When using the MERLIC Creator on a PC with multiple displays, the context menu for the Tool Flow panel did not always appear in the correct position on all of the displays. This problem has been fixed.
    • If the Tool Flow in the MERLIC Creator was zoomed out, a right-click in the Tool Flow area did not always produce the context menu. This problem has been fixed.
    • The setting of the alpha channel, which can be defined for the colors in the "Preferences" dialog of the MERLIC Creator, was not applied to the respective objects in the MERLIC Creator and MERLIC Frontend. This problem has been fixed. Furthermore, the alpha channel of all colors is now set to the new default value of 128.
    • In rare case, when inserting a MERLIC tool to the Tool Flow panel, the tool was added twice instead of only once. This problem has been fixed.
    • If a tool of the category "Deep Learning - AI" was used in the MVApp with a user-given name, the respective icon of the tool category was not displayed at the tool in the Tool Flow panel. This problem has been fixed.
    • In the menu bar of the MERLIC Creator, the name for the MVTec MERLIC Runtime Environment Setup (MERLIC RTE Setup) was wrongly translated in the button and its tool tip. This problem has been fixed. The name of the application is now always displayed in English.
    • Some translated tooltips did not show the correct quotation marks but the respective HTML encoding. This problem has been fixed.
    • Sometimes the data connections and trigger connections between tools in the Tool Flow of the MERLIC Creator were not displayed correctly or did not lead to any tool. This problem has been fixed.

MERLIC Designer

  • Enhancements
    • The minimum width and height of the "Check Box" widget in the MERLIC Designer and MERLIC Frontend have been adjusted. Previously, a minimum width of 60px and a minimum height of 20px were required. Thus, the widget could not be resized to the actual size of the check box itself without any text. Now, the minimum value for the width and height is 32px which corresponds to the size of the displayed check box.
  • Fixed Problems
    • If a "Table" widget was used and the input field of the "Text" property of a cell was still being active in editing mode while clicking on the drop-down menu of "Connected Tool", MERLIC crashed. This problem has been fixed.
    • Unlike other default names in MERLIC, the names of the main view and any additional views in the MERLIC Designer were not translated when switching the language in the MERLIC Creator or the MERLIC Frontend (provided the "Tab View" widget was used). This problem has been fixed.

MERLIC Frontend

  • Enhancements
    • The MERLIC Frontend has been extended by a new startup option for a full screen mode. It is now possible to automatically start the Frontend in full screen mode using the command line option "--fullscreen". The full screen mode can also be set in the MERLIC5.ini file with the property "StartInFullscreen". In addition, the new property "WindowGeometry" can now be used to define the position and size of the Frontend in the MERLIC5.ini file.
  • Fixed Problems
    • If the MERLIC Fronted was used in the full screen mode and the user successfully logged into the Frontend, the full screen mode of the Frontend was closed. This problem has been fixed.
    • If more than the defined maximum number of allowed MERLIC Frontends have been opened, no notice was displayed in the additional MERLIC Frontends why no content was shown. This problem has been fixed. Now, a message is shown after five seconds in each new MERLIC Frontend as soon as the allowed number of MERLIC Frontends has been exceeded.
    • If the full screen mode of the MERLIC Frontend was ended, the original size of the MERLIC Frontend was not restored correctly. This problem has been fixed.
    • If MERLIC was running in the process integration mode and the MERLIC Frontend contained an "easyTouch Button" widget and the "Write Access" widget, the handle of the easyTouch widget started toggling after activating and releasing the write lock in the Frontend.
    • In rare cases, if a MERLIC Frontend was connected via a Windows pipe, MERLIC failed to detect when the Frontend has been closed. As a consequence, the MERLIC Creator was not unlocked even though no MERLIC Frontend was connected anymore. In this case, the MERLIC Creator also failed to properly shut down so its process had to be ended via the task manager. Unfortunately, this problem could not be fixed yet. To avoid this problem, we adjusted the default setting for the connection between MERLIC Frontend and MERLIC Creator. The default value for the Frontend property "UsePipe" is now set to "false". This means that the MERLIC Frontend now uses a TCP connection by default. Please note that in future MERLIC versions, the Frontend connection via pipe might not be supported anymore.
    • "Radio Button Group" widgets connected to tool parameters with Boolean or arithmetic values were not initialized correctly when connecting a Frontend. Instead of showing the current value of the connected parameter none of the radio buttons were selected. This problem has been fixed.
    • ROIs of tools that have been copied in the MERLIC Creator were not displayed in the MERLIC Frontend if the ROI of the original tool was also selected to be displayed in the Frontend. This problem has been fixed.
    • If a custom icon for the MERLIC Frontend was used, the Windows taskbar still showed the default MERLIC icon instead of the custom icon. Due to restrictions of the Windows operating system, the MERLIC settings cannot override the default settings. However, we now provide a description in the MERLIC manual of how to change the settings in the Windows system to ensure that the custom icon is also shown in the taskbar.

Tools

  • New Features
    • MERLIC tools based on deep learning technology now support the use of the Artificial Intelligence Acceleration Interface (AI²) plug-ins for the NVIDIA® TensorRT™ SDK and the Intel® Distribution of OpenVINO™ toolkit. This applies not only to the existing tools of the category "Deep Learning - AI" but also to the new MERLIC tool "Read Text and Numbers with Deep Learning" in the category "Reading".
      This enables the user to select compatible hardware, i.e., NVIDIA GPUs or Intel processors including GPUs, CPUs, and VPUs like the Intel® Movidius™ Neural Compute Stick, as a processing unit for these tools to perform optimized inference on the selected hardware. By expanding the range of supported Intel devices, customers now have even more flexibility in their choice of hardware. With the new dependencies for the AI² plug-ins, MERLIC now requires at least 6 GB for a full installation.
    • MERLIC has been extended by a new tool "Read Text and Numbers with Deep Learning" in the tool category "Reading". It enables the user to make use of a holistic deep-learning-based approach for optical character recognition (OCR). In contrast to the tool "Read Text and Numbers", it localizes characters more robustly regardless of their position, orientation, and font type. Characters are automatically grouped which allows the identification of whole words. Due to this, misinterpretation of characters with similar appearances can be avoided and the reading performance increases.
    • The tool library has been extended by a new category "Concept Tools". This category contains preliminary MERLIC tools to test and evaluate new functionality. These tools are meant for evaluation only and are not recommended to be used in production, because they may be unstable, work-in-progress, or be changed or removed in future MERLIC releases.
      In this MERLIC version, we provide the concept tool "Find Objects". It enables the user to find objects of predefined classes and localizes them within the image using a deep-learning-based approach. The tool requires a classifier, i.e., a trained deep learning model, as input. This concept tool can be used to evaluate the current stage of development for deep-learning-based object detection in MERLIC. MVTec appreciates any feedback on desired changes or further feature requests. The feedback can be submitted on the MERLIC feedback website which can be accessed from the MERLIC Creator either via the feedback icon on the top right or via the "Help" menu.
  • Enhancements
    • The MERLIC tool "Evaluate Expression" has been improved. Previously, only one expression could be evaluated in the tool. Now, the tool allows the user to add multiple expressions for evaluation in one tool. The expressions will be listed and automatically numbered in the tool board. The result of an expression can also be used for further evaluation in the expressions that were added afterwards. This enables the user to perform multiple evaluations in one tool instead of using multiple "Evaluate Expression" tools.
      In addition, the tool now provides a list of available operations when clicking in the input field of an expression and it also supports auto-completion when starting to enter the expression into the input field. This also includes the results of previous expressions. Thus, users can now find the desired operation much easier.
  • Improved Usability
    • The usability of the tools "Evaluate Contours" and "Evaluate Regions" has been improved. Previously, the dynamic value range of the parameters "Minimum Feature Value" and "Maximum Feature Value" was only adapted for the respective input fields of the parameters. Now, the value range is also adapted for the sliders to ensure that the new value range is also respected if the parameter values are adjusted via the slider.
    • The usability of the tool "Convert Disparity Image to Height Image" has been improved. If the parameters of the tool were set to values <= 0, no valid image was displayed and there was no hint or error message that helped the user to fix the problem. Now, an error message will be shown indicating that the parameter values must be greater than 0. In addition, the value range of the slider for the parameters has been adjusted to avoid that negative values can be set via the slider.
  • Fixed Problems
    • In rare cases, MERLIC falsely reported a race in MERLIC Vision Apps with multiple "Branch on Condition" tools. This problem has been fixed.
    • For several tools with parameters that expected exactly one file as input, it was possible to select multiple files as input for these parameters via the file selection dialog. In this case, the respective parameter could not be modified anymore after that. This problem occurred in the following tools:
      • Calibrate Camera
      • Classify Image
      • Read from File
      • Read Region from File
      • Read Text and Numbers
      This problem has been fixed. Now, it is not possible anymore to select multiple files if only one file is expected as input. In addition, the title of the file selection dialog has also been adapted to indicate if only one or multiple files can be selected.
    • If the parameter "Scan3dCoordinateScale" of the tool "Convert Disparity to Height Image" was adjusted via the slider, MERLIC crashed. This problem has been fixed.
    • If the name of a manually added parameter was reset in the tools "Evaluate Expression" and "Branch on Condition", the name was not automatically changed in the expression, which led to a faulty expression. This problem has been fixed.
    • If the parameter "Method" of the tool "Remove Outlier Pixels" was set to "Predefined Minimum/Maximum Gray Value", the slider of the corresponding parameters "Predefined Minimum Gray Value" and "Predefined Maximum Gray Value" did not work. Thus, the values of these parameters could not be set via the slider. The same problem occurred for the parameter "Gray Range Source" of the tool "Scale Gray Range to 8 Bit". These problems have been fixed. The values for the parameters "Predefined Minimum Gray Value" and "Predefined Maximum Gray Value" and the gray range are now determined automatically depending on the pixel type of the image as soon as "Predefined Minimum/Maximum Gray Values" has been selected as "Method" or "Gray Range Source", respectively.
    • If a region of interest (ROI) was used in the tool "Remove Outlier Pixels", only the processed region has been returned in the tool result "Filled Image". This problem has been fixed. Now, the whole image is returned with the processed and filled image patch within the ROI region.
    • The tool "Classify Image" returned multiple errors if a model file that does not support classification was selected at the parameter "Classifier File". This problem has been fixed. The tool now returns a single error that the given model does not support classification.
    • If a gray value feature was selected for the parameter "Feature Name" of the tool "Evaluate Region", the value range for the parameters "Minimum Feature Value" and "Maximum Feature Value" was not adapted according to the used input image and its pixel type when using the respective parameter sliders. This problem has been fixed.

Examples

  • New Features
    • MERLIC has been extended by the new example MVApp "read_best_before_date_with_orientation.mvapp". It shows the use of the new tool "Read Text and Numbers with Deep Learning".
    • MERLIC has been extended by the new example MVApp "find_and_count_screw_types.mvapp". It shows the use of the new concept tool "Find Objects". The concept tool is meant for evaluation only and is not recommended to be used in production because it may be unstable, work-in-progress, or be changed or removed in future MERLIC releases.
  • Enhancements
    • The following MVApp examples were adapted to make use of the improved "Evaluate Expression" tool:
      • calibrate_for_ruler_changed_distance.mvapp
      • calibrate_for_ruler_distorted.mvapp
      • calibrate_for_ruler_simple.mvapp
      • check_saw_angles.mvapp
      • check_single_switches.mvapp
      • classify_pills.mvapp
      • measure_distance_to_center_led.mvapp
      Most of the expressions that previously needed to be defined in multiple "Evaluate Expression" tools are now evaluated in only one tool. Thus, the MVApp examples contain much fewer "Evaluate Expression" tools which makes the application much clearer.

Documentation

  • Enhancements
    • The documentation of the plug-in implementation has been improved. The description of the topics "Getting Started with Plug-in Development" and "Building a Plug-in" has been moved from the MERLIC Communicator manual to the MERLIC Communicator API reference documentation. Thus, all information regarding the development of a Communicator plug-in can now be found in the API reference documentation.
    • The documentation of the logging mechanism in MERLIC has been improved. It now describes in more detail to which log files the user actions and messages of the different types of MERLIC components are logged.
    • The documentation of the tools "Apply Gray Morphology" and "Apply Region Morphology" has been improved. The description of the different methods has been restructured to be more clear.
    • The documentation of the command line calls for the MERLIC executable files has been improved. Previously, the description was inconsistent. In some cases, the names of the executable files were given with file ending, e.g., "merlic_frontend.exe", and in other cases, the names were given without the file ending, e.g., "merlic_rte". Now, the executable files are always given with the respective file ending in all MERLIC manuals.
  • Fixed Problems
    • Previously, the MERLIC manual did not provide information about the panels "Image Source Configuration" and "MVApp Parameters and Results" in the overview topic "The User Interface of the MERLIC Creator". This problem has been fixed.
    • In the topic "Using the Manual" of the MERLIC manual, the outdated name "MERLIC Backend" was still used in an example description. This problem has been fixed.
    • In the MERLIC Communicator manual, the documentation of the OPC UA server plug-in missed the information about "StartSingleJob" and "StartContinuous" in the overview of available methods that can be called on each MERLIC state. This problem has been fixed.
    • The documentation of the installed file structure of MERLIC missed information on the directory "dl" which contains pre-trained deep learning models. This problem has been fixed.
    • The tool reference in the MERLIC manual wrongly stated that the calibration data from the MERLIC tool "Determine Pixel Size" can be used in the tool "Rectify Image". This problem has been fixed.
    • The Communicator manual wrongly stated that the CTRL key must be pressed instead of the ALT key to add a plug-in instance with "debug" log level in the MERLIC RTE Setup. This problem has been fixed.
    • The topic "Checking the MERLIC State (Digital I/O)" in the MERLIC manual wrongly stated that only the MERLIC states "Ready" and "Halted" were available instead of "Ready" and "Error" for the process integration mode when using a digital I/O device. This problem has been fixed.

Installation

  • New Features
    • MERLIC is now also available for installation via the MVTec Software Manager (SOM), an installation manager for software packages. It starts a local web server and provides access to a remote catalog of products, among others, the package for MERLIC 5.1.0. Basically, you can start SOM, select the desired MERLIC version, and SOM takes over the installation process. Thus, SOM allows you to install MERLIC without downloading the installer of MERLIC.
  • Fixed Problems
    • In earlier versions of MERLIC, the environment variable MERLIC5EXAMPLES was not deleted when MERLIC was unistalled. This problem has been fixed.

Licensing

  • New Features
    • The time-limited licenses of MERLIC have been extended to use an additional time server. Note that this change affects the compatibility. Read more.
    • MERLIC now provides the new add-on "Double Image Source" for the MERLIC packages. It enables the user to upgrade from MERLIC package "Small" to "Medium" or from the MERLIC package "Medium" to "Large". In case of the MERLIC packages "Large" and "X-Large", the add-on doubles the number of image sources to support more than 4 image sources. To further increase the number of image sources, the add-on can be selected multiple times.

Miscellaneous

  • The command line options of MERLIC have been improved. The version of all MERLIC applications (MERLIC Creator, MERLIC Frontend, MERLIC RTE, MERLIC RTE Setup, MERLIC Communicator) can now be queried using "--version" or "-V".
  • To profit from the improvements of the new HALCON version, the HALCON libraries used by MERLIC have been upgraded to the HALCON 21.11 Progress version.
  • The overall design of MERLIC has been improved. The design of the scrollbars has been standardized in the following MERLIC applications: MERLIC Creator, MERLIC RTE, MERLIC RTE Setup, MERLIC Communicator.
  • When checking the MERLIC processes in a system monitor program, e.g., the Windows Task Manager, no company name and description were displayed for the MERLIC processes. This problem has been fixed.
  • The behaviour of MERLIC during a crash has been improved. MERLIC now automatically generates stack traces when it crashes and provides a log file and crash data. They can be found in the directory "%LocalAppData%\CrashDumps\MVTec\MERLIC". This will make it easier for the MERLIC support team to understand what caused the crash and help the user to fix the problem.
  • If MERLIC was configured to use a logging directory whose name contained non-native Unicode characters, an additional empty directory with a misspelled name was created. This problem has been fixed.

Known Issues

The following issue is already known and in development process. It will be fixed for upcoming releases.

  • In frequent cases, when using TensorRT™ accelerated processing units in MERLIC tools with deep learning technology, MERLIC crashes if the required memory for the deep learning model exceeds the available memory on the GPU.

Legal Note: Intel, the Intel logo, OpenVINO, the OpenVINO logo, and Movidius are trademarks of Intel Corporation or its subsidiaries.

 


Release Notes for MERLIC5.0.2

This document provides the release notes for MVTecMERLIC5.0.2, as released in December 2021.

Supported Operating Systems

Windows

MERLIC5.0.2 is available for Windows 10 (64-bit operating system).

During the installation, the environment variable MERLIC5EXAMPLES is set to C:\Users\Public\Documents\MVTec\MERLIC 5 by default. It contains the path to the directory in which additional files such as example applications or images are installed.

Please refer to the "Readme" in the MERLIC manual for more information about the system requirements.

Linux

MERLIC5.0.2 is available for selected Linux ARM 64-bit platforms. This edition requires a specific license that needs to be activated on the ARM device. Please contact MVTec to get more information about how to obtain this license. After the license activation, the ARM device also functions as a license dongle for the PC version of MERLIC5.0.2, however, with some limitations.

Please refer to the "Help → About" dialog in the MERLIC Creator for the respective limitations.

Process Integration

  • Fixed Problems
    • MERLIC RTE crashed sporadically on startup if the following two conditions were met:
      • MERLIC RTE was started with a default recipe that referenced an MVApp containing tools with training images.
      • A Communicator was running and one or multiple plug-ins that query available recipes on startup, e.g., the plug-ins "OPC_UA" or "MQTT", were running.
      This problem has been fixed.
    • The release notes of MERLIC 5.0 stated that the following bug was fixed:
      "In rare cases, MERLIC crashed if during the process integration mode a new MVApp was loaded due to a recipe change while a Frontend was still being connected. This problem has been fixed."
      However, in further tests after the release of MERLIC 5.0, the crash occurred again. This problem has been fixed.

Tools

  • New Features
    • Several MERLIC tools have been improved. They now make use of a reactivated feature that provides textual feedback to the user for specific use cases when using easyTouch or easyTouch+, i.e., if the new selection does not fit the current parameter settings.
      • Count in Back Light (also added info about how to select objects via easyTouch)
      • Locate in Back Light (also added info about how to select objects via easyTouch)
      • Measure Circle
      • Measure Parallel Edges
      In addition, the following tools of the category "Reading" now immediately display the decoded data of a code in the image when hovering the mouse pointer over the respective code.
      • Read Atzec Code
      • Read Bar Code
      • Read Data Matric ECC 200
      • Read PDF 417
      • Read QR Code

 


Release Notes for MERLIC5.0

This document provides the release notes for MVTecMERLIC5.0, as released in October 2021.

Supported Operating Systems

Windows

MERLIC5.0 is available for Windows 10 (64-bit operating system).

During the installation, the environment variable MERLIC5EXAMPLES is set to C:\Users\Public\Documents\MVTec\MERLIC 5 by default. It contains the path to the directory in which additional files such as example applications or images are installed.

Please refer to the "Readme" in the MERLIC manual for more information about the system requirements.

Linux

MERLIC5.0 is available for selected Linux ARM 64-bit platforms. This edition requires a specific license that needs to be activated on the ARM device. Please contact MVTec to get more information about how to obtain this license. After the license activation, the ARM device also functions as a license dongle for the PC version of MERLIC5.0, however, with some limitations.

Please refer to the "Help → About" dialog in the MERLIC Creator for the respective limitations.

Major New Features

Anomaly Detection

MERLIC 5 includes deep-learning-based anomaly detection. This technology significantly facilitates the automated surface inspection for, e.g., detection and segmentation of defects. Trained on a low number of high quality “good” images directly in MERLIC, the technology can unerringly and independently localize deviations, i.e., defects of any type, on subsequent images.

Training can mostly be done in a matter of seconds. This allows users to perform many iterations to fine-tune their application without sacrificing a lot of time.

Classification

With the new “Classify Image" tool, MERLIC 5 can make use of classification models (trained, e.g., with MVTec’s free Deep Learning Tool) to perform deep-learning-based image classification. This technology is especially useful for classifying defects or objects with high variance in shape and appearance, e.g., natural products.

Improved Camera Handling

MERLIC 5 includes the Image Source Manager (ISM). The ISM detaches the image acquisition source from the tool flow and allows MVApps to be easily copied and executed between different systems without adjustments to the camera settings. Thanks to a graphical user interface, managing and configuring image sources can be done simply and comfortably.

Compatibility

Since the last MERLIC version we have been working hard to improve MERLIC in every way. This has, however, resulted in a few of incompatibilities. We apologize for the inconvenience.

  • Tools
    • The image sources of existing MVApps, that have been created in a previous MERLIC version and that use the Image Source Manager (ISM) for the image acquisition, cannot be loaded in the "Image Source" tool because the image sources are now referenced by their name only and without the file extension of the respective JSON configuration file. To fix this issue, the respective image source needs to be set anew in the MVApp. For this, the MVApp must be opened in the MERLIC Creator (formerly MERLIC Backend) and the desired image source must be selected at the parameter "Image Source Name" of the tool "Image Source". More information.
  • Miscellaneous
    • Due to the update of the underlying HALCON version, MERLIC no longer supports Windows 7 operating systems. In addition, the legacy handle mode of HALCON is no longer used in MERLIC, and custom tools might not be compatible anymore. Therefore, the functionality of custom tools should be checked for required changes. Please also check and test your custom tools to conform with the new managed handle behavior of HALCON. This usually affects handle comparisons, e.g., less/greater operators, and memory management, e.g., explicitly clearing handles is no longer necessary. More information.

Image Source Manager

  • New Features
    • MERLIC now provides a new graphical user interface for the Image Source Manager (ISM) which allows the user to manage and configure image sources in a comfortable way. The graphical user interface is integrated into the MERLIC RTE Setup (formerly MERLIC Process Integration Setup) in a new tab called "Image Sources". On this tab, the user can manage the image sources for use with ISM. Among others, the "Image Sources" tab enables the following features:
      • Adding configurations and image sources, i.e., image file directories or camera devices.
      • Configuring the parameters of camera devices.
      • Checking the acquired images of the image sources with a live mode or a single snapshot mode.
      • Activating image source configuration for the use.
      • Selecting an image source configuration as startup configuration for the process integration.
      In addition, the new "Image Sources" tab can also be used to manage image sources for a remote system if the MERLIC RTE Setup is connected to the respective remote system.

Process Integration

  • New Features
    • The process integration mode, i.e., MERLIC RTE, now also supports the configuration of image sources via the "Image Sources" tab in the MERLIC RTE Setup (formerly MERLIC Process Integration Setup) while MERLIC RTE is running. However, the image source configuration is only allowed in certain states including "Preoperational" and "Initialized". In other states, such as "Ready", "SingleExecution", and "ContinuousExecution", the "Image Sources" tab is locked.
      In addition, the image source configuration is also allowed in the "Error" state if the error cause is related to image acquisition. The recipe remains prepared in such a situation. After the error has been resolved via the "Image Sources" tab, the MERLIC RTE Setup can be closed again. This will trigger MERLIC RTE to re-evaluate the configuration and to return to the "Ready" state while keeping the recipe prepared. If the problem persists, MERLIC RTE remains in the "Error" state.
      Alternatively, the user may choose to call "Reset" or "Halt" to return MERLIC to the "Preoperational" or "Halted" states, respectively, regardless of the validity of the configuration. In this case, MERLIC will now ensure that the recipe is unprepared upon leaving the "Error" state.
    • The "Communication" tab in the MERLIC RTE Setup now provides a checkbox as a control element for Boolean user parameters to enable a quick and easy overview and modification of Boolean values.
    • The MERLIC RTE Setup now provides landing pages in case a configuration service, i.e., the settings of the respective tab, are not available. When either the MERLIC Creator or MERLIC RTE is closed while configuring it from the "Image Sources" tab of the MERLIC RTE Setup, or when MERLIC Communicator is closed while configuring it from the "Communication" tab, the MERLIC RTE Setup will now immediately notice this and switch the respective tab over to the appropriate landing page. The landing pages give information about the possible reasons why the service is not available and they provide options to fix the problem if possible. Previously, the "Communication" tab kept showing the configuration state on exit and any attempt to modify it resulted in a timeout.
  • Enhancements
    • The log message for the case that a recipe file references a non-existing MVApp has been improved. Previously, when using the process integration mode (MERLIC RTE) or the MERLIC RTE Setup (formerly MERLIC Process Integration Setup), the respective log message only stated that the MVApp could not be loaded. Now, it also states the reason why the MVApp could not be loaded.
    • The behavior of the image acquisition in the process integration mode of MERLIC when using the Image Source Manager (ISM) has been improved. Previously, when running a job, the execution of the Tool Flow was triggered after the image acquisition regardless of the result of the acquisition. The user had to ensure that the execution of the tool flow returns meaningful results in case of a failed image acquisition by evaluating the "Tool State" result of the "Image Source" tool.
      Now, the execution of the Tool Flow is triggered only if the image acquisition succeeded. In case the image acquisition timed out while a "SingleExecution" is running, an error event is fired, and MERLIC transitions back to the "Ready" state. If the timeout happens while a "ContinuousExecution" is running, an error event is fired, and MERLIC continuous with the next image acquisition. If the image acquisition failed with a severe error, MERLIC fires an error event and transitions to the "Error" state. In addition, MERLIC generates a "Result" with "ResultState" set to "Failed" and fires a corresponding "ResultReady" event whenever a job is finished due to an erroneous image acquisition.
    • The MERLIC Process Integration Setup of the previous MERLIC version has been revised. It has been renamed to MERLIC Runtime Environment Setup (MERLIC RTE Setup). In addition, the tabs have also been renamed and reordered as follows:
      • The "Hardware Setup" tab has been renamed to "I/O".
      • The "Recipe Manager" tab has been renamed to "Recipes".
      • The order of the tabs has been adjusted to display the new "Image Sources" tab in the first place followed by the tabs "Communication", "Recipes", and "I/O".
  • Fixed Problems
    • If a recipe file was added multiple times to the "Recipes" tab (formerly "Recipe Manager") in the MERLIC RTE Setup, the respective error dialog, which informs the user that the recipe has already been added, was not shown anymore. This problem has been fixed.
    • In rare cases, the former MERLIC Backend (now MERLIC Creator) and the process integration mode of MERLIC crashed during shutdown if a Frontend was still connected. This problem has been fixed.
    • In rare cases, MERLIC crashed if during the process integration mode a new MVApp was loaded due to a recipe change while a Frontend was still being connected. This problem has been fixed.
    • If an instance of the MERLIC Communicator was no longer running because it failed to shut down properly earlier, e.g., due to a (plug-in) crash, it was possible that the "Select System" dialog in the MERLIC RTE Setup still tried to connect to the previous instance of the MERLIC Communicator. This problem has been fixed. Now, a periodic "Keep alive" signal is required.

Communicator

  • Enhancements
    • The MERLIC Communicator API has been extended by a new function MV_PluginDetails_SetProperty(MVPluginDetails_t, MVPluginProperty_t, MVValue_t) that allows the plug-in developer to set a version number for the plug-in, as well as some textual descriptions. Both will be visible in MERLIC RTE Setup.
  • Fixed Problems
    • Specifying the desired debug level for a Communicator plug-in on the command line via "merlic_communicator.exe --plugin <plugin-name> d:<log-level>" did not work and caused the Communicator to exit with an error message stating that the plug-in d:<debug-level> could not be loaded. This problem has been fixed.
    • In the previous MERLIC Process Integration Setup of MERLIC 4.8.0 (now MERLIC RTE Setup), it was possible to cause a connected Communicator to crash by choosing the "Start" menu item from the context menu of a plug-in instance while the same instance is already starting. This problem has been fixed.
    • If a user was logged in to a computer with a different user account than the one that was used for the MERLIC installation, the user was not able to start the MERLIC Communicator or to configure Communicator plug-ins in the "Communication" tab of the former MERLIC Process Integration Setup (now MERLIC RTE Setup). This problem has been fixed.

Interfaces for Process Integration

  • Enhancements
    • The protocols for exchanging data when using MERLIC in process integration mode in combination with a Hilscher card have been extended by a new field "ResultState". It is set whenever a result is queried and indicates the state of the queried result data as "Completed", "Processing", "Aborted", or "Failed".
    • The built-in plug-in for digital I/O devices has been extended by a new signal "ResultState". It is set whenever a completed result is ready and unset when a job has failed or was aborted.
    • The MQTT plugin has been updated to version 1.0.1. It now supports the ability to resolve acquisition-related errors from the "Error" state back to "Ready" while keeping the recipe prepared.
  • Fixed Problems
    • If the parameter "RecipeList" of the Simulated PLC was set to a value that referenced more recipes than are configured in the "Recipes" tab of the former MERLIC Process Integration Setup (now MERLIC RTE Setup), the resulting error message when running the process integration mode contained a wrong result ID. This problem has been fixed.
    • The numeric severity of alarms and conditions of the OPC UA server plug-in previously deviated from the values laid out by the "OPC UA for Machine Vision (Part 1)" specification. In addition, the ErrorResolvedEvent was missing the information for the properties ToState, FromState, and Transition. These problems have been fixed.
      The new values for VisionCondition types based on the severity of the error are 600 for warnings, 700 for errors, and 800 for critical errors. The type of critical errors has been changed from VisionPersistentErrorConditionType to VisionErrorConditionType. Warnings are now of the type VisionWarningConditionType and they no longer need to be acknowledged. Lastly, critical errors now set the StopReaction and BlockReaction flags of the VisionCondition to "true" because these errors do not allow the system to continue as normal.

MERLIC Creator(formerly MERLIC Backend)

  • New Features
    • The MERLIC Creator has been extended by a new panel "Image Source Configuration". It provides an overview of the currently active image source configuration and its image sources that can be used in the MVApp for image acquisition via the Image Source Manager. When creating an MVApp, the panel can be used to get a quick overview of the available image sources. The overview shows detailed information of the image sources, i.e., the name, the status, and the unique camera name or file path, respectively.
  • Enhancements
    • The menu entries and menu bar of the MERLIC Creator have been improved. As part of the revision of the MERLIC RTE Setup (formerly MERLIC Process Integration Setup), the menu entries and buttons for opening the MERLIC RTE Setup and the Designer from the menu bar have been adjusted to be more clear and prominent. In addition, new tooltips have been added for the buttons to provide information about the respective keyboard shortcuts.
    • As part of the new naming concept, the MERLIC Backend has been renamed to MERLIC Creator. In addition, the name of the corresponding executable "merlic.exe" has been changed to "merlic_creator.exe".
  • Improved Usability
    • The usability of moving tools in the Tool Flow panel has been improved. Previously, it was not possible to recognize if any connections will be lost when moving a tool. Now, the user gets immediate feedback if any connections will be lost by the color of the dashed lines that show the possibly new position in the Tool Flow. If all connections can be maintained, the respective dashed lines are highlighted in blue. In case one or multiple connections will be lost, it is highlighted in orange. In addition, a dialog is shown in which the user has to confirm that the selected tool shall still be moved to the new position.
    • The MERLIC Creator now provides the new menu entry "Help > Open Log File Directory" to easily access the log files directly from the MERLIC Creator.
    • The usability of zooming in the Tool Flow panel has been improved. The toolbar for the zooming has been resized to be less prominent and the size of the minimap has been adjusted. In addition, it is now possible to save an image of the Tool Flow via the new "Download" button in the zooming toolbar.
    • The MERLIC Creator now gives feedback to the user if an MVApp cannot be executed because of a race condition or because one of the tools can never be executed. In addition, the MERLIC Creator also gives immediate feedback if any of the license restrictions are not met, e.g., if the allowed number of image acquisition tools is exceeded.
  • FixedProblems
    • If the context menu of a tool was opened in the Tool Flow panel and the user clicked outside of the context menu to close it again, the selection mode was not closed correctly. This problem has been fixed.
    • If the option "Visualize skipped tools" in the MERLIC preferences was deactivated while a connection was selected in the Tool Workspace, the color of the connection changed to black instead of dark blue. This problem has been fixed.

MERLIC Designer

  • Fixed Problems
    • If a panel in the MERLIC Creator (formerly MERLIC Backend) or MERLIC Designer was docked at a position, the panel could not be collapsed completely. Instead, an empty background was shown. This problem has been fixed.

MERLIC Frontend

  • Enhancements
    • The MERLIC Server and MERLIC Frontend now support the use of IPv6 addresses. The server is binding on IPv4 and IPv6 addresses when nothing else is specified in the settings. The MERLIC Frontend accepts IPv6 addresses in the "--tcp" option for the executable "merlic_frontend.exe" and in the "Host" option in the "[Frontend]" section of the MERLIC5.ini file.

Tools

  • New Features
    • MERLIC has been extended by a new tool "Resize Image". It enables the user to resize an image to a predefined width and height and to select between different interpolation methods for the determination of the gray values in the resulting image.
  • Enhancements
    • Due to the improved Image Source Manager (ISM), the desired image sources are now referenced only by their name. Previously, an image source was referenced by the name of its JSON configuration file. Therefore, when selecting the image source at the parameter "Image Source Name" of the tool "Image Source", the name of the JSON configuration file was shown including the file ending. Now, only the name of the available image sources is displayed in the tool. Note that this change affects the compatibility. Read more.
    • The tool "Merge Images" now supports pairs of input images in which one of the images contains one channel and the other one three channels. Thus, it is now possible to merge gray scale images with color images.
    • The tools "Zoom Image" and "Rotate Image" have been improved. The tool "Zoom Image" now also provides the interpolation method "bicubic" and the tool "Rotate Image" has been extended by the interpolation methods "bicubic", "constant", and "weighted". In addition, "constant" is now set as new default value in the tool "Rotate Image".
    • The training mode of tools that require training has been improved. Previously, it was hard to recognize if the current processing image has already been added to the training image. Now, a new label indicates if the image is already inserted as a training image or if a training image is a duplicate of another training image. This way it is easier to recognize if the processing image is already used for the training. Furthermore, if a training image is selected, it is now highlighted in blue to make it easier to recognize which training image is selected and currently shown in the graphic window.
      In addition to the improvements that apply to all training modes, some further improvements at specific types of training modes have been implemented:
      • The training mode of tools that allow the use of multiple training images now provides the new keyboard shortcut F3 which can be used to add the current processing image to the training images in a quick and easy way. In addition, an index is assigned to the training images to easily identify the training images.
      • The training mode of tools that require a manual execution of the training via the "Apply training data" button now automatically returns to the processing mode after the training. Thus, the effect of the training on the processing image is immediately visible.
  • Fixed Problems
    • The tool "Read Text and Numbers" did not load additional OCR files within the default folder "ocr" in the MERLIC installation directory. Therefore, the respective fonts were not available for selection in the "Font" parameter of the tool. This problem has been fixed.

Examples

  • New Features
    • MERLIC has been extended by the following new example MVApps that show the use of the new "Deep Learning - AI" tools:
      • classify_pills.mvapp
      • classify_and_inspect_wood.mvapp
      • detect_anomalies.mvapp
    • Since it is now possible to add and configure image sources via the new "Image Sources" tab in the MERLIC RTE Setup (formerly MERLIC Process Integration Setup), the example configuration files that have been provided for the Image Source Manager (ISM) in the previous MERLIC version have been removed.

Installation

  • Enhancements
    • As part of the new naming concept, the start menu entries of MERLIC have been improved. They have been adjusted to the new names of the MERLIC Creator and the MERLIC RTE Setup and they now contain the version number of MERLIC. In addition, the start menu entry for the process integration mode, i.e., MERLIC RTE, has been adjusted. It now also automatically starts the MERLIC Communicator and the name of the start menu entry has been adjusted to make it clear which applications will be opened. The new start menu entries of MERLIC applications are the following:
      • MERLIC 5 Communicator
      • MERLIC 5 Creator
      • MERLIC 5 Frontend
      • MERLIC 5 RTE Setup
      • MERLIC 5 RTE with Frontend + Communicator
    • The environment variable "MERLIC4EXAMPLES" for the location of the installed MERLIC example files has been renamed to "MERLIC5EXAMPLES" according to the version number of the new major version of MERLIC.

Licensing

  • New Features
    • Starting with this MERLIC version, a new licensing model is introduced for more flexibility. It allows customers to choose the package – and price – that exactly fits the scope of their application. Depending on the required number of image sources and features (“add-ons”) for the application, the packages Small, Medium, Large and X-Large as well as a free trial version is available. This new "package" concept replaces the previous "editions" model.
  • Fixed Problems
    • If MERLIC was started while another MERLIC instance was already running on the system under a different user account, a wrong error message was shown that a HALCON license is missing. This problem has been fixed.

Miscellaneous

  • In the previous MERLIC version, some command line options "--pi", "--command_port", and "--devices" for the "merlic.exe" application have been deprecated. These options have now been removed. The command line options "--command_port" and "--devices" can now be used only for the application "merlic_rte.exe" which replaces the command "merlic.exe --pi".
  • Starting with this MERLIC version, the tools of the category "Communication" are set as legacy. They are still available to provide backward compatibility but they will no longer be maintained or updated in upcoming MERLIC versions. In addition, the tools "Acquire Image from Camera" and "Acquire Image from File" are deprecated starting with this MERLIC version. Therefore, they might not be available anymore in upcoming MERLIC versions. Due to this and the extended configuration options of the Image Source Manager, we recommend using the Image Source Manager for the setup of the image acquisition to ensure upward compatibility.
  • To profit from the improvements of the new HALCON version, the HALCON libraries used by MERLIC have been upgraded to the HALCON 21.05 Progress version. Note that this change affects the compatibility. Read more.