Basic Pattern Recognition with NI Vision

Similar documents
Dewesoft Instructions: Chapter Needed files. Contents:

Introduction to GRIP. The GRIP user interface consists of 4 parts:

Getting Started with the LabVIEW Sound and Vibration Toolkit

Quick Guide Book of Sending and receiving card

DektakXT Profilometer. Standard Operating Procedure

Setup Guide. Pandora Pluto. Color Management System. Rev. 1.1

Setup Guide. Blackmagic Design HDLink Pro. Rev. 1.1

Setup Guide. AJA Video Systems LUT-box. Rev. 1.2

Setup Guide. SpectraCal ColorBox. (also eecolor) Image Calibration Processor. Rev. 1.1

Setup Guide. Teradek COLR. Rev. 1.1

Import and quantification of a micro titer plate image

LedSet User s Manual V Official website: 1 /

Table of content. Table of content Introduction Concepts Hardware setup...4

SignalTap: An In-System Logic Analyzer

Statement SmartLCT User s Manual Welcome to use the product from Xi an NovaStar Tech Co., Ltd. (hereinafter referred to as NovaStar ). It is our great

Setup Guide. Dolby PRM Rev. 1.1

CHEMISTRY SEMESTER ONE

Introduction To LabVIEW and the DSP Board

Preparing for remote data collection at NE-CAT

Pre-processing of revolution speed data in ArtemiS SUITE 1

PYROPTIX TM IMAGE PROCESSING SOFTWARE

FSI Calibration Guide Using I1 / LightSpace / Resolve

Specifications. Independent Controller MCTRL R5. Rev1.0.0 NS

Setup Guide. Panasonic BT-4LH310. Rev. 1.1

Linkage 3.6. User s Guide

QUICK START GUIDE QT ANALOG HD CAMERA & DVR BUNDLE ENGLISH

Transmitter Interface Program

Technical Specifications

FSI Calibration Guide Using CR100 / LightSpace / BoxIO

High Performance Raster Scan Displays

Calibration Using i1 probe with CalMan and Resolve

Getting Started After Effects Files More Information. Global Modifications. Network IDs. Strand Opens. Bumpers. Promo End Pages.

Procedures to Characterize Maury s Automatic Tuner Using ATS Software Version 5.1 or above

SXGA096 DESIGN REFERENCE BOARD

PVR Menu Function Details

Select source Click the Bio Settings button to modify device settings. Select Fingers Use Ctrl+Left mouse button to select multiple fingers to scan.

Setup Guide. EIZO Monitors. Rev. 1.4

Spectacle Motion Board Hookup Guide

Setup Guide. Flanders Scientific BoxIO. Rev. 1.1

Operating Instructions

Pilot. Quick Start Guide

Setup Guide. Blackmagic Design Teranex Mini. Rev. 1.3

UWPR Advancing Proteomics

Just a T.A.D. (Traffic Analysis Drone)

PLASMA MONITOR (PT20 UVVis) USER GUIDE

User Guide

Syntor X Flash Memory Module Revision C

DSP Laboratory: Analog to Digital and Digital to Analog Conversion *

2 Select the magic wand tool (M) in the toolbox. 3 Click the sky to select that area. Add to the. 4 Click the Quick Mask Mode button(q) in

NI Vision. NI Vision Assistant Tutorial. NI Vision Assistant Tutorial. February H-01

CytoFLEX Flow Cytometer Quick Start Guide

Cedits bim bum bam. OOG series

LM/TM-30xx, 31xx Series LCD Monitor User s Manual Rev. A0

Torsional vibration analysis in ArtemiS SUITE 1

Data Acquisition Using LabVIEW

Optiflex Interactive Video System

GETTING STARTED WITH ENDNOTE

ENGR 1000, Introduction to Engineering Design

USB Mini Spectrum Analyzer User s Guide TSA5G35

GVD-120 Galvano Controller

Universal Mode. Survey Settings. The Universal Toolbar. First Run - Initial Configuration via the Setup Button

2-/4-Channel Cam Viewer E- series for Automatic License Plate Recognition CV7-LP

Usage of any items from the University of Cumbria s institutional repository Insight must conform to the following fair usage guidelines.

Overview. Project Shutdown Schedule

ACUSCREEN NDT Joaquín González -

FT991 and WSJT-X setup Let s set up the FT991 first 1. Click the Menu/Setup button and set the following menu items to these: i. 029 = 38400bps ii.

Application Note AN-708 Vibration Measurements with the Vibration Synchronization Module

ME EN 363 ELEMENTARY INSTRUMENTATION Lab: Basic Lab Instruments and Data Acquisition

QUICK START GUIDE. QT Analog HD Camera & DVR Bundle ENGLISH

Topic: Instructional David G. Thomas December 23, 2015

Positive Attendance. Overview What is Positive Attendance? Who may use Positive Attendance? How does the Positive Attendance option work?

Instructions for Use: Video Inspection Scope with Display

TL-2900 AMMONIA & NITRATE ANALYZER DUAL CHANNEL

Video wall Precautions when moving and handling. Precaution. Please adhere to the warning signs printed on the box.

Buhl Industries VP-30 Visual Presenter. USER MANUAL Version

FAQs by Jack C Tutorials about Remote Sensing Science and Geospatial Information Technologies

FIRMWARE RELEASE NOTE

Media Tube HO ActionPad Configuration Manual V0.2 User Version

HD-SDI Express User Training. J.Egri 4/09 1

CamViewIT VIs and Functions

FACSAria I Standard Operation Protocol Basic Operation

Actual4Test. Actual4test - actual test exam dumps-pass for IT exams

G-106 GWarp Processor. G-106 is multiple purpose video processor with warp, de-warp, video wall control, format conversion,

UNIVERSITY OF PRETORIA. Dept of Library Services RefWorks (Pt 2) 2011

KRAMER ELECTRONICS LTD. USER MANUAL

Sundance Multiprocessor Technology Limited. Capture Demo For Intech Unit / Module Number: C Hong. EVP6472 Intech Demo. Abstract

Basic Terrain Set Up in World Machine:

(Skip to step 11 if you are already familiar with connecting to the Tribot)

Multiband Noise Reduction Component for PurePath Studio Portable Audio Devices

Defining and Labeling Circuits and Electrical Phasing in PLS-CADD

VISSIM TUTORIALS This document includes tutorials that provide help in using VISSIM to accomplish the six tasks listed in the table below.

Setup Guide. Creating 3D LUTs. CalMAN Overview. Rev. 1.1

Interactive Virtual Laboratory for Distance Education in Nuclear Engineering. Abstract

Using LightSpace CMS for User Created Calibration LUTs

How to Optimize Ad-Detective

ConeXus User Guide. HHAeXchange s Communication Functionality

Precautions and Disclaimers What You Can Do with Geometry Manager Pro Check Your Computer System requirements...

15 Inch CGA EGA VGA to XGA LCD Wide Viewing Angle Panel ID# 833

Activity P27: Speed of Sound in Air (Sound Sensor)

PT-LB385 S P E C F I L E. LCD Projectors. As of December Specifications and appearance are subject to change without notice.

Transcription:

Basic Pattern Recognition with NI Vision Author: Bob Sherbert Keywords: National Instruments, vision, LabVIEW, fiducial, pattern recognition This tutorial aims to instruct the reader on the method used to go from a source image (left) containing a patter of interest (square/rectangle combination) and identify the pattern's position and orientation relative to the camera frame (right). Motivation and Audience Parts List and Sources Hardware Setup Programming Acquire Images Run the Script Final Words Motivation and Audience The first step towards a computer control system of an object in the real world is localization of the object within its environment. In order to make intelligent decisions, the computer must be able to tell where its controlled entity is. One method for performing this localization is through computer vision. A camera (or series thereof) in combination with a distinct printed pattern, or fiducial, can be used to determine the distinct position of the controlled object. This tutorial aims to instruct the reader on the first step in this process; how to perform basic pattern recognition on within an image using NI's Vision module. This tutorial assumes that the reader has the following skills/experience: Basic experience with LabVIEW (construct VI's, sub-vi's, etc.) Installed LabVIEW Vision tools and USB camera extension Parts List and Sources TABLE 1: Parts required for construction PART DESCRIPTION VENDOR PART PRICE (2007) QTY

Logitech QuickCam Chat (or comparable) Logitech 961462-0403 $30 1 Hardware Setup Step 1 Suspend a camera about 2 feet over a smooth, uniformly colored surface. Step 2 Print out one or more of the fiducial contained in the file: fiducial.doc. Cut out this symbol and set it on the surface under the camera. Step 3 Surround the area with bright lights, but do not point any of them directly at the surface. Programming NI Vision Assistant Script Code and sample images are available in the archive: pattern-recog-code.zip rotate test.scr This file describes the NI vision script used to scan the input image for the template you will provide. The components of this file are detailed below, you can either rebuild the script to suit your needs or modify the one provided. NI Vision scripts are made up of "Processing Functions" represented as blocks. They are performed in a linear sequence. Block 1 - Original Image This is the image which processing will be carried out on. (See Acquire Images below) You can load an image by going to File->Open Image. Locate and Select an image you saved. If asked to remove previously acquired images say yes. Block 2 - Color Threshold This function serves to divide the image into a binary selection of pixels which fall within the threshold, and those that fall outside of it. If working with the given fiducials you are working with black on white and can afford a very wide range. Working in RGB mode select values from 0 to above 240 for each channel. This will depend somewhat on your lighting conditions - play around a little until you can isolate the pattern from its

background as in the image. Block 3 - Lookup Table: Equalize For our purposes Equalize serves to transform the binary image returned by the threshold block into a true greyscale image which can be used the pattern matching block. Select "Equalize" from the menu in the lower left to obtain the desired function. Block 4 - Geometric Pattern Matching This is the true heart of the project. The pattern matching block will take a template provided by you (see Acquire Images for directions on creating the template) and search for it within the source image. It can identify the position of the template and its relative orientation. Once your template is created, switch to the "settings" tab in the lower left hand menu. The following settings were found to work with our setup (camera ~2ft above table): Select the check boxes next to "Rotated", "Scaled", and "Occluded" and input the following settings: Setting Min Max Rotated 0 360 Scaled 10 600 Occluded 0 50 Click OK and the region should be drawn on your template. Acquiring Images Open the LabVIEW USB Snap demo VI: LABVIEW/examples/IMAQ/imaqUSB examples.llb -> Snap.vi This VI is a demo for the USB module, but also allows you to take pictures using the same interface we will return to in the future for real-time pattern recognition.

Run the VI repeatedly. Align your subject matter with the frame of the image so that it is square with one of the sides. Continue taking snapshots until you have an image with adequate alignment.

Save the image:

Now repeat this process at a few different angles so you will be able to test later to test your template. Creating Templates In the script sequence window select the Geometric Matching Step. Double Click on the block representing the step. Select "New Template" from the lower left hand menu. You will be presented with a pop-up containing the image as it is currently processed by the algorithm you designed. Select the region of interest using the zoom and selection tools. Select the finish button and select a location to save the template when prompted. If needed, adjust the center of the image to reflect the center of your object. Running the Script Once the programming is done, the template is created, and the source image is loaded you can run the script. Click the "Run Once" button located directly above the script area to run the script. The scrip will run through and (provided that your template can be found in the images) highlight its location. You will see a "results" section similar to the one pictured below displayed where the script body usually appears giving numeric details on the identified region. It is advisable to load multiple images of your target patter and different orientations to be sure the recognition is working properly.

Final Words After completing this tutorial you should be able to create scripts capable of identifying arbitrary patterns within an image. This is the first step towards using a computer vision approach to localizing objects within a camera frame. From this beginning it should be possible to create real-time processing code by taking advantage of NI Vision Assistant's "Export to VI" feature. The author can be reached by email