Features
OneVision includes almost everything you can possibly need for your machine vision application.
Scripting language
OneVision language is a scripting language to create runtime scripts. This is where the vision tasks will be coded and it is the core of the software. The language is as simple as it can be, resembling PLC code in many aspects, but it is also flexible enough for the most demanding vision applications.
The language is a powerful tool, based on Typescript, that allows you to execute your code making use of all the available processing power in your computer. Parallelization is done very naturally, since you can create as many scripts as you want, or use function blocks which are also executed in parallel.
See the complete API Reference here.
Configurable visualization
The production results presented to the operator in the visualization can be completely customized with one or more image displays, real-time graphs, buttons, labels, static images, etc. The visualization can also be dynamically controlled from the scripts.
Additionally, OneVision has one of the fastest image displays in the market, being able to display images of over 200 megapixels in full resolution.
No separate development
OneVision is a complete solution and has no separate development and production environments. That means that you can modify your project during production and test the results in a second, without having to switch between different tools.
The internal OneVision configuration is compressed in a single exportable file, which can be stored for backup purposes or to be used in other computers.
The internal configuration is unique, whereas there can be multiple projects used by the software at different moments, for example depending on the model in production. The project is what contains the configuration of cameras, AI models and runtime sequences.
GPU accelerated AI inference
Deep Learning inference is done either on CPU or GPU. Each brain or AI model can be assigned a different hardware, being able to select among multiple GPUs if available in your hardware.
OneVision by default configures Nvidia GPUs to run at maximum performance, reducing inference time and latency. Make sure to disable this option if you work with your laptop, or your battery will run out quickly.
There is no limit to the number of AI models that can be used. AI models can be trained in VisionCloud to perform any of the following tasks:
- Classification
- Localization
- Defect segmentation
- Semantic segmentation
- Instance segmentation
- OCR
Classic vision functions
With OneVision scripts you will have available a complete toolset of classic machine vision functions, provided by the library Vision Elements. In combination with the AI models this library will provide all the functionality to resolve any vision application. Functions for the following tasks are provided:
- Image processing
- Geometry transformations
- Measurement
- Shape analysis
- Edge detection
- Barcode reading
- Pattern matching
- Color analysis
Remote connection
OneVision can start a web server for remote connections. If OneVision is installed in a computer without screen, you can connect to it from the browser from any computer in the network.
Camera vendor flexibility
The raw material for machine vision are images, so the cameras are a key component in the system. OneVision can work with any camera manufacturer, since it supports GenICam, GigE Vision and USB3 Vision standards.
You can create your own camera drivers using plugins for any manufacturer that is not compatible with GenTL.
Industrial communications
OneVision can communicate with any industrial device like PLC or SCADA using OPC UA, Modbus TCP, Ethernet/IP or Siemens S7.
You can also create your own custom communication protocols using plugins, for example to create controllers for digital I/O cards.
Production database MES
All the images and results obtained during production can be optionally stored in a database automatically managed by OneVision. The data stored can be searched and filtered as any other MES system. The data size is automatically controlled, old images and results are automatically deleted, to keep the database size under the specified limits.
Flexible and simple to use
We have designed OneVision from the ground up to be flexible enough to be used on any industrial automation and engineering application, as we ourselves integrate it in our own projects. But a lot of emphasis has been put on simplicity and coherence, so that for a simple application you can get started in a matter of minutes. Flexibility is not at odds with simplicity, and we have made sure that OneVision is both.
To begin with, you will notice that OneVision has a modern graphical interface and has no separate developer environment, it is at the same time a development environment and a production environment. That means that you can modify your project during production on the same environment, without having to switch between different tools. Of course, the developer menus are password protected, so that you can control who can access them.