Contents
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.
- 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:
- 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
- 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.
- 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.
- 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.
- MERLIC RTE crashed sporadically on startup if the following
two conditions were met:
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.
- 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:
- 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.
- 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".
- 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.
- 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.
- 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
- 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
- The following MVApp examples were adapted to make use of the
improved "Evaluate Expression" tool:
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.