Palmprnt Mnuta Pont Matchng Algorthmand GPU Applcaton 1 Beng Crmnal Scence Insttuton, Beng, 100054,Chna E-mal: wucs@sccas.cn Zhgang Lu 2 Publc Securty Bureau of Beng s Dongcheng, Beng, 100061, Chna Cagang Feng Beng Crmnal Scence Insttuton, Beng, 100054, Chna The problem of palmprnt applcaton n publc securty department s descrbed n ths paper such as large database and poor qualty of the scene palmprnt. Frstly, the computatonal complexty of palmprnt feature pont matchng algorthm s analyzed. The three-level feature ponts matchng algorthm s presented accordng to the analyss results; secondly, the workng process of the three-level feature ponts matchng algorthm s ntroduced n detal; fnally, the algorthm s transformed to GPU (Graphcs Processng Unts) parallel and the test result s gven. The GPU technology s frstly appled to the palmprnt recognton n our study. The result showed that the speed of palmprnt feature matchng compared wth others ncreased by about three tmes and the speed can ncrease to more than 15 tmes wth the GPU technology. CENet2015 12-13 September 2015 Shangha, Chna 1 Speaker 2 Ths research funded by Beng Muncpal Scence and Technology Proect (No:Z121100000312099). Here and now, I d lke to extend my sncere apprecatons to all those who have helped me make ths thess possble and better. Copyrght owned by the author(s) under the terms of the Creatve Commons Attrbuton-NonCommercal-NoDervatves 4.0 Internatonal Lcense (CC BY-NC-ND 4.0). http://pos.sssa.t/
1. Introducton Wth the development of bometrc dentfcaton technology, the palmprnt dentfcaton technology has attracted more and more attentons and researches. The palmprnt recognton and matchng have played an mportant role n the case detecton, forensc evdence. It plays a complementary role wth the fngerprnt recognton and has a broad prospect for applcaton. The palmprnt dentfcaton technology has hgher credblty than other bometrc dentfcaton technologes. In recent years, many scholars have studed the palmprnt automatc dentfcaton and matchng and put forward a varety of feature recognton methods [1, 2] such as the method based on structure feature [3], the method based on statstcal feature, the method based on subspace [4] and the method based on codng [5]. The above method s the palmprnt mage recognton method manly based on good mage qualty and low resoluton; but n the crmnal nvestgaton feld, we need to buld the offlne hgh resoluton palmprnt recognton method because the palmprnt database tends to be bgger n the feld of crmnal nvestgaton. The capablty of palmprnt dentfcaton should satsfy more than one mllon palmprnts at least. For the mperfect palmprnt collected n cases, the palmprnt feature extracton and matchng method base on onlne low resoluton can't meet the demand; therefore, the palmprnt recognton research based on hgh resoluton s necesstated n the feld of crmnal nvestgaton [1, 6]. In 2009, Galton[7] studed the palmprnt features and put forward the mnuta features. Amng at the dfference between palmprnt and fngerprnt, Anl K. Jan [8] studed on palmprnt feature matchng n-depth. Researchers of the Nan Ka Unversty [6] have carred out systemc researches on palmprnt feature recognton and matchng algorthm and then proposed the soluton; but t stll needs to be mproved whether the matchng average speed can overcome maxmum database. Ths paper ams to the research of feature pont matchng base on hgh resoluton palmprnt n crmnal nvestgaton feld. Wth the several-level matchng mode, we put forward a set of relatvely complete palmprnt feature pont matchng method. Wth the GPU parallel renovated, the speed of palmprnt features matchng algorthm program can be effectvely rased. 2. Palmprnt Mnuta Feature Matchng Algorthm 2.1 Exstng Algorthm Computatonal Complexty In ths paper, the palmprnt mnuta feature ponts nvolve the startng pont, the end pont, the branch pont and the combne pont. These mnuta feature ponts have formed the combnaton of palmprnt characterstc. The coordnates and drecton as defned s the same as the fngerprnt, refer to the mnstry of publc securty, or 774.5 GA - 2008 [9]. The number of palmprnt feature pont s more than the fngerprnt, whch s about 1000 or so. Wth the smple feature matchng method, we use a sngle feature pont calculaton one tme as the basc m! computng unt. The computatonal complexty s m( m -1)...( m - n + 1) = (m n), n ( m - n)! whch, m, n refer to the number of feature ponts both match sde. Hong Kong Polytechnc Unversty [10], Nanka Unversty [11], and other nsttutons researchers proposed local structure matchng method smlar to the fngerprnt matchng method. Small local features were seemed as a whole to expect a match obect n the target area. Its advantage s represented n ts greatly reducton of the computatonal complexty. The amount of local structure matchng calculaton s m* n * p! = mnp!, p s the number of feature ponts of local structure. Usually, we take p = 8. We can get rd of the most part wth low smlarty matchng ponts by local structure calculaton. Suppose that average flterng rate of local structure matchng s a(a << 1), t ndcates that the number of may be used n the ntal calbraton center for the reduced a 2
tmes. It doesn t necessary to calculate p ponts that have matched. The algorthm ust only calculates ( m - p)! a ( m - n)! tme. From the above, we can obtan ( m - p )! m a + mnp! <<!. Through ( m - n)! ( m - n)! local structural matchng method, the amount of calculaton can be greatly reduced, especally when large amount of data s calculated. A large number of unrelated palmprnts can be avoded through the local smlarty threshold assessment n local structure matchng phase. The number of global matchng palmprnts wll be reduced greatly. It wll enable more matchng calculaton be executed n Unt of tme. 2.2 Three-levels Matchng Algorthm The local structure of the buldng s a neghborhood structure of a feature pont as the center buldng, as shown n Fg. 1. The exstence of the local structure s unversal and the vast maorty of feature ponts can be bult on local structure. As all ponts n the local structure wll match each other, the amount of calculaton shall stll be large. Ths paper proposes Level 3 matchng algorthm. It further reduces the computatonal complexty by addng specal pont couple matchng before the local structure matchng. The concrete method s to use the palmprnt adacent lnes parallel to the lne to the general approach, so the near feature ponts s also much close to 0 degree (parallel) or 180 degrees (TIT FOR TAT) drecton, as shown n Fg. 2. Defne two ponts to meet dstance threshold and angle parallel as a specal pont couple. At the matchng procedure, the specfc ponts couple matchng wll be executed n palmprnt frstly. 3
As the palm mastod lne s relatvely smooth, mostly drecton of near feature ponts are often relatvely close and the elgble ponts are wdespread n palmprnt. Due to the adacent close dstance, two feature ponts were left and recognzed at the same tme frequently. Complete palmprnt usually can be extracted to specal pont couple about 100 to 300. As to two dentcal palmprnts, there are a plenty of specal pont couple that can be effectvely matched n an effectve area. Because two ponts are near to each other, the error of relatve poston and angles of two ponts wll be smaller n the feature extracton. By the two approachng ponts of parallel or TIT FOR TAT to compose specal pont couple, we could quckly determne whch correspondng pont has a possble matchng n the ntal phase matchng. Furthermore, most of useless calculaton wll be abandoned. The specal ponts couple ncrease the rapd mode above orgnal secondary matchng mode, so ts essence does not mprove the precson of the algorthm. In the two dentcal palmprnts, the probablty of the same extracton are not matchng an extracton that almost does not exst, so the specal pont couple matchng ust flter the large amounts useless data n the calculaton of the late match. On the premse, the mode could not affect the orgnal algorthm precson. It wll reduce the amount of calculaton. Known amount of the secondary local structure matchng s C = mnp!. Gven each feature pont, the specal pont couple can be found. The amount of specal pont couple s C1 = m n. Gven the pass rate s k (k < 1), the amount of local structure matchng s C2 = kmnp! In the three-level matchng, the total amount of above two parts s C C mn ( kp ) 1 + 2 = 1 +!. At that p!? 1, the effcency depends on the flterng rate k, k < 0.1 n general. We can calculate that the computng speed ncrease rate s C p! = > 10 ( 1!) n ths secton. C1+ C 2 + kp 3 Palmprnt Mnuta Feature Level 3 Matchng Algorthm 3.1 Basc Process of Algorthm A. read sample palmprnt data, calculate specal pont couple n t, calculate the local structure, convert the polar coordnates and pretreat such as follows: B. read the archves palmprnt data and pretreat such data C. calculate the smlarty between the sample ponts couple and the archves ponts couple D. calculate the smlarty between the sample local structures n lne wth the smlarty threshold mnuta ponts and the neghborhood mnuta ponts of the correspondng archves mnuta pont, get the canddate s correspondng ponts n lne wth the local structure smlarty threshold. E. calculate the compatblty weght among the canddate s correspondng pont sets accordng to the method of competton and weghtng each other. It can be concluded the pont sets of fulfllng threshold requrements. If the pont set cannot be fulflled, end the cycle. F. calculate the global mnute ponts matchng of above canddate s pont sets and obtan two palmprnt fnal smlarty scores G. read the archves palmprnt n a loop manner tll the end of matchng; sort the canddate queue accordng to the smlarty scores. 4
3.2 Specal Ppont Couple Matchng At frst, specal pont couple could be calculated. By searchng the neghborng ponts of each mnuta feature ponts, obtan specal pont couples of the satsfed threshold requrements. Two feature ponts as gven s ( m, m ) and the coordnates are ( x1, y1, q1) ( x2, y2, q 2), n whch, x y q s rectangular coordnate system poston and the angle parameters. If t can meet the requrements of ( x - x ) + ( y - y ) 20 ; 2 2 1 2 1 2 In ths way, and are the specal pont couple. We consderm of specal pont couple as the benchmark, convert the rectangular to the polar coordnates and obtan the m, m polar coordnates. The polar coordnates of m s In the above formula, r s the dstance between feature ponts and the coordnate system center, s the drecton of feature ponts and postve angle coordnate system, a s the center of feature pont and coordnate system and coordnate postve Angle. m, m ponts are algned. The dfference degree of specal pont couple s expressed as the ' dfference of two coordnates: ' o ' ' o ' D r = r - r ; D = mn( -,360 - - ) ; Da = mn( a - a,360 - a - a ) If ' the canddate s correspondng ponts. 3.3 Local Structure Matchng, the correspondng ponts. ' ' ( m, m ) We use a regular sze as Radus to calculate the respectve local structure of each canddate s correspondng ponts. P, was gven as the matchng local structure of samples palmprnt and archves. I and are respectve adacent ponts n two local structures, the expresson s m = ( r,,a ), m = ( r,, a ). Local structure dfference degree s descrbed as follows: P P P P o D r = r - r ; mn(,360 - o D = P - P - ) ; Da = mn( a,360 - P - a ap - a ) ; P the local structure smlarty s: s,among them, rthreshold 2 threshold 2 athreshold 2 pont of the local structure. We assume threshold 2 s the dfference degree threshold n the correspondng r =10, threshold 2 = 20, a threshold 2 =20. If the 5
value s not 0, the smlarty wll be marked down. If the two local structures have n correspondng ponts of matchng, n s the natural number, greater than 2, and then the smlarty of the local structure s shown as follows:. 3.4 Method of the Canddate s Correspondng Pont Competton Weghtng As the smlarty s ncompatblty between several canddate local structures, we use the competton weght calculaton method to calculate the smlarty weghted among each correspondng local structure group and obtan weghts of each local structure. As shown n Fg. 3. In Fg. 3a, a sample local structure may be several archves of local structure. In Fg. 3b, the two correspondng local structure groups can realze the matchng when they rotate the same correspondng angle; thus the correspondng two center ponts have hgh compatblty n the two local structures. a. Local Structure Matchng b. Compatble Local Structure Fgure 3: Example of Competon and Weghtng Pars1 (P1, 1), Pars2 (P2 and 2) are two groups matchng local structures. The dfference degree between such two groups local structures can be expressed by the dfference degree of two center ponts; the dfference degree parameters of two local structure groups are represented as ( Dq, Dx, D y ) ; therefore, the smlarty between P1 and P2 s expressed as: (, ) V P P 1 2 0 Dq > I or D x > X or D y > Y = I=30, X=20, Y=20; 1 otherwse VS( P, ) s defned as the local structure competton smlarty evaluaton value, that s the weght of the local structure. Thus. Among the parameters, n s a matchng number of local structure, C s constant, whch takes C=0.5; If, the local structure that I pont was used as the center pont n lne wth the smlarty flter condton. Use I pont and the correspondng pont n archves as the canddate s calbraton pont. If there are multple VS( P, ) threshold, we should determne the mutual V ( P, P ). If V ( P, P ) 1 2 1 2 whch are greater than the 1, the multple local structure can be seemed as one group. The maxmum VS( P, ) would be taken as a calbraton center. 6
3.5 Global Matchng One of the calbraton center correspondng ponts s (,, ) A x y q, (,, ) B x y q. Accordng to the dfference of coordnate and angle, the global mnute ponts coordnate s transformed by rotaton and translaton. As to each mnute ponts P ( x, y, q ) n the palmprnt, upon transformaton, a new feature pont s shown as follows. G s Eucld dstance dfference of correspondng ponts ' ' ' ' m ( x, y, d ) m ( x, y, d ) between sample palmprnt and archve palmprnt through global matchng. Then, G = C ( x - x ) + ( y - y ) + ( d - d ). Defne the constant C=10; add the dfferences of all ' 2 ' 2 ' 2 1 1 correspondng ponts, we can obtan a global dfference G, G 4. GPU Acceleraton of Algorthm n = G. The characterstcs of mutually ndependent calculaton of multple palmprnt and multple feature ponts can ensure mnmze communcaton of parallel computng; thus we try to transform the above algorthm on GPU, whch manly ams at the steps of large calculaton amount, ncludng specal pont couple matchng and the local structure matchng. Specal pont matchng and local structure matchng, n addton to algorthm nstructons, the nput and output of GPU, data loadng and dstrbuton are the same. GPU calculaton man steps are shown as follows: A. set the presettng value of data sze, used for launch a GPU kernel every tme. Accordng to the presettng value, dvde the palmprnt data block. B. load the archve palmprnt data blocks n memory. C. copy the palmprnt from memory to the global memory of GPU devce. D. store archve data blocks n texture memory of GPU to mprove the use of GPU for palmprnt matchng speed. E. launch GPU computaton. Calculate the coordnate s transformaton of mnute ponts and the dfference of specal pont couples (or the dfference of local structure).; end the GPU computng F. determne the canddate pont of next step calculaton n CPU accordng to the calculaton dfference degree. = 1 5. Test and Results 5.1 Accuracy Tßest We cut out 5000,20000,100000,5000000, four groups data as a test template lbrary. From the dataset of matched, we selected 20 scene matched wth archves and 20 archves matched wth archves. 7
Data sze Rankng 1 Rankng 10 Rankng 50 Rankng 100 Rankng>100 5000 18 1 1 2*10 4 17 2 1 1*10 5 13 4 2 1 5*10 5 8 5 3 1 3 Table 1: Accuracy Test of Scene Matchng wth Archves Data sze Rankng 1 Rankng 10 Rankng 50 Rankng 100 Rankng>100 5000 20 2*10 4 18 2 1*10 5 17 2 1 5*10 5 17 1 1 1 Table 2: Accuracy Test of Archves Matchng wth Archves From the above tables, the accuracy of algorthm has a lttle ncrease than the former twolevel algorthm. 5.2 Speed Test We used more than 640 thousand people palmprnt database collected from the publc securty organ of Beng Cty for the speed testng and the results are as follows. 5.2.1 Computng Tme Test of the Secondary Algorthm and Three-Stage Algorthm CPU verson of three-stage algorthm compares wth secondary algorthm that unused specal pont match. Accordng to dfferent sze of palmprnt computaton tme see the table below. data sze 100 1000 2000 10000 50000 200000 600000 Secondary(s) 1.635 15.842 28.954 150.078 680.350 2735.137 8004.064 three-stage(s) 0.540 5.049 9.786 48.095 235.057 936.962 2807.838 speed up rato 3.027 3.138 2.959 3.120 2.894 2.919 2.851 Table 3: Computaton Tme of Two-Level and Three-Level Feature Matchng Algorthms From the above table, usng specal pont couple to match can sharply ncrease matchng speed, the speed up rato of the dfferent scale data approach lnear. 5.2.2 GPU Speed up Rato Test Relatve to CPU Test the CPU verson and GPU verson of the palm three-level matchng algorthm. The GPU verson s Nvda GTX580 and the CPU verson s Intel core 5. Usng the same sample palmprnt to compare wth dfferent szes of palmprnt database. data sze 100 1000 2000 10000 50000 200000 600000 CPU(s) 0.540 5.049 9.786 48.095 235.057 936.962 2807.838 GTX580(s) 0.638 2.229 3.053 6.336 14.953 56.874 170.257 speed up rato 0.85 2.27 3.21 7.59 14.73 16.47 16.492 Table 4: Computaton Tme of CPU and GPU Algorthm 8
From the above table, the algorthm uses GPU acceleraton wth the ncrease of data sze; and the speed up rato can be greatly mproved. 6. Concluson Ths algorthm has hgh accuracy for mnute feature ponts matchng based on the hgh resoluton palmprnt mage. The three-level matchng algorthm compared wth the orgnal algorthm can mprove the matchng speed. It can meet the large capacty of palmprnt database comparson demanded by the publc securty organ and other specal department. Ths algorthm s sutable for large-scale parallel computng, especally for the mass thread of parallel computng based on GPU. The algorthm based on GPU whle compared wth the algorthm based on CPU, can ncrease the speed sgnfcantly under the same accuracy. References [1] G. W. Yuan, X. Y. We, D. Xu. Palmprnt-Based Personal Verfcaton[J]. Journal of Computer- Aded Desgn & Computer Graphcs, 17(12), 2590-2595(2005). (In Chnese) [2] F. Yue, W. M. Zuo, D. P. Zhang. Survey of Palmprnt Recognton Algorthms[J]. ACTA AUTOMATICA SINICA, 36(3): 353-365(2010). [3] W. M.Yu, J. Y. Zhao, M. L, et al. Revew of Bometrc Identfcaton Technology Based on Characterstcs of the Whole Hand[J]. Journal of Dalan Natonaltes Unversty, 14(1): 19-23(2012). (In Chnese) [4] D. Zhang, G. M. Lu, K.Adams, et all. Onlne Palmprnt Identfcaton System for Cvl Applcatons[J]. Journal of Computer Scence and Technology, 20(1): 70-76(2005). (In Chnese) [5] X. Wang, L. Le, M. Z. Wang. Palmprnt verfcaton based on 2D Gabor wavelet and pulsecoupled neural network[j]. Knowledge-Based Systems, 27(3): 451-455(2012). (In Chnese) [6] Z. C. Tan. Research on offlne palmprnt feature extracton and matchng algorthm[d]. Tann: Nanka Unversty( 2010). (In Chnese) [7] Galton. NSTC Subcommttee on Bometrcs[N]. http://www.b omemcscatalog.org,2009. [8] A. K. Jan, J. J. Feng. Latent Palmprnt Matchng[J], IEEE trans. PAMI, 33(1). 88-100(2011). [9] GA 774.5-2008, Fngerprnt feature specfcaton(part 5: Way to mark a mnuta on a fngerprnt) [S]. (In Chnese) [10] D. P. Zhang, W. Shu. Two novel charactefstcs n palmprtt verfcaton: datum pont nvarance and lne feature matchng[j]. Pattem Recognton, 32 (01): 691-702(1999). (In Chnese) [11] G. S. Sh,. Lang, Z. C. Tan. The research on hgh resoluton offlne palmprnt matchng algorthm[c]. IEEE, CRC, HongKong. pp,809-813(2010). 9