DEVELOPMENT OF AN INTELLIGENT RECOGNITION AND SORTING SYSTEM

This paper presents the design of an intelligent recognition and sorting system. Intelligence is included in the system by using a multilayer feed-forward artificial neural network (ANN) for image recognition. Full duplex Bluetooth communication is used between the intelligent system and a robot-control computer. Image compression and principal component analysis (PCA) reduce the dimensionality of the data, and only the salient feature vectors of an image are used for image recognition. A control signal guides a robot arm to place an object into an allocated space. The system is relatively immune to noise, and can generalise when faced with missing data.


ANN training using PSO
ANN training can be performed using either the standard gradient descent-based method of back-propagation training, GA training, or particle swarm optimisation (PSO) training.For this study, the PSO training method produced excellent results with regard to fastest computation time and minimal error.PSO is an evolutionary computation technique based respectively on a velocity (1) and a position (2) algorithm [2].The algorithm is designed so that the position of each agent within the search space represents a potential solution to a specific problem [2,14].
With regard to (1) and (2): v i k is the velocity of agent i at iteration k; c 1 and c 2 are adjustable acceleration parameters that respectively represent a particle's cognitive acceleration (agent's self-confidence), and social acceleration (swarm-confidence) factors; rand 1,2 is a random number between 0 and 1; s i k denotes the current position of agent i at iteration k; pbest i and gbest i respectively indicate the personal best of particle i and the swarm's global best position.Within this framework each agent, besides having individual intelligence, also develops certain social behaviour characteristics and coordinates its movement towards a common destination.The common point on which the swarm converges represents an optimal solution.For this study, the PSO has been used to determine the ANN's optimal weights and biases during the training phase of the ANN design.

Image data pre-processing
Image data pre-processing involves data compression with the two dimension (2D) Haar wavelet transform (HWT) and key feature extraction using principal component analysis (PCA).Image pre-processing is performed in order to: i) Reduce bandwidth: Data compression and feature extraction reduces the size of the data transmitted over the communication channel, and frees channel bandwidth for transmitting several signals simultaneously over a common channel.ii) Minimise ANN size: Reducing the quantity of data applied to the ANN reduces the size of the network and makes computation time faster.iii) Reduce data dimensionality: To facilitate easy extraction of the feature vectors.iv) Minimise computation time: To reduce the computational burden placed on the processor by ensuring a smaller data quantity and an optimally-sized ANN.

HWT data compression
The IRASS system uses data compression to reduce the dimensionality of the image data prior to its transmission via a Bluetooth data communication link.Data compression algorithms are designed to remove any redundant data to reduce their bandwidth requirements over a data communication channel [12,19].Image data compression is achieved using the wavelet transform (WT) prior to transmission over the Bluetooth channel.Wavelet compression was chosen over other traditional compression methods because of its ability to provide a multi-resolution representation of an image and yield a higher compression ratio [10,15].In wavelet compression, an input signal is decomposed into a summation of a series of base functions called wavelets that are generated through dilating and shifting operations from a basic or mother wavelet function [17,18].Several types of wavelets exist, such as the Mexican hat wavelet, the Morelett wavelet, and the Haar wavelet transform (HWT).In this paper, the HWT has been selected for image compression because of its simplicity, its excellent performance in different applications [10], its low computing demands in terms of reduced memory requirements [10,16], and its fast computation speed.

2.2.2
Feature extraction using PCA PCA overcomes the problem of processing large quantities of data by extracting only the key textural features from the compressed data image [7,8,9]   a series of experiments.The output layer consists of three neurons, and corresponds to the number of objects that must be identified for sorting.The recognition system in Figure 8 has the following characteristics: Architecture: The MLFF network architecture is chosen for this recognition system because of its dynamic universality and popularity over a wide range of applications [3].The ANN has three layers and is arranged as follows: an input layer with 36 inputs; a hidden layer consisting of nine neurons; and an output layer with three neurons.

Topology:
Each neuron in the hidden layer is connected to each of the 36 inputs.The input layer therefore consists of 36 x 9 = 324 interconnections and weight matrices from the input layer to the hidden layer.Each neuron in the hidden layer is interconnected to each of the three neurons in the output layer.Therefore 9 x 3 = 27 interconnections and weights exist between the hidden layer and the output layer.

Activation function:
A sigmoidal neural network was chosen for our recognition system because of its universal suitability [3].

OPERATION OF THE IRASS SYSTEM
The IRASS system is designed to recognise objects, sort items into predetermined locations, and handle items that it was not trained to recognise.

Object recognition
The ANN target vectors are given in Table 2. Rows 1, 2, and 3 correspond to the recognition of the Aspen, Princeton, and Voyager boxes respectively.The results of the training are shown in Table 3.With regard to Table 3: Row 1: Columns 1-5 show the results of the Aspen box.
The numbers in the first row of columns 1-5 are  1.This corresponds to the target vectors for the Aspen box in Table 2, and indicates that the ANN recognises the Aspen box.Similar reasoning also applies to Row 2: Columns 6-10 and Row 3: Columns 11-15 for the Princeton and Voyager boxes respectively.

Testing the ANN
The dataset used to test the performance of the ANN is determined in the same way as for the training data set.The results of the test are shown in Table 4, and prove that the ANN is properly trained to recognise the three boxes.

Determining the robustness of the ANN recognition system
An important characteristic of ANNs is their ability to deliver a stable output even in the face of noise.We tested the robustness of our ANN recognition system by introducing artificial 'salt and pepper' noise on to the image.The results of the recognition are shown in Table 5, and prove that the network is capable of recognising the boxes even when disturbances are present.This will not be true for systems that work off an 'inflexible template'.

Location recognition: Placing an object into the sorted position
The ANN system for recognising the location where the object is to be placed also resides in the main control computer.The procedure followed to determine the eigenvectors for the three object locations indicated by 'A', 'P', and 'V' in Figure 5 is similar to that which was followed for extracting the workpiece vectors, and resulted in a 30 x 1 matrix of eigenvectors.A 30:9:3 ANN was trained and tested to recognise the correct location to place each of the three objects.The size of the network is determined as follows: 30 inputs for the feature vectors and three outputs for three locations where the objects are to be placed; the hidden layer consisting of nine neurons was determined experimentally.Our code counts the number of rows in the matrix and then determines which ANN to use: 36 rows indicates box recognition, and 30 rows means location recognition.Following recognition, the main control computer then transmits a control signal via the Bluetooth link to the robot control computer.The robot controller will guide the robot arm to move each box to its correct location.

5.3
Determining whether an object is desirable or not

Desirable objects
The IRASS system is designed to place any unidentified objects into an allocated area known as 'the dump'.We arbitrarily selected column 1 of the training vectors from Fig he c ws th speci o the e 1: http://sajie.journals.ac.za

Table 2 : Target vectors for the ANNTable 3 : ANN training resultsTable 4 : ANN test resultsTable 5 : ANN recognition when noise is present
Table 1 to determine whether an item is desirable or not.(Any other column of the eigenvector