Document

advertisement
Identifying and Tracking Shapes
Vision
Version 1.2
Revision History
Date
Version
Description
Author
27/07/2005
Draft 0.1
Initial draft
Marco Gallotta
28/07/2005
Draft 0.2
Revision 1 of initial draft
Tim Shier
28/07/2005
Draft 0.3
Additions to draft
Marco Gallotta
29/07/2005
Draft 0.4
Final draft
Marco Gallotta and
Tim Shier
04/08/2005
1.0
Edited formatting
Marco Gallotta
04/08/2005
1.1
Revised to final copy
Tim Shier
10/09/2005
1.2
Final Copy
Tim Shier
Table of Contents
1.
Introduction ...................................................................................................................................... 4
1.1
1.2
1.3
Purpose .................................................................................................................................. 4
Scope ..................................................................................................................................... 4
Definitions, Acronyms, and Abbreviations ........................................................................... 4
1.3.1
CR ........................................................................................................................... 4
1.3.2
CB ........................................................................................................................... 4
1.3.3
GUI ......................................................................................................................... 4
1.3.4
Background pixels ................................................................................................... 4
1.3.5
Foreground pixels ................................................................................................... 4
1.4 References ............................................................................................................................. 4
1.5 Overview ............................................................................. Error! Bookmark not defined.
2.
Positioning ....................................................................................................................................... 5
2.1
3.
Environment..................................................................................................................................... 5
3.1
4.
User Environment .................................................................................................................. 5
Product Overview ............................................................................................................................ 5
4.2
4.2
5.
Problem Statement ................................................................................................................ 5
Summary of Capabilities ....................................................................................................... 5
Assumptions and Dependencies ............................................................................................ 6
Product Features ............................................................................................................................. 6
5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
5.9
5.10
Identify Shapes ...................................................................................................................... 6
Differentiate between circles and other shapes...................................................................... 6
Categorize circles into specific sizes ..................................................................................... 6
Count the number of each size of circle ................................................................................ 6
Supply user friendly GUI ...................................................................................................... 6
Guarantee specific accuracy of shape recognition ................................................................. 6
Provide Error margin in fit statistics ...................................................................................... 6
Output requirements management ......................................................................................... 6
Simulation of robotic sorting technique ................................................................................ 6
Coloring of objects after classification ............................................................................. 6
6.
Constraints ....................................................................................................................................... 7
7.
Precedence and Priority ................................................................................................................... 7
8.
Documentation Requirements .......................................................................................................... 7
8.1
8.2
User Manual .......................................................................................................................... 7
Installation Guides, Configuration, and Read Me File .......................................................... 7
Vision
1.
Introduction
1.1
Purpose
The purpose of this document is to define the requirement of Conveyor Recognition (cs6-pm)
in terms of the needs of the end user. This definition will be as abstracted as much as possible.
1.2
Scope
This document applies to the Shapes application which was commissioned by the UCT
Computer Science Department as one of the projects for CSC202S participants to do. The
Shapes project will be completed by the joint project managers Tim Shier (SHRTIM001) and
Marco Gallotta (GLLMAR013).
The Shapes project looks to solve the hypothical problem of a computer application
recognizing certain sized circular disks which appear on a conveyor belt moving from right to
left as viewed by a camera stationed directly above the conveyor belt.
1.3
Definitions, Acronyms, and Abbreviations
1.3.1
CR
Conveyor Recognition which is the personal project name which we have given to our project.
This project name will be continued throughout all documentation and may be consided a
standard.
1.3.2
CB
Conveyor Belt – a physical machine which typically moves in one direction and moves
objects in a general way along a pre-determined path.
1.3.3
GUI
Graphical User Interface, this facilitates easier usage of the Shapes
1.3.4
Background pixels
The black pixels that make up the CB, i.e. no shape covers the pixel.
1.3.5
Foreground pixels
The white (grey) pixels that make up the shapes on the CB.
1.3.6
Boundary Pixels
Foreground pixels that have surrounding background pixels
1.3.7
Shift
The number of pixels which the animation moves between images.
1.4
References
http://people.cs.uct.ac.za/~jkr: templates for software engineering.
2.
Positioning
2.1
Problem Statement
The problem of
Having to manually count the number of items being
manufactured and group them together manually
affects
Shareholders of the company due to the relatively low
efficiency and therefore a higher cost and lower return
the impact of which is
A slow and costly counting process involving many
additional employees as well as an inaccurate number due
to human error
a successful solution would be
Improve the speed and efficiency of the counting process
and reduce the number of employees required in the
counting process
3.
Environment
3.1
User Environment
The users of this application in the hypothetical situation will include un- to medium- skilled
workers in a factory or other organization which requires accurate detection of objects moving
along a CB.
The application will be run on a system will the following installed:
4.

Unix OS

QT 3.3 or later
Product Overview
This section defines the high level objectives view of Shapes in terms of its capabilities and
interface.
4.2
Summary of Capabilities
This table below details the main customer benefits which Shapes will exibit.
Table 4-1 Customer Support System
Customer Benefit
Supporting Features
Fewer staff required to sort object
For each object which appears on the CB, Shapes
sorts it into whether it is a certain object or whether
it is not of importance. This means that staff
members who are sorting are able to simply pick out
those objects which are of interest.
Lower error bound in sorting of objects
CV will reduce the error in human sorting as minor
changes will result in the failure of non-similar
objects from being accepted as other objects (i.e.:
circles vs. ovals).
Easier access to statistics such as
With each object which appears in the screen a
percentage of object relative to the
percentage and other statistics are automatically
entire load
provided to the user.
Largely automated
The process requires almost no human interaction as
CV does the majority of the sorting and would only
require human help in the testing phase.
Availability of statistics on non-disc
CV is able to sort object non-disc objects with a fair
shapes
4.2
5.
level of accuracy and therefore is hugely useful in
sorting other shapes.
Assumptions and Dependencies
The following assumptions and dependencies of CV are defined below

The objects will only appear from the right (i.e.: the CB is moving from right to left)

At least one pixel of each object will appear in the furthest most right line of pixel
with each frame of the video feed.

No object will be partially out of the top of bottom bounds of the screen

All objects will adhere to the standards which CB adhere to, i.e.: no object will
appear in the middle of the CB.

Lighting is standard and therefore all colours are standard according to first video
feed image which appears.

No object will begin with part of it outside the left bounds of the screen

All changes will be passed through the project manager before being accepted
Product Features
This section serves as an introduction to the proposed features.
5.1
Identify Shapes
Shapes will be identified on entry from the right and will be stored for future use
5.2
Differentiate between circles and other shapes
Shapes will be categorized according to the type of shape and will be stored more specifically
accordingly
5.3
Categorize circles into specific sizes
Once circles are found they will be compared to previously identified circles and stored more
specifically
5.4
Count the number of each size of circle
When circles are found they will be counted according to there size and stored more
specifically accordingly
5.5
Supply user friendly GUI
A GUI will be creating which facilitates simple viewing of output and effective manipulation
of inputs.
5.6
Guarantee specific accuracy of shape recognition
The algorithm used will guarantee an accuracy above a to be determined percentage, this
algorithm will be optimized as far as possible.
5.7
Provide Error margin in fit statistics
In categorizing a shape, there will be a small error due to parts not being identical and a low
resolution camera. This feature displays the error of fit.
5.8
Output requirements management
Classification of shapes will be visual and absolute.
5.9
Sorting non-disc shapes
The application will attempt to recognize and sort additional shapes and supply statistics for
each shape.
5.10
Coloring of objects after classification
After it has been determined that a shape belongs in a certain category, that shape will be
coloured as per the category colour such that all shapes of a particular type and size will
appear in the same colour in the output.
6.
Constraints
The following are constraints on the design of the project:

7.
The project will only be able to handle greyscale images with black as the
background and a grey as the foreground of the shapes.
Precedence and Priority
The features have the following priorities, with the ones listed on top having a higher priority
then the ones below:
8.

Identify Shapes

Differentiate between circles and other shapes

Categorize circles into specific sizes

Count the number of each size of circle

Guarantee specific accuracy of shape recognition

Supply user friendly GU

Output requirements management

Provide Error margin in fit statistics

Simulation of robotic sorting technique

Coloring of objects after classification

Sort other non disc shapes
HIGH PRIORITY
LOW PRIORITY
Documentation Requirements
This section describes the documentation requirements of the Shapes.
8.1
8.2
User Manual
The User Manual shall how the Shapes is operated and includes the following:

Minimum System Requirements

Installation of the Shapes

All System Features

Customer Support Information

The User Manual should range from 10 – 20 pages. The User Manual page
dimensions shall be 7 by 9 inches. The User Manual shall be available as hardcopy.
Installation Guides, Configuration, and Read Me File
The Installation Guide for the server portion shall include:

Minimum System Requirements

Installation Instructions

Configuring factory-specific Parameters
The Read Me File will be available for display following installation. The Read Me File will
also reside on disk and be available for viewing at any time by the user. The Read Me File
shall include

New release features

Known bugs and workarounds.
Download