package Ġde . h sa ug sb urg . team ul ster . so happy . analyzer . detector . smile detector impl Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . graphics . Bitmap Ċ import Ġde . h sa ug sb urg . team ul ster . so happy . analyzer . Bitmap Editor . convertTo ByteBuffer Ċ import Ġde . h sa ug sb urg . team ul ster . so happy . analyzer . detector . Sm ile Detector Ċ import Ġjava . nio . ByteBuffer Ċ Ċ /** Ċ Ġ* Ġimplementation Ġfor Ġour Ġself - trained Ġmodel . Ċ Ġ*/ Ċ class ĠSo Happy T FL ite Sm ile Detector ( activity : ĠActivity ) Ġ: ĊĠĠĠ ĠAbstract T FL ite Sm ile Detector (" model _ so _ happy . t flite ", Ġactivity ) Ġ{ ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġlabels . add (" smile ") ĊĠĠĠĠĠĠĠ Ġlabels . add (" nos m ile ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠThis Ġprivate Ġfunction Ġoverrides Ġthe Ġprepare Ġfunction Ġdeclared Ġin Ġthe ĠAbstract T FL ite Sm ile Detector ĊĠĠĠĠ Ġ* Ġabstract Ġclass . ĊĠĠĠĠ Ġ* ĠIt Ġscales Ġa Ġgiven Ġbitmap Ġand Ġpasses Ġthe Ġresult Ġto Ġthe ĠconvertTo ByteBuffer Ġfunction Ġto Ġget Ġit Ġready ĊĠĠĠĠ Ġ* Ġfor Ġprediction . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġimg Ġthe Ġcurrent Ġimage Ġwhich Ġwill Ġbe Ġprepared ĊĠĠĠĠ Ġ* Ġ@ return ĠByteBuffer ? ĊĠĠĠĠ Ġ* Ġ*/ ĊĠĠĠ Ġoverride Ġfun Ġprepare ( img : ĠBitmap ): ĠByteBuffer ? Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġscaled Bitmap Ġ= ĠBitmap . create Scaled Bitmap ( img , Ġ 6 4 , Ġ 6 4 , Ġtrue ) ĊĠĠĠĠĠĠĠ Ġreturn ĠconvertTo ByteBuffer ( scaled Bitmap ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠThis Ġfunction Ġoverrides Ġthe Ġdetect Ġfunction Ġdeclared Ġin Ġthe ĠAbstract T FL ite Sm ile Detector ĊĠĠĠĠ Ġ* Ġabstract Ġclass . ĊĠĠĠĠ Ġ* ĠIt Ġruns ĠTF Ġlite Ġdetection Ġby Ġinvoking Ġthe Ġexecute Ġmethod Ġin Ġits Ġsuper Ġclass ĊĠĠĠĠ Ġ* Ġ( Abstract T FL ite Sm ile Detector ). ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġbitmap Ġthe Ġimage Ġwhich ĠTF Ġlite Ġwill Ġbe Ġrunning Ġdetection Ġon . ĊĠĠĠĠ Ġ* Ġ@ return ĠComp anion . Sm ile Detection Result ĊĠĠĠĠ Ġ* Ġ*/ ĊĠĠĠ Ġoverride Ġfun Ġdetect ( img : ĠBitmap ): ĠSm ile Detector . Companion . Sm ile Detection Result ? Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġprediction Results : ĠArrayList < Sm ile Detector . Companion . Recognition > Ġ= Ġsuper . execute ( img ) ĊĠĠĠĠĠĠĠ Ġval Ġfirst Prediction Result Ġ= Ġprediction Results [ 0 ] ĊĠĠĠĠĠĠĠ Ġvar Ġis Sm iling Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( first Prediction Result . title Ġ== Ġ" smile " Ġ&& Ġfirst Prediction Result . confidence Ġ> Ġ 0 . 7 5 f ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Sm iling Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn ĠComp anion . Sm ile Detection Result ( is Sm iling , Ġprediction Results ) ĊĠĠĠ Ġ} Ċ } Ċ