Survey of Object Tracking and Feature Extraction Using Genetic ... - ijcst

0 downloads 0 Views 442KB Size Report
any video processing application, such as animation, gaming and surveillance. ..... Single geometric shape acts as an individual and the chromosome is a set of p genes, ... Mumbai chapter at IIT Bombay on March 11,2004. [3] M. Pei, E.D. ...
ISSN : 0976-8491 (Online) | ISSN : 2229-4333 (Print)

IJCST Vol. 5, Issue 1, Jan - March 2014

Survey of Object Tracking and Feature Extraction Using Genetic Algorithm 1 1,2

Ashish Shingade, 2Archana Ghotkar

Dept. of Computer Engineering, Pune Institute of Computer Technology, Pune, India

Abstract Object tracking and feature extraction are the important steps in any computer vision application. With availability of various object tracking and feature extraction techniques, in this paper genetic algorithm technique is explored. Genetic algorithm is used for optimization, searching, feature extraction, segmentation and classification. Traditional methods search from a single point where as genetic algorithm search parallel from a population of points and find the global optimum in relatively few evaluations. Genetic algorithm is robust and efficiently searches complex search space. Comparative study of feature extraction techniques with genetic algorithm is presented to give guidelines for the researchers in the same domain. Keywords Genetic Algorithm, Object Detection, Tracking, Feature Extraction I. Introduction Genetic Algorithms (GAs) are search techniques that are based on concept of natural selection and natural genetics [1]. GAs are a particular class of evolutionary algorithms that use the techniques inspired from evolutionary biology. The main advantage of the GA design is that the accurate results may be obtained using a very simple algorithm. It is a method of finding a good answer to the problem, based on feedback received from its repeated attempts to a solution. GA was developed to simulate process observed in natural evolution, a process that operates on chromosomes (string, individual) [2]. The difference between GA and other search methods is that it searches among a population of points, and works with a coding of parameter value themselves. The transition scheme of GA is probabilistic, whereas traditional methods use gradient information. Because of these features of GA, they are used as general purpose optimization algorithm and also provide means to search irregular space and hence are applied to a variety of functions optimization, feature extraction, classification, segmentation, parameter estimation, computer vision and machine learning applications. Object detection and tracking process are the starting steps for any video processing application, such as animation, gaming and surveillance. Object tracking in videos can be defined as a method of following an object of interest through successive image frames to determine its relative movement with respect to other objects. The challenges of object detection and tracking are handling of orientation and occlusion. Object tracking is an easy task when the shape, direction and speed of moving object are constant. Object can be a person, vehicle or any entity that is of interest. The two major sources of information in video that can be used to track object are visual features (such as color, texture and shape) and motion features. The object detection and tracking have many applications such as video surveillance, robot vision, traffic monitoring, vehicle navigation and animation. In this paper, GA is introduced with background subtraction to improve the efficiency of overall system. GAs advantages are to improve robustness,

14

International Journal of Computer Science And Technology

accuracy and flexibility of system [1]. GA can be used for feature extraction, providing those features that maximize the performance of a system. Feature extraction is a special form of dimensionality reduction. The GA based feature extraction technique provides best feature to be extracted that reviews the original input compared with the other feature extraction techniques. It maximizes the performance of the system. This paper gives the survey on use of GA in different applications, object tracking and shape feature extraction. The paper is organized as follows. Section II describes concept of GA, section III present object tracking using GA, section IV gives the comparative study of feature extraction techniques and in section V we present shape feature extraction using GA and conclusion is presented in section VI. II. Genetic Algorithm GAs are methods used in computing to find true or appropriate solution to search and optimization problems based on principles of natural selection and genetics. Here GA and associated terminology is explained. GA uses expressions from natural genetics. The individuals (or genotype) in a population are called as strings or chromosomes. Chromosomes are made of units- genes (also features, characters, or decoders), every gene controls the inheritance of one or more character. The genes of characters are located in a chromosome, which are called loci (string positions). Any features of an individual (such as skin color) can manifest itself in different ways the gene have states called alleles (feature values) as shown in Table 1. Each genotype (a single chromosome) represents a solution to a problem; a biological process runs on a population of chromosomes corresponding to a search over a space of possible solutions [5]. A GA performs a search by maintaining a population of potential solutions and inspiring information formation and exchange between these directions. The population undergoes a simulated development; at each generation the good solution is reproduced and the bad solutions are ignored. To distinguish between the solutions, an objective (fitness) function is used, which plays the role of the selection process in the biological environment. A GA starts with an initial set of population. Each individual in the population is a chromosome, representing a solution to the problem. A chromosome is a string structure, typically a list of binary digits representing a coding of control parameters of a given problem. The chromosomes progress through successive iterations called generations. The chromosomes of each generation are evaluated using measure of fitness. To create the next generation, new chromosomes called offspring are formed by either a crossover operator or a mutation operator. A new generation is formed by selecting, according to fitness value, some of the parents and offspring, and rejecting others not fit in order to keep the population size constant. Chromosomes having higher fitness values are selected. Normally, the roulette-wheel selection approach is used. After several generations, the algorithm meets to the best chromosome, which represents the optimal or near w w w. i j c s t. c o m

ISSN : 0976-8491 (Online) | ISSN : 2229-4333 (Print)

IJCST Vol. 5, Issue 1, Jan - March 2014

optimal solution to the problem [5].

Applications of Genetic Algorithm As seen from the above description of the working principle of GA, GA is different from the other traditional optimization methods. GA works with a string-coding of variables instead of the variables. The advantage of working with a coding of variables is that the coding discretizes the search space. On other hand, since GA require only function values at various discrete point, a discrete or discontinuous function can be handled with no extra burden. This allow GA to be applied a wide variety of problems. The difference between GA and many traditional optimization methods is that GA work with population of points instead of a single point. Because there is more than one string being processed simultaneously, it is very likely that expected GA solution may be a global solution. Due to such advantages GAs are applied to many scientific, engineering problems, in business and entertainment, including following applications: • Computer Vision: GA has been used in classification, image segmentation, feature extraction of images and various other computer vision applications [3][4]. • Machine Learning: GA has being used in many machine learning applications, including classification and prediction. GA is also implemented to design neural networks, to design and control robots. • Automatic programming: GA has been used to develop computer programs for specific task, and to design other computational structures. • Optimization: GA can be applied to numerical optimization, combinatorial optimization problems such as traveling salesman problem (TSP), circuit designing, job shop scheduling, and video and sound quality optimization [2]. The Table 2 shows the use of GA by different authors in various applications and the efficient use of GA.

Table 1: Explanation of Genetic Algorithm Terms Genetic Algorithm terms Chromosome (string, individual) Genes (bits) Locus Alleles Phenotype Genotype

Explanation Solution Part of Solution Position of gene Values of gene Decoded solution Encoded solution

The Algorithm works as follow 1. Choose the initial population of the individuals. 2. Evaluate the fitness of each individual in that population. 3. Repeat on this generation until termination (time limit, sufficient fitness achieved etc.). a. Select the best fit individual for reproduction. b. Produce new individuals through crossover and mutation operation to give birth to offspring. c. Evaluate the individual fitness of new individuals. d. Replace least fit population with new individuals. The fig. 1 shows flowchart of implementation of GA for any application.

Table 2: Survey of Applications of Genetic Algorithm Used by Different Authors Use of Genetic Algorithm

Result

Reference

GAs give good feature [14] Feature selection selection compared with other algorithms Genetic algorithm [13] Feature selection maximizes the classification percentage Good segmentation was achieved using Genetic [15] Segmentation Algorithms

Fig. 1: Flowchart of Genetic Algorithm w w w. i j c s t. c o m

Advantage in Feature Selection Performance and speed using GAs Feature Best feature selection, Selection, feature extraction and Feature classification achieved Extraction and using genetic algorithm Classification Improved performance Feature of feature extraction Extraction and and classification using Classification genetic algorithm

[12]

[8]

[3]

International Journal of Computer Science And Technology   15

ISSN : 0976-8491 (Online) | ISSN : 2229-4333 (Print)

IJCST Vol. 5, Issue 1, Jan - March 2014

Feature Extraction Feature Extraction

Feature Extraction

Efficient feature extraction using genetic algorithm Automatically and exactly facial feature extraction using genetic algorithm Genetic algorithm was able to search effectively and reduce computational complexity.

[4]

[10]

[11]

III. Object Tracking In this paper we propose a method for object detection and tracking using background subtraction and GA. The [28, 30-33] shows the implementation of various object tracking algorithms. The steps in this system are image acquisition, object detection, object tracking and object processing, the object detection includes some sub phases as background model, foreground detection, object and feature extraction. The proposed system block diagram is shown in fig. 2. A. Image Acquisition Image acquisition is the initial step in which frames from real time video are taken as input to the system and provided for further steps foreground detection and background model for object detection. B. Object Detection The object detection phase consists of following sub phases 1. Background Model

Fig. 2: Block Diagram for Object Tracking

16

International Journal of Computer Science And Technology

Background model learns the background image, which is taken at the time of initialization. The image is taken when there are no any moving objects; only stationary objects and background is taken in consideration. The background image is then given to object detection phase. 2. Object Detection The object detection performs segmentation of foreground frame with background frame from the current input. The object detection method uses background subtraction technique to detect the object of interest. Input to object detection phase is current image taken from image acquisition phase and background image from background model phase to perform background subtraction. In this paper background subtraction technique with frame differencing method as mentioned in [34-35] is used, the advantage of this method is that it takes less processing time to segment the foreground object from the background. 3. Object and Feature Extraction This step extracts useful features from the sequence of frames; feature extraction is done to reduce the amount of information to be processed [34]. The object detection is performed by extracting the features of each object. In this paper centroid and shape of object are used as major features for object detection. Once the features are extracted the object is detected on the base of features and the bounding box is applied to represent the detected object. C. Object Tracking Once the object is detected in each frame, the tracking algorithm is applied to track the object from frame to frame. In this section we present GA for object tracking. Here the input to GA is the detected object from frames with feature as centroid. The algorithm for tracking object is stated below. Algorithm 1. For every frame i 2. The centroid (x, y) of the object is computed 3. Genetic algorithm is used to accurately search the object in successive frames • If genetic algorithm accurately searches the object in frame i to i+1 • Then the motion vector is evaluated as (x’-x, y’-y) where (x’, y’) is the estimated centroid of the object in frame i+1 • The process is repeated until the object is present in the frame • Else terminate The input to the GA is the detected object (from the frame) and the centroid (x, y) of the object. Genetic algorithm terms: 1. Population Initialization: The centroid value of the detected object is encoded as the chromosome 2. For every chromosome Fitness Evaluation: is given by Diff_frame = |V(x, y, t+1) – V(x, y, t)| 3. Selection: Select chromosomes for mutation or crossover 4. Crossover: All chromosomes that are chosen for cloning are directly taken into the next generation 5. Mutation: All Chromosomes chosen for mutation are replaced with uniformly distributed random centroid values 6. Termination: If number of generations exceeds a predefined threshold value w w w. i j c s t. c o m

IJCST Vol. 5, Issue 1, Jan - March 2014

ISSN : 0976-8491 (Online) | ISSN : 2229-4333 (Print)

D. Object Processing The tracked object is to be processed; the processing of object is done using bounding box. Bounding box is applied on the tracked object to get object of interest from the input video. E. Mathematical Model The mathematical model for the proposed system is stated below. Let S be the system, such that S = {In, Ou, Fu, Su, Fa} In = Input to the system Ou = Output of the system Fu = Set of functions Su = Success Fu = Failure 1. Input In = {i1, i2, i3,…..,in} Set of input sequence of frames from video. 2. Output Ou = Set of bounding box applied on tracked object on each frame. 3. Functions Fu = {f1, f2, f3, f4} f1 = background_model() f2 = foreground_model() Background subtraction with frame differencing Frame differing at time t+1 is Diff_frame = |V(x, y, t+1) – V(x, y, t)| | V(x, y, t) - V(x, y, t+1)| > Th V = pixel intensity Th = Threshold f3 = feature_extraction() Centroid = (x,y) x = ∑ (Anxn) / ∑ (An) y = ∑ (Anyn) / ∑ (An) f4 = object_tracking() 4. Success Su = Correct tracking of the object. 5. Failure Fu = False tracking of object or object not tracked due to occlusion, environmental factors (like fog, lightning, rainfall, snowfall). IV. Comparative Study of Feature Extraction Techniques There are many methods for feature extraction mentioned in [10, 11, 16-29]. Table 3 reviews some of the works published for feature extraction. Some of the commonly used techniques are Principal Component Analysis (PCA), hough transformation (HT), Independent Component Analysis (ICA), Linear Discriminant Analysis (LDA), and Genetic Algorithm (GA). The following table shows the use of various feature extraction techniques. Table 3: Comparative Study of Feature Extraction Techniques by Various Methods Feature Extraction Technique Hough transform

w w w. i j c s t. c o m

Application Iris Recognition

Number of Feature Points Outer iris and pupil

References [28]

Independent Component Analysis

Feature extraction

Flexible in term of number of features

Canonical Correlation Analysis

semisupervised feature extraction from multiview data

Handwritten numerals [21] (digits from ‘0’ to ‘9’)

Face Detection

Eyes, and mouth

[18]

Face Recognition

Face region

[17]

Face Recognition

Face region

[16]

Linear discriminant analysis

Feature extraction

Flexible in term of number of features

[19]

Singular value decomposition

Recognition of Facial Expressions

Face region

[22]

Genetic Algorithm

Automatic Facial Feature Extraction

Genetic Algorithm

Facial Feature Extraction

Principal Component Analysis Principal Component Analysis Principal Component Analysis

Using Bayesian approach with nonlinear kernels Using adaptive Hough transform, template matching and active contour models Hough Transform

[20]

Eyes, eyebrows, [10] mouth and nose Face region, eyes, nose, [11] mouth

Feature extraction

Eye centers

[29]

Feature extraction

Eyes, eyebrows, mouth, nostrils, cheeks and chin

[26]

Image Registration

Lines in the image

[25]

V. Shape Feature Extraction Feature extraction is a method in which the original set of features is transformed to provide a new set of features. If the features extracted are carefully chosen it is expected that the features set will extract the relevant information from the input data, in order to perform the chosen task using this reduced representation instead of the full size input. The objective of this is to find a reduced subset among the original N features such that useful class discriminatory information is included and redundant class information and noise is excluded [3-4]. Shape feature extraction is a particular set of feature extraction. To describe shapes, geometric features can be used. A shape can be described by different features. These shape parameters are Center of gravity, Axis of inertia, Solidity, Digital bending energy, International Journal of Computer Science And Technology   17

IJCST Vol. 5, Issue 1, Jan - March 2014

ISSN : 0976-8491 (Online) | ISSN : 2229-4333 (Print)

Eccentricity, Circularity ratio, Elliptic variance, Rectangularity, Convexity, Euler number, Profiles, Hole area ratio [7]. Genetic Algorithm for Shape Feature Extraction The input to a shape feature extraction algorithm consists of N points in Cartesian space and the equation defining the particular geometric shape to be extracted. Some examples of geometric shapes are lines, circles, ellipses in 2D and planes, spheres, cones, cylinders in 3D. The extraction process will find the best shape of given data. Single geometric shape acts as an individual and the chromosome is a set of p genes, each of which is one of the points in the minimal subset defining the shape. Since there are N geometric data points, index is used to identify each minimal point, which is in the range from 1 to N; the process of shape feature extraction is shown in figure 3. For GA to execute, a fitness function (objective function) must be provided. The input to the algorithm is chromosome defining the shape and the output is a scalar which defines the fitness of the shape. The fitness function counts the number of geometric data points in a fixed-sized template around the geometric shape. These points define a valid Shape. To create the initial population the geometric data are first divided into small subsets, then to get the initial population random sampling is performed on each subset. Two individuals (i.e. shapes) are chosen for reproduction from the population using a fitness function. The operation of crossover and mutation are applied to the chosen individuals to create new individuals. The individuals are replaced with the new individuals and the weak individuals are discarded. The fitness function is used to rank the two new individuals which are then added to pool of population. The worst fit individuals are removed to keep the population pool size fixed. The GA is repeated till there is some indication of convergence. The final result of this process is population member with best score. The parameter vector is computed from the chromosome of this individual. To label an individual (shape), parameter vector and fitness function are used. GA is run repeatedly on the remaining geometric data points to extract all the shapes. [9]. The above study shows the efficient use of GA for feature extraction hence the GA methodology can be used to extract a wide range of geometric shapes.

Figure 3: Flowchart of Shape Feature Extraction using Genetic Algorithm VI. Conclusion In this paper we explore that GA plays an important role in object tracking and feature extraction. Comparative study of use of GAs in various applications and its advantages are mentioned. We proposed an object tracking technique using GA and background subtraction. Different techniques for feature extraction are studied and proposed a GA approach for shape feature extraction. The study shows that the GA can be applied for wide range of problems.

18

International Journal of Computer Science And Technology

w w w. i j c s t. c o m

ISSN : 0976-8491 (Online) | ISSN : 2229-4333 (Print)

References [1] Sastry, K., Goldberg, D.E., Kendall, G. (2005). “Genetic algorithms: A tutorial”. In Burke, E. and Kendall, G. (Eds), Introductory Tutorials in Optimization, Search and Decision Support Methodologies.(Chapter 4.) 97-125. Berlin: Springer. [2] Tom V. Mathew, “Genetic Algorithms’” as part of the ISTE Mumbai chapter at IIT Bombay on March 11,2004. [3] M. Pei, E.D. Goodman, W.F. Punch, Y. Ding, “Genetic Algorithms for Classification and Feature Extraction”. 1995 Annual Meeting, Classification Society of North America, June 1995. [4] E.D. Goodman, M. Pei, W. F. Punch “Feature Extraction Using Genetic Algorithms,” Proc. 1st Internat. Symposium on Intelligent Data Engineering and Learning, IDEAL’98, Springer, Hong Kong, Oct., 1998, pp. 371-384. [5] N. P. Padhy, (2009) Artificial Intelligence and Intelligent Systems, 5th ed., Oxford University Press. [6] Goldberg, D. E. (1989). Genetic algorithms in search, optimization, and machine learning. Reading, MA: AddisonWesley. [7] Y. Mingqiang, K. Kidiyo, and R. Joseph, (2008) “A Survey of Shape Feature Extraction Techniques,” on Pattern Recognition Techniques, Technology and Applications, Vienna: i-Tech, pp. 626. [8] M.L. Raymer, W.F. Punch, E.D. Goodman, L.A. Kuhn, A.K. Jain “Dimensionality reduction using genetic algorithms” IEEE Transactions on Evolutionary Computation, 4 (2) (2000), pp. 164–171 [9] G. Roth and M.D. Levine, ªGeometric Primitive Extraction Using a Genetic Algorithm,º IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 1, no. 9, pp. 901-905, Sept. 1994. [10] C.H. Lin, J.L. Wu “Automatic facial feature extraction by genetic algorithms” IEEE Trans. Image Process., 8 (1999), pp. 834–845 [11] Yen, G., G. and Nithianandan, N., Facial feature extraction using genetic algorithm, in: Congress on Evolutionary Computation, 2002. [12] Ho-Duck Kim, Chang-Hyun Park, Hyun-Chang Yang, KweeBo Sim. “Genetic Algorithm Based Feature Selection Method Development for Pattern Recognition”. SICE-ICASE International Joint Conference. 2006, 1020-1025. [13] A. Dacal-Nieto, E. V´azquez-Fern´andez, A. Formella, F. Martin, S. Torres- Guijarro, H. Gonz´alez-Jorge ”A genetic algorithm approach for feature selection in potatoes classification by computer vision”. Ponencia en congreso IECON 2009. [14] Burgos-Artizzu X.P., A. Ribeiro, A.Tellaeche , and G. Pajares “Optimisation of Natural Images Processing Using Different Evolutionary Algorithms”. IEEE World Congress on Computational Intelligence (WCCI 2008) / Evolutionary Computation, vol 1(1). 256-264, Hong Kong 2008. [15] M. E. Farmer and D. Shugars, “Application of genetic algorithms for wrapper-based image segmentation and classification” IEEE Congress on Evolutionary Computation, pp. 1300-1307, 2006. [16] P. S. Sandhu, I. Kaur, A. Verma, S. Jindal, I. Kaur, and S. Kumari, “Face Recognition Using Eigen face Coefficients and Principal Component Analysis,” International Journalof Electrical and Electronics Engineering, Vol. 3, No. 8, pp.498– 502, 2009. w w w. i j c s t. c o m

IJCST Vol. 5, Issue 1, Jan - March 2014

[17] Prasad, M. S. R. S., S. S. Panda, G. Deepthi, and V. Anisha. “Face Recognition Using PCA and Feed Forward Neural Networks.” International Journal of Computer Science and Telecommunications, Volume 2, Issue 8, 2011. [18] S. Cooray and N. O’Connor., “Facial feature extraction and principal component analysis for face detection in color images,” in ICIAR 2004 - International Conference on Image Analysis and Recognition, 2004. [19] Nenadic, Zoran. “Information discriminant analysis: Feature extraction with an information-theoretic objective.” Pattern Analysis and Machine Intelligence, IEEE Transactions on 29.8, 2007. [20] Weingessel, A., Natter, M. and Hornik, K.: Using independent component analysis for feature extraction and multivariate data projection In: Working Papers SFB ‘‘Adaptive information Systems and Modeling in Economics and Management Science’’, 1998. [21] Kursun, Olcay, and Ethem Alpaydin. “Canonical correlation analysis for multiview semisupervised feature extraction.” Artificial Intelligence and Soft Computing. Springer Berlin/ Heidelberg, 2010. [22] Kaur, Mandeep, Rajeev Vashisht, and Nirvair Neeru. “Recognition of Facial Expressions with principal component analysis and singular value decomposition.” International Journal of Computer Applications IJCA 9.12 : 24-28, 2010. [23] Sarvaiya, Jignesh N., Suprava Patnaik, and Kajal Kothari. “Feature Based Image Registration Using Hough Transform.” S.V. National Institute of Technology, Surat, Gujarat, India. [24] A. Nikolaidis, C. Kotropoulos, and I. Pitas, “Facial feature extraction using adaptive hough transform, template matching and active contour models,” in 13th International Conference on DSP, vol. 2, July 1997, pp. 865–868. [25] Y. Hu, B. Yin, and D. Kong, “A new facial feature extraction method based on linear combination model,” in International Conference on Web Intelligence, 2003. [26] Gupta, P., Mehrotra, H., Rattani, A., Chatterjee, A., & Kaushik, A. K.. Iris recognition using corner detection. In Proceedings of 23rd International Biometric Conference (IBC 2006), Montreal, Canada. July 2006. [27] Nagao, Kenji. “Bayesian approach with nonlinear kernels to feature extraction.” Pattern Recognition, 2004. ICPR 2004. Proceedings of the 17th International Conference on. Vol. 2. IEEE, 2004. [28] Rosenberg, Yoav, and Michael Werman. “Real-time object tracking from a moving video camera: a software approach on a PC.” Applications of Computer Vision, 1998. WACV’98. Proceedings. Fourth IEEE Workshop on. IEEE, 1998. [29] Turolla, A., L. Marchesotti, and C. S. Regazzoni. “Multicamera object tracking in video surveillance applications.” (2004): 85-90. [30] Wang, Yiwei, John F. Doherty, and Robert E. Van Dyck. “Moving object tracking in video.” Applied Imagery Pattern Recognition Workshop, 2000. Proceedings. 29th. IEEE, 2000. [31] Erdem, Cigdem Eroglu, A. Murat Tekalp, and Bülent Sankur. “Video object tracking with feedback of performance measures.” Circuits and Systems for Video Technology, IEEE Transactions on 13.4 (2003): 310-324. [32] Khire, Sourabh, and Jochen Teizer. “Object Detection and Tracking”, Springer, 2008. International Journal of Computer Science And Technology   19

IJCST Vol. 5, Issue 1, Jan - March 2014

ISSN : 0976-8491 (Online) | ISSN : 2229-4333 (Print)

[33] Klicnar, Lukáš. “Robust Detection of Moving Objects in Video”. [34] Revathi, R., and M. Hemalatha. “Certain Approach of Object Tracking using Optical Flow Techniques.” International Journal of Computer Applications 53.8 (2012). [35] Hussain, Moiz A., and G. U. Kharat. “Robust Human Motion Detection and Tracking In Dynamic Background.” International Journal of Soft Computing 2.

20

International Journal of Computer Science And Technology

w w w. i j c s t. c o m

Suggest Documents