Release Notes for MERLIC 5.0.2

Here you can read the release notes for MVTec MERLIC 5.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 MVTec MERLIC 5.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.