{"id":135,"date":"2010-09-10T11:51:42","date_gmt":"2010-09-10T01:51:42","guid":{"rendered":"http:\/\/www.computer-vision-software.com\/blog\/?p=135"},"modified":"2010-09-13T15:46:25","modified_gmt":"2010-09-13T05:46:25","slug":"face-recognition","status":"publish","type":"post","link":"http:\/\/www.computer-vision-software.com\/blog\/2010\/09\/face-recognition\/","title":{"rendered":"Face Recognition"},"content":{"rendered":"<p>2D face recognition is an extensively studied, but still evolving  subject of research. Various strategies including statistical  approaches, hidden Markov models, neural networks, template based and  feature based matching have been proposed.  Here we briefly present our  implementation which is based on past research and achieves  state-of-the-art recognition performance on considerably low resolution  input facial images.<br \/>\nOur approach can be divided into three independent phases: Facial  landmarks library construction (offline), Building of facial descriptor  (once per novel image) and Facial descriptors matching.<\/p>\n<p style=\"text-align: center;\"><a onclick=\"javascript:pageTracker._trackPageview('\/outgoing\/www.computer-vision-software.com\/blog\/wp-content\/uploads\/2010\/09\/result_11.png');\"  href=\"http:\/\/www.computer-vision-software.com\/blog\/wp-content\/uploads\/2010\/09\/result_11.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-139 aligncenter\" title=\"Face recognition result on live video sequence\" src=\"http:\/\/www.computer-vision-software.com\/blog\/wp-content\/uploads\/2010\/09\/result_11.png\" alt=\"Face recognition result on live video sequence\" width=\"640\" height=\"141\" srcset=\"http:\/\/www.computer-vision-software.com\/blog\/wp-content\/uploads\/2010\/09\/result_11.png 640w, http:\/\/www.computer-vision-software.com\/blog\/wp-content\/uploads\/2010\/09\/result_11-300x66.png 300w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/a><\/p>\n<p><!--more--><br \/>\n<strong>Facial landmarks library construction<\/strong><br \/>\nA set of training images is marked by hand. Coordinates of important  facial landmarks (such as lips\u2019 corners, nose tip, etc.) are stored in a  database for further processing.<br \/>\nUsing information about landmarks position it is easy to geometrically transform and align training images.<br \/>\nIllumination correction is applied to transformed images in order to get  rid of shadows and glares and normalize overall exposure.<br \/>\nGabor jets are then extracted from normalized images in every landmark  location. Extracted jets are stored in facial landmarks library for  further using during novel images processing.<\/p>\n<p><strong>Building of facial descriptor<\/strong><br \/>\nHaving received a novel facial image we first try to locate approximate  eyes position using our hybrid method of Viola-Jones and Bayesian  classifier. The purpose why eyes coordinates are required is twofold:  they are used to geometrically wrap and align input image and also to  get initial estimate of coordinates of other facial landmarks.<br \/>\nIllumination correction and background clipping is then performed.<br \/>\nStarting from approximate eyes position and using samples from facial  landmarks library we iteratively find precise locations of all facial  landmarks on novel face.<br \/>\nFound landmarks positions are then used to extract Gabor jets and  construct informative facial descriptor. Original input image is not  required any more after this step.<\/p>\n<p><strong>Facial descriptors matching<\/strong><br \/>\nThe last and the simplest step is matching two facial descriptors which  yields a similarity measure between two faces \u2013 a real number between 0  (nothing in common) and 1 (complete match). A threshold found by  experiment is used to make decision whether the faces belong to the same  or different persons.<br \/>\nDescriptors matching is several orders of magnitude faster than  descriptor building which makes it possible to match new face against a  database of known persons in moderate time.<\/p>\n<p><strong>Some technical details<\/strong><br \/>\nWorking face size: 45&#215;45 px<br \/>\nDescriptor building time: 300ms on P4 1300 MHz (single core).<br \/>\nDescriptors matching: 2ms on P4 1300 MHz (single core).<br \/>\nRecognition rate: Feret fa\/fb: 88%, Yale Faces: 86%, Faces in wild: 73%. Both false positives and false negatives considered.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>2D face recognition is an extensively studied, but still evolving subject of research. Various strategies including statistical approaches, hidden Markov models, neural networks, template based and feature based matching have been proposed. Here we briefly present our implementation which is based on past research and achieves state-of-the-art recognition performance on considerably low resolution input facial [&hellip;]<\/p>\n","protected":false},"author":37,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[73],"tags":[87,74,36],"class_list":["post-135","post","type-post","status-publish","format-standard","hentry","category-face-recognition","tag-face-recognition","tag-gabor-wavelet","tag-object-recognition"],"_links":{"self":[{"href":"http:\/\/www.computer-vision-software.com\/blog\/wp-json\/wp\/v2\/posts\/135","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.computer-vision-software.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.computer-vision-software.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.computer-vision-software.com\/blog\/wp-json\/wp\/v2\/users\/37"}],"replies":[{"embeddable":true,"href":"http:\/\/www.computer-vision-software.com\/blog\/wp-json\/wp\/v2\/comments?post=135"}],"version-history":[{"count":0,"href":"http:\/\/www.computer-vision-software.com\/blog\/wp-json\/wp\/v2\/posts\/135\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.computer-vision-software.com\/blog\/wp-json\/wp\/v2\/media?parent=135"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.computer-vision-software.com\/blog\/wp-json\/wp\/v2\/categories?post=135"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.computer-vision-software.com\/blog\/wp-json\/wp\/v2\/tags?post=135"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}