Vision Sequences and Objects

Overview of Vision Sequences

This chapter describes following items related to the basic knowledge and usage of vision sequences.

  • Vision sequence definition and general information.
  • The Sequence window.
  • Creating and deleting vision sequences.
  • Vision sequence properties and results.
  • Running vision sequences from the Vision Guide window.
  • Testing and Debugging vision sequences.
  • How to run vision sequences from the SPEL+ language.
  • Image Acquisition. (The way to take an image from the vision sequence)

Vision sequence definition and general information.

What is a vision sequence?
A vision sequence is a group of vision objects in a specific order that can be executed from the Vision Guide Development Window or from the SPEL+ language.
Like vision objects, a vision sequence has specific properties that are used to set up execution. For example, the Camera property defines which camera will be used to acquire an image for this vision sequence and the RuntimeAcquire property defines how the image will be acquired for this vision sequence.
While vision objects can be run and tested individually, most vision applications require a series of vision objects to be executed sequentially to compute the final result. This is where vision sequences come in.
Vision sequences are used to run the vision objects in a specific order. After creating and testing individual vision objects, you need to test the vision sequence.

How does a vision sequence work?
Vision sequences contain one or more vision objects, and the fundamental purpose of the vision sequence is to execute these vision objects in sequential order (as previously defined by the user.)

The following steps show what happens when a vision sequence executes:

  1. The vision sequence uses its property settings to set up the execution of the sequence. These include things like which camera to use to acquire an image, determining the method to use to acquire an image (Strobed, Stationary, or No acquire at all).

  2. The image is acquired and placed in the frame buffer for use by the vision objects that will execute next. (If the RuntimeAcquire property is set to “None”, then the image that was already in the frame buffer is used for the sequence. This allows multiple sequences to operate on the same image.)

  3. Vision objects are now executed in sequential order using the image acquired in step 2 above. Once all the vision objects have been executed, sequence and object results are available for display on the Sequence window and Object window and are also available from the SPEL+ Language.

Vision sequences and Epson RC+ 8.0 projects
Epson RC+ 8.0 is based on the Project concept where each Epson RC+ 8.0 Project contains programs, teach points, and all other robot configuration parameters required for a specific application.

When Vision Guide 8.0 is used within an Epson RC+ 8.0 project, all vision sequences which were created within that project are also saved with the project.
This allows the use and modification of all vision sequences previously created in the project at the time the user opens a particular project next time.

Overview of Vision Objects

Vision objects make up the heart of Vision Guide 8.0 as they are the foundation upon which everything else is based.
This chapter provides the fundamental knowledge required to apply Vision Guide 8.0 towards solving your vision applications, and the following items are covered:

  • Definition of a vision object and how it works.
  • Explanation of the different types of vision object shapes.
  • How to position and size vision objects.
  • Explanation of what each vision object is used for.
  • How to use each vision object.
  • Review of properties and results for each vision object.
  • Explanation of technical details for each vision object.
  • Discuss utilities that are used with vision objects. (Histograms, statistics, and vision object graphics manipulation.)

Vision Object Definition

What is a Vision Object?
A vision object is a vision tool which can be applied to an image.
At first glance many vision developers think vision objects are just another name for the algorithms that support Vision Guide 8.0. However, after using Vision Guide 8.0 you will find that the vision algorithms are only one part of what defines a vision object.
Vision objects are like containers that hold the information required to use a specific vision algorithm. The unique manner with which this data can be easily manipulated and examined (through properties and results) is what makes vision objects so powerful and allows users to develop new vision applications so much more quickly than with other vision systems.
Some of the vision object Tools supported include: Correlation Search, Blob Analysis, Polar Search, Edge Detection, Line Creation, Points, and Frames. All vision objects can be executed (applied to the current Image) and all return results such as how much time the vision object took to execute, position information, angle information, and whether the vision object was even found.
Refer to each individual vision object explanation later in this section for more details.