Pattern recognition is the science that deals with the processes of engineering, computing, and mathematics related to physical or abstract objects, with the purpose of extracting information that allows properties to be set between sets of such objects. Pattern recognition also called pattern reading, figure identification, and shape recognition—consists of the recognition of signal patterns. Patterns are obtained from segmentation, feature extraction, and description processes where each object is represented by a collection of descriptors. The recognition system must assign each object its category or class (a set of entities that share some characteristic that differentiates them from the rest). The following processes are followed in order to recognize the patterns:
- data acquisition
- feature extraction
The essential point of pattern recognition is classification: you want to classify a signal depending on its characteristics. Signals, characteristics and classes can be either way, for example digital images of letters can be classified in classes “A” to “Z” depending on their pixels or can classify bird edge noises into kinds of forward orders depending on frequencies.
Basic Recognition System
A complete pattern recognition system includes a sensor that faithfully collects the elements of the universe to be classified, a feature extraction mechanism whose purpose is to extract useful information, eliminating redundant and irrelevant information, and finally a decision-making stage in which the unknown class patterns assigned to the appropriate category.
The sensor is the device in charge of data acquisition. It must be able to transform physical or chemical magnitudes, called variable instrumentation, into electrical magnitudes. Instrumentation variables depend on the type of sensor and can be for example: temperature, light intensity, distance, acceleration, inclination, displacement, pressure, force, torsion, humidity, etc.
It is the process of generating features that can be used in the data classification process. It is sometimes preceded by a preprocessing of the signal, necessary to correct possible deficiencies in the data due to sensor errors, or to prepare the data for subsequent processes in the stages of feature extraction or classification.
Elementary characteristics are explicitly present in the acquired data and can be passed directly to the classification stage. High-order characteristics are derived from elementary characteristics and are generated by manipulations or transformations in the data.
It consists of selecting which type of characteristics or traits are most appropriate to describe the objects. To do this, the traits that have a decisive impact on the problem must be located. This stage can also be designed within the classification. The selection of variables can be differentiated according to the objectives sought:
- For classification: the selection of relevant characteristics, based on the total set of characteristics that describe objects, is done with two fundamental reasons: improving classification or increasing processing speed.
- For rendering: Decide which characteristics best represent a certain type of objects.
Variable selection strategies:
Wrapper: feature selection is done using classification mechanism information.
Filter: The selection is made with a criterion independent of the classifier. It includes some methods such as:
- Decision tables: Searches for a minimum subset of variables that do not introduce confusion between classes.
- ID3: Creates a decision tree for you and selects a set of variables that allows you to discriminate between classes.
- Testor Theory: You are searched for all subsets of minimal discriminating variables, with these evaluating the relevance of each variable and selecting those with the most relevance.
Classification tries to map the different parts of the characteristic vector to groups or classes, based on the extracted characteristics. At this stage, what is known as machine learning is used, which aims to develop techniques that allow computers to learn.
You typically use one of the following procedures:
- Geometric: The patterns must be graphable. This approach uses the calculation of distances, shape geometry, numeric vectors, attraction points, and so on.
- Statistics: Based on probability theory and statistics, it uses analysis of variances, covariance, dispersion, distribution, etc.
It assumes that you have a set of numerical measures with known probability distributions and from them you are aware.
- Syntactic-structural: it is based on finding the structural relationships that the objects of study hold, using the theory of formal languages, automata theory, etc. The goal is to build a grammar that describes the structure of the universe of objects.
- Neuro-reticular: Neural networks are used that are ‘trained’ to give a certain response to certain values.
- Logical-combinatory: it is based on the idea that the modeling of the problem should be as close as possible to the reality of the problem, without making assumptions that are not substantiated. It is used for fuzzy sets and uses symbolic logic, combinational and sequential circuits, etc.
Whether or not we have recorded a previous set that allows the system to learn, the classification may be supervised, partially supervised or unsupervised.
- Supervised classification: is also known as learning classification. It is based on the availability of training areas. These are areas of which the class to which they belong is known a priori and that will serve to generate a spectral signature characteristic of each of the classes. These are called information classes as opposed to the spectral classes generated by the unsupervised classification.
Some methods of supervised classification:
Discriminatory functions: if they are two classes, it is sought to obtain a g function such that for a new object O, if g(O) s 0 is assigned to class 1 and in another case to 2. If multiple classes, a set of gi functions is searched and the new object is placed in the class where the function takes the highest value.
Nearest Neighbor: A new object is placed in the class where the original sample object that most closely resembles it is.
Artificial neural networks: commonly referred to as RNA or ANN. They are supposed to mimic real neural networks in the development of learning tasks.
- Partially supervised classification: also known as partial learning. In these problems there is a sample of objects only in some of the defined classes.
- Unsupervised classification: also known as non-learning classification. Multivariate automatic classification algorithms are used in which the nearest individuals are grouped into classes.
Restricted: The number of classes in which the sample will be structured is pre-defined.
Free: The number of classes in which the sample will be structured depends exclusively on the data.
Some methods of unsupervised classification:
Simple Link and Complete Link: start from unit groups of objects and join the most similar groups at each stage, until they meet some conditions.
ISODATA: Groups that are iteratively adjusted using probability theory are formed. In some versions you can do the union or division of some group.
C-means: A seed group is defined, each object is associated with the most similar seed group, the centroids of each group are taken as new seeds, and iterates until it stabilizes.
Logical-combinatory criteria: the criteria imposed on groups are such as being related, maximal complete, compact, etc.
Pattern recognition is more complex when you use templates to generate variants. For example, in Spanish, phrases often follow the “subject-predicate” pattern, but some knowledge of the language is required to detect the pattern. Pattern recognition is studied in many fields, including psychology, ethology, computer science and digital signal processing.
Applications of Pattern Recognition
Pattern recognition systems have a variety of applications. Some of the most relevant and currently used are:
- Weather forecast: being able to classify all the weather data according to different patterns, and with the a priori knowledge that we have of the different situations that may appear allows us to create automatic prediction maps.
- Recognition of handwritten or machine-written characters: it is one of the most popular utilities of pattern recognition systems since the writing symbols are easily identifiable.
- Speech recognition: voice signal analysis is currently used in many applications, a clear example is computer teleoperators.
- Applications in medicine: analysis of biorhythms, detection of irregularities in x-ray images, detection of infected cells, marks on the skin…
- Finger print recognition: used and known by the vast majority, through fingerprints we are all identifiable and with programs that detect and classify matches, it is easy to find correspondences.
- Face recognition: used to count attendees at a rally or just to detect a smile, there are already different cameras on the market with this option available.
- Interpretation of aerial and satellite photographs : great utility for military or civil proposals, such as agriculture, geology, geography, urban planning.
- Prediction of maximum earthquake magnitudes.
- Object recognition: with important applications for visually impaired people.
- Music recognition: identify the type of music or the specific song that sounds.