package Ġcom . dj ang oogle . arc soft 2 x . util Ċ Ċ import Ġandroid . graphics . Rect Ċ Ċ import Ġcom . arc soft . face . Face Info Ċ Ċ /** Ċ Ġ* Ġ äºº èĦ ¸ å¤ĦçĲĨ å·¥åħ· Ċ Ġ* ĠCreated Ġby ĠD j ang oogle Ġon Ġ 2 0 1 9 / 0 4 / 0 8 Ġ 1 7 : 4 2 Ġwith ĠAndroid ĠStudio . Ċ Ġ*/ Ċ object ĠTrack Util Ġ{ ĊĊ ĉ fun Ġis Same Face ( face Similarity : ĠFloat , Ġrect 1 : ĠRect , Ġrect 2 : ĠRect ): ĠBoolean Ġ{ Ċĉ ĉ val Ġleft Ġ= ĠMath . max ( rect 1 . left , Ġrect 2 . left ) Ċĉ ĉ val Ġtop Ġ= ĠMath . max ( rect 1 . top , Ġrect 2 . top ) Ċĉ ĉ val Ġright Ġ= ĠMath . min ( rect 1 . right , Ġrect 2 . right ) Ċĉ ĉ val Ġbottom Ġ= ĠMath . min ( rect 1 . bottom , Ġrect 2 . bottom ) Ċĉ ĉ val Ġinner Area Ġ= Ġ( right Ġ- Ġleft ) Ġ* Ġ( bottom Ġ- Ġtop ) Ċĉ ĉ return Ġleft Ġ< Ġright Ġ&& Ġtop Ġ< Ġbottom Ġ&& Ġrect 2 . width (). toFloat () Ġ* Ġrect 2 . height (). toFloat () Ġ* Ġface Similarity Ġ<= Ġinner Area Ġ&& Ġrect 1 . width (). toFloat () Ġ* Ġrect 1 . height (). toFloat () Ġ* Ġface Similarity Ġ<= Ġinner Area Ċ ĉ } ĊĊ ĉ /** Ċĉ Ġ* Ġ ä¿ĿçķĻ æľĢå¤§ äºº èĦ ¸ Ċĉ Ġ*/ Ċ ĉ fun Ġkeep Max Face ( face InfoList : ĠArrayList < Face Info > ?) Ġ{ Ċĉ ĉ if Ġ( null Ġ== Ġface InfoList Ġ|| Ġface InfoList . size Ġ<= Ġ 1 ) Ġ{ Ċĉĉ ĉ return Ċĉ ĉ } Ċĉ ĉ var Ġmax Face Info Ġ= Ġface InfoList [ 0 ] Ċĉ ĉ for Ġ( face Info Ġin Ġface InfoList ) Ġ{ Ċĉĉ ĉ if Ġ( face Info . rect . width () Ġ> Ġmax Face Info . rect . width ()) Ġ{ Ċĉĉĉ ĉ max Face Info Ġ= Ġface Info Ċĉĉ ĉ } Ċĉ ĉ } Ċĉ ĉ face InfoList . clear () Ċĉ ĉ face InfoList . add ( max Face Info ) Ċ ĉ } Ċ } Ċ