Integrated Development Environment

Matrox Design Assistant X

Matrox Design Assistant X
Intuitive, versatile, and extendable integrated development environment for machine vision applications

Matrox Design Assistant® X1 is an integrated development environment (IDE) for Microsoft® Windows® where vision applications are created by constructing an intuitive flowchart instead of writing traditional program code. In addition to building a flowchart, the IDE enables users to design a graphical web-based operator interface for the application.

Matrox Design Assistant X can operate independent of hardware, allowing users to choose any computer with CoaXPress®, GigE Vision®, or USB3 Vision® cameras and get the processing power needed. Image capture from CoaXPress cameras happens with the use of a Matrox Rapixo CXP frame grabber. Matrox Design Assistant X works with multiple cameras all within the same project, or per project running concurrently and independently from one another, platform permitting. This field-proven software is also a perfect match for a Matrox Imaging vision controller or smart camera. Matrox Design Assistant X includes classification steps that categorize image content using deep learning.

This flowchart-based vision software offers the freedom to choose the ideal platform for any vision project and speeds up application development.

Matrox Design Assistant X at a glance

  • Solve machine vision applications efficiently by constructing flowcharts instead of writing program code
  • Choose the best platform for the job within a hardware-independent environment that supports Matrox Imaging smart cameras and vision controllers and third-party PCs with CoaXPress, GigE Vision, or USB3 Vision cameras
  • Tackle machine vision applications with utmost confidence using field-proven tools for analyzing, classifying, locating, measuring, reading, and verifying
  • Leverage deep learning for visual inspection through image classification and segmentation tools
  • Use a single program for creating both the application logic and operator interface
  • Work with multiple cameras all within the same project or per project running concurrently and independently from one another, platform permitting
  • Interface to Matrox AltiZ and third-party 3D sensors to visualize, process, and analyze depth maps and point clouds
  • Rely on a common underlying vision library for the same results with a Matrox Imaging smart camera, vision system, or third-party computer
  • Maximize productivity with instant feedback on image analysis and processing operations
  • Receive immediate, pertinent assistance through an integrated contextual guide
  • Communicate actions and results to other automation and enterprise equipment via discrete Matrox I/Os, RS-232, and Ethernet (TCP/IP, CC-Link IE Field Basic, EtherNet/IP™2, Modbus®, OPC UA, and PROFINET®, and native robot interfaces)
  • Test communication with a programmable logic controller (PLC) using the built-in PLC interface emulator
  • Maintain control and independence through the ability to create custom flowchart steps
  • Increase productivity and reduce development costs with Matrox Vision Academy online and on-premises training
  • Protect against inappropriate changes with the Project Change Validator tool

Application design

Application Design DAX
Flowchart and operator interface design are done within the Matrox Design Assistant X IDE hosted on a computer running 64-bit Windows. A flowchart is put together using a step-by-step approach, where each step is taken from an existing toolbox and is configured interactively. Inputs for a subsequent step—which can be images, 3D data, or alphanumeric results—are easily linked to the outputs of a previous step. Decision-making is performed using a flow-control step, where the logical expression is described interactively. Results from analysis and processing steps are immediately displayed to permit the quick tuning of parameters. A contextual guide provides assistance for every step in the flowchart. Flowchart legibility is maintained by grouping steps into sub-flowcharts. A recipes facility enables a group of analysis and processing steps to have different configurations for neatly handling variations of objects or features of interest within the same flowchart.
In addition to flowchart design, Matrox Design Assistant X enables the creation of a custom, web-based operator interface to the application through an integrated HTML visual editor. Users alter an existing template using a choice of annotations (graphics and text), inputs (edit boxes, control buttons, and image markers), and outputs (original or derived results, status indicators, and charts). A filmstrip view is also available to keep track of and navigate to previously analyzed images. The operator interface can be further customized using a third-party HTML editor.

Why a flowchart?

The flowchart is a universally accessible, recognized, and understood method of describing the sequence of operations in a process. Manufacturing engineers and technicians in particular have all been exposed to the intuitive, logical, and visual nature of the flowchart.

Latest key additions and enhancements

  • New deep neural networks for classification and segmentation
  • Updated MIL CoPilot companion application for simplified deep learning training
  • 3D data display in the Operator View
  • Support for IEEE 1588 Precision Time Protocol (PTP) timestamps for GigE Vision acquisition

Custom flowchart steps

Users have the ability to extend the capabilities of Matrox Design Assistant X by way of the included Custom Step software development kit (SDK). The SDK, in combination with Microsoft Visual Studio® 2019 or 2022, enables the creation of custom flowchart steps using the C# programming language. These steps can implement proprietary analysis and processing, as well as proprietary communication protocols. The SDK comes with numerous project samples to accelerate development.

Application deployment

Once development is complete, the project—with flowchart(s) and operator interface(s)—is deployed either locally or remotely. Local deployment is to the same computer or Matrox Imaging vision controller as was used for development. Remote deployment is to a different computer, including Matrox Imaging vision controllers, or a Matrox Imaging smart camera.

Project templates for quicker start-up

Matrox Design Assistant X includes a series of project templates and video tutorials to help new developers get up and running quickly.

These templates serve as either functional applications or application frameworks intended as a foundation for a target application. Templates also permit dynamic modifications, allowing users to tweak functionality at runtime and immediately see the outcome of any adjustments. The project templates address typical application areas, with examples for:

  • Barcode and 2D code reading
  • Measurement
  • Presence/absence
  • Recipes
  • Robot guidance (pick-and-place)
  • Dot-matrix text reading (SureDotOCR®)
  • Color checking
More information on templates can be found on the Quick Start page of Matrox Design Assistant X software.

Integrated development environment

Customizable developer interface

The Matrox Design Assistant X user interface can be tailored by each developer. The workspace can be rearranged, even across multiple monitors, to suit individual preferences and further enhance productivity.


Operator view

Operator interface viewable anywhere

The web-based operator interface, or Operator View, can be accessed locally or remotely through a HTML-5-capable web browser such as Google Chrome™ and Chromium, Mozilla Firefox®, and Microsoft Edge®. Local viewing is done on the same computer or Matrox Imaging vision controller as was used for development. Local viewing is also available with a Matrox Imaging smart camera through a simple touch screen connected to its video output and USB interface, which eliminates the need for an additional computer. Remote viewing is done from any computer, including dedicated Human Machine Interface (HMI) or touch-panel PCs.
A stand-alone HMI application can be created using Microsoft Visual Studio to run on the local or a remote computer as an alternative to the web-based operator interface.

Security features

Access to specific Operator Views can be made to require user authentication (i.e., username and password) so only authorized personnel can modify key parameters of a running project. A project can be locked to a specific Matrox Imaging smart camera or vision controller when deployed, preventing it from running on an unauthorized platform. A project can also be encrypted during deployment to a platform, ensuring that the project cannot be read or changed by unauthorized users. Projects locked to a platform are automatically encrypted.

Field-proven vision tools

Image analysis and processing

Central to Matrox Design Assistant X are flowchart steps for calibrating, enhancing, and transforming images; locating objects; extracting and measuring features; classifying and segmenting images; reading character strings; and decoding and verifying identification marks. These steps are designed to provide optimum performance and reliability.


Runtime monitor

Matrox Design Assistant X’s management portal includes a facility to monitor a deployed and running project and collect performance statistics to aid with troubleshooting and optimization. One of the facility’s pages provides a breakdown of flowchart execution by operation for a given loop. Another page gives the minimum, mean, and maximum execution times overall and by operation as well as a distribution of the total execution times. Matrox Design Assistant X also includes Matrox Profiler, a separate utility to post-analyze the execution of a vision project for performance bottlenecks and timing issues.

Matrox Capture Works

Matrox Design Assistant X comes with Matrox Capture Works, a utility for verifying the connection to one or more GenICam™-based cameras or 3D sensors and testing acquisition from these. Matrox Capture Works can obtain CoaXPress, GenTL, GigE Vision, and USB3 Vision device information, collect and present acquisition statistics, and provide access to acquisition properties. The built-in Feature Browser allows the user to configure and control devices with ease. Device settings can be saved for future reuse. Captured data from multiple devices can be displayed efficiently in 2D and 3D where applicable, with the option to view histograms, 3D and profile data, real-time pixel profiles, memory values, and much more. Matrox Capture Works can also be used to apply firmware updates to devices provided these follow the GenICam FWUpdate standard.

Project Change Validator

Project Change Validator is a utility employing a client-server architecture for ensuring that changes made to a deployed project are not detrimental to the functioning of that project. It provides the ability to record reference images—along with the associated inspection settings and results, for a given project.
This archived reference data is then used to validate changes made to the project. Changes are validated by running the modified project with the reference data and comparing the projects’ operation against this data. Validation is performed by the server—typically running on a separate computer—which is reachable over a network.
The Matrox Design Assistant X management portal provides access to the validation data and results. Validation requests are made on demand from the management portal, an automation controller, or an HMI panel.

PLC interface emulation

While developing a project in Matrox Design Assistant X, the PLC interface emulator is used to test communication in instances when a physical one is not connected. Values can be changed and viewed dynamically to test the communication between the project and the PLC. The PLC interface emulator supports CC-Link IE Field Basic, EtherNet/IP2, MODBUS over TCP/IP, and PROFINET protocols for communication; these can be activated and controlled from the management portal.


Connect to devices and networks

Matrox Design Assistant X can capture images from any CoaXPress, GigE Vision, or USB3 Vision compliant camera. Image capture from CoaXPress cameras happens with the use of a Matrox Rapixo CXP frame grabber. For GigE Vision cameras, the exact capture time can be obtained from IEEE 1588 timestamps.
The software can communicate over Ethernet networks using the TCP/IP as well as the CC-Link IE Field Basic, EtherNet/IP2, Modbus over TCP/IP, and PROFINET protocols, enabling interaction with programmable logic/automation controllers. Its QuickComm facility provides ready-to-go communication with these controllers. Matrox Design Assistant X supports OPC UA communication for interaction with manufacturing systems and direct communication with select robot controllers for 2D vision-guided robotic applications. Supported robot-controller makes and models currently include the ABB IRC5; DENSO RC8; Epson RC420+ and RC520+; Fanuc LRMate200iC and LRMate200iD; KUKA KR C2; and Stäubli CS8, CS8C HP, and CS9 controllers.

Matrox Design Assistant X can be configured to interact with automation devices through a computer’s COM ports. Matrox Design Assistant X can also directly interact with the I/Os built into a Matrox Imaging vision controllersmart camera, and I/O card as well as the I/O available on a GigE Vision or USB3 Vision camera.


Supported environments

For Windows

  • 64-bit Windows 10 (versions 1809 to 21H2) and Windows 11 (version 21H2)

Training and support

Matrox Vision Academy

Matrox Vision Academy provides all the expertise of live classroom training, with the convenience of on-demand instructional videos outlining how to get the most out of Matrox Design Assistant X vision software. Available to customers with valid Matrox Design Assistant X maintenance subscriptions, as well as those evaluating the software, users can seek out training on specific topics of interest, where and when needed. Regularly scheduled live classroom training is also offered at Matrox Imaging Headquarters.

Matrox Vision Academy aims to help users increase productivity, reduce development costs, and bring applications to market sooner. For more information, see Matrox Vision Academy.

Matrox Professional Services

Matrox Professional Services delivers deep technical assistance and customized trainings to help customers develop their particular applications. These professional services comprise personalized training; assessing application or project feasibility (e.g., illumination, image acquisition, and vision algorithms); demo and prototype applications and/or projects; troubleshooting, including remote debugging; and video and camera interfacing.

Backed by the Matrox Vision Squad—a team of high-level vision professionals—Matrox Professional Services offer more in-depth support, recommending best methods with the aim of helping customers save valuable development time and deploy solutions more quickly. For more information on pricing and scheduling, contact Matrox Imaging sales.

Matrox Design Assistant X maintenance program

Matrox Design Assistant X users have access to a Maintenance Program, renewable on a yearly basis. This maintenance program entitles registered users to free software updates and entry-level technical support from Matrox Imaging, as well as access to Matrox Vision Academy.

For more information, please refer to the Matrox Imaging Software Maintenance Programs.


Latest news

Matrox Imaging Releases Event-Logging Tool

Matrox® Imaging has released Matrox Gecho, its event-logging tool for Matrox Rapixo CXP frame grabbers. This new utility helps developers optimize image capture and ensure proper performance.

Case studies

Ordering information

For ordering information click here.