From dc5144c6ff31b27633c09b85121f31e0c6c70fd5 Mon Sep 17 00:00:00 2001 From: Scott Klum Date: Wed, 17 Sep 2014 19:34:54 -0400 Subject: [PATCH] Added STASM 4.1.0 code --- 3rdparty/stasm4.0.0/stasm/CMakeLists.txt | 13 +++++++++---- 3rdparty/stasm4.0.0/stasm/include/asm.h | 153 --------------------------------------------------------------------------------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/include/basedesc.h | 60 ------------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/classic/README.txt | 3 --- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p00.mh | 39 --------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p01.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p02.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p03.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p04.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p05.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p06.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p07.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p08.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p09.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p10.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p11.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p12.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p13.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p14.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p15.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p00.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p01.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p02.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p03.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p04.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p05.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p06.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p07.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p08.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p09.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p10.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p11.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p12.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p13.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p14.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p15.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p00.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p01.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p02.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p03.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p04.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p05.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p06.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p07.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p08.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p09.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p10.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p11.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p12.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p13.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p14.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p15.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p00.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p01.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p02.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p03.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p04.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p05.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p06.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p07.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p08.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p09.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p10.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p11.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p12.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p13.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p14.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p15.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p16.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p17.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p18.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p19.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p20.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p21.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p22.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p23.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p24.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p25.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p26.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p27.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p28.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p29.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p30.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p31.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p32.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p33.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p34.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p35.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p36.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p37.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p38.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p39.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p40.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p41.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p42.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p43.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p44.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p45.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p46.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p47.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p48.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p49.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p50.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p51.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p52.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p53.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p54.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p55.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p56.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p57.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p58.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p59.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p60.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p61.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p62.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p63.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p64.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p65.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p66.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p67.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p68.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p69.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p70.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p71.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p72.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p73.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p74.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p75.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p76.mh | 37 ------------------------------------- 3rdparty/stasm4.0.0/stasm/include/classic/yaw00_shapemodel.mh | 414 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/classicdesc.h | 59 ----------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/include/convshape.h | 17 ----------------- 3rdparty/stasm4.0.0/stasm/include/err.h | 16 ---------------- 3rdparty/stasm4.0.0/stasm/include/eyedet.h | 24 ------------------------ 3rdparty/stasm4.0.0/stasm/include/eyedist.h | 19 ------------------- 3rdparty/stasm4.0.0/stasm/include/facedet.h | 56 -------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/include/faceroi.h | 45 --------------------------------------------- 3rdparty/stasm4.0.0/stasm/include/hat.h | 50 -------------------------------------------------- 3rdparty/stasm4.0.0/stasm/include/hat/README.txt | 3 --- 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p16.mh | 84 ------------------------------------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p17.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p18.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p19.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p20.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p21.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p22.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p23.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p24.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p25.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p26.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p27.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p28.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p29.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p30.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p31.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p32.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p33.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p34.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p35.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p36.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p37.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p38.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p39.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p40.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p41.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p42.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p43.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p44.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p45.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p46.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p47.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p48.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p49.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p50.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p51.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p52.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p53.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p54.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p55.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p56.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p57.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p58.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p59.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p60.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p61.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p62.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p63.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p64.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p65.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p66.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p67.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p68.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p69.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p70.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p71.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p72.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p73.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p74.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p75.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p76.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p16.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p17.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p18.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p19.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p20.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p21.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p22.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p23.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p24.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p25.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p26.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p27.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p28.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p29.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p30.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p31.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p32.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p33.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p34.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p35.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p36.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p37.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p38.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p39.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p40.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p41.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p42.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p43.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p44.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p45.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p46.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p47.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p48.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p49.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p50.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p51.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p52.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p53.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p54.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p55.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p56.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p57.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p58.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p59.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p60.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p61.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p62.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p63.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p64.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p65.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p66.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p67.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p68.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p69.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p70.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p71.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p72.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p73.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p74.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p75.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p76.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p16.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p17.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p18.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p19.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p20.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p21.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p22.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p23.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p24.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p25.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p26.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p27.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p28.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p29.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p30.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p31.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p32.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p33.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p34.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p35.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p36.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p37.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p38.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p39.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p40.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p41.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p42.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p43.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p44.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p45.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p46.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p47.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p48.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p49.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p50.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p51.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p52.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p53.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p54.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p55.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p56.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p57.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p58.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p59.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p60.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p61.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p62.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p63.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p64.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p65.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p66.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p67.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p68.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p69.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p70.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p71.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p72.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p73.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p74.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p75.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p76.mh | 54 ------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/hatdesc.h | 68 -------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/include/initasm.h | 17 ----------------- 3rdparty/stasm4.0.0/stasm/include/landmarks.h | 122 -------------------------------------------------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/include/misc.h | 444 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/include/pinstart.h | 25 ------------------------- 3rdparty/stasm4.0.0/stasm/include/print.h | 20 -------------------- 3rdparty/stasm4.0.0/stasm/include/shape17.h | 62 -------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/include/shapehacks.h | 20 -------------------- 3rdparty/stasm4.0.0/stasm/include/shapemod.h | 71 ----------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/include/startshape.h | 38 -------------------------------------- 3rdparty/stasm4.0.0/stasm/include/stasm.h | 19 ------------------- 3rdparty/stasm4.0.0/stasm/include/stasm_landmarks.h | 93 --------------------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/include/stasm_lib.h | 153 --------------------------------------------------------------------------------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/include/stasm_lib_ext.h | 29 ----------------------------- 3rdparty/stasm4.0.0/stasm/include/stasmcascadeclassifier.h | 27 --------------------------- 3rdparty/stasm4.0.0/stasm/include/stasmhash.h | 8 -------- 3rdparty/stasm4.0.0/stasm/include/yaw00.h | 638 -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/src/asm.cpp | 251 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/src/classicdesc.cpp | 275 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/src/convshape.cpp | 232 ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/src/err.cpp | 148 ---------------------------------------------------------------------------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/src/eyedet.cpp | 720 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/src/eyedist.cpp | 138 ------------------------------------------------------------------------------------------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/src/facedet.cpp | 221 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/src/faceroi.cpp | 213 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/src/hat.cpp | 434 -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/src/hatdesc.cpp | 146 -------------------------------------------------------------------------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/src/initasm.cpp | 35 ----------------------------------- 3rdparty/stasm4.0.0/stasm/src/landmarks.cpp | 82 ---------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/src/misc.cpp | 838 ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/src/pinstart.cpp | 307 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/src/print.cpp | 92 -------------------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/src/shape17.cpp | 218 -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/src/shapehacks.cpp | 130 ---------------------------------------------------------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/src/shapemod.cpp | 132 ------------------------------------------------------------------------------------------------------------------------------------ 3rdparty/stasm4.0.0/stasm/src/startshape.cpp | 469 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/src/stasm_lib.cpp | 339 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 3rdparty/stasm4.0.0/stasm/stasm/include/asm.h | 156 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/atface.h | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/basedesc.h | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p00.mh | 39 +++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p01.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p02.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p03.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p04.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p05.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p06.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p07.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p08.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p09.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p10.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p11.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p12.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p13.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p14.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p15.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p00.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p01.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p02.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p03.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p04.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p05.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p06.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p07.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p08.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p09.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p10.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p11.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p12.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p13.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p14.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p15.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p00.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p01.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p02.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p03.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p04.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p05.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p06.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p07.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p08.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p09.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p10.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p11.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p12.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p13.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p14.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p15.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p00.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p01.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p02.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p03.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p04.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p05.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p06.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p07.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p08.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p09.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p10.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p11.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p12.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p13.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p14.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p15.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p16.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p17.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p18.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p19.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p20.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p21.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p22.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p23.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p24.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p25.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p26.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p27.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p28.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p29.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p30.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p31.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p32.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p33.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p34.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p35.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p36.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p37.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p38.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p39.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p40.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p41.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p42.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p43.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p44.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p45.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p46.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p47.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p48.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p49.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p50.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p51.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p52.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p53.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p54.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p55.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p56.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p57.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p58.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p59.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p60.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p61.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p62.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p63.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p64.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p65.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p66.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p67.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p68.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p69.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p70.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p71.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p72.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p73.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p74.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p75.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p76.mh | 37 +++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classic/yaw00_shapemodel.mh | 414 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/classicdesc.h | 66 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/convshape.h | 18 ++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/err.h | 17 +++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/eyedet.h | 35 +++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/eyedist.h | 19 +++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/facedet.h | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/faceroi.h | 45 +++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat.h | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p16.mh | 84 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p17.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p18.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p19.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p20.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p21.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p22.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p23.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p24.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p25.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p26.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p27.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p28.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p29.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p30.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p31.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p32.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p33.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p34.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p35.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p36.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p37.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p38.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p39.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p40.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p41.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p42.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p43.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p44.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p45.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p46.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p47.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p48.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p49.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p50.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p51.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p52.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p53.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p54.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p55.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p56.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p57.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p58.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p59.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p60.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p61.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p62.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p63.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p64.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p65.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p66.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p67.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p68.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p69.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p70.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p71.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p72.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p73.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p74.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p75.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p76.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p16.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p17.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p18.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p19.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p20.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p21.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p22.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p23.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p24.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p25.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p26.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p27.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p28.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p29.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p30.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p31.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p32.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p33.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p34.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p35.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p36.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p37.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p38.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p39.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p40.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p41.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p42.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p43.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p44.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p45.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p46.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p47.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p48.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p49.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p50.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p51.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p52.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p53.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p54.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p55.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p56.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p57.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p58.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p59.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p60.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p61.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p62.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p63.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p64.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p65.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p66.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p67.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p68.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p69.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p70.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p71.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p72.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p73.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p74.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p75.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p76.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p16.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p17.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p18.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p19.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p20.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p21.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p22.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p23.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p24.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p25.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p26.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p27.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p28.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p29.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p30.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p31.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p32.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p33.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p34.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p35.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p36.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p37.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p38.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p39.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p40.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p41.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p42.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p43.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p44.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p45.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p46.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p47.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p48.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p49.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p50.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p51.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p52.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p53.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p54.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p55.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p56.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p57.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p58.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p59.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p60.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p61.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p62.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p63.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p64.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p65.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p66.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p67.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p68.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p69.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p70.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p71.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p72.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p73.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p74.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p75.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p76.mh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/hatdesc.h | 72 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/initasm.h | 17 +++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/landmarks.h | 45 +++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/landtab_muct77.h | 94 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/misc.h | 505 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/pinstart.h | 25 +++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/print.h | 22 ++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/shape17.h | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/shapehacks.h | 20 ++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/shapemod.h | 86 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/startshape.h | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/stasm.h | 21 +++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/stasm_landmarks.h | 93 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/stasm_lib.h | 150 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/stasm_lib_ext.h | 29 +++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/stasmcascadeclassifier.h | 27 +++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/stasmhash.h | 8 ++++++++ 3rdparty/stasm4.0.0/stasm/stasm/include/yaw00.h | 638 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/src/asm.cpp | 265 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/src/classicdesc.cpp | 289 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/src/convshape.cpp | 345 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/src/err.cpp | 152 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/src/eyedet.cpp | 882 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/src/eyedist.cpp | 140 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/src/facedet.cpp | 224 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/src/faceroi.cpp | 203 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/src/hat.cpp | 434 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/src/hatdesc.cpp | 152 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/src/initasm.cpp | 35 +++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/src/landmarks.cpp | 93 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/src/misc.cpp | 966 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/src/pinstart.cpp | 298 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/src/print.cpp | 144 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/src/shape17.cpp | 329 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/src/shapehacks.cpp | 130 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/src/shapemod.cpp | 143 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/src/startshape.cpp | 582 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3rdparty/stasm4.0.0/stasm/stasm/src/stasm_lib.cpp | 336 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 717 files changed, 23664 insertions(+), 22736 deletions(-) delete mode 100755 3rdparty/stasm4.0.0/stasm/include/asm.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/basedesc.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/README.txt delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p00.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p01.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p02.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p03.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p04.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p05.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p06.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p07.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p08.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p09.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p10.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p11.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p12.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p13.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p14.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p15.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p00.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p01.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p02.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p03.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p04.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p05.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p06.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p07.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p08.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p09.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p10.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p11.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p12.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p13.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p14.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p15.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p00.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p01.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p02.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p03.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p04.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p05.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p06.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p07.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p08.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p09.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p10.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p11.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p12.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p13.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p14.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p15.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p00.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p01.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p02.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p03.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p04.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p05.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p06.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p07.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p08.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p09.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p10.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p11.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p12.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p13.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p14.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p15.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p16.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p17.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p18.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p19.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p20.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p21.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p22.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p23.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p24.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p25.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p26.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p27.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p28.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p29.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p30.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p31.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p32.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p33.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p34.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p35.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p36.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p37.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p38.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p39.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p40.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p41.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p42.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p43.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p44.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p45.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p46.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p47.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p48.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p49.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p50.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p51.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p52.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p53.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p54.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p55.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p56.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p57.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p58.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p59.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p60.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p61.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p62.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p63.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p64.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p65.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p66.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p67.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p68.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p69.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p70.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p71.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p72.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p73.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p74.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p75.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p76.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classic/yaw00_shapemodel.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/classicdesc.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/convshape.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/err.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/eyedet.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/eyedist.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/facedet.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/faceroi.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/README.txt delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p16.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p17.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p18.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p19.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p20.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p21.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p22.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p23.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p24.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p25.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p26.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p27.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p28.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p29.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p30.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p31.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p32.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p33.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p34.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p35.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p36.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p37.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p38.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p39.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p40.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p41.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p42.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p43.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p44.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p45.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p46.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p47.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p48.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p49.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p50.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p51.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p52.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p53.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p54.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p55.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p56.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p57.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p58.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p59.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p60.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p61.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p62.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p63.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p64.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p65.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p66.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p67.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p68.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p69.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p70.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p71.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p72.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p73.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p74.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p75.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p76.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p16.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p17.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p18.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p19.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p20.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p21.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p22.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p23.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p24.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p25.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p26.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p27.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p28.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p29.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p30.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p31.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p32.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p33.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p34.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p35.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p36.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p37.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p38.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p39.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p40.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p41.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p42.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p43.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p44.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p45.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p46.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p47.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p48.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p49.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p50.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p51.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p52.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p53.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p54.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p55.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p56.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p57.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p58.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p59.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p60.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p61.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p62.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p63.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p64.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p65.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p66.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p67.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p68.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p69.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p70.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p71.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p72.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p73.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p74.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p75.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p76.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p16.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p17.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p18.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p19.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p20.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p21.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p22.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p23.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p24.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p25.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p26.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p27.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p28.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p29.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p30.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p31.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p32.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p33.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p34.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p35.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p36.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p37.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p38.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p39.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p40.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p41.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p42.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p43.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p44.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p45.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p46.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p47.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p48.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p49.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p50.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p51.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p52.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p53.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p54.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p55.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p56.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p57.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p58.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p59.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p60.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p61.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p62.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p63.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p64.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p65.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p66.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p67.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p68.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p69.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p70.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p71.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p72.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p73.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p74.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p75.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p76.mh delete mode 100755 3rdparty/stasm4.0.0/stasm/include/hatdesc.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/initasm.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/landmarks.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/misc.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/pinstart.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/print.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/shape17.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/shapehacks.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/shapemod.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/startshape.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/stasm.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/stasm_landmarks.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/stasm_lib.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/stasm_lib_ext.h delete mode 100644 3rdparty/stasm4.0.0/stasm/include/stasmcascadeclassifier.h delete mode 100644 3rdparty/stasm4.0.0/stasm/include/stasmhash.h delete mode 100755 3rdparty/stasm4.0.0/stasm/include/yaw00.h delete mode 100755 3rdparty/stasm4.0.0/stasm/src/asm.cpp delete mode 100755 3rdparty/stasm4.0.0/stasm/src/classicdesc.cpp delete mode 100755 3rdparty/stasm4.0.0/stasm/src/convshape.cpp delete mode 100755 3rdparty/stasm4.0.0/stasm/src/err.cpp delete mode 100755 3rdparty/stasm4.0.0/stasm/src/eyedet.cpp delete mode 100755 3rdparty/stasm4.0.0/stasm/src/eyedist.cpp delete mode 100755 3rdparty/stasm4.0.0/stasm/src/facedet.cpp delete mode 100755 3rdparty/stasm4.0.0/stasm/src/faceroi.cpp delete mode 100755 3rdparty/stasm4.0.0/stasm/src/hat.cpp delete mode 100755 3rdparty/stasm4.0.0/stasm/src/hatdesc.cpp delete mode 100755 3rdparty/stasm4.0.0/stasm/src/initasm.cpp delete mode 100755 3rdparty/stasm4.0.0/stasm/src/landmarks.cpp delete mode 100755 3rdparty/stasm4.0.0/stasm/src/misc.cpp delete mode 100755 3rdparty/stasm4.0.0/stasm/src/pinstart.cpp delete mode 100755 3rdparty/stasm4.0.0/stasm/src/print.cpp delete mode 100755 3rdparty/stasm4.0.0/stasm/src/shape17.cpp delete mode 100755 3rdparty/stasm4.0.0/stasm/src/shapehacks.cpp delete mode 100755 3rdparty/stasm4.0.0/stasm/src/shapemod.cpp delete mode 100755 3rdparty/stasm4.0.0/stasm/src/startshape.cpp delete mode 100755 3rdparty/stasm4.0.0/stasm/src/stasm_lib.cpp create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/asm.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/atface.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/basedesc.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p00.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p01.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p02.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p03.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p04.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p05.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p06.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p07.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p08.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p09.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p10.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p11.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p12.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p13.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p14.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p15.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p00.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p01.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p02.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p03.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p04.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p05.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p06.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p07.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p08.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p09.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p10.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p11.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p12.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p13.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p14.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p15.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p00.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p01.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p02.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p03.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p04.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p05.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p06.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p07.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p08.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p09.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p10.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p11.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p12.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p13.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p14.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p15.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p00.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p01.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p02.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p03.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p04.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p05.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p06.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p07.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p08.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p09.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p10.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p11.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p12.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p13.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p14.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p15.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p16.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p17.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p18.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p19.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p20.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p21.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p22.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p23.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p24.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p25.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p26.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p27.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p28.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p29.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p30.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p31.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p32.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p33.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p34.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p35.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p36.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p37.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p38.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p39.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p40.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p41.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p42.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p43.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p44.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p45.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p46.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p47.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p48.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p49.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p50.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p51.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p52.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p53.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p54.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p55.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p56.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p57.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p58.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p59.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p60.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p61.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p62.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p63.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p64.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p65.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p66.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p67.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p68.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p69.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p70.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p71.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p72.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p73.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p74.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p75.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p76.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classic/yaw00_shapemodel.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/classicdesc.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/convshape.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/err.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/eyedet.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/eyedist.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/facedet.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/faceroi.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p16.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p17.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p18.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p19.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p20.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p21.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p22.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p23.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p24.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p25.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p26.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p27.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p28.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p29.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p30.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p31.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p32.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p33.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p34.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p35.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p36.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p37.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p38.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p39.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p40.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p41.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p42.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p43.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p44.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p45.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p46.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p47.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p48.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p49.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p50.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p51.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p52.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p53.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p54.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p55.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p56.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p57.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p58.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p59.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p60.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p61.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p62.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p63.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p64.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p65.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p66.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p67.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p68.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p69.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p70.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p71.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p72.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p73.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p74.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p75.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p76.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p16.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p17.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p18.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p19.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p20.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p21.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p22.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p23.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p24.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p25.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p26.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p27.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p28.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p29.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p30.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p31.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p32.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p33.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p34.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p35.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p36.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p37.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p38.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p39.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p40.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p41.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p42.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p43.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p44.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p45.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p46.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p47.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p48.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p49.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p50.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p51.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p52.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p53.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p54.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p55.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p56.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p57.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p58.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p59.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p60.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p61.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p62.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p63.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p64.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p65.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p66.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p67.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p68.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p69.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p70.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p71.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p72.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p73.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p74.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p75.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p76.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p16.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p17.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p18.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p19.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p20.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p21.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p22.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p23.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p24.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p25.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p26.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p27.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p28.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p29.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p30.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p31.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p32.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p33.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p34.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p35.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p36.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p37.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p38.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p39.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p40.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p41.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p42.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p43.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p44.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p45.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p46.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p47.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p48.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p49.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p50.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p51.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p52.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p53.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p54.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p55.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p56.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p57.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p58.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p59.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p60.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p61.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p62.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p63.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p64.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p65.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p66.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p67.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p68.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p69.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p70.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p71.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p72.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p73.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p74.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p75.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p76.mh create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/hatdesc.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/initasm.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/landmarks.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/landtab_muct77.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/misc.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/pinstart.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/print.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/shape17.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/shapehacks.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/shapemod.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/startshape.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/stasm.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/stasm_landmarks.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/stasm_lib.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/stasm_lib_ext.h create mode 100644 3rdparty/stasm4.0.0/stasm/stasm/include/stasmcascadeclassifier.h create mode 100644 3rdparty/stasm4.0.0/stasm/stasm/include/stasmhash.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/include/yaw00.h create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/src/asm.cpp create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/src/classicdesc.cpp create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/src/convshape.cpp create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/src/err.cpp create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/src/eyedet.cpp create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/src/eyedist.cpp create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/src/facedet.cpp create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/src/faceroi.cpp create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/src/hat.cpp create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/src/hatdesc.cpp create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/src/initasm.cpp create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/src/landmarks.cpp create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/src/misc.cpp create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/src/pinstart.cpp create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/src/print.cpp create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/src/shape17.cpp create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/src/shapehacks.cpp create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/src/shapemod.cpp create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/src/startshape.cpp create mode 100755 3rdparty/stasm4.0.0/stasm/stasm/src/stasm_lib.cpp diff --git a/3rdparty/stasm4.0.0/stasm/CMakeLists.txt b/3rdparty/stasm4.0.0/stasm/CMakeLists.txt index cc1bea4..b2cdca4 100644 --- a/3rdparty/stasm4.0.0/stasm/CMakeLists.txt +++ b/3rdparty/stasm4.0.0/stasm/CMakeLists.txt @@ -1,9 +1,12 @@ # Stasm CMakeLists -aux_source_directory(src SRC) -include_directories(include) +aux_source_directory(stasm/src STASM_SRC) +include_directories(stasm/include) -add_library(stasm SHARED ${SRC}) +#aux_source_directory(tasm/src TASM_SRC) +#include_directories(tasm/include) + +add_library(stasm SHARED ${STASM_SRC} ${TASM_SRC}) qt5_use_modules(stasm ${QT_DEPENDENCIES}) set_target_properties(stasm PROPERTIES @@ -15,5 +18,7 @@ set_target_properties(stasm PROPERTIES target_link_libraries(stasm ${OpenCV_LIBS} ${Qt5Core_QTMAIN_LIBRARIES}) -install(DIRECTORY include/ DESTINATION include/stasm) +install(DIRECTORY stasm/include/ DESTINATION include/stasm) +install(DIRECTORY tasm/include/ DESTINATION include/tasm) + install(TARGETS stasm RUNTIME DESTINATION bin LIBRARY DESTINATION lib ARCHIVE DESTINATION lib) diff --git a/3rdparty/stasm4.0.0/stasm/include/asm.h b/3rdparty/stasm4.0.0/stasm/include/asm.h deleted file mode 100755 index 2500b39..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/asm.h +++ /dev/null @@ -1,153 +0,0 @@ -// asm.h: Active Shape Model class -// -// Freeing memory: In the current implementation, explicit memory release -// on Mod destruction is unneeded (because the MAT buffer pointers in Mod, -// ShapeMod, and DescMod point to constant data). If you add a new descriptor -// model, you may need to add destructors. Although even if that new class -// fails to release memory it's probably not serious, because the ASM -// model(s) are only destructed once, at program termination. -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_ASM_H -#define STASM_ASM_H - -#include "misc.h" -#include "basedesc.h" -#include "shapemod.h" - -namespace stasm -{ -static const int EYEMOUTH_DIST = 100; // scale image to this before ASM search starts - -static const double PYR_RATIO = 2; // scale image by 2 at each pyramid level - -static const int N_PYR_LEVS = 4; // number of levs in image pyramid - -static const int SHAPEMODEL_ITERS = 4; // shape model iterations per pyr level - -//----------------------------------------------------------------------------- - -class Mod // An ASM model for finding landmarks. -{ // If multiple model Stasm, will use a separate Mod for each yaw range. -public: - Shape ModSearch_( // returns coords of the facial landmarks - const Shape& startshape, // in: startshape roughly positioned on face - const Image& img, // in: grayscale image (typically just ROI) - const Shape* pinnedshape=NULL) // in: pinned landmarks, NULL if nothing pinned - const; - - const Shape ConformShapeToMod_Pinned_( // wrapper around the func in ShapeMod - const Shape& shape, // in - const Shape& pinnedshape) // in - const - { - VEC b(NSIZE(shapemod_.eigvals_), 1, 0.); // dummy variable for call below - return shapemod_.ConformShapeToMod_Pinned_(b, shape, 0, pinnedshape); - } - - // readonly access to some private vars - ESTART Estart_(void) const { return estart_; } - const char* DataDir_(void) const { return datadir_.c_str(); } - const Shape MeanShape_(void) const { return shapemod_.meanshape_; } - -private: - const vec_vec_BaseDescMod DescMods_( // utility for Mod constructor - const BaseDescMod** const descmods_arg, // in: descriptor models - int ndescmods) // in: sanity check - { - CV_Assert(ndescmods == stasm_NLANDMARKS * N_PYR_LEVS); - - vec_vec_BaseDescMod descmods(N_PYR_LEVS); - - for (int ilev = 0; ilev < N_PYR_LEVS; ilev++) - { - descmods[ilev].resize(stasm_NLANDMARKS); - for (int i = 0; i < stasm_NLANDMARKS; i++) - descmods[ilev][i] = - descmods_arg[ilev * stasm_NLANDMARKS + i]; - } - return descmods; - } - -public: - Mod(EYAW eyaw, // constructor - ESTART estart, - string datadir, - Shape meanshape, - VEC eigvals, - MAT eigvecs, - int neigs, - double bmax, - unsigned hackbits, - const BaseDescMod** descmods, - int ndescmods) - - : eyaw_(eyaw), - estart_(estart), - datadir_(datadir), - shapemod_(meanshape, eigvals, eigvecs, neigs, bmax, hackbits), - descmods_(DescMods_(descmods, ndescmods)) - { - CV_Assert(eyaw == EYAW_45 || eyaw == EYAW_22 || eyaw == EYAW00 || - eyaw == EYAW22 || eyaw == EYAW45); - CV_Assert(estart == ESTART_RECT_ONLY || estart == ESTART_EYES || - estart == ESTART_EYE_AND_MOUTH); - } - - virtual ~Mod() {} // destructor - -private: // all data remains constant after Mod construction - - const EYAW eyaw_; // model is for this yaw range - // e.g. EYAW00 is frontal model - - const ESTART estart_; // use the mouth/eyes to position the start shape? - - const string datadir_; // directory of face detector files - - const ShapeMod shapemod_; // the shape model - - const vec_vec_BaseDescMod descmods_; - // descriptor mods, one for each point at each pyr lev - // index as [ilev][ipoint] - - void SuggestShape_( - Shape& shape, // io: points will be moved to give best desc matches - int ilev, // in: pyramid level (0 is full size) - const Image& img, // in: image scaled to this pyramid level - const Shape& pinned, // in: if no rows then no pinned landmarks, else - // points except those equal to 0,0 are pinned - const Hat &hat, - StasmHash &hash) - const; - - void LevSearch_( // do an ASM search at one level in the image pyr - Shape& shape, // io: the face shape for this pyramid level - int ilev, // in: pyramid level (0 is full size) - const Image& img, // in: image scaled to this pyramid level - const Shape& pinnedshape) // in: if no rows then no pinned landmarks, else - // points except those equal to 0,0 are pinned - const; - - DISALLOW_COPY_AND_ASSIGN(Mod); - -}; // end class Mod - -typedef vector vec_Mod; // vector of ASM models, one for each yaw range - -//----------------------------------------------------------------------------- - -static inline double GetPyrScale( // return 1 for pyr lev 0, .5 for pyr lev 1, etc. - int ilev) // in: pyramid level (0 is full size) -{ - return 1 / pow(PYR_RATIO, ilev); -} - -// TODO This definition doesn't belong here. -int EyawAsModIndex( // note: returns a negative index for left facing yaws - EYAW eyaw, // in - const vec_Mod& mods); // in: a vector of models, one for each yaw range - -} // namespace stasm -#endif // STASM_ASM_H diff --git a/3rdparty/stasm4.0.0/stasm/include/basedesc.h b/3rdparty/stasm4.0.0/stasm/include/basedesc.h deleted file mode 100755 index 8c1b218..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/basedesc.h +++ /dev/null @@ -1,60 +0,0 @@ -// basedesc.h: descriptor model base class -// -// A "descriptor model" tells you how to use the given -// descriptor to suggest the best position of a landscape. -// -// Stasm currently uses two types of descriptors, and thus two descriptor -// model classes: ClassicDescMod and HatDescMod. Each of these classes -// provide a descriptor matching function, DescSearch_, which searches around -// the current position of a landmark, looking for the best new position. -// -// About BaseDescMod: We need a vector of descriptor models to specify how -// to search by matching against a descriptor at each landmark. Some -// landmarks use ClassicDescMods; other use HatDescMods. We thus need a -// vector of heterogeneous objects. But C++ doesn't support vectors of -// heterogeneous objects. So instead we use a vector of pointers to -// BaseDescMod, with the actual descriptor model classes (ClassicDescMod -// and HatDescMod) deriving from BaseDescMod. -// -// Memory release: Explicit destructors unneeded, see note in header of asm.h. -// -// DescSearch_ and concurrency: If OpenMP is enabled, DescSearch_ will be -// called concurrently for multiple points. (Each call will have a -// different value of x and y.) Thus for the OpenMP code to work -// correctly, DescSearch_ and its callees must not modify any variables that -// are not on the stack unless the variable is protected by a critical region. -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_BASEDESC_H -#define STASM_BASEDESC_H - -#include "hat.h" -#include "stasmhash.h" - -namespace stasm -{ -class BaseDescMod // abstract base class for all descriptor models -{ -public: - virtual void DescSearch_( // search in area around the current point - double& x, // io: (in: old posn of landmark, out: new posn) - double& y, // io - const Image& img, // in: image scaled to this pyramid level - const Shape& shape, // in: current position of the landmarks - int ilev, // in: pyramid level (0 is full size) - int ipoint, // in: index of the current landmark - const Hat &hat, - StasmHash &hash) - const = 0; - - virtual ~BaseDescMod() {} // destructor -}; - -// vec_vec_BaseDescMod contains the descriptor models, one pointer -// for each landmark at each pyramid level, index as [ilev][ipoint] - -typedef vector > vec_vec_BaseDescMod; - -} // namespace stasm -#endif // STASM_BASEDESC_H diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/README.txt b/3rdparty/stasm4.0.0/stasm/include/classic/README.txt deleted file mode 100755 index 8f25657..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/README.txt +++ /dev/null @@ -1,3 +0,0 @@ -These are machine generated fitness function files for classical 1D descriptors. - -milbo berea feb 2013 diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p00.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p00.mh deleted file mode 100755 index eb45bc1..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p00.mh +++ /dev/null @@ -1,39 +0,0 @@ -// classic_yaw00_lev0_p00: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV0_P00_MH -#define STASM_CLASSIC_YAW00_LEV0_P00_MH - -#include "classicdesc.h" - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev0_p00[9] = -{ - -0.11784, -0.01371, 0.16775, 0.53279, 0.96244, 1.17735, 1.04922, 0.79604, 0.55585 -}; - -static const double yaw00_cov_lev0_p00[9*9] = -{ - 7319, -3927, 639, 278, -155, 302, -164, -55, -177, - -3927, 8975, -3681, 456, 211, -373, 203, -224, 0, - 639, -3681, 7440, -3620, 680, 409, -364, 118, -87, - 278, 456, -3620, 7043, -3578, 594, 695, -162, -16, - -155, 211, 680, -3578, 6448, -3282, 173, 897, 105, - 302, -373, 409, 594, -3282, 7091, -3247, -356, 796, - -164, 203, -364, 695, 173, -3247, 8097, -3379, -577, - -55, -224, 118, -162, 897, -356, -3379, 10000, -4240, - -177, 0, -87, -16, 105, 796, -577, -4240, 9150 -}; - -static const ClassicDescMod classic_yaw00_lev0_p00(9, yaw00_prof_lev0_p00, yaw00_cov_lev0_p00); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV0_P00_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p01.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p01.mh deleted file mode 100755 index 429f66d..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p01.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev0_p01: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV0_P01_MH -#define STASM_CLASSIC_YAW00_LEV0_P01_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev0_p01[9] = -{ - -0.55709, -0.62218, -0.73901, -0.84811, -0.8212, -0.5362, -0.13273, 0.16447, 0.23618 -}; - -static const double yaw00_cov_lev0_p01[9*9] = -{ - 8503, -2928, -70, 335, -81, 334, -44, -88, -92, - -2928, 10000, -3225, -160, 806, -366, 152, 29, -53, - -70, -3225, 8327, -2963, -82, 624, -199, 23, 33, - 335, -160, -2963, 6442, -2635, 391, 220, -190, 66, - -81, 806, -82, -2635, 5063, -2681, 660, 87, -75, - 334, -366, 624, 391, -2681, 4486, -2556, 736, 16, - -44, 152, -199, 220, 660, -2556, 4401, -2449, 730, - -88, 29, 23, -190, 87, 736, -2449, 4409, -1928, - -92, -53, 33, 66, -75, 16, 730, -1928, 3209 -}; - -static const ClassicDescMod classic_yaw00_lev0_p01(9, yaw00_prof_lev0_p01, yaw00_cov_lev0_p01); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV0_P01_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p02.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p02.mh deleted file mode 100755 index 354831f..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p02.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev0_p02: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV0_P02_MH -#define STASM_CLASSIC_YAW00_LEV0_P02_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev0_p02[9] = -{ - -0.46758, -0.51589, -0.58473, -0.62932, -0.5476, -0.27196, 0.03831, 0.23125, 0.28348 -}; - -static const double yaw00_cov_lev0_p02[9*9] = -{ - 9884, -2937, 167, 113, -14, 145, 31, -36, -49, - -2937, 10000, -2672, -106, 236, 55, -15, -39, 52, - 167, -2672, 8025, -2601, -94, 347, -104, 42, 14, - 113, -106, -2601, 5803, -2304, 224, 164, -55, -50, - -14, 236, -94, -2304, 4194, -2082, 393, 22, 11, - 145, 55, 347, 224, -2082, 3700, -2037, 512, -12, - 31, -15, -104, 164, 393, -2037, 3883, -2032, 580, - -36, -39, 42, -55, 22, 512, -2032, 4033, -1698, - -49, 52, 14, -50, 11, -12, 580, -1698, 3178 -}; - -static const ClassicDescMod classic_yaw00_lev0_p02(9, yaw00_prof_lev0_p02, yaw00_cov_lev0_p02); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV0_P02_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p03.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p03.mh deleted file mode 100755 index 1460e68..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p03.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev0_p03: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV0_P03_MH -#define STASM_CLASSIC_YAW00_LEV0_P03_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev0_p03[9] = -{ - -0.36232, -0.44056, -0.5194, -0.58006, -0.55515, -0.30484, 0.02184, 0.13327, 0.10078 -}; - -static const double yaw00_cov_lev0_p03[9*9] = -{ - 10000, -1918, -358, -72, 0, 68, -2, -30, -2, - -1918, 9141, -1849, -333, 92, 99, 59, -2, -105, - -358, -1849, 7110, -1992, -183, 206, -21, -23, 28, - -72, -333, -1992, 4680, -1604, 15, 204, -85, -21, - 0, 92, -183, -1604, 3018, -1364, 146, 173, -39, - 68, 99, 206, 15, -1364, 2461, -1293, 138, 106, - -2, 59, -21, 204, 146, -1293, 2939, -1455, 252, - -30, -2, -23, -85, 173, 138, -1455, 3870, -1516, - -2, -105, 28, -21, -39, 106, 252, -1516, 3498 -}; - -static const ClassicDescMod classic_yaw00_lev0_p03(9, yaw00_prof_lev0_p03, yaw00_cov_lev0_p03); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV0_P03_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p04.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p04.mh deleted file mode 100755 index 1645d77..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p04.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev0_p04: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV0_P04_MH -#define STASM_CLASSIC_YAW00_LEV0_P04_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev0_p04[9] = -{ - -0.40612, -0.42722, -0.52165, -0.5951, -0.56834, -0.34196, 0.04945, 0.19288, 0.15374 -}; - -static const double yaw00_cov_lev0_p04[9*9] = -{ - 9849, -1340, -179, -85, 70, 194, -30, -93, 41, - -1340, 10000, -1698, 124, -111, 38, 31, 100, 20, - -179, -1698, 9275, -1556, -8, -22, 140, -72, 156, - -85, 124, -1556, 8003, -2018, 263, 9, -67, 35, - 70, -111, -8, -2018, 5659, -1909, 374, 10, 30, - 194, 38, -22, 263, -1909, 4107, -1664, 369, 11, - -30, 31, 140, 9, 374, -1664, 3887, -1671, 341, - -93, 100, -72, -67, 10, 369, -1671, 4884, -1844, - 41, 20, 156, 35, 30, 11, 341, -1844, 4505 -}; - -static const ClassicDescMod classic_yaw00_lev0_p04(9, yaw00_prof_lev0_p04, yaw00_cov_lev0_p04); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV0_P04_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p05.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p05.mh deleted file mode 100755 index c9a5567..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p05.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev0_p05: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV0_P05_MH -#define STASM_CLASSIC_YAW00_LEV0_P05_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev0_p05[9] = -{ - -0.93464, -0.87412, -0.82745, -0.64282, -0.2781, 0.21829, 0.51325, 0.48599, 0.39543 -}; - -static const double yaw00_cov_lev0_p05[9*9] = -{ - 10000, -1565, 179, 570, -32, -36, -346, -420, -473, - -1565, 9934, -1654, 66, 437, -256, -29, -377, -178, - 179, -1654, 9503, -2093, 149, 239, -160, -177, -301, - 570, 66, -2093, 8615, -2874, 646, 154, -41, -151, - -32, 437, 149, -2874, 7816, -2967, 731, 325, 148, - -36, -256, 239, 646, -2967, 6917, -2534, 762, 306, - -346, -29, -160, 154, 731, -2534, 7206, -2695, 853, - -420, -377, -177, -41, 325, 762, -2695, 8588, -2778, - -473, -178, -301, -151, 148, 306, 853, -2778, 7749 -}; - -static const ClassicDescMod classic_yaw00_lev0_p05(9, yaw00_prof_lev0_p05, yaw00_cov_lev0_p05); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV0_P05_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p06.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p06.mh deleted file mode 100755 index f9ee033..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p06.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev0_p06: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV0_P06_MH -#define STASM_CLASSIC_YAW00_LEV0_P06_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev0_p06[9] = -{ - -0.90116, -0.91007, -0.93894, -0.85435, -0.6009, -0.05043, 0.52768, 0.72951, 0.64498 -}; - -static const double yaw00_cov_lev0_p06[9*9] = -{ - 8943, -2317, -634, 998, 81, 89, -409, -212, -488, - -2317, 9389, -2148, -313, 877, -353, 284, -586, -17, - -634, -2148, 9587, -2393, -139, 621, -330, -267, -332, - 998, -313, -2393, 10000, -3197, 403, -44, -54, -379, - 81, 877, -139, -3197, 8997, -3703, 1076, -83, -146, - 89, -353, 621, 403, -3703, 7537, -3917, 1513, 230, - -409, 284, -330, -44, 1076, -3917, 7070, -3556, 1356, - -212, -586, -267, -54, -83, 1513, -3556, 7118, -2756, - -488, -17, -332, -379, -146, 230, 1356, -2756, 5847 -}; - -static const ClassicDescMod classic_yaw00_lev0_p06(9, yaw00_prof_lev0_p06, yaw00_cov_lev0_p06); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV0_P06_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p07.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p07.mh deleted file mode 100755 index 9106566..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p07.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev0_p07: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV0_P07_MH -#define STASM_CLASSIC_YAW00_LEV0_P07_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev0_p07[9] = -{ - -0.90984, -0.8783, -0.84623, -0.7259, -0.36567, 0.16721, 0.49, 0.50289, 0.42589 -}; - -static const double yaw00_cov_lev0_p07[9*9] = -{ - 10000, -1260, -189, 887, -67, -101, -128, -412, -516, - -1260, 9687, -1421, -261, 620, -210, -228, -163, -492, - -189, -1421, 9387, -1696, -138, 308, -190, -230, -245, - 887, -261, -1696, 9348, -2731, 419, 219, -144, -245, - -67, 620, -138, -2731, 7781, -2803, 688, 171, 50, - -101, -210, 308, 419, -2803, 6616, -2558, 836, 387, - -128, -228, -190, 219, 688, -2558, 6936, -2647, 917, - -412, -163, -230, -144, 171, 836, -2647, 7997, -2589, - -516, -492, -245, -245, 50, 387, 917, -2589, 7453 -}; - -static const ClassicDescMod classic_yaw00_lev0_p07(9, yaw00_prof_lev0_p07, yaw00_cov_lev0_p07); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV0_P07_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p08.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p08.mh deleted file mode 100755 index 686c53d..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p08.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev0_p08: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV0_P08_MH -#define STASM_CLASSIC_YAW00_LEV0_P08_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev0_p08[9] = -{ - -0.37596, -0.43371, -0.50515, -0.56638, -0.59835, -0.41746, -0.04217, 0.13387, 0.15238 -}; - -static const double yaw00_cov_lev0_p08[9*9] = -{ - 9356, -1473, 144, -257, -83, 210, 57, -126, 124, - -1473, 10000, -1588, 92, -13, -24, 155, -22, -29, - 144, -1588, 9468, -1491, 65, 43, -10, 169, 97, - -257, 92, -1491, 8644, -1667, 48, 85, -95, -46, - -83, -13, 65, -1667, 6571, -1911, 364, 6, 8, - 210, -24, 43, 48, -1911, 4162, -1716, 398, 10, - 57, 155, -10, 85, 364, -1716, 3833, -1690, 366, - -126, -22, 169, -95, 6, 398, -1690, 4575, -1728, - 124, -29, 97, -46, 8, 10, 366, -1728, 4216 -}; - -static const ClassicDescMod classic_yaw00_lev0_p08(9, yaw00_prof_lev0_p08, yaw00_cov_lev0_p08); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV0_P08_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p09.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p09.mh deleted file mode 100755 index 7aebbe1..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p09.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev0_p09: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV0_P09_MH -#define STASM_CLASSIC_YAW00_LEV0_P09_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev0_p09[9] = -{ - -0.337, -0.4048, -0.51864, -0.61179, -0.60885, -0.39567, -0.09897, 0.07234, 0.11089 -}; - -static const double yaw00_cov_lev0_p09[9*9] = -{ - 10000, -2010, -139, -158, -42, 82, 33, -16, 18, - -2010, 9516, -1712, -238, 113, -84, 139, 21, -29, - -139, -1712, 8376, -1583, -279, 168, 35, -15, 10, - -158, -238, -1583, 6121, -1710, -96, 286, -83, -31, - -42, 113, -279, -1710, 3284, -1432, 156, 109, -37, - 82, -84, 168, -96, -1432, 2365, -1238, 157, 82, - 33, 139, 35, 286, 156, -1238, 2658, -1311, 238, - -16, 21, -15, -83, 109, 157, -1311, 3337, -1404, - 18, -29, 10, -31, -37, 82, 238, -1404, 3105 -}; - -static const ClassicDescMod classic_yaw00_lev0_p09(9, yaw00_prof_lev0_p09, yaw00_cov_lev0_p09); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV0_P09_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p10.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p10.mh deleted file mode 100755 index 7b739eb..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p10.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev0_p10: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV0_P10_MH -#define STASM_CLASSIC_YAW00_LEV0_P10_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev0_p10[9] = -{ - -0.45226, -0.49094, -0.57295, -0.62894, -0.59532, -0.38842, -0.10524, 0.11116, 0.22676 -}; - -static const double yaw00_cov_lev0_p10[9*9] = -{ - 9433, -2529, 58, -75, 157, 48, 107, 8, -25, - -2529, 10000, -2579, 82, 55, 58, 71, -70, 38, - 58, -2579, 8961, -2244, 4, 146, 19, -18, 167, - -75, 82, -2244, 6772, -2470, 167, 236, -52, -49, - 157, 55, 4, -2470, 4640, -2209, 410, 66, -60, - 48, 58, 146, 167, -2209, 3660, -1920, 364, 51, - 107, 71, 19, 236, 410, -1920, 3397, -1796, 499, - 8, -70, -18, -52, 66, 364, -1796, 3691, -1564, - -25, 38, 167, -49, -60, 51, 499, -1564, 2853 -}; - -static const ClassicDescMod classic_yaw00_lev0_p10(9, yaw00_prof_lev0_p10, yaw00_cov_lev0_p10); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV0_P10_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p11.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p11.mh deleted file mode 100755 index fc24625..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p11.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev0_p11: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV0_P11_MH -#define STASM_CLASSIC_YAW00_LEV0_P11_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev0_p11[9] = -{ - -0.51035, -0.5573, -0.65784, -0.80491, -0.86598, -0.68945, -0.34286, 0.03568, 0.18886 -}; - -static const double yaw00_cov_lev0_p11[9*9] = -{ - 8164, -2881, -105, 271, -68, 319, 58, 46, -37, - -2881, 10000, -2684, -95, 282, -111, 177, -133, 58, - -105, -2684, 8107, -2657, 194, 295, -177, 206, -42, - 271, -95, -2657, 6438, -2492, 229, 418, -264, 111, - -68, 282, 194, -2492, 4459, -2197, 472, 128, -105, - 319, -111, 295, 229, -2197, 3655, -1962, 542, 15, - 58, 177, -177, 418, 472, -1962, 3196, -1833, 583, - 46, -133, 206, -264, 128, 542, -1833, 3265, -1513, - -37, 58, -42, 111, -105, 15, 583, -1513, 2446 -}; - -static const ClassicDescMod classic_yaw00_lev0_p11(9, yaw00_prof_lev0_p11, yaw00_cov_lev0_p11); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV0_P11_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p12.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p12.mh deleted file mode 100755 index f537b5f..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p12.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev0_p12: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV0_P12_MH -#define STASM_CLASSIC_YAW00_LEV0_P12_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev0_p12[9] = -{ - -0.32226, -0.45395, -0.64439, -0.91073, -1.15151, -1.18397, -0.78182, -0.3074, -0.00799 -}; - -static const double yaw00_cov_lev0_p12[9*9] = -{ - 8275, -3970, -416, 169, 151, 179, 114, -74, -45, - -3970, 10000, -3575, -128, 212, 33, 94, -75, -69, - -416, -3575, 9570, -3344, -146, 717, -165, 110, -17, - 169, -128, -3344, 6957, -2520, 178, 493, -225, 39, - 151, 212, -146, -2520, 5151, -2139, 251, 346, -146, - 179, 33, 717, 178, -2139, 3809, -1846, 274, 120, - 114, 94, -165, 493, 251, -1846, 3846, -2120, 522, - -74, -75, 110, -225, 346, 274, -2120, 4278, -2032, - -45, -69, -17, 39, -146, 120, 522, -2032, 3604 -}; - -static const ClassicDescMod classic_yaw00_lev0_p12(9, yaw00_prof_lev0_p12, yaw00_cov_lev0_p12); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV0_P12_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p13.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p13.mh deleted file mode 100755 index c58a3b5..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p13.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev0_p13: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV0_P13_MH -#define STASM_CLASSIC_YAW00_LEV0_P13_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev0_p13[9] = -{ - -0.61604, -0.62305, -0.6267, -0.58765, -0.57605, -0.58816, -0.60888, -0.59273, -0.57288 -}; - -static const double yaw00_cov_lev0_p13[9*9] = -{ - 6679, -1528, -9, -159, -115, 125, 163, 154, 185, - -1528, 8633, -1689, 330, -176, -192, 29, -113, 60, - -9, -1689, 9471, -1514, 50, -120, -272, 11, -73, - -159, 330, -1514, 9332, -1739, 178, -33, -97, -250, - -115, -176, 50, -1739, 10000, -1708, 29, -393, -286, - 125, -192, -120, 178, -1708, 9432, -1832, 87, -481, - 163, 29, -272, -33, 29, -1832, 8180, -1763, -61, - 154, -113, 11, -97, -393, 87, -1763, 7842, -1939, - 185, 60, -73, -250, -286, -481, -61, -1939, 6442 -}; - -static const ClassicDescMod classic_yaw00_lev0_p13(9, yaw00_prof_lev0_p13, yaw00_cov_lev0_p13); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV0_P13_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p14.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p14.mh deleted file mode 100755 index 417c400..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p14.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev0_p14: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV0_P14_MH -#define STASM_CLASSIC_YAW00_LEV0_P14_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev0_p14[9] = -{ - -0.67506, -0.66369, -0.61873, -0.61629, -0.63249, -0.64093, -0.63732, -0.67448, -0.67292 -}; - -static const double yaw00_cov_lev0_p14[9*9] = -{ - 5728, -1713, 633, -245, -213, 170, 32, 159, 271, - -1713, 7913, -2491, 934, -187, -231, 0, 334, -49, - 633, -2491, 9048, -2710, 934, -245, -113, -234, 88, - -245, 934, -2710, 10000, -2717, 1015, -252, -128, -100, - -213, -187, 934, -2717, 9830, -2667, 964, -69, -365, - 170, -231, -245, 1015, -2667, 9078, -2816, 793, -321, - 32, 0, -113, -252, 964, -2816, 8810, -2643, 264, - 159, 334, -234, -128, -69, 793, -2643, 8133, -2160, - 271, -49, 88, -100, -365, -321, 264, -2160, 6145 -}; - -static const ClassicDescMod classic_yaw00_lev0_p14(9, yaw00_prof_lev0_p14, yaw00_cov_lev0_p14); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV0_P14_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p15.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p15.mh deleted file mode 100755 index 329d748..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev0_p15.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev0_p15: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV0_P15_MH -#define STASM_CLASSIC_YAW00_LEV0_P15_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev0_p15[9] = -{ - -0.60196, -0.61116, -0.56915, -0.56914, -0.56312, -0.57481, -0.55917, -0.56422, -0.55659 -}; - -static const double yaw00_cov_lev0_p15[9*9] = -{ - 6565, -1154, 27, -374, 48, -55, -47, 73, 127, - -1154, 8112, -1277, 244, -283, -77, -276, -2, 104, - 27, -1277, 8803, -1468, 107, -253, -27, -255, -40, - -374, 244, -1468, 9433, -1534, 174, -433, -127, -112, - 48, -283, 107, -1534, 10000, -1651, 146, -480, -244, - -55, -77, -253, 174, -1651, 9115, -1914, 40, -514, - -47, -276, -27, -433, 146, -1914, 8340, -1943, 22, - 73, -2, -255, -127, -480, 40, -1943, 8177, -1707, - 127, 104, -40, -112, -244, -514, 22, -1707, 6245 -}; - -static const ClassicDescMod classic_yaw00_lev0_p15(9, yaw00_prof_lev0_p15, yaw00_cov_lev0_p15); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV0_P15_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p00.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p00.mh deleted file mode 100755 index 23a0b54..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p00.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev1_p00: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV1_P00_MH -#define STASM_CLASSIC_YAW00_LEV1_P00_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev1_p00[9] = -{ - -0.26552, -0.25836, -0.14524, 0.30515, 1.31126, 1.48416, 0.82177, 0.41147, 0.23978 -}; - -static const double yaw00_cov_lev1_p00[9*9] = -{ - 4045, -1362, 689, -10, 151, 13, -53, -167, -109, - -1362, 4666, -1690, 587, -202, 37, -248, -146, -12, - 689, -1690, 4109, -1547, 674, -453, 115, -154, -167, - -10, 587, -1547, 2861, -1290, 842, -516, 161, -55, - 151, -202, 674, -1290, 2243, -1341, 1064, -279, 148, - 13, 37, -453, 842, -1341, 3629, -2663, 1002, 50, - -53, -248, 115, -516, 1064, -2663, 7484, -4277, 417, - -167, -146, -154, 161, -279, 1002, -4277, 10000, -3097, - -109, -12, -167, -55, 148, 50, 417, -3097, 6236 -}; - -static const ClassicDescMod classic_yaw00_lev1_p00(9, yaw00_prof_lev1_p00, yaw00_cov_lev1_p00); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV1_P00_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p01.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p01.mh deleted file mode 100755 index 6c4230e..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p01.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev1_p01: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV1_P01_MH -#define STASM_CLASSIC_YAW00_LEV1_P01_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev1_p01[9] = -{ - -0.58928, -0.59011, -0.66712, -0.87982, -1.14676, -0.64987, 0.1479, 0.26249, 0.15874 -}; - -static const double yaw00_cov_lev1_p01[9*9] = -{ - 8018, -3475, 50, 203, 324, 99, 10, -139, 22, - -3475, 10000, -3190, 618, 102, 147, -90, 7, -116, - 50, -3190, 8961, -2913, 795, -57, 65, -111, 22, - 203, 618, -2913, 5508, -1731, 715, -298, 104, -38, - 324, 102, 795, -1731, 2195, -848, 439, -222, 93, - 99, 147, -57, 715, -848, 1202, -603, 331, -26, - 10, -90, 65, -298, 439, -603, 1307, -568, 307, - -139, 7, -111, 104, -222, 331, -568, 1566, -465, - 22, -116, 22, -38, 93, -26, 307, -465, 1412 -}; - -static const ClassicDescMod classic_yaw00_lev1_p01(9, yaw00_prof_lev1_p01, yaw00_cov_lev1_p01); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV1_P01_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p02.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p02.mh deleted file mode 100755 index f862757..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p02.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev1_p02: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV1_P02_MH -#define STASM_CLASSIC_YAW00_LEV1_P02_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev1_p02[9] = -{ - -0.53443, -0.53225, -0.59414, -0.73731, -0.84331, -0.3396, 0.27334, 0.28559, 0.14275 -}; - -static const double yaw00_cov_lev1_p02[9*9] = -{ - 8299, -2665, 149, 190, 132, 154, 15, -83, 35, - -2665, 10000, -2781, 528, 36, 165, -43, -26, -34, - 149, -2781, 8973, -2314, 463, 4, 54, 14, 72, - 190, 528, -2314, 6097, -1581, 562, -214, 0, -24, - 132, 36, 463, -1581, 2105, -895, 452, -168, 83, - 154, 165, 4, 562, -895, 1283, -699, 328, -39, - 15, -43, 54, -214, 452, -699, 1647, -670, 343, - -83, -26, 14, 0, -168, 328, -670, 1994, -531, - 35, -34, 72, -24, 83, -39, 343, -531, 1931 -}; - -static const ClassicDescMod classic_yaw00_lev1_p02(9, yaw00_prof_lev1_p02, yaw00_cov_lev1_p02); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV1_P02_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p03.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p03.mh deleted file mode 100755 index 3494879..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p03.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev1_p03: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV1_P03_MH -#define STASM_CLASSIC_YAW00_LEV1_P03_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev1_p03[9] = -{ - -0.3615, -0.39704, -0.48617, -0.68868, -0.84047, -0.37107, 0.13433, 0.09121, 0.0192 -}; - -static const double yaw00_cov_lev1_p03[9*9] = -{ - 7761, -2345, 127, 76, 15, 60, 24, 33, -35, - -2345, 10000, -2305, 91, 41, 31, 119, 29, -56, - 127, -2305, 9790, -1898, 281, -37, 14, 8, 32, - 76, 91, -1898, 6152, -1444, 492, -195, 56, -49, - 15, 41, 281, -1444, 1902, -800, 370, -144, 33, - 60, 31, -37, 492, -800, 1151, -649, 281, 27, - 24, 119, 14, -195, 370, -649, 1981, -736, 299, - 33, 29, 8, 56, -144, 281, -736, 2814, -699, - -35, -56, 32, -49, 33, 27, 299, -699, 2552 -}; - -static const ClassicDescMod classic_yaw00_lev1_p03(9, yaw00_prof_lev1_p03, yaw00_cov_lev1_p03); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV1_P03_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p04.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p04.mh deleted file mode 100755 index d6db143..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p04.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev1_p04: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV1_P04_MH -#define STASM_CLASSIC_YAW00_LEV1_P04_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev1_p04[9] = -{ - -0.45089, -0.47263, -0.52036, -0.66078, -0.78934, -0.1695, 0.2894, 0.19754, 0.08816 -}; - -static const double yaw00_cov_lev1_p04[9*9] = -{ - 8271, -1478, 405, 579, 155, 147, 56, 34, -95, - -1478, 9629, -1877, 268, 237, 93, 65, 23, 91, - 405, -1877, 10000, -1842, 237, 80, -46, 110, -31, - 579, 268, -1842, 9238, -1344, 367, 29, 25, 54, - 155, 237, 237, -1344, 4208, -977, 369, -83, -48, - 147, 93, 80, 367, -977, 1993, -741, 296, 105, - 56, 65, -46, 29, 369, -741, 3132, -1240, 273, - 34, 23, 110, 25, -83, 296, -1240, 4193, -1353, - -95, 91, -31, 54, -48, 105, 273, -1353, 3681 -}; - -static const ClassicDescMod classic_yaw00_lev1_p04(9, yaw00_prof_lev1_p04, yaw00_cov_lev1_p04); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV1_P04_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p05.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p05.mh deleted file mode 100755 index c203485..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p05.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev1_p05: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV1_P05_MH -#define STASM_CLASSIC_YAW00_LEV1_P05_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev1_p05[9] = -{ - -1.00461, -1.0575, -1.11365, -1.03891, -0.45576, 0.53418, 0.57367, 0.3517, 0.3299 -}; - -static const double yaw00_cov_lev1_p05[9*9] = -{ - 9114, -1237, 238, 743, 478, -327, -339, -216, -219, - -1237, 10000, -678, 384, 478, -325, -362, -226, -523, - 238, -678, 9750, -1062, 472, -271, -492, -386, -548, - 743, 384, -1062, 7625, -1258, 414, -412, -455, -449, - 478, 478, 472, -1258, 4800, -1172, 787, -91, 95, - -327, -325, -271, 414, -1172, 4147, -906, 648, 464, - -339, -362, -492, -412, 787, -906, 5721, -1820, 603, - -216, -226, -386, -455, -91, 648, -1820, 7781, -2200, - -219, -523, -548, -449, 95, 464, 603, -2200, 7275 -}; - -static const ClassicDescMod classic_yaw00_lev1_p05(9, yaw00_prof_lev1_p05, yaw00_cov_lev1_p05); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV1_P05_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p06.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p06.mh deleted file mode 100755 index 56c0f41..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p06.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev1_p06: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV1_P06_MH -#define STASM_CLASSIC_YAW00_LEV1_P06_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev1_p06[9] = -{ - -0.98512, -1.03662, -1.08184, -1.10739, -0.63843, 0.57674, 0.79166, 0.47566, 0.37753 -}; - -static const double yaw00_cov_lev1_p06[9*9] = -{ - 8652, -2610, 939, 383, 604, -654, -644, -399, -463, - -2610, 10000, -3008, 1392, 196, -126, -561, -428, -153, - 939, -3008, 9542, -3147, 1036, -516, -276, -283, -342, - 383, 1392, -3147, 8596, -2150, 893, -918, -183, -558, - 604, 196, 1036, -2150, 4810, -1719, 1000, -599, 179, - -654, -126, -516, 893, -1719, 3317, -1042, 1262, 168, - -644, -561, -276, -918, 1000, -1042, 4417, -1879, 1183, - -399, -428, -283, -183, -599, 1262, -1879, 6322, -2197, - -463, -153, -342, -558, 179, 168, 1183, -2197, 5447 -}; - -static const ClassicDescMod classic_yaw00_lev1_p06(9, yaw00_prof_lev1_p06, yaw00_cov_lev1_p06); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV1_P06_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p07.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p07.mh deleted file mode 100755 index e7cc815..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p07.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev1_p07: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV1_P07_MH -#define STASM_CLASSIC_YAW00_LEV1_P07_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev1_p07[9] = -{ - -1.01903, -1.07501, -1.11749, -1.02256, -0.33681, 0.5963, 0.53541, 0.33205, 0.32692 -}; - -static const double yaw00_cov_lev1_p07[9*9] = -{ - 9204, -936, 196, 867, 286, -377, -355, -278, -348, - -936, 10000, -859, 487, 368, -330, -500, -73, -568, - 196, -859, 9751, -1239, 428, -237, -485, -446, -415, - 867, 487, -1239, 8051, -1354, 432, -607, -349, -583, - 286, 368, 428, -1354, 4601, -1124, 791, 52, 142, - -377, -330, -237, 432, -1124, 4351, -1034, 649, 475, - -355, -500, -485, -607, 791, -1034, 6303, -1961, 590, - -278, -73, -446, -349, 52, 649, -1961, 7981, -2305, - -348, -568, -415, -583, 142, 475, 590, -2305, 7563 -}; - -static const ClassicDescMod classic_yaw00_lev1_p07(9, yaw00_prof_lev1_p07, yaw00_cov_lev1_p07); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV1_P07_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p08.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p08.mh deleted file mode 100755 index cd2b952..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p08.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev1_p08: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV1_P08_MH -#define STASM_CLASSIC_YAW00_LEV1_P08_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev1_p08[9] = -{ - -0.44963, -0.47823, -0.51418, -0.6935, -0.73093, -0.06534, 0.24482, 0.17755, 0.0798 -}; - -static const double yaw00_cov_lev1_p08[9*9] = -{ - 8403, -1654, 342, 516, 155, 175, -51, 69, -81, - -1654, 9650, -1746, 296, 105, 98, 42, 51, 27, - 342, -1746, 10000, -1690, 161, 108, 89, 32, -13, - 516, 296, -1690, 8635, -1271, 476, -137, 76, 30, - 155, 105, 161, -1271, 3651, -1001, 365, -63, -25, - 175, 98, 108, 476, -1001, 2070, -780, 284, 114, - -51, 42, 89, -137, 365, -780, 3308, -1338, 346, - 69, 51, 32, 76, -63, 284, -1338, 4332, -1485, - -81, 27, -13, 30, -25, 114, 346, -1485, 3900 -}; - -static const ClassicDescMod classic_yaw00_lev1_p08(9, yaw00_prof_lev1_p08, yaw00_cov_lev1_p08); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV1_P08_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p09.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p09.mh deleted file mode 100755 index 0dd5192..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p09.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev1_p09: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV1_P09_MH -#define STASM_CLASSIC_YAW00_LEV1_P09_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev1_p09[9] = -{ - -0.36622, -0.40702, -0.51347, -0.77441, -0.77069, -0.17068, 0.11131, 0.05223, 0.01393 -}; - -static const double yaw00_cov_lev1_p09[9*9] = -{ - 7987, -2168, -2, 88, -8, 80, 60, 27, -32, - -2168, 10000, -2151, -12, 11, 46, 91, 9, 18, - -2, -2151, 9792, -1775, 219, 13, -8, -4, 6, - 88, -12, -1775, 5448, -1238, 493, -187, 69, -81, - -8, 11, 219, -1238, 1411, -732, 328, -104, 43, - 80, 46, 13, 493, -732, 1294, -667, 290, 44, - 60, 91, -8, -187, 328, -667, 2347, -842, 331, - 27, 9, -4, 69, -104, 290, -842, 2942, -768, - -32, 18, 6, -81, 43, 44, 331, -768, 2694 -}; - -static const ClassicDescMod classic_yaw00_lev1_p09(9, yaw00_prof_lev1_p09, yaw00_cov_lev1_p09); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV1_P09_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p10.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p10.mh deleted file mode 100755 index 0d4caa0..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p10.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev1_p10: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV1_P10_MH -#define STASM_CLASSIC_YAW00_LEV1_P10_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev1_p10[9] = -{ - -0.53793, -0.5388, -0.61332, -0.78656, -0.73707, -0.13772, 0.26423, 0.2313, 0.11337 -}; - -static const double yaw00_cov_lev1_p10[9*9] = -{ - 8397, -2856, 157, 158, 140, 121, -19, -77, 16, - -2856, 10000, -2610, 314, 74, 151, -76, 85, -107, - 157, -2610, 9132, -2319, 563, -78, 76, -2, 105, - 158, 314, -2319, 5317, -1519, 617, -248, 46, -55, - 140, 74, 563, -1519, 1717, -810, 400, -141, 84, - 121, 151, -78, 617, -810, 1293, -672, 331, -22, - -19, -76, 76, -248, 400, -672, 1941, -787, 405, - -77, 85, -2, 46, -141, 331, -787, 2343, -662, - 16, -107, 105, -55, 84, -22, 405, -662, 2147 -}; - -static const ClassicDescMod classic_yaw00_lev1_p10(9, yaw00_prof_lev1_p10, yaw00_cov_lev1_p10); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV1_P10_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p11.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p11.mh deleted file mode 100755 index 579d484..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p11.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev1_p11: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV1_P11_MH -#define STASM_CLASSIC_YAW00_LEV1_P11_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev1_p11[9] = -{ - -0.58075, -0.59995, -0.68687, -0.9197, -1.06371, -0.44371, 0.17664, 0.22854, 0.13256 -}; - -static const double yaw00_cov_lev1_p11[9*9] = -{ - 7589, -3828, 338, 43, 209, 37, 19, -168, -38, - -3828, 10000, -3263, 686, 77, 155, -69, 4, 88, - 338, -3263, 8181, -2396, 611, -90, 20, -87, -138, - 43, 686, -2396, 4361, -1331, 646, -259, 94, 59, - 209, 77, 611, -1331, 1577, -722, 400, -156, 57, - 37, 155, -90, 646, -722, 1091, -566, 284, -11, - 19, -69, 20, -259, 400, -566, 1371, -571, 332, - -168, 4, -87, 94, -156, 284, -571, 1540, -490, - -38, 88, -138, 59, 57, -11, 332, -490, 1428 -}; - -static const ClassicDescMod classic_yaw00_lev1_p11(9, yaw00_prof_lev1_p11, yaw00_cov_lev1_p11); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV1_P11_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p12.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p12.mh deleted file mode 100755 index 4edd03c..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p12.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev1_p12: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV1_P12_MH -#define STASM_CLASSIC_YAW00_LEV1_P12_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev1_p12[9] = -{ - -0.1611, -0.25254, -0.48201, -0.98315, -1.60019, -1.12709, -0.13159, 0.17559, 0.26522 -}; - -static const double yaw00_cov_lev1_p12[9*9] = -{ - 6477, -3251, 185, -73, 158, 51, -64, -110, -33, - -3251, 10000, -4062, 478, -6, 72, -4, -7, -63, - 185, -4062, 9818, -3606, 811, -197, 23, -134, -177, - -73, 478, -3606, 5933, -1935, 997, -463, 92, -164, - 158, -6, 811, -1935, 2826, -1217, 709, -331, 149, - 51, 72, -197, 997, -1217, 2011, -1194, 537, -103, - -64, -4, 23, -463, 709, -1194, 2810, -1473, 488, - -110, -7, -134, 92, -331, 537, -1473, 3861, -1195, - -33, -63, -177, -164, 149, -103, 488, -1195, 3459 -}; - -static const ClassicDescMod classic_yaw00_lev1_p12(9, yaw00_prof_lev1_p12, yaw00_cov_lev1_p12); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV1_P12_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p13.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p13.mh deleted file mode 100755 index 916d3dd..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p13.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev1_p13: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV1_P13_MH -#define STASM_CLASSIC_YAW00_LEV1_P13_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev1_p13[9] = -{ - -0.63606, -0.63499, -0.67446, -0.70764, -0.69469, -0.70577, -0.67686, -0.66618, -0.65743 -}; - -static const double yaw00_cov_lev1_p13[9*9] = -{ - 7239, -1774, 74, -53, 334, 334, 262, 362, 203, - -1774, 9627, -1889, 74, -221, 230, 364, 180, 202, - 74, -1889, 9320, -1868, 5, 5, 182, 269, 73, - -53, 74, -1868, 9950, -1964, -202, -188, 15, 240, - 334, -221, 5, -1964, 10000, -1950, -71, -220, 82, - 334, 230, 5, -202, -1950, 9308, -1943, -2, -233, - 262, 364, 182, -188, -71, -1943, 8113, -1882, -315, - 362, 180, 269, 15, -220, -2, -1882, 7392, -1913, - 203, 202, 73, 240, 82, -233, -315, -1913, 5540 -}; - -static const ClassicDescMod classic_yaw00_lev1_p13(9, yaw00_prof_lev1_p13, yaw00_cov_lev1_p13); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV1_P13_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p14.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p14.mh deleted file mode 100755 index 503e01f..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p14.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev1_p14: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV1_P14_MH -#define STASM_CLASSIC_YAW00_LEV1_P14_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev1_p14[9] = -{ - -0.70693, -0.69133, -0.72813, -0.73088, -0.73791, -0.74673, -0.77342, -0.80721, -0.84348 -}; - -static const double yaw00_cov_lev1_p14[9*9] = -{ - 6805, -2176, 266, -47, 567, 354, 527, 388, 457, - -2176, 9974, -2321, 194, -195, 370, 276, 160, 470, - 266, -2321, 9328, -2152, 224, -161, 119, 532, 251, - -47, 194, -2152, 9302, -2499, 147, -350, 197, 268, - 567, -195, 224, -2499, 10000, -2499, 488, -438, -9, - 354, 370, -161, 147, -2499, 9567, -2619, 284, -338, - 527, 276, 119, -350, 488, -2619, 8637, -2204, -257, - 388, 160, 532, 197, -438, 284, -2204, 7853, -2144, - 457, 470, 251, 268, -9, -338, -257, -2144, 5140 -}; - -static const ClassicDescMod classic_yaw00_lev1_p14(9, yaw00_prof_lev1_p14, yaw00_cov_lev1_p14); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV1_P14_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p15.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p15.mh deleted file mode 100755 index 8ded96d..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev1_p15.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev1_p15: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV1_P15_MH -#define STASM_CLASSIC_YAW00_LEV1_P15_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev1_p15[9] = -{ - -0.58183, -0.61339, -0.64935, -0.66865, -0.67214, -0.68748, -0.65711, -0.64961, -0.65152 -}; - -static const double yaw00_cov_lev1_p15[9*9] = -{ - 7167, -1412, -233, -193, 292, 382, 265, 217, 289, - -1412, 8588, -1537, -100, -383, 229, 173, 40, 148, - -233, -1537, 9585, -1451, -83, -344, 95, 314, 140, - -193, -100, -1451, 10000, -1611, -301, -358, 85, 27, - 292, -383, -83, -1611, 9843, -1660, -315, -287, 176, - 382, 229, -344, -301, -1660, 9605, -1720, -74, -492, - 265, 173, 95, -358, -315, -1720, 7978, -1644, -288, - 217, 40, 314, 85, -287, -74, -1644, 7475, -1816, - 289, 148, 140, 27, 176, -492, -288, -1816, 5830 -}; - -static const ClassicDescMod classic_yaw00_lev1_p15(9, yaw00_prof_lev1_p15, yaw00_cov_lev1_p15); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV1_P15_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p00.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p00.mh deleted file mode 100755 index c354852..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p00.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev2_p00: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV2_P00_MH -#define STASM_CLASSIC_YAW00_LEV2_P00_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev2_p00[9] = -{ - -0.24484, -0.31522, -0.36846, -0.14047, 1.56065, 1.28274, 0.38984, 0.13367, 0.0543 -}; - -static const double yaw00_cov_lev2_p00[9*9] = -{ - 6489, -193, 783, 513, 321, 50, -176, -259, -153, - -193, 5648, -110, 563, 160, -199, -414, -257, -91, - 783, -110, 4910, -92, 291, -262, -225, -324, -305, - 513, 563, -92, 3042, -373, 101, -388, -170, -376, - 321, 160, 291, -373, 1910, -121, 360, 62, 159, - 50, -199, -262, 101, -121, 4243, -1776, 90, -3, - -176, -414, -225, -388, 360, -1776, 10000, -2409, 210, - -259, -257, -324, -170, 62, 90, -2409, 9607, -1425, - -153, -91, -305, -376, 159, -3, 210, -1425, 8356 -}; - -static const ClassicDescMod classic_yaw00_lev2_p00(9, yaw00_prof_lev2_p00, yaw00_cov_lev2_p00); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV2_P00_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p01.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p01.mh deleted file mode 100755 index 209dfa9..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p01.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev2_p01: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV2_P01_MH -#define STASM_CLASSIC_YAW00_LEV2_P01_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev2_p01[9] = -{ - -0.61006, -0.72105, -0.75849, -0.81226, -1.21814, -0.76544, 0.27518, 0.16726, 0.09666 -}; - -static const double yaw00_cov_lev2_p01[9*9] = -{ - 9168, -3454, 139, 825, 254, 325, -3, 102, 11, - -3454, 10000, -3058, -173, 575, 126, -43, -54, -119, - 139, -3058, 9270, -2471, 273, 130, -70, -56, -5, - 825, -173, -2471, 7299, -543, 306, -185, -1, -112, - 254, 575, 273, -543, 1916, -92, 98, 9, 41, - 325, 126, 130, 306, -92, 653, -24, 157, 92, - -3, -43, -70, -185, 98, -24, 1090, 41, 257, - 102, -54, -56, -1, 9, 157, 41, 1348, 53, - 11, -119, -5, -112, 41, 92, 257, 53, 1544 -}; - -static const ClassicDescMod classic_yaw00_lev2_p01(9, yaw00_prof_lev2_p01, yaw00_cov_lev2_p01); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV2_P01_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p02.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p02.mh deleted file mode 100755 index 4d6fb61..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p02.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev2_p02: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV2_P02_MH -#define STASM_CLASSIC_YAW00_LEV2_P02_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev2_p02[9] = -{ - -0.63169, -0.65689, -0.67154, -0.73992, -1.02767, -0.40486, 0.33089, 0.10841, 0.01497 -}; - -static const double yaw00_cov_lev2_p02[9*9] = -{ - 7561, -2349, -106, 166, 171, 135, 18, -16, 60, - -2349, 10000, -2423, 7, 168, 232, -53, 62, 87, - -106, -2423, 9194, -1551, 311, 105, -58, -80, 21, - 166, 7, -1551, 7598, -387, 331, -10, 35, 73, - 171, 168, 311, -387, 2080, -220, 85, 8, 55, - 135, 232, 105, 331, -220, 703, -49, 159, 117, - 18, -53, -58, -10, 85, -49, 1423, 7, 278, - -16, 62, -80, 35, 8, 159, 7, 2009, 50, - 60, 87, 21, 73, 55, 117, 278, 50, 2301 -}; - -static const ClassicDescMod classic_yaw00_lev2_p02(9, yaw00_prof_lev2_p02, yaw00_cov_lev2_p02); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV2_P02_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p03.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p03.mh deleted file mode 100755 index bde30cf..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p03.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev2_p03: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV2_P03_MH -#define STASM_CLASSIC_YAW00_LEV2_P03_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev2_p03[9] = -{ - -0.1954, -0.32708, -0.4418, -0.58564, -1.00529, -0.41429, 0.09369, 0.0148, 0.04192 -}; - -static const double yaw00_cov_lev2_p03[9*9] = -{ - 4553, -1009, 811, -234, -106, 14, 89, -11, -22, - -1009, 6513, -1245, 718, -101, 94, 33, 13, -27, - 811, -1245, 8740, -1048, 6, 28, -8, -85, -88, - -234, 718, -1048, 10000, -520, 193, 16, -50, -11, - -106, -101, 6, -520, 2184, -333, 81, 66, 105, - 14, 94, 28, 193, -333, 845, -60, 165, 182, - 89, 33, -8, 16, 81, -60, 2324, -41, 358, - -11, 13, -85, -50, 66, 165, -41, 3030, -14, - -22, -27, -88, -11, 105, 182, 358, -14, 4018 -}; - -static const ClassicDescMod classic_yaw00_lev2_p03(9, yaw00_prof_lev2_p03, yaw00_cov_lev2_p03); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV2_P03_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p04.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p04.mh deleted file mode 100755 index 4d808b2..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p04.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev2_p04: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV2_P04_MH -#define STASM_CLASSIC_YAW00_LEV2_P04_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev2_p04[9] = -{ - -0.25192, -0.4374, -0.55404, -0.67336, -0.88419, 0.01506, 0.24966, -0.00294, -0.08817 -}; - -static const double yaw00_cov_lev2_p04[9*9] = -{ - 6499, -651, 1221, 956, 106, 160, 361, 253, 191, - -651, 7810, -572, 1542, 363, 224, 123, 171, 13, - 1221, -572, 9523, -262, 653, 226, 122, 141, 47, - 956, 1542, -262, 10000, -323, 445, 3, 241, 33, - 106, 363, 653, -323, 4641, -402, 205, -54, -67, - 160, 224, 226, 445, -402, 1827, -219, 263, 186, - 361, 123, 122, 3, 205, -219, 3031, -579, 258, - 253, 171, 141, 241, -54, 263, -579, 3574, -366, - 191, 13, 47, 33, -67, 186, 258, -366, 3094 -}; - -static const ClassicDescMod classic_yaw00_lev2_p04(9, yaw00_prof_lev2_p04, yaw00_cov_lev2_p04); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV2_P04_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p05.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p05.mh deleted file mode 100755 index 4f0ec49..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p05.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev2_p05: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV2_P05_MH -#define STASM_CLASSIC_YAW00_LEV2_P05_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev2_p05[9] = -{ - -0.52692, -0.93794, -1.19994, -1.37713, -0.71518, 0.7072, 0.44331, 0.36323, 0.29919 -}; - -static const double yaw00_cov_lev2_p05[9*9] = -{ - 6556, -1762, 292, 1814, 988, -222, 195, 19, 370, - -1762, 8351, -337, 497, 1056, -101, 147, -211, 205, - 292, -337, 10000, -11, 892, -92, -300, -235, -111, - 1814, 497, -11, 9238, 297, -242, -358, -730, -609, - 988, 1056, 892, 297, 4719, -162, 366, -75, -55, - -222, -101, -92, -242, -162, 4808, -22, 875, 773, - 195, 147, -300, -358, 366, -22, 7007, -1183, 644, - 19, -211, -235, -730, -75, 875, -1183, 8031, -1342, - 370, 205, -111, -609, -55, 773, 644, -1342, 7917 -}; - -static const ClassicDescMod classic_yaw00_lev2_p05(9, yaw00_prof_lev2_p05, yaw00_cov_lev2_p05); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV2_P05_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p06.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p06.mh deleted file mode 100755 index 73f1ba5..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p06.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev2_p06: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV2_P06_MH -#define STASM_CLASSIC_YAW00_LEV2_P06_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev2_p06[9] = -{ - -0.7492, -1.02465, -1.21457, -1.36678, -0.53414, 0.86115, 0.50492, 0.37753, 0.33932 -}; - -static const double yaw00_cov_lev2_p06[9*9] = -{ - 6047, -1447, 364, 1014, 442, -481, 36, -225, -87, - -1447, 9337, -1270, 951, 329, -713, -433, -580, -228, - 364, -1270, 10000, -1021, 497, -819, -507, -593, -716, - 1014, 951, -1021, 6867, -13, -443, -634, -510, -653, - 442, 329, 497, -13, 2491, 40, 343, 52, 136, - -481, -713, -819, -443, 40, 3570, 335, 1107, 906, - 36, -433, -507, -634, 343, 335, 4612, -896, 1216, - -225, -580, -593, -510, 52, 1107, -896, 5905, -1267, - -87, -228, -716, -653, 136, 906, 1216, -1267, 5983 -}; - -static const ClassicDescMod classic_yaw00_lev2_p06(9, yaw00_prof_lev2_p06, yaw00_cov_lev2_p06); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV2_P06_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p07.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p07.mh deleted file mode 100755 index 6c0315d..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p07.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev2_p07: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV2_P07_MH -#define STASM_CLASSIC_YAW00_LEV2_P07_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev2_p07[9] = -{ - -0.60437, -0.99157, -1.25118, -1.39861, -0.23545, 0.64767, 0.39954, 0.36006, 0.27114 -}; - -static const double yaw00_cov_lev2_p07[9*9] = -{ - 6885, -1447, 565, 2092, 547, -29, 209, 2, 550, - -1447, 9100, -54, 887, 746, -162, 207, -47, 127, - 565, -54, 10000, 104, 614, -155, -233, -348, -164, - 2092, 887, 104, 9159, -85, -203, -583, -693, -587, - 547, 746, 614, -85, 4248, 201, 555, 313, 316, - -29, -162, -155, -203, 201, 5637, -456, 841, 821, - 209, 207, -233, -583, 555, -456, 7590, -1399, 584, - 2, -47, -348, -693, 313, 841, -1399, 8472, -1266, - 550, 127, -164, -587, 316, 821, 584, -1266, 8078 -}; - -static const ClassicDescMod classic_yaw00_lev2_p07(9, yaw00_prof_lev2_p07, yaw00_cov_lev2_p07); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV2_P07_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p08.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p08.mh deleted file mode 100755 index 034d3d1..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p08.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev2_p08: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV2_P08_MH -#define STASM_CLASSIC_YAW00_LEV2_P08_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev2_p08[9] = -{ - -0.33333, -0.47816, -0.57357, -0.71576, -0.75634, 0.23606, 0.12512, -0.04428, -0.07596 -}; - -static const double yaw00_cov_lev2_p08[9*9] = -{ - 6779, -688, 1413, 630, 153, 190, 192, 261, -4, - -688, 8232, -489, 1008, 247, 101, 137, 16, 47, - 1413, -489, 10000, -271, 380, 231, 130, 122, -29, - 630, 1008, -271, 9293, -214, 331, -67, 55, -1, - 153, 247, 380, -214, 2474, -408, 231, 63, 42, - 190, 101, 231, 331, -408, 2237, -323, 238, 200, - 192, 137, 130, -67, 231, -323, 3192, -549, 208, - 261, 16, 122, 55, 63, 238, -549, 3578, -296, - -4, 47, -29, -1, 42, 200, 208, -296, 3051 -}; - -static const ClassicDescMod classic_yaw00_lev2_p08(9, yaw00_prof_lev2_p08, yaw00_cov_lev2_p08); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV2_P08_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p09.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p09.mh deleted file mode 100755 index e029ece..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p09.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev2_p09: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV2_P09_MH -#define STASM_CLASSIC_YAW00_LEV2_P09_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev2_p09[9] = -{ - -0.27769, -0.40452, -0.5127, -0.79907, -0.88018, 0.04108, 0.04948, 0.00551, 0.054 -}; - -static const double yaw00_cov_lev2_p09[9*9] = -{ - 5177, -928, 693, -389, 2, 64, 66, -2, 13, - -928, 7361, -1031, 201, 47, 57, 20, -18, -69, - 693, -1031, 10000, -974, 84, 108, -41, -144, -82, - -389, 201, -974, 7262, -448, 180, -143, 67, -38, - 2, 47, 84, -448, 883, -211, 155, 140, 167, - 64, 57, 108, 180, -211, 1676, 10, 287, 325, - 66, 20, -41, -143, 155, 10, 3154, -61, 439, - -2, -18, -144, 67, 140, 287, -61, 4180, 32, - 13, -69, -82, -38, 167, 325, 439, 32, 4833 -}; - -static const ClassicDescMod classic_yaw00_lev2_p09(9, yaw00_prof_lev2_p09, yaw00_cov_lev2_p09); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV2_P09_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p10.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p10.mh deleted file mode 100755 index d644cf8..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p10.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev2_p10: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV2_P10_MH -#define STASM_CLASSIC_YAW00_LEV2_P10_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev2_p10[9] = -{ - -0.66769, -0.68309, -0.70727, -0.88606, -0.84839, 0.20347, 0.17984, 0.0683, -0.01306 -}; - -static const double yaw00_cov_lev2_p10[9*9] = -{ - 8546, -2789, -48, 7, 237, 81, 53, 51, 214, - -2789, 10000, -2342, 311, 191, 41, -41, -45, 38, - -48, -2342, 9033, -1367, 317, 45, -77, 11, 9, - 7, 311, -1367, 5135, -263, 204, -35, -3, 93, - 237, 191, 317, -263, 802, -139, 119, 66, 112, - 81, 41, 45, 204, -139, 1146, 58, 241, 201, - 53, -41, -77, -35, 119, 58, 1930, 34, 334, - 51, -45, 11, -3, 66, 241, 34, 2418, 60, - 214, 38, 9, 93, 112, 201, 334, 60, 2665 -}; - -static const ClassicDescMod classic_yaw00_lev2_p10(9, yaw00_prof_lev2_p10, yaw00_cov_lev2_p10); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV2_P10_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p11.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p11.mh deleted file mode 100755 index 86e3758..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p11.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev2_p11: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV2_P11_MH -#define STASM_CLASSIC_YAW00_LEV2_P11_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev2_p11[9] = -{ - -0.69194, -0.75766, -0.76707, -0.99901, -1.18411, 0.07366, 0.19872, 0.12294, 0.07259 -}; - -static const double yaw00_cov_lev2_p11[9*9] = -{ - 8481, -3758, 587, 283, 369, 58, 53, 3, 40, - -3758, 10000, -3468, 258, 243, -27, -1, -80, -102, - 587, -3468, 8639, -1575, 330, -69, -93, -39, -46, - 283, 258, -1575, 4073, -148, 123, -70, -5, -3, - 369, 243, 330, -148, 806, -82, 155, 64, 105, - 58, -27, -69, 123, -82, 813, 67, 192, 142, - 53, -1, -93, -70, 155, 67, 1335, 65, 328, - 3, -80, -39, -5, 64, 192, 65, 1546, 19, - 40, -102, -46, -3, 105, 142, 328, 19, 1846 -}; - -static const ClassicDescMod classic_yaw00_lev2_p11(9, yaw00_prof_lev2_p11, yaw00_cov_lev2_p11); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV2_P11_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p12.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p12.mh deleted file mode 100755 index a1e884d..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p12.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev2_p12: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV2_P12_MH -#define STASM_CLASSIC_YAW00_LEV2_P12_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev2_p12[9] = -{ - -0.07459, -0.14196, -0.27518, -0.79186, -1.85697, -0.42701, 0.37728, 0.317, 0.26966 -}; - -static const double yaw00_cov_lev2_p12[9*9] = -{ - 8083, -970, 496, -191, 317, -150, -258, -32, -155, - -970, 9146, -1904, -59, 96, -138, -305, -306, -210, - 496, -1904, 10000, -2339, 340, 40, -313, -250, -262, - -191, -59, -2339, 6664, -603, 248, -446, -152, -306, - 317, 96, 340, -603, 2201, -300, 180, 38, 176, - -150, -138, 40, 248, -300, 1895, -181, 324, 357, - -258, -305, -313, -446, 180, -181, 3877, -58, 636, - -32, -306, -250, -152, 38, 324, -58, 4755, -98, - -155, -210, -262, -306, 176, 357, 636, -98, 5559 -}; - -static const ClassicDescMod classic_yaw00_lev2_p12(9, yaw00_prof_lev2_p12, yaw00_cov_lev2_p12); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV2_P12_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p13.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p13.mh deleted file mode 100755 index f0dab08..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p13.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev2_p13: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV2_P13_MH -#define STASM_CLASSIC_YAW00_LEV2_P13_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev2_p13[9] = -{ - -0.42751, -0.50809, -0.64939, -0.75938, -0.87218, -0.83949, -0.72138, -0.54002, -0.40679 -}; - -static const double yaw00_cov_lev2_p13[9*9] = -{ - 9657, -823, 23, 549, 567, 879, 533, 421, 532, - -823, 10000, -868, 123, 446, 501, 409, 280, 480, - 23, -868, 8127, -825, 59, 362, 448, 188, 262, - 549, 123, -825, 7534, -1122, 351, 263, 194, 186, - 567, 446, 59, -1122, 7084, -1177, 86, 315, 261, - 879, 501, 362, 351, -1177, 5879, -873, -86, 234, - 533, 409, 448, 263, 86, -873, 4975, -1046, -95, - 421, 280, 188, 194, 315, -86, -1046, 4806, -1204, - 532, 480, 262, 186, 261, 234, -95, -1204, 4123 -}; - -static const ClassicDescMod classic_yaw00_lev2_p13(9, yaw00_prof_lev2_p13, yaw00_cov_lev2_p13); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV2_P13_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p14.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p14.mh deleted file mode 100755 index 20dfabe..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p14.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev2_p14: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV2_P14_MH -#define STASM_CLASSIC_YAW00_LEV2_P14_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev2_p14[9] = -{ - -0.54008, -0.5841, -0.69519, -0.81007, -0.89572, -0.90188, -0.9261, -0.8735, -0.76153 -}; - -static const double yaw00_cov_lev2_p14[9*9] = -{ - 6362, -866, -51, 687, 429, 559, 564, 498, 466, - -866, 8483, -1707, 225, 666, 434, 545, 327, 467, - -51, -1707, 10000, -1747, 431, 332, 662, 350, 540, - 687, 225, -1747, 8762, -1842, 287, 497, 706, 382, - 429, 666, 431, -1842, 7689, -1675, 242, 343, 567, - 559, 434, 332, 287, -1675, 6532, -1561, -60, 292, - 564, 545, 662, 497, 242, -1561, 6263, -1593, 106, - 498, 327, 350, 706, 343, -60, -1593, 5434, -1443, - 466, 467, 540, 382, 567, 292, 106, -1443, 3981 -}; - -static const ClassicDescMod classic_yaw00_lev2_p14(9, yaw00_prof_lev2_p14, yaw00_cov_lev2_p14); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV2_P14_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p15.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p15.mh deleted file mode 100755 index cf3498a..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev2_p15.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev2_p15: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV2_P15_MH -#define STASM_CLASSIC_YAW00_LEV2_P15_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev2_p15[9] = -{ - -0.37558, -0.45171, -0.57135, -0.73327, -0.82562, -0.84468, -0.75971, -0.61729, -0.47736 -}; - -static const double yaw00_cov_lev2_p15[9*9] = -{ - 9685, -428, 88, 87, 433, 648, 510, 413, 359, - -428, 10000, -939, 117, 253, 421, 446, 439, 402, - 88, -939, 9684, -1165, 154, 140, 410, 245, 351, - 87, 117, -1165, 8657, -930, 155, 260, 243, 231, - 433, 253, 154, -930, 7564, -1157, 68, 138, 231, - 648, 421, 140, 155, -1157, 6586, -966, 57, 42, - 510, 446, 410, 260, 68, -966, 5614, -983, -183, - 413, 439, 245, 243, 138, 57, -983, 5187, -1085, - 359, 402, 351, 231, 231, 42, -183, -1085, 4297 -}; - -static const ClassicDescMod classic_yaw00_lev2_p15(9, yaw00_prof_lev2_p15, yaw00_cov_lev2_p15); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV2_P15_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p00.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p00.mh deleted file mode 100755 index c741d7f..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p00.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p00: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P00_MH -#define STASM_CLASSIC_YAW00_LEV3_P00_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p00[9] = -{ - -0.26934, -0.27514, -0.36838, -0.54867, 1.5687, 0.86451, 0.21825, 0.24086, 0.32685 -}; - -static const double yaw00_cov_lev3_p00[9*9] = -{ - 10000, 466, 1152, 1230, 828, 225, 82, 159, 161, - 466, 6699, 628, 964, 709, 148, -82, 204, 236, - 1152, 628, 4538, 879, 643, -190, -102, 72, -31, - 1230, 964, 879, 3032, 419, -158, -335, -127, -40, - 828, 709, 643, 419, 1778, 344, 171, 307, 281, - 225, 148, -190, -158, 344, 4130, -19, 720, 588, - 82, -82, -102, -335, 171, -19, 5841, 759, 805, - 159, 204, 72, -127, 307, 720, 759, 5270, 634, - 161, 236, -31, -40, 281, 588, 805, 634, 5024 -}; - -static const ClassicDescMod classic_yaw00_lev3_p00(9, yaw00_prof_lev3_p00, yaw00_cov_lev3_p00); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P00_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p01.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p01.mh deleted file mode 100755 index 1a5cbaf..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p01.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p01: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P01_MH -#define STASM_CLASSIC_YAW00_LEV3_P01_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p01[9] = -{ - 0.12656, -0.24389, -0.75834, -1.09498, -1.42353, -0.81966, 0.24523, 0.06951, 0.04629 -}; - -static const double yaw00_cov_lev3_p01[9*9] = -{ - 5531, -1227, 3, 502, 232, -15, 48, 62, -13, - -1227, 7965, -2675, 1359, 503, 350, 206, 326, 35, - 3, -2675, 10000, -2058, 977, 724, 151, 90, 293, - 502, 1359, -2058, 9558, -558, 465, -153, -211, -10, - 232, 503, 977, -558, 4895, 448, 30, 181, 403, - -15, 350, 724, 465, 448, 1431, 500, 437, 510, - 48, 206, 151, -153, 30, 500, 2347, 647, 511, - 62, 326, 90, -211, 181, 437, 647, 3039, 565, - -13, 35, 293, -10, 403, 510, 511, 565, 4431 -}; - -static const ClassicDescMod classic_yaw00_lev3_p01(9, yaw00_prof_lev3_p01, yaw00_cov_lev3_p01); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P01_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p02.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p02.mh deleted file mode 100755 index 54b7d76..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p02.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p02: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P02_MH -#define STASM_CLASSIC_YAW00_LEV3_P02_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p02[9] = -{ - 0.14175, -0.2853, -0.67941, -0.85287, -1.09157, -0.47914, 0.1908, -0.04506, -0.02606 -}; - -static const double yaw00_cov_lev3_p02[9*9] = -{ - 3025, -469, 521, 541, 187, 80, 56, -57, -49, - -469, 4050, -1074, 754, 84, 78, 80, -26, -86, - 521, -1074, 6542, -1167, 197, 205, 53, 96, 97, - 541, 754, -1167, 10000, 70, 533, 117, 275, 406, - 187, 84, 197, 70, 4758, 169, 173, 417, 534, - 80, 78, 205, 533, 169, 1212, 397, 446, 513, - 56, 80, 53, 117, 173, 397, 2862, 680, 555, - -57, -26, 96, 275, 417, 446, 680, 3611, 672, - -49, -86, 97, 406, 534, 513, 555, 672, 4994 -}; - -static const ClassicDescMod classic_yaw00_lev3_p02(9, yaw00_prof_lev3_p02, yaw00_cov_lev3_p02); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P02_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p03.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p03.mh deleted file mode 100755 index 6f8bc49..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p03.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p03: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P03_MH -#define STASM_CLASSIC_YAW00_LEV3_P03_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p03[9] = -{ - -0.0658, 0.00439, -0.06344, -0.47728, -0.98616, -0.49928, 0.05374, 0.09604, 0.11466 -}; - -static const double yaw00_cov_lev3_p03[9*9] = -{ - 4118, 245, 1141, 683, 3, 1, -7, 67, 29, - 245, 4247, 348, 1128, -116, -16, -100, -89, -64, - 1141, 348, 5574, 831, -249, -6, -111, -43, 19, - 683, 1128, 831, 10000, -245, 53, -161, -251, -197, - 3, -116, -249, -245, 4935, -183, 131, 172, 260, - 1, -16, -6, 53, -183, 1632, 495, 644, 732, - -7, -100, -111, -161, 131, 495, 4308, 928, 872, - 67, -89, -43, -251, 172, 644, 928, 6463, 842, - 29, -64, 19, -197, 260, 732, 872, 842, 9420 -}; - -static const ClassicDescMod classic_yaw00_lev3_p03(9, yaw00_prof_lev3_p03, yaw00_cov_lev3_p03); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P03_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p04.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p04.mh deleted file mode 100755 index 4002bd0..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p04.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p04: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P04_MH -#define STASM_CLASSIC_YAW00_LEV3_P04_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p04[9] = -{ - 0.17978, 0.17887, -0.20733, -0.57937, -0.84249, 0.10412, 0.0001, 0.03937, 0.13884 -}; - -static const double yaw00_cov_lev3_p04[9*9] = -{ - 2108, 718, 837, 413, 38, 152, 151, 191, 117, - 718, 3953, 804, 883, 82, 375, 342, 181, 154, - 837, 804, 7041, 1248, 596, 538, 544, 195, 69, - 413, 883, 1248, 10000, 1149, 514, 339, 39, -224, - 38, 82, 596, 1149, 6086, -135, 45, -183, -252, - 152, 375, 538, 514, -135, 2541, 220, 401, 335, - 151, 342, 544, 339, 45, 220, 3585, 394, 504, - 191, 181, 195, 39, -183, 401, 394, 3152, 355, - 117, 154, 69, -224, -252, 335, 504, 355, 3244 -}; - -static const ClassicDescMod classic_yaw00_lev3_p04(9, yaw00_prof_lev3_p04, yaw00_cov_lev3_p04); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P04_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p05.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p05.mh deleted file mode 100755 index 583aa14..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p05.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p05: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P05_MH -#define STASM_CLASSIC_YAW00_LEV3_P05_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p05[9] = -{ - 0.33661, 0.21192, -0.59383, -1.46726, -0.99156, 0.69795, 0.43083, 0.33122, 0.24603 -}; - -static const double yaw00_cov_lev3_p05[9*9] = -{ - 4241, 1048, 945, 935, 810, 338, 297, 205, 164, - 1048, 5539, -19, 1382, 1297, 556, 816, 656, 517, - 945, -19, 6432, -57, 2059, 763, 1063, 1018, 777, - 935, 1382, -57, 10000, 2144, 466, 262, 122, -143, - 810, 1297, 2059, 2144, 6731, 926, 639, 358, 27, - 338, 556, 763, 466, 926, 7765, 1302, 1607, 1002, - 297, 816, 1063, 262, 639, 1302, 9080, 308, 1305, - 205, 656, 1018, 122, 358, 1607, 308, 8937, 214, - 164, 517, 777, -143, 27, 1002, 1305, 214, 7235 -}; - -static const ClassicDescMod classic_yaw00_lev3_p05(9, yaw00_prof_lev3_p05, yaw00_cov_lev3_p05); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P05_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p06.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p06.mh deleted file mode 100755 index 1bfe23a..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p06.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p06: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P06_MH -#define STASM_CLASSIC_YAW00_LEV3_P06_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p06[9] = -{ - 0.46231, -0.00789, -0.96477, -1.65208, -0.50703, 0.77427, 0.46185, 0.4029, 0.30458 -}; - -static const double yaw00_cov_lev3_p06[9*9] = -{ - 3598, 431, 1017, 660, 570, 379, 314, 441, 596, - 431, 4796, -1131, 1016, 854, 519, 748, 1002, 887, - 1017, -1131, 8747, -397, 1601, 633, 748, 876, 989, - 660, 1016, -397, 10000, 1067, -671, -547, -662, -471, - 570, 854, 1601, 1067, 4268, 1554, 1110, 952, 719, - 379, 519, 633, -671, 1554, 7298, 1806, 2633, 1913, - 314, 748, 748, -547, 1110, 1806, 8032, 568, 2197, - 441, 1002, 876, -662, 952, 2633, 568, 9869, 219, - 596, 887, 989, -471, 719, 1913, 2197, 219, 9671 -}; - -static const ClassicDescMod classic_yaw00_lev3_p06(9, yaw00_prof_lev3_p06, yaw00_cov_lev3_p06); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P06_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p07.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p07.mh deleted file mode 100755 index becb761..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p07.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p07: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P07_MH -#define STASM_CLASSIC_YAW00_LEV3_P07_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p07[9] = -{ - 0.25983, 0.04132, -0.799, -1.6218, -0.27162, 0.57408, 0.38317, 0.29786, 0.25716 -}; - -static const double yaw00_cov_lev3_p07[9*9] = -{ - 4820, 1110, 1075, 1151, 761, 305, 297, 227, 299, - 1110, 6285, 66, 1915, 1143, 665, 841, 679, 443, - 1075, 66, 7124, 1139, 1883, 899, 1020, 821, 443, - 1151, 1915, 1139, 10000, 1795, 624, 231, -65, -430, - 761, 1143, 1883, 1795, 6319, 1148, 1103, 643, 219, - 305, 665, 899, 624, 1148, 7832, 629, 1352, 974, - 297, 841, 1020, 231, 1103, 629, 8682, 126, 968, - 227, 679, 821, -65, 643, 1352, 126, 7613, 308, - 299, 443, 443, -430, 219, 974, 968, 308, 6725 -}; - -static const ClassicDescMod classic_yaw00_lev3_p07(9, yaw00_prof_lev3_p07, yaw00_cov_lev3_p07); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P07_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p08.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p08.mh deleted file mode 100755 index 27ba4fc..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p08.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p08: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P08_MH -#define STASM_CLASSIC_YAW00_LEV3_P08_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p08[9] = -{ - 0.25962, 0.1765, -0.37723, -0.69447, -0.59296, 0.14671, -0.02193, 0.11451, 0.22283 -}; - -static const double yaw00_cov_lev3_p08[9*9] = -{ - 2079, 721, 823, 92, 152, 215, 182, 143, 36, - 721, 3988, 715, 518, 189, 432, 217, 79, -27, - 823, 715, 7489, 1252, 417, 498, 135, -80, -198, - 92, 518, 1252, 10000, 362, 88, 10, -315, -417, - 152, 189, 417, 362, 2329, 47, 213, 91, 62, - 215, 432, 498, 88, 47, 2692, 338, 452, 324, - 182, 217, 135, 10, 213, 338, 3325, 290, 504, - 143, 79, -80, -315, 91, 452, 290, 3310, 322, - 36, -27, -198, -417, 62, 324, 504, 322, 3560 -}; - -static const ClassicDescMod classic_yaw00_lev3_p08(9, yaw00_prof_lev3_p08, yaw00_cov_lev3_p08); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P08_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p09.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p09.mh deleted file mode 100755 index 9c0ac8b..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p09.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p09: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P09_MH -#define STASM_CLASSIC_YAW00_LEV3_P09_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p09[9] = -{ - -0.06217, -0.12681, -0.38565, -0.82728, -0.87599, 0.05379, 0.081, 0.10606, 0.11478 -}; - -static const double yaw00_cov_lev3_p09[9*9] = -{ - 3158, 51, 759, 53, -6, -49, -30, -60, -7, - 51, 3642, 266, 4, 9, 19, -39, 101, 78, - 759, 266, 5688, 130, 11, -27, -43, -71, -125, - 53, 4, 130, 7373, -75, 53, -136, -162, -96, - -6, 9, 11, -75, 1163, 222, 442, 473, 532, - -49, 19, -27, 53, 222, 2880, 725, 796, 591, - -30, -39, -43, -136, 442, 725, 4860, 776, 700, - -60, 101, -71, -162, 473, 796, 776, 7177, 613, - -7, 78, -125, -96, 532, 591, 700, 613, 10000 -}; - -static const ClassicDescMod classic_yaw00_lev3_p09(9, yaw00_prof_lev3_p09, yaw00_cov_lev3_p09); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P09_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p10.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p10.mh deleted file mode 100755 index fe09e5d..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p10.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p10: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P10_MH -#define STASM_CLASSIC_YAW00_LEV3_P10_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p10[9] = -{ - -0.17788, -0.65681, -0.90497, -1.07007, -0.7872, 0.21817, -0.00847, -0.04494, 0.05718 -}; - -static const double yaw00_cov_lev3_p10[9*9] = -{ - 4088, -1161, 961, 364, 181, 153, -28, -31, -73, - -1161, 6286, -1435, 539, 179, 68, 57, 59, 146, - 961, -1435, 10000, -933, 681, 81, 306, 405, 265, - 364, 539, -933, 8758, 540, 247, 427, 585, 537, - 181, 179, 681, 540, 1538, 359, 564, 594, 718, - 153, 68, 81, 247, 359, 2957, 841, 784, 819, - -28, 57, 306, 427, 564, 841, 4395, 843, 895, - -31, 59, 405, 585, 594, 784, 843, 5869, 630, - -73, 146, 265, 537, 718, 819, 895, 630, 9623 -}; - -static const ClassicDescMod classic_yaw00_lev3_p10(9, yaw00_prof_lev3_p10, yaw00_cov_lev3_p10); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P10_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p11.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p11.mh deleted file mode 100755 index ed20430..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p11.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p11: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P11_MH -#define STASM_CLASSIC_YAW00_LEV3_P11_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p11[9] = -{ - -0.15438, -0.66019, -1.08854, -1.32905, -1.16432, 0.23162, 0.09544, 0.02005, 0.09313 -}; - -static const double yaw00_cov_lev3_p11[9*9] = -{ - 6977, -2356, 1249, 704, 332, 190, 285, 72, 51, - -2356, 9332, -2407, 1326, 720, 323, 217, 130, 168, - 1249, -2407, 10000, -1897, 835, 125, -70, 151, 206, - 704, 1326, -1897, 7259, 481, 32, -24, 196, 341, - 332, 720, 835, 481, 1710, 485, 528, 566, 799, - 190, 323, 125, 32, 485, 2217, 708, 567, 646, - 285, 217, -70, -24, 528, 708, 3327, 650, 796, - 72, 130, 151, 196, 566, 567, 650, 4497, 665, - 51, 168, 206, 341, 799, 646, 796, 665, 7274 -}; - -static const ClassicDescMod classic_yaw00_lev3_p11(9, yaw00_prof_lev3_p11, yaw00_cov_lev3_p11); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P11_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p12.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p12.mh deleted file mode 100755 index 3158073..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p12.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p12: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P12_MH -#define STASM_CLASSIC_YAW00_LEV3_P12_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p12[9] = -{ - -0.32851, -0.31747, -0.29189, -0.66703, -1.81602, 0.31131, 0.38936, 0.26688, 0.27026 -}; - -static const double yaw00_cov_lev3_p12[9*9] = -{ - 6345, 839, 930, 425, 463, 74, 180, 196, 92, - 839, 6296, 626, 932, 366, -55, -144, 50, 114, - 930, 626, 6769, 149, 349, -186, -98, -66, 71, - 425, 932, 149, 6440, 241, -181, -513, -272, 10, - 463, 366, 349, 241, 2164, 415, 565, 623, 885, - 74, -55, -186, -181, 415, 2705, 918, 1056, 1222, - 180, -144, -98, -513, 565, 918, 4578, 777, 1199, - 196, 50, -66, -272, 623, 1056, 777, 6749, 468, - 92, 114, 71, 10, 885, 1222, 1199, 468, 10000 -}; - -static const ClassicDescMod classic_yaw00_lev3_p12(9, yaw00_prof_lev3_p12, yaw00_cov_lev3_p12); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P12_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p13.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p13.mh deleted file mode 100755 index e1f8f5a..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p13.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p13: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P13_MH -#define STASM_CLASSIC_YAW00_LEV3_P13_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p13[9] = -{ - -0.1982, -0.37183, -0.49019, -0.7714, -1.11668, -0.99757, -0.51194, -0.06444, 0.23618 -}; - -static const double yaw00_cov_lev3_p13[9*9] = -{ - 9222, -563, 498, 147, 341, 448, 529, 310, 339, - -563, 9881, -1134, 522, 648, 453, 344, 225, 158, - 498, -1134, 10000, 109, 916, 896, 604, 492, 390, - 147, 522, 109, 6179, 26, 627, 474, 344, 305, - 341, 648, 916, 26, 3870, 70, 420, 209, 239, - 448, 453, 896, 627, 70, 2885, -227, 241, 194, - 529, 344, 604, 474, 420, -227, 2567, -394, 95, - 310, 225, 492, 344, 209, 241, -394, 2956, -434, - 339, 158, 390, 305, 239, 194, 95, -434, 3185 -}; - -static const ClassicDescMod classic_yaw00_lev3_p13(9, yaw00_prof_lev3_p13, yaw00_cov_lev3_p13); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P13_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p14.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p14.mh deleted file mode 100755 index faa82d8..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p14.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p14: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P14_MH -#define STASM_CLASSIC_YAW00_LEV3_P14_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p14[9] = -{ - -0.26673, -0.32334, -0.55261, -0.77583, -1.11214, -1.30199, -1.09769, -0.63115, -0.15321 -}; - -static const double yaw00_cov_lev3_p14[9*9] = -{ - 7963, -1138, 513, 414, 754, 605, 443, 365, 171, - -1138, 10000, -2073, 631, 686, 731, 518, 410, 199, - 513, -2073, 8682, -1050, 700, 647, 634, 545, 225, - 414, 631, -1050, 6663, -906, 572, 446, 466, 206, - 754, 686, 700, -906, 4970, -376, 745, 419, 270, - 605, 731, 647, 572, -376, 3194, -447, 522, 154, - 443, 518, 634, 446, 745, -447, 2831, -647, 200, - 365, 410, 545, 466, 419, 522, -647, 3114, -798, - 171, 199, 225, 206, 270, 154, 200, -798, 2964 -}; - -static const ClassicDescMod classic_yaw00_lev3_p14(9, yaw00_prof_lev3_p14, yaw00_cov_lev3_p14); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P14_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p15.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p15.mh deleted file mode 100755 index d6dc26f..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p15.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p15: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P15_MH -#define STASM_CLASSIC_YAW00_LEV3_P15_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p15[9] = -{ - -0.17557, -0.29382, -0.40847, -0.64044, -0.97483, -1.14679, -0.79171, -0.27868, 0.10409 -}; - -static const double yaw00_cov_lev3_p15[9*9] = -{ - 9632, 99, 187, 677, 588, 657, 435, 240, 238, - 99, 10000, -81, 222, 678, 610, 526, 336, 231, - 187, -81, 9171, 27, 537, 665, 616, 457, 322, - 677, 222, 27, 6570, 62, 646, 488, 460, 333, - 588, 678, 537, 62, 4023, 26, 354, 289, 276, - 657, 610, 665, 646, 26, 2834, -20, 179, 162, - 435, 526, 616, 488, 354, -20, 2278, -280, 106, - 240, 336, 457, 460, 289, 179, -280, 2417, -326, - 238, 231, 322, 333, 276, 162, 106, -326, 2522 -}; - -static const ClassicDescMod classic_yaw00_lev3_p15(9, yaw00_prof_lev3_p15, yaw00_cov_lev3_p15); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P15_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p16.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p16.mh deleted file mode 100755 index 29b4837..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p16.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p16: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P16_MH -#define STASM_CLASSIC_YAW00_LEV3_P16_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p16[9] = -{ - 0.40966, -0.54886, -0.97142, -0.75671, -0.03735, 1.81206, -0.03249, -0.57674, -0.73251 -}; - -static const double yaw00_cov_lev3_p16[9*9] = -{ - 5537, -339, 2420, 1330, 877, 913, 480, -494, -19, - -339, 4898, 2582, 3084, 2025, 1440, 848, 266, 278, - 2420, 2582, 9871, 4900, 3554, 2490, 1895, 929, 900, - 1330, 3084, 4900, 9814, 4133, 2534, 1965, 746, 727, - 877, 2025, 3554, 4133, 5867, 3935, 1776, 42, 160, - 913, 1440, 2490, 2534, 3935, 5847, 1896, -804, -230, - 480, 848, 1895, 1965, 1776, 1896, 6420, -676, 345, - -494, 266, 929, 746, 42, -804, -676, 10000, 425, - -19, 278, 900, 727, 160, -230, 345, 425, 5473 -}; - -static const ClassicDescMod classic_yaw00_lev3_p16(9, yaw00_prof_lev3_p16, yaw00_cov_lev3_p16); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P16_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p17.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p17.mh deleted file mode 100755 index a4515f9..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p17.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p17: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P17_MH -#define STASM_CLASSIC_YAW00_LEV3_P17_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p17[9] = -{ - -0.95777, -0.85597, 0.80833, 0.36533, -0.60616, 1.26426, -0.14624, -0.34013, -0.32671 -}; - -static const double yaw00_cov_lev3_p17[9*9] = -{ - 6278, 3027, 2526, 2270, 1740, 1122, 677, 706, 224, - 3027, 4009, 2562, 3001, 1982, 1488, 762, 569, 443, - 2526, 2562, 3867, 3439, 2381, 2066, 833, 367, 545, - 2270, 3001, 3439, 5015, 3216, 2381, 565, 296, 621, - 1740, 1982, 2381, 3216, 4437, 2429, 916, 240, 512, - 1122, 1488, 2066, 2381, 2429, 6204, -53, -46, 345, - 677, 762, 833, 565, 916, -53, 10000, -168, 634, - 706, 569, 367, 296, 240, -46, -168, 9504, 196, - 224, 443, 545, 621, 512, 345, 634, 196, 6264 -}; - -static const ClassicDescMod classic_yaw00_lev3_p17(9, yaw00_prof_lev3_p17, yaw00_cov_lev3_p17); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P17_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p18.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p18.mh deleted file mode 100755 index 6322405..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p18.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p18: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P18_MH -#define STASM_CLASSIC_YAW00_LEV3_P18_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p18[9] = -{ - -0.16881, -0.02518, 0.26775, 0.40132, 0.22951, -0.26116, -0.34458, 0.98319, 0.89904 -}; - -static const double yaw00_cov_lev3_p18[9*9] = -{ - 9201, -506, 719, 1593, 1110, 290, -497, -745, -585, - -506, 6838, -89, 1332, 777, 103, -421, -796, -406, - 719, -89, 5129, 1011, 932, 161, -395, -668, -347, - 1593, 1332, 1011, 6806, 1605, 772, 184, -628, -295, - 1110, 777, 932, 1605, 9064, 2912, 1724, 1068, 676, - 290, 103, 161, 772, 2912, 10000, 4091, 2576, 1497, - -497, -421, -395, 184, 1724, 4091, 5453, 2428, 2229, - -745, -796, -668, -628, 1068, 2576, 2428, 6957, 3758, - -585, -406, -347, -295, 676, 1497, 2229, 3758, 9817 -}; - -static const ClassicDescMod classic_yaw00_lev3_p18(9, yaw00_prof_lev3_p18, yaw00_cov_lev3_p18); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P18_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p19.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p19.mh deleted file mode 100755 index e389192..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p19.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p19: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P19_MH -#define STASM_CLASSIC_YAW00_LEV3_P19_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p19[9] = -{ - 0.25694, 0.20027, -0.34396, -1.19645, 1.08254, -0.89305, -0.48712, 0.9684, 0.9766 -}; - -static const double yaw00_cov_lev3_p19[9*9] = -{ - 7518, -667, -19, -78, 145, 24, 297, 409, 359, - -667, 10000, -855, -63, 392, 169, 270, 652, 569, - -19, -855, 4845, 2219, 1648, 1621, 1550, 955, 319, - -78, -63, 2219, 3751, 1634, 1700, 1223, 812, 405, - 145, 392, 1648, 1634, 3355, 1963, 1570, 1345, 1177, - 24, 169, 1621, 1700, 1963, 3698, 2138, 1795, 1240, - 297, 270, 1550, 1223, 1570, 2138, 2240, 1465, 1547, - 409, 652, 955, 812, 1345, 1795, 1465, 2914, 2091, - 359, 569, 319, 405, 1177, 1240, 1547, 2091, 4954 -}; - -static const ClassicDescMod classic_yaw00_lev3_p19(9, yaw00_prof_lev3_p19, yaw00_cov_lev3_p19); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P19_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p20.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p20.mh deleted file mode 100755 index 241166e..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p20.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p20: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P20_MH -#define STASM_CLASSIC_YAW00_LEV3_P20_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p20[9] = -{ - 0.15026, 0.14935, -0.57526, -2.09163, 0.67556, -0.33445, -0.1121, 0.82629, 0.77837 -}; - -static const double yaw00_cov_lev3_p20[9*9] = -{ - 9040, -1203, 301, -256, -173, -490, -157, 159, 257, - -1203, 10000, -1081, -62, -36, 3, -134, 178, 558, - 301, -1081, 3489, 1732, 1467, 1359, 1315, 979, 775, - -256, -62, 1732, 2435, 1174, 1304, 1073, 828, 714, - -173, -36, 1467, 1174, 2157, 1622, 1202, 1079, 1131, - -490, 3, 1359, 1304, 1622, 3073, 1738, 1626, 1287, - -157, -134, 1315, 1073, 1202, 1738, 1947, 1347, 1309, - 159, 178, 979, 828, 1079, 1626, 1347, 2561, 1751, - 257, 558, 775, 714, 1131, 1287, 1309, 1751, 3893 -}; - -static const ClassicDescMod classic_yaw00_lev3_p20(9, yaw00_prof_lev3_p20, yaw00_cov_lev3_p20); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P20_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p21.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p21.mh deleted file mode 100755 index c939b6b..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p21.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p21: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P21_MH -#define STASM_CLASSIC_YAW00_LEV3_P21_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p21[9] = -{ - 0.29962, 0.34398, -0.17873, -1.85505, -1.20107, -0.30789, 0.01002, 0.52659, 0.5726 -}; - -static const double yaw00_cov_lev3_p21[9*9] = -{ - 9753, -939, 227, -860, -702, -447, -111, 199, 655, - -939, 10000, -1065, -68, -290, 95, 62, 209, 295, - 227, -1065, 6233, 14, 1261, 858, 1207, 948, 630, - -860, -68, 14, 4301, 1522, 1159, 1117, 874, 359, - -702, -290, 1261, 1522, 3204, 711, 737, 621, 537, - -447, 95, 858, 1159, 711, 3547, 608, 926, 889, - -111, 62, 1207, 1117, 737, 608, 4067, 500, 766, - 199, 209, 948, 874, 621, 926, 500, 5668, 901, - 655, 295, 630, 359, 537, 889, 766, 901, 7089 -}; - -static const ClassicDescMod classic_yaw00_lev3_p21(9, yaw00_prof_lev3_p21, yaw00_cov_lev3_p21); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P21_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p22.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p22.mh deleted file mode 100755 index f7604ea..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p22.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p22: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P22_MH -#define STASM_CLASSIC_YAW00_LEV3_P22_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p22[9] = -{ - 0.25904, 0.27477, -0.41948, -2.52664, -0.42588, 0.09501, 0.16598, 0.50912, 0.67741 -}; - -static const double yaw00_cov_lev3_p22[9*9] = -{ - 9319, -1145, 117, -748, -397, -338, -297, 171, 473, - -1145, 10000, -869, 94, 60, 407, 312, 383, 489, - 117, -869, 4185, 1149, 1438, 1082, 1306, 985, 556, - -748, 94, 1149, 3179, 1561, 1076, 1042, 736, 287, - -397, 60, 1438, 1561, 2235, 1229, 957, 752, 573, - -338, 407, 1082, 1076, 1229, 3982, 1622, 1243, 1247, - -297, 312, 1306, 1042, 957, 1622, 3605, 1285, 1099, - 171, 383, 985, 736, 752, 1243, 1285, 3496, 1271, - 473, 489, 556, 287, 573, 1247, 1099, 1271, 4955 -}; - -static const ClassicDescMod classic_yaw00_lev3_p22(9, yaw00_prof_lev3_p22, yaw00_cov_lev3_p22); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P22_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p23.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p23.mh deleted file mode 100755 index d1805d4..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p23.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p23: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P23_MH -#define STASM_CLASSIC_YAW00_LEV3_P23_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p23[9] = -{ - 0.16156, 0.05849, 0.10182, -0.20769, -2.14022, 0.52674, -0.20587, -0.71853, 0.7093 -}; - -static const double yaw00_cov_lev3_p23[9*9] = -{ - 8862, -712, 93, -653, -511, -185, -317, -68, 107, - -712, 9837, -494, 244, -457, -86, -240, -202, -88, - 93, -494, 10000, -475, -320, -66, -245, -280, -108, - -653, 244, -475, 5373, 231, 647, 374, 496, 263, - -511, -457, -320, 231, 2678, 943, 725, 459, 282, - -185, -86, -66, 647, 943, 1716, 1178, 605, 357, - -317, -240, -245, 374, 725, 1178, 1935, 931, 739, - -68, -202, -280, 496, 459, 605, 931, 1031, 388, - 107, -88, -108, 263, 282, 357, 739, 388, 1041 -}; - -static const ClassicDescMod classic_yaw00_lev3_p23(9, yaw00_prof_lev3_p23, yaw00_cov_lev3_p23); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P23_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p24.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p24.mh deleted file mode 100755 index e6ae4e0..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p24.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p24: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P24_MH -#define STASM_CLASSIC_YAW00_LEV3_P24_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p24[9] = -{ - 0.22056, 0.30398, 0.40184, 0.29338, -0.93734, 0.45303, -0.18698, -1.04266, 0.80476 -}; - -static const double yaw00_cov_lev3_p24[9*9] = -{ - 5829, -346, 664, 1109, 1094, 818, 872, 512, 255, - -346, 6418, 99, 582, 879, 513, 631, 446, 384, - 664, 99, 7233, 430, 464, 638, 640, 554, 361, - 1109, 582, 430, 10000, 8, 767, 742, 699, 617, - 1094, 879, 464, 8, 6907, 2708, 2224, 1777, 948, - 818, 513, 638, 767, 2708, 5068, 2970, 1687, 933, - 872, 631, 640, 742, 2224, 2970, 4977, 2602, 1835, - 512, 446, 554, 699, 1777, 1687, 2602, 3072, 1164, - 255, 384, 361, 617, 948, 933, 1835, 1164, 2682 -}; - -static const ClassicDescMod classic_yaw00_lev3_p24(9, yaw00_prof_lev3_p24, yaw00_cov_lev3_p24); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P24_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p25.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p25.mh deleted file mode 100755 index 207f897..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p25.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p25: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P25_MH -#define STASM_CLASSIC_YAW00_LEV3_P25_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p25[9] = -{ - -0.63685, -0.9396, -0.86617, 0.48067, -0.30844, -0.41788, -0.42389, -0.11839, 0.11356 -}; - -static const double yaw00_cov_lev3_p25[9*9] = -{ - 10000, 3135, 2430, 1485, 822, 413, 32, -261, -546, - 3135, 8367, 2486, 1528, 1005, -22, -223, -306, -623, - 2430, 2486, 5515, 1631, 1665, -181, -545, -531, -774, - 1485, 1528, 1631, 5251, 1904, 138, -366, -525, -582, - 822, 1005, 1665, 1904, 8639, 801, 216, 143, 210, - 413, -22, -181, 138, 801, 5266, 789, 793, 903, - 32, -223, -545, -366, 216, 789, 3607, 43, 615, - -261, -306, -531, -525, 143, 793, 43, 3949, -239, - -546, -623, -774, -582, 210, 903, 615, -239, 5711 -}; - -static const ClassicDescMod classic_yaw00_lev3_p25(9, yaw00_prof_lev3_p25, yaw00_cov_lev3_p25); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P25_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p26.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p26.mh deleted file mode 100755 index 05a9d55..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p26.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p26: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P26_MH -#define STASM_CLASSIC_YAW00_LEV3_P26_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p26[9] = -{ - -0.57663, -1.02601, -0.98918, 0.54231, 0.52009, -0.88916, 1.09953, 0.16008, -0.25594 -}; - -static const double yaw00_cov_lev3_p26[9*9] = -{ - 10000, 2945, 2806, 2567, 1728, 1452, 0, -321, 379, - 2945, 7551, 3152, 2545, 1858, 1468, 285, -113, 713, - 2806, 3152, 3944, 2309, 2384, 1610, 1037, 794, 715, - 2567, 2545, 2309, 3382, 2826, 1889, 1494, 1395, 527, - 1728, 1858, 2384, 2826, 4622, 2367, 1995, 1315, 147, - 1452, 1468, 1610, 1889, 2367, 4306, 2124, 1681, 493, - 0, 285, 1037, 1494, 1995, 2124, 4686, 1703, -44, - -321, -113, 794, 1395, 1315, 1681, 1703, 5483, -676, - 379, 713, 715, 527, 147, 493, -44, -676, 9102 -}; - -static const ClassicDescMod classic_yaw00_lev3_p26(9, yaw00_prof_lev3_p26, yaw00_cov_lev3_p26); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P26_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p27.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p27.mh deleted file mode 100755 index 377a23b..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p27.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p27: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P27_MH -#define STASM_CLASSIC_YAW00_LEV3_P27_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p27[9] = -{ - 0.07089, -0.30701, -0.25342, 0.41966, 0.05051, -0.9909, 1.04406, 1.40174, 0.55463 -}; - -static const double yaw00_cov_lev3_p27[9*9] = -{ - 7028, -40, 951, 642, 278, 318, 291, 357, 438, - -40, 7110, 1309, 1093, 996, 1172, 302, 33, -211, - 951, 1309, 6309, 2773, 2725, 2446, 1198, 437, 651, - 642, 1093, 2773, 6397, 3871, 3083, 1778, 1492, 2029, - 278, 996, 2725, 3871, 8001, 3719, 2388, 2000, 2255, - 318, 1172, 2446, 3083, 3719, 7899, 2942, 2431, 1502, - 291, 302, 1198, 1778, 2388, 2942, 7715, 4990, 4885, - 357, 33, 437, 1492, 2000, 2431, 4990, 8106, 3226, - 438, -211, 651, 2029, 2255, 1502, 4885, 3226, 10000 -}; - -static const ClassicDescMod classic_yaw00_lev3_p27(9, yaw00_prof_lev3_p27, yaw00_cov_lev3_p27); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P27_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p28.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p28.mh deleted file mode 100755 index 6d38e7c..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p28.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p28: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P28_MH -#define STASM_CLASSIC_YAW00_LEV3_P28_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p28[9] = -{ - 0.35091, -0.12035, -0.87507, -0.71931, 0.40304, 0.70711, 0.08712, 0.69226, 1.00729 -}; - -static const double yaw00_cov_lev3_p28[9*9] = -{ - 8079, 113, 880, 764, 679, 843, 428, 586, 617, - 113, 9360, 324, 1328, 971, 793, 425, 175, 564, - 880, 324, 9643, 4087, 2237, 1494, 1398, 1119, 485, - 764, 1328, 4087, 7944, 3965, 2883, 2465, 1928, 254, - 679, 971, 2237, 3965, 7679, 5679, 3830, 2856, 1445, - 843, 793, 1494, 2883, 5679, 8922, 5105, 3998, 2675, - 428, 425, 1398, 2465, 3830, 5105, 8506, 3869, 4246, - 586, 175, 1119, 1928, 2856, 3998, 3869, 6877, 3595, - 617, 564, 485, 254, 1445, 2675, 4246, 3595, 10000 -}; - -static const ClassicDescMod classic_yaw00_lev3_p28(9, yaw00_prof_lev3_p28, yaw00_cov_lev3_p28); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P28_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p29.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p29.mh deleted file mode 100755 index 31b59e6..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p29.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p29: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P29_MH -#define STASM_CLASSIC_YAW00_LEV3_P29_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p29[9] = -{ - -0.1541, -1.17497, -0.73208, -0.59891, -0.2699, 0.67665, 0.41527, -0.02719, -0.22124 -}; - -static const double yaw00_cov_lev3_p29[9*9] = -{ - 5295, 832, 3099, 2207, 1720, 979, 760, 591, 420, - 832, 7114, 3022, 3128, 2204, 487, 687, 933, 561, - 3099, 3022, 9091, 4987, 3768, 2065, 2234, 2247, 1744, - 2207, 3128, 4987, 10000, 5211, 3444, 3235, 2968, 2144, - 1720, 2204, 3768, 5211, 7514, 3847, 3380, 2968, 1896, - 979, 487, 2065, 3444, 3847, 6154, 3237, 2689, 1516, - 760, 687, 2234, 3235, 3380, 3237, 5938, 2334, 1920, - 591, 933, 2247, 2968, 2968, 2689, 2334, 5993, 1448, - 420, 561, 1744, 2144, 1896, 1516, 1920, 1448, 5292 -}; - -static const ClassicDescMod classic_yaw00_lev3_p29(9, yaw00_prof_lev3_p29, yaw00_cov_lev3_p29); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P29_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p30.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p30.mh deleted file mode 100755 index 27c643b..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p30.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p30: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P30_MH -#define STASM_CLASSIC_YAW00_LEV3_P30_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p30[9] = -{ - 0.52697, 0.88612, -0.29274, -1.16989, -0.52299, -0.24833, -1.14656, -0.1616, 0.2344 -}; - -static const double yaw00_cov_lev3_p30[9*9] = -{ - 9358, 1432, 3292, -49, 604, -36, -811, -531, -313, - 1432, 8111, -483, 2384, -417, -45, -1126, -883, -585, - 3292, -483, 7086, 1524, 2384, 968, 81, 187, -350, - -49, 2384, 1524, 10000, 2789, 2094, 1131, 373, -36, - 604, -417, 2384, 2789, 7345, 2363, 2436, 1559, 931, - -36, -45, 968, 2094, 2363, 6692, 2792, 1912, 1208, - -811, -1126, 81, 1131, 2436, 2792, 6218, 2691, 1537, - -531, -883, 187, 373, 1559, 1912, 2691, 4399, 1604, - -313, -585, -350, -36, 931, 1208, 1537, 1604, 4431 -}; - -static const ClassicDescMod classic_yaw00_lev3_p30(9, yaw00_prof_lev3_p30, yaw00_cov_lev3_p30); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P30_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p31.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p31.mh deleted file mode 100755 index 1c57454..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p31.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p31: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P31_MH -#define STASM_CLASSIC_YAW00_LEV3_P31_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p31[9] = -{ - 0.02957, -0.46443, -0.82016, -0.97621, -1.12365, 0.66605, 0.35463, 1.18231, 1.06023 -}; - -static const double yaw00_cov_lev3_p31[9*9] = -{ - 7712, -1348, 680, 665, 620, 840, 257, -21, 202, - -1348, 10000, 1284, 1673, 1548, 1110, 960, 463, 444, - 680, 1284, 5950, 2647, 1965, 1227, 1169, 429, 542, - 665, 1673, 2647, 5400, 3222, 1958, 1501, 551, 514, - 620, 1548, 1965, 3222, 3887, 2166, 1635, 708, 820, - 840, 1110, 1227, 1958, 2166, 3122, 1959, 1149, 1423, - 257, 960, 1169, 1501, 1635, 1959, 3176, 1464, 1672, - -21, 463, 429, 551, 708, 1149, 1464, 2095, 1582, - 202, 444, 542, 514, 820, 1423, 1672, 1582, 2899 -}; - -static const ClassicDescMod classic_yaw00_lev3_p31(9, yaw00_prof_lev3_p31, yaw00_cov_lev3_p31); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P31_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p32.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p32.mh deleted file mode 100755 index d4846a2..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p32.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p32: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P32_MH -#define STASM_CLASSIC_YAW00_LEV3_P32_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p32[9] = -{ - 0.03076, -0.42151, -0.61554, -1.14196, -0.95133, 1.37202, -0.10194, 0.30233, 0.93868 -}; - -static const double yaw00_cov_lev3_p32[9*9] = -{ - 7182, -696, 1159, 424, 1375, 1205, 1078, 717, 398, - -696, 10000, 1941, 2126, 2475, 1256, 1618, 1087, 773, - 1159, 1941, 8106, 4333, 3725, 2056, 2546, 1513, 1020, - 424, 2126, 4333, 7161, 5119, 3340, 3317, 1933, 1246, - 1375, 2475, 3725, 5119, 5792, 3336, 3357, 1835, 1311, - 1205, 1256, 2056, 3340, 3336, 4753, 3360, 1926, 1607, - 1078, 1618, 2546, 3317, 3357, 3360, 4416, 2306, 1862, - 717, 1087, 1513, 1933, 1835, 1926, 2306, 1974, 1374, - 398, 773, 1020, 1246, 1311, 1607, 1862, 1374, 2301 -}; - -static const ClassicDescMod classic_yaw00_lev3_p32(9, yaw00_prof_lev3_p32, yaw00_cov_lev3_p32); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P32_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p33.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p33.mh deleted file mode 100755 index e70df0a..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p33.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p33: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P33_MH -#define STASM_CLASSIC_YAW00_LEV3_P33_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p33[9] = -{ - 0.50329, 0.0823, -0.53741, -1.0276, -1.39374, 1.33168, 0.46261, -0.34625, 0.33574 -}; - -static const double yaw00_cov_lev3_p33[9*9] = -{ - 4320, 1820, 703, 216, 544, 771, 243, 82, 178, - 1820, 7031, 1157, 747, 1849, 1654, 989, 695, 547, - 703, 1157, 9709, 4631, 4586, 2290, 2188, 1529, 730, - 216, 747, 4631, 10000, 7187, 3924, 3066, 2096, 784, - 544, 1849, 4586, 7187, 8379, 4080, 3435, 2215, 1000, - 771, 1654, 2290, 3924, 4080, 5446, 3933, 1829, 1400, - 243, 989, 2188, 3066, 3435, 3933, 5535, 2963, 2036, - 82, 695, 1529, 2096, 2215, 1829, 2963, 3860, 1901, - 178, 547, 730, 784, 1000, 1400, 2036, 1901, 3739 -}; - -static const ClassicDescMod classic_yaw00_lev3_p33(9, yaw00_prof_lev3_p33, yaw00_cov_lev3_p33); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P33_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p34.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p34.mh deleted file mode 100755 index 0da96fc..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p34.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p34: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P34_MH -#define STASM_CLASSIC_YAW00_LEV3_P34_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p34[9] = -{ - -0.84271, -0.36265, -0.62488, -0.2277, 0.66681, 0.40182, 0.66767, 0.06157, -0.50681 -}; - -static const double yaw00_cov_lev3_p34[9*9] = -{ - 7508, 3109, 3635, 1823, 1941, 1596, 955, 456, 772, - 3109, 8979, 5810, 3803, 4012, 3291, 2125, 376, 625, - 3635, 5810, 9921, 5028, 5129, 4458, 2899, 472, 582, - 1823, 3803, 5028, 6946, 4490, 3378, 2568, 636, 641, - 1941, 4012, 5129, 4490, 9171, 4383, 3130, 132, 458, - 1596, 3291, 4458, 3378, 4383, 9319, 3622, 1481, 792, - 955, 2125, 2899, 2568, 3130, 3622, 10000, 653, 1173, - 456, 376, 472, 636, 132, 1481, 653, 7798, 352, - 772, 625, 582, 641, 458, 792, 1173, 352, 6265 -}; - -static const ClassicDescMod classic_yaw00_lev3_p34(9, yaw00_prof_lev3_p34, yaw00_cov_lev3_p34); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P34_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p35.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p35.mh deleted file mode 100755 index 38d10d2..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p35.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p35: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P35_MH -#define STASM_CLASSIC_YAW00_LEV3_P35_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p35[9] = -{ - -0.88846, -0.08785, -0.73655, -0.74954, 1.65208, 0.91599, 0.57784, 0.2018, -0.12183 -}; - -static const double yaw00_cov_lev3_p35[9*9] = -{ - 992, 665, 877, 485, 323, 308, 77, -171, -257, - 665, 1328, 1444, 910, 883, 863, 431, 51, -289, - 877, 1444, 2859, 1951, 1636, 1352, 615, 325, 58, - 485, 910, 1951, 2187, 1364, 1218, 501, 338, 222, - 323, 883, 1636, 1364, 3084, 2544, 1497, 768, 246, - 308, 863, 1352, 1218, 2544, 4475, 1687, 563, 695, - 77, 431, 615, 501, 1497, 1687, 6430, 407, 783, - -171, 51, 325, 338, 768, 563, 407, 10000, -2016, - -257, -289, 58, 222, 246, 695, 783, -2016, 8552 -}; - -static const ClassicDescMod classic_yaw00_lev3_p35(9, yaw00_prof_lev3_p35, yaw00_cov_lev3_p35); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P35_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p36.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p36.mh deleted file mode 100755 index bbda4ea..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p36.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p36: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P36_MH -#define STASM_CLASSIC_YAW00_LEV3_P36_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p36[9] = -{ - -0.70362, 0.12835, -1.00524, -0.1152, 1.65218, 0.65242, 0.56675, 0.19671, -0.26938 -}; - -static const double yaw00_cov_lev3_p36[9*9] = -{ - 1203, 882, 1139, 567, 475, 239, 12, 245, 175, - 882, 2031, 2033, 1349, 1416, 868, 407, 461, 398, - 1139, 2033, 3842, 2465, 2171, 1027, 391, 311, 671, - 567, 1349, 2465, 2926, 2206, 1121, 606, 724, 475, - 475, 1416, 2171, 2206, 4557, 2391, 1291, 450, 170, - 239, 868, 1027, 1121, 2391, 6057, 1688, 963, 490, - 12, 407, 391, 606, 1291, 1688, 8894, -93, 1485, - 245, 461, 311, 724, 450, 963, -93, 10000, -1564, - 175, 398, 671, 475, 170, 490, 1485, -1564, 6907 -}; - -static const ClassicDescMod classic_yaw00_lev3_p36(9, yaw00_prof_lev3_p36, yaw00_cov_lev3_p36); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P36_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p37.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p37.mh deleted file mode 100755 index ebfa044..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p37.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p37: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P37_MH -#define STASM_CLASSIC_YAW00_LEV3_P37_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p37[9] = -{ - 0.30132, 0.28238, 0.2925, -0.36964, -0.55929, -1.35118, 0.12932, 0.68802, -0.15491 -}; - -static const double yaw00_cov_lev3_p37[9*9] = -{ - 3574, 2493, 1549, 1249, 681, 436, 534, 445, 457, - 2493, 6095, 3769, 2153, 1214, 707, 930, 352, 431, - 1549, 3769, 9314, 2795, 1948, 1053, 1472, 543, 542, - 1249, 2153, 2795, 10000, 2034, 899, 1252, 485, 633, - 681, 1214, 1948, 2034, 7828, 2146, 1330, 1012, 593, - 436, 707, 1053, 899, 2146, 6314, 3252, 1993, 1179, - 534, 930, 1472, 1252, 1330, 3252, 4264, 2646, 1216, - 445, 352, 543, 485, 1012, 1993, 2646, 3664, 1432, - 457, 431, 542, 633, 593, 1179, 1216, 1432, 1783 -}; - -static const ClassicDescMod classic_yaw00_lev3_p37(9, yaw00_prof_lev3_p37, yaw00_cov_lev3_p37); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P37_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p38.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p38.mh deleted file mode 100755 index 83274f6..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p38.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p38: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P38_MH -#define STASM_CLASSIC_YAW00_LEV3_P38_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p38[9] = -{ - 0.25106, -0.22807, -1.2205, -0.54882, 0.60947, 1.50668, 0.31759, 0.50429, 0.80396 -}; - -static const double yaw00_cov_lev3_p38[9*9] = -{ - 4905, 943, 899, 690, 1064, 1035, 795, 881, 578, - 943, 5853, 2472, 2543, 2542, 2269, 2223, 1176, 562, - 899, 2472, 7017, 4549, 3406, 3164, 2841, 928, -445, - 690, 2543, 4549, 7675, 4580, 4592, 3780, 1612, -209, - 1064, 2542, 3406, 4580, 8131, 7015, 5363, 3024, 1142, - 1035, 2269, 3164, 4592, 7015, 10000, 6494, 4509, 1685, - 795, 2223, 2841, 3780, 5363, 6494, 9639, 3839, 2469, - 881, 1176, 928, 1612, 3024, 4509, 3839, 8919, 2797, - 578, 562, -445, -209, 1142, 1685, 2469, 2797, 9210 -}; - -static const ClassicDescMod classic_yaw00_lev3_p38(9, yaw00_prof_lev3_p38, yaw00_cov_lev3_p38); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P38_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p39.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p39.mh deleted file mode 100755 index 04f8c8e..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p39.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p39: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P39_MH -#define STASM_CLASSIC_YAW00_LEV3_P39_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p39[9] = -{ - 0.30135, -0.18199, -0.85464, -0.37208, -0.52201, 0.6877, 0.91984, 0.3106, 0.66777 -}; - -static const double yaw00_cov_lev3_p39[9*9] = -{ - 4269, 98, 1079, 641, 419, 560, 346, 528, 228, - 98, 5881, 822, 1564, 807, 1240, 957, 1051, 566, - 1079, 822, 7382, 3406, 2764, 2581, 2674, 2479, 1150, - 641, 1564, 3406, 6980, 4003, 2932, 3800, 2946, 1340, - 419, 807, 2764, 4003, 7661, 3971, 4475, 3824, 1895, - 560, 1240, 2581, 2932, 3971, 7971, 6013, 4319, 2499, - 346, 957, 2674, 3800, 4475, 6013, 10000, 5705, 3711, - 528, 1051, 2479, 2946, 3824, 4319, 5705, 8766, 2855, - 228, 566, 1150, 1340, 1895, 2499, 3711, 2855, 7107 -}; - -static const ClassicDescMod classic_yaw00_lev3_p39(9, yaw00_prof_lev3_p39, yaw00_cov_lev3_p39); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P39_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p40.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p40.mh deleted file mode 100755 index 0a794ae..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p40.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p40: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P40_MH -#define STASM_CLASSIC_YAW00_LEV3_P40_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p40[9] = -{ - -0.73484, -0.42707, -0.30117, 0.48054, 0.89764, 0.21019, 0.57516, 1.16636, 0.02197 -}; - -static const double yaw00_cov_lev3_p40[9*9] = -{ - 7110, 3169, 2394, 2182, 2263, 2192, 1117, 27, 16, - 3169, 6870, 3659, 2393, 3263, 2613, 1601, 332, -119, - 2394, 3659, 7143, 3687, 4558, 3680, 2293, 911, -593, - 2182, 2393, 3687, 6827, 5467, 4031, 2974, 1600, 152, - 2263, 3263, 4558, 5467, 10000, 5122, 3888, 1912, -656, - 2192, 2613, 3680, 4031, 5122, 9922, 3742, 2896, 816, - 1117, 1601, 2293, 2974, 3888, 3742, 9937, 3545, 2721, - 27, 332, 911, 1600, 1912, 2896, 3545, 9137, 789, - 16, -119, -593, 152, -656, 816, 2721, 789, 6674 -}; - -static const ClassicDescMod classic_yaw00_lev3_p40(9, yaw00_prof_lev3_p40, yaw00_cov_lev3_p40); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P40_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p41.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p41.mh deleted file mode 100755 index fb5f717..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p41.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p41: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P41_MH -#define STASM_CLASSIC_YAW00_LEV3_P41_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p41[9] = -{ - -0.23444, -1.18062, -0.66432, -0.27269, -0.95921, 1.24075, 1.1159, 0.662, 0.26795 -}; - -static const double yaw00_cov_lev3_p41[9*9] = -{ - 4424, 1788, 2059, 1374, 1430, 917, 1004, 1329, 674, - 1788, 2951, 2128, 2150, 1922, 1450, 1518, 1510, 755, - 2059, 2128, 2778, 2505, 2084, 1805, 2031, 1857, 712, - 1374, 2150, 2505, 4308, 3136, 2829, 2818, 2263, 1157, - 1430, 1922, 2084, 3136, 3795, 2953, 3031, 2139, 1258, - 917, 1450, 1805, 2829, 2953, 4579, 4160, 3010, 1695, - 1004, 1518, 2031, 2818, 3031, 4160, 6044, 3400, 1268, - 1329, 1510, 1857, 2263, 2139, 3010, 3400, 7512, 1088, - 674, 755, 712, 1157, 1258, 1695, 1268, 1088, 10000 -}; - -static const ClassicDescMod classic_yaw00_lev3_p41(9, yaw00_prof_lev3_p41, yaw00_cov_lev3_p41); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P41_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p42.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p42.mh deleted file mode 100755 index 326e9d0..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p42.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p42: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P42_MH -#define STASM_CLASSIC_YAW00_LEV3_P42_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p42[9] = -{ - -0.15385, -0.8136, -0.01407, 0.08933, -1.59383, 0.88949, 1.25323, 0.63057, 0.41361 -}; - -static const double yaw00_cov_lev3_p42[9*9] = -{ - 4218, 1519, 1395, 667, 929, 370, 163, 245, 263, - 1519, 2471, 1697, 1701, 1437, 1184, 1205, 1063, 896, - 1395, 1697, 2260, 2164, 1676, 1631, 1817, 1578, 1223, - 667, 1701, 2164, 3477, 2510, 2505, 2640, 2114, 1745, - 929, 1437, 1676, 2510, 3551, 2382, 2440, 1653, 1331, - 370, 1184, 1631, 2505, 2382, 4158, 3957, 3081, 2561, - 163, 1205, 1817, 2640, 2440, 3957, 5638, 3758, 2515, - 245, 1063, 1578, 2114, 1653, 3081, 3758, 6428, 2100, - 263, 896, 1223, 1745, 1331, 2561, 2515, 2100, 10000 -}; - -static const ClassicDescMod classic_yaw00_lev3_p42(9, yaw00_prof_lev3_p42, yaw00_cov_lev3_p42); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P42_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p43.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p43.mh deleted file mode 100755 index 5d66f49..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p43.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p43: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P43_MH -#define STASM_CLASSIC_YAW00_LEV3_P43_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p43[9] = -{ - 0.30204, -0.10495, 0.15015, -0.06969, -1.40525, 1.42774, 1.11815, 0.6605, 0.19948 -}; - -static const double yaw00_cov_lev3_p43[9*9] = -{ - 4462, 781, 845, 600, 492, 303, 65, 175, 36, - 781, 4531, 2127, 1702, 1167, 782, 165, 295, 561, - 845, 2127, 4676, 3206, 1459, 1391, 937, 927, 586, - 600, 1702, 3206, 6072, 3117, 2362, 1570, 1579, 1039, - 492, 1167, 1459, 3117, 4911, 2430, 1761, 832, 1131, - 303, 782, 1391, 2362, 2430, 7038, 5295, 3118, 1423, - 65, 165, 937, 1570, 1761, 5295, 8949, 3875, 733, - 175, 295, 927, 1579, 832, 3118, 3875, 10000, 817, - 36, 561, 586, 1039, 1131, 1423, 733, 817, 8059 -}; - -static const ClassicDescMod classic_yaw00_lev3_p43(9, yaw00_prof_lev3_p43, yaw00_cov_lev3_p43); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P43_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p44.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p44.mh deleted file mode 100755 index d75da7f..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p44.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p44: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P44_MH -#define STASM_CLASSIC_YAW00_LEV3_P44_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p44[9] = -{ - 0.21558, 0.4672, 0.40921, -0.22744, -0.75243, -0.36792, -0.71019, 0.57578, 0.47084 -}; - -static const double yaw00_cov_lev3_p44[9*9] = -{ - 5300, 570, 1328, 1727, 505, 208, 605, 430, 227, - 570, 5402, 827, 1559, 444, 402, 365, 555, 309, - 1328, 827, 6863, 629, 851, 455, 102, 530, 27, - 1727, 1559, 629, 9496, 1555, 1490, 590, 702, 341, - 505, 444, 851, 1555, 10000, 3361, 2404, 1716, 1666, - 208, 402, 455, 1490, 3361, 8363, 3152, 2305, 2270, - 605, 365, 102, 590, 2404, 3152, 7926, 2843, 2516, - 430, 555, 530, 702, 1716, 2305, 2843, 6463, 3165, - 227, 309, 27, 341, 1666, 2270, 2516, 3165, 7012 -}; - -static const ClassicDescMod classic_yaw00_lev3_p44(9, yaw00_prof_lev3_p44, yaw00_cov_lev3_p44); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P44_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p45.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p45.mh deleted file mode 100755 index a2df063..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p45.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p45: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P45_MH -#define STASM_CLASSIC_YAW00_LEV3_P45_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p45[9] = -{ - 0.39757, 0.25329, -0.05001, -0.5672, -1.00273, -1.69463, 0.68152, 0.88865, -0.27854 -}; - -static const double yaw00_cov_lev3_p45[9*9] = -{ - 9853, 413, -899, 809, 714, 324, 549, 489, 154, - 413, 10000, -1730, -279, 785, 203, 544, 474, 95, - -899, -1730, 9871, -371, 820, 667, 446, 280, 46, - 809, -279, -371, 9737, 1560, 1388, 535, 290, 118, - 714, 785, 820, 1560, 6594, 3099, 1240, 998, 477, - 324, 203, 667, 1388, 3099, 4279, 1633, 1357, 674, - 549, 544, 446, 535, 1240, 1633, 2330, 1775, 727, - 489, 474, 280, 290, 998, 1357, 1775, 2414, 970, - 154, 95, 46, 118, 477, 674, 727, 970, 1138 -}; - -static const ClassicDescMod classic_yaw00_lev3_p45(9, yaw00_prof_lev3_p45, yaw00_cov_lev3_p45); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P45_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p46.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p46.mh deleted file mode 100755 index c867573..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p46.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p46: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P46_MH -#define STASM_CLASSIC_YAW00_LEV3_P46_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p46[9] = -{ - 0.35003, 0.09059, -0.31508, -0.59295, -0.85508, -1.96547, 0.32381, 1.32897, -0.30082 -}; - -static const double yaw00_cov_lev3_p46[9*9] = -{ - 7926, -2030, 1373, 1339, -7, 54, 281, 333, 52, - -2030, 7812, -2501, 765, 343, 97, 395, 292, 173, - 1373, -2501, 10000, 260, 440, 654, 375, 68, 67, - 1339, 765, 260, 5253, 968, 954, 389, 240, 246, - -7, 343, 440, 968, 3388, 1494, 500, 328, 296, - 54, 97, 654, 954, 1494, 2328, 895, 739, 496, - 281, 395, 375, 389, 500, 895, 1453, 1091, 515, - 333, 292, 68, 240, 328, 739, 1091, 1449, 589, - 52, 173, 67, 246, 296, 496, 515, 589, 740 -}; - -static const ClassicDescMod classic_yaw00_lev3_p46(9, yaw00_prof_lev3_p46, yaw00_cov_lev3_p46); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P46_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p47.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p47.mh deleted file mode 100755 index ea0e0c3..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p47.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p47: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P47_MH -#define STASM_CLASSIC_YAW00_LEV3_P47_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p47[9] = -{ - -0.46752, 0.23382, -0.86771, -0.6443, 1.60984, 0.67148, 0.51306, -0.15841, -0.51084 -}; - -static const double yaw00_cov_lev3_p47[9*9] = -{ - 2273, 1603, 2022, 1346, 1343, 1079, 798, 869, 346, - 1603, 3045, 3033, 2356, 2633, 2084, 1386, 943, 308, - 2022, 3033, 5510, 4211, 3969, 2769, 1695, 1179, 569, - 1346, 2356, 4211, 4803, 3946, 2977, 1764, 1491, 765, - 1343, 2633, 3969, 3946, 7221, 5302, 3182, 1279, 476, - 1079, 2084, 2769, 2977, 5302, 8955, 3268, 1127, 352, - 798, 1386, 1695, 1764, 3182, 3268, 10000, 1554, 1456, - 869, 943, 1179, 1491, 1279, 1127, 1554, 6946, 2229, - 346, 308, 569, 765, 476, 352, 1456, 2229, 5020 -}; - -static const ClassicDescMod classic_yaw00_lev3_p47(9, yaw00_prof_lev3_p47, yaw00_cov_lev3_p47); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P47_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p48.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p48.mh deleted file mode 100755 index d77f050..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p48.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p48: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P48_MH -#define STASM_CLASSIC_YAW00_LEV3_P48_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p48[9] = -{ - -0.2493, 0.20568, 0.58283, 0.43022, -0.17321, 0.34444, -0.82229, -0.47331, 0.65296 -}; - -static const double yaw00_cov_lev3_p48[9*9] = -{ - 2321, 295, 43, 836, 899, 659, 560, 298, 197, - 295, 3478, 500, 945, 1352, 1025, 590, 343, 236, - 43, 500, 5019, 1154, 1477, 994, 309, 247, 364, - 836, 945, 1154, 9197, 1759, 1800, 193, 536, 430, - 899, 1352, 1477, 1759, 10000, 4366, 2114, 1454, 834, - 659, 1025, 994, 1800, 4366, 6862, 2735, 1547, 1157, - 560, 590, 309, 193, 2114, 2735, 3173, 1865, 990, - 298, 343, 247, 536, 1454, 1547, 1865, 2025, 1114, - 197, 236, 364, 430, 834, 1157, 990, 1114, 2024 -}; - -static const ClassicDescMod classic_yaw00_lev3_p48(9, yaw00_prof_lev3_p48, yaw00_cov_lev3_p48); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P48_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p49.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p49.mh deleted file mode 100755 index 66d8af9..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p49.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p49: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P49_MH -#define STASM_CLASSIC_YAW00_LEV3_P49_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p49[9] = -{ - -0.2803, -0.66976, 1.57125, 1.36859, -0.34169, -0.33645, -0.09491, 0.03183, 0.0312 -}; - -static const double yaw00_cov_lev3_p49[9*9] = -{ - 2044, 896, 853, 642, 518, 225, 190, 120, 188, - 896, 1934, 1207, 1357, 881, 494, 581, 372, 432, - 853, 1207, 2449, 1980, 1433, 469, 745, 344, 575, - 642, 1357, 1980, 3104, 1115, 1274, 949, 374, 516, - 518, 881, 1433, 1115, 4608, 1279, 1617, 949, 708, - 225, 494, 469, 1274, 1279, 9209, 1570, 804, 997, - 190, 581, 745, 949, 1617, 1570, 10000, -87, 1232, - 120, 372, 344, 374, 949, 804, -87, 7024, 373, - 188, 432, 575, 516, 708, 997, 1232, 373, 4816 -}; - -static const ClassicDescMod classic_yaw00_lev3_p49(9, yaw00_prof_lev3_p49, yaw00_cov_lev3_p49); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P49_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p50.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p50.mh deleted file mode 100755 index adbe24f..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p50.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p50: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P50_MH -#define STASM_CLASSIC_YAW00_LEV3_P50_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p50[9] = -{ - -0.25251, -0.07798, 0.14096, 0.05969, 0.19841, 0.39933, -1.42783, -0.79251, 0.79265 -}; - -static const double yaw00_cov_lev3_p50[9*9] = -{ - 4320, 564, 1234, 1565, 1490, 1534, 1411, 943, 533, - 564, 5238, 226, 1182, 1453, 1351, 1111, 750, 434, - 1234, 226, 7002, 487, 1296, 1175, 874, 613, 482, - 1565, 1182, 487, 10000, 1315, 2219, 1267, 1091, 540, - 1490, 1453, 1296, 1315, 8923, 2710, 2405, 1528, 973, - 1534, 1351, 1175, 2219, 2710, 6030, 2329, 1861, 1067, - 1411, 1111, 874, 1267, 2405, 2329, 3599, 2196, 1098, - 943, 750, 613, 1091, 1528, 1861, 2196, 2111, 993, - 533, 434, 482, 540, 973, 1067, 1098, 993, 1957 -}; - -static const ClassicDescMod classic_yaw00_lev3_p50(9, yaw00_prof_lev3_p50, yaw00_cov_lev3_p50); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P50_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p51.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p51.mh deleted file mode 100755 index 063872c..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p51.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p51: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P51_MH -#define STASM_CLASSIC_YAW00_LEV3_P51_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p51[9] = -{ - 0.12667, 0.15815, 0.29186, -1.06013, -0.94991, 0.88277, 0.18795, -0.68633, -0.4939 -}; - -static const double yaw00_cov_lev3_p51[9*9] = -{ - 7512, 605, 1406, 376, 365, 229, -121, -49, 73, - 605, 10000, 1984, 2216, 1353, 937, 300, 44, 202, - 1406, 1984, 9264, 2487, 2565, 2021, 1580, 695, 419, - 376, 2216, 2487, 5644, 4009, 2196, 1830, 1103, 573, - 365, 1353, 2565, 4009, 4568, 2783, 2295, 1434, 620, - 229, 937, 2021, 2196, 2783, 4583, 2551, 1273, 711, - -121, 300, 1580, 1830, 2295, 2551, 6179, 2000, 997, - -49, 44, 695, 1103, 1434, 1273, 2000, 3160, 1219, - 73, 202, 419, 573, 620, 711, 997, 1219, 1676 -}; - -static const ClassicDescMod classic_yaw00_lev3_p51(9, yaw00_prof_lev3_p51, yaw00_cov_lev3_p51); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P51_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p52.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p52.mh deleted file mode 100755 index 40073fd..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p52.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p52: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P52_MH -#define STASM_CLASSIC_YAW00_LEV3_P52_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p52[9] = -{ - 0.0284, 0.13483, 0.26775, 0.53227, -0.95089, -1.86625, 0.54629, 0.35119, -0.48689 -}; - -static const double yaw00_cov_lev3_p52[9*9] = -{ - 3607, 381, 618, 838, 428, 127, 96, -30, -10, - 381, 6989, 666, 1515, 559, 177, 240, 99, 6, - 618, 666, 10000, 799, 948, 302, 348, 187, -32, - 838, 1515, 799, 6908, 545, 664, 580, 356, 44, - 428, 559, 948, 545, 3119, 2099, 1249, 631, 293, - 127, 177, 302, 664, 2099, 3347, 1567, 1333, 685, - 96, 240, 348, 580, 1249, 1567, 2511, 1431, 777, - -30, 99, 187, 356, 631, 1333, 1431, 2486, 752, - -10, 6, -32, 44, 293, 685, 777, 752, 1239 -}; - -static const ClassicDescMod classic_yaw00_lev3_p52(9, yaw00_prof_lev3_p52, yaw00_cov_lev3_p52); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P52_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p53.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p53.mh deleted file mode 100755 index 4d96b5f..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p53.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p53: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P53_MH -#define STASM_CLASSIC_YAW00_LEV3_P53_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p53[9] = -{ - 0.36746, 0.02863, 0.22101, -0.63735, -0.6158, 0.81716, -0.06536, -0.60666, -0.45974 -}; - -static const double yaw00_cov_lev3_p53[9*9] = -{ - 6268, 1242, 1551, 295, 488, 494, 234, 274, 286, - 1242, 8350, 3481, 1598, 1204, 730, 15, -113, 249, - 1551, 3481, 10000, 4076, 2851, 2450, 1555, 760, 454, - 295, 1598, 4076, 6520, 5325, 3654, 3155, 2079, 1094, - 488, 1204, 2851, 5325, 6329, 4501, 3673, 2524, 1242, - 494, 730, 2450, 3654, 4501, 5929, 3216, 2153, 1435, - 234, 15, 1555, 3155, 3673, 3216, 6938, 2909, 1492, - 274, -113, 760, 2079, 2524, 2153, 2909, 4122, 1735, - 286, 249, 454, 1094, 1242, 1435, 1492, 1735, 2091 -}; - -static const ClassicDescMod classic_yaw00_lev3_p53(9, yaw00_prof_lev3_p53, yaw00_cov_lev3_p53); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P53_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p54.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p54.mh deleted file mode 100755 index 638543a..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p54.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p54: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P54_MH -#define STASM_CLASSIC_YAW00_LEV3_P54_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p54[9] = -{ - 0.86575, 0.92074, 0.50462, -0.41003, -0.57302, 0.35435, 0.06578, -0.64544, -0.73402 -}; - -static const double yaw00_cov_lev3_p54[9*9] = -{ - 5102, 1957, 1059, 828, 789, 691, 256, 205, 197, - 1957, 8889, 2016, 1270, 1495, 1484, 348, -12, 303, - 1059, 2016, 7808, 1579, 2492, 2277, 491, 311, 516, - 828, 1270, 1579, 6668, 3660, 3813, 1437, 1060, 715, - 789, 1495, 2492, 3660, 8457, 4763, 3478, 2098, 1135, - 691, 1484, 2277, 3813, 4763, 10000, 3343, 2544, 1624, - 256, 348, 491, 1437, 3478, 3343, 7974, 833, 1632, - 205, -12, 311, 1060, 2098, 2544, 833, 8598, 1918, - 197, 303, 516, 715, 1135, 1624, 1632, 1918, 5472 -}; - -static const ClassicDescMod classic_yaw00_lev3_p54(9, yaw00_prof_lev3_p54, yaw00_cov_lev3_p54); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P54_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p55.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p55.mh deleted file mode 100755 index 6c7f8c7..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p55.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p55: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P55_MH -#define STASM_CLASSIC_YAW00_LEV3_P55_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p55[9] = -{ - 0.64847, 0.33652, -0.46453, -1.24459, -0.06485, -0.3087, 0.4817, -0.48653, -1.04308 -}; - -static const double yaw00_cov_lev3_p55[9*9] = -{ - 7761, 385, -184, 305, 678, -145, -77, -197, -331, - 385, 10000, -540, 1440, 1213, 221, -216, -214, -338, - -184, -540, 6880, 3538, 3039, 2346, 798, 922, 575, - 305, 1440, 3538, 6809, 4030, 2273, 855, 797, 527, - 678, 1213, 3039, 4030, 6693, 2030, 1457, 1013, 561, - -145, 221, 2346, 2273, 2030, 5928, 1649, 1415, 702, - -77, -216, 798, 855, 1457, 1649, 4937, 822, 318, - -197, -214, 922, 797, 1013, 1415, 822, 2596, 737, - -331, -338, 575, 527, 561, 702, 318, 737, 1973 -}; - -static const ClassicDescMod classic_yaw00_lev3_p55(9, yaw00_prof_lev3_p55, yaw00_cov_lev3_p55); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P55_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p56.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p56.mh deleted file mode 100755 index 71114d1..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p56.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p56: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P56_MH -#define STASM_CLASSIC_YAW00_LEV3_P56_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p56[9] = -{ - -0.14047, -0.46902, 0.39341, 0.57001, -0.20218, -0.58574, 1.2064, 0.6802, -0.23103 -}; - -static const double yaw00_cov_lev3_p56[9*9] = -{ - 4113, 3785, 3285, 2394, 1955, 1152, 501, 406, 269, - 3785, 6345, 5425, 4327, 3398, 2382, 1445, 1314, 712, - 3285, 5425, 6545, 5244, 4155, 2998, 1968, 1746, 849, - 2394, 4327, 5244, 6762, 5247, 3859, 2439, 1914, 969, - 1955, 3398, 4155, 5247, 10000, 5336, 3413, 2864, 1976, - 1152, 2382, 2998, 3859, 5336, 6711, 3799, 3955, 2354, - 501, 1445, 1968, 2439, 3413, 3799, 6582, 4651, 3795, - 406, 1314, 1746, 1914, 2864, 3955, 4651, 6728, 2325, - 269, 712, 849, 969, 1976, 2354, 3795, 2325, 9763 -}; - -static const ClassicDescMod classic_yaw00_lev3_p56(9, yaw00_prof_lev3_p56, yaw00_cov_lev3_p56); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P56_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p57.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p57.mh deleted file mode 100755 index e802fa0..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p57.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p57: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P57_MH -#define STASM_CLASSIC_YAW00_LEV3_P57_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p57[9] = -{ - -0.12031, 0.06291, -0.24273, -0.59397, 0.32394, 0.58122, -0.00831, -0.09718, -0.00943 -}; - -static const double yaw00_cov_lev3_p57[9*9] = -{ - 2895, 1056, 939, 980, 507, 324, 598, 497, -38, - 1056, 2665, 1250, 965, 705, 272, 404, 311, -73, - 939, 1250, 2595, 876, 928, 296, 45, 164, -44, - 980, 965, 876, 2643, 929, 380, -97, 229, 233, - 507, 705, 928, 929, 3736, 1620, 860, 1156, 1104, - 324, 272, 296, 380, 1620, 7907, 1478, 1513, 1620, - 598, 404, 45, -97, 860, 1478, 10000, 2890, 1745, - 497, 311, 164, 229, 1156, 1513, 2890, 8918, 2528, - -38, -73, -44, 233, 1104, 1620, 1745, 2528, 7807 -}; - -static const ClassicDescMod classic_yaw00_lev3_p57(9, yaw00_prof_lev3_p57, yaw00_cov_lev3_p57); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P57_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p58.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p58.mh deleted file mode 100755 index a3362fe..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p58.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p58: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P58_MH -#define STASM_CLASSIC_YAW00_LEV3_P58_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p58[9] = -{ - 0.61353, 0.67574, 0.10865, -0.29798, -0.17995, 0.21487, 0.14873, -0.52362, -0.9158 -}; - -static const double yaw00_cov_lev3_p58[9*9] = -{ - 5765, 1736, 1817, 1582, 1306, 667, 305, 189, 129, - 1736, 8038, 1823, 2263, 1451, 943, -258, -451, -265, - 1817, 1823, 8940, 4135, 2481, 1939, 434, -440, -330, - 1582, 2263, 4135, 9223, 5742, 3601, 2134, 890, 166, - 1306, 1451, 2481, 5742, 10000, 5822, 3082, 1986, 914, - 667, 943, 1939, 3601, 5822, 8556, 4368, 3024, 1791, - 305, -258, 434, 2134, 3082, 4368, 6681, 2669, 1383, - 189, -451, -440, 890, 1986, 3024, 2669, 7586, 2223, - 129, -265, -330, 166, 914, 1791, 1383, 2223, 3999 -}; - -static const ClassicDescMod classic_yaw00_lev3_p58(9, yaw00_prof_lev3_p58, yaw00_cov_lev3_p58); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P58_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p59.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p59.mh deleted file mode 100755 index 2770496..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p59.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p59: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P59_MH -#define STASM_CLASSIC_YAW00_LEV3_P59_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p59[9] = -{ - 0.18141, 0.03358, -0.3606, -0.46832, 0.15204, 0.79701, 0.68443, -0.03277, -0.43359 -}; - -static const double yaw00_cov_lev3_p59[9*9] = -{ - 3891, 611, 565, 435, 435, 299, 137, -257, -119, - 611, 4331, 472, 652, 464, 435, 14, -235, -154, - 565, 472, 3722, 471, 704, 528, 7, -226, 73, - 435, 652, 471, 3622, 773, 971, 300, 0, 183, - 435, 464, 704, 773, 4131, 1785, 1382, 1166, 540, - 299, 435, 528, 971, 1785, 4943, 1898, 1675, 707, - 137, 14, 7, 300, 1382, 1898, 7199, 1504, 993, - -257, -235, -226, 0, 1166, 1675, 1504, 8344, 586, - -119, -154, 73, 183, 540, 707, 993, 586, 10000 -}; - -static const ClassicDescMod classic_yaw00_lev3_p59(9, yaw00_prof_lev3_p59, yaw00_cov_lev3_p59); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P59_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p60.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p60.mh deleted file mode 100755 index e701a74..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p60.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p60: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P60_MH -#define STASM_CLASSIC_YAW00_LEV3_P60_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p60[9] = -{ - -0.37662, -0.12607, -0.1661, -0.30489, -1.09886, 0.28659, 0.84327, 0.04401, 0.25194 -}; - -static const double yaw00_cov_lev3_p60[9*9] = -{ - 5663, 2773, 2318, 1661, 927, 459, 169, -350, -145, - 2773, 6681, 3252, 2074, 1965, 889, 709, 39, -315, - 2318, 3252, 8524, 3224, 3615, 2593, 2029, 843, 401, - 1661, 2074, 3224, 10000, 4518, 2528, 2443, 1564, 559, - 927, 1965, 3615, 4518, 8744, 5968, 4789, 3190, 2231, - 459, 889, 2593, 2528, 5968, 7964, 6322, 3727, 1340, - 169, 709, 2029, 2443, 4789, 6322, 8036, 4685, 1827, - -350, 39, 843, 1564, 3190, 3727, 4685, 6580, 2592, - -145, -315, 401, 559, 2231, 1340, 1827, 2592, 5017 -}; - -static const ClassicDescMod classic_yaw00_lev3_p60(9, yaw00_prof_lev3_p60, yaw00_cov_lev3_p60); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P60_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p61.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p61.mh deleted file mode 100755 index 9f76940..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p61.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p61: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P61_MH -#define STASM_CLASSIC_YAW00_LEV3_P61_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p61[9] = -{ - -0.371, -0.6769, 0.11224, 0.32272, -0.53338, -0.42476, 0.5314, 0.14022, 0.03804 -}; - -static const double yaw00_cov_lev3_p61[9*9] = -{ - 5051, 2673, 2573, 1712, 792, 629, 536, 182, -1, - 2673, 3758, 2614, 2553, 1930, 928, 608, 323, 171, - 2573, 2614, 4792, 3975, 3549, 2196, 1603, 1002, 589, - 1712, 2553, 3975, 9992, 5786, 4333, 3689, 2702, 1656, - 792, 1930, 3549, 5786, 9146, 7111, 6197, 4846, 3112, - 629, 928, 2196, 4333, 7111, 9498, 8370, 6517, 2956, - 536, 608, 1603, 3689, 6197, 8370, 10000, 7617, 3380, - 182, 323, 1002, 2702, 4846, 6517, 7617, 8509, 3838, - -1, 171, 589, 1656, 3112, 2956, 3380, 3838, 4959 -}; - -static const ClassicDescMod classic_yaw00_lev3_p61(9, yaw00_prof_lev3_p61, yaw00_cov_lev3_p61); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P61_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p62.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p62.mh deleted file mode 100755 index 330856a..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p62.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p62: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P62_MH -#define STASM_CLASSIC_YAW00_LEV3_P62_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p62[9] = -{ - -0.52524, -0.74276, 0.16123, 0.28198, -0.78566, -0.12919, 0.4525, 0.09494, 0.1109 -}; - -static const double yaw00_cov_lev3_p62[9*9] = -{ - 5149, 2614, 3221, 2311, 1284, 869, 732, 267, 81, - 2614, 3806, 3008, 3004, 2274, 1026, 779, 411, 206, - 3221, 3008, 5838, 4987, 4257, 2604, 2022, 1270, 762, - 2311, 3004, 4987, 10000, 6042, 4399, 3835, 2859, 1723, - 1284, 2274, 4257, 6042, 8959, 6852, 5965, 4518, 2957, - 869, 1026, 2604, 4399, 6852, 8534, 7506, 5681, 2691, - 732, 779, 2022, 3835, 5965, 7506, 8620, 6373, 2955, - 267, 411, 1270, 2859, 4518, 5681, 6373, 7005, 3218, - 81, 206, 762, 1723, 2957, 2691, 2955, 3218, 4220 -}; - -static const ClassicDescMod classic_yaw00_lev3_p62(9, yaw00_prof_lev3_p62, yaw00_cov_lev3_p62); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P62_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p63.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p63.mh deleted file mode 100755 index ff24a00..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p63.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p63: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P63_MH -#define STASM_CLASSIC_YAW00_LEV3_P63_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p63[9] = -{ - -0.38185, -0.54392, 0.2913, 0.29329, -0.57748, -0.4354, 0.59802, 0.23987, 0.09918 -}; - -static const double yaw00_cov_lev3_p63[9*9] = -{ - 4508, 2843, 2135, 1718, 985, 710, 465, 56, 0, - 2843, 3879, 2732, 2548, 1999, 964, 590, 237, 112, - 2135, 2732, 4609, 3902, 3186, 2010, 1451, 847, 525, - 1718, 2548, 3902, 10000, 4934, 3628, 3115, 2417, 1431, - 985, 1999, 3186, 4934, 7443, 5687, 4940, 3765, 2533, - 710, 964, 2010, 3628, 5687, 7723, 6666, 5150, 2339, - 465, 590, 1451, 3115, 4940, 6666, 8276, 6212, 2776, - 56, 237, 847, 2417, 3765, 5150, 6212, 7436, 3238, - 0, 112, 525, 1431, 2533, 2339, 2776, 3238, 4946 -}; - -static const ClassicDescMod classic_yaw00_lev3_p63(9, yaw00_prof_lev3_p63, yaw00_cov_lev3_p63); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P63_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p64.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p64.mh deleted file mode 100755 index 0d212db..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p64.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p64: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P64_MH -#define STASM_CLASSIC_YAW00_LEV3_P64_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p64[9] = -{ - -0.34019, -0.19718, -0.26923, -0.62919, -1.12854, -0.00036, 1.04245, 0.23561, 0.24472 -}; - -static const double yaw00_cov_lev3_p64[9*9] = -{ - 5933, 1969, 2826, 2141, 1546, 1289, 694, 307, 763, - 1969, 6204, 2487, 2081, 1590, 664, 566, 230, 344, - 2826, 2487, 9095, 3051, 3809, 2837, 2192, 1345, 945, - 2141, 2081, 3051, 10000, 5153, 2933, 2168, 1392, 1143, - 1546, 1590, 3809, 5153, 9878, 6099, 4770, 3583, 2583, - 1289, 664, 2837, 2933, 6099, 7402, 6345, 4011, 1626, - 694, 566, 2192, 2168, 4770, 6345, 9621, 5445, 2405, - 307, 230, 1345, 1392, 3583, 4011, 5445, 7765, 2975, - 763, 344, 945, 1143, 2583, 1626, 2405, 2975, 5514 -}; - -static const ClassicDescMod classic_yaw00_lev3_p64(9, yaw00_prof_lev3_p64, yaw00_cov_lev3_p64); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P64_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p65.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p65.mh deleted file mode 100755 index f159ed6..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p65.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p65: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P65_MH -#define STASM_CLASSIC_YAW00_LEV3_P65_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p65[9] = -{ - 0.39768, 0.38616, 0.40858, -0.20025, -0.78601, -0.57595, 0.15249, 0.626, 0.39444 -}; - -static const double yaw00_cov_lev3_p65[9*9] = -{ - 5411, 239, 399, 220, 545, 667, 579, 372, 241, - 239, 7299, 93, 386, 255, 510, 392, 270, 129, - 399, 93, 10000, 493, 1189, 1055, 707, 200, 128, - 220, 386, 493, 7400, 1925, 1797, 1045, -112, -570, - 545, 255, 1189, 1925, 6253, 1992, 1242, 76, -65, - 667, 510, 1055, 1797, 1992, 4774, 1524, 596, 320, - 579, 392, 707, 1045, 1242, 1524, 3993, 507, 637, - 372, 270, 200, -112, 76, 596, 507, 3820, 461, - 241, 129, 128, -570, -65, 320, 637, 461, 4487 -}; - -static const ClassicDescMod classic_yaw00_lev3_p65(9, yaw00_prof_lev3_p65, yaw00_cov_lev3_p65); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P65_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p66.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p66.mh deleted file mode 100755 index 67e66af..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p66.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p66: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P66_MH -#define STASM_CLASSIC_YAW00_LEV3_P66_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p66[9] = -{ - 0.15776, -0.36912, -0.31738, -0.32714, -1.12643, 0.79925, 0.78636, 0.0936, -0.20441 -}; - -static const double yaw00_cov_lev3_p66[9*9] = -{ - 7881, 44, 2544, 477, 1377, 1779, 1031, 547, 25, - 44, 8366, 3064, 2863, 2274, 2776, 2308, 1658, 217, - 2544, 3064, 9123, 4482, 3987, 3792, 3603, 1654, 513, - 477, 2863, 4482, 9659, 7159, 6505, 4862, 2904, 1056, - 1377, 2274, 3987, 7159, 10000, 8038, 5832, 3257, 1572, - 1779, 2776, 3792, 6505, 8038, 9581, 7167, 3780, 2097, - 1031, 2308, 3603, 4862, 5832, 7167, 8845, 4400, 2419, - 547, 1658, 1654, 2904, 3257, 3780, 4400, 9090, 2301, - 25, 217, 513, 1056, 1572, 2097, 2419, 2301, 4339 -}; - -static const ClassicDescMod classic_yaw00_lev3_p66(9, yaw00_prof_lev3_p66, yaw00_cov_lev3_p66); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P66_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p67.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p67.mh deleted file mode 100755 index d70a274..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p67.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p67: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P67_MH -#define STASM_CLASSIC_YAW00_LEV3_P67_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p67[9] = -{ - 0.02556, -0.50428, -0.12886, 0.08893, -0.69572, 0.26072, 0.85667, -0.32984, -0.2539 -}; - -static const double yaw00_cov_lev3_p67[9*9] = -{ - 6731, 1548, 2592, 523, 762, 895, 458, 152, -267, - 1548, 6971, 4117, 3111, 2819, 3038, 2788, 1117, 179, - 2592, 4117, 7277, 5410, 4942, 5022, 4820, 2226, 608, - 523, 3111, 5410, 8900, 7919, 7505, 6001, 2932, 898, - 762, 2819, 4942, 7919, 10000, 9015, 6952, 3424, 1114, - 895, 3038, 5022, 7505, 9015, 9892, 7694, 3760, 1441, - 458, 2788, 4820, 6001, 6952, 7694, 9269, 4243, 2462, - 152, 1117, 2226, 2932, 3424, 3760, 4243, 6919, 2096, - -267, 179, 608, 898, 1114, 1441, 2462, 2096, 3183 -}; - -static const ClassicDescMod classic_yaw00_lev3_p67(9, yaw00_prof_lev3_p67, yaw00_cov_lev3_p67); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P67_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p68.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p68.mh deleted file mode 100755 index 9e3f59e..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p68.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p68: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P68_MH -#define STASM_CLASSIC_YAW00_LEV3_P68_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p68[9] = -{ - -0.26339, 0.18014, 0.26401, -0.77565, -0.4069, 0.83558, 0.08825, 0.18948, 0.42155 -}; - -static const double yaw00_cov_lev3_p68[9*9] = -{ - 2554, 1683, 1360, 1337, 83, -91, 12, -165, -342, - 1683, 5230, 3197, 3404, 1650, 1122, 848, 363, -70, - 1360, 3197, 9490, 4943, 3665, 3154, 2934, 1747, 902, - 1337, 3404, 4943, 10000, 7165, 6000, 5084, 3923, 2200, - 83, 1650, 3665, 7165, 9424, 8164, 6654, 3758, 2381, - -91, 1122, 3154, 6000, 8164, 9746, 7365, 4038, 2184, - 12, 848, 2934, 5084, 6654, 7365, 9098, 4865, 2653, - -165, 363, 1747, 3923, 3758, 4038, 4865, 7464, 3764, - -342, -70, 902, 2200, 2381, 2184, 2653, 3764, 8203 -}; - -static const ClassicDescMod classic_yaw00_lev3_p68(9, yaw00_prof_lev3_p68, yaw00_cov_lev3_p68); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P68_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p69.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p69.mh deleted file mode 100755 index e1f796c..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p69.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p69: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P69_MH -#define STASM_CLASSIC_YAW00_LEV3_P69_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p69[9] = -{ - 0.11325, 0.23692, -0.35341, -0.98213, 0.82074, 0.20673, 0.04078, 0.54858, -0.13068 -}; - -static const double yaw00_cov_lev3_p69[9*9] = -{ - 2278, 1235, 1291, 788, 411, 479, 111, -113, -796, - 1235, 5387, 2958, 2750, 2258, 1984, 1386, 386, -566, - 1291, 2958, 6673, 5244, 4686, 3668, 2971, 1373, 157, - 788, 2750, 5244, 7421, 6129, 5026, 3214, 1470, 222, - 411, 2258, 4686, 6129, 7393, 5772, 3291, 1670, -240, - 479, 1984, 3668, 5026, 5772, 8514, 4108, 2316, -968, - 111, 1386, 2971, 3214, 3291, 4108, 8318, 4165, 1890, - -113, 386, 1373, 1470, 1670, 2316, 4165, 10000, 382, - -796, -566, 157, 222, -240, -968, 1890, 382, 9428 -}; - -static const ClassicDescMod classic_yaw00_lev3_p69(9, yaw00_prof_lev3_p69, yaw00_cov_lev3_p69); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P69_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p70.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p70.mh deleted file mode 100755 index 2998a9c..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p70.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p70: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P70_MH -#define STASM_CLASSIC_YAW00_LEV3_P70_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p70[9] = -{ - 0.18151, 0.18845, -0.48246, -0.71825, 1.06182, -0.28739, 0.09622, 0.70938, -0.10028 -}; - -static const double yaw00_cov_lev3_p70[9*9] = -{ - 2708, 1890, 2081, 1596, 1371, 1182, 599, 339, -363, - 1890, 6100, 4801, 4654, 4359, 3429, 2566, 1451, 259, - 2081, 4801, 8534, 7696, 7336, 5674, 4101, 2495, 824, - 1596, 4654, 7696, 9471, 8719, 6665, 4308, 2614, 844, - 1371, 4359, 7336, 8719, 10000, 7103, 4440, 3128, 614, - 1182, 3429, 5674, 6665, 7103, 8752, 4820, 3107, -12, - 599, 2566, 4101, 4308, 4440, 4820, 6634, 4287, 2358, - 339, 1451, 2495, 2614, 3128, 3107, 4287, 8452, 694, - -363, 259, 824, 844, 614, -12, 2358, 694, 8428 -}; - -static const ClassicDescMod classic_yaw00_lev3_p70(9, yaw00_prof_lev3_p70, yaw00_cov_lev3_p70); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P70_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p71.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p71.mh deleted file mode 100755 index 2baa63c..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p71.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p71: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P71_MH -#define STASM_CLASSIC_YAW00_LEV3_P71_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p71[9] = -{ - 0.54847, 0.26183, -0.30129, -0.27061, -0.43948, -1.06291, 1.39264, 0.40615, -0.17231 -}; - -static const double yaw00_cov_lev3_p71[9*9] = -{ - 6673, 33, 2230, 1370, 483, 817, 963, 766, 504, - 33, 7451, -411, 1723, -403, 437, 992, 781, 207, - 2230, -411, 9590, 2931, 1322, 1345, 1200, 897, 284, - 1370, 1723, 2931, 10000, 2978, 2958, 2521, 2321, 1021, - 483, -403, 1322, 2978, 7706, 4861, 3761, 2491, 1382, - 817, 437, 1345, 2958, 4861, 6616, 4900, 3559, 1890, - 963, 992, 1200, 2521, 3761, 4900, 6136, 3799, 1972, - 766, 781, 897, 2321, 2491, 3559, 3799, 5096, 1954, - 504, 207, 284, 1021, 1382, 1890, 1972, 1954, 4308 -}; - -static const ClassicDescMod classic_yaw00_lev3_p71(9, yaw00_prof_lev3_p71, yaw00_cov_lev3_p71); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P71_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p72.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p72.mh deleted file mode 100755 index 28fa123..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p72.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p72: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P72_MH -#define STASM_CLASSIC_YAW00_LEV3_P72_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p72[9] = -{ - 0.11958, 0.27902, 0.40483, 0.42027, -0.11631, -1.03305, -0.18954, 1.19732, 0.36391 -}; - -static const double yaw00_cov_lev3_p72[9*9] = -{ - 3808, 204, 612, 638, 1003, 581, 225, 52, -20, - 204, 4773, 343, 1053, 1484, 519, 317, 166, 34, - 612, 343, 5237, 528, 1521, 272, 254, 162, 110, - 638, 1053, 528, 7293, 839, -220, 166, 387, 268, - 1003, 1484, 1521, 839, 10000, 810, 1095, 699, 599, - 581, 519, 272, -220, 810, 5035, 2570, 1565, 804, - 225, 317, 254, 166, 1095, 2570, 3390, 2066, 1411, - 52, 166, 162, 387, 699, 1565, 2066, 3154, 1478, - -20, 34, 110, 268, 599, 804, 1411, 1478, 2851 -}; - -static const ClassicDescMod classic_yaw00_lev3_p72(9, yaw00_prof_lev3_p72, yaw00_cov_lev3_p72); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P72_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p73.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p73.mh deleted file mode 100755 index 6e7af05..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p73.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p73: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P73_MH -#define STASM_CLASSIC_YAW00_LEV3_P73_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p73[9] = -{ - 0.36138, 0.51182, 0.43528, -0.05718, -0.52693, -0.01706, -0.83755, 0.5526, 0.73267 -}; - -static const double yaw00_cov_lev3_p73[9*9] = -{ - 5333, 394, 2311, 2211, 1331, 865, 723, 579, 363, - 394, 5538, 579, 2615, 1614, 489, 359, 512, 386, - 2311, 579, 6965, 1081, 2434, 301, 167, 508, 381, - 2211, 2615, 1081, 8863, 2532, 838, 181, 734, 548, - 1331, 1614, 2434, 2532, 10000, 2880, 1553, 936, 794, - 865, 489, 301, 838, 2880, 5276, 2876, 2296, 1456, - 723, 359, 167, 181, 1553, 2876, 4919, 3218, 2148, - 579, 512, 508, 734, 936, 2296, 3218, 3667, 2305, - 363, 386, 381, 548, 794, 1456, 2148, 2305, 3128 -}; - -static const ClassicDescMod classic_yaw00_lev3_p73(9, yaw00_prof_lev3_p73, yaw00_cov_lev3_p73); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P73_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p74.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p74.mh deleted file mode 100755 index a7952be..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p74.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p74: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P74_MH -#define STASM_CLASSIC_YAW00_LEV3_P74_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p74[9] = -{ - 0.53813, 0.60696, 0.29725, -0.35539, -0.67843, 0.44854, -0.71813, 0.26197, 0.54632 -}; - -static const double yaw00_cov_lev3_p74[9*9] = -{ - 6214, 475, 3189, 2908, 1863, 1053, 743, 607, 475, - 475, 8096, -300, 3098, 2244, 455, 324, 467, 519, - 3189, -300, 10000, 350, 3131, 463, 114, 693, 648, - 2908, 3098, 350, 9965, 4280, 2640, 1513, 1724, 1327, - 1863, 2244, 3131, 4280, 8422, 3626, 2078, 1564, 1418, - 1053, 455, 463, 2640, 3626, 5580, 3711, 3105, 2180, - 743, 324, 114, 1513, 2078, 3711, 6357, 4596, 3142, - 607, 467, 693, 1724, 1564, 3105, 4596, 4963, 3193, - 475, 519, 648, 1327, 1418, 2180, 3142, 3193, 3765 -}; - -static const ClassicDescMod classic_yaw00_lev3_p74(9, yaw00_prof_lev3_p74, yaw00_cov_lev3_p74); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P74_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p75.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p75.mh deleted file mode 100755 index f97b34c..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p75.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p75: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P75_MH -#define STASM_CLASSIC_YAW00_LEV3_P75_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p75[9] = -{ - 0.44402, 0.57292, 0.36433, -0.26926, -0.58094, 0.33974, -0.80873, 0.44575, 0.5498 -}; - -static const double yaw00_cov_lev3_p75[9*9] = -{ - 5655, 688, 2746, 2473, 1373, 913, 635, 564, 342, - 688, 6113, 577, 2840, 1682, 470, 210, 418, 338, - 2746, 577, 8681, 823, 2375, -149, -193, 301, 337, - 2473, 2840, 823, 10000, 3894, 1533, 873, 1098, 767, - 1373, 1682, 2375, 3894, 8414, 3040, 1667, 1092, 950, - 913, 470, -149, 1533, 3040, 5309, 3432, 2817, 1850, - 635, 210, -193, 873, 1667, 3432, 5472, 3904, 2666, - 564, 418, 301, 1098, 1092, 2817, 3904, 4402, 2801, - 342, 338, 337, 767, 950, 1850, 2666, 2801, 3546 -}; - -static const ClassicDescMod classic_yaw00_lev3_p75(9, yaw00_prof_lev3_p75, yaw00_cov_lev3_p75); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P75_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p76.mh b/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p76.mh deleted file mode 100755 index 63be16b..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/classic_yaw00_lev3_p76.mh +++ /dev/null @@ -1,37 +0,0 @@ -// classic_yaw00_lev3_p76: machine generated classical descriptor model - -#ifndef STASM_CLASSIC_YAW00_LEV3_P76_MH -#define STASM_CLASSIC_YAW00_LEV3_P76_MH - -namespace stasm { - -// Generated from muct77_w09.asm -// static const int EYAW = 1; -// static const int NORMALIZEDEYEMOUTHDIST = 100; -// static const double PYR_RATIO = 2; -// static const int FACE_SCALE_METHOD = 1; -// static const int PYR_SCALE_METHOD = 1; -// static const double SIGMOID_SCALE = 0; - -static const double yaw00_prof_lev3_p76[9] = -{ - 0.23139, -0.26664, -0.9059, 0.17825, 0.48608, 0.3785, -0.18926, -0.49198, -0.36116 -}; - -static const double yaw00_cov_lev3_p76[9*9] = -{ - 2640, 797, 784, 581, 274, 384, 122, 55, 87, - 797, 2781, 1555, 1462, 904, 863, 406, 239, 36, - 784, 1555, 2958, 2073, 1585, 994, 367, 284, 98, - 581, 1462, 2073, 3048, 2141, 1269, -82, 75, 156, - 274, 904, 1585, 2141, 3719, 1396, -525, -148, 241, - 384, 863, 994, 1269, 1396, 10000, 1038, 1219, 814, - 122, 406, 367, -82, -525, 1038, 8781, 695, 1483, - 55, 239, 284, 75, -148, 1219, 695, 5379, 559, - 87, 36, 98, 156, 241, 814, 1483, 559, 4258 -}; - -static const ClassicDescMod classic_yaw00_lev3_p76(9, yaw00_prof_lev3_p76, yaw00_cov_lev3_p76); - -} // namespace stasm -#endif // STASM_CLASSIC_YAW00_LEV3_P76_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classic/yaw00_shapemodel.mh b/3rdparty/stasm4.0.0/stasm/include/classic/yaw00_shapemodel.mh deleted file mode 100755 index ef16f43..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classic/yaw00_shapemodel.mh +++ /dev/null @@ -1,414 +0,0 @@ -// /b/trainres/classic/yaw00_shapemodel.mh: machine generated shape model - -#ifndef STASM_YAW00_SHAPEMODEL_MH -#define STASM_YAW00_SHAPEMODEL_MH - -namespace stasm { - -// Generated from muct77_w09.asm - -static const double yaw00_meanshapedata[77*2] = -{ - -80.9, -20.1, - -81.6, 6.4, - -79.1, 30.9, - -73.7, 56.8, - -54.7, 89.3, - -25, 110.2, - -0.1, 114.8, - 24.8, 110.3, - 54.5, 89.3, - 73.6, 56.8, - 78.9, 30.9, - 81.4, 6.4, - 80.8, -20.1, - 37.5, -97.1, - -0.1, -104.7, - -37.7, -97.1, - -32.7, -48.2, - -50.1, -48.3, - -64.5, -36.1, - -49.2, -39.1, - -33.5, -38.8, - -16.5, -38.5, - 16.3, -38.5, - 32.4, -48.2, - 49.9, -48.3, - 64.3, -36.1, - 49, -39.1, - 33.3, -38.8, - 37.5, -31.5, - -37.7, -31.5, - -23.6, -19.6, - -30.8, -24.9, - -38, -27.2, - -44.7, -25, - -51.4, -19.8, - -44.6, -16.6, - -37.9, -15.2, - -30.8, -16.5, - -37.7, -21.7, - 37.5, -21.7, - 23.4, -19.6, - 30.6, -24.9, - 37.8, -27.2, - 44.5, -25, - 51.2, -19.8, - 44.4, -16.6, - 37.7, -15.2, - 30.6, -16.5, - 11.9, 1.7, - -0.1, 1.7, - -12.1, 1.7, - -13, 23.3, - -0.1, 15.5, - 12.7, 23.3, - 24.8, 17.2, - 19, 27.4, - -0.1, 31, - -19.2, 27.4, - -25, 17.2, - -31.8, 56.1, - -19.6, 47.4, - -7.4, 44.3, - -0.1, 45.5, - 7.2, 44.3, - 19.4, 47.4, - 31.6, 56.1, - 14.4, 53.2, - -0.1, 53.3, - -14.6, 53.2, - -14.7, 59.6, - -0.1, 61.5, - 14.5, 59.6, - 23.8, 65.4, - 12.8, 70.2, - -0.1, 71.5, - -13, 70.2, - -24, 65.4 -}; - -static const cv::Mat yaw00_meanshape(77, 2, CV_64FC1, (double *)yaw00_meanshapedata); - -static const double yaw00_eigvalsdata[154*1] = -{ - 1000, - 714.9, - 245.236, - 189.634, - 129.081, - 113.867, - 85.7019, - 60.9867, - 46.6191, - 45.1304, - 41.652, - 37.3664, - 29.7153, - 26.0987, - 24.8578, - 24.2809, - 20.9517, - 18.5109, - 15.1495, - 14.6563, - 13.071, - 12.7726, - 11.6411, - 10.3051, - 9.97965, - 9.16276, - 8.69054, - 8.69036, - 7.98141, - 7.36461, - 6.80137, - 6.34376, - 6.33394, - 6.01227, - 5.9643, - 5.76276, - 5.61941, - 5.10058, - 4.84399, - 4.65382, - 4.54713, - 4.4257, - 4.19059, - 4.07979, - 3.99258, - 3.83784, - 3.79472, - 3.64141, - 3.53894, - 3.52489, - 3.46172, - 3.3489, - 3.19113, - 3.09963, - 3.07535, - 2.94504, - 2.87905, - 2.87463, - 2.74812, - 2.73753, - 2.55646, - 2.52934, - 2.46176, - 2.37718, - 2.37548, - 2.23063, - 2.19822, - 2.15901, - 2.12316, - 1.98395, - 1.95188, - 1.93959, - 1.90859, - 1.87275, - 1.84054, - 1.76616, - 1.74496, - 1.69017, - 1.64003, - 1.60994, - 1.60524, - 1.53577, - 1.53576, - 1.48986, - 1.4104, - 1.40123, - 1.34331, - 1.31217, - 1.30807, - 1.29491, - 1.23054, - 1.21346, - 1.18526, - 1.17967, - 1.15052, - 1.081, - 1.07841, - 1.06555, - 1.05799, - 1.01081, - 1.00342, - 0.96439, - 0.95236, - 0.89533, - 0.85989, - 0.83393, - 0.80442, - 0.78156, - 0.75351, - 0.70657, - 0.70172, - 0.687, - 0.67108, - 0.66752, - 0.65824, - 0.64129, - 0.62805, - 0.60092, - 0.59339, - 0.58605, - 0.58495, - 0.54269, - 0.52538, - 0.47947, - 0.4227, - 0.32159, - 0.23733, - 0.18979, - 0.18206, - 0.15848, - 0.02612, - 0.0205, - 0.00616, - 0.00159, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 -}; - -static const cv::Mat yaw00_eigvals(154, 1, CV_64FC1, (double *)yaw00_eigvalsdata); - -static const double yaw00_eigvecsdata[154*154] = -{ - 0.28709, 0.02282, 0.14358, 0.08174, 0.00086, -0.07906, -0.00778, 0.15452, -0.04602, 0.0489, -0.21043, -0.09275, -0.06432, -0.20069, -0.09634, -0.20012, -0.11366, 0.03668, -0.13092, -0.24132, 0.1135, 0.03092, 0.05914, -0.10547, -0.04055, -0.12517, 0.19546, 0.0566, 0.24765, -0.13997, -0.00844, -0.06089, -0.04313, 0.08732, -0.00611, 0.29732, 0.03314, -0.05671, -0.10525, -0.02534, -0.03654, 0.06376, 0.10114, -0.11199, 0.21548, -0.06533, 0.00928, 0.05258, 0.1376, -0.11728, 0.03426, 0.08903, 0.01192, 0.24354, 0.0025, 0.08534, -0.09387, 0.05051, -0.09019, -0.0345, -0.04147, 0.18259, -0.02299, -0.08948, -0.07509, 0.02933, 0.03127, 0.05657, 0.05724, -0.03444, 0.00953, 0.03866, -0.02974, 0.0562, 0.03177, 0.04834, -0.03044, -0.05899, -0.0096, -0.01727, 0.03099, 0.06243, -0.01307, -0.06967, -0.05788, 0.04991, -0.03007, -0.08583, -0.0364, 0.00757, 0.05555, 0.02316, -0.03682, 0.00099, 0.01301, -0.01994, 0.01253, 0.00888, 0.00226, -0.00748, 0.0149, -0.02367, -0.01872, 0.0171, -0.01408, 0.00556, -0.01463, 7e-005, -0.00546, 0.00121, -0.01607, -0.00146, -0.00262, 0.01218, -0.00966, -0.01243, 0.00188, -0.00145, -0.00149, 0.01451, -0.0069, 0.00806, 0.00563, 0.00097, 0.00286, 0.01337, -0.00681, -0.00331, 0.00023, 0.00846, 0.00051, -0.00061, 0.00084, 0.0001, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.01804, -0.14083, -0.01611, 0.08458, 0.021, -0.07527, 0.01107, 0.02932, 0.13146, -0.0474, -0.04376, -0.00513, -0.04821, -0.02394, -0.05299, 0.00341, -0.00905, 0.04529, 0.01625, 0.11095, 0.04915, 0.02365, -0.11308, 0.04131, 0.02177, -0.12014, -0.00633, 0.27587, -0.04394, 0.11686, 0.28712, 0.16612, -0.24419, 0.28314, -0.22863, -0.14932, 0.04494, -0.01843, -0.12125, 0.15074, -0.20961, 0.04158, -0.1241, 0.1076, 0.03122, 0.08706, -0.09294, 0.142, 0.08073, -0.07549, 0.03578, -0.21243, 0.07119, 0.08692, -0.03781, 0.07063, 0.08586, -0.25275, 0.0917, -0.03205, 0.03997, 0.02061, -0.02802, -0.21155, 0.10278, 0.04435, -0.069, -0.0425, 0.01801, 0.05386, -0.0012, -0.09454, 0.02864, 0.00338, -0.00959, -0.02962, 0.0139, -0.08704, 0.02986, -0.03778, -0.03056, -0.00745, 0.05056, -0.0363, -0.00089, 0.0781, -0.04884, -0.00497, -0.12661, 0.02461, -0.01493, 0.00151, 0.00762, 0.04136, 0.01544, -0.00417, -0.02574, 0.01648, -0.01305, -0.01939, -0.02319, -0.00018, -0.00739, -0.01362, 0.02382, -0.00257, 0.00545, 0.00961, -0.02682, -0.01061, -0.0266, 0.00498, -0.00568, -3e-005, 0.00737, -0.00022, 0.0071, -0.0054, -0.00443, -0.00715, -0.05356, 0.00698, -0.02796, -0.00337, 0.00426, 0.00241, 0.00795, 0.00078, -0.00357, -0.00231, -0.00282, -0.04747, 0.00192, 0.00079, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.28357, 0.07093, 0.09749, 0.10314, 0.02766, -0.07378, -0.0432, 0.17904, -0.03379, 0.06969, -0.14377, -0.0497, -0.08321, 0.00501, -0.04093, -0.06653, -0.06703, 0.08507, -0.10318, -0.1155, 0.09431, -0.05064, -0.0159, -0.03336, -0.00429, 0.0578, 0.02014, 0.05889, 0.04453, 0.13668, -0.0231, -0.00831, -0.0729, -0.00643, -0.08167, 0.11392, -0.07539, 0.10065, 0.20269, -0.02547, 0.01738, 0.0659, 0.04466, -0.04894, -0.20019, -0.00133, -0.06899, -0.13335, 0.08988, 0.03282, 0.06501, -0.16145, -0.02426, -0.19628, -0.0386, -0.12676, 0.05069, -0.0894, -0.03337, 0.0792, 0.00617, -0.26458, 0.02088, 0.0609, 0.03916, 0.0023, -0.07114, 0.01119, -0.08035, 0.00194, 0.03432, 0.00184, 0.11653, -0.01474, -0.11957, -0.03596, 0.06822, 0.03677, 0.12884, 0.10985, -0.09309, -0.18468, 0.08286, 0.28894, 0.19303, -0.04219, 0.01331, 0.18447, 0.04078, -0.07583, -0.21424, -0.06997, 0.13093, -0.00078, -0.05385, -0.07492, -0.03094, -0.01383, 0.007, -0.00713, -0.00785, 0.00666, 0.0459, -0.04406, 0.03413, 0.01693, 0.00403, -0.00883, 0.01058, -0.00682, 0.02147, 0.02565, 0.01199, 0.00972, 0.03659, 0.02142, 0.00613, 0.0047, -0.0017, -0.00706, -0.00404, 0.01256, -0.01285, -0.00242, -0.00865, -0.00379, 0.00662, 0.0105, 0.00464, -0.01859, -0.00166, -0.00506, -0.00151, 0.00069, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00133, -0.08819, 0.00078, 0.06056, -0.00426, -0.08219, 0.00417, 0.11476, 0.14964, -0.07137, 0.00726, 0.07852, -0.18893, 0.03044, 0.15691, 0.1209, 0.19385, -0.19061, -0.02652, -0.02554, 0.09016, -0.21117, -0.20652, -0.26042, 0.07068, -0.15257, -0.00542, 0.15232, -0.11664, 0.13221, 0.006, 0.08984, -0.06986, 0.0347, -0.06538, -0.06816, 0.05699, 0.13691, -0.03667, -0.10558, -0.20873, -0.02627, 0.10868, -0.13263, -0.02412, -0.16995, -0.03632, -0.13283, -0.01549, -0.00576, -0.05524, 0.21339, 0.03333, -0.10043, 0.26247, -0.1125, -0.15079, 0.31235, -0.13483, 0.01327, -0.09545, 0.03462, -0.02757, 0.07622, -0.03917, -0.07238, 0.0833, 0.04353, 0.01587, -0.03823, 0.00577, 0.02068, 0.00477, -0.01655, -0.02539, -0.00164, 0.0154, -0.01994, 0.00276, -0.01976, -0.0178, 0.02318, 0.03682, -0.0086, 0.00045, 0.02222, -0.01681, -0.02983, 0.00588, -0.0079, 0.00773, 0.0177, -0.02565, -0.00636, 0.01165, -0.00538, -0.00538, 0.01743, 0.01321, -0.00027, 0.00353, -0.00503, 0.00704, 0.00117, 0.00902, -2e-005, 0.00186, 0.01314, -0.00473, -0.0034, -0.00645, 0.00396, 0.01337, 0.01493, 0.00043, 0.00467, 0.00043, 0.00263, 0.0045, 0.00317, 0.00435, 0.00113, 0.00719, -0.00406, -0.0062, 0.00425, -0.00111, -0.00192, -0.00014, 0.0048, -0.008, -0.05187, -0.00184, 0.00086, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.28824, 0.13275, 0.08346, 0.12596, 0.03432, -0.07412, -0.08117, 0.17207, -0.04621, 0.06309, -0.16489, -0.02933, -0.07248, -0.00373, 0.00832, 0.04963, 0.00745, 0.04815, -0.08284, -0.05983, 0.00191, -0.08405, -0.04669, -0.09047, -0.01817, 0.12011, -0.12761, -0.0084, -0.01792, 0.13354, -0.01635, 0.05044, 0.03297, -0.11705, -0.03963, -0.05273, -0.12136, 0.04874, 0.07346, 0.07847, 0.04704, -0.06467, -0.09465, 0.10116, -0.1284, 0.04881, 0.00505, -0.02203, -0.0836, 0.13334, -0.0032, -0.03863, -0.01675, -0.19355, -0.0094, -0.08116, 0.0716, -0.08804, 0.06231, -0.02276, 0.02908, -0.12322, -0.00459, 0.03762, 0.03588, 0.10609, 0.035, -0.13243, -0.03211, 0.04955, -0.07322, -0.04283, -0.11001, -0.0466, 0.13186, -0.03883, -0.01138, 0.01276, -0.16067, -0.08133, 0.08358, 0.1027, -0.07358, -0.38483, -0.1886, -0.01578, -0.00575, -0.14964, -0.0167, 0.10613, 0.27151, 0.03832, -0.16963, -0.00588, 0.07905, 0.14474, 0.03738, -0.04777, -0.00725, -0.00176, -0.02867, 0.01905, -0.03792, 0.03483, -0.02697, -0.04555, 0.00788, 0.02781, -0.01816, 0.02091, 0.01072, -0.01866, 0.01124, -0.00929, -0.04042, -0.01316, -0.00436, -0.00018, -0.00526, -0.00493, 0.0162, 0.00364, 0.02267, -0.01703, -0.00745, -0.00607, -0.00406, 0.00121, -0.00831, -0.00471, 0.00123, -0.0028, -0.00165, -0.00053, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.01091, -0.01012, 0.02936, 0.02984, -0.0901, -0.04326, 0.00646, 0.05766, 0.16742, -0.03754, -0.00178, 0.12365, -0.16771, 0.00748, 0.24542, 0.14409, 0.24059, -0.30045, -0.0548, -0.14996, 0.04078, -0.27099, -0.06049, -0.29202, -0.06493, 0.00299, 0.0095, -0.05487, 0.02384, -0.1038, -0.14099, -0.09111, 0.11621, -0.11576, 0.17179, 0.041, 0.01891, -0.06502, 0.01299, 0.06306, 0.13158, 0.04404, -0.05062, 0.01221, 0.09526, 0.12561, 0.02985, 0.1034, -0.0326, 0.02071, -0.00576, -0.11656, -0.05274, 0.17299, -0.29348, 0.1347, 0.13542, -0.26883, 0.0747, -0.00661, 0.04066, 0.03232, 0.021, -0.06068, 0.01385, 0.02353, -0.08477, -0.01712, -0.022, 0.01275, 0.00539, 0.01308, 0.01103, 0.03542, -0.01044, 0.01111, -0.03556, 0.01416, 0.03621, 0.00049, -0.00845, -0.03632, -0.02449, 0.05227, 0.02688, -0.02009, 0.0202, 0.02918, -0.01571, -0.03132, -0.0411, -0.02121, 0.06808, 0.0173, -0.03644, -0.02402, -0.01157, -0.00187, -0.00575, -0.00105, 0.02, -0.00039, -0.00141, -0.00778, 0.01206, 0.01772, -0.00236, -0.00681, 0.01532, -0.00804, 0.00473, -0.00687, -0.01119, -0.00911, 0.00571, -0.00913, -0.00047, 0.00784, 0.00171, -0.00647, -0.00984, -0.0036, 0.00026, 0.00718, 0.00733, -0.0072, -0.00133, -0.00299, -0.003, -0.00358, -0.00697, -0.05017, -0.00078, 0.00057, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.2961, 0.24316, 0.02723, 0.179, -0.02094, -0.02073, -0.12564, 0.07267, -0.03396, 0.02849, -0.17075, -0.04238, 0.02447, 0.10665, -0.00926, 0.16726, 0.06106, 0.07899, -0.03839, 0.05769, -0.11453, -0.04527, -0.0393, 0.06746, -0.04489, 0.18641, -0.13929, -0.14631, -0.10329, -0.03747, 0.12837, -0.03563, 0.00791, -0.0183, -0.04479, -0.24322, -0.03339, -0.15927, -0.20274, -0.0242, 0.05401, -0.06327, -0.02656, 0.18017, 0.07664, 0.00667, 0.12839, 0.16734, -0.08502, 0.0253, -0.10425, 0.09417, 0.01046, -0.02905, 0.10112, 0.13136, -0.08229, 0.14959, 0.09151, 0.0374, 0.01155, 0.3124, -0.00888, 0.01496, -0.0292, -0.06923, -0.02247, 0.06359, 0.10677, 0.0169, 0.02011, -0.00566, -0.00049, 0.01063, -0.01669, 0.09178, -0.03149, -0.05887, 0.04998, 0.04627, -0.05246, 0.01636, 0.02344, 0.20946, 0.01628, 0.027, 0.04817, 0.06368, -0.01256, -0.05221, -0.12968, 0.00137, 0.08518, 0.02621, -0.06802, -0.07361, -0.01611, 0.07227, 0.00787, 0.01621, 0.00261, -0.02925, 0.00798, -0.01532, 0.03089, 0.05105, -0.0077, -0.02774, 0.01111, -0.02439, -0.01401, 0.00293, -0.02496, 0.00477, 0.01512, 0.00497, 0.00531, 0.00774, 0.00327, 0.00373, -0.00237, -0.00756, -0.01635, 0.00744, 0.00829, -0.00237, 0.005, -0.00136, 0.00844, -0.00809, 0.00068, -0.00242, -0.00062, 0.00035, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.01019, 0.06498, 0.05684, 0.01627, -0.24129, -0.03184, -0.06677, -0.03819, 0.11089, -0.02611, 0.06991, 0.09852, -0.02938, 0.06489, 0.11292, 0.04693, 0.10011, -0.06832, -0.03855, -0.00296, -0.02461, -0.05287, 0.13079, 0.15201, -0.14905, 0.16773, 0.10609, -0.21951, 0.13476, -0.24752, 0.12698, -0.17733, -0.05762, 0.22336, 0.02228, 0.00429, 0.13645, -0.23502, 0.00731, -0.07653, -0.03288, 0.22617, -0.04628, 0.06731, -0.13557, -0.01586, 0.00196, -0.0052, 0.23166, -0.04472, 0.09641, -0.13463, 0.03017, -0.07905, 0.14067, -0.16802, -0.12786, 0.13695, -0.05224, 0.02787, 0.07055, -0.14764, 0.00049, 0.03151, 0.00111, 0.03087, 0.03997, -0.01272, -0.02368, 0.04489, -0.0224, -0.13938, 0.00602, 0.03936, 0.02777, -0.05429, 0.05495, -0.04597, -0.02949, -0.0539, 0.01012, -0.03268, -0.00051, -0.11499, 0.06948, -0.02083, -0.18053, 0.06578, 0.03029, 0.07254, 0.04724, -0.01794, -0.08361, 0.029, 0.11945, 0.02402, 0.00695, -0.00389, -0.02939, -0.01637, -0.00427, 0.01318, -0.00731, -0.00947, -0.03772, 0.0124, -0.01118, 0.01725, -0.03213, 0.01683, -0.0184, 0.00601, 0.00512, 0.0053, -0.01471, 0.00013, -0.00349, -0.00116, 0.00301, 0.00129, -0.04131, -0.01282, -0.04153, -0.02245, -0.00967, 0.02403, -0.00012, 0.00936, 0.00304, 0.00473, -0.0094, -0.05522, -6e-005, 0.00039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.16428, 0.22393, 0.00729, 0.14357, -0.06804, 0.0309, -0.08071, 0.01652, -0.10306, 0.03039, -0.12181, -0.01821, 0.11889, 0.13006, 0.07539, 0.14891, 0.12155, 0.01157, 0.1979, 0.21287, -0.09088, 0.165, 0.1295, -0.00191, 0.14537, -0.24934, 0.14517, -0.2488, -0.264, -0.07005, -0.07235, 0.06874, 0.01001, 0.08019, -0.02725, -0.02841, 0.03184, 0.07137, 0.0647, -0.10881, -0.11382, -0.03826, 0.06387, -0.11157, 0.11967, -0.08579, -0.18712, -0.08707, -0.06521, 0.00489, 0.12495, 0.0055, 0.08117, 0.29447, -0.14404, -0.05288, 0.07909, -0.09144, -0.08857, -0.00584, -0.06751, -0.11131, -0.00332, -0.03135, -0.00027, -0.00791, 0.03015, 0.02726, -0.05808, -0.05201, -0.01083, 0.04985, 0.03352, -0.05397, -0.05872, -0.09899, 0.01634, 0.0624, 0.01914, 0.04268, 0.04491, -0.04352, 0.00728, -0.07808, 0.06067, -0.00154, -0.0423, -0.03608, 0.03008, 0.01904, 0.01331, 0.00102, -0.005, -0.00193, 0.06788, 0.03208, 0.01134, -0.0301, -0.01174, -0.01039, 0.00598, 0.01658, -0.00422, 0.00502, -0.02327, -0.0208, 0.01801, 0.01906, 0.00842, 0.02673, -0.00374, 0.00316, 0.00519, -0.01234, 0.00674, 0.00584, 0.00896, -0.00796, 0.00848, 0.0088, -0.01042, 0.01188, 0.0023, 0.00413, -0.00553, -0.0051, 0.00025, 0.00287, -0.00444, -0.01461, 0.00109, -0.00371, -0.00174, 0.00081, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.05813, -0.1472, 0.16657, -0.08424, -0.12133, -0.08121, -0.04858, 0.15649, 0.06799, 0.07252, 0.12075, 0.07679, 0.01656, 0.06116, 0.10863, 0.05195, 0.03001, -0.00356, 0.18096, 0.05173, -0.06166, 0.07085, 0.32891, -0.00086, -0.09146, 0.08913, 0.24602, -0.16181, 0.10608, 0.29407, 0.11673, -0.05155, -0.15085, -0.08142, -0.2031, 0.33525, -0.09739, 0.10259, -0.01749, -0.06251, -0.111, -0.16453, 0.00385, 0.05307, 0.11311, 0.07371, 0.0147, 0.02791, -0.1969, 0.16284, -0.0108, 0.03678, 0.02259, -0.04477, -0.00431, -0.01269, 0.03714, 0.05298, 0.08516, 0.00718, 0.05322, 0.04287, -0.02585, 0.04797, 0.01929, 0.08115, -0.01134, -0.02818, 0.00217, 0.09248, 0.02026, -0.00943, -0.01483, 0.04603, 0.04943, 0.09533, -0.04572, -0.0844, -0.03463, -0.07433, -0.02261, 0.06749, 0.0059, 0.04825, -0.07038, 0.01071, 0.07906, 0.06687, -0.02749, -0.05188, -0.03655, 0.03967, 0.01362, 0.01494, -0.11146, -0.0289, 0.00626, 0.01706, 0.01623, 0.00373, -0.01593, -0.00428, 0.01726, -0.00679, 0.03781, 0.00301, -0.00198, -0.00834, 9e-005, -0.01394, -0.00639, 0.00749, -0.00674, 0.0049, -0.00483, 0.00271, -0.01328, 0.01896, -0.0038, -0.00606, 0.00995, -0.00574, 0.00804, -0.00539, 0.00468, -0.00555, -0.00054, -0.00652, 0.00412, -0.00361, -0.0059, -0.05017, -0.00219, -0.00064, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00392, 0.06242, 0.0208, 0.03002, -0.03215, 0.01698, -0.00524, -0.02797, -0.13179, 0.02376, -0.08969, -0.01995, 0.04908, -0.01775, 0.07687, 0.01792, 0.04682, -0.09346, 0.27539, 0.08119, -0.05749, 0.23388, 0.16143, -0.17559, 0.01393, -0.2471, 0.16436, 0.1059, -0.02437, 0.04312, -0.13674, 0.06005, 0.08449, -0.01145, 0.06952, 0.03301, 0.00058, -0.02643, 0.04222, 0.31295, 0.08884, 0.11686, 0.01909, -0.0316, -0.23892, -0.03384, 0.24133, 0.04628, 0.14446, -0.19109, -0.15016, -0.0685, -0.20658, -0.22837, 0.13473, 0.07876, -0.09776, -0.02107, -0.03128, -0.01092, 0.15935, 0.03613, 0.00728, -0.07998, -0.00448, -0.09364, 0.00736, -0.05762, 0.1204, 0.06278, 0.02954, -0.06775, -0.04877, 0.0275, 0.09179, 0.00124, -0.02419, -0.03701, -0.04809, -0.04597, -0.02366, 0.00049, 0.00903, 0.08833, -0.03895, -0.01215, 0.03692, -0.01137, -0.04361, -0.00514, -0.00072, 0.01064, 0.00088, -0.00375, -0.03992, -0.01166, -0.01793, -0.01343, 0.01177, 0.0058, 0.01022, 0.01677, 0.00015, -0.01322, 0.00139, 0.01478, -0.002, -0.0117, -0.00206, -0.01633, 0.00376, -0.00941, -0.01817, 0.00578, -0.00593, -0.00269, -0.018, -0.00248, -0.00846, -0.01284, 0.01229, -0.01889, 0.00049, -0.0055, -0.00723, 0.00537, 0.00175, 0.00485, 0.00257, 0.00708, 0.00058, -0.00206, -0.00309, 0.00039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.0272, -0.12056, 0.22384, -0.0737, -0.0421, 0.03486, 0.0077, 0.22605, 0.04276, 0.16391, 0.07071, 0.05461, 0.28986, -0.00233, 0.01641, 0.01449, 0.0097, -0.00133, 0.06415, 0.00328, -0.04911, 0.03724, -0.07516, -0.04192, 0.06753, -0.05663, -0.0971, 0.02297, 0.12628, -0.05695, -0.01011, -0.00635, -0.03928, -0.03045, -0.08892, 0.0989, -0.08, 0.01821, -0.02337, 0.0579, 0.0051, 0.04236, -0.04208, 0.06237, -0.06732, 0.11077, 0.04995, 0.04763, -0.06523, 0.04836, -0.08466, 0.00289, -0.01933, -0.09501, 0.00393, 0.0752, -0.06113, -0.02987, 0.10913, 0.05867, -0.00438, 0.21318, 0.04846, 0.03959, -0.05407, -0.23388, -0.02174, 0.11403, 0.02885, -0.22054, -0.02519, 0.02469, 0.08444, -0.08936, -0.23528, -0.11355, 0.09348, 0.16284, 0.16214, 0.21651, 0.06473, -0.1001, 0.00081, -0.18155, 0.19641, -0.02848, -0.15062, -0.11193, 0.09379, 0.05021, 0.06904, -0.09263, -0.03801, 0.01648, 0.22891, 0.04805, 0.00526, 0.00412, -0.0657, 0.01603, 0.00372, 0.00985, -0.03546, 0.02171, -0.04026, -0.005, 0.01519, 0.00219, -0.03109, 0.0136, 0.00545, -0.00046, 0.00954, -0.01256, 0.01894, -0.00643, 0.04325, 0.00262, 0.00248, 0.00808, -0.00714, 0.00785, -0.00403, -0.00751, -0.01517, 0.00337, 0.00895, 0.00662, 0.00139, 0.00444, -0.00821, -0.04883, 0.00084, 0.00057, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.05195, -0.00525, 0.01272, -0.00307, 0.0125, 0.00373, 0.00157, 0.01287, -0.12597, 0.00905, 0.00414, 0.00276, 0.01975, 0.00061, 0.01267, 0.00216, -0.00067, -0.0021, 0.17285, -0.00094, -0.00131, 0.24915, -0.01244, -0.23428, 0.00754, -0.00149, -0.00792, 0.32745, 0.29836, -0.01262, -0.00385, 0.00048, 0.10353, 0.00399, 0.04102, -0.17165, -0.05555, -0.15703, 0.00064, -0.00411, 0.15993, 0.00173, 0.00198, 0.18946, 0.00053, 0.0047, -0.00283, -0.00381, -0.04465, 0.14767, 0.00995, -0.00164, 0.30537, 0.18972, 0.00189, -0.00324, 0.00353, 0.1939, 0.12726, -0.00333, -0.20491, -0.15399, -0.00352, 0.22647, 0.00463, 0.17133, 0.00183, -0.01069, -0.22295, -0.06348, 0.00016, 0.01516, -0.00849, 0.031, 0.02131, 0.0745, -0.00751, -0.03529, -0.01389, -0.00988, -0.00492, -0.00857, 0.00067, 0.01801, 0.02989, 0.0022, -0.1324, 0.10411, -0.00805, -0.00345, -0.03984, 0.00813, 0.0222, 0.016, 0.01506, -0.01689, -0.00119, 0.04186, 0.00453, -0.00214, 0.03466, -0.02984, 0.00261, -0.00158, -0.00101, -0.00899, -0.00143, 0.00991, 0.00812, -0.00524, -0.01611, -0.00011, 0.01482, 0.00084, -0.01325, 0.00047, -0.01471, -0.01666, -5e-005, -0.01209, 0.00109, 0.01299, -8e-005, -0.01529, 0.0199, 0.00887, 0.00299, -0.00912, -0.00029, -0.00386, -0.00025, -0.00304, 0.00166, 0.00082, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00287, -0.09509, 0.23055, -0.05562, -0.00069, 0.06765, 0.02839, 0.23317, 0.00695, 0.16398, 0.07507, 0.05005, 0.35796, 0.01097, -0.0007, 0.03914, -0.01212, -0.03808, -0.00954, -0.01711, -0.02368, -0.01375, -0.22537, 0.01293, 0.13662, -0.02698, -0.14383, -0.01806, -0.01646, -0.22874, -0.06977, 0.00871, -0.00571, 0.07235, -0.00226, 0.00947, 0.00307, 0.00867, 0.01159, -0.0744, -0.00883, 0.03126, 0.03588, -0.01046, 0.00952, -0.00026, -0.05124, -0.06902, 0.00246, -0.00815, 0.18033, -0.02968, -0.01685, -0.01047, 0.03429, -0.05862, 0.06391, -0.0107, -0.00702, -0.0603, 0.01131, 0.0085, -0.06375, -0.0125, 0.08399, -0.00945, 0.03324, -0.19379, 0.0123, 0.0035, 0.00287, -0.00084, -0.1539, -0.00171, 0.38608, -0.00411, -0.1361, 0.00195, -0.25173, 0.00055, -0.08913, 0.00047, 0.01218, 0.32645, -0.00165, 0.03983, 0.00731, -0.00575, -0.14587, 0.00019, 0.0022, 0.14741, -0.00122, -0.00088, -0.00083, 0.00093, -0.02162, -0.00231, 0.08217, -0.03886, -0.00191, 0.00165, 0.04723, -0.02869, 6e-005, 0.0005, -0.02583, -0.00055, -0.00045, 0.00029, 0.00089, -0.00198, -0.00082, 0.01524, 0.00073, 0.00849, 0.00081, 0.00092, -0.00086, 0.00067, 0.01984, -0.00072, -0.00137, 0.00084, -0.0011, -0.00049, -0.00016, 0.0005, -0.00521, 0.00021, -0.00455, -0.05517, -9e-005, -5e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.0009, -0.0753, 0.00395, -0.03794, -0.02732, -0.01304, 0.00606, 0.05267, -0.13569, -0.00558, 0.09692, 0.02584, -0.01689, 0.01738, 0.0746, -0.01622, -0.04546, 0.09274, 0.26666, -0.08033, 0.05174, 0.22836, -0.16872, -0.16991, -0.00642, 0.23937, -0.17404, 0.10275, -0.03812, -0.04913, 0.1348, -0.06038, 0.0883, 0.00803, 0.07888, 0.02192, 0.00938, -0.02828, -0.04454, -0.30468, 0.08774, -0.11149, -0.02361, -0.03827, 0.23007, -0.04582, -0.23436, -0.04075, 0.15075, -0.19525, 0.13994, 0.0684, -0.2032, -0.21653, -0.13348, -0.07001, 0.09044, -0.01765, -0.0431, 0.01731, 0.15886, 0.01246, -0.0019, -0.08385, -0.00149, -0.06734, -0.00971, 0.06982, 0.11649, 0.08667, -0.03213, -0.07006, 0.05777, 0.03716, -0.11713, 0.01373, 0.03433, -0.05471, 0.06563, -0.06952, 0.03064, 0.0115, -0.00888, -0.10777, -0.06032, 0.00895, 0.05327, 0.00101, 0.05366, -0.01063, -0.00831, -0.02077, 0.00505, -0.00554, -0.06487, -0.01687, 0.0184, -0.0138, -0.01893, -0.004, 0.00975, 0.01559, -0.00405, 0.01553, 0.00581, 0.01524, 0.00366, -0.01187, 0.00137, -0.01773, 0.00314, 0.00931, -0.01911, -0.00713, -0.00797, 0.00196, -0.02265, -0.00275, 0.00868, -0.01365, -0.013, -0.01964, -0.00093, -0.00464, -0.00552, 0.00497, 0.00076, 0.00409, -0.0024, 0.00655, -0.00148, -0.00333, -0.00316, 0.00033, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.02747, -0.11296, 0.22477, -0.06995, 0.04538, 0.03652, 0.00708, 0.2216, -0.02799, 0.16553, 0.06041, 0.05208, 0.2935, -0.00426, -0.02477, 0.01637, 0.0148, -0.01161, -0.09406, 0.01219, -0.05513, -0.06275, -0.05694, 0.06099, 0.06865, -0.08348, -0.07843, -0.03448, -0.12283, -0.05186, -0.02509, 0.0003, 0.02974, -0.03153, 0.08074, -0.10194, 0.07945, -0.01519, -0.01858, 0.09198, -0.01485, 0.05496, -0.03972, -0.05851, -0.0932, -0.10637, 0.0762, 0.05243, 0.04893, -0.02704, -0.10067, -0.00467, 0.04194, 0.11956, 0.01873, 0.08341, -0.07151, 0.03201, -0.10503, 0.05712, -0.01318, -0.21586, 0.04896, -0.03055, -0.05423, 0.24276, -0.02079, 0.107, -0.04192, 0.2123, -0.02178, -0.01709, 0.07856, 0.0858, -0.22375, 0.11272, 0.09025, -0.15778, 0.15586, -0.21014, 0.06174, 0.09944, 0.0018, -0.17073, -0.19093, -0.02964, 0.14564, 0.1125, 0.08842, -0.04934, -0.06854, -0.0909, 0.03769, -0.01597, -0.22313, -0.04647, 0.00325, -0.00261, -0.064, 0.01657, -0.00482, -0.01164, -0.03523, 0.02013, 0.03986, 0.00334, 0.01488, -0.00088, 0.03113, -0.01172, -0.00583, -0.00149, -0.00749, -0.01185, -0.01817, -0.00669, -0.04101, -0.00233, 0.00153, -0.00662, -0.00574, -0.00572, -0.00396, 0.00807, 0.01588, -0.00394, -0.00909, -0.00711, 0.00167, -0.0052, -0.0081, -0.04876, -0.0005, -0.00061, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.16968, -0.23877, 0.01108, -0.15197, -0.05428, -0.03965, 0.07488, 0.0008, -0.10992, -0.02223, 0.13436, 0.02655, -0.11634, -0.12254, 0.06298, -0.14229, -0.11751, -0.01189, 0.17679, -0.20589, 0.08354, 0.1562, -0.09253, -0.00181, -0.15455, 0.25763, -0.11724, -0.22947, -0.27407, 0.10198, 0.08476, -0.074, 0.02655, -0.08866, -0.00473, -0.06513, 0.04236, 0.05965, -0.06624, 0.10127, -0.10091, 0.01993, -0.06306, -0.11673, -0.10649, -0.09338, 0.18761, 0.08961, -0.04315, -0.01305, -0.12538, -0.00142, 0.07819, 0.29761, 0.14269, 0.05116, -0.07452, -0.09672, -0.0974, 0.0066, -0.07296, -0.11535, 0.00045, -0.03644, 0.00239, -0.01679, -0.03122, -0.03019, -0.05797, -0.06187, 0.01299, 0.05059, -0.03495, -0.05871, 0.0638, -0.10888, -0.02127, 0.07131, -0.02284, 0.0506, -0.04713, -0.05069, -0.00659, 0.08291, 0.06804, 0.00271, -0.05074, -0.04321, -0.03292, 0.02464, 0.01725, 0.00336, -0.00647, -0.00356, 0.07973, 0.03506, -0.01059, -0.03179, 0.01346, 0.01074, 0.0077, 0.01695, 0.00609, -0.00574, -0.02729, -0.02101, -0.01812, 0.01986, 0.00836, 0.0281, -0.00302, -0.00232, 0.0059, 0.0128, 0.00723, -0.00551, 0.01037, -0.01, -0.00884, 0.00941, 0.01146, 0.01244, -0.0014, 0.0047, -0.00601, -0.00446, 0.00031, 0.00357, 0.00486, -0.01413, -0.00173, -0.00183, -0.00149, 0.00087, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.0397, -0.12167, 0.16636, -0.06793, 0.12809, -0.07731, -0.05716, 0.15736, -0.05624, 0.07542, 0.10662, 0.07432, 0.02954, 0.0751, -0.11626, 0.06802, 0.04321, -0.00227, -0.20164, 0.07483, -0.07128, -0.08858, 0.34116, 0.00107, -0.07491, 0.06115, 0.26051, 0.18818, -0.07639, 0.28458, 0.10806, -0.04367, 0.14883, -0.0721, 0.20487, -0.33009, 0.0933, -0.10982, -0.01027, -0.0741, 0.12285, -0.16774, 0.01086, -0.04047, 0.12559, -0.06382, -0.00598, 0.01816, 0.20288, -0.16239, 0.00302, 0.03716, -0.03139, 0.0121, -0.02013, -0.01843, 0.04562, -0.0426, -0.0749, 0.00649, -0.04547, -0.03036, -0.02605, -0.04423, 0.01914, -0.07979, -0.00795, -0.02501, 0.00423, -0.0862, 0.01894, 0.00389, -0.01105, -0.03981, 0.04267, -0.08386, -0.04365, 0.07702, -0.03231, 0.06919, -0.01753, -0.06229, 0.00667, 0.03937, 0.06328, 0.01047, -0.07393, -0.0625, -0.02402, 0.04947, 0.03486, 0.03954, -0.01298, -0.01464, 0.10332, 0.02519, 0.00747, -0.01364, 0.01484, 0.00256, 0.01518, 0.00243, 0.01669, -0.0062, -0.03502, -0.00071, 2e-005, 0.00619, -0.00102, 0.01091, 0.00677, 0.0078, 0.00613, 0.00351, 0.00406, 0.00334, 0.01221, -0.01797, -0.00284, 0.00505, 0.00874, 0.0044, 0.00825, 0.0049, -0.00404, 0.00608, 0.00051, 0.00616, 0.00361, 0.0052, -0.00574, -0.05028, 0.00237, 0.00055, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.29318, -0.23453, -0.02081, -0.17613, 0.00574, 0.0171, 0.11753, -0.07643, -0.04595, -0.03119, 0.1774, 0.05296, -0.02756, -0.09887, -0.02163, -0.16108, -0.04968, -0.08603, -0.03391, -0.05767, 0.11112, -0.03918, 0.05345, 0.05032, 0.02822, -0.16683, 0.15011, -0.12128, -0.1175, 0.01001, -0.11362, 0.01591, 0.01421, 0.04277, -0.04697, -0.24222, -0.04821, -0.13244, 0.20231, 0.01564, 0.0573, 0.08777, 0.0213, 0.17167, -0.0911, 0.00838, -0.1274, -0.16689, -0.11, 0.03007, 0.11423, -0.10841, 0.00707, -0.02017, -0.08503, -0.14905, 0.06773, 0.13362, 0.09671, -0.03411, 0.00372, 0.32675, 0.00888, 0.0114, 0.02914, -0.07221, 0.02673, -0.06461, 0.10872, 0.01186, -0.02245, 0.00971, 0.00115, 0.00623, 0.01964, 0.0972, 0.03734, -0.05345, -0.05292, 0.05192, 0.05326, 0.01985, -0.02335, -0.22084, 0.00854, -0.02913, 0.06774, 0.05606, 0.01581, -0.05987, -0.13409, -0.00334, 0.09386, 0.02286, -0.08075, -0.0758, 0.01677, 0.07226, -0.01105, -0.01792, 0.00307, -0.03052, -0.00873, 0.01419, 0.03486, 0.04937, 0.00643, -0.02947, 0.01458, -0.02609, -0.0119, -0.00225, -0.02538, -0.00416, 0.01665, -0.00492, 0.00567, 0.00782, -0.00292, 0.00356, -0.00219, -0.0061, 0.01168, 0.00987, 0.00931, -0.005, 0.00499, -0.00238, -0.00805, -0.00857, -0.00171, -0.00367, -0.00061, 0.0003, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.04271, 0.09134, 0.05949, 0.03587, 0.24213, -0.03392, -0.08019, -0.02996, -0.10648, -0.02281, 0.0507, 0.09325, -0.02651, 0.07623, -0.11122, 0.06505, 0.10622, -0.05921, 0.04254, 0.0034, -0.03706, 0.05753, 0.12567, -0.15851, -0.15308, 0.18722, 0.09014, 0.23427, -0.12258, -0.25014, 0.14033, -0.18017, 0.0564, 0.21999, -0.01721, 0.0225, -0.13195, 0.25112, -0.01504, -0.07873, 0.02674, 0.21784, -0.04892, -0.08672, -0.12632, 0.01503, 0.01608, 0.01325, -0.22089, 0.04166, 0.08435, -0.12345, -0.03113, 0.08177, 0.15094, -0.15255, -0.13613, -0.15258, 0.04185, 0.03182, -0.07139, 0.11237, -0.00049, -0.03297, -0.00211, -0.02306, 0.03725, -0.00565, 0.01178, -0.04648, -0.02005, 0.13916, 0.00593, -0.04029, 0.02576, 0.04386, 0.05115, 0.05217, -0.02382, 0.04848, 0.00429, 0.03068, 0.00207, -0.09124, -0.07085, -0.01773, 0.17413, -0.07238, 0.02872, -0.06635, -0.03268, -0.01768, 0.07373, -0.03171, -0.11124, -0.01577, 0.00514, -0.00408, -0.02834, -0.01448, 0.00395, -0.00988, -0.00639, -0.0111, 0.03409, -0.01794, -0.01196, -0.01409, 0.03071, -0.01404, 0.01983, 0.0063, -0.00234, 0.00579, 0.01295, 0.00068, 0.00288, 0.0003, 0.00335, -0.0017, -0.04132, 0.01357, -0.04308, 0.02149, 0.0087, -0.02362, -0.00043, -0.00915, 0.00395, -0.00381, -0.00926, -0.05515, 0.00013, -0.00043, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.28769, -0.13306, -0.07973, -0.12192, 0.04402, 0.06891, 0.08139, -0.16468, -0.06435, -0.06684, 0.1637, 0.04276, 0.05359, 0.00453, -0.01874, -0.03347, 0.01907, -0.08091, -0.07631, 0.04297, 0.00259, -0.05372, 0.03975, -0.05779, 0.01092, -0.11905, 0.12788, -0.00232, -0.02043, -0.14415, 0.00074, -0.06016, 0.01998, 0.1036, -0.05829, -0.05692, -0.12271, 0.0556, -0.07158, -0.07106, 0.03228, 0.06913, 0.08851, 0.0992, 0.1381, 0.03469, -0.00174, 0.03327, -0.0795, 0.13025, 0.00254, 0.02557, -0.01085, -0.21141, -0.02295, 0.09549, -0.05627, -0.05792, 0.05371, 0.0219, 0.02443, -0.12603, 0.00687, 0.04407, -0.03413, 0.10285, -0.04412, 0.12975, -0.02949, 0.04784, 0.07337, -0.04401, 0.11056, -0.05022, -0.13221, -0.03982, 0.0074, 0.01113, 0.16368, -0.08089, -0.084, 0.10608, 0.07044, 0.38825, -0.19041, 0.01347, -0.00794, -0.15194, 0.01487, 0.10893, 0.27438, -0.04042, -0.17609, -0.00775, 0.08258, 0.14651, -0.03843, -0.04727, 0.00657, 0.00164, -0.0307, 0.01897, 0.03754, -0.03548, -0.02813, -0.04722, -0.00809, 0.02839, -0.01973, 0.02167, 0.01014, 0.01779, 0.0124, 0.00823, -0.04081, 0.01207, -0.00428, -0.00104, 0.00541, -0.00418, -0.01719, 0.00401, -0.0225, -0.01771, -0.00821, -0.00525, -0.00389, 0.00153, 0.00793, -0.00429, -0.00199, -0.00274, -0.00155, -0.00059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.02087, 0.00455, 0.03837, 0.04352, 0.08577, -0.05116, -0.00251, 0.07624, -0.16132, -0.03037, -0.01992, 0.11967, -0.17467, 0.00703, -0.24485, 0.14868, 0.23995, -0.29333, 0.06358, -0.15563, 0.04074, 0.27859, -0.06526, 0.3002, -0.06654, 0.01618, -0.0046, 0.05546, -0.02172, -0.08847, -0.14193, -0.08501, -0.11913, -0.12794, -0.16638, -0.03495, -0.00544, 0.05926, 0.02099, 0.07132, -0.13596, 0.03666, -0.06073, -0.02326, 0.08055, -0.13022, 0.03022, 0.10035, 0.0416, -0.03526, -0.00607, -0.12011, 0.05426, -0.15064, -0.29273, 0.12495, 0.14247, 0.27688, -0.0811, -0.00908, -0.04361, -0.01856, 0.02037, 0.05618, 0.01772, -0.03506, -0.08041, -0.03158, 0.0254, -0.01812, -0.0027, -0.00829, -0.00114, -0.03008, 0.00414, -0.00677, -0.0366, -0.01548, 0.01831, 0.00847, 0.0008, 0.0248, -0.03244, 0.00961, -0.00597, -0.02171, -0.01945, -0.01253, -0.01746, 0.01946, 0.01097, -0.01687, -0.049, -0.01654, 0.02752, 0.00795, -0.00739, 0.00712, -0.00652, -0.00124, -0.01672, -0.00171, -0.00557, -0.0039, -0.00901, -0.0126, -0.00148, 0.00371, -0.01323, 0.00569, -0.00588, -0.00888, 0.00989, -0.01008, -0.00123, -0.01052, 0.00095, -0.00778, 0.00113, 0.00698, -0.008, 0.00318, 0.00275, -0.00526, -0.00647, 0.00783, 0.00177, 0.00284, -0.00389, 0.00407, -0.00679, -0.05017, 0.00096, -0.00051, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.2817, -0.0802, -0.09681, -0.09585, 0.02796, 0.06429, 0.0434, -0.16533, -0.05005, -0.07712, 0.14369, 0.05804, 0.06192, -0.00163, -0.05794, 0.07943, 0.08795, -0.10553, -0.09963, 0.11199, -0.08381, -0.0271, -0.00692, -0.0045, 0.01204, -0.07423, -0.02061, 0.04177, 0.0571, -0.12131, 0.02362, 0.01815, -0.06477, 0.01021, -0.07398, 0.12073, -0.0812, 0.08498, -0.20549, 0.0137, 0.04024, -0.06839, -0.03243, -0.03405, 0.19632, 0.01738, 0.06458, 0.11793, 0.09104, 0.03326, -0.0707, 0.18395, -0.02778, -0.18404, 0.06725, 0.11361, -0.06698, -0.12322, -0.01833, -0.07726, 0.01664, -0.26678, -0.02379, 0.05214, -0.04323, 0.01025, 0.07987, -0.00633, -0.0816, 0.00614, -0.03348, -0.00045, -0.1153, -0.01283, 0.11605, -0.03556, -0.06611, 0.03874, -0.12775, 0.11136, 0.09057, -0.18611, -0.07831, -0.28813, 0.19181, 0.04438, 0.01508, 0.18663, -0.03989, -0.0745, -0.21379, 0.07149, 0.13296, -8e-005, -0.05481, -0.07387, 0.03016, -0.01567, -0.0055, 0.00706, -0.00819, 0.00718, -0.04485, 0.04392, 0.03293, 0.01683, -0.0038, -0.01023, 0.01103, -0.0064, 0.02205, -0.02506, 0.01045, -0.00801, 0.03632, -0.02078, 0.00605, 0.00438, 0.00219, -0.00736, 0.00449, 0.01236, 0.01356, -0.00196, -0.00791, -0.00423, 0.0067, 0.01064, -0.00462, -0.01901, 0.00077, -0.00068, -0.0013, 0.0006, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.03252, -0.07985, 0.0115, 0.07154, 0.00119, -0.08981, -0.0006, 0.13377, -0.14501, -0.06327, -0.0086, 0.07258, -0.19694, 0.0308, -0.15146, 0.11285, 0.1853, -0.1801, 0.03772, -0.0381, 0.09999, 0.21546, -0.20702, 0.26251, 0.06977, -0.14528, -0.00318, -0.15788, 0.11103, 0.14644, 0.00342, 0.08838, 0.07746, 0.03378, 0.07397, 0.05521, -0.04835, -0.14716, -0.01414, -0.10774, 0.20555, -0.01886, 0.11294, 0.13721, -0.046, 0.16907, -0.04369, -0.1467, 0.00551, 0.00212, -0.04775, 0.19433, -0.03046, 0.12142, 0.25663, -0.12577, -0.1443, -0.30062, 0.13768, 0.02191, 0.09419, -0.0053, -0.02511, -0.08246, -0.03462, 0.07169, 0.07496, 0.04449, -0.00694, 0.03779, 0.00952, -0.02076, 0.01756, 0.01807, -0.03839, 0.00558, 0.02281, 0.01577, 0.01692, 0.00756, -0.02794, -0.00272, 0.04572, 0.02325, -0.02169, 0.01744, 0.01525, 0.00935, 0.01033, 0.01619, 0.01589, 0.00989, 0.01109, 0.0064, -0.00566, 0.0136, -0.00875, -0.0158, 0.0139, -0.00105, -0.00264, 0.00426, 0.01205, -0.00369, -0.01273, -0.00185, 0.00229, -0.01209, 0.00353, 0.00412, 0.00405, 0.00675, -0.01461, 0.01591, -0.00445, 0.00699, -0.0011, -0.00313, 0.00429, -0.00238, 0.00388, -0.00251, 0.00573, 0.0043, 0.00712, -0.00381, 0.00038, 0.00075, 0.00037, -0.00272, -0.00813, -0.05211, 0.00199, -0.00093, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.28336, -0.03818, -0.14448, -0.07193, -0.00146, 0.0703, 0.00895, -0.15036, -0.0602, -0.05382, 0.20434, 0.09162, 0.05862, 0.19684, -0.08993, 0.19928, 0.11198, -0.03147, -0.13191, 0.25206, -0.1074, 0.02813, -0.07122, -0.10938, 0.0427, 0.11119, -0.19496, 0.02592, 0.25098, 0.15198, 0.03998, 0.0788, -0.016, -0.05564, 0.01908, 0.31195, 0.02799, -0.05434, 0.09127, 0.04177, -0.01326, -0.0588, -0.11418, -0.12315, -0.21074, -0.07451, -0.01945, -0.03664, 0.12788, -0.10826, -0.03011, -0.11186, 0.00402, 0.23249, -0.00664, -0.07706, 0.10274, 0.07801, -0.09974, 0.03077, -0.04562, 0.17922, 0.01977, -0.06566, 0.08594, 0.02427, -0.03867, -0.0609, 0.05491, -0.04015, -0.0096, 0.04883, 0.03271, 0.05548, -0.03264, 0.05131, 0.03179, -0.04906, 0.01283, -0.01301, -0.03416, 0.06287, 0.01855, 0.06525, -0.05743, -0.04102, -0.02451, -0.08476, 0.02224, 0.00481, 0.05686, -0.02285, -0.03743, -0.00356, 0.01123, -0.01936, -0.01528, 0.00701, -0.00368, 0.0053, 0.01736, -0.0235, 0.01779, -0.01849, -0.01662, 0.00581, 0.01514, -0.00099, -0.00248, 0.00237, -0.01304, 0.002, -0.00198, -0.01211, -0.01041, 0.01233, 0.00108, -0.00084, 0.00099, 0.01521, 0.00096, 0.00725, -0.00868, 0.00133, 0.00237, 0.01303, -0.00764, -0.00337, -0.00062, 0.00866, -0.00081, -0.00461, 0.00062, 1e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.04953, -0.13747, -0.00022, 0.09306, -0.02097, -0.08351, 0.01014, 0.04615, -0.12559, -0.04173, -0.06665, -0.01531, -0.055, -0.04587, 0.06327, -0.01863, -0.0215, 0.04905, -0.00175, 0.08373, 0.06134, -0.02691, -0.10588, -0.02945, 0.01718, -0.13318, 0.01519, -0.28042, 0.01642, 0.10075, 0.28445, 0.15841, 0.24745, 0.29103, 0.22791, 0.11569, -0.04831, 0.02456, -0.1321, 0.14704, 0.21236, 0.04834, -0.11222, -0.09463, 0.05474, -0.07934, -0.09135, 0.14693, -0.09538, 0.08793, 0.03933, -0.20134, -0.07207, -0.11319, -0.0373, 0.07959, 0.07501, 0.24566, -0.08122, -0.03566, -0.03517, -0.04057, -0.03038, 0.22011, 0.0939, -0.04731, -0.06514, -0.03602, -0.0242, -0.04974, -0.00014, 0.08971, 0.02519, -0.00954, -0.00604, 0.02412, 0.01047, 0.093, 0.02862, 0.03945, -0.02696, 0.00054, 0.04881, -0.04375, 0.00726, 0.08312, 0.05185, 0.01438, -0.12984, -0.0253, 0.00872, 0.00405, -0.00352, -0.04122, -0.01678, 0.00633, -0.0242, -0.01736, -0.01272, -0.0201, 0.02141, 0.00278, -0.0094, -0.01166, -0.02213, 0.00194, 0.0038, -0.00956, 0.02726, 0.01041, 0.02821, 0.00479, 0.00593, 0.00131, -0.00626, -0.00158, -0.00726, 0.00553, -0.00457, 0.00551, -0.05399, -0.00783, -0.02717, 0.00325, -0.00455, -0.00387, -0.00715, -0.00041, -0.00352, 0.00137, -0.00275, -0.04725, -0.002, -0.0008, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.0206, -0.01883, -0.0716, 0.0442, 0.3829, -0.02106, -0.05828, 0.0554, -0.00798, -0.06219, -0.00228, 0.02814, 0.05486, -0.01901, 0.16085, -0.04896, -0.00902, -0.02648, 0.10223, 0.03234, 0.01757, -0.02731, 0.01416, -0.10159, -0.02682, 0.00486, -0.03408, -0.12294, 0.02138, 0.02459, -0.04651, -0.06793, -0.05827, 0.04501, -0.03974, -0.00012, 0.05376, -0.08713, -0.02017, 0.01865, -0.07437, -0.01235, -0.0099, 0.03843, -0.01586, 0.01032, 0.02481, -0.01308, 0.04441, 0.00713, 0.01904, 0.01645, 0.0067, 0.00932, -0.03611, 0.00706, -0.01621, 0.01221, 0.03969, 0.00839, 0.04473, -0.00389, -0.02963, 0.00509, 0.02684, -0.00255, 0.00985, -0.03563, -0.00063, 0.01737, 0.01073, -0.06205, 0.04309, 0.02163, -0.0456, -0.01488, 0.05249, -0.03102, 0.00727, -0.03552, 0.05404, -0.03609, -0.00957, 0.01209, 0.03881, 0.03072, -0.07548, 0.03484, 0.04556, 0.01537, -0.00102, 0.20226, -0.01145, 0.03507, 0.02538, 0.01837, -0.0451, 0.02224, 0.03837, 0.03222, 0.0049, 5e-005, -0.02177, -0.00336, -0.00617, 0.01141, 0.0213, -0.00868, -0.00154, -0.00028, -0.02802, 0.00694, -0.01184, 0.03104, -0.00096, 0.00342, -0.01259, 0.00836, -0.00303, 0.0026, 0.02315, -0.00667, 0.0414, -0.00793, -0.00258, -0.00222, -0.00095, -0.00211, 0.005, -0.00984, -0.356, 0.04731, -0.42022, 0.0965, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.0104, -0.04514, 0.1245, -0.01727, -0.08695, 0.00714, 0.20873, -0.17041, -0.09145, 0.10805, -0.08557, -0.08665, -0.06985, 0.05322, 0.05361, 0.11628, -0.00773, 0.06964, -0.0143, -0.06023, -0.03261, -0.0192, -0.00164, -0.00426, 0.05284, 0.03923, 0.06228, 0.02425, -0.04003, -0.08744, 0.11613, 0.1561, 0.03134, -0.16458, -0.01435, 0.01858, -0.02361, 0.01991, 0.07393, -0.02511, 0.01696, 0.04944, 0.05907, -0.04546, 0.02324, -0.01982, 0.01202, -0.02952, 0.05668, 0.03948, -0.0612, 0.00061, 0.08315, -0.04414, 0.00986, -0.00216, 0.01806, -0.00643, 0.04383, 0.00377, -0.03277, 0.03711, -0.00011, -0.09667, -0.0221, 0.00501, 0.01982, -0.01639, 0.01431, 0.01706, -0.01551, 0.01574, 0.01804, -0.0385, 0.01346, -9e-005, -0.01872, -0.00657, -0.00403, -0.01116, -0.01692, 0.01091, -0.01216, -0.01513, 0.10753, 0.01786, -0.12602, 0.00148, 0.01417, 0.03592, 0.03882, 0.0203, -0.01573, 0.12668, -0.23342, 0.17654, -0.00302, 0.16204, 0.0127, -0.00648, -0.04119, -0.01687, 0.00593, -0.00408, -0.06231, -0.06097, -0.00562, -0.10923, 0.06529, 0.02925, -0.01194, -0.07726, 0.01751, -0.03599, 0.05032, 0.02789, -0.03623, 0.00976, 0.02526, 0.00919, -0.23935, 0.00271, -0.27389, 0.01307, -0.00608, -0.01039, 0.0021, 0.00554, -0.01072, -0.01006, -0.29542, -0.01774, 0.02429, -0.00583, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.02312, -0.00242, 0.00742, -0.00095, 0.4281, 0.0001, 0.0116, -0.00995, -0.01271, 0.00663, -0.00418, -0.00573, -0.00528, 0.00309, 0.14992, 0.00838, 0.00055, 0.0037, 0.11238, -0.00283, -0.00283, -0.0396, -0.0002, -0.11646, 0.00125, 0.00239, 0.0049, -0.13841, 0.01806, -0.00823, 0.01104, 0.00902, -0.05737, -0.00826, -0.04297, 0.00555, 0.05028, -0.08422, 0.00219, -0.00046, -0.07166, 0.008, 3e-005, 0.03439, 0.00058, 0.00547, -0.00118, -0.00228, 0.02029, 0.00539, -0.00027, -0.00113, -0.00992, 0.01735, 0.00204, 9e-005, 0.00211, 0.01814, 0.03764, 0.00122, 0.05957, -0.00532, 0.00015, 0.01009, -0.0003, 0, -0.00211, 0.00036, 0.00736, 0.02924, 0.0009, -0.08506, 0.00031, 0.03207, -0.00354, -0.01712, 0.00309, -0.04743, 0.00101, -0.0551, 0.00238, -0.04755, 0.00068, 8e-005, 0.04917, -0.00014, -0.09588, 0.05241, -0.0035, 0.02595, -0.00464, 0.00777, -0.01153, 0.04273, 0.05557, 0.0068, -0.00346, 0.01888, 0.00121, 0.00342, 0.01346, -0.00172, -0.00102, 0, -0.00752, 0.02131, 0.00194, 0.003, -0.01518, -0.00611, -0.03355, 0.0072, -0.00679, 0.0042, -0.00502, -0.00354, -0.00746, 0.00926, -0.00283, -0.00696, 0.02762, -0.00669, 0.03176, -0.00971, 0.00523, 0.01446, 0.00219, 0.007, 0.00155, -0.0096, -0.00323, -0.00176, 0.78209, -0.09162, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00128, -0.04384, 0.13449, -0.01729, -0.02362, 0.00177, 0.21023, -0.18037, 0.0007, 0.12022, -0.07583, -0.10392, -0.09576, 0.05608, -0.00827, 0.15189, 0.00989, 0.06702, -0.0062, -0.05133, -0.05128, 0.00219, -0.00355, 0.00643, 0.02264, 0.04336, 0.08885, 0.00763, -0.001, -0.14919, 0.20014, 0.16337, 0.00317, -0.14974, 0.00237, -0.00031, -0.00277, 0.00465, 0.03975, -0.00828, 0.00395, 0.145, 0.00061, -0.0019, 0.01053, -0.0003, -0.02141, -0.04134, -0.00112, -0.0003, -0.00491, -0.02042, 0.00055, -0.00096, 0.03698, 0.0016, 0.03817, -0.001, -0.00208, 0.02204, -0.00329, 0.00029, 0.00269, -0.00056, -0.0055, 0, -0.03822, 0.00648, -0.00041, -0.00161, 0.01624, 0.00469, 0.00555, -0.00177, -0.06423, 0.00094, 0.05595, 0.00262, 0.01829, 0.00304, 0.04305, 0.00262, 0.01225, 0.00144, -0.00271, -0.0026, 0.00529, -0.00289, -0.06336, -0.00143, 0.00026, 0.14087, 0.00064, -0.00236, -0.00307, -0.00038, -0.06273, -0.00104, 0.02201, 0.06206, -0.00074, 0.0001, -0.01856, -5e-005, 0.00041, -0.00118, 0.03518, -0.00017, 0.00084, 0.00034, 0.00185, 0.1304, 0.00037, 0.07605, 0.00028, -0.0641, 0.00041, -0.00051, -0.05133, 0.00038, 0.50053, 0.00037, 0.5755, 0.00054, -0.00029, -0.0008, -0.00012, -0.00039, 0.02806, 0.00053, -0.05853, -0.0319, -0.04316, 0.00506, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.01933, 0.01375, 0.08487, -0.04584, 0.39014, 0.02171, 0.08089, -0.07382, 0.00213, 0.07371, -0.00715, -0.0375, -0.06222, 0.02475, 0.15397, 0.06145, 0.00812, 0.03398, 0.10319, -0.03877, -0.02105, -0.02503, -0.01425, -0.10051, 0.03247, -0.00052, 0.04071, -0.12486, 0.02565, -0.03407, 0.05901, 0.0847, -0.06136, -0.06285, -0.03792, -0.00216, 0.05603, -0.08879, 0.02818, -0.0213, -0.07579, 0.01772, 0.01634, 0.0432, 0.01832, 0.01244, -0.02334, 0.00975, 0.0379, 0.00274, -0.02566, -0.01628, -0.00249, 0.01412, 0.03697, -0.00726, 0.0181, 0.01284, 0.03463, -0.00793, 0.04806, -0.00795, 0.02944, 0.0157, -0.02911, -0.00309, -0.00761, 0.03361, -0.0022, 0.01539, -0.01237, -0.06341, -0.04084, 0.02573, 0.04681, -0.01478, -0.05423, -0.03011, -0.00767, -0.03408, -0.05558, -0.03707, 0.00817, -0.01368, 0.02674, -0.02856, -0.06116, 0.03447, -0.04372, 0.01133, -0.00528, -0.1988, -0.00965, 0.02092, 0.05091, -0.00117, 0.0445, 0.00427, -0.03674, -0.03274, 0.0094, 0.00191, 0.02229, 0.00289, 0.00073, 0.01805, -0.02179, 0.0034, -0.00872, -0.00349, -0.02653, -0.0154, -0.01369, -0.03481, -0.0065, -0.00033, -0.00853, 0.00723, 0.00579, 0.00158, -0.04935, -0.00693, -0.07129, -0.00932, -0.0019, -0.00106, -0.00117, -0.0027, -0.00615, -0.00867, 0.32133, -0.04897, -0.42034, 0.09656, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.0126, -0.04694, 0.11587, -0.0123, 0.04429, 0.00478, 0.20105, -0.16327, 0.09177, 0.10055, -0.0853, -0.08303, -0.06339, 0.05081, -0.07098, 0.11018, -0.00868, 0.0663, 0.00297, -0.0563, -0.03048, 0.02208, -7e-005, 0.01542, 0.04956, 0.03952, 0.05815, -0.01058, 0.03743, -0.0842, 0.11031, 0.14768, -0.02474, -0.15862, 0.01864, -0.01846, 0.01755, -0.0102, 0.07126, -0.02291, -0.00868, 0.04778, 0.05762, 0.04095, 0.02135, 0.01856, 0.01468, -0.03077, -0.06122, -0.04002, -0.05873, 0.00242, -0.08339, 0.04285, 0.00583, -0.00137, 0.01617, 0.00504, -0.04794, 0.00467, 0.02765, -0.03645, -0.00337, 0.09552, -0.01901, -0.0047, 0.02078, -0.02021, -0.01415, -0.01887, -0.01423, -0.00881, 0.02267, 0.03588, 0.00836, 0.00173, -0.01283, 0.00994, -0.00321, 0.015, -0.01087, -0.00687, -0.01314, -0.01371, -0.11114, 0.02113, 0.13356, -0.0053, 0.0191, -0.03739, -0.03847, 0.04243, 0.0169, -0.12977, 0.22921, -0.17749, -0.00797, -0.1635, 0.01685, -0.0029, 0.0404, 0.01677, 0.0035, -0.00442, 0.06261, 0.05935, -0.00324, 0.10952, -0.06473, -0.02904, 0.01495, -0.07602, -0.0161, -0.03236, -0.04991, 0.0281, 0.03739, -0.01062, 0.02478, -0.00942, -0.23535, -0.00196, -0.26768, -0.01212, 0.00633, 0.01058, -0.00198, -0.00527, -0.01011, 0.01108, -0.3328, -0.01243, 0.0221, -0.00483, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.0321, 0.01976, 0.06976, -0.11374, -0.07898, 0.07921, 0.03204, 0.0258, 0.0948, -0.21997, -0.08345, -0.00289, 0.05789, -0.13454, -0.14009, 0.08215, 0.09584, 0.09309, 0.12881, 0.03221, 0.09055, -0.10121, 0.00635, -0.0526, -0.00781, 0.01869, -0.00691, -0.05386, -0.00715, -0.00335, -0.00573, 0.01244, 0.18274, -0.01233, -0.08968, -0.02263, -0.11616, -0.03438, -0.01062, -0.05512, -0.12921, -0.06822, -0.00693, 0.09676, -0.02809, 0.01822, 0.03237, -0.02805, 0.05272, -0.04866, -0.01001, -0.15321, -0.06408, -0.02772, -0.01451, -0.02601, -0.05073, -0.01, 4e-005, 0.00226, -0.04646, -0.08741, -0.18123, -0.04725, -0.2146, -0.02212, 0.05138, -0.0826, -0.00424, -0.13618, 0.03409, 0.13934, 0.03266, 0.24145, -0.11372, -0.0575, -0.21397, -0.05729, 0.00349, 0.01354, -0.01819, 0.12462, 0.04086, -0.02662, -0.04043, -0.01688, -0.02162, 0.03898, -0.03899, 0.017, 0.001, 0.02828, 0.08123, -0.0222, -0.00618, 0.00603, -0.02168, 0.05249, 0.01168, 0.05635, -0.02316, 0.00435, 0.00165, 0.00645, -0.00549, -0.00723, -0.08587, -0.03057, -0.08112, 0.00731, -0.05328, 0.10882, 0.13744, -0.19403, 0.11624, 0.12014, 0.0305, -0.32279, -0.30302, 0.11617, 0.04431, 0.0493, -0.0352, -0.06169, -0.03869, 0.01709, 0.00524, -0.00358, 0.00457, -0.00641, -0.00176, -0.002, 0.00184, 0.00082, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.01154, -0.01065, -0.09918, -0.10737, 0.0791, 0.13419, -0.15084, 0.02803, 0.08378, -0.02072, -0.02638, -0.09139, -0.03695, 0.06378, -0.04353, 0.12157, -0.16429, -0.06012, 0.03128, -0.12572, -0.10363, 0.02045, -0.02275, 0.01906, 0.03629, -0.02582, -0.0003, -0.01133, -0.06003, 0.01081, 0.03416, -0.01174, 0.064, 0.08178, 0.00549, 0.07775, 0.07739, 0.04565, 0.02083, 0.0191, 0.10285, -0.08983, 0.14049, 0.04233, 0.03786, 0.04344, 0.08879, -0.06341, 0.0285, 0.06746, 0.06229, -0.08832, 0.03172, -0.08089, 0.03472, 0.04939, 0.02623, 0.02635, -0.09012, 0.04914, -0.11751, 0.05005, 0.03502, -0.14108, -0.00529, 0.05768, -0.02049, 0.03127, -0.02765, 0.04372, -0.05033, 0.03949, -0.00265, 0.07644, -0.00166, 0.02721, -0.01682, -0.01246, 0.09271, -0.00728, -0.0735, -0.03328, 0.01727, -0.08947, 0.01364, -0.2848, 0.02737, 0.07109, -0.07375, 0.03421, -0.01152, 0.11451, 0.03024, -0.04632, 0.10718, 0.0819, -0.0611, 0.17755, 0.03901, -0.0022, 0.09604, 0.024, 0.03062, 0.04048, 0.02954, -0.11652, -0.28638, 0.0725, -0.28847, 0.18321, -0.00952, -0.07161, -0.09109, 0.14974, 0.01056, -0.12731, -0.00478, 0.02983, -0.0622, -0.04734, -0.02613, 0.07011, -0.00772, 0.38118, 0.01251, 0.01839, -0.00732, 0.0127, 0.00426, -0.00432, 0.00194, -0.04989, -0.00568, -0.00074, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00642, 0.02421, 0.0924, -0.11008, -0.07449, 0.0625, 0.05871, 0.08223, 0.08939, -0.27846, -0.07538, -0.0376, 0.00187, 0.06082, -0.17175, 0.00435, -0.04746, -0.03166, 0.1999, -0.00251, -0.07118, -0.11183, -0.00102, -0.05448, -0.00544, -0.00686, 0.00618, -0.00228, -0.01028, -0.00423, 0.02532, 0.01224, -0.05022, -0.04171, 0.06959, 0.01801, 0.12872, 0.00799, 0.01819, 0.09069, 0.06444, -0.01557, -0.00886, 0.03125, 0.01454, -0.02601, -0.02788, 0.02141, -0.0038, 0.06236, 0.03815, 0.02235, -0.03864, 0.0186, -0.00336, -0.07971, 0.00651, 0.11097, 0.08425, -0.0272, -0.09014, -0.04716, -0.12148, -0.16204, 0.00313, 0.17612, -0.1093, 0.18555, 0.12824, -0.00554, -0.07885, -0.05923, -0.11362, -0.16677, 0.16424, 0.05823, 0.22859, 0.10299, 0.10955, 0.02247, 0.04379, -0.13867, -0.08831, 0.01599, -0.0065, 0.00875, 0.06298, -0.02903, 0.01257, 8e-005, -0.02704, 0.01413, -0.08941, 0.00386, 0.00076, -0.00837, -0.06171, -0.01329, -0.02217, 0.00923, -0.03343, 0.05013, -0.01963, -0.05631, 0.00359, -0.01099, -0.11743, -0.09637, -0.09781, -0.07759, 0.00558, 0.10137, 0.08801, -0.1039, 0.11285, 0.24261, 0.19872, 0.01966, 0.2199, -0.20428, 0.09543, -0.14254, -0.06795, -0.10177, 0.00886, 0.01066, 0.01219, 0.00167, -0.00982, -0.0131, -0.00235, -0.00885, -0.00344, -0.00076, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00292, -0.06047, -0.06221, -0.09111, 0.10461, 0.08957, -0.15233, 0.04965, 0.12565, 0.04226, -0.02988, -0.07317, -0.15092, 0.08318, -0.01946, -0.0482, -0.0814, -0.03125, -0.0122, 0.06205, -0.18222, 0.06131, -0.09872, 0.05608, 0.01977, 0.02402, 0.00768, -0.01039, -0.08022, -0.02232, 0.01681, -0.08416, 0.09413, -0.00129, -0.02168, 0.08728, 0.07776, 0.07874, -0.00213, 0.07694, 0.14172, -0.03339, 0.19562, -0.04251, 0.0856, 0.01368, 0.13602, -0.16669, 0.05664, 0.08849, 0.0983, -0.15482, 0.12543, -0.06845, 0.05657, 0.09651, 0.05567, -0.01876, -0.06192, 0.05954, -0.03517, 0.02622, 0.00971, -0.07885, -0.06546, -0.01168, 0.06583, -0.03471, -0.04531, 0.09737, -0.0241, 0.00518, 0.01384, 0.12492, -0.01016, 0.04014, -0.01712, -0.06566, -0.02028, 0.05781, 0.02904, -0.04526, -0.05013, -0.02305, -0.06013, 0.21413, 0.02986, -0.0524, 0.04664, 0.02321, -0.03067, -0.09027, 0.04955, -0.03513, 0.21418, 0.0626, 0.03759, 0.29292, 0.0064, -0.02384, -0.01517, -0.14828, -5e-005, -0.03119, -0.00652, 0.06821, 0.28788, 0.02782, 0.19029, -0.10072, 0.03753, 0.06258, 0.03444, -0.11899, -0.00855, 0.07417, 0.02252, 0.00055, -0.00387, 0.00896, 0.04228, -0.08411, -0.00821, -0.28854, -0.03409, -0.01148, 0.00402, -0.0107, 0.00096, 0.00211, -0.01321, -0.05084, -0.00259, 0.00144, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.0482, 0.00203, 0.11688, -0.07808, -0.0597, 0.02621, 0.04983, 0.10313, 0.05855, -0.24647, -0.08614, -0.04273, -0.06472, 0.1942, -0.13233, -0.17759, -0.08162, -0.06024, 0.13673, 0.0547, -0.13489, -0.0724, -0.04804, 0.00932, 0.01665, -0.0251, 0.04089, 0.0708, -0.06166, -0.04484, 0.03691, -0.00104, -0.15571, 0.0319, 0.12808, 0.01888, 0.2238, 0.07654, 0.0579, -0.13549, 0.12928, 0.05295, -0.06074, -0.07513, -0.0695, -0.02362, -0.00104, 0.08716, 0.03032, 0.10365, -0.1003, 0.12721, 0.17091, 0.00304, -0.05421, 0.06379, 0.02174, -0.10498, 0.01707, 0.00279, 0.22805, 0.0857, 0.28415, 0.254, 0.09748, -0.15445, 0.07095, -0.15216, -0.07974, -0.00729, 0.06827, -0.01288, 0.09531, 0.01124, -0.09076, -0.10711, -0.15352, -0.09901, -0.11226, -0.04793, -0.05803, 0.20725, 0.06238, -0.02999, 0.02972, -0.08929, -0.01413, 0.04549, -0.02795, 0.03233, 0.01956, 0.02476, 0.03663, -0.04779, -0.04894, -0.00879, -0.00673, 0.01402, -0.03417, 0.04416, 0.00352, 0.00311, -0.01136, -0.0014, -0.02044, -0.02904, 0.00531, -0.00273, -0.08707, 0.04259, -0.00172, 0.02929, -0.00056, -0.04044, 0.03956, 0.05224, 0.03337, -0.02431, 0.06107, -0.02037, 0.03561, -0.03088, -0.01407, -0.00604, -6e-005, -0.00354, 0.0079, -0.00661, 0.00177, 0.00961, -0.00133, -0.00386, -0.00029, 0.00044, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00091, -0.11772, -0.02129, -0.03976, 0.12378, 0.06879, -0.18285, -0.02032, 0.15742, 0.15351, -0.06837, -0.01678, -0.16719, -0.12514, -0.0003, -0.20925, 0.19971, 0.12681, -0.14057, 0.23284, 0.01727, 0.10232, -0.08638, 0.04698, 0.01911, -0.01016, 0.07691, -0.00188, -0.02501, -0.16107, -0.01921, -0.00582, 0.27699, -0.06339, -0.11924, 0.07183, 0.03666, -0.02977, 0.12857, -0.13135, -0.04328, -0.19078, -0.07368, -0.13054, -0.11569, -0.14428, 0.01584, 0.13509, 0.08417, 0.0357, -0.03029, -0.0015, 0.05476, 0.0535, -0.00041, 0.00466, -0.03179, 0.05301, 0.35364, -0.01928, 0.18912, -0.08914, 0.00376, 0.02898, -0.01844, 0.00851, -0.06377, 0.08262, 0.1325, -0.10842, -0.01921, -0.00324, -0.04963, -0.12314, 0.06259, -0.02266, 0.03416, 0.05938, 0.05902, -0.0091, -0.02293, 0.08809, -0.03243, 0.01401, 0.00203, -0.10266, 0.04942, 0.03225, -0.06644, -0.01296, -0.04146, 0.0851, -0.03784, -0.07481, -0.04808, 0.00211, -0.04315, 0.01898, -0.01635, 0.00824, -0.02106, -0.00293, -0.0161, 0.01449, 0.01607, -0.03602, -0.00399, -0.00542, -0.0792, 0.03796, -0.01119, 0.00761, -0.03774, 0.01137, 0.035, 0.01837, 0.02251, 0.00354, 0.0313, -0.00398, 0.01194, -0.00249, -0.02094, 0.00137, 0.0042, 0.00157, -0.00438, 0.00584, -0.00436, 0.00035, -0.007, -0.05444, 0.00133, -0.00012, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00473, 0.00745, 0.09886, -0.09415, -0.07679, 0.04784, 0.043, 0.07752, 0.10075, -0.23355, -0.06794, -0.03072, -0.02668, 0.08452, -0.14886, -0.06183, 0.01026, 0.01321, 0.15606, 0.05658, -0.05497, -0.08951, -0.0181, -0.02751, 0.0111, 0.00505, 0.01815, 0.01074, -0.00614, -0.03231, 0.01141, -0.01631, -0.02852, -0.06681, 0.03056, 0.0052, 0.10098, 0.02522, 0.04507, 0.03358, 0.0421, 0.00232, -0.03026, -0.00646, -0.0251, -0.02886, -0.03931, 0.04791, 0.01972, 0.05651, 0.01485, 0.04967, 0.00197, 0.0009, -0.0051, -0.03561, -0.00702, 0.06016, 0.12082, -0.03952, 0.01608, -0.04333, -0.06116, -0.07199, 0.04891, 0.04862, -0.05782, 0.11208, 0.07621, -0.00808, -0.0214, -0.0429, -0.03643, -0.09536, 0.0856, 0.03885, 0.13671, 0.06523, 0.02888, 0.00571, 0.04614, -0.09091, -0.02572, 0.04917, -0.02034, 0.09584, 0.01057, -0.03248, 0.02653, -0.0446, -0.01769, -0.03318, -0.03249, 0.00694, 0.04717, 0.00878, 0.06853, -0.01041, 0.03166, -0.06939, 0.01519, -0.06076, 0.01976, 0.03599, 0.0289, 0.05983, 0.13363, 0.08332, 0.2487, 0.01463, 6e-005, -0.11977, -0.10864, 0.12248, -0.14054, -0.31167, -0.25906, -0.04255, -0.34923, 0.29688, -0.14634, 0.20525, 0.07194, 0.12942, -0.02543, -0.00571, -0.01275, 0.00789, 0.00349, -0.00885, 0.00191, 8e-005, 0.00458, -0.00047, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00957, -0.05256, -0.05873, -0.11065, 0.09999, 0.13104, -0.17913, 0.0035, 0.12864, 0.10025, -0.0882, -0.0564, -0.04831, 0.05399, -0.04501, -0.10814, 0.08467, 0.02997, -0.03397, 0.06755, -0.01355, 0.07947, 0.02058, 0.03667, -0.01925, 0.04253, -0.04059, -0.0193, -0.03635, 0.04388, -0.02917, -0.00635, 0.11566, -0.1131, -0.01962, 0.05541, 0.10347, 0.0208, -0.11423, 0.10709, 0.05804, 0.25835, -0.01511, -0.00562, 0.04855, 0.01288, -0.13137, -0.05758, 0.01048, 0.09208, -0.0571, 0.11338, 0.08819, -0.04905, -0.07104, -0.0701, -0.00217, 0.00895, -0.04329, -0.05368, -0.01035, 0.0683, -0.07471, -0.00355, 0.06376, -0.05971, 0.05403, -0.06645, -0.09392, 0.00532, 0.03462, -0.04039, 0.06828, 0.10279, -0.0451, -0.04242, 0.00942, -0.09028, -0.0771, 0.01694, 0.03061, -0.16775, 0.04147, 0.0244, -0.06178, 0.18941, -0.06666, -0.108, 0.03767, 0.00105, 0.04651, -0.0937, -0.04975, 0.14487, -0.13026, -0.06447, 0.02211, -0.24882, 0.04342, 0.02193, -0.12554, 0.05546, -0.01535, -0.01478, -0.00923, 0.10697, -0.34651, -0.07733, 0.13735, -0.16922, -0.00934, 0.0098, 0.13472, 0.02532, 0.06441, 0.0152, 0.0637, -0.12605, -0.03488, -0.08074, -0.00768, 0.04735, 0.0096, 0.26172, 0.01024, 0.00115, 0.02277, 0.00563, 0.00438, 0.00551, -0.001, -0.04506, -0.00182, -0.0008, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.02799, 0.0098, 0.07364, -0.10527, -0.07375, 0.06659, 0.02057, 0.03383, 0.1062, -0.18454, -0.06709, -0.00752, 0.02727, -0.08081, -0.13711, 0.03208, 0.1069, 0.1146, 0.09782, 0.09564, 0.07811, -0.06733, -0.00785, -0.02287, -0.01834, 0.03684, -0.01474, -0.01939, -0.01977, 0.0169, -0.01026, -0.02351, 0.14973, -0.04945, -0.09995, -0.02744, -0.08006, -0.04141, -0.02279, 0.00806, -0.09828, 0.02557, 0.04615, 0.03241, 0.0267, -0.018, 0.02439, -0.06416, 0.07198, -0.0367, 0.01369, -0.10585, -0.01573, -0.00466, -0.00096, 0.01277, -0.02528, -0.03515, 0.00749, 0.01386, -0.001, -0.04091, -0.1211, 0.05727, -0.12296, -0.04246, 0.01901, -0.07856, -0.03815, -0.07, 0.02613, 0.11668, 0.03182, 0.16953, -0.07245, -0.01408, -0.10453, -0.0629, -0.02735, 0.01365, -0.02648, 0.01234, 0.03641, -0.01347, -0.00424, 0.00379, -0.03543, -0.04502, -0.03034, 0.00402, 0.00378, -0.05212, 0.00628, 0.06779, -0.02848, 0.00307, 0.03967, -0.02311, 0.01244, -0.03422, 0.00099, -0.02995, 0.00448, 0.01607, -0.01361, -0.02222, 0.07128, 0.05263, 0.11889, -0.02146, 0.08946, -0.15559, -0.13509, 0.26331, -0.12823, -0.1465, 0.00302, 0.42839, 0.41672, -0.19863, -0.03317, -0.0837, 0.0725, 0.06419, 0.04714, -0.02884, -0.01046, 0.01846, -0.0017, -0.00412, -0.00204, 0.00041, 0.00138, -0.00082, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.01468, -0.01935, -0.08877, -0.11563, 0.0792, 0.14904, -0.15597, -0.01142, 0.0968, 0.0337, -0.08061, -0.07101, 0.03825, -0.00383, -0.05973, 0.06375, -0.01538, -0.00188, 0.01344, -0.11623, 0.04398, 0.0272, 0.06534, 0.0287, -0.00838, -0.00311, -0.03189, -0.00775, -0.04653, 0.07505, 0.00517, 0.03224, 0.07541, 0.0038, -0.00361, 0.05242, 0.08695, 0.00213, -0.10555, 0.03802, 0.06302, 0.18257, -0.07008, 0.04484, 0.01154, 0.03338, -0.12182, 0.01714, 0.00843, 0.06345, -0.06561, 0.12703, 0.03878, -0.07018, -0.06295, -0.11693, -0.01958, 0.0182, -0.05864, -0.11244, -0.11242, 0.08666, -0.06928, -0.0873, -0.00915, 0.00323, -0.04133, 0.00338, -0.03795, -0.01739, -0.00128, 0.0391, -0.062, 0.03936, -0.00675, -0.03438, -0.03366, 0.01578, 0.00789, -0.05534, -0.03737, -0.08485, 0.03646, 0.03823, 0.05428, -0.28305, -0.04307, -0.00307, -0.03365, -0.01226, 0.06018, 0.06249, 0.03202, 0.09737, -0.18118, -0.06996, -0.00397, -0.25674, -0.09207, -0.00922, 0.04177, 0.06273, 0.00461, 0.01033, -0.01476, -0.13159, 0.36944, 0.05892, -0.16338, 0.16456, -0.09005, 0.00557, -0.0921, -0.0868, -0.09561, 0.02863, -0.08848, 0.07035, 0.00987, 0.14308, -0.02218, 0.0115, -0.01513, -0.35695, 0.01271, -0.01672, -0.01311, -0.00098, -0.0063, 0.01987, -0.00947, -0.05587, 0.00102, -7e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.05653, 0.01125, 0.04587, -0.09051, -0.06463, 0.06949, -0.01838, -0.00895, 0.10338, -0.09189, -0.06142, 0.00804, 0.05922, -0.18868, -0.079, 0.1248, 0.17581, 0.15987, 0.02608, 0.05891, 0.2161, -0.02636, 0.03927, -0.03687, -0.06459, 0.02761, -0.02382, 0.00085, -0.01568, 0.0155, 0.01122, -0.03716, 0.19935, 0.00064, -0.10527, 0.01434, -0.18288, -0.08619, -0.03175, 0.03504, -0.08379, 0.04968, 0.1241, -0.05955, 0.07887, 0.01363, 0.04738, -0.12849, 0.04333, -0.10027, 0.02347, 0.03484, 0.10293, 0.03419, 0.09229, 0.12503, 0.112, -0.05192, -0.10866, 0.05969, 0.02009, 0.1138, 0.3109, 0.13686, 0.27526, -0.08532, 0.04165, 0.00542, -0.18086, 0.30896, -0.00787, -0.17513, 0.02072, -0.25638, 0.05316, 0.09832, 0.13422, 0.02297, -0.0166, 0.03084, -0.01278, -0.11688, -0.06731, -0.00828, -0.02243, -0.05337, 0.04986, -0.03168, 0.01645, -0.00942, 0.00632, -0.00368, -0.0104, -0.00153, 0.02159, 0.00485, -0.03016, 0.02802, -0.02862, -0.01342, 0.00377, 0.01799, 0.02277, -0.01338, 0.01342, -0.02968, 0.0148, -0.02388, -0.09199, 0.04498, -0.02734, 0.03357, 0.01694, -0.04688, 0.01574, 0.01591, -0.02187, -0.04597, -0.05683, 0.01688, 0.01597, 0.02255, -0.0344, -0.02004, -0.00187, -0.01069, 0.0007, -0.00725, 0.00229, -0.00534, 0.00458, -0.00537, -0.00066, -0.00057, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.01489, 0.00079, -0.11372, -0.11435, 0.05979, 0.14552, -0.12136, 0.0016, 0.06247, -0.03349, -0.0439, -0.06351, 0.04222, -0.08209, -0.06, 0.23474, -0.09647, 0.00366, 0.01884, -0.21239, 0.08355, 0.01563, 0.05178, -0.01544, 0.04349, -0.05647, 0.06516, -0.00677, 0.00978, -0.01014, -0.0075, 0.08414, 0.10685, 0.07542, -0.02119, 0.06206, -0.0024, -0.04778, 0.09654, -0.16913, -0.00842, -0.12934, -0.20111, 0.08092, -0.13165, 0.05027, 0.03693, 0.11862, -0.01466, 0.00626, -0.00252, 0.01897, 0.02042, -0.0635, -0.02804, 0.00953, -0.06337, -0.02814, -0.14562, 0.01792, -0.15563, 0.07396, 0.11126, -0.09636, 0.00886, 0.0395, -0.01262, 0.00366, -0.02804, 0.01199, 0.0506, -0.07351, 0.02738, -0.15232, 0.01919, -0.20741, 0.02719, 0.1468, -0.06493, -0.21061, 0.06139, 0.33865, -0.00443, 0.0373, 0.22807, 0.29776, 0.03529, 0.13305, 0.0819, -0.03039, -0.03983, -0.05554, -0.0615, -0.08857, 0.0002, -0.03431, 0.04404, -0.03483, 0.02173, 0.00181, 0.02257, 0.01938, -0.02502, -0.01494, 0.02116, 0.10871, 0.00011, 0.00571, 0.15009, -0.10398, 0.02906, -0.01414, 0.01967, 0.01998, -0.00078, 0.00239, -0.01664, 0.02056, 0.06781, -0.03634, -0.00131, -0.01747, 0.0367, 0.03098, -0.01215, -0.00295, -0.00093, -0.01639, 0.00135, -0.01012, -0.01051, -0.04991, -0.00118, 0.00118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.05782, -0.01109, -0.05811, 0.07738, -0.07082, -0.05306, 0.00491, 0.00907, 0.09588, 0.08764, 0.05622, -0.01498, -0.05421, 0.1785, -0.07192, -0.09822, -0.18536, -0.15849, 0.02385, -0.08192, -0.20559, -0.02792, -0.03334, -0.03495, 0.06898, -0.03366, 0.03085, 0.00159, -0.01666, -0.01652, -0.01198, 0.04619, 0.18638, 0.00766, -0.10229, 0.00743, -0.1815, -0.08041, 0.04218, -0.05344, -0.08235, -0.06361, -0.14548, -0.0681, -0.09288, 0.00802, -0.04303, 0.14076, 0.04468, -0.10035, -0.02361, -0.03254, 0.10006, 0.04097, -0.09481, -0.12322, -0.11829, -0.04851, -0.09198, -0.05735, 0.0371, 0.10497, -0.29677, 0.14663, -0.27262, -0.08915, -0.04279, -0.00498, -0.17668, 0.30577, 0.01339, -0.16598, -0.01758, -0.23806, -0.05072, 0.12054, -0.13041, 0.00668, 0.00935, 0.05383, 0.01946, -0.15343, 0.06641, 0.01233, -0.04739, 0.08581, 0.04567, -0.04613, -0.00734, -0.00601, 0.01066, -0.00245, -0.00357, 0.00822, 0.02143, 0.00859, 0.03482, 0.03168, 0.03084, 0.01353, 0.00126, 0.01574, -0.02538, 0.01166, 0.01101, -0.04147, -0.0147, -0.02436, -0.10794, 0.05615, -0.03037, -0.03493, 0.01467, 0.0488, 0.01573, -0.01555, -0.01991, -0.04795, 0.06395, 0.02078, -0.01602, 0.02433, 0.03823, -0.02332, -0.00052, -0.0103, 0.00079, -0.0054, -0.00213, -0.00419, -0.00571, -0.00015, -0.00053, -0.0007, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00858, 0.00202, -0.10798, -0.12362, -0.05231, 0.15228, -0.12264, 0.00061, -0.07346, -0.0434, -0.05039, -0.06224, 0.04848, -0.10235, 0.06832, 0.24705, -0.07654, 0.02123, -0.0216, -0.20462, 0.10682, -0.01263, 0.05579, 0.0194, 0.03612, -0.05309, 0.06215, 0.00663, -0.00799, -0.00837, -0.00622, 0.07954, -0.12814, 0.07503, 0.03265, -0.06326, 0.02251, 0.05697, 0.09246, -0.16425, 0.01759, -0.12308, -0.18623, -0.07387, -0.12217, -0.05147, 0.04192, 0.10376, 0.00981, 0.00482, 8e-005, 0.02269, -0.03162, 0.05935, -0.01771, 0.02323, -0.05066, 0.03369, 0.15669, 0.02438, 0.15248, -0.08603, 0.14479, 0.08071, 0.03909, -0.02988, -0.00797, 0.00424, 0.04777, -0.04591, 0.04943, 0.09234, 0.0295, 0.17961, 0.02492, 0.19533, 0.04179, -0.14844, -0.06636, 0.20593, 0.05961, -0.32373, -0.01181, 0.03616, -0.22421, 0.29007, -0.04056, -0.12875, 0.08321, 0.03124, 0.03889, -0.05561, 0.06227, 0.0882, -0.00258, 0.03357, 0.04045, 0.03154, 0.01845, 0.00033, -0.02285, -0.02124, -0.02236, -0.01632, -0.02251, -0.10479, 0.00174, -0.00304, -0.13906, 0.09839, -0.02588, -0.01036, -0.02142, 0.0147, -0.00096, 0.00412, 0.01895, -0.01538, 0.06115, 0.03426, 0.00045, 0.01488, 0.03269, -0.02859, 0.01229, 0.00411, 0.00085, 0.01708, 0.0016, 0.01064, -0.00994, -0.05019, 0.00125, -0.00111, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.03318, -0.02082, -0.08025, 0.10124, -0.0872, -0.06396, -0.04845, -0.02256, 0.08501, 0.21635, 0.08004, -0.00718, -0.06161, 0.14074, -0.13445, -0.06828, -0.11333, -0.09914, 0.12458, -0.04585, -0.10141, -0.10285, -0.00881, -0.05438, 0.01176, -0.02142, 0.00683, -0.05229, -0.0005, 0.00452, 0.00946, -0.01365, 0.17459, 0.02125, -0.08974, -0.03105, -0.12397, -0.03919, 0.01284, 0.05689, -0.13975, 0.05793, 0.02234, 0.09152, 0.03209, 0.01333, -0.0224, 0.02091, 0.04927, -0.05579, 0.0168, 0.14256, -0.06718, -0.01865, 0.01824, 0.03129, 0.05331, -0.01284, 0.00996, 0.00316, -0.03325, -0.09239, 0.18398, -0.03144, 0.21271, -0.02833, -0.05332, 0.08554, -0.00117, -0.14016, -0.03942, 0.13415, -0.03276, 0.23157, 0.11285, -0.06014, 0.21082, -0.05557, 0.00673, 0.01426, 0.00999, 0.12753, -0.03871, 0.01661, -0.04168, -0.01456, -0.0245, 0.03092, 0.03064, 0.01313, 0.00226, -0.01551, 0.07741, -0.01696, -0.01794, -0.00302, 0.01483, 0.03263, -0.00731, -0.05625, -0.03358, 0.00169, 0.00173, -0.00196, -0.00871, 0.00564, 0.05383, -0.03837, -0.04888, -0.01289, -0.05191, -0.11604, 0.14663, 0.20932, 0.11437, -0.13342, 0.03084, -0.32411, 0.29433, 0.12067, -0.04692, 0.04128, 0.03414, -0.10326, -0.03983, 0.01496, 0.00602, -0.00495, -0.00407, -0.0059, 0.00196, -0.00351, 0.00246, 0.00089, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00793, -0.00841, -0.0909, -0.11923, -0.06993, 0.14209, -0.1464, 0.0307, -0.0937, -0.0448, -0.0354, -0.09116, -0.03036, 0.04859, 0.05868, 0.12987, -0.15275, -0.04951, -0.04526, -0.12142, -0.09304, -0.00919, -0.02191, -0.01316, 0.03521, -0.0236, -0.00106, 0.01719, 0.06046, 0.01037, 0.03332, -0.0103, -0.08372, 0.07992, 0.00441, -0.07479, -0.06414, -0.04159, 0.01954, 0.01292, -0.08801, -0.09679, 0.13888, -0.05272, 0.03454, -0.04518, 0.09182, -0.06611, -0.03413, -0.0617, 0.06081, -0.10464, -0.02448, 0.08345, 0.03291, 0.04623, 0.02049, -0.02509, 0.08956, 0.04909, 0.12191, -0.04013, 0.01486, 0.14543, -0.02887, -0.0549, -0.01472, 0.02199, 0.02795, -0.02847, -0.04627, -0.05458, 0.00096, -0.10254, -0.01416, -0.02072, -0.04026, 0.01868, 0.09253, 0.00575, -0.07506, 0.01937, 0.02166, -0.09186, -0.00911, -0.28493, -0.02482, -0.07494, -0.07759, -0.03587, 0.01134, 0.11692, -0.03899, 0.04848, -0.10584, -0.08207, -0.06311, -0.18225, 0.04006, 0.00401, -0.0929, -0.02433, 0.03061, 0.04094, -0.02875, 0.11661, -0.29409, -0.06869, 0.29564, -0.1829, 0.01532, -0.0592, 0.07541, 0.12748, -0.02329, -0.11332, 0.0014, 0.00586, -0.09517, 0.03427, -0.0211, -0.07511, -0.01154, -0.37208, -0.00818, -0.02016, 0.0067, -0.01223, 0.00473, 0.005, 0.00173, -0.0498, 0.00545, 0.00065, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00606, -0.03071, -0.09868, 0.09939, -0.08555, -0.05227, -0.07512, -0.07627, 0.07502, 0.28142, 0.07164, 0.02932, -0.01847, -0.0513, -0.16856, -0.00962, 0.03821, 0.02803, 0.20003, 0.00932, 0.0507, -0.1179, -0.00985, -0.06032, 0.00759, 0.00946, -0.0053, -0.00112, -0.00139, 0.00175, -0.02331, -0.02142, -0.06028, 0.04132, 0.07156, 0.0083, 0.11939, -0.00073, -0.01831, -0.08167, 0.04845, 0.0118, 0.03033, 0.03574, -0.00503, -0.02736, 0.04267, -0.03962, -0.01001, 0.05224, -0.02711, -0.03925, -0.05221, 0.02602, 0.00956, 0.08984, -0.00035, 0.11236, 0.09055, 0.03359, -0.08572, -0.04976, 0.12181, -0.15238, -0.01031, 0.17634, 0.11588, -0.18825, 0.13244, -0.01622, 0.07572, -0.05944, 0.11445, -0.1795, -0.16436, 0.05346, -0.22908, 0.10959, -0.11112, 0.01597, -0.04033, -0.13285, 0.08226, -0.01843, 0.00015, 0.01486, 0.05931, -0.02309, -0.00736, -0.00247, -0.0235, -0.02397, -0.09432, 0.0077, -0.02281, -0.01521, 0.06547, -0.04544, 0.02274, -0.0118, -0.03156, 0.06614, 0.0195, 0.05254, 0.00428, -0.01843, 0.1484, -0.09885, -0.11816, -0.06604, 0.00142, -0.09387, 0.08368, 0.09018, 0.11311, -0.23298, 0.19504, 0.01948, -0.21899, -0.20403, -0.0902, -0.13242, 0.06664, -0.0694, 0.01256, 0.01186, 0.01168, 0.00284, 0.00987, -0.01325, 0.00089, 0.00321, -0.00314, -0.00092, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00361, -0.05744, -0.05167, -0.10267, -0.09578, 0.09591, -0.14494, 0.0584, -0.13472, 0.01136, -0.03799, -0.07686, -0.14979, 0.08936, 0.03824, -0.04743, -0.08613, -0.03454, -0.00987, 0.06139, -0.18894, -0.04863, -0.09823, -0.04974, 0.01905, 0.02312, 0.00832, 0.01058, 0.08087, -0.02265, 0.01949, -0.0823, -0.08803, -0.00588, 0.01389, -0.08873, -0.09145, -0.07914, -0.00012, 0.08645, -0.14795, -0.0349, 0.19345, 0.03881, 0.08669, -0.01074, 0.13213, -0.16333, -0.05588, -0.09481, 0.1019, -0.15142, -0.12042, 0.06599, 0.05586, 0.08716, 0.05605, 0.00644, 0.05227, 0.05619, 0.04488, -0.02087, -0.00372, 0.0962, -0.06471, -0.00777, 0.0534, -0.01409, 0.03093, -0.09616, -0.03263, 0.00137, 0.00125, -0.10582, 0.00797, -0.0463, 0.00814, 0.05393, -0.00811, -0.05993, 0.03369, 0.06025, -0.05955, -0.02115, 0.06048, 0.21379, -0.03661, 0.05528, 0.04774, -0.02308, 0.03345, -0.08816, -0.03941, 0.0345, -0.21297, -0.0613, 0.03057, -0.28968, 0.00393, -0.02268, 0.01876, 0.14186, -0.00221, -0.03719, 0.00609, -0.06659, 0.27321, -0.01704, -0.17838, 0.10864, -0.03791, 0.07335, -0.04391, -0.1297, -0.00392, 0.10042, -0.04424, -0.00271, 0.02035, 0.01357, 0.05253, 0.09928, -0.01564, 0.29799, 0.03291, 0.01024, -0.00534, 0.01045, -0.00013, -0.00065, -0.01339, -0.05151, 0.00295, -0.00135, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.0478, -0.01497, -0.11851, 0.07323, -0.07295, -0.01848, -0.06965, -0.10474, 0.04087, 0.26187, 0.07809, 0.04062, 0.04593, -0.20679, -0.1315, 0.15348, 0.10309, 0.07383, 0.15137, -0.02875, 0.13597, -0.08322, 0.03825, 0.0041, -0.01445, 0.02383, -0.03217, 0.07058, -0.05853, 0.02685, -0.0388, 0.00039, -0.18525, -0.03868, 0.14043, 0.01086, 0.21841, 0.07935, -0.0434, 0.12021, 0.13326, -0.07362, 0.05227, -0.06031, 0.05635, -0.0076, 0.00278, -0.07176, 0.02087, 0.0991, 0.09635, -0.1266, 0.16385, -0.00286, 0.05383, -0.06289, -0.02511, -0.11018, -0.02195, -0.00489, 0.20586, 0.09499, -0.28201, 0.24926, -0.09892, -0.15445, -0.07754, 0.16033, -0.09384, 0.00468, -0.06997, -0.01244, -0.10019, 0.02472, 0.0971, -0.10397, 0.15634, -0.10494, 0.11807, -0.04664, 0.05516, 0.1963, -0.06557, 0.03135, 0.02931, 0.07745, -0.01948, 0.04166, 0.02047, 0.03355, 0.02401, -0.01524, 0.04057, -0.03927, -0.04335, -0.00897, 0.00194, 0.01185, 0.03216, -0.04298, 0.00582, 0.00341, 0.00952, 0.00298, -0.02208, -0.0249, -0.00572, -0.00211, -0.07783, 0.03815, -0.00048, -0.02828, 0.0036, 0.04145, 0.03546, -0.0499, 0.03069, -0.02455, -0.05725, -0.01981, -0.03408, -0.03042, 0.01168, -0.00616, -0.00053, -0.00369, 0.00833, -0.00721, -0.00224, 0.00952, 0.00055, -0.00216, -0.00044, 0.00045, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00621, -0.11678, -0.0083, -0.04811, -0.11646, 0.07125, -0.17626, -0.00885, -0.1629, 0.12545, -0.07744, -0.02138, -0.1733, -0.10301, 0.01486, -0.22752, 0.18952, 0.11941, 0.12467, 0.23745, 0.00233, -0.09374, -0.09114, -0.04772, 0.02082, -0.01287, 0.08094, -0.00593, 0.03165, -0.16502, -0.01504, -0.0059, -0.25817, -0.05949, 0.10442, -0.07347, -0.06107, 0.02116, 0.13416, -0.14546, 0.0288, -0.18379, -0.07992, 0.13801, -0.12263, 0.146, 0.01563, 0.14386, -0.087, -0.04689, -0.04114, 0.0125, -0.07324, -0.05351, -0.00637, 0.01165, -0.0292, -0.04114, -0.35338, -0.01886, -0.21307, 0.07917, 0.035, -0.05675, -0.00761, 0.00853, -0.05558, 0.06537, -0.12292, 0.10856, -0.01158, 0.00463, -0.03884, 0.12116, 0.05222, 0.03431, 0.01706, -0.04812, 0.04631, 0.01432, -0.02918, -0.11036, -0.02537, 0.01063, -0.00528, -0.11186, -0.04757, -0.03706, -0.06911, 0.00932, 0.03906, 0.08731, 0.03358, 0.07962, 0.05317, -0.00113, -0.04363, -0.02041, -0.02001, 0.01305, 0.02055, 0.00257, -0.01725, 0.01425, -0.01372, 0.039, -0.00338, 0.00568, 0.0883, -0.04241, 0.01132, 0.01078, 0.03757, 0.00685, -0.03914, 0.024, -0.02605, -0.00085, 0.03783, 0.0062, 0.01579, 0.00588, -0.02236, -0.0007, -0.00417, -0.00117, 0.00349, -0.00508, -0.00414, -0.0014, -0.0071, -0.05453, -0.00129, 7e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00365, -0.01319, -0.10473, 0.0814, -0.08732, -0.03313, -0.06245, -0.07667, 0.08598, 0.24316, 0.05782, 0.02433, 0.0212, -0.07807, -0.143, 0.04955, -0.00088, -0.00983, 0.15885, -0.0488, 0.05315, -0.09772, 0.02026, -0.03138, -0.01316, -0.00034, -0.0225, 0.0128, -0.0021, 0.03694, -0.01455, 0.01551, -0.04107, 0.05396, 0.03253, -0.00093, 0.08898, 0.02277, -0.05736, -0.02159, 0.03546, 0.02612, 0.02841, -0.00581, 0.03029, -0.03011, 0.02461, -0.05396, 0.01845, 0.04604, -0.02104, -0.03689, -0.00775, 0.0063, -0.00274, 0.02768, 0.00674, 0.05881, 0.12485, 0.03337, 0.01712, -0.05058, 0.05257, -0.07116, -0.0416, 0.0549, 0.06341, -0.11871, 0.08609, -0.00862, 0.02508, -0.0382, 0.04372, -0.10609, -0.09004, 0.04328, -0.13484, 0.07476, -0.03718, 0.00381, -0.04249, -0.0719, 0.03012, -0.04619, -0.01342, -0.07442, 0.01784, -0.02039, -0.02222, -0.04444, -0.0227, 0.02267, -0.02682, -0.00904, 0.06122, 0.01582, -0.06568, 0.01703, -0.02669, 0.07138, 0.02891, -0.0665, -0.02133, -0.03739, 0.02974, 0.0477, -0.17094, 0.09132, 0.23207, 0.03316, 0.00109, 0.12012, -0.1228, -0.11895, -0.14678, 0.31145, -0.26449, -0.02842, 0.34327, 0.30397, 0.14461, 0.1988, -0.07045, 0.09984, -0.0264, -0.0058, -0.01517, 0.00722, -0.00299, -0.0094, -0.00201, -0.00503, 0.00475, -0.00038, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.01003, -0.05142, -0.0475, -0.12034, -0.09093, 0.13551, -0.17331, 0.01201, -0.13894, 0.07395, -0.09514, -0.05944, -0.05095, 0.06296, 0.06112, -0.11428, 0.08529, 0.03125, 0.01659, 0.07337, -0.01952, -0.06914, 0.01847, -0.03342, -0.01791, 0.04283, -0.03834, 0.018, 0.0368, 0.04006, -0.02774, -0.00811, -0.11182, -0.11976, 0.01614, -0.05565, -0.11395, -0.02345, -0.10858, 0.11013, -0.06232, 0.25704, -0.01835, 0.00629, 0.04549, -0.00962, -0.1349, -0.05196, -0.01258, -0.09774, -0.05511, 0.11816, -0.08787, 0.04865, -0.07117, -0.0736, -0.00293, -0.01551, 0.02973, -0.0577, 0.00852, -0.06312, -0.08099, 0.01145, 0.06876, 0.05399, 0.04734, -0.05371, 0.08496, -0.0044, 0.03205, 0.04487, 0.06386, -0.09167, -0.03541, 0.03789, 0.0244, 0.08255, -0.07345, -0.01746, 0.0355, 0.17674, 0.03839, 0.02967, 0.06364, 0.1988, 0.06509, 0.11092, 0.04036, 0.00386, -0.04428, -0.09678, 0.05302, -0.14476, 0.12428, 0.06312, 0.02952, 0.24846, 0.04664, 0.01416, 0.12311, -0.04843, -0.01308, -0.01073, 0.006, -0.11291, -0.3297, 0.06769, -0.16388, 0.16658, 0.00928, -0.00344, -0.12194, 0.03864, -0.04856, -0.01919, -0.03481, 0.12997, -0.0731, 0.04758, -0.02373, -0.06965, 0.01746, -0.27437, -0.00738, -0.00051, -0.02123, -0.00647, 0.00474, -0.00451, -0.00078, -0.04478, 0.0013, 0.00084, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.02943, -0.01187, -0.08296, 0.09191, -0.08201, -0.04978, -0.0376, -0.03488, 0.0949, 0.18713, 0.05782, -0.00034, -0.0229, 0.0799, -0.1297, -0.02487, -0.10795, -0.11411, 0.09574, -0.10785, -0.0728, -0.06991, 0.01499, -0.02589, 0.01731, -0.03695, 0.01114, -0.01842, -0.01453, -0.00854, 0.01077, 0.02691, 0.14052, 0.04957, -0.09894, -0.03304, -0.08914, -0.04139, 0.01104, -0.00383, -0.10461, -0.00532, -0.05358, 0.02728, -0.02527, -0.02156, -0.03764, 0.06566, 0.07061, -0.04345, -0.02083, 0.11919, -0.0199, 0.00309, -0.00597, -0.02556, 0.02298, -0.03694, 0.0139, -0.02614, 0.01138, -0.05019, 0.11274, 0.06653, 0.12121, -0.04256, -0.02344, 0.07845, -0.03375, -0.06766, -0.02611, 0.11167, -0.03845, 0.16417, 0.07127, -0.01021, 0.10019, -0.06425, 0.02805, 0.01965, 0.02221, 0.0216, -0.03218, 0.0176, -0.01018, -0.03491, -0.03047, -0.04441, 0.02646, 0.00535, -0.00287, 0.05868, 0.00272, 0.05666, -0.00837, 0.01075, -0.03986, 0.00528, -0.0225, 0.033, -0.00361, -0.03667, -0.00395, -0.01484, -0.01191, -0.00761, -0.0302, 0.04583, 0.13614, -0.03943, 0.09883, 0.15525, -0.12414, -0.27127, -0.11694, 0.14876, 0.01273, 0.41805, -0.41311, -0.21317, 0.03053, -0.08446, -0.07372, 0.10308, 0.04545, -0.02682, -0.00895, 0.01845, 0.001, -0.00629, 0.00098, -0.00656, 0.00126, -0.00081, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.01151, -0.01816, -0.08013, -0.12651, -0.0706, 0.15546, -0.15276, -0.00763, -0.1079, 0.01319, -0.0875, -0.07141, 0.04102, -0.0127, 0.07446, 0.0669, -0.00352, 0.01074, -0.02412, -0.105, 0.05231, -0.01963, 0.06408, -0.02601, -0.01034, 0.00096, -0.03332, 0.00984, 0.04842, 0.07645, 0.00401, 0.02945, -0.09143, -0.00166, 0.01458, -0.04908, -0.07762, 0.00244, -0.10742, 0.03867, -0.05182, 0.18427, -0.06458, -0.04813, 0.01441, -0.0312, -0.1184, 0.00998, -0.0163, -0.05902, -0.0637, 0.11462, -0.03682, 0.07027, -0.06267, -0.11482, -0.02224, -0.01422, 0.05746, -0.11023, 0.11184, -0.08163, -0.08219, 0.08047, -0.02263, 0.00146, -0.03898, -0.00529, 0.04192, 0.02499, 0.0016, -0.0517, -0.05812, -0.05778, -0.01468, 0.03572, -0.04496, -0.00877, 0.00484, 0.0535, -0.04006, 0.08297, 0.04024, 0.03651, -0.05349, -0.28092, 0.0467, 0.00801, -0.03678, 0.01175, -0.06023, 0.05638, -0.03252, -0.10424, 0.18322, 0.0692, 0.00042, 0.25772, -0.09014, -0.01293, -0.04162, -0.05905, 0.00507, 0.01204, 0.01617, 0.13323, 0.37504, -0.06435, 0.14931, -0.1612, 0.07966, -0.01158, 0.10641, -0.0573, 0.10914, 0.01233, 0.08761, -0.11706, 0.05566, -0.12036, -0.02569, -0.00223, -0.00706, 0.34772, -0.01782, 0.01979, 0.01418, -0.00106, -0.00645, -0.0193, -0.00963, -0.05549, -0.00116, 0.00016, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00874, -0.026, -0.08844, 0.05918, -0.01957, -0.03661, -0.06757, 0.05248, 0.07537, -0.04883, 0.0191, 0.03655, 0.0621, -0.00285, 0.10114, -0.00041, -0.03584, -0.02534, -0.02474, 0.01594, 0.03055, 0.05045, 0.00918, 0.04124, -0.01191, 0.00833, 0.00226, 0.05269, 0.01257, -0.0147, 0.08464, 0.05869, 0.0267, -0.09168, 0.01925, -0.02371, -0.01563, 0.03411, 0.05348, -0.01807, 0.03729, 0.08834, 0.02718, -0.02386, -0.00732, -0.04496, -0.02569, -0.02433, -0.09254, 0.00356, -0.03549, -0.02505, 0.00373, 0.03681, 0.00635, -0.01213, 0.02379, 0.04584, -0.0048, 0.01746, 0.00033, -0.03176, 0.0612, -0.10777, -0.10003, 0.00942, -0.06179, 0.15167, 0.06227, 0.09593, 0.066, -0.2027, 0.06223, 0.09173, -0.05401, 0.03242, -0.05611, -0.04427, -0.16192, 0.2879, 0.28983, 0.18249, -0.14957, 0.06013, 0.09914, -0.02551, -0.0092, 0.02443, -0.21086, -0.00406, -0.00401, -0.02265, -0.03016, 0.09758, -0.04293, 0.04192, -0.00754, -0.13229, 0.01224, -0.0452, 0.08448, -0.06873, 0.0037, -0.05127, 0.03703, -0.11379, 0.0225, 0.18466, -0.01951, 0.02414, 0.3259, 0.07334, 0.13689, 0.14393, -0.0618, -0.1015, 0.07262, -0.03372, -0.03603, 0.05178, 0.2413, -0.03066, -0.30762, 0.01155, -0.02784, 0.00752, -0.01951, 0.01054, 0.00388, 0.00148, 0.00366, -0.00735, -0.00067, -0.00108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00622, -0.0674, -0.04863, 0.04041, -0.06611, 0.03048, 0.01506, -0.05799, -0.10122, -0.01597, -0.12229, -0.012, 0.09379, 0.17703, 0.05587, -0.06664, -0.02669, -0.07769, 0.00376, -0.02698, 0.19858, -0.0286, 0.10537, -0.03445, -0.0272, -0.00046, -0.11155, 0.00045, 0.00854, -0.05056, -0.08393, -0.08434, 0.02086, -0.05326, -0.00248, -0.01483, -0.04576, 0.01245, 0.16066, 0.1075, -0.02354, -0.11902, 0.0584, -0.02427, 0.1426, 0.00444, -0.22838, 0.24304, 0.03671, 0.04291, -0.06705, -0.10414, 0.12572, -0.04025, 0.29717, -0.01808, 0.09133, -0.00182, 0.05367, 0.10725, -0.00078, 0.05556, -0.01182, -0.08382, -0.01689, -0.03895, 0.06859, -0.02621, 0.02588, 0.02877, 0.02128, 0.00373, 0.02714, 0.03808, -0.01716, -0.06561, -0.02461, 0.05056, -0.01662, -0.15469, 0.00155, -0.0674, 0.01243, -0.01033, -0.00989, -0.00475, 0.0897, 0.02105, 0.03078, 0.08955, -0.15925, -0.01715, -0.03157, -0.05039, 0.07249, -0.06402, -0.00029, -0.16197, -0.0005, -0.00122, -0.13978, -0.43068, 0.00924, -0.03334, -0.24142, -0.15907, 0.01535, 0.08986, -0.06569, -0.02938, -0.05788, 0.0051, 0.07075, -0.01289, -0.03818, 0.01126, -0.00209, -0.01376, 0.01028, -0.02638, 0.00373, -0.0272, 0.03667, 0.05375, -0.02336, 0.01492, -0.01226, -0.00124, -0.00208, 0.02146, -0.00401, -0.04815, -0.00197, -0.00172, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.008, 0.01842, 0.08255, -0.05437, -0.01217, 0.03974, 0.06882, -0.05854, 0.08605, 0.04678, -0.03244, -0.03765, -0.05141, 0.02232, 0.09438, -0.00693, 0.03268, 0.01664, -0.02501, -0.01882, -0.00852, 0.05329, 0.00247, 0.04478, 0.00885, -0.00833, -0.01452, 0.05232, 0.01156, 0.00905, -0.09336, -0.06762, 0.02424, 0.08527, 0.01941, -0.02194, -0.0105, 0.03253, -0.03548, 0.02979, 0.03965, -0.1009, -0.02059, -0.02105, 0.02296, -0.04518, 0.0004, 0.05093, -0.09602, -0.00119, 0.02789, 0.01344, -0.01012, 0.04102, 0.02639, 0.01007, -0.0136, 0.04576, -0.01068, -0.00555, 0.00041, -0.03768, -0.06213, -0.09789, 0.09757, 0.01364, 0.06896, -0.15363, 0.05904, 0.09218, -0.06326, -0.20188, -0.05887, 0.08698, 0.0518, 0.03944, 0.05307, -0.04957, 0.15911, 0.30317, -0.28789, 0.1888, 0.15003, -0.0609, 0.09963, 0.02483, -0.01901, 0.02197, 0.21297, -0.01389, 0.01354, 0.02062, -0.0265, 0.10253, -0.05065, 0.04871, 0.00746, -0.11366, -0.01222, 0.04479, 0.09935, -0.02093, -0.00267, 0.04729, 0.06337, -0.0956, -0.02067, 0.17365, -0.01216, 0.02723, 0.33029, -0.07233, 0.12827, -0.14448, -0.05722, 0.10213, 0.07241, -0.032, 0.03694, 0.05437, -0.23943, -0.02748, 0.30979, 0.00556, -0.0251, 0.00583, -0.01804, 0.01061, -0.00409, -0.00089, -0.00408, 0.002, -0.00045, -0.00089, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00714, -0.06986, -0.05806, 0.04667, 0.06786, 0.02626, 0.00753, -0.05186, 0.09231, -0.02125, -0.11944, -0.0079, 0.10005, 0.17564, -0.06666, -0.06628, -0.03047, -0.08001, -0.00102, -0.02506, 0.20074, 0.02287, 0.10574, 0.02971, -0.02834, 0.00046, -0.11062, -0.00624, -0.00987, -0.05187, -0.07411, -0.07737, -0.02367, -0.06302, 0.00035, 0.01735, 0.0472, -0.01613, 0.16557, 0.10486, 0.01929, -0.10857, 0.06103, 0.02675, 0.14093, 0.00054, -0.22981, 0.23888, -0.0263, -0.04304, -0.07055, -0.10626, -0.12537, 0.03596, 0.29606, -0.01931, 0.09339, -0.00324, -0.05282, 0.10852, 0.00074, -0.05173, -0.00501, 0.09517, -0.02779, 0.03768, 0.06138, -0.00936, -0.03257, -0.03915, 0.02841, 0.01859, 0.03382, -0.04794, -0.023, 0.06165, -0.03064, -0.04538, -0.03434, 0.12207, 0.03343, 0.04691, -0.0041, -0.00365, -0.00108, -0.00753, -0.08814, -0.02361, 0.00739, -0.08856, 0.15872, -0.01954, 0.0347, 0.03934, -0.06733, 0.05902, -0.00112, 0.17555, 0.00085, -0.00619, 0.12964, 0.43563, 0.00959, -0.03878, 0.23587, 0.17063, 0.01773, -0.10963, 0.06744, 0.02655, 0.02167, 0.01314, -0.08538, 0.00303, 0.04475, 2e-005, -0.00591, 0.01739, 0.00626, 0.02052, 0.03026, 0.03041, 0.0026, -0.0547, 0.02628, -0.01565, 0.01433, 7e-005, -0.00164, -0.0215, -0.00358, -0.04867, 0.00204, 0.00182, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00186, 0.01449, 0.05829, -0.03693, -0.0316, 0.01679, 0.0551, -0.03301, 0.07658, 0.0421, 0.02396, -0.04151, -0.04677, -0.0613, 0.07783, 0.09082, 0.02926, 0.06896, -0.02824, -0.00093, -0.07423, 0.04921, -0.06648, 0.07656, 0.00087, 0.04262, -0.01152, 0.04964, 0.00657, 0.06784, -0.02775, -0.14176, 0.01972, 0.18025, 0.01953, -0.00086, -0.04916, 0.01887, 0.12359, 0.09979, 0.04682, -0.0264, 0.16757, -0.00591, -0.02599, 0.00613, -0.01651, 0.14208, -0.04904, 0.01659, -0.02929, 0.12605, 0.04959, 0.0283, -0.07699, -0.09149, 0.00107, -0.08531, -0.06825, -0.00216, -0.12743, -0.04176, -0.00828, 0.10711, -0.01845, -0.10337, 0.02157, -0.00513, 0.28914, -0.02288, 0.01231, -0.01943, 0.08138, 0.01595, -0.05001, 0.04141, 0.01145, -0.00293, -0.05116, -0.21601, 0.16631, -0.09113, -0.04426, 0.03922, -0.00787, 0.00159, -0.09485, -0.00756, -0.15804, 0.02057, -0.01809, -0.00652, 0.02616, -0.05046, 0.00366, 0.00205, -0.02908, 0.05319, -0.00541, -0.0311, -0.12777, 0.09713, -0.00891, -0.06116, 0.08221, -0.04609, -0.02802, 0.05695, -0.09613, -0.14411, 0.0872, -0.20046, 0.06548, -0.1576, 0.01689, -0.00109, -0.04206, 0.06202, 0.02047, 0.08762, -0.00339, 0.01295, 0.06645, 0.00228, 0.02405, 0.00282, -0.00518, -0.00082, -0.00353, -0.00508, -0.08022, 0.0046, 0.0106, 0.06249, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00225, -0.07545, -0.05046, 0.08272, 0.05139, -0.04411, 0.05854, -0.0089, 0.06583, -0.04812, -0.04652, -0.03494, 0.0132, -0.023, -0.02285, 0.00912, -0.03004, 0.03128, 0.01078, -0.03014, -0.05761, 0.01006, 0.00277, -0.01088, 0.02715, -0.01251, 0.04846, -0.00566, 0.03913, -0.05672, -0.04131, -0.0145, -0.02236, -0.0237, 0.02945, 0.01127, -0.00139, -0.03649, -0.05517, -0.02272, 0.00671, -0.11385, -0.109, 0.05611, 0.00548, -0.00213, 0.09572, -0.00813, -0.06252, -0.04187, 0.07312, 0.04639, -0.03409, 0.00862, 0.01937, 0.00238, -0.01426, 0.00268, -0.05038, -0.04739, -0.03819, -0.02275, -0.16844, 0.02286, 0.13494, -0.00031, 0.19082, -0.22372, 0.03172, 0.0179, -0.02291, -0.00603, 0.08006, -0.0329, -0.08788, -0.01073, 0.14389, -0.06199, -0.00777, 0.01082, 0.12043, 0.00459, -0.19109, 0.10019, 0.01171, -0.1807, 0.00029, -0.06738, -0.04612, 0.05801, -0.08753, -0.22074, 0.0019, -0.11954, -0.02014, -0.0766, 0.02913, 0.04439, -0.0633, -0.0617, -0.34925, 0.11476, 0.02686, -0.00165, -0.15419, -0.11398, -0.01785, -0.05949, 0.17636, 0.32716, 0.15666, 0.0999, -0.10203, 0.04925, -0.02841, 0.02219, 0.08579, -0.07984, -0.00692, -0.00027, -0.03393, -0.0463, 0.0347, 0.01218, -0.00772, 0.00343, -0.00917, -0.02035, 0.00455, -0.01482, -0.00243, -0.05301, 0.03098, 0.1475, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00184, 0.01697, 0.06903, -0.04333, -0.02692, 0.0262, 0.06266, -0.05009, 0.08164, 0.04668, -0.00663, -0.03951, -0.04474, -0.0219, 0.0888, 0.04774, 0.03109, 0.03429, -0.02665, -0.00948, -0.03871, 0.04887, -0.02781, 0.06681, 0.00289, 0.01291, -0.0226, 0.04866, 0.02404, 0.05007, -0.05037, -0.10525, 0.02422, 0.13442, 0.03318, -0.0131, -0.03711, 0.04804, 0.04109, 0.05921, 0.0327, -0.04609, 0.06555, -0.00025, -0.01491, -0.00187, -0.00837, 0.09032, -0.06531, 0.01395, 0.00353, 0.0832, 0.01498, 0.02536, -0.04729, -0.05397, -0.00057, -0.02448, -0.05613, -0.01714, -0.0697, -0.0536, -0.03456, 0.017, 0.0172, -0.04856, 0.02706, -0.05295, 0.15781, -0.00604, -0.00241, -0.0811, 0.03665, 0.02403, -0.01794, -0.01853, 0.0286, -0.03101, 0.02171, -0.00691, 0.003, 0.00934, 0.02691, -0.00462, -0.0043, 0.02974, -0.02263, -0.00805, -0.02841, 0.02005, 0.00116, -0.00018, 0.03177, -0.0333, 0.01184, -0.02388, 0.00392, 0.02028, 0.00062, 0.00118, -0.07155, 0.03152, -0.0243, -0.01758, -0.01332, 0.00515, 0.01277, -0.04696, -0.04679, -0.06538, -0.1263, -0.06155, -0.02664, -0.01015, 0.01604, -0.05339, -0.05736, 0.05807, -0.00552, 0.00269, 0.14932, 0.03354, -0.10484, 0.00014, 0.02515, 0.00661, 0.00667, -0.00145, 0.00207, -0.00795, 0.0786, -0.00505, -0.04513, -0.22812, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00694, -0.07083, -0.04816, 0.07838, 0.0741, -0.01947, 0.05738, -0.04714, 0.07752, -0.01945, -0.08391, -0.01297, 0.06926, 0.06859, -0.05602, -0.01508, -0.02977, -0.01077, 0.01393, 0.02885, 0.0777, 0.01124, 0.04604, 0.00136, -0.02256, -0.00298, -0.05162, -0.01187, 0.02628, 0.00152, 0.00061, -0.06733, -0.02189, -0.00927, 0.00923, 0.00611, 0.03551, -0.03217, 0.00773, -0.04053, 0.00821, -0.03656, 0.011, 0.05175, -0.04283, 0.00113, 0.11487, -0.05927, -0.07631, -0.05084, 0.05286, 0.07689, -0.12028, 0.03353, -0.08399, -0.00129, -0.04011, -0.00673, -0.0804, -0.02931, 0.02206, -0.03946, -0.02994, 0.07108, 0.02865, 0.0135, 0.01575, -0.01173, -0.00357, -0.01384, -0.01784, 0.01726, -0.00618, -0.0555, 0.00983, 0.04815, 0.01184, -0.00386, 0.03829, 0.03765, -0.0246, 0.00746, 0.00722, -0.02432, 0.05485, 0.00806, -0.03143, -0.03585, -0.13722, 0.03026, -0.01843, -0.1086, -0.02573, -0.01166, -0.10705, 0.06162, -0.00128, 0.06459, -0.03093, -0.02931, -0.1446, -0.09045, -0.01155, 0.01156, -0.05822, -0.01251, -0.00212, 0.11335, 0.00729, 0.02656, -0.04892, 0.0402, -0.00912, 0.00834, -0.02722, 0.00982, 0.01769, -0.03467, -0.0062, -0.0189, -0.01382, -0.00793, 0.02305, 0.00529, -0.00959, 0.00042, -0.00492, -0.00523, 0.00191, -0.00132, -0.04728, -0.04064, -0.04468, -0.23245, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00116, 0.0193, 0.07946, -0.04966, -0.03883, 0.03491, 0.07002, -0.0656, 0.08983, 0.05077, -0.03659, -0.03827, -0.04423, 0.01473, 0.10471, 0.00565, 0.03286, 0.00157, -0.02703, -0.01994, -0.00662, 0.05259, 0.01023, 0.06483, 0.0075, -0.01738, -0.03117, 0.05237, 0.0417, 0.03065, -0.07364, -0.0658, 0.0274, 0.08691, 0.04959, -0.02487, -0.02594, 0.07771, -0.04387, 0.01999, 0.02091, -0.06854, -0.03799, 0.00606, -0.00146, -0.00633, -0.00163, 0.04045, -0.07189, 0.01152, 0.03533, 0.03911, -0.01123, 0.01638, -0.01527, -0.01618, 0.00015, 0.03417, -0.04629, -0.03191, -0.01985, -0.06503, -0.06502, -0.07432, 0.05765, 0.00714, 0.03903, -0.10506, 0.02642, 0.00744, -0.01724, -0.13294, -0.00448, 0.02866, 0.01186, -0.07467, 0.04925, -0.05313, 0.09182, 0.20671, -0.15491, 0.11254, 0.09265, -0.04492, -0.00871, 0.05123, 0.06335, -0.01534, 0.10355, 0.01675, 0.02062, 0.00372, 0.03719, -0.02263, 0.01757, -0.05185, 0.03711, -0.0154, 0.00704, 0.03145, -0.02533, -0.02797, -0.03998, 0.02613, -0.11023, 0.05026, 0.04965, -0.15263, 0.00663, 0.02181, -0.32679, 0.07641, -0.12139, 0.13844, 0.01744, -0.10475, -0.06779, 0.05059, -0.03289, -0.08208, 0.29402, 0.05783, -0.28386, -0.00056, 0.02536, 0.0093, 0.01831, -0.00495, 0.00949, -0.01333, 0.00382, -0.01188, 0.04705, 0.16851, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00996, -0.06887, -0.0474, 0.07678, 0.06406, -0.00917, 0.05671, -0.06322, 0.08687, -0.00731, -0.09878, -0.00353, 0.0932, 0.10672, -0.06562, -0.02407, -0.02961, -0.02809, 0.01149, 0.05458, 0.13457, 0.01664, 0.06334, 0.01651, -0.04494, 0.00215, -0.09405, -0.0094, 0.01986, 0.02702, 0.01914, -0.09213, -0.02315, -0.0009, 0.00275, 0.00404, 0.05215, -0.03041, 0.03771, -0.04664, 0.01092, -0.00236, 0.06437, 0.05184, -0.06456, 0.00644, 0.12239, -0.07947, -0.07003, -0.05484, 0.04408, 0.09153, -0.15075, 0.03896, -0.12905, -0.00454, -0.05147, -0.01492, -0.09779, -0.02185, 0.03946, -0.04542, 0.03031, 0.09541, -0.01896, 0.01866, -0.06122, 0.08027, -0.01788, -0.03175, -0.01482, 0.04322, -0.04212, -0.0714, 0.05071, 0.07844, -0.04485, 0.03122, 0.0565, 0.05137, -0.08184, 0.0099, 0.0899, -0.07633, 0.0656, 0.08894, -0.03113, -0.03013, -0.18069, 0.01386, 0.01234, -0.0595, -0.03825, 0.02828, -0.15281, 0.12379, -0.01519, 0.07206, -0.01803, -0.01576, -0.06119, -0.17679, -0.02615, 0.01662, -0.01289, 0.02593, 0.00481, 0.19176, -0.0678, -0.10752, -0.12648, 0.01175, 0.03651, -0.01477, -0.02646, 0.00517, -0.01119, -0.01433, -0.00454, -0.02463, -0.00449, 0.00894, 0.02945, 0.00413, -0.00924, -0.0002, -0.00409, 0.00015, -0.00081, 0.00722, 0.04145, -0.05921, 0.0029, -0.02838, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00828, 0.01695, 0.09009, -0.0508, -0.02934, 0.03624, 0.06386, -0.06781, 0.08004, 0.05979, -0.05162, -0.03657, -0.05354, 0.07138, 0.08811, -0.02941, 0.01944, -0.01745, -0.03022, -0.00963, 0.02495, 0.05374, 0.02738, 0.06916, 0.00033, -0.03563, -0.04938, 0.05612, 0.02267, 0.05421, -0.08887, -0.05101, 0.02113, 0.05931, 0.04766, -0.0214, -0.00206, 0.05129, -0.1106, -0.04072, 0.00618, -0.05288, -0.10696, -0.00094, -0.01005, -0.02835, -0.00384, -0.05134, -0.09359, -0.01352, 0.04995, -0.04332, -0.08908, 0.01093, 0.02804, 0.03291, -0.02345, 0.05329, -0.00203, -0.00693, 0.05685, 0.01686, -0.02143, -0.08305, 0.03624, 0.05151, -0.00657, -0.00193, -0.12474, -0.01706, 0.01194, -0.0068, 0.01223, -0.01415, 4e-005, -0.06708, 0.02022, -0.04806, 0.0171, 0.03382, -0.00461, 0.02035, 0.00141, -0.00315, 0.00723, 0.00537, -0.00279, 0.00376, 0.01827, 0.02666, -0.01211, 0.02011, 0.02389, -0.01888, 0.03736, -0.03005, -0.00205, 0.01701, 0.0034, 0.01926, -0.0546, 0.00218, -0.01859, -0.01061, -0.03029, -0.02237, 0.00903, -0.0903, -0.01707, -0.03732, -0.10621, -0.0712, -0.00964, -0.00231, 0.01895, -0.05752, -0.05573, 0.06255, -0.00781, 0.0077, 0.13993, 0.0285, -0.12441, -0.00483, 0.01446, 0.00605, 0.00534, -0.00553, 0.00342, -0.00877, -0.08551, 0.00811, -0.04137, -0.10789, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.01075, -0.08048, -0.04184, 0.07898, 0.05753, -0.02401, 0.04762, -0.04781, 0.09545, -0.01651, -0.08787, -0.00543, 0.0694, 0.06441, -0.06409, -0.01551, -0.02532, -0.01117, 0.00659, 0.0607, 0.09776, 0.02038, 0.03451, 0.02173, -0.03502, -0.00386, -0.06962, -0.00351, 0.01662, 0.0271, 0.0399, -0.0615, -0.03101, 0.02052, 0.00228, 0.00397, 0.04166, -0.03293, 0.03107, -0.02501, 0.00801, 0.00296, 0.05961, 0.04734, -0.04309, 0.0087, 0.09929, -0.04361, -0.05341, -0.04662, 0.03791, 0.06482, -0.11574, 0.03287, -0.11692, -0.00799, -0.03452, -0.02025, -0.09046, -0.02479, 0.01763, -0.0448, 0.03559, 0.09966, -0.04609, 0.00539, -0.04328, 0.06244, 0.01364, -0.02016, -0.00922, 0.03966, -0.06191, -0.04535, 0.0501, 0.07669, -0.04667, 0.04697, 0.00135, 0.03716, -0.04307, 0.01549, 0.03904, -0.02625, 0.03027, 0.01443, 0.00588, -0.00562, 0.01059, 0.00537, 0.01322, -0.06349, -0.02003, 0.03655, -0.08997, 0.10272, 0.02534, 0.02909, -0.00665, 0.00181, 0.01682, -0.14614, 0.00232, 0.01608, -0.0719, -0.03903, -0.01746, 0.01814, -0.02732, -0.07251, -0.04915, -0.02232, 0.0466, -0.02827, 0.01588, -0.01277, -0.0362, 0.01032, -0.0038, 0.00691, 0.0334, 0.00779, 0.01802, 0.01209, -0.00596, 0.0045, -0.00161, 0.00178, 0.00099, 0.00592, -0.0398, -0.05599, 0.03347, 0.27831, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.01849, 0.01376, 0.10148, -0.05167, -0.03224, 0.03624, 0.0571, -0.06926, 0.0729, 0.0677, -0.06524, -0.03497, -0.06466, 0.12521, 0.07482, -0.06396, 0.0057, -0.0358, -0.03559, 0.00114, 0.05302, 0.05854, 0.04134, 0.07973, -0.00777, -0.05415, -0.06526, 0.06299, 0.00351, 0.07802, -0.10376, -0.03534, 0.01326, 0.03387, 0.04775, -0.01648, 0.02205, 0.02533, -0.17765, -0.10109, -0.0077, -0.03634, -0.17923, -0.00772, -0.01759, -0.04785, -0.00727, -0.1415, -0.10472, -0.038, 0.06501, -0.12832, -0.16129, 0.00062, 0.07273, 0.08186, -0.04795, 0.07013, 0.03923, 0.01645, 0.12877, 0.09597, 0.02304, -0.09163, 0.00969, 0.09857, -0.05169, 0.10034, -0.27816, -0.04381, 0.04132, 0.12744, 0.02624, -0.05795, -0.01386, -0.0569, -0.00815, -0.03729, -0.06079, -0.13681, 0.14982, -0.0674, -0.09565, 0.04285, 0.01431, -0.04579, -0.05817, 0.01993, -0.05327, 0.03342, -0.04129, 0.03533, 0.00834, -0.01752, 0.06073, -0.00815, -0.03768, 0.04415, -0.00025, 0.00865, -0.08026, 0.03739, 0.00642, -0.04692, 0.04643, -0.10177, -0.03097, -0.03745, -0.04069, -0.09472, 0.12562, -0.21643, 0.10556, -0.1466, 0.02605, -0.01042, -0.04432, 0.07707, 0.01786, 0.10043, -0.00507, 0.0016, 0.04498, -0.00857, 0.00243, 0.00456, -0.00566, -0.00704, -0.00476, -0.00417, 0.08477, -0.01002, 0.01181, -0.04606, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.01079, -0.10761, -0.02788, 0.08395, 0.08866, -0.05856, 0.02628, -0.01238, 0.10434, -0.0371, -0.06348, -0.0097, 0.01367, -0.0304, -0.07258, 0.00098, -0.01618, 0.02625, 0.00285, 0.07521, 0.01387, 0.01708, -0.03185, 0.01153, -0.01407, -0.019, -0.01368, -0.00526, 0.00826, 0.03005, 0.08451, 0.01, -0.04584, 0.06928, -0.00456, 0.00641, 0.01811, -0.04279, 0.01232, 0.02158, -0.00526, 0.01566, 0.04197, 0.03092, 0.00644, 0.00261, 0.04564, 0.03364, -0.04147, -0.02857, 0.02488, -0.00263, -0.05421, 0.02918, -0.08648, -0.0135, 0.00174, -0.0261, -0.06355, -0.02983, -0.00988, -0.04017, 0.05061, 0.10614, -0.11251, -0.02294, -0.00616, 0.02548, 0.08328, 0.01358, 0.00508, 0.00657, -0.10747, 0.02668, 0.05014, 0.06122, -0.0535, 0.06099, -0.13071, -0.02779, 0.05659, 0.00925, -0.08567, 0.09287, -0.03365, -0.16087, 0.04958, 0.07037, 0.44958, -0.00133, 0.01069, -0.07237, 0.02043, 0.0685, 0.07673, 0.05354, 0.11663, -0.06324, 0.01767, 0.04126, 0.20359, -0.07491, 0.07287, 0.01115, -0.2044, -0.18752, -0.07052, -0.38378, 0.0639, 0.01019, 0.1357, -0.11462, 0.07456, -0.07246, 0.11481, -0.05032, -0.09498, 0.06807, 0.00236, 0.08702, 0.10752, -0.00075, 0.00193, 0.02278, 0.0007, 0.01826, 0.00214, 0.00701, 0.00607, -0.00375, -0.00911, -0.0492, -0.02122, -0.15588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.01105, 0.01308, 0.09084, -0.05071, -0.03383, 0.03158, 0.05703, -0.06431, 0.07915, 0.05994, -0.0455, -0.03539, -0.05329, 0.07474, 0.08235, -0.02213, 0.01516, -0.0114, -0.02684, 0.00816, 0.02383, 0.04798, 0.01179, 0.0926, -0.00934, -0.03084, -0.06037, 0.06792, -0.00297, 0.08114, -0.07774, -0.04396, 0.00219, 0.06619, 0.02635, -0.01149, -0.00728, 0.02922, -0.09092, -0.04208, -0.00128, -0.02032, -0.07819, -0.01378, -0.01187, -0.02782, -0.01419, -0.05804, -0.05373, -0.02467, 0.03028, -0.06942, -0.09444, -0.001, 0.01935, 0.04527, -0.03346, 0.02454, 0.02428, 0.00949, 0.05445, 0.06471, 0.03921, -0.02781, -0.02227, 0.04806, -0.04678, 0.08287, -0.13089, -0.03417, 0.03132, 0.09913, -0.0142, -0.03178, -0.00464, -0.0074, -0.02883, 0.01114, -0.067, -0.12034, 0.1014, -0.06403, -0.06163, 0.02404, -0.0028, -0.03111, -0.02545, 0.04426, 0.00837, -0.00033, -0.00565, 0.0317, -0.02005, 0.03489, 0.02057, 0.01655, -0.0014, 0.0006, 0.00613, -0.00583, 0.07107, -0.02722, 0.0131, 0.00903, -0.00611, 0.02172, -0.00882, 0.01249, 0.05018, 0.06569, 0.03763, 0.08735, -0.00282, 0.06019, -0.00296, 0.03563, 0.0453, -0.05505, -0.00272, -0.02646, -0.08724, -0.0287, 0.03542, -0.00379, -0.01861, -0.01471, -0.00207, 0.00424, -8e-005, -0.00781, -0.08668, 0.00299, 0.01861, 0.21155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00655, -0.08191, -0.041, 0.0835, 0.06243, -0.06894, 0.03776, -0.02147, 0.09811, -0.05911, -0.02907, -0.02609, 0.03797, -0.08263, -0.06235, 0.04252, -0.02629, 0.06371, 0.01931, 0.02947, -0.12819, 0.01985, -0.04847, 0.03442, -0.02117, 0.05673, 0.05287, -0.02505, -0.00647, 0.04068, -0.13923, -0.02816, -0.08836, 0.01121, 0.21377, 0.01356, -0.18829, -0.00988, -0.02864, -0.00546, -0.06766, 0.04328, -0.01777, -0.00941, 0.00533, -0.03933, -0.08229, -0.00919, 0.04355, 0.00841, -0.02123, -0.0305, 0.04872, -0.01559, 0.02174, -0.00172, -0.00104, 0.00019, 0.02347, 0.00617, -0.00281, 0.00409, 0.07614, -0.00968, -0.03751, -0.01078, -0.04445, 0.07327, 0.00839, -0.00509, 0.00747, 0.00804, -0.04139, 0.01182, 0.0365, 0.00912, -0.05066, 0.02232, -0.01981, -0.00267, -0.0353, 0.00355, 0.02375, -0.00725, -0.01007, -0.00886, 0.0105, 0.01482, 0.0812, -0.01479, 0.01328, -0.00721, 0.00273, 0.03074, -0.00421, 0.02901, 0.02772, -0.01251, 0.0059, 0.01604, 0.07442, -0.02927, 0.0103, 0.00199, -0.0242, -0.03244, -0.01637, -0.06598, -0.00176, -0.02998, 0.01555, -0.02855, 0.02932, -0.01638, 0.02965, -0.01672, -0.03156, 0.02435, -0.0034, 0.01349, 0.03639, 0.00031, -0.00177, 0.00867, -0.00179, 0.0043, 0.00242, 0.00117, 0.00045, 0.00248, 0.01278, -0.06095, 0.03124, 0.24811, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00322, 0.01161, 0.08096, -0.04967, -0.02478, 0.02712, 0.05679, -0.0595, 0.08293, 0.05258, -0.02646, -0.03534, -0.04288, 0.02628, 0.08736, 0.01808, 0.02444, 0.01108, -0.0172, 0.01631, -0.00094, 0.03486, -0.01793, 0.09909, -0.01175, -0.01022, -0.05732, 0.0701, -0.00859, 0.08379, -0.04462, -0.05308, -0.00612, 0.10136, -0.00513, -0.00601, -0.02756, 0.0315, -0.00188, 0.01656, 0.00576, -0.00572, 0.02283, -0.01815, -0.00718, -0.00808, -0.01502, 0.02648, -0.00966, -0.01333, -0.00153, -0.00865, -0.03602, 0.00134, -0.03814, 0.00791, -0.02062, -0.02108, 0.00567, -0.00021, -0.01619, 0.02733, 0.05353, 0.04016, -0.05912, -0.00111, -0.04019, 0.06119, 0.01797, -0.02183, 0.0208, 0.06333, -0.0575, -0.00245, 0.00333, 0.04029, -0.048, 0.05457, -0.07516, -0.10826, 0.05665, -0.06026, -0.03402, 0.00968, -0.01829, -0.02072, -0.00142, 0.07364, 0.08333, -0.03048, 0.03009, 0.02507, -0.05012, 0.09085, -0.00836, 0.04078, 0.03881, -0.04366, 0.01163, -0.01919, 0.22787, -0.09017, 0.02354, 0.06506, -0.06599, 0.14245, 0.01449, 0.05203, 0.14012, 0.2263, -0.04919, 0.38987, -0.10958, 0.26088, -0.02839, 0.08195, 0.13181, -0.18308, -0.02183, -0.1491, -0.16474, -0.06165, 0.03227, -0.00145, -0.03791, -0.02814, 0.00633, 0.01831, 0.00386, -0.00946, -0.00046, -0.00029, -0.01606, -0.15389, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00393, -0.07084, -0.04634, 0.08319, 0.07004, -0.07326, 0.04273, -0.02544, 0.09098, -0.06815, -0.01516, -0.03307, 0.04839, -0.10358, -0.06289, 0.05885, -0.03097, 0.0794, 0.02965, 0.00947, -0.18828, 0.01632, -0.05455, 0.03445, -0.02381, 0.08857, 0.08103, -0.0397, -0.01242, 0.04557, -0.23707, -0.04391, -0.10474, -0.01515, 0.30625, 0.01735, -0.27729, 0.00312, -0.04894, -0.01896, -0.09677, 0.05412, -0.04562, -0.02887, 0.00537, -0.06222, -0.13731, -0.03018, 0.06768, 0.02387, -0.04092, -0.04445, 0.08543, -0.03005, 0.06943, 0.00492, -0.00236, 0.01509, 0.06469, 0.02284, 0.00927, 0.02362, 0.08724, -0.06242, -0.00397, -0.00427, -0.06018, 0.09464, -0.02537, -0.01031, 0.00863, -0.00389, -0.01194, 0.01032, 0.0318, -0.01874, -0.04957, -0.00462, 0.02777, -0.00102, -0.07459, -0.00457, 0.0702, -0.05021, 0.00796, 0.05609, -0.02283, -0.00227, -0.07913, -0.01467, 0.01186, 0.02019, -0.00402, 0.01893, -0.03036, 0.01711, -0.01199, 0.01233, 0.0007, 0.00468, 0.017, -0.00965, -0.01702, -0.00383, 0.05457, 0.03379, 0.0049, 0.06941, -0.03305, -0.04963, -0.03796, -0.00279, 0.0112, 0.00116, -0.00677, -0.00261, -0.00716, 0.00863, -0.00464, -0.01493, 0.00131, -2e-005, -0.0092, -0.0002, -0.0028, 0.00029, 0.00269, -0.00146, -0.00053, 0.00192, -0.03296, -0.04625, 0.00786, 0.0062, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00092, 0.0131, 0.06979, -0.04324, -0.03141, 0.02155, 0.05582, -0.04659, 0.08075, 0.04683, -0.0005, -0.03833, -0.0445, -0.01853, 0.08304, 0.05502, 0.0268, 0.04033, -0.02327, 0.00831, -0.03983, 0.04312, -0.0434, 0.09026, -0.00678, 0.01771, -0.03359, 0.06046, -0.0016, 0.077, -0.03925, -0.0982, 0.00528, 0.1413, 0.01187, -0.00319, -0.04233, 0.02597, 0.06078, 0.05785, 0.02525, -0.01352, 0.09433, -0.0131, -0.01673, -0.00134, -0.01872, 0.08362, -0.02545, 0.00279, -0.01615, 0.05709, 0.00963, 0.01343, -0.05599, -0.04161, -0.01058, -0.05323, -0.02982, -0.00073, -0.0721, -0.00576, 0.02608, 0.07224, -0.04131, -0.05201, -0.01315, 0.03185, 0.15166, -0.02315, 0.01697, 0.02484, 0.01023, 0.0064, -0.02263, 0.04114, -0.02045, 0.02819, -0.06239, -0.16108, 0.10901, -0.07504, -0.03613, 0.02257, -0.01432, -0.00674, -0.04529, 0.03244, -0.0383, -0.00694, 0.00762, 0.01141, -0.01216, 0.02047, -0.00495, 0.02272, 0.00456, 0.00387, 0.00335, -0.02391, 0.05412, 0.00212, 0.00739, 0.00207, 0.01085, 0.04924, -0.00508, 0.05584, 0.02046, 0.03763, 0.01754, 0.09699, -0.01983, 0.05235, -0.00586, 0.03975, 0.04367, -0.05953, -0.00043, -0.03147, -0.07785, -0.02367, 0.05499, 0.00117, -0.00792, -0.01415, -0.00074, 0.00832, -0.00143, -0.00699, 0.07743, -0.01016, 0.01485, 0.09131, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00274, -0.07227, -0.04732, 0.08291, 0.07899, -0.0644, 0.04752, -0.0208, 0.08018, -0.06205, -0.02511, -0.03363, 0.03783, -0.07845, -0.05428, 0.04295, -0.03074, 0.0641, 0.02664, -0.00238, -0.14824, 0.01071, -0.03694, 0.01405, -0.00871, 0.05761, 0.07087, -0.03341, 0.00319, 0.0151, -0.17851, -0.034, -0.07925, -0.01858, 0.22072, 0.01571, -0.19445, -0.00912, -0.05198, -0.02097, -0.06746, 0.00376, -0.06637, -0.00501, 0.0056, -0.04689, -0.06671, -0.02485, 0.02065, 0.00419, -0.00629, -0.01843, 0.04418, -0.01492, 0.05467, 0.00497, -0.00664, 0.01372, 0.03354, 0.00165, 0.00162, 0.00943, 0.01062, -0.03826, 0.03723, -0.00267, 0.01458, -0.0009, -0.00883, 0.00123, -0.00115, -0.01436, 0.01434, 0.00167, -0.00376, -0.01942, 0.00784, -0.02851, 0.01712, -0.00218, -0.01682, -0.00448, -0.00807, -0.00532, 0.01451, -0.01522, -0.02681, -0.01541, -0.06661, 0.0101, -0.01837, -0.05232, -0.00298, -0.01748, -0.02129, -0.01209, 0.0011, 0.02299, -0.01837, -0.01508, -0.087, 0.02642, -0.00357, -0.00253, -0.01052, -0.00591, -0.00103, 0.02923, 0.03285, 0.06909, 0.01578, 0.03397, -0.0264, 0.02023, -0.01345, 0.00587, 0.02234, -0.02064, -0.0058, -0.01232, -0.01083, -0.01541, 0.00326, 0.00188, -0.00543, 0.00022, -0.0009, -0.00585, 0.00137, -0.00476, 0.0053, -0.04559, -0.04691, -0.26265, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00073, 0.01194, 0.07632, -0.04084, 0.00653, 0.01927, 0.07326, -0.06677, 0.0892, 0.06611, -0.00663, -0.03392, -0.05589, 0.02229, 0.24703, 0.05546, 0.00716, 0.03059, 0.03224, -0.03475, -0.01921, 0.07129, -0.01306, 0.08445, 0.02879, -0.00014, 0.03686, -0.00294, 0.02098, -0.03086, 0.05308, 0.07595, -0.09701, -0.05656, 0.01111, -0.0173, 0.06847, -0.06887, 0.0257, -0.01931, -0.03411, 0.01641, 0.01417, 0.09546, 0.01642, 0.0882, -0.02058, 0.00841, 0.27227, -0.00466, -0.0227, -0.01449, 0.11899, -0.07729, 0.03309, -0.00648, 0.01563, -0.03674, -0.03952, -0.00733, -0.09098, 0.00745, 0.02624, 0.03658, -0.02667, 0.00834, -0.00712, 0.0294, -0.06453, -0.06829, -0.01117, 0.22415, -0.03634, -0.09217, 0.04117, 0.05672, -0.04804, 0.15463, -0.00652, 0.14104, -0.04926, 0.07544, 0.00696, -0.01203, -0.108, -0.0251, 0.2512, -0.13329, -0.0388, -0.07723, 0.01298, -0.17692, -0.00115, -0.09729, -0.1021, 0.00545, 0.03964, -0.02598, -0.03288, -0.02892, -0.04769, 0.01555, 0.02027, 0.00264, 0.03021, -0.04226, -0.01851, -0.00144, 0.00198, -0.04111, 0.06722, -0.01288, 0.02295, -0.03113, 0.00623, -0.00025, -0.00852, 0.00495, 0.00537, 0.02076, -0.0422, 0.02838, -0.06104, 0.01902, -0.00695, -0.00213, -0.00221, 0.00284, -0.00606, -0.00182, 0.35721, -0.05355, 0.02935, -0.05081, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.0115, -0.07972, -0.03914, 0.07828, 0.06546, -0.03954, 0.0628, -0.03564, 0.08697, -0.03705, -0.07581, -0.01816, 0.05134, 0.0062, -0.07612, 0.00159, -0.02608, 0.00486, 0.00688, 0.01652, 0.00301, 0.01677, 0.02161, 0.00521, -0.01712, 0.04626, -0.01185, -0.01731, 0.03769, -0.02604, 0.00292, -0.01078, -0.02277, -0.04473, 0.01593, -0.01762, 0.01686, -0.0113, 0.0262, 0.01313, -0.01098, 0.02419, 0.01822, 0.03807, -0.01309, 0.01438, 0.06462, -0.05504, -0.07415, -0.03961, -0.00506, 0.03486, -0.09009, 0.04789, -0.0646, 0.01278, -0.02849, 0.00778, -0.04384, 0.01555, 0.03532, -0.0373, -0.0613, 0.09437, 0.02519, -0.00533, 0.02966, -0.09644, -0.01071, -0.01425, 0.0076, -0.02468, 0.10419, 0.04239, -0.0938, -0.00222, 0.09924, -0.00025, 0.01764, 0.00534, 0.10355, -0.01308, -0.03513, 0.01622, -0.10371, 0.08396, 0.11632, 0.00395, 0.10827, -0.0325, -0.03948, 0.43899, 0.01643, -0.12324, 0.23765, -0.17786, -0.09588, -0.16184, 0.08681, 0.06628, 0.04355, 0.01601, -0.03306, -0.00891, 0.06099, 0.06267, 0.05612, 0.10979, -0.06532, -0.02697, 0.00978, -0.03036, -0.01812, 0.03438, -0.05061, 0.02957, 0.03739, -0.01049, 0.01709, -0.01047, -0.10576, -0.00391, -0.08192, -0.01368, 0.00661, 0.01063, -0.00192, -0.00558, -0.00845, 0.0107, 0.31735, -0.09537, -0.00272, 0.0033, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00053, -0.02064, -0.08016, 0.0492, -0.00071, -0.0235, -0.0659, 0.06245, 0.07909, -0.06979, -0.00175, 0.03172, 0.0612, -0.02148, 0.25391, -0.05495, -0.00998, -0.02987, 0.03129, 0.03636, 0.01942, 0.06901, 0.01536, 0.08336, -0.0305, 0.00523, -0.03794, -0.00102, 0.01671, 0.0278, -0.05244, -0.07668, -0.09392, 0.05129, 0.00929, -0.01526, 0.0662, -0.0672, -0.02266, 0.02063, -0.03269, -0.01365, -0.01208, 0.09069, -0.01776, 0.08608, 0.02757, -0.01442, 0.27877, -0.00027, 0.022, 0.01824, 0.12818, -0.08209, -0.03999, 0.00784, -0.01867, -0.03738, -0.03445, 0.00899, -0.09431, 0.01151, -0.03283, 0.02597, 0.02928, 0.00888, 0.01034, -0.03983, -0.06296, -0.0663, 0.01194, 0.22551, 0.04759, -0.09628, -0.05124, 0.05662, 0.05867, 0.15372, 0.00842, 0.13959, 0.06036, 0.07642, -0.01078, 0.01374, -0.09594, 0.03418, 0.23687, -0.13291, 0.05048, -0.07319, 0.01725, 0.22415, -0.00295, -0.08314, -0.12763, 0.02499, -0.04995, -0.00801, 0.04223, 0.03604, -0.05219, 0.0137, -0.02378, -0.0036, 0.02331, -0.0489, 0.02457, -0.01351, 0.00916, -0.0379, 0.06573, 0.00946, 0.02481, 0.03472, 0.01176, 0.0035, -0.01258, 0.00608, -0.00346, 0.02179, 0.0303, 0.02864, 0.05165, 0.02041, -0.00764, -0.00329, -0.00199, 0.00344, 0.00509, -0.00298, -0.32012, 0.04273, 0.02947, -0.05086, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.01151, -0.07792, -0.03051, 0.07331, -0.06578, -0.03718, 0.07048, -0.04277, -0.09625, -0.02955, -0.07608, -0.02178, 0.04488, 0.00862, 0.04847, 0.00768, -0.02513, 0.0082, -0.01039, 0.01259, 0.00087, -0.02451, 0.02005, -0.01447, -0.01385, 0.04596, -0.00772, 0.01753, -0.03977, -0.02928, 0.00874, -0.00235, 0.03331, -0.05068, -0.01706, 0.01942, -0.02429, 0.01881, 0.02887, 0.01092, 0.01466, 0.02585, 0.01967, -0.04834, -0.01121, -0.024, 0.06197, -0.05378, 0.04374, 0.03988, -0.00753, 0.03306, 0.07645, -0.0391, -0.06056, 0.01199, -0.0266, -0.00369, 0.04793, 0.01465, -0.0251, 0.03626, -0.05804, -0.09782, 0.0221, 0.00438, 0.0287, -0.09262, 0.01775, 0.02168, 0.00633, -0.00013, 0.09956, -0.03199, -0.08871, -0.00404, 0.09335, -0.01676, 0.01682, -0.02083, 0.0975, 0.0047, -0.03415, 0.0148, 0.11496, 0.08069, -0.14326, 0.01074, 0.10334, 0.04081, 0.03781, 0.41685, -0.0162, 0.1332, -0.22497, 0.17618, -0.09094, 0.16371, 0.08267, 0.0627, -0.03803, -0.01763, -0.03063, -0.00857, -0.06394, -0.05764, 0.05374, -0.10896, 0.0647, 0.03133, -0.01712, -0.03159, 0.01549, 0.03074, 0.04962, 0.02937, -0.03623, 0.00988, 0.01758, 0.00813, -0.10976, 0.00076, -0.08814, 0.01151, -0.0058, -0.01034, 0.00216, 0.00523, -0.00907, -0.01044, 0.35473, -0.10068, -0.00053, 0.00231, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00209, -0.02271, -0.06348, 0.04581, -0.03706, -0.02154, -0.04832, 0.03183, 0.06887, -0.04714, -0.02893, 0.03741, 0.04793, 0.0584, 0.07987, -0.08926, -0.03239, -0.0651, -0.02925, -0.00239, 0.06744, 0.04781, 0.06638, 0.07729, 0.00212, -0.04374, 0.01679, 0.04996, 0.00222, -0.07367, 0.02303, 0.1393, 0.02206, -0.18176, 0.01617, -0.0021, -0.04871, 0.02277, -0.12891, -0.10168, 0.0458, 0.01371, -0.17855, -0.01205, 0.02643, 0.00632, 0.02695, -0.14211, -0.04187, 0.0211, 0.03715, -0.12018, 0.05304, 0.02717, 0.07865, 0.0912, -0.00263, -0.08508, -0.06229, -0.00307, -0.12246, -0.039, -0.01031, 0.10395, 0.03318, -0.10271, -0.00045, -0.01951, 0.2839, -0.02471, -0.01476, -0.01864, -0.07207, 0.01948, 0.04004, 0.04234, 0.00446, 0.00391, 0.05, -0.21589, -0.15205, -0.09108, 0.02296, -0.02796, -0.00911, -0.02147, -0.09431, -0.0001, 0.152, 0.01407, -0.00835, -0.01781, 0.02579, -0.037, 0.00585, 0.01046, 0.03211, 0.04799, -0.00158, 0.02412, -0.08857, 0.08392, 0.01182, 0.06061, 0.09868, -0.03326, 0.02588, 0.06315, -0.11495, -0.17924, 0.06943, 0.21023, 0.07631, 0.16206, 0.01992, 0.00352, -0.05125, 0.07042, -0.02111, 0.08711, -0.00037, 0.01797, -0.06222, 0.00092, 0.02475, 0.00243, -0.00414, 0.00143, 0.00401, -0.00342, 0.07947, -0.0104, 0.00712, 0.04588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00204, -0.0734, -0.04374, 0.07815, -0.0476, -0.042, 0.06424, -0.01248, -0.07386, -0.0432, -0.0436, -0.03929, 0.00798, -0.0296, 0.01415, 0.01906, -0.02664, 0.03868, -0.0076, -0.03006, -0.06543, -0.01541, -0.00456, 0.00239, 0.02708, -0.00774, 0.0469, 0.00016, -0.03962, -0.04891, -0.04412, -0.03001, 0.02006, -0.00372, -0.03142, -0.01111, 0.00679, 0.0342, -0.04123, -0.0116, -0.01182, -0.11607, -0.0899, -0.05512, 0.00259, 0.00144, 0.09332, 0.00756, 0.06754, 0.03979, 0.06945, 0.05998, 0.02843, -0.01169, 0.01078, -0.00771, -0.01405, 0.00672, 0.05758, -0.04734, 0.05198, 0.0272, -0.16833, -0.03451, 0.13209, 0.01168, 0.19203, -0.22293, -0.06334, -0.01527, -0.02141, 0.00813, 0.08853, 0.03094, -0.09285, 0.0061, 0.14428, 0.06193, -0.01335, 0.01302, 0.138, 0.00547, -0.1948, 0.10389, -0.01078, -0.17943, 0.01015, 0.0678, -0.06323, -0.05992, 0.08899, -0.22012, -0.00476, 0.12436, 0.01962, 0.07591, 0.02576, -0.04998, -0.06351, -0.06475, 0.36119, -0.12475, 0.02572, -0.00837, 0.14421, 0.11836, -0.02083, 0.05286, -0.16471, -0.30932, -0.1653, 0.07723, 0.0942, 0.03161, 0.02638, 0.02193, -0.08064, 0.07253, -0.00462, -0.00937, -0.0341, 0.0446, 0.0418, -0.01235, 0.00503, -0.00372, 0.00968, 0.02031, 0.00413, 0.01529, -0.01124, -0.05219, -0.03196, -0.15348, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.0026, -0.02466, -0.07391, 0.05169, -0.03491, -0.02818, -0.05596, 0.0446, 0.07262, -0.04854, -0.00265, 0.03784, 0.05209, 0.02931, 0.09443, -0.04911, -0.03417, -0.03527, -0.02802, 0.0126, 0.04702, 0.04734, 0.03271, 0.06626, -0.00536, -0.01316, 0.01679, 0.04967, 0.021, -0.04959, 0.05013, 0.0972, 0.02648, -0.13463, 0.03196, -0.01369, -0.0408, 0.05129, -0.03999, -0.06331, 0.0316, 0.04179, -0.06394, -0.00595, 0.01011, -0.00198, 0.02096, -0.09629, -0.05652, 0.01945, 0.00231, -0.07423, 0.02812, 0.02152, 0.03776, 0.0535, -0.00384, -0.02359, -0.04694, 0.01382, -0.0717, -0.04894, 0.03105, 0.00908, -0.01394, -0.04975, -0.02517, 0.05134, 0.15724, -0.00448, 0.00043, -0.0825, -0.03711, 0.02999, 0.01892, -0.02371, -0.02712, -0.0304, -0.01736, -0.01101, -0.00569, 0.00847, -0.02595, 0.00191, -0.01031, -0.02868, -0.01904, -0.00405, 0.01314, 0.0166, 0.00318, -0.01177, 0.03441, -0.03181, 0.02355, -0.03052, -0.00403, 0.01305, -0.00402, -0.0044, -0.0552, 0.04128, 0.02288, 0.01874, -0.00683, 0.0065, -0.01293, -0.05915, -0.04731, -0.06791, -0.12015, 0.0656, -0.02548, 0.01101, 0.01893, 0.05415, -0.05896, 0.06153, 0.00481, 0.00475, -0.14994, 0.03421, 0.10674, -0.00044, 0.02605, 0.00652, 0.00717, -0.00086, -0.00185, -0.00776, -0.08332, 0.00054, -0.03994, -0.20116, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.0067, -0.06853, -0.04027, 0.07314, -0.07069, -0.01647, 0.06392, -0.05236, -0.08604, -0.0142, -0.08413, -0.01724, 0.06392, 0.06576, 0.04591, -0.00974, -0.02617, -0.00693, -0.01091, 0.02764, 0.07297, -0.01655, 0.0427, -0.0087, -0.02211, -0.00154, -0.0538, 0.00645, -0.02877, 0.00702, -0.00494, -0.0785, 0.0191, 0.00558, -0.01283, -0.00464, -0.03121, 0.02669, 0.01221, -0.03376, -0.01176, -0.04141, 0.01815, -0.05141, -0.04421, -0.00092, 0.11325, -0.04897, 0.08304, 0.049, 0.05293, 0.08558, 0.1179, -0.03612, -0.08869, -0.00722, -0.03993, 0.00938, 0.08609, -0.03101, -0.01426, 0.04511, -0.03356, -0.07251, 0.03037, -0.00807, 0.01863, -0.01748, -0.01382, 0.01442, -0.01799, -0.00823, -0.00211, 0.05252, 0.0078, -0.04582, 0.01491, 0.00724, 0.04044, -0.03666, -0.02412, -0.00844, 0.01014, -0.02468, -0.05404, 0.01129, 0.03373, 0.03652, -0.13952, -0.03228, 0.01819, -0.10796, 0.02208, 0.01526, 0.1051, -0.05862, -0.00084, -0.06643, -0.03067, -0.029, 0.15159, 0.08644, -0.01415, 0.00956, 0.05933, 0.01186, -0.0007, -0.10749, -0.00209, -0.0192, 0.06252, 0.03318, 0.012, 0.00717, 0.02529, 0.00389, -0.01128, 0.02807, -0.00677, 0.01849, 0.00269, 0.00419, 0.01138, -0.00528, 0.00677, -0.00114, 0.00416, 0.00536, 0.00212, 0.00218, -0.03835, -0.04095, 0.04937, 0.25613, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00224, -0.02676, -0.0842, 0.05781, -0.04565, -0.03571, -0.06336, 0.05824, 0.07972, -0.05127, 0.0255, 0.03765, 0.05422, -0.0029, 0.1113, -0.00826, -0.03592, -0.00465, -0.02813, 0.02583, 0.02139, 0.05044, -0.0032, 0.06261, -0.0124, 0.01751, 0.02064, 0.05308, 0.03926, -0.02749, 0.0753, 0.05527, 0.02979, -0.08649, 0.04898, -0.02516, -0.03152, 0.08058, 0.04776, -0.025, 0.01958, 0.06786, 0.04484, 0.00032, -0.00566, -0.007, 0.01509, -0.04895, -0.06375, 0.01749, -0.03027, -0.0288, 0.00543, 0.01199, 0.00097, 0.01559, -0.00581, 0.0356, -0.03525, 0.02931, -0.02407, -0.05964, 0.06796, -0.08436, -0.05939, 0.00505, -0.04553, 0.11326, 0.02823, 0.01089, 0.01551, -0.13688, -0.00018, 0.03634, -0.00621, -0.08285, -0.05389, -0.05624, -0.08505, 0.1998, 0.14497, 0.11077, -0.0822, 0.03625, -0.01587, -0.04113, 0.06639, -0.01193, -0.1228, 0.01512, 0.01914, -0.01024, 0.04118, -0.02561, 0.03428, -0.06515, -0.03856, -0.02324, -0.00898, -0.033, -0.01845, -0.00835, 0.03686, -0.02414, -0.10814, 0.0471, -0.04882, -0.17281, 0.01405, 0.03351, -0.31089, -0.07466, -0.12467, -0.13923, 0.02025, 0.10468, -0.06615, 0.05186, 0.03219, -0.07887, -0.29272, 0.0565, 0.28537, -0.00101, 0.02623, 0.00926, 0.01865, -0.00494, -0.00953, -0.01404, 0.00077, 0.0053, 0.04645, 0.17061, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00977, -0.06633, -0.03837, 0.07085, -0.0594, -0.00527, 0.06408, -0.07006, -0.09623, -0.00168, -0.10221, -0.00772, 0.08777, 0.1077, 0.0537, -0.02331, -0.02582, -0.02775, -0.00845, 0.05205, 0.13302, -0.02232, 0.06408, -0.02355, -0.04384, 0.00023, -0.09691, 0.00359, -0.02433, 0.03022, 0.01092, -0.09881, 0.02, 0.00867, -0.00819, -0.00128, -0.04897, 0.02168, 0.03265, -0.04415, -0.01316, -0.00988, 0.0598, -0.05219, -0.06433, -0.00571, 0.12147, -0.07454, 0.07751, 0.05324, 0.0477, 0.09528, 0.15107, -0.04053, -0.12995, -0.00629, -0.05114, 0.01107, 0.10229, -0.02523, -0.03703, 0.0523, 0.02297, -0.08665, -0.0125, -0.01933, -0.05655, 0.06822, 0.01486, 0.03074, -0.01663, -0.02833, -0.04236, 0.06781, 0.05171, -0.06974, -0.03916, -0.02518, 0.06626, -0.0738, -0.09839, -0.02222, 0.09955, -0.0808, -0.06424, 0.09404, 0.02397, 0.03164, -0.1682, -0.01562, -0.01454, -0.05873, 0.03392, -0.02562, 0.14995, -0.11733, -0.01101, -0.06993, -0.01715, -0.0122, 0.06361, 0.17879, -0.03039, 0.01939, 0.02494, -0.0313, 0.01025, -0.17381, 0.06666, 0.10447, 0.16167, 0.02009, -0.02293, 0.00056, 0.02438, -0.00639, 0.01858, 0.00868, -0.00814, 0.03351, 0.02789, -0.01525, -0.00196, -0.00405, 0.00639, -0.00083, 0.00205, 0.0004, 0.00024, -0.00571, 0.04162, -0.06016, -0.00806, 0.00966, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00705, -0.0257, -0.09414, 0.05918, -0.0355, -0.03866, -0.05823, 0.06214, 0.06905, -0.06124, 0.04164, 0.03575, 0.06085, -0.06385, 0.09462, 0.02753, -0.02211, 0.01611, -0.03076, 0.01626, -0.01405, 0.05117, -0.02341, 0.06635, -0.00418, 0.03499, 0.04143, 0.05616, 0.0207, -0.0509, 0.09272, 0.04394, 0.02441, -0.05669, 0.04712, -0.0217, -0.00663, 0.0546, 0.11335, 0.03772, 0.00526, 0.05289, 0.11287, -0.00614, 0.00525, -0.02914, 0.01474, 0.04623, -0.08715, -0.0083, -0.04548, 0.05019, -0.07581, 0.00725, -0.04073, -0.03359, 0.01951, 0.0552, 0.00793, 0.00416, 0.05457, 0.02169, 0.02522, -0.09351, -0.04109, 0.0506, 0.00177, 0.00879, -0.12548, -0.01474, -0.01288, -0.01113, -0.01897, -0.00907, 0.00547, -0.07511, -0.02523, -0.05294, -0.01684, 0.02953, -0.00016, 0.01852, 0.00289, 0.00024, 0.00385, -0.00375, -0.00342, 0.00436, -0.01699, 0.0259, -0.01349, -0.02697, 0.02595, -0.02278, 0.04703, -0.04117, 0.00483, 0.0137, -0.00411, -0.01895, -0.05612, 0.01825, 0.01873, 0.01232, -0.02219, -0.01794, -0.0109, -0.09175, -0.01396, -0.02911, -0.10016, 0.06831, -0.01471, -0.00081, 0.01708, 0.05576, -0.05141, 0.06104, 0.00734, 0.00689, -0.13541, 0.02747, 0.12564, -0.00613, 0.01503, 0.00551, 0.00549, -0.00569, -0.00329, -0.00937, 0.08061, -0.01422, -0.0448, -0.13786, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.01159, -0.07812, -0.03168, 0.07291, -0.05396, -0.01988, 0.05435, -0.05498, -0.10368, -0.00983, -0.09302, -0.00942, 0.06309, 0.07188, 0.05401, -0.01865, -0.02303, -0.01302, -0.00323, 0.05927, 0.09991, -0.02617, 0.03731, -0.02921, -0.03477, -0.00776, -0.07463, -0.00268, -0.01902, 0.0329, 0.02988, -0.06674, 0.0285, 0.02692, -0.00751, -0.00159, -0.04118, 0.02709, 0.01871, -0.02934, -0.00864, -0.00287, 0.04747, -0.04695, -0.04394, -0.00552, 0.09826, -0.04899, 0.06338, 0.04783, 0.04318, 0.05966, 0.12484, -0.03387, -0.11313, -0.00432, -0.03689, 0.01427, 0.09014, -0.0254, -0.02378, 0.04267, 0.03301, -0.08992, -0.04182, -0.01102, -0.04374, 0.06185, 0.00016, 0.02191, -0.00785, -0.03867, -0.06019, 0.04663, 0.0498, -0.06885, -0.04416, -0.0414, 0.00322, -0.04065, -0.04332, -0.01763, 0.03896, -0.02644, -0.03088, 0.01493, -0.00554, 0.00518, 0.01254, -0.00827, -0.0118, -0.06089, 0.01728, -0.03425, 0.08531, -0.09879, 0.02496, -0.03079, -0.00624, 0.00392, -0.01071, 0.14501, 0.00026, 0.01481, 0.0748, 0.04126, -0.01636, -0.00809, 0.02903, 0.07618, 0.06054, -0.03002, -0.04526, -0.02835, -0.01787, -0.01902, 0.04211, -0.01714, -0.00464, -0.00771, 0.0486, -0.01088, 0.00423, -0.01148, 0.00433, -0.00513, 0.00101, -0.00116, 0.00136, -0.00492, -0.04897, -0.05476, -0.02871, -0.26475, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.01719, -0.02552, -0.10394, 0.06059, -0.0418, -0.04246, -0.05386, 0.06748, 0.06097, -0.07137, 0.05785, 0.03369, 0.06578, -0.12779, 0.08235, 0.06368, -0.00744, 0.03847, -0.03569, 0.00714, -0.05118, 0.0563, -0.04459, 0.07798, 0.00617, 0.05173, 0.06337, 0.06318, 0.00258, -0.07424, 0.11243, 0.03622, 0.01823, -0.02604, 0.04796, -0.01709, 0.01992, 0.02988, 0.17793, 0.10285, -0.00707, 0.03785, 0.18276, -0.01108, 0.01819, -0.04785, 0.01224, 0.14434, -0.09953, -0.03463, -0.06188, 0.12725, -0.15435, -0.00259, -0.08181, -0.08285, 0.04785, 0.07258, 0.04599, -0.01963, 0.12907, 0.09981, -0.01733, -0.10275, -0.02201, 0.10049, 0.0507, -0.09693, -0.28563, -0.04504, -0.04051, 0.12594, -0.03791, -0.06053, 0.0193, -0.06329, 0.00221, -0.04378, 0.04603, -0.13293, -0.14268, -0.06801, 0.08564, -0.03237, 0.01793, 0.02781, -0.06327, 0.01206, 0.10242, 0.03336, -0.04222, -0.04308, 0.00604, -0.02495, 0.05192, -0.01399, 0.05028, 0.05084, 0.0022, -0.00406, -0.10218, 0.04541, 0.00164, 0.04786, 0.06864, -0.08052, 0.02303, 0.00501, -0.04747, -0.09526, 0.10993, 0.20251, 0.09672, 0.13773, 0.01326, 0.00482, -0.0336, 0.06911, -0.01749, 0.09025, 0.01686, 0.00167, -0.0445, -0.01103, 0.00234, 0.00252, -0.00586, -0.00777, 0.0054, -0.00374, -0.08526, 0.00455, 0.01408, -0.02863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.01276, -0.10545, -0.01655, 0.07775, -0.08457, -0.05421, 0.0324, -0.01993, -0.11173, -0.02942, -0.07027, -0.01349, 0.00647, -0.01643, 0.06391, -0.00606, -0.01546, 0.02215, 0.00109, 0.07488, 0.01962, -0.02342, -0.02711, -0.02023, -0.01484, -0.02484, -0.02077, -0.0017, -0.00859, 0.03846, 0.07258, 0.00606, 0.04411, 0.07259, -0.00072, -0.00456, -0.02043, 0.03975, -0.0073, 0.01032, 0.00608, 0.01157, 0.022, -0.02989, 0.00446, 0.00267, 0.04456, 0.01787, 0.05274, 0.03258, 0.03188, -0.01673, 0.07163, -0.02907, -0.07796, -0.00441, -0.00355, 0.01822, 0.05885, -0.02783, -0.00435, 0.02937, 0.05284, -0.09541, -0.11076, 0.01196, -0.01181, 0.03637, -0.05217, -0.00868, 0.00959, -0.02055, -0.10393, -0.02014, 0.04831, -0.05459, -0.05407, -0.05652, -0.1366, 0.04267, 0.07273, -0.00177, -0.09568, 0.09702, 0.03188, -0.16493, -0.04288, -0.07213, 0.44099, -0.00236, -0.00608, -0.06804, -0.02122, -0.06616, -0.08295, -0.05232, 0.11178, 0.058, 0.01753, 0.04196, -0.19352, 0.07034, 0.07313, 0.00592, 0.19805, 0.19758, -0.0735, 0.38557, -0.05904, 0.0003, -0.1487, -0.13774, -0.08572, -0.08815, -0.11698, -0.05116, 0.09928, -0.07613, 0.00431, -0.09754, 0.10631, 0.00057, 0.00687, -0.02169, -0.00097, -0.01865, -0.0015, -0.0062, 0.00551, 0.00419, 0.00027, -0.05, 0.01979, 0.16001, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.01026, -0.02201, -0.0948, 0.05959, -0.0405, -0.03898, -0.05253, 0.06156, 0.06787, -0.06608, 0.04202, 0.03231, 0.05715, -0.08338, 0.08871, 0.02668, -0.01796, 0.01835, -0.0288, -0.00487, -0.03779, 0.04551, -0.01705, 0.08826, 0.00696, 0.03689, 0.06582, 0.07026, -0.00224, -0.07617, 0.06195, 0.0406, 0.0119, -0.06455, 0.00267, -0.01291, 0.01348, 0.03013, 0.08722, 0.04123, 0.00617, 0.02495, 0.07576, -0.01266, 0.01238, -0.02332, 0.00505, 0.05668, -0.05819, -0.02545, -0.03243, 0.06565, -0.09923, 0.00072, -0.01684, -0.04519, 0.03315, 0.02437, 0.02155, -0.00876, 0.05442, 0.06386, -0.03059, -0.02658, 0.01801, 0.04896, 0.04161, -0.07431, -0.13102, -0.03341, -0.03031, 0.09765, 0.00955, -0.03289, 0.00863, -0.00836, 0.02309, 0.00861, 0.06441, -0.11932, -0.10467, -0.06404, 0.06387, -0.02469, -0.00167, 0.02995, -0.02645, 0.04236, 0.00061, 0.0013, -0.00707, -0.0323, -0.02022, 0.0313, 0.0209, 0.01326, 0.00445, 0.00197, -0.00544, 0.00756, 0.06245, -0.02383, -0.01189, -0.00876, -0.00341, 0.02516, 0.00696, 0.01968, 0.05007, 0.06859, 0.03569, -0.08996, -0.00603, -0.06162, -0.0062, -0.03725, 0.0485, -0.05739, 0.00233, -0.02778, 0.09072, -0.02856, -0.0354, -0.00473, -0.0183, -0.0151, -0.00232, 0.00409, 0.00012, -0.00803, 0.08756, -0.00968, 0.01506, 0.18296, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00772, -0.07998, -0.03076, 0.07742, -0.05832, -0.06505, 0.04381, -0.02841, -0.10622, -0.05216, -0.0339, -0.02983, 0.03188, -0.07391, 0.05291, 0.03983, -0.02446, 0.06207, -0.01624, 0.03019, -0.12478, -0.02501, -0.04688, -0.0444, -0.02207, 0.053, 0.04591, 0.01742, 0.00676, 0.04936, -0.14694, -0.03283, 0.08759, 0.01843, -0.21537, -0.01222, 0.18795, 0.0066, -0.03847, -0.01006, 0.06739, 0.04078, -0.02626, 0.01087, 0.00399, 0.04215, -0.08335, -0.01552, -0.03738, -0.00564, -0.01777, -0.03795, -0.03803, 0.0156, 0.02374, 0.00327, -0.00472, -0.00289, -0.026, 0.00717, -0.0032, -0.01118, 0.08, 0.01268, -0.03973, 0.00543, -0.04933, 0.08194, 0.00607, 0.00882, 0.01087, -0.0189, -0.0427, -0.00825, 0.03577, -0.00825, -0.05353, -0.02341, -0.02707, 0.0159, -0.02393, 0.00352, 0.01683, -0.00457, 0.01032, -0.01223, -0.00764, -0.0196, 0.08163, 0.01474, -0.01258, -0.00367, -0.0005, -0.03439, 0.00192, -0.03066, 0.0274, 0.01237, 0.00654, 0.0153, -0.08179, 0.03208, 0.01168, 0.00297, 0.02473, 0.02985, -0.01724, 0.06421, -0.00377, 0.02257, -0.0196, -0.01877, -0.02884, -0.00966, -0.02914, -0.0127, 0.02638, -0.01815, -0.00368, -0.01049, 0.02657, 0.00285, 0.00213, -0.0082, 0.00383, -0.00265, -0.00217, -0.00163, 0.00044, -0.0016, 0.00317, -0.06025, -0.0331, -0.26988, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00277, -0.01933, -0.08557, 0.05852, -0.03233, -0.03502, -0.05175, 0.05633, 0.07242, -0.05976, 0.02463, 0.03149, 0.04794, -0.03751, 0.09375, -0.01149, -0.0277, -0.00227, -0.02036, -0.01517, -0.01978, 0.03285, 0.01182, 0.0947, 0.00906, 0.01991, 0.0659, 0.07404, -0.00717, -0.07827, 0.01827, 0.04793, 0.00545, -0.10241, -0.0388, -0.00789, 0.00312, 0.03097, -0.00352, -0.01855, 0.01638, 0.01164, -0.02771, -0.01487, 0.00773, -0.00119, -0.00018, -0.02964, -0.01705, -0.01588, -0.00298, 0.00371, -0.0452, 0.00464, 0.04555, -0.00732, 0.02023, -0.02262, -0.00148, 0.00272, -0.01711, 0.02456, -0.0436, 0.04678, 0.05833, -0.00063, 0.03332, -0.0504, 0.02066, -0.02057, -0.01972, 0.06337, 0.05584, -0.00358, 0.00019, 0.04211, 0.04226, 0.05475, 0.07776, -0.10749, -0.06452, -0.05939, 0.04154, -0.01514, -0.01905, 0.02677, 0.0011, 0.07344, -0.09153, -0.02868, 0.0286, -0.02269, -0.04938, 0.08821, -0.00496, 0.03865, -0.03989, -0.04475, -0.01148, 0.01958, 0.22462, -0.08856, -0.02526, -0.06508, -0.0716, 0.13786, -0.01386, 0.04408, 0.14291, 0.23038, -0.04472, -0.38781, -0.11015, -0.25916, -0.02748, -0.08174, 0.1318, -0.18291, 0.02118, -0.14655, 0.16388, -0.06128, -0.03308, -0.00142, -0.03737, -0.028, 0.006, 0.01836, -0.00389, -0.00962, -0.00317, -0.0048, -0.01683, -0.15364, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00426, -0.06913, -0.03715, 0.07722, -0.06689, -0.06983, 0.04872, -0.03184, -0.09955, -0.06195, -0.01798, -0.03676, 0.04338, -0.10006, 0.0529, 0.06048, -0.02809, 0.08014, -0.02758, 0.01121, -0.18724, -0.02006, -0.05619, -0.04514, -0.02496, 0.0869, 0.07424, 0.03174, 0.01329, 0.05452, -0.24054, -0.04949, 0.10478, -0.0039, -0.30383, -0.01659, 0.27864, -0.00657, -0.04885, -0.01702, 0.09555, 0.05316, -0.04284, 0.0307, 0.00454, 0.06273, -0.13813, -0.02709, -0.0662, -0.02226, -0.04084, -0.04513, -0.08095, 0.02972, 0.06481, 0.00576, -0.00462, -0.01268, -0.06492, 0.02268, -0.00744, -0.02649, 0.0926, 0.05762, -0.01045, 0.00437, -0.06423, 0.1008, 0.02324, 0.01265, 0.01086, -0.0031, -0.01819, -0.00999, 0.03198, 0.01419, -0.05455, -0.00141, 0.01933, 0.01293, -0.0679, 0.01118, 0.06603, -0.04885, -0.0059, 0.05347, 0.02285, -0.00584, -0.06948, 0.01793, -0.0151, 0.02283, 0.00951, -0.02881, 0.03109, -0.02149, -0.00765, -0.00745, 0.00198, 0.00254, -0.04197, 0.01951, -0.01432, 0.00335, -0.04698, -0.04926, 0.00647, -0.07472, 0.01743, 0.02443, 0.04314, 0.04013, 0.00092, 0.02986, 0.00985, 0.00642, -0.00739, 0.01157, -0.00701, 0.03124, -0.01683, 0.00681, -0.00559, 0.00035, 0.00696, 0.0028, -0.00337, -0.00056, -0.00011, -0.00087, -0.03281, -0.046, -0.00604, 0.01077, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00061, -0.02097, -0.07457, 0.0521, -0.03991, -0.0285, -0.05026, 0.04402, 0.07144, -0.05337, -0.00227, 0.0344, 0.04839, 0.00979, 0.08851, -0.04996, -0.03002, -0.03303, -0.02606, -0.00853, 0.02328, 0.04168, 0.03907, 0.08816, 0.00578, -0.01127, 0.04119, 0.06377, -0.00194, -0.07487, 0.01937, 0.09386, 0.01397, -0.14249, -0.01249, -0.0049, -0.02068, 0.02681, -0.06613, -0.05981, 0.03252, 0.01385, -0.10106, -0.01247, 0.01725, 0.00383, 0.01127, -0.08584, -0.02757, 0.00231, 0.01536, -0.05877, 0.00471, 0.01499, 0.06166, 0.0419, 0.00979, -0.05442, -0.03333, 0.0009, -0.07184, -0.00676, -0.02476, 0.07601, 0.04516, -0.0514, 0.01467, -0.03175, 0.15171, -0.02315, -0.01699, 0.02627, -0.00859, 0.00618, 0.02208, 0.04303, 0.02119, 0.03115, 0.06389, -0.15986, -0.1102, -0.07409, 0.03502, -0.02302, -0.01583, 0.00502, -0.04206, 0.03394, 0.03074, -0.00801, 0.0096, -0.0171, -0.01176, 0.02227, -0.00258, 0.02391, -0.00442, 0.00132, -0.00535, 0.02211, 0.06337, -0.0008, -0.00774, -0.00234, 0.01194, 0.04959, 0.00493, 0.05228, 0.01672, 0.0298, 0.0157, -0.09267, -0.0168, -0.0498, -0.00435, -0.03887, 0.04095, -0.0569, -0.00021, -0.02992, 0.07619, -0.02183, -0.05429, 0.00096, -0.00728, -0.01409, -0.00064, 0.00892, 0.00157, -0.00643, -0.07638, 0.00509, 0.01992, 0.11966, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00282, -0.07039, -0.03935, 0.07764, -0.07506, -0.06164, 0.05338, -0.0258, -0.08858, -0.05652, -0.02501, -0.03765, 0.03271, -0.08002, 0.04481, 0.04874, -0.0276, 0.06815, -0.02392, -0.00145, -0.15173, -0.01539, -0.04149, -0.02389, -0.00941, 0.05921, 0.06675, 0.02655, -0.00299, 0.02348, -0.18175, -0.0446, 0.07819, -0.00292, -0.22068, -0.01526, 0.19793, 0.00621, -0.04498, -0.01448, 0.06427, 0.00225, -0.05559, 0.00642, 0.00372, 0.04675, -0.06836, -0.0155, -0.01773, -0.00447, -0.00803, -0.01203, -0.04497, 0.01336, 0.04818, 0.00037, -0.00776, -0.00778, -0.03005, 0.00156, 0.00632, -0.00874, 0.01342, 0.03008, 0.03246, 0.00838, 0.01304, 0.00261, -0.00791, 0.00132, 0.00072, 0.01154, 0.01538, -0.00236, -0.00623, 0.01478, 0.00554, 0.02523, 0.01015, 0.01989, -0.00473, 0.01271, -0.01199, -0.0028, -0.01284, -0.01587, 0.03164, 0.01175, -0.07042, -0.00927, 0.01742, -0.05075, 0.0043, 0.01512, 0.02171, 0.00952, 0.0016, -0.02327, -0.01789, -0.01762, 0.08051, -0.02649, -0.00273, -0.00228, 0.00926, 0.00045, -0.00158, -0.03519, -0.0349, -0.07281, -0.01761, 0.04444, 0.02842, 0.02587, 0.01401, 0.01021, -0.02701, 0.02706, -0.00582, 0.01571, -0.01933, 0.01792, 0.00929, -0.002, 0.00626, 0.00134, 0.00097, 0.0049, 0.0012, 0.0055, 0.01378, -0.04644, 0.04499, 0.25101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.08884, 0.00492, -0.02727, 0.00717, -0.0491, 0.00562, 0.01781, 0.02295, 0.0356, -0.01386, 0.02203, 0.02075, 0.00319, 0.03825, -0.09665, -0.02725, 0.0586, -0.00649, -0.15401, -0.03936, 0.00457, 0.15623, 0.06829, -0.1698, 0.14473, 0.12152, -0.04084, -0.135, 0.08756, 0.07782, -0.0192, 0.07265, -0.07643, -0.06844, 0.03025, -0.08496, 0.12327, -0.08125, -0.03043, -0.00428, -0.06619, -0.01527, 0.16726, -0.10546, -0.03897, -0.06507, -0.1309, 0.10946, -0.14803, -0.03315, 0.10886, -0.17599, 0.08098, -0.16017, -0.05483, 0.11998, -0.29405, -0.10294, 0.04209, -0.3511, -0.05148, -0.00878, 0.18758, -0.06783, -0.10274, -0.04379, 0.14393, -0.03512, -0.00643, 0.06162, -0.05006, 0.1079, 0.00537, 0.01229, 0.00012, 0.06859, 0.15765, 0.01344, -0.0094, 0.01037, -0.03073, 0.02589, -0.01197, 0.02492, 0.00649, 0.00299, -0.00725, 0.00486, -0.04539, 0.04586, -0.00326, 0.01796, -0.0059, -0.01506, -0.00139, -0.02336, -0.00953, -0.0011, -0.01123, 0.02054, 0.02243, 0.00948, 0.00772, -0.00179, -0.01328, 0.03049, -0.00578, 0.0064, -0.02153, -0.01324, -0.02299, 0.00016, -0.00013, -0.00717, -0.015, -0.00391, 0.0055, -0.00246, 0.00163, 0.00378, 0.02013, -0.00355, 0.00625, -0.00579, -0.00846, -0.03512, -0.03065, 0.12117, 0.00168, -0.4372, -0.00678, -0.03264, 0.00154, 0.00095, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.02072, 0.11349, -0.09743, -0.02254, -0.03065, -0.0165, 0.13384, 0.08297, -0.00952, -0.00157, 0.0511, -0.17228, -0.00764, -0.14135, -0.02943, -0.11071, 0.08592, -0.14446, -0.03629, 0.02065, 0.00403, 0.05784, 0.14997, -0.04358, 0.31984, 0.13899, -0.04681, -0.02362, 0.11191, 0.00184, 0.05067, -0.02097, 0.02066, 0.0584, 0.05533, -0.02887, 0.09428, -0.09004, -0.04006, -0.01885, -0.11177, 0.00704, 0.00686, 0.02616, -0.02578, -0.00437, 0.01602, -0.01629, -0.09658, 0.03765, -0.05398, 0.01179, 0.00091, -0.00265, 0.02064, 0.005, 0.07672, 0.00369, 0.0004, 0.09428, -0.04176, -0.05545, -0.03078, -0.05291, 0.03333, -0.17088, -0.06345, 0.01808, -0.01714, -0.12228, 0.00446, -0.1294, -0.00237, -0.04704, 0.01029, -0.2056, -0.03748, -0.16957, -0.00217, -0.07364, 0.01253, -0.15844, -0.005, -0.00973, 0.00056, 0.00513, 0.29643, 0.05657, 0.01089, -0.25125, 0.2023, -0.01386, 0.04829, 0.04344, -0.03937, 0.09153, 0.00639, 0.12815, -0.00449, -0.00242, -0.00651, -0.06138, -0.00474, 0.00176, 0.02447, -0.0574, -0.00293, 0.03802, 0.02219, 0.0627, 0.04943, 0.00059, 0.07363, 0.00534, -0.01749, -0.00373, 0.01596, 0.01267, 0.00087, -0.04761, -0.0017, 0.0557, 0.01568, -0.02585, 0.04599, 0.01918, -0.01784, -0.00703, -0.00556, 0.05333, -0.05064, -0.40832, 0.00363, -0.00192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.08528, 0.00627, -0.00548, -0.00123, -0.04683, -0.00092, 0.00744, 0.00466, 0.03883, -0.00021, 0.00288, -0.0093, -0.00037, -0.00745, -0.09269, -0.006, 0.00499, -0.00797, -0.15656, 0.00101, 0.00032, 0.15118, 0.00845, -0.15789, 0.01785, 0.00813, -0.00271, -0.16097, 0.08606, 0.00029, 0.00279, -0.00099, -0.07771, 0.00284, 0.02509, -0.10337, 0.13204, -0.07116, -0.00186, -0.00137, -0.08571, 0.00049, 0.00108, -0.13025, -0.00192, -0.07789, 0.00041, -0.00062, -0.17823, -0.03517, -0.00197, 8e-005, 0.07562, -0.19286, 0.00086, 0.00047, 0.00281, -0.13734, 0.0837, 0.00316, -0.08834, -0.04608, -0.00056, -0.09632, 0.00144, -0.04255, -0.00253, 0.00124, -0.02036, 0.11048, -0.0004, 0.14398, -0.00091, 0.01105, 0.00044, 0.16017, -0.00142, 0.05484, -0.00031, 0.01354, 0.00017, 0.0566, -0.00046, -0.00015, 0.05, 1e-005, -0.08192, -0.02007, 0.00055, 0.04615, -0.01952, -0.00078, 0.01444, -0.051, 0.00118, -0.03318, 0.00033, -0.00053, -0.00017, -0.00015, 0.03703, 0.02786, -0.0004, 0.00032, 2e-005, 0.04639, 0.00039, -0.02775, 0.01276, 0.00107, -0.03805, -0.00015, -0.01904, 2e-005, -0.01022, 0.00056, 0.0121, -0.00689, 0.0002, -0.0014, -2e-005, -0.03352, -0.00053, 0.02748, 0.03511, 0.11117, 0.04013, -0.1945, 0.0004, 0.71202, 0.00503, 0.03708, 0.00108, -0.00248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00471, 0.11368, -0.09922, -0.02227, 0.00258, -0.01666, 0.13485, 0.08438, -0.00214, -0.00385, 0.05227, -0.16861, -0.0067, -0.13506, 0.00512, -0.10875, 0.09048, -0.14441, 0.00864, 0.01823, 0.00574, -0.00834, 0.15311, 0.00871, 0.32339, 0.1473, -0.04893, 0.00889, -0.00475, 0.00519, 0.05053, -0.01785, 0.00429, 0.05145, -0.00138, 0.0057, -0.00729, 0.00393, -0.03367, -0.02491, 0.00473, 0.0088, 0.01965, 0.00719, -0.03485, 0.0043, 0.00737, -0.01132, 0.00984, 0.00194, -0.03578, 0.00146, -0.00417, 0.01064, 0.01567, 0.00851, 0.05091, 0.00758, -0.00462, 0.05731, 0.00487, 0.00254, -0.01006, 0.00532, 0.02606, 0.00235, -0.04591, 0.02254, 0.00112, -0.0061, -0.00724, -0.00795, -0.01644, -0.00061, 0.00795, -0.00884, -0.02571, -0.00303, -0.0056, -0.00075, 0.00309, -0.00312, -0.00828, -0.00276, -0.00276, 0.00014, 0.00452, 0.00111, 0.00995, -0.00255, 0.00108, -0.01417, -0.0008, 0.00281, -7e-005, 0.00183, 0.00592, 3e-005, -0.00308, -0.00275, -0.00204, -0.00154, -0.00722, 0.00584, 0, -0.00256, 0.00704, 0.00153, -0.0007, -6e-005, 0.0021, -0.00274, 0.00105, 0.00029, 0.00056, 0.01007, -0.00067, 0.00038, 0.00364, 8e-005, -0.00038, 0.00185, -0.00963, -0.00152, -0.00194, -0.00613, -0.00221, 0.01073, 0.00734, -0.03929, 0.09115, 0.67186, -6e-005, 0.00014, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.09058, 0.0076, 0.01638, -0.0096, -0.04543, -0.00741, -0.00298, -0.01369, 0.03643, 0.01361, -0.01627, -0.03958, -0.00402, -0.05357, -0.09283, 0.0149, -0.04879, -0.00944, -0.14908, 0.04139, -0.0041, 0.14892, -0.05137, -0.16398, -0.10866, -0.10549, 0.03543, -0.13158, 0.07472, -0.07715, 0.02466, -0.07452, -0.07824, 0.07445, 0.02398, -0.08127, 0.11215, -0.07085, 0.02584, 0.00218, -0.05349, 0.01595, -0.16549, -0.1077, 0.03589, -0.06419, 0.13187, -0.11059, -0.1365, -0.03709, -0.11414, 0.17622, 0.08038, -0.1589, 0.05677, -0.1187, 0.30071, -0.10272, 0.04179, 0.35934, -0.04657, -0.00262, -0.18983, -0.0616, 0.10578, -0.02473, -0.15003, 0.0369, -0.0045, 0.0747, 0.05025, 0.12148, -0.0056, 0.01739, 0.00101, 0.09079, -0.16082, 0.03201, 0.0091, 0.01841, 0.03192, 0.04317, 0.01135, -0.02584, 0.00639, -0.00241, -0.03982, -0.0014, 0.04631, 0.07323, -0.0255, -0.01937, -0.01118, -0.01975, 0.00295, -0.03329, 0.01018, -0.0152, 0.01067, -0.02068, 0.02301, 0.01618, -0.0082, 0.00197, -0.01589, 0.03662, 0.00543, 0.00217, -0.02384, -0.02006, -0.02829, -9e-005, -0.00823, 0.00772, -0.01298, 0.00348, 0.00371, -0.00384, -0.00153, 0.009, -0.0202, -0.00966, -0.00449, -0.00291, -0.01346, -0.03701, -0.0285, 0.12121, -0.00228, -0.44041, 0.00116, -0.01249, 0.00113, 0.00115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.01082, 0.11334, -0.09984, -0.02162, 0.03586, -0.01578, 0.13499, 0.08499, 0.00555, -0.00308, 0.05321, -0.16895, -0.00724, -0.13629, 0.03989, -0.11304, 0.09184, -0.1443, 0.05301, 0.0162, 0.00451, -0.07468, 0.15657, 0.062, 0.33382, 0.15152, -0.05101, 0.03834, -0.12086, 0.01039, 0.04825, -0.01285, -0.01212, 0.05052, -0.05832, 0.03804, -0.10727, 0.09843, -0.04316, -0.01921, 0.11837, 0.00531, 0.02522, -0.01439, -0.02991, 0.0115, 0.00152, -0.00414, 0.11228, -0.03378, -0.04168, -0.00765, -0.00981, 0.02025, 0.01448, 0.01817, 0.0439, 0.00766, -0.00503, 0.05507, 0.04717, 0.05608, -0.00995, 0.06005, 0.02182, 0.17466, -0.04723, 0.0141, 0.01775, 0.11475, -0.00108, 0.11674, -0.00177, 0.0454, 0.01024, 0.19681, -0.0199, 0.16706, -0.00319, 0.07205, 0.00907, 0.15463, -0.00629, -0.00693, -0.00127, 0.00543, -0.29383, -0.05676, 0.00583, 0.24468, -0.20071, -0.0118, -0.04735, -0.04152, 0.03928, -0.08841, 0.00531, -0.12725, -0.0057, -0.00015, 0.004, 0.05996, -0.00386, 0.00155, -0.02286, 0.05369, -0.00354, -0.03849, -0.01968, -0.06086, -0.0466, 0.00061, -0.07317, 0.00452, 0.01904, -0.00414, -0.01647, -0.01232, 0.00104, 0.04691, 0.00053, -0.05497, 0.01627, 0.02633, -0.04478, -0.0152, 0.02111, -0.00634, -0.00534, -0.0049, -0.05108, -0.40944, -0.00377, 0.0018, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.12702, -0.001, 0.04484, -0.01212, -0.01078, -0.0613, -0.0165, -0.00668, 0.00814, -0.00632, 0.01439, -0.06353, -0.04922, -0.10781, -0.04795, 0.06948, -0.07817, -0.05943, -0.10315, 0.07011, -0.00664, 0.03763, 0.04096, -0.06903, -0.00538, -0.07837, -0.07003, -0.06388, -0.08544, -0.05915, 0.01955, -0.07792, -0.07176, -0.08459, -0.07717, -0.01634, -0.07316, 0.03434, 0.01429, 0.04227, 0.06036, -0.05395, -0.05623, -0.0004, 0.02666, 0.0532, 0.02984, 0.01219, 0.09084, 0.01767, 0.07642, 0.00825, -0.02447, 0.01987, 0.02668, -0.00288, -0.00943, 0.05146, -0.01519, -0.04903, 0.02436, 0.08227, -0.05522, 0.03866, 0.00834, 0.20323, -0.08285, 0.14697, 0.07023, -0.00253, -0.21103, -0.02273, 0.19144, -0.02831, -0.1456, -0.11305, 0.14844, -0.0743, -0.41682, 0.04563, -0.18366, -0.10849, 0.17736, 0.01041, 0.06455, -0.05449, -0.11091, 0.00493, -0.01699, -0.05548, 0.25002, 0.00015, 0.22714, -0.33887, -0.09725, -0.00187, 0.0425, -0.05278, 0.06274, -0.0052, 0.05382, -0.11751, -0.02767, 0.0092, -0.02939, 0.01991, 0.01076, -0.03547, 0.01729, -0.02658, 0.0523, 0.01163, 0.00249, -0.02693, -0.05654, 0.0346, -0.01612, -0.03452, -0.00203, 0.01754, -0.00954, -0.14166, -0.00414, 0.05265, 0.01799, 0.00925, -0.01353, -0.00014, 8e-005, -0.0075, 0.00109, -0.0045, -0.0006, 0.00055, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.01106, 0.15458, -0.10627, -0.05041, 0.02341, 0.02047, 0.13149, 0.07461, 0.01613, 0.04524, 0.05824, -0.08693, 0.06845, 0.00272, -0.00155, -0.09367, 0.09681, -0.00026, 0.02461, -0.03389, -0.02484, -0.02669, -0.03343, 0.02557, -0.23942, -0.06884, 0.00371, 0.00273, 0.01248, 0.00641, 0.02573, 0.09883, -0.0097, -0.02469, -0.01986, -0.00202, -0.00253, 0.01387, -0.06575, 0.0876, 0.03666, -0.08296, -0.00778, -0.01838, -0.01972, -0.01658, -0.00407, 0.01509, 0.01073, -0.00939, 0.10472, 0.04004, 0.0005, 0.02128, 0.02042, -0.13828, 0.00921, -0.00957, 0.01482, -0.07063, 0.00909, 0.00666, 0.09874, -0.00688, -0.07111, -0.03576, -0.04467, 0.02848, 0.04487, 0.01879, -0.11496, 0.06875, 0.34235, -0.02698, 0.11688, -0.02364, -0.14987, 0.04778, 0.06949, 0.03254, -0.11492, 0.01095, -0.2246, -0.00185, -0.04872, 0.02565, -0.02579, 0.09045, 0.03321, 0.01925, -0.02277, 0.0186, 0.00548, 0.00247, 0.00309, -0.02213, 0.00474, 0.05995, -0.00772, -0.00368, -0.01104, 0.07796, -0.02046, -0.00481, 0.02156, -0.00085, 0.01261, -0.13129, -0.02352, 0.08251, -0.08526, 0.00165, 0.36957, 0.02077, -0.50742, -0.0042, -0.08996, -0.03557, -0.00121, -0.14177, 0.00109, -0.00734, 0.03077, 0.01179, -0.02469, -0.01709, -0.0079, -0.00034, 0.00364, 0.00357, -0.00897, -0.05081, -0.00264, 0.00034, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.18648, 0.01232, -0.00913, -0.00379, -0.02577, 0.00531, 0.0096, 0.00533, 0.01258, 0.00505, 0.0024, -0.00672, 0.00815, 0.00211, -0.05732, -0.00693, 0.00666, -0.00348, -0.14419, 0.00151, -0.00031, 0.09262, -0.00923, -0.16003, -0.01793, 0.00411, 0.00583, -0.08922, -0.08108, 0.00867, -0.00063, 0.00629, -0.06856, 0.00925, -0.06393, -0.02833, -0.11864, -0.01485, 0.0192, -0.0075, 0.11627, 0.00432, -0.00552, -0.04594, 0.01383, 0.02647, 0.0007, -0.00694, 0.1013, 0.01547, -0.00959, -0.00122, 0.04703, -0.0297, 0.00133, 0.01481, -0.00798, -0.0789, -0.1912, 0.00081, 0.04981, 0.13636, -0.0052, 0.13275, -0.00421, 0.29775, -0.00671, -0.00851, 0.18361, -0.17821, -0.00569, 0.12384, -0.01003, -0.18088, -0.00385, -0.23161, 0.01355, -0.24953, -0.0066, 0.14481, 0.00058, -0.00612, 0.00461, 0.00047, -0.1143, -0.00168, 0.13326, 0.26095, -0.00281, 0.0783, -0.13789, -0.00182, -0.23615, 0.37922, 0.14179, 0.03378, 0.00181, -0.01138, -0.00123, 0.00136, -0.10644, 0.01049, 0.00243, 0.00023, 0.12175, -0.06343, -0.00081, 0.025, 0.01849, 0.01372, -0.05784, -0.00135, -0.0374, -0.00084, 0.00856, 0.00013, 0.00424, -0.00455, -0.00198, 0.10533, 0.00115, -0.06141, -0.00136, -0.00252, -0.0049, 0.02544, 0.01127, -0.05021, 0.00044, 0.05678, -0.0008, -0.00272, -0.00312, 0.00045, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.01029, 0.22322, -0.16539, -0.06868, 0.00142, 0.09626, 0.1739, 0.09666, -0.00069, 0.09157, 0.04353, -0.12185, 0.14765, 0.03823, 0.00316, -0.12561, 0.12073, -0.06303, 0.00796, 0.02737, -0.0056, -0.00511, -0.16726, 0.00883, -0.32495, 0.0744, 0.10567, 0.00492, 0.00447, 0.15714, -0.01138, 0.11405, 0.00378, 0.16754, 0.00353, 0.00156, 0.00655, 0.00082, 0.34801, -0.13595, -0.00642, 0.07821, -0.10011, 0.00254, 0.25061, -0.00146, 0.01264, -0.12583, -0.00559, -0.00085, -0.17373, -0.02219, -0.0026, 0.00164, 0.02403, 0.26841, -0.14468, 0.00435, 0.01055, 0.01466, -0.00275, -0.00753, -0.09415, -0.00733, -0.07631, -0.01643, -0.12167, -0.15417, -0.01013, 0.00983, -0.10311, -0.00683, -0.18173, 0.00998, -0.06983, 0.01278, 0.24558, 0.01377, -0.11953, -0.00799, 0.01043, 0.00034, 0.08355, 0.00848, 0.00631, -0.03039, -0.00735, -0.0144, -0.05099, -0.00432, 0.00761, -0.03296, 0.01303, -0.02093, -0.00782, -0.00186, 0.03276, 0.00063, -0.02223, 0.02456, 0.00587, -0.00058, 0.04403, 0.00412, -0.00672, 0.0035, -0.01463, -0.00138, -0.00102, -0.00076, 0.00319, -0.02453, 0.00206, -0.01523, -0.00047, 0.00233, -0.00023, 0.00025, -0.03581, -0.00581, 0.02087, 0.00339, -0.02468, 0.00014, 0.00027, -0.0014, -0.00062, 0.00277, 0.00792, -0.00313, -0.01453, -0.04927, 0.00017, -2e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.12746, 0.018, -0.05626, 0.0065, -0.01329, 0.06318, 0.03087, 0.01484, 0.00631, 0.01126, -0.00789, 0.05358, 0.05646, 0.10745, -0.04748, -0.07936, 0.08834, 0.05904, -0.10523, -0.07341, 0.00386, 0.04034, -0.04439, -0.07143, -0.021, 0.07032, 0.07001, -0.0638, -0.08629, 0.0595, -0.0166, 0.08832, -0.07026, 0.08136, -0.07452, -0.01602, -0.07243, 0.03261, -0.02144, -0.03237, 0.05596, 0.04449, 0.05503, 0.00163, -0.02867, 0.0547, -0.03011, -0.01045, 0.08911, 0.01859, -0.06443, -0.00379, -0.02438, 0.01741, -0.02427, -0.01235, 0.01039, 0.05221, -0.01673, 0.04096, 0.02321, 0.08103, 0.06575, 0.03919, -0.01612, 0.20593, 0.07743, -0.14295, 0.06486, -0.00458, 0.1971, -0.03016, -0.15261, -0.02517, 0.15758, -0.10976, -0.16402, -0.07911, 0.42193, 0.04177, 0.1699, -0.10903, -0.201, -0.01055, 0.06952, 0.05698, -0.1074, -0.00505, 0.02054, -0.05726, 0.25101, 0.0019, 0.22516, -0.33708, -0.097, 0.00057, -0.04172, -0.05906, -0.06321, 0.00477, 0.05471, -0.12538, 0.02525, -0.00968, -0.03159, 0.01988, -0.0093, -0.02081, 0.01977, -0.0355, 0.06136, -0.01138, -0.03819, 0.02905, -0.00036, -0.03485, -0.00612, -0.0304, 0.00188, 0.03303, 0.0096, -0.13999, 0.0075, 0.05103, 0.02059, 0.01107, -0.01258, -0.00011, 0.00032, -0.00784, -0.00207, -0.00112, -0.00031, 0.00051, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00298, 0.15353, -0.10069, -0.05144, -0.02208, 0.0136, 0.12888, 0.07342, -0.01693, 0.04427, 0.05947, -0.09339, 0.06262, -0.00916, 0.00682, -0.08546, 0.08762, -0.0068, -0.01311, -0.02597, -0.02542, 0.02239, -0.02872, -0.01782, -0.23856, -0.07705, -0.00402, 0.00431, -0.003, -0.00014, 0.02772, 0.08965, 0.01754, -0.03385, 0.02823, 0.0038, 0.01056, -0.01756, -0.06378, 0.09172, -0.04308, -0.08839, -0.01392, 0.01831, -0.01667, 0.01062, -0.00076, 0.01634, -0.02066, 0.00739, 0.11249, 0.0407, 0.0022, -0.02334, 0.02324, -0.13775, 0.00811, 0.00385, -0.01306, -0.0756, -0.01172, -0.01568, 0.09207, 0.00258, -0.06976, 0.01318, -0.05351, 0.04448, -0.05232, -0.0184, -0.13748, -0.06583, 0.36134, 0.02993, 0.10015, 0.03594, -0.13263, -0.03931, 0.0232, -0.03736, -0.13443, 0.00106, -0.20372, -0.00069, 0.04132, 0.0195, 0.03783, -0.09045, 0.03114, -0.01303, -0.00488, 0.0185, -0.03044, 0.03483, 0.00763, 0.0222, 0.00939, -0.05378, -0.00077, -0.00423, 0.00505, -0.06455, -0.02338, -0.00377, -0.0182, -0.00135, 0.01372, 0.1344, 0.02147, -0.07908, 0.07899, 0.00292, -0.3676, 0.01768, 0.51056, -0.00037, 0.09119, 0.03915, -0.00143, 0.13898, 3e-005, 0.02288, 0.03012, -0.01751, 0.02256, 0.01597, 0.00934, 0.00035, 0.00362, -0.00272, -0.0088, -0.051, 0.00269, -0.00039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.06232, -0.02937, -0.07216, 0.05087, -0.01809, 0.04935, 0.00634, 0.02953, 0.00669, -0.03782, 0.07985, 0.08888, 0.0123, 0.25566, -0.06501, -0.04054, 0.09339, 0.25589, -0.11552, -0.16639, 0.09302, 0.05998, -0.04505, -0.07059, 0.12441, 0.03344, 0.15046, 0.04191, -0.11289, -0.01471, -0.09236, 0.02063, -0.12184, 0.05933, -0.04189, 0.01319, -0.03759, -0.115, -0.11033, -0.04558, 0.04203, 0.00133, 0.17262, -0.0806, -0.10535, 0.13201, 0.01951, 0.04888, -0.02101, 0.02828, -0.13288, -0.02868, -0.03274, 0.08905, -0.06031, 0.10665, -0.02391, 0.13827, -0.00411, 0.08844, 0.09472, -0.00305, -0.16905, 0.02371, 0.10755, -0.01134, -0.1661, 0.03528, -0.04113, 0.06606, -0.0786, -0.10983, 0.10416, 0.28149, 0.03559, -0.1362, 0.00341, 0.41315, -0.16603, -0.03474, -0.0759, -0.02759, -0.07136, -0.08275, -0.05092, -0.01199, 0.09044, 0.02096, 0.04473, -0.01969, 0.00735, 0.00263, -0.02699, 0.09171, -0.04886, 0.04118, 0.02001, 0.08622, 0.0052, -0.02324, -0.12649, 0.04986, 0.03747, -0.02445, 0.0242, 0.03057, 0.01622, 0.00487, -0.02155, 0.03341, -0.00735, 0.019, -0.02194, -0.01072, 0.00655, 0.02501, -0.01063, 0.01233, -0.00593, 0.01774, 0.04039, -0.02366, 0.00665, -0.00319, 0.02514, 0.00458, -0.00613, -0.00104, -0.00453, 0.0132, 0.00248, 0.00016, 0.00057, -0.00059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -5e-005, 0.07516, -0.07366, -0.02867, -0.01881, -0.13213, 0.04498, 0.16855, -0.02367, -0.01988, 0.26481, -0.14272, -0.16273, 0.15525, 0.03221, 0.09214, -0.05197, 0.27864, 0.00036, 0.05517, 0.15393, -0.02709, 0.01789, 0.02483, 0.0779, -0.1357, -0.04309, 0.1816, -0.28783, -0.07019, -0.08267, -0.12071, -0.07029, -0.05299, -0.00551, 0.23722, -0.04308, -0.46193, 0.03943, 0.06917, 0.04002, 0.0916, -0.1532, -0.07317, 0.1304, 0.00458, 0.11235, 0.01998, -0.12717, 0.08418, -0.00901, -0.01412, -0.02423, -0.04235, 0.0084, -0.07186, -0.00891, 0.02438, 0.01674, -0.06924, -0.06713, -0.10234, 0.0841, -0.04046, -0.08393, -0.06466, 0.05559, -0.0208, -0.00796, -0.02504, 0.01885, 0.07576, -0.08136, -0.07177, 0.00461, -0.00496, -0.00194, -0.13518, 0.05482, 0.05306, 0.03017, 0.02305, 0.05343, 0.0166, -0.02825, -0.00408, -0.02492, -0.01926, -0.01611, 0.04651, -0.00369, 0.04115, 0.02351, -0.04738, 0.033, -0.01771, -0.02937, -0.04253, 0.01144, -0.00145, 0.03568, -0.02444, 0.01567, -0.00395, -0.00878, 0.01724, -0.01611, -0.00176, 0.00016, -0.02712, -0.01978, 0.0081, -0.00692, -0.01008, -0.01989, 0.00387, -0.00845, -0.01136, -0.00587, -0.00649, 0.00149, -0.00648, -0.02113, 0.01183, -0.01916, -0.00335, 0.00836, 0.00342, -0.00138, 0.00066, -0.00892, -0.05247, 0.0005, -0.00022, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.08186, -0.01067, -0.05717, 0.02559, -0.0071, 0.09332, 0.04832, -0.02596, -0.00453, -0.01395, -0.06871, 0.13247, 0.07073, 0.07861, -0.05711, -0.14145, 0.17964, 0.07302, -0.12076, -0.1631, -0.04276, 0.05813, -0.03688, -0.05379, 0.06869, 0.08916, 0.11951, -0.09289, -0.09411, 0.00097, -0.01415, 0.09609, -0.09338, 0.03718, -0.02272, -0.03146, -0.04812, 0.10023, -0.09807, 0.15556, 0.09131, -0.10897, -0.09334, -0.06495, 0.05975, 0.23943, 0.15532, -0.01184, 0.17162, 0.06693, 0.14939, 0.04117, -0.18566, 0.07435, 0.02419, -0.18499, 0.15171, 0.08844, 0.1243, 0.05803, -0.1505, -0.08275, 0.16773, 0.00698, -0.1748, -0.15044, 0.03745, 0.0149, -0.10682, -0.06049, 0.00437, -0.09278, -0.07486, -0.04541, -0.08172, 0.11359, 0.11243, -0.1826, -0.07834, -0.12349, 0.07361, 0.10927, 0.22865, 0.0442, 0.10187, -0.02004, 0.0108, -0.18796, -0.04692, -0.07329, -0.12604, 0.00449, -0.11376, 0.03425, 0.01835, -0.04508, 0.00756, 0.01528, 0.02429, 0.02095, 0.05317, -0.01271, -0.03903, 0.02876, -0.00919, -0.05043, -0.00583, -0.03345, -0.02264, 0.01795, -0.0251, -0.0022, 0.03653, -0.00234, -0.04024, -0.00275, -0.00045, -0.01613, 0.00377, -0.00997, -0.02646, 0.00943, -0.00869, -0.00301, 0.00914, -0.00824, -0.00545, -0.00873, 0.00245, -0.01847, 0.0009, -0.00341, -0.0011, 0.00081, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00091, 0.08683, -0.043, -0.04584, -0.02959, -0.0696, 0.04515, 0.01298, -0.02271, -0.01751, 0.08716, -0.08273, -0.00142, -0.03833, 0.02055, -0.0384, 0.0151, 0.03192, -0.01322, -0.0517, -0.06606, 0.0152, 0.05249, -0.00256, -0.21049, -0.20495, -0.0937, 0.03569, -0.05461, -0.05344, 0.05717, -0.01923, 0.055, -0.10976, 0.02796, 0.01536, -0.00167, -0.06894, -0.23786, -0.10658, -0.07146, -0.08819, 0.2144, 0.04446, -0.22713, -0.06077, -0.1422, 0.05621, -0.08303, 0.01099, -0.03649, -0.04742, 0.11624, -0.08587, -0.04826, -0.00559, 0.09364, -0.09253, -0.11809, 0.12362, 0.15969, 0.03423, 0.03034, 0.07331, -0.03569, 0.23349, -0.01441, -0.11848, 0.04123, -0.12849, 0.00549, -0.09131, -0.19896, 0.14959, -0.06569, 0.04781, 0.1253, -0.00642, -0.03343, -0.04597, 0.07692, -0.06208, 0.10115, 0.0391, 0.22545, 0.01624, 0.05017, -0.3139, -0.03287, -0.15441, -0.11964, -0.00515, -0.1853, -0.06118, -0.00699, -0.08521, 0.03114, 0.08208, -0.00099, 0.0024, 0.11881, 0.00589, -0.03093, 0.02311, 0.03004, -0.04494, -0.00513, -0.06516, -0.0148, 0.04918, -0.05399, -0.01314, 0.06173, -0.00647, -0.0567, -0.00176, -0.01595, -0.02814, 0.00186, 0.02199, -0.01639, -0.0184, -0.01445, 0.00855, 0.00749, 0.00517, -0.01235, -0.00992, -0.00307, -0.00594, -0.00339, -0.05198, 0.00109, 0.00068, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.13268, 0.0083, -0.00585, -0.00328, 0.00542, 0.00096, 0.00664, 0.00423, -0.03185, 0.00214, 0.0039, -0.00179, 0.00148, 3e-005, -0.03636, -0.00179, 0.00218, 0.00079, -0.09144, -0.00152, -0.00126, -0.00649, -0.00554, -0.05959, -0.00758, 0.00228, 0.00381, -0.04928, -0.0466, 0.0006, 0.00154, 0.00394, -0.07799, -0.00562, -0.05574, 0.01021, -0.06026, -0.02088, 0.00401, 0.00553, 0.0954, -0.00337, 0.00219, 0.05953, -0.0046, -0.06617, 0.00073, 0.0049, 0.02468, 0.01629, 0.0161, -0.00018, 0.03189, 0.01378, -0.0012, 0.00654, -0.00567, 0.02915, -0.06698, -0.00295, 0.12438, 0.05202, -0.01129, -0.02835, 0.02068, 0.09176, 0.01422, 0.01988, 0.0725, -0.0048, 0.02365, 0.02747, -0.00302, -0.01755, -0.00297, -0.00874, -0.0099, -0.00754, -0.00413, -0.03881, 0.00373, -0.00164, 0.0131, -0.00557, -0.0117, -0.00427, -0.04173, -0.0268, 0.00466, 0.01152, -0.0638, 0.00014, 0.08369, -0.09416, 0.01407, 0.04769, -0.00261, -0.03363, 0.00427, 0.00018, 0.05443, 0.08947, 0.00172, -0.00468, -0.15781, -0.00744, 0.00182, 0.13745, 0.05805, 0.06461, 0.07714, 0.00232, 0.17365, -0.00244, 0.15987, -0.00056, 0.0386, 0.10966, 0.00267, -0.31645, -0.0004, 0.7302, -0.00107, -0.16919, -0.11079, -0.17509, 0.05046, 0.03331, -0.00077, 0.05876, -2e-005, -0.00288, -0.00515, -0.0007, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00732, 0.15046, -0.10602, -0.05946, -0.0003, 0.01733, 0.12035, 0.0767, 0.00176, 0.03883, 0.07065, -0.03243, 0.02675, 0.0005, 0.00201, -0.03241, 0.0395, 0.01425, 0.00505, -0.02746, -0.02285, 0.00036, -0.10031, 0.00329, -0.13732, 0.04134, 0.06914, 0.00272, 0.00257, 0.01095, 0.02783, 0.07144, 0.0043, -0.10182, 0.00308, -0.00056, 0.00333, 0.00115, 0.07261, 0.1002, -0.00526, -0.06098, 0.03965, -0.00329, -0.08344, 0.00365, 0.0133, 0.08886, -0.00136, -0.0009, 0.29169, -0.00329, -0.00176, -0.00076, -0.02167, 0.11856, -0.10284, -0.00161, 0.0037, -0.05342, -0.00686, -0.00287, -0.20461, 0.00156, 0.37477, -0.00506, 0.25766, 0.36032, -0.004, 0.00026, 0.4286, -0.00152, -0.05466, 0.00097, -0.05383, 0.00048, -0.17947, 0.00042, -0.07481, 0.00214, 0.06758, 9e-005, 0.23742, -0.10091, 0.00065, -0.07734, 0.0023, 0.00148, 0.08449, -0.00064, 0.00352, 0.00259, -0.00462, 0.0052, -0.00078, -0.00263, -0.04729, 0.00186, 0.07744, 0.00321, -0.003, -0.00494, 0.03113, -0.08479, 0.00871, 0.00041, 0.03291, -0.00758, -0.0032, -0.00357, -0.00426, 0.04196, -0.00958, -0.04414, -0.00882, -0.0102, -0.00213, -0.00605, 0.04838, 0.01746, -0.00728, -0.0403, -0.0194, 0.00934, 0.00611, 0.00966, -0.00278, -0.00184, -0.01387, -0.00324, -0.00035, -0.05216, 0.00028, 4e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.08146, 0.02016, 0.05209, -0.03047, -0.0038, -0.10041, -0.04306, 0.02723, -0.002, 0.01194, 0.07788, -0.14077, -0.07045, -0.08235, -0.05902, 0.13637, -0.17688, -0.06906, -0.11858, 0.15643, 0.03524, 0.0561, 0.04243, -0.05318, -0.09143, -0.11117, -0.12911, -0.09625, -0.08753, -0.00684, 0.02036, -0.09763, -0.09886, -0.04903, -0.02566, -0.03296, -0.04765, 0.1072, 0.0713, -0.16635, 0.09862, 0.0986, 0.11637, -0.06945, -0.08438, 0.24467, -0.17002, 0.01796, 0.17972, 0.06532, -0.1525, -0.04614, -0.19732, 0.08334, -0.02936, 0.18325, -0.14048, 0.09809, 0.13654, -0.04407, -0.16716, -0.08601, -0.16338, -0.00113, 0.16981, -0.17522, -0.03881, -0.02785, -0.11071, -0.04599, -0.00373, -0.08217, 0.05252, -0.0616, 0.074, 0.10764, -0.09796, -0.18079, 0.07418, -0.11768, -0.0647, 0.11543, -0.21613, -0.03963, 0.07645, 0.0217, 0.00522, -0.15228, 0.04301, -0.05586, -0.11211, -0.00503, -0.09268, 0.04078, 0.01901, -0.03543, -0.00409, 0.00616, -0.02425, -0.02056, 0.03978, -0.01329, 0.03539, -0.02604, -0.01244, -0.04518, 0.00523, -0.02608, -0.02087, 0.01243, -0.01901, 0.00074, 0.02951, 0.00161, -0.03375, 0.00254, 0.00131, -0.01294, -0.00355, -0.01233, 0.0245, 0.0114, 0.00705, -0.00394, 0.00826, -0.00876, -0.00406, -0.00759, -0.00278, -0.0177, -0.00126, -0.00233, -0.00121, 0.00073, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.0081, 0.08513, -0.04903, -0.04275, 0.03019, -0.05891, 0.05019, 0.01004, 0.02307, -0.01894, 0.07907, -0.06765, 0.00638, -0.02945, -0.01414, -0.05373, 0.03477, 0.03976, 0.02643, -0.06933, -0.07037, -0.0215, 0.04811, 0.00846, -0.20165, -0.1939, -0.07999, -0.02524, 0.06464, -0.05301, 0.05526, -0.00854, -0.04439, -0.105, -0.02529, -0.0118, 0.00696, 0.05749, -0.2472, -0.08882, 0.06098, -0.09964, 0.20283, -0.03705, -0.21917, 0.03406, -0.12425, 0.05457, 0.06364, -0.01829, -0.01983, -0.0426, -0.0951, 0.07717, -0.04531, -0.02591, 0.10976, 0.08224, 0.1037, 0.12925, -0.14216, -0.02492, 0.04861, -0.07364, -0.05471, -0.21551, -0.0102, -0.11612, -0.02923, 0.13437, 0.00593, 0.10097, -0.20599, -0.14368, -0.07429, -0.06002, 0.13691, 0.02647, -0.04185, 0.05928, 0.08455, 0.04968, 0.1257, 0.04373, -0.23529, 0.01394, -0.05105, 0.33267, -0.03783, 0.16153, 0.13279, -0.00463, 0.1967, 0.05704, 0.00493, 0.08966, 0.03178, -0.08326, 0.00169, 0.00469, -0.12394, -0.00446, -0.03504, 0.02613, -0.02884, 0.05022, -0.00574, 0.06844, 0.0172, -0.05085, 0.05642, -0.01331, -0.06538, -0.00669, 0.06078, -0.00205, 0.0159, 0.02974, 0.00227, -0.02076, -0.0192, 0.01726, -0.01532, -0.00816, -0.00845, -0.00423, 0.01288, 0.01083, -0.00278, 0.00794, -0.00327, -0.05204, -0.00096, -0.00076, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.06193, 0.03746, 0.06361, -0.05372, -0.01591, -0.06359, -0.00135, -0.01081, 0.00925, 0.03541, -0.05023, -0.10405, -0.03013, -0.23702, -0.06816, 0.05044, -0.09855, -0.22368, -0.11486, 0.17145, -0.07552, 0.06259, 0.04675, -0.07289, -0.11509, -0.04817, -0.15429, 0.02168, -0.08053, 0.0069, 0.0827, -0.03379, -0.11337, -0.0648, -0.04103, -0.01299, -0.03262, -0.06347, 0.114, 0.05291, 0.03737, 0.00876, -0.18843, -0.07206, 0.11906, 0.1307, -0.00703, -0.04638, -0.00689, 0.01884, 0.13108, 0.02695, -0.02987, 0.09317, 0.06087, -0.11391, 0.02278, 0.13474, -0.00593, -0.09553, 0.10153, 0.00823, 0.17728, 0.02802, -0.11613, -0.00415, 0.17121, -0.03735, -0.04, 0.06841, 0.0802, -0.11749, -0.11248, 0.28768, -0.03486, -0.13483, -0.0036, 0.42551, 0.17105, -0.04036, 0.07876, -0.02996, 0.0768, 0.08407, -0.04751, 0.01147, 0.09264, 0.02295, -0.04623, -0.02469, 0.00771, 0.00192, -0.02941, 0.09636, -0.05219, 0.04288, -0.02312, 0.09037, -0.00391, 0.02294, -0.12965, 0.05224, -0.03552, 0.02387, 0.02502, 0.02849, -0.0179, 0.00504, -0.02143, 0.03619, -0.00512, -0.01799, -0.02105, 0.00955, 0.0087, -0.02444, -0.00964, 0.0135, 0.00525, 0.01835, -0.03998, -0.0228, -0.00893, -0.00447, 0.0271, 0.00492, -0.00701, -0.00141, 0.00435, 0.01305, -0.00345, -0.00593, 0.00052, -0.00056, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00691, 0.07147, -0.08116, -0.0229, 0.02069, -0.1259, 0.04541, 0.17078, 0.02279, -0.02392, 0.27199, -0.13207, -0.16039, 0.18244, -0.02486, 0.08712, -0.04138, 0.3051, 0.01236, 0.03652, 0.16323, 0.02032, 0.01282, -0.01691, 0.09111, -0.1312, -0.02629, -0.18511, 0.29851, -0.07138, -0.09233, -0.11771, 0.08327, -0.04614, 0.01008, -0.23723, 0.04696, 0.47178, 0.02705, 0.06374, -0.04441, 0.09119, -0.13328, 0.08159, 0.11801, -0.01907, 0.11382, 0.02524, 0.1287, -0.08678, -0.02358, -0.01719, 0.02769, 0.0323, 0.00171, -0.05969, -0.01149, -0.03944, -0.01618, -0.05909, 0.0563, 0.10206, 0.06498, 0.0376, -0.07159, 0.06552, 0.03698, -0.01679, 0.01244, 0.01762, 0.01008, -0.06321, -0.06941, 0.04037, 0.0085, 0.01992, -0.00156, 0.0889, 0.03622, -0.04891, 0.02164, -0.01987, 0.04525, 0.0074, 0.03368, -0.00538, 0.01481, 0.01683, -0.01109, -0.04406, 0.00286, 0.04119, -0.0204, 0.037, -0.02743, 0.01307, -0.02699, 0.03278, 0.01195, -0.00399, -0.02155, 0.01881, 0.0197, -0.00662, 0.00607, -0.0205, -0.01423, 0.00121, 0.00221, 0.02328, 0.02047, 0.01014, 0.00929, -0.0112, 0.01905, 0.0066, 0.00957, 0.00993, -0.00649, 0.0045, 0.00593, 0.00904, -0.02027, -0.0114, 0.01628, 0.00283, -0.00764, -0.00329, -0.00187, -0.00211, -0.00859, -0.05213, -0.00056, 0.00028, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.0082, 0.02374, 0.1254, -0.0066, 0.05481, -0.13036, -0.17119, -0.16424, -0.08456, -0.06317, 0.07537, -0.24635, 0.13291, 0.02957, -0.02026, -0.06673, 0.05445, -0.09414, 0.00934, -0.01166, 0.06388, -0.10888, -0.12276, 0.08739, 0.00195, 0.02667, 0.06141, 0.03579, -0.00955, 0.06463, -0.05566, 0.0889, 0.07382, -0.05477, 0.05735, 0.01322, 0.02083, 0.0386, -0.0402, -0.04647, -0.07021, -0.00549, 0.05333, -0.1155, 0.11635, 0.36456, 0.12668, 0.09693, -0.0984, -0.16617, -0.04164, -0.1391, 0.17685, -0.01282, -0.06881, -0.21142, -0.13979, 0.11468, -0.01481, 0.06802, 0.13259, -0.04731, 0.04446, -0.0659, 0.17871, 0.00341, 0.00822, 0.00791, 0.05385, -0.03698, -0.12727, 0.10357, -0.01833, -0.01176, -0.03307, 0.13246, -0.05812, -0.05059, 0.03598, 0.02972, 0.09545, -0.0274, 0.05324, 0.00678, 0.09306, 0.01506, 0.04832, 0.13788, 0.00722, 0.0057, 0.14111, -0.00316, -0.108, -0.02641, 0.01675, -0.0925, 0.0139, 0.01476, 0.08233, -0.11725, 0.00345, 0.11747, 0.0519, 0.13859, -0.12352, -0.07018, 0.02315, 0.11277, 0.07499, -0.04174, -0.03261, -0.04462, 0.05028, 0.01591, 0.05648, 0.07956, -0.08109, 0.00045, -0.00872, -0.03201, 0.04959, -0.04464, 0.00022, 0.00597, 0.01372, -0.00459, 0.00629, 0.01585, 0.00412, -0.00339, -0.00121, -0.00429, -0.00443, -0.00017, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00259, -0.00148, 0.10647, -0.02683, 0.05051, -0.13993, -0.12852, -0.07585, 0.03203, -0.07861, 0.07302, 0.05477, -0.05621, -0.00979, 0.01384, -0.08602, 0.05725, 0.0843, 0.0854, -0.08525, -0.10257, -0.08279, 0.1854, 0.07182, -0.02803, 0.00293, -0.24945, -0.03477, 0.12063, -0.04409, -0.09978, 0.27959, -0.05148, 0.12668, -0.1014, -0.07148, -0.08096, -0.05368, 0.10534, 0.05512, 0.16096, -0.00222, -0.00716, -0.17327, 0.06673, -0.02443, 0.00372, -0.0435, -0.0435, -0.08122, 0.02784, 0.07283, 0.04323, -0.02323, -0.07517, 0.04757, -0.07542, 0.04673, 0.00875, 0.16289, 0.01933, -0.07816, -0.01834, -0.01192, -0.05935, 0.08734, 0.04986, 0.03001, 0.04966, 0.08284, 0.12569, 0.11122, -0.03307, -0.07401, -0.03132, -0.122, 0.04184, 0.00823, -0.05379, -0.09093, -0.1594, 0.07948, -0.12679, 0.01053, 0.10377, 0.00411, 0.06756, -0.25422, -0.01754, -0.03512, 0.08493, -0.0102, 0.27773, 0.276, 0.05138, -0.15095, -0.08489, 0.05951, 0.04946, -0.14458, 0.0054, -0.00767, -0.06532, 0.00579, -0.04977, -0.02631, 0.00971, 0.02599, -0.05068, -0.04623, 0.01731, 0.00375, -0.03953, -0.0346, -0.0303, -0.03177, 0.04904, -0.05383, -0.00067, -0.0026, 0.01461, 0.00478, 0.0086, 0.04682, -0.02029, 0.00379, -0.00255, 0.01753, 0.01995, 0.00051, -0.00564, -0.05048, -0.00422, 0.00115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.08318, 0.03061, 0.04586, -0.02354, 0.03815, -0.08199, -0.07334, -0.08536, -0.07797, -0.00851, 0.02515, -0.10263, 0.08371, 0.01919, -0.01831, -0.01578, 0.00365, -0.03937, -0.04332, -6e-005, 0.07155, -0.07982, -0.10676, 0.03165, 0.02585, 0.01374, 0.08847, -0.02995, -0.00622, 0.04253, 0.05896, -0.06476, 0.01968, 0.00479, 0.01999, 0.06633, 0.01057, 0.0531, -0.04558, -0.00551, 0.01177, -0.03541, -0.04981, 0.11269, -0.02666, 0.05012, -0.03761, -0.06419, -0.08097, -0.10013, -0.15605, -0.02972, 0.11592, -0.01443, -0.12041, 0.04172, 0.03049, 0.01124, -0.09268, 0.08137, 0.05411, -0.10131, 0.00878, -0.09663, -0.13638, -0.08735, 0.23547, 0.05083, -0.02216, -0.11823, -0.01254, -0.02915, 0.07789, -0.10615, 0.17878, -0.04859, 0.08568, 0.04279, -0.01154, 0.01686, -0.03273, 0.01484, 0.0578, -0.01745, -0.17704, -0.07988, -0.15809, -0.03205, 0.03607, -0.03384, -0.01024, -0.02997, -0.07633, 0.04768, -0.10488, -0.20195, -0.06827, 0.0983, 0.06333, -0.02991, 0.00121, -0.23363, -0.22042, -0.39026, 0.09912, 0.17541, 0.01214, -0.16272, -0.151, 0.05072, 0.18645, 0.06559, -0.08843, 0.01779, -0.03648, -0.08255, 0.02383, 0.0286, -0.01142, 0.00974, -0.03402, 0.07086, 0.03083, -0.0164, -0.05548, 0.03367, -0.03506, -0.03698, -0.02779, -0.00989, 0.00327, 0.00042, -0.00082, 0.00112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00406, 0.12062, 0.0091, -0.13483, 0.02814, -0.14487, -0.03945, -0.06821, 0.02585, 0.00569, -0.03923, 0.17712, -0.01819, -0.04128, 0.00094, -0.01026, -0.10643, 0.00964, 0.04673, 0.06508, 0.02062, -0.0479, -0.02393, 0.03245, 0.06012, 0.00461, -0.02613, 0.00173, 0.11814, 0.00237, -0.03856, 0.04758, -0.02092, -0.03609, -0.05802, -0.07078, -0.05034, -0.00972, -0.02498, -0.00832, 0.06604, 0.00712, 0.03063, -0.06309, 0.04435, 0.00319, -0.00387, 0.0348, -0.04289, 0.00301, 0.05802, 0.05007, -0.00881, 0.05881, 0.00482, 0.04768, -0.0885, 0.03271, 0.02628, 0.07065, -0.02966, -0.01263, 0.00046, -0.01537, -0.05659, -0.05377, -0.18809, -0.15426, 0.0244, 0.15774, 0.11589, 0.13039, 0.23191, 0.05451, 0.22965, -0.25986, 0.08872, -0.1135, 0.05682, 0.05098, 0.16894, -0.10655, 0.19724, -0.06477, 0.00444, -0.09198, 0.08323, -0.05376, 0.00967, 0.03301, -0.14286, -0.1065, -0.25408, -0.15122, -0.13607, 0.1031, -0.01374, 0.03186, 0.14446, 0.11411, 0.13033, 0.10779, 0.12588, 0.02489, -0.20719, 0.17742, 0.04631, -0.00625, -0.12394, -0.0872, 0.09719, 0.01268, -0.06656, 0.00377, -0.03549, 0.04492, -0.032, 0.00143, -0.0158, 0.07284, -0.00207, -0.01622, 0.00284, -0.01904, -0.09734, -0.00683, -0.00145, -0.00617, -0.00694, 0.02279, -0.00771, -0.04405, 0.00052, 0.00036, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.11232, 0.01074, 0.0088, -0.00302, 0.01673, -0.01792, -0.01409, -0.00937, -0.07588, 0.00306, 0.01468, -0.04112, 0.01937, 0.02271, -0.02783, 0.00299, -0.00343, -0.01666, -0.08862, -0.00654, 0.03185, -0.07132, -0.03248, -0.0101, -0.00729, 0.01961, 0.04222, -0.02409, 0.04939, 0.00814, 0.04156, -0.05374, -0.02674, 0.03329, -0.04665, 0.04816, -0.02723, 0.01416, -0.01398, 0.04132, 0.05499, -0.00496, -0.06925, 0.19596, -0.07887, -0.15203, -0.07887, -0.05046, -0.01584, 0.04404, -0.11112, -0.00114, 0.07581, 0.04574, -0.09596, 0.0818, 0.08648, 0.03315, -0.11096, 0.10936, 0.13416, -0.07451, -0.03232, -0.1519, -0.12597, -0.14826, 0.31133, 0.13772, -0.02338, -0.07138, 0.03902, -0.02384, 0.10825, -0.0688, 0.13616, 0.02691, 0.11113, 0.02622, -0.03853, -0.03081, -0.05483, 0.00593, -0.00877, 0.01958, -0.06855, 0.02678, 0.03146, -0.05873, -0.05924, -0.00885, -0.09822, 0.03064, 0.08902, 0.00316, 0.00612, 0.0921, -0.02671, -0.02849, -0.07999, 0.05752, 0.07691, 0.12688, 0.27304, 0.36928, -0.0611, -0.0844, 0.01451, 0.07525, 0.03929, -0.04872, -0.07275, -0.05351, -0.00918, 0.01047, -0.0099, 0.05601, -0.01222, -0.03366, 0.00819, 0.06756, 0.04079, -0.22232, -0.00936, 0.06061, 0.02271, -0.33126, 0.13014, -0.01976, -0.00045, 0.02271, 0.00037, -0.00294, 0.00414, -0.00046, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00422, 0.16692, -0.03489, -0.17061, 0.0095, -0.11567, 0.02054, -0.03807, 0.00657, 0.0361, -0.05888, 0.2114, -0.00535, 0.00679, 0.00925, 0.00541, -0.16179, -0.00597, 0.02745, 0.10083, 0.10118, -0.02358, -0.10683, 0.01838, 0.06855, 0.04875, 0.10399, -0.00111, 0.0044, 0.08248, -0.04672, 0.02076, -0.01204, -0.03271, -0.01101, 0.00325, -0.01732, -0.00338, -0.01839, -0.01679, 0.02193, 0.07551, 0.03529, -0.02185, -0.0064, -0.01221, 0.0095, 0.08399, 0.00566, -0.0134, 0.08013, -0.00353, -0.01066, -0.01052, 0.00389, 0.02126, 0.01603, 0.00146, 0.00155, 0.09459, -0.00355, -0.00194, -0.02372, -0.0054, 0.00947, 0.00219, 0.0699, 0.03255, 0.01052, 0.04672, -0.08553, 0.05864, -0.05128, 0.00118, -0.03946, -0.03835, -0.02387, -0.00133, -0.0276, 0.02218, -0.02536, 0.00303, -0.0805, 0.09138, 0.02405, 0.00822, -0.01478, 0.00599, 0.00346, 0.03638, -0.01043, 0.05459, -0.07993, -0.01847, -0.00108, -0.0152, 0.03551, 0.01764, -0.20785, -0.04184, 0.01699, -0.0661, -0.35349, 0.18648, 0.0046, 0.01675, -0.03718, -0.02154, -0.01017, -0.00951, 0.06834, -0.01221, -0.01882, -0.01854, -0.02845, -0.02193, 0.00652, -0.09364, -0.00802, -0.01634, 0.0055, 0.09268, 0.00054, -0.04077, 0.65741, -0.09867, 0.07482, 0.00281, 0.00463, -0.01459, -0.00545, -0.0544, -0.00385, 0.0002, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.12139, 0.00952, -0.0014, -0.00969, 0.02451, -0.00508, 0.0017, -0.00365, -0.07394, 0.00291, -0.00576, 0.01232, 0.00122, -0.00247, -0.0153, -0.00243, -0.00683, -0.00167, -0.05989, 0.00413, 0.00312, -0.09766, -0.00395, 0.01827, 0.00367, 0.00035, 0.00419, 0.0037, -0.00108, 0.0034, -0.00187, -0.00048, -0.03402, -0.00222, -0.08015, 0.04175, -0.08109, 0.02669, -0.00426, -0.00045, 0.10517, 0.00339, -0.00328, 0.16453, -0.00288, -0.16858, 0.00087, 0.00678, 0.01567, 0.07806, 0.00432, 0.00422, 0.05907, 0.06327, -0.00193, -0.00231, 0.00208, 0.01036, -0.09737, 0.00464, 0.14929, -0.0322, 0.00225, -0.12308, -0.00188, -0.13318, 0.00578, 0.00112, -0.02408, -0.01851, -0.01082, 0.05011, -0.01091, -0.04871, -0.0125, 0.07267, -0.00085, 0.00917, 0.00126, -0.0432, -0.00936, -0.00153, -0.00967, -0.00389, 0.01711, 0.00451, 0.05866, -0.02947, -0.00351, 0.01806, -0.06314, 0.0053, 0.04623, -0.01087, 0.01144, 0.1211, 0.00126, -0.06339, 0.00639, -0.00823, 0.05535, 0.1423, 0.03187, -0.02065, -0.07353, -0.00649, -1e-005, 0.07134, 0.08352, -0.02656, -0.06359, 8e-005, 0.01483, 0.00125, -0.00718, -0.00024, 0.03606, -0.00988, -0.00032, -0.01562, 0.0013, -0.00574, -2e-005, -0.02285, 0.18032, 0.67248, -0.44075, 0.09711, 0.00083, -0.0427, -0.00062, -0.00288, -0.0115, 0.0027, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.0067, 0.1726, -0.0253, -0.17551, -0.00135, -0.09212, 0.03073, -0.06615, 0.00408, 0.05278, -0.10432, 0.22327, 0.02208, -0.04485, 0.00084, -0.04404, -0.1237, -0.03023, 0.0033, 0.07486, 0.05645, 0.00539, -0.07165, -0.00101, 0.06643, 0.00643, 0.07596, -0.00021, 6e-005, 0.06156, -0.03391, -0.00871, 0.00188, -0.04029, 0.00442, -0.0023, 0.00447, -0.00147, -0.07725, -0.00821, -0.0058, 0.06149, -0.05938, -0.00908, -0.05218, 0.0093, 0.01578, 0.12279, -0.00086, -0.00431, 0.07822, 0.07652, -0.00326, -0.00349, -0.03504, -0.04194, 0.03765, -0.00057, 0.00537, 0.08416, -0.00824, 0.00178, 0.0408, 0.00679, -0.03412, 0.00735, 0.10471, 0.02026, 0.00133, 0.00102, -0.19614, -0.00277, -0.1977, 0.00269, -0.22656, -0.00401, -0.01549, -0.00051, 0.02285, 0.00238, -0.16966, 8e-005, -0.17521, -0.07054, -0.00094, 0.08177, -0.00324, 0.00163, -0.06365, -0.001, 0.00348, 0.09603, -0.00255, 0.0006, -0.00063, -0.00668, 0.0228, 0.0035, 0.11581, -0.14907, -0.00305, -0.00785, 0.5776, -0.37422, 0.00406, 0.00036, -0.00026, -0.00394, -0.00461, 0.00147, 0.00351, 0.00143, -0.00082, 0.02273, 0.0004, -0.00437, -0.00199, 0.00055, -0.00587, 0.00086, 0.02349, 0.00032, -0.00036, 0.00126, -0.00995, -0.03711, 0.02432, -0.00536, 0.01512, 0.00236, -0.01131, -0.0521, 0.00063, -0.00015, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.1121, 0.00769, -0.01259, -0.01577, 0.01558, 0.00509, 0.01627, 0.00513, -0.07615, 0.00094, -0.02106, 0.06413, -0.01984, -0.02182, -0.02868, -0.00237, -0.0144, 0.01591, -0.0911, 0.01759, -0.02052, -0.06829, 0.02053, -0.01206, 0.01479, -0.01413, -0.03052, -0.02382, 0.0486, 0.00099, -0.04645, 0.0557, -0.02525, -0.03668, -0.04515, 0.04751, -0.02516, 0.01444, 0.01187, -0.04292, 0.05225, 0.01324, 0.07271, 0.19718, 0.07769, -0.14976, 0.07944, 0.0594, -0.01636, 0.04524, 0.11927, 0.00075, 0.07652, 0.04662, 0.09581, -0.07897, -0.08419, 0.03279, -0.11045, -0.09829, 0.13374, -0.07385, 0.02951, -0.15038, 0.12625, -0.1476, -0.30175, -0.1333, -0.0244, -0.07609, -0.04819, -0.03015, -0.11323, -0.06851, -0.13968, 0.03096, -0.11308, 0.02621, 0.03526, -0.03306, 0.05171, 0.00556, -0.00014, -0.00941, -0.07077, -0.02571, 0.03289, -0.05904, 0.05926, -0.0128, -0.09647, -0.02444, 0.09727, 0.00518, 0.0062, 0.09321, 0.03046, -0.03026, 0.05663, -0.06178, 0.07457, 0.13338, -0.31028, -0.34651, -0.06123, -0.08573, -0.01851, 0.07716, 0.04017, -0.04738, -0.07983, 0.05185, -0.00705, -0.01244, -0.00671, -0.05808, -0.01287, -0.02315, -0.00902, 0.06895, -0.03993, -0.23117, 0.00937, 0.06473, -0.04977, -0.31839, 0.12111, -0.01995, 0.00095, 0.02417, -0.00097, -0.00306, 0.00453, -0.00048, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00817, 0.16709, -0.03371, -0.16991, -0.01129, -0.11694, 0.01887, -0.03887, 0.00182, 0.03622, -0.05691, 0.20559, -0.00318, 0.00925, -0.00613, 0.00571, -0.16119, -0.00776, -0.01753, 0.0995, 0.10407, 0.03128, -0.10976, -0.01716, 0.06733, 0.05061, 0.108, 0.00374, -0.00981, 0.08287, -0.04186, 0.01472, 0.01491, -0.02885, 0.01608, -0.00853, 0.02021, 0.0018, -0.01982, -0.01214, -0.02785, 0.07451, 0.02746, 0.00015, -0.01504, 0.02886, 0.00076, 0.07793, -0.00388, 0.00847, 0.06741, -0.00363, 0.00225, 0.00542, -0.00669, 0.03013, 0.02545, -0.0051, 0.01067, 0.10604, -0.01123, 0.01013, -0.02713, 0.02208, -0.00445, 0.01414, 0.10373, 0.0475, -0.00788, -0.03858, -0.08072, -0.05566, -0.03906, 0.0064, -0.02424, 0.03516, -0.0115, -0.00156, -0.03167, -0.01866, -0.03124, -0.00366, -0.08098, 0.09298, -0.01636, 0.01112, 0.01123, 0.00051, -0.00308, -0.03519, 0.02117, 0.05763, 0.06965, 0.01801, 0.0004, 0.00498, 0.03235, -0.0144, -0.21539, -0.03526, -0.02535, 0.05173, -0.3213, 0.22598, 0.00215, -0.00736, -0.03536, 0.01313, 0.00578, 0.01482, -0.05992, -0.01803, 0.01972, -0.01727, 0.02937, -0.01564, -0.00513, 0.09678, -0.00708, 0.0088, 0.00996, -0.06765, -0.0005, 0.03385, -0.65592, 0.13452, -0.08869, -0.00062, 0.00455, 0.01201, -0.00537, -0.0544, 0.00337, -0.00014, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.08312, -0.01715, -0.04458, 0.00856, 0.03482, 0.06555, 0.06856, 0.07734, -0.08035, 0.00909, -0.02931, 0.1215, -0.0852, -0.02361, -0.0183, 0.01456, -0.01533, 0.04019, -0.0482, 0.00723, -0.06885, -0.07407, 0.10348, 0.02789, -0.01908, -0.01315, -0.09081, -0.02995, -0.01918, -0.04201, -0.06285, 0.0696, 0.02186, -0.00873, 0.02625, 0.07372, 0.01605, 0.05385, 0.04256, 0.00456, 0.00443, 0.03598, 0.05287, 0.11895, 0.03138, 0.04946, 0.03696, 0.06763, -0.07576, -0.09986, 0.16148, 0.03505, 0.11618, -0.02081, 0.12021, -0.03622, -0.04004, 0.00757, -0.09501, -0.0731, 0.05704, -0.0993, -0.00868, -0.09435, 0.12933, -0.0809, -0.25474, -0.06749, -0.02471, -0.13486, 0.02521, -0.04332, -0.0519, -0.1115, -0.15243, -0.01971, -0.0754, 0.05502, 0.01772, 0.01115, 0.05112, 0.02648, -0.03575, 0.01022, -0.17646, 0.06928, -0.16629, -0.02594, -0.03479, -0.03727, 0.00554, 0.01807, -0.04791, 0.06403, -0.08928, -0.21206, 0.06634, 0.09419, -0.04705, 0.04228, -0.01313, -0.24407, 0.23293, 0.39063, 0.12132, 0.15482, -0.00697, -0.16104, -0.13644, 0.06001, 0.17462, -0.06379, -0.08057, -0.01727, -0.03235, 0.08699, 0.0272, 0.02827, 0.00961, 0.00166, 0.03358, 0.07222, -0.03033, -0.01421, -0.04444, 0.03421, -0.03469, -0.03608, 0.02685, -0.01234, -0.0041, -0.00526, -0.00088, 0.00108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00512, 0.12326, 0.01409, -0.13661, -0.03217, -0.15301, -0.04728, -0.07719, -0.01712, 0.00471, -0.03622, 0.16475, -0.00887, -0.03892, 0.00108, -0.01194, -0.10538, 0.00525, -0.04168, 0.06468, 0.02836, 0.0564, -0.03553, -0.03573, 0.06259, 0.00609, -0.01623, 0.00157, -0.11674, 0.00704, -0.03184, 0.04016, 0.01862, -0.03534, 0.05547, 0.06305, 0.04887, 0.00382, -0.02984, -0.00887, -0.06694, 0.00318, 0.02496, 0.05031, 0.04115, -0.00868, -0.00798, 0.02752, 0.05154, 0.00803, 0.04049, 0.04649, -0.004, -0.05687, -0.00846, 0.05198, -0.08461, -0.03375, -0.01592, 0.07917, 0.02353, 0.0237, 0.00143, 0.02591, -0.07125, 0.06306, -0.16103, -0.14773, -0.02181, -0.14378, 0.11381, -0.12639, 0.23908, -0.0425, 0.24793, 0.26363, 0.09761, 0.1081, 0.0552, -0.05252, 0.16431, 0.10427, 0.2024, -0.0663, 0.01507, -0.10021, -0.06533, 0.05696, 0.01358, -0.02909, 0.14312, -0.10915, 0.26094, 0.14506, 0.14678, -0.08026, -0.02117, -0.04248, 0.15056, 0.11013, -0.12968, -0.08142, 0.10086, -0.01821, 0.19502, -0.19564, 0.04737, 0.02411, 0.1398, 0.08109, -0.11712, 0.01982, 0.07589, 0.00571, 0.03929, 0.03556, 0.02918, -0.00457, -0.01696, -0.07347, -0.0058, 0.00832, 0.00621, 0.02073, 0.10285, 0.00308, 0.0053, 0.0102, -0.00995, -0.02157, -0.0073, -0.04373, -0.00042, -0.00048, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00787, -0.02376, -0.11293, 0.00361, 0.04892, 0.11417, 0.15601, 0.1549, -0.08757, 0.05414, -0.06688, 0.25088, -0.13829, -0.03047, -0.02166, 0.05686, -0.04782, 0.10285, -0.00011, 0.00221, -0.07478, -0.09911, 0.14241, 0.07895, -0.00502, -0.02618, -0.08848, 0.0394, -0.02276, -0.06909, 0.04434, -0.0576, 0.07904, 0.06838, 0.06816, 0.021, 0.02962, 0.04428, 0.05154, 0.05226, -0.0875, 0.00521, -0.05379, -0.09573, -0.1083, 0.36503, -0.1255, -0.10113, -0.09301, -0.15622, 0.04445, 0.14626, 0.17102, -0.01018, 0.06012, 0.21537, 0.13064, 0.10884, -0.01569, -0.04968, 0.12965, -0.03842, -0.04621, -0.06419, -0.18416, -0.00622, -0.00268, -0.00456, 0.04806, -0.04587, 0.14032, 0.0907, 0.01458, -0.00355, 0.02943, 0.14508, 0.06237, -0.05118, -0.04168, 0.03955, -0.11241, -0.03598, -0.06687, -0.00558, 0.08108, -0.01451, 0.04059, 0.16502, -0.0091, 0.00953, 0.13091, 0.00202, -0.13791, -0.05662, 0.01099, -0.07533, -0.02315, 0.00812, -0.07639, 0.10063, 0.00283, 0.1176, -0.05877, -0.13711, -0.1173, -0.06686, -0.02194, 0.10922, 0.08011, -0.0364, -0.03432, 0.04476, 0.05432, -0.01962, 0.05947, -0.08257, -0.08599, 0.00637, 0.00859, -0.03153, -0.04768, -0.0449, 0.00073, 0.00078, 0.01587, -0.00498, 0.00653, 0.01383, -0.0019, -0.00343, 0.00058, -0.00129, -0.00394, -0.00029, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00347, 0.00115, 0.11962, -0.0274, -0.05623, -0.15343, -0.14657, -0.09346, -0.02254, -0.08508, 0.08087, 0.02733, -0.04125, -0.00647, -0.01152, -0.09284, 0.06289, 0.07343, -0.08591, -0.08602, -0.09492, 0.09427, 0.17077, -0.081, -0.02764, 0.00585, -0.24118, 0.03064, -0.11885, -0.03671, -0.10529, 0.28768, 0.04304, 0.11988, 0.09447, 0.06959, 0.07817, 0.04911, 0.10027, 0.04967, -0.15226, -0.00281, -0.00125, 0.18493, 0.07912, -0.01583, 0.01763, -0.03257, 0.05407, 0.09901, 0.02309, 0.05708, -0.06243, 0.0245, -0.08228, 0.02402, -0.09034, -0.05906, -0.00707, 0.16939, -0.03381, 0.08289, -0.01334, 0.0191, -0.03933, -0.08718, 0.05047, 0.0307, -0.05528, -0.07827, 0.11093, -0.12194, -0.03489, 0.07485, -0.03477, 0.10669, 0.03519, -0.00262, -0.0495, 0.08711, -0.14793, -0.07599, -0.12017, 0.01121, -0.11338, 0.00574, -0.07246, 0.23751, -0.01664, 0.03428, -0.09994, -0.01049, -0.26416, -0.27142, -0.05291, 0.16021, -0.08285, -0.06078, 0.05822, -0.1566, -0.00575, -0.0053, -0.05921, 0.021, 0.06306, 0.03388, 0.0122, -0.03824, 0.04212, 0.05054, -0.01361, -0.00119, 0.03375, -0.03264, 0.0239, -0.02282, -0.03982, 0.05345, -0.00162, 0.0061, 0.01998, 0.00016, 0.00857, -0.04719, 0.01865, -0.00327, 0.00184, -0.01917, 0.02028, -0.00014, -0.00574, -0.05064, 0.00468, -0.00113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.07639, -0.00677, -0.04059, -0.00254, 0.02523, 0.0617, 0.07674, 0.05286, -0.09185, 0.03154, -0.05596, 0.11113, -0.04088, -0.04397, -0.00062, -0.02019, -0.02221, 0.02102, -0.03677, 0.01428, -0.07419, -0.09746, 0.06743, 0.0699, -0.03579, -0.04827, -0.1134, -0.0081, -0.05988, 0.04567, -0.05964, 0.06581, -0.01049, 0.03346, 0.03222, 0.12106, 0.05786, 0.0408, -0.01011, -0.18027, -0.00365, 0.08423, 0.05534, 0.0699, 0.08154, -0.09097, 0.14963, 0.08709, -0.03719, -0.20748, -0.12218, -0.12086, 0.00816, -0.04264, -0.00436, -0.12241, 0.07681, -0.05897, 0.15459, -0.04849, -0.18298, 0.0598, -0.02372, 0.11296, 0.04129, 0.06978, 0.10626, 0.07399, -0.05697, -0.00144, -0.02812, -0.0833, 0.05293, 0.03306, 0.05162, -0.06835, 0.03869, -0.00303, -0.01114, 0.01678, 0.01499, 0.01001, 0.04891, -0.00321, -0.03694, 0.00859, 0.01816, -0.01142, 0.02114, -0.04457, -0.03187, -0.01193, -0.00412, 0.0247, 0.00951, 0.02045, -0.07238, 0.02612, -0.02181, -0.01284, -0.02124, 0.024, 0.0163, -0.0175, -0.05323, -0.01792, 0.0067, 0.03128, -0.00148, -0.02641, -0.01588, 0.00142, 0.0094, 0.03011, -0.02016, -0.01267, -0.01101, -0.00314, -0.01486, 0.02163, 0.02281, -0.01735, 0.0265, -0.00375, 0.00071, 0.08531, 0.19504, 0.44668, -0.50507, 0.09431, -0.00245, 0.00322, -0.00637, 0.00239, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00389, 0.11235, 0.01552, -0.05211, -0.02991, -0.1222, -0.05949, -0.12502, -0.00833, -0.03692, -0.02522, 0.13911, 0.06026, -0.03201, -0.0005, -0.08605, 0.05371, 0.06557, -0.02806, -0.15154, -0.10786, 0.04594, -0.01687, -0.03205, 0.06497, -0.10672, -0.06812, 0.01374, -0.07641, -0.01425, 0.12902, -0.14073, 0.03102, -0.01651, 0.04053, 0.03712, 0.01774, 0.02408, 0.08103, 0.03968, -0.09145, -0.12395, -0.0245, 0.02087, 0.04788, 0.00699, 0.0017, -0.16687, 0.03807, 0.02031, -0.1935, -0.0651, 0.01568, -0.0241, 0.03328, -0.01081, 0.01519, -0.02026, -0.00021, -0.22347, -0.00015, 0.03159, -0.00807, 0.02785, 0.0744, 0.08946, -0.04954, 0.02307, -0.05062, -0.18351, 0.05184, -0.13677, 0.04744, -0.01069, 0.00854, 0.16237, -0.04926, -0.01866, 0.00659, -0.03879, 0.04615, -0.0028, 0.09194, 0.02334, 0.07553, 0.04857, 0.16323, 0.04072, 0.0415, 0.18749, 0.035, 0.09668, 0.14752, 0.10464, 0.01939, 0.05186, 0.11291, 0.01808, -0.2513, -0.17456, -0.04917, 0.09082, 0.06847, -0.02922, -0.29617, 0.27362, -0.05282, -0.02578, -0.15355, -0.0923, 0.14594, 0.01185, -0.06755, -0.00579, -0.16622, -0.00514, 0.03863, -0.01512, 0.01771, 0.06914, 0.02278, 0.03305, 0.01589, -0.01118, 0.02872, -0.03333, -0.02563, -0.04168, 0.02949, 0.01109, -0.00691, -0.04869, -0.00165, -0.00052, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.10175, 0.00737, -0.00029, -0.0035, 0.02379, -0.00451, -0.00143, -0.00492, -0.0919, -0.00092, -0.00184, 0.00906, 0.00465, -0.00051, -0.0098, -0.00382, 0.00147, 0.00359, -0.0334, -0.00679, -0.00305, -0.09587, -0.00273, 0.05425, 0.004, -0.00521, 0.00112, 0.02897, 0.00092, 0.00103, 0.00756, -0.01039, -0.01001, 0.00154, -0.0325, 0.02059, -0.02888, 0.01092, 0.00329, 0.00134, 0.03754, -0.0031, -0.00201, 0.0755, 0.00086, -0.17412, -0.00303, -0.00534, 0.03311, 0.07399, -0.00974, -0.00224, -0.02476, 0.0772, 0.00119, -0.00306, 0.00283, -0.01581, -0.00293, -0.011, 0.04174, -0.0032, 0.00082, -0.03485, 0.00591, -0.072, 0.00111, 0.0037, 0.00982, 0.0973, -0.00217, 0.13022, -0.00858, 0.08464, -0.00731, 0.13157, -0.00327, -0.02477, -0.00102, -0.03077, -0.00476, -0.01799, -0.01241, 0.00122, 0.26132, 0.00042, 0.15598, 0.04009, -0.00176, -0.01176, 0.16827, -0.01052, -0.09038, 0.01188, 0.08117, 0.06486, -0.01427, -0.09856, 0.02943, 0.02022, -0.14436, -0.05386, -0.008, 0.00985, 0.12319, 0.04056, 0.00464, -0.09338, -0.05707, -0.00724, 0.07477, -0.00267, -0.10555, 0.00224, -0.05884, 0.00167, -0.0928, -0.05101, 0.00057, -0.08529, -0.00091, 0.05463, 0.00024, -0.03859, -0.09201, 0.29304, 0.62062, -0.27878, -0.00121, -0.16112, -0.00034, -0.00317, -0.00591, 0.00133, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00561, 0.13356, -0.00517, -0.06339, -0.00131, -0.08165, -0.02595, -0.08923, 0.00507, -0.01661, -0.03334, 0.16415, 0.08421, -0.00924, 0.00054, -0.06916, 0.02662, 0.06512, 0.00184, -0.12312, -0.05521, 0.00529, -0.04941, -0.00299, 0.07257, -0.09442, 0.02019, -0.0016, -5e-005, 0.0186, 0.13703, -0.18836, 0.00055, 0.02795, 0.00179, -0.00114, 0.00159, -0.0006, 0.05958, 0.02424, -0.00207, -0.05622, -0.0365, -0.00417, 0.01557, 0.00961, -0.05485, -0.09684, -0.00183, -0.00408, -0.17649, -0.04057, 0.00137, -0.00426, 0.02158, -0.05553, 0.05132, 0.00087, 0.00016, -0.19928, -0.0023, 0.00018, 0.01481, 0.00192, 0.10717, 0.00397, 0.02008, 0.06709, -0.00054, -0.00537, -0.03923, -0.00719, -0.15547, -0.00467, -0.13239, -0.00726, -0.05918, 0.00137, -0.01853, 0.0017, -0.08632, 0.00099, -0.22494, 0.02205, -0.01442, 0.0076, -0.00861, -0.00221, -0.03189, 0.00065, -0.00929, -0.19056, 0.00499, -0.00066, -0.00448, -0.00358, -0.25867, 0.00544, 0.53324, 0.36642, 0.00797, 0.00297, -0.14501, 0.17851, -0.0068, -0.00224, 0.08412, 0.00515, 0.00315, 0.0004, -0.00413, -0.04838, 0.00582, 0.04057, 0.00325, 0.03026, 0.00512, 0.00282, 0.01041, 0.00471, -0.01645, -0.00301, 0.00435, 0.00213, 0.00508, -0.01617, -0.03425, 0.01538, -0.02187, 0.00889, -0.00621, -0.05743, 0.00033, -7e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.07635, 0.01909, 0.04205, -0.00321, 0.02837, -0.07477, -0.08282, -0.0663, -0.09037, -0.03541, 0.05284, -0.09515, 0.04727, 0.04018, -0.00056, 0.0106, 0.02799, -0.01368, -0.03346, -0.03086, 0.06187, -0.10192, -0.06888, 0.073, 0.04273, 0.03624, 0.10521, -0.00957, -0.05111, -0.04696, 0.07348, -0.08089, -0.01384, -0.03507, 0.02757, 0.11624, 0.05556, 0.0379, 0.01896, 0.18354, 0.00643, -0.09736, -0.0577, 0.06718, -0.07578, -0.09118, -0.14854, -0.10492, -0.04115, -0.20846, 0.10015, 0.11297, 0.00638, -0.03973, 0.00799, 0.12048, -0.07467, -0.05638, 0.15367, 0.02361, -0.18185, 0.05596, 0.02269, 0.10921, -0.03286, 0.05952, -0.11106, -0.071, -0.05105, 0.01876, 0.03365, -0.06774, -0.04739, 0.03404, -0.05037, -0.0858, -0.04388, -0.00095, 0.01179, 0.02094, -0.00982, 0.01026, -0.03849, 0.00576, -0.04503, -0.00319, 9e-005, -0.01583, -0.01645, -0.06493, -0.03553, 0.02249, -0.02033, 0.01304, 0.00732, 0.01462, 0.08437, 0.02398, -0.00597, -0.00644, -0.0157, 0.01386, -0.00867, 0.01418, -0.02031, -0.04792, -0.01247, 0.03392, 0.01543, -0.01609, -0.03185, -0.0001, 0.01678, -0.03057, -0.00175, 0.01203, -0.01519, -0.00145, 0.01672, 0.01389, -0.02017, -0.02088, -0.02459, -0.00249, -0.00246, 0.08846, 0.19668, 0.44856, 0.50524, 0.09251, 0.00167, -0.00856, -0.00615, 0.00243, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00454, 0.11093, 0.01096, -0.05207, 0.02695, -0.11467, -0.05068, -0.11844, 0.01839, -0.03323, -0.03122, 0.1505, 0.05539, -0.03666, 0.00056, -0.08775, 0.05094, 0.06748, 0.03193, -0.14905, -0.11537, -0.03494, -0.00935, 0.02416, 0.06064, -0.11138, -0.08018, -0.01276, 0.08253, -0.00914, 0.12167, -0.13263, -0.02968, -0.01273, -0.04383, -0.05021, -0.024, -0.02842, 0.07942, 0.01961, 0.09129, -0.11393, -0.01826, -0.02843, 0.05656, 0.00307, 0.01815, -0.15627, -0.03374, 0.00264, -0.20577, -0.07801, -0.01649, 0.02864, 0.0326, -0.02422, 0.02355, 0.02662, -0.0168, -0.22745, 0.02028, -0.03797, -0.01063, -0.04011, 0.07849, -0.09659, -0.03754, 0.03107, 0.05658, 0.18256, 0.04843, 0.14511, 0.05298, 0.00699, 0.01417, -0.15386, -0.04471, 0.01888, 0.00532, 0.03671, 0.04752, 0.00168, 0.09676, 0.02285, -0.071, 0.04922, -0.16424, -0.03922, 0.04358, -0.18145, -0.03128, 0.09478, -0.14617, -0.10672, -0.02032, -0.0538, 0.10426, -0.02084, -0.25217, -0.17491, 0.0512, -0.09291, 0.06985, -0.03097, 0.30022, -0.26999, -0.05176, 0.02218, 0.15278, 0.09464, -0.14331, 0.01193, 0.06611, -0.00244, 0.16743, -0.0065, -0.03718, 0.01538, 0.01597, -0.0711, 0.02516, -0.03094, 0.01871, 0.01153, -0.02862, 0.02374, 0.00402, -0.00772, -0.02627, -0.0214, -0.00713, -0.04804, 0.00234, 0.00025, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.0707, 0.01297, 0.0487, -0.00082, 0.02657, -0.07051, -0.08437, -0.05961, -0.09074, -0.03608, 0.05751, -0.09944, 0.03555, 0.04151, 0.00426, 0.01544, 0.02068, -0.01589, -0.01859, -0.01897, 0.0648, -0.11377, -0.05029, 0.09639, 0.02582, 0.05817, 0.10446, -0.00153, -0.04451, -0.05584, 0.05877, -0.05193, -0.02256, -0.0211, 0.01677, 0.11334, 0.06257, 0.02424, 0.01475, 0.19514, 0.01401, -0.09553, -0.05702, 0.04308, -0.07706, -0.10517, -0.1456, -0.1025, -0.02839, -0.22279, 0.12474, 0.13206, 0.00321, -0.05226, 0.01302, 0.12973, -0.08931, -0.05266, 0.18185, 0.04055, -0.18599, 0.05243, 0.03224, 0.11315, -0.03938, 0.05216, -0.11801, -0.08353, -0.03927, 0.02733, 0.01108, -0.05757, -0.05832, 0.06559, -0.07954, -0.07102, -0.05555, 0.00459, 0.01073, 0.02855, -0.01443, -0.01559, -0.04215, 0.0226, -0.01081, 0.00654, 0.0284, -0.00543, -0.00747, -0.01883, 0.00048, 0.01037, -0.00462, 0.02128, 0.01493, 0.03533, 0.05471, -0.00229, -0.02417, -0.0113, 0.01123, 0.02206, 0.00868, 0.02889, -0.02173, -0.04963, -0.01649, 0.04414, 0.02564, -0.02261, -0.05375, -0.00398, 0.03711, -0.00226, 0.02284, 0.0152, 0.00812, 0.01068, -0.00829, -0.00103, 0.01263, 0.01708, -0.01166, 0.01662, 0.01482, -0.07237, -0.19967, -0.42289, -0.48872, -0.10443, -0.0069, 0.00166, 0.00235, -0.00192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00167, 0.07539, 0.10359, 0.0834, 0.01644, 0.12456, 0.0053, 0.02246, 0.03198, -0.01489, 0.09383, 0.05884, -0.08454, -0.02596, 0.00769, 0.00154, -0.17516, -0.05591, 0.03387, 0.10601, 0.12421, -0.03047, 0.02391, 0.01415, -0.07475, 0.13527, 0.05595, -0.04772, 0.05838, -0.12912, -0.09738, 0.15026, -0.04622, 0.08158, -0.06423, -0.02545, -0.04573, -0.02039, -0.08235, 0.1126, 0.08588, -0.17267, 0.04413, -0.05492, -0.01957, -0.0199, -0.05442, -0.11525, -0.0307, -0.09006, -0.14886, 0.03169, 0.03193, 0.00766, -0.04441, -0.03859, 0.00657, 0.00797, -0.00074, -0.11295, -0.03727, -0.01103, 0.01442, -0.0055, 0.03835, -0.03853, -0.01334, -0.00044, -0.05216, -0.14824, -0.11464, -0.12022, -0.03536, 0.03138, -0.04499, -0.00664, -0.0713, -0.01059, -0.03723, -0.03656, 0.09645, -0.08095, 0.09793, 0.02938, 0.04562, 0.04133, 0.19702, -0.03192, 0.07648, 0.49195, 0.01931, -0.07341, 0.00018, -0.08806, -0.14253, -0.05999, -0.31213, 0.02819, -0.11179, -0.00523, 0.12276, -0.03996, 0.05698, -0.00941, 0.22818, -0.05241, 0.01027, -0.01649, 0.10094, 0.04995, -0.01278, 0.01395, 0.04392, 0.02222, 0.04443, -0.06384, -0.02874, 0.01247, 0.00344, -0.01536, 0.00024, 0.00947, 0.00201, -0.00148, -0.02126, 0.0064, 0.02106, 0.02789, 0.03284, 0.0174, -0.00593, -0.04973, -8e-005, 0.0007, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.09328, 0.00537, 0.00574, 0.00582, 0.03337, 0.00917, 0.00079, 0.00107, -0.09668, 0.00038, 0.00504, 0.00288, -0.00249, -0.00096, -0.00888, 0.00058, -0.01071, -0.00492, -0.00847, 0.00762, 0.00853, -0.0908, -0.0022, 0.0693, -0.00254, 0.00663, 0.0036, 0.04546, 0.01712, -0.00526, -0.0048, 0.00572, -0.01356, 0.00379, -0.00082, 0.00645, -0.01148, 0.00036, -0.00583, 0.0026, 0.00511, -0.00614, 0.00323, 0.04812, 0.00148, -0.15727, 0.00204, -0.00432, 0.03675, 0.10046, -0.01272, -0.00339, -0.05667, 0.07528, -0.00222, -0.008, 0.00391, -0.02884, 0.00625, -0.00753, -0.00057, 0.00426, 0.00209, -0.0068, 0.00022, -0.04954, -0.00098, 0.00172, 0.02213, 0.14682, 0.0193, 0.14919, 0.00122, 0.10168, -0.004, 0.12587, 0.00957, -0.05328, 0.00203, 0.00953, -0.00748, -0.00374, -0.00654, -0.00136, 0.31315, -0.0028, 0.16194, 0.07527, -0.00696, 0.0156, 0.20455, 0.005, -0.15076, 0.01061, 0.1223, 0.00908, 0.03178, -0.08932, 0.01325, -0.00173, -0.2182, -0.10231, -0.004, 0.00056, 0.20554, 0.06932, -0.00082, -0.20791, -0.07863, -0.02254, 0.03158, -0.00054, -0.11591, -0.00224, -0.00206, 0.00426, -0.05462, -0.08051, 0.00056, -0.04734, 0.00064, 0.03704, 0.00139, -0.0183, -0.0868, -0.36015, -0.43823, 0.26196, -0.00163, 0.12766, -0.00032, -0.00271, 0.00082, -0.00021, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00515, 0.09726, 0.10399, 0.10551, -0.00184, 0.16617, 0.01426, 0.01934, 0.00534, 0.00681, 0.09137, 0.05212, -0.04514, -0.01741, 0.00049, 0.01045, -0.19415, -0.08917, 0.00047, 0.13803, 0.1545, 0.00501, -0.03996, -0.00382, -0.046, 0.12009, 0.06523, -0.00251, -0.00094, -0.09523, -0.08694, 0.10366, 0.00075, 0.06876, 5e-005, -0.00036, 0.00063, -2e-005, -0.10574, 0.04719, -0.00028, -0.11133, 0.05847, -0.00266, 0.02673, 0.00868, 0.03694, -0.07837, -0.00203, -0.00554, -0.23053, -0.06138, 0.00313, -0.00415, -0.04017, -0.14494, 0.07093, 0.00159, -0.00034, -0.13645, 3e-005, -0.00024, 0.03785, 0.00038, 0.00403, 0.00273, -0.01777, 0.03111, -0.00122, -0.0081, 0.34965, -0.00823, 0.02215, -0.00561, -0.07249, -0.00695, 0.17344, 0.00294, 0.03677, -0.00053, -0.13554, 0.00021, -0.11859, -0.02469, -0.01728, -0.0507, -0.00894, -0.00415, -0.12615, -0.00086, -0.01129, 0.09066, 0.00832, -0.00059, -0.00675, -0.0005, 0.57586, 0.00493, 0.24018, -0.03141, 0.01204, 0.00565, -0.07255, 0.01023, -0.01134, -0.00383, -0.01477, 0.01147, 0.00434, 0.00124, -0.00174, -0.00977, 0.0064, -0.04063, 0.00011, 0.07718, 0.00301, 0.00444, 0.01013, 0.00261, 0.01152, -0.00204, 0.02513, 0.00101, 0.00479, 0.01987, 0.02418, -0.01446, -0.02962, -0.00705, -0.00586, -0.04918, -5e-005, 1e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.07046, -0.0046, -0.037, 0.00999, 0.0246, 0.08379, 0.08444, 0.06172, -0.09371, 0.03422, -0.04684, 0.10531, -0.04463, -0.04411, 0.00339, -0.01518, -0.03983, 0.00964, -0.02221, 0.03052, -0.05074, -0.10972, 0.05262, 0.09425, -0.03389, -0.04293, -0.09767, 0.00374, -0.05066, 0.04129, -0.06913, 0.06815, -0.01734, 0.02995, 0.02373, 0.11546, 0.06722, 0.02634, -0.02372, -0.18156, 0.00448, 0.07595, 0.06153, 0.04887, 0.07444, -0.10234, 0.13873, 0.08919, -0.02483, -0.21153, -0.14036, -0.12777, -0.00033, -0.05278, -0.01783, -0.13319, 0.08949, -0.05322, 0.18082, -0.05274, -0.18076, 0.05332, -0.03045, 0.11307, 0.04336, 0.05608, 0.11583, 0.08298, -0.0333, 0.04348, -0.02363, -0.04399, 0.05408, 0.06173, 0.07411, -0.06986, 0.04737, 0.00573, -0.01476, 0.0324, 0.02495, -0.00658, 0.05267, -0.01923, -0.01576, -0.00196, 0.00655, -0.00188, 0.01584, -0.07285, -0.00165, -0.01838, -0.00461, 0.03084, 0.03052, 0.04172, -0.08873, -0.00538, 0.01172, 0.01066, -0.00234, 0.02633, -0.00236, -0.02975, -0.0467, -0.04356, 0.01752, 0.04569, 0.01438, -0.02797, -0.05201, 0.00549, 0.03205, 0.00469, 0.01781, -0.02214, 0.01123, 0.00925, 0.00862, 0.00066, -0.01252, 0.01593, 0.01181, 0.01668, 0.01707, -0.07264, -0.20077, -0.42339, 0.48937, -0.10571, 0.00621, -0.00713, 0.00234, -0.00198, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00612, 0.07636, 0.10832, 0.08281, -0.01927, 0.11605, -0.00402, 0.01577, -0.0218, -0.01877, 0.09959, 0.04754, -0.08012, -0.02123, -0.00811, 0.00323, -0.17182, -0.05732, -0.03162, 0.10327, 0.13058, 0.04281, 0.01824, -0.02467, -0.07146, 0.14085, 0.0671, 0.0476, -0.05313, -0.13448, -0.09032, 0.14363, 0.04842, 0.07877, 0.06199, 0.01283, 0.03857, 0.0176, -0.08023, 0.13339, -0.0869, -0.18213, 0.03759, 0.04985, -0.02793, 0.03135, -0.07011, -0.12583, 0.03364, 0.11403, -0.13423, 0.04603, -0.03209, -0.00186, -0.04271, -0.02408, -0.0033, -0.00212, -0.01927, -0.1078, 0.05751, 0.00519, 0.01788, -0.00698, 0.03379, 0.03256, -0.02625, -0.00963, 0.05616, 0.14433, -0.11273, 0.12582, -0.04157, -0.03841, -0.05347, 0.01441, -0.07698, 0.01002, -0.03582, 0.0332, 0.09428, 0.08217, 0.09269, 0.03168, -0.04415, 0.0418, -0.19894, 0.03233, 0.0752, -0.48689, -0.01924, -0.07183, 0.00033, 0.08518, 0.14002, 0.05574, -0.30421, -0.02776, -0.11378, -0.00644, -0.12325, 0.03729, 0.05759, -0.00618, -0.22441, 0.05755, 0.0084, 0.01154, -0.10315, -0.04715, 0.01862, 0.01343, -0.04773, 0.02184, -0.04667, -0.06178, 0.02767, -0.01357, 0.00251, 0.01539, 0.00163, -0.01129, 0.00071, -0.00036, 0.0195, 0.0016, 0.00104, 0.01881, -0.02113, -0.00581, -0.00665, -0.04925, -0.00018, -0.00049, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.03685, -0.0067, -0.05435, 0.06544, 0.03365, 0.17163, 0.11694, 0.07463, -0.10827, 0.01804, -0.01957, 0.14562, -0.07734, -0.03953, -0.02851, 0.00368, -0.01969, 0.04835, 0.00042, -0.00142, -0.04063, -0.06767, 0.05595, 0.08399, 0.00453, -0.03746, -0.02568, 0.03547, 0.09171, -0.01237, 0.08461, -0.06514, 0.09115, -0.03586, 0.10336, 0.00071, 0.08629, -0.02315, 0.01349, 0.07168, -0.18861, -0.02217, -0.08148, -0.09235, 0.0067, 0.20281, -0.1172, -0.05318, -0.041, 0.06834, -0.04834, -0.00643, -0.00329, -0.02199, -0.07008, 0.04991, -0.18036, 0.04828, -0.0408, 0.15343, 0.02916, 0.01727, 0.05586, 0.02898, 0.04635, 0.0491, 0.08888, -0.00147, 0.06335, 0.0514, -0.17216, 0.0121, 0.00188, -0.01824, 0.05721, -0.06478, -0.09097, -0.02748, 0.06182, -0.01139, 0.07635, 0.01158, 0.09231, 0.03578, -0.00968, -0.05517, -4e-005, -0.10252, 0.02215, 0.07008, -0.18405, 0.00138, 0.17049, -0.0247, 0.02729, 0.30643, 0.05873, -0.12428, 0.21363, -0.3211, 0.00367, -0.04312, -0.08522, 0.04643, 0.17523, 0.00342, 0.02868, -0.11059, 0.02134, 0.01653, -0.03367, -0.09279, -0.04666, 0.07776, -0.09996, 0.18949, 0.20531, 0.02369, -0.04883, 0.06611, 0.06612, 0.07117, 0.0013, -0.01078, 0.00502, 0.00643, 0.01739, 0.00338, 0.00575, -0.01387, 0.00137, -0.00636, 0.00026, 8e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00607, 0.04274, 0.11918, 0.10372, -0.03874, 0.06272, -0.08668, -0.08031, -0.01743, -0.07849, 0.13482, 0.03417, -0.04276, -0.02694, -0.01345, -0.06473, 0.00494, 0.04892, -0.10448, -0.05818, -0.00623, 0.09154, 0.05915, -0.07342, -0.00811, -0.01187, -0.07734, 0.03515, -0.08437, 0.03648, -0.03461, 0.09054, 0.04878, 0.03046, 0.12005, 0.09099, 0.0787, 0.06951, 0.07487, -0.0112, -0.16033, 0.05701, 0.00023, 0.25415, -0.03378, 0.03633, 0.00965, 0.00263, 0.03598, 0.05605, 0.07116, 0.0554, -0.05092, 0.05352, 0.02775, 0.12813, 0.0794, 0.05949, 0.04172, 0.00173, 0.03462, -0.03978, -0.04961, 0.07218, 0.04122, -0.03391, 0.11559, 0.07951, 0.08058, 0.19488, -0.25661, 0.09387, 0.00104, -0.03308, 0.02228, -0.12964, -0.10493, 0.01297, 0.07853, 0.02273, 0.11489, -0.04973, 0.06928, 0.05703, 0.05976, 0.0008, 0.01251, -0.03273, -0.05657, 0.1692, 0.03831, 0.01694, 0.0111, 0.07916, -0.03723, -0.19884, 0.24873, 0.12678, -0.05697, 0.31784, 0.12924, 0.03517, -0.00645, -0.11379, -0.01195, -0.19054, 0.01834, 0.01923, 0.05467, -0.16027, 0.00232, -0.06799, -0.11946, 0.11159, -0.11156, 0.10527, 0.10281, -0.09872, -0.03421, -0.0278, -0.0054, 0.06613, 0.00932, -0.00243, -0.03919, 0.02093, -0.00534, -0.00747, 0.00559, 0.00787, -0.00647, -0.05247, -0.00013, 0.00086, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.06929, 0.00788, -0.02174, 0.05083, 0.03152, 0.10857, 0.05545, 0.01871, -0.11826, 0.00618, -0.0013, 0.06815, -0.03285, -0.04773, -0.01837, -0.01026, -0.02201, 0.01507, 0.01225, -0.00557, -0.04382, -0.07936, -0.00662, 0.10791, 0.04233, -0.06795, -0.03248, 0.01872, 0.1087, -0.00171, 0.06487, -0.05545, 0.05454, -0.07027, 0.02294, -0.04594, 0.05684, -0.06158, -0.00373, 0.09304, -0.16225, -0.07442, -0.0258, -0.14627, 0.12464, -0.02869, -0.03983, -0.03557, 0.04157, 0.29348, -0.05246, -0.09546, -0.15832, -0.0238, -0.12945, -0.1727, -0.30804, -0.10412, -0.05666, 0.26886, -0.05813, 0.09179, 0.05448, 0.02353, 0.10841, 0.04666, 0.00397, -0.013, -0.00131, -0.05055, 0.00546, -0.07483, -0.02788, -0.02123, 0.03096, -0.02371, 0.0007, 0.04367, -0.05634, 0.05924, -0.04297, 0.00275, -0.05638, 0.02844, -0.09973, 0.00643, -0.0412, -0.0276, -0.0597, 0.05054, -0.04694, 0.02162, 0.03167, 0.03131, -0.03281, -0.1253, 0.06066, 0.07778, -0.13938, 0.27063, 0.03257, 0.03213, 0.04759, -0.0395, -0.04987, -0.0561, -0.00384, 0.08086, -0.00982, -0.02266, 0.09752, 0.10807, -0.03768, -0.09556, 0.06234, -0.19373, -0.28657, -0.11328, 0.05316, -0.18357, -0.03077, -0.06623, -0.00786, -0.02634, -0.00109, 0.0231, -0.02222, -0.00792, -0.00828, -0.01007, -0.0006, 0.00152, -0.00109, 0.0002, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.0054, 0.09221, 0.12176, 0.20324, -0.02109, 0.22181, -0.04332, -0.10739, -0.00726, -0.06399, 0.14581, 0.02452, -0.00138, -0.06236, -0.00619, -0.07228, -0.02472, 0.00633, -0.05591, -0.03107, 0.00599, 0.05587, -0.04274, -0.04412, 0.03444, -0.05886, 0.01008, 0.02746, -0.04335, 0.14786, 0.03704, -0.07739, 0.03273, -0.08389, 0.07271, 0.06181, 0.05775, 0.05018, 0.02692, -0.07382, -0.07581, 0.10181, -0.02677, 0.16416, -0.02445, 0.04883, 0.0173, 0.07082, 0.00657, -0.01532, 0.08077, 0.0345, 0.00581, 0.03023, 0.06736, 0.08048, 0.07357, 0.06493, 0.0534, -0.01355, 0.01901, -0.04691, -0.02422, 0.0414, -0.05861, 0.01073, -0.0117, -0.03756, 0.08455, 0.13458, -0.03508, 0.10087, 0.04304, -0.0427, 0.02023, -0.08089, 0.00815, -0.04311, 0.03628, -0.00525, 0.02004, -0.00201, 0.0019, -0.00704, 0.05972, 4e-005, 0.0443, -0.13982, 0.01484, 0.09508, -0.0449, 0.03517, 0.09799, 0.08913, 0.04692, 0.02061, -0.04339, -0.0464, 0.11944, -0.14791, -0.00709, -0.03935, 0.01814, 0.10918, 0.03489, 0.26025, -0.04068, 0.06262, -0.03326, 0.23925, 0.02418, 0.18852, 0.23, -0.23688, 0.1963, -0.25176, -0.25583, 0.09764, 0.1125, -0.02096, -0.02044, -0.13042, -0.00939, 0.00847, 0.04797, 0.00582, -0.00289, 4e-005, -0.01511, -0.00031, -0.00988, -0.04824, -0.00063, 0.00114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.09497, 0.00613, 0.00661, 0.01295, 0.04232, 0.0143, -0.00151, -0.0062, -0.1146, -0.00312, 0.00876, 0.00097, 0.00054, -0.00481, 0.00382, -0.0038, -0.0029, -0.0007, 0.02974, -0.0003, -0.00032, -0.08285, -0.00577, 0.0988, 0.00393, -0.00539, 0.00137, 0.05378, 0.05468, 0.00849, 0.00466, -0.00742, 0.03266, -0.00856, -0.00275, -0.02906, -0.01067, -0.03891, -0.00025, -0.0021, -0.06808, 0.00322, 1e-005, -0.05403, 0.00427, -0.09659, 0.00249, 0.00511, 0.09329, 0.26973, 0.00626, -0.00062, -0.15466, 0.01446, 0.00013, -0.00359, -0.00135, -0.09765, -0.03841, 0.00338, -0.03228, 0.02641, 0.00114, 0.00321, -0.00434, -0.01091, -0.00538, -0.00407, 0.0167, 0.08602, 0.01661, 0.02768, -0.00107, -0.00239, 0.00019, 0.04213, 0.00613, 0.03084, -0.00669, 0.0325, -0.00955, 0.0055, -0.00651, -0.0044, 0.01707, 0.00131, 0.03333, 0.06312, 0.00253, 0.04193, 0.16392, -0.00308, -0.08738, -0.00321, -0.05258, -0.29592, -0.01323, 0.12828, -0.01294, 0.00044, 0.03534, -0.02429, -0.00118, -0.00525, -0.1234, 0.1307, 0.00242, 0.07281, 0.06344, 0.16072, -0.16327, -0.01438, 0.28913, 0.01696, 0.07485, 0.01889, 0.40197, 0.30946, -0.01035, 0.40683, 0.00164, 0.03811, 0.00055, 0.08638, 0.03347, -0.01377, 0.07352, 0.00504, 0.0007, -0.01721, -0.00039, -0.00288, -0.00331, 0.00131, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00524, 0.11115, 0.11979, 0.23462, -0.00234, 0.25918, -0.02737, -0.11243, 0.00632, -0.05659, 0.15872, 0.01749, 0.00975, -0.08717, -0.00021, -0.06886, -0.05262, -0.01274, -0.00164, -0.00546, -0.00573, 0.00457, -0.10451, -0.00545, 0.07115, -0.09766, 0.02469, -0.00297, -0.00302, 0.1539, 0.08453, -0.13451, -0.0018, -0.15516, 0.00015, 0.0016, 0.00059, 0.00215, -0.00446, -0.03812, 0.00376, 0.05832, 0.00025, 0.00298, 0.07737, 0.00533, 0.0451, 0.09265, -0.00515, -0.01488, 0.11343, -0.01116, 0.00853, -0.0008, 0.00242, -0.0651, -0.02453, 0.00539, 0.00212, 0.06118, 0.00178, -0.00146, 0.02073, -0.00018, -0.07865, 0.0006, -0.09753, -0.07384, -0.00092, -0.00475, 0.30104, -0.00153, -0.01943, 0.00013, 0.00341, -0.00233, 0.11111, -0.0017, -0.12127, -0.00179, -0.173, -0.0003, -0.11793, -0.07967, -0.00094, 0.02366, -0.00184, -0.00348, 0.0459, -0.00231, -0.00905, -0.0559, 0.00482, 0.00018, 0.0029, 0.01633, -0.23968, -0.00708, -0.23447, 0.0079, -0.00195, 0.00134, -0.02146, -0.09507, 0.00681, -0.00721, 0.04394, -0.00402, -0.0035, -0.00887, 0.00901, -0.26051, -0.01596, 0.30728, -0.00413, 0.34224, -0.02218, -0.01708, -0.18755, -0.02245, 0.02967, -0.0021, 0.00993, -0.00477, -0.00185, 0.00076, -0.00406, -0.00028, 0.01268, 0.00095, -0.007, -0.05211, 0.00018, -7e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.06946, 0.00231, 0.035, -0.02816, 0.03365, -0.08351, -0.05988, -0.03042, -0.11674, -0.01318, 0.01734, -0.06504, 0.0325, 0.04058, -0.01758, 0.00224, 0.01916, -0.01428, 0.01833, 0.00212, 0.04421, -0.08502, 0.00188, 0.11211, -0.03828, 0.06106, 0.03339, 0.01558, 0.11281, 0.01797, -0.0604, 0.0466, 0.05061, 0.06062, 0.0148, -0.05247, 0.05014, -0.06673, 0.00667, -0.1006, -0.15292, 0.08517, 0.0227, -0.16344, -0.12658, -0.03389, 0.0415, 0.04314, 0.04059, 0.29338, 0.06103, 0.09868, -0.158, -0.02698, 0.13607, 0.18051, 0.31427, -0.11063, -0.06219, -0.26872, -0.05987, 0.0964, -0.05682, 0.01883, -0.1142, 0.04519, -0.00523, 0.00879, -0.01061, -0.06506, -0.00929, -0.08548, 0.03245, -0.01641, -0.02854, -0.01467, 0.0002, 0.04815, 0.05999, 0.05946, 0.04492, 0.00296, 0.05625, -0.02904, -0.10569, -0.00639, -0.04582, -0.01205, 0.06098, 0.03978, -0.04172, -0.01762, 0.02069, 0.02131, -0.03777, -0.1268, -0.06506, 0.08241, 0.15167, -0.28526, 0.03315, 0.03626, -0.0453, 0.05128, -0.05341, -0.0844, -0.00066, 0.07348, -0.0061, -0.04885, 0.09427, -0.08667, -0.06275, 0.06892, 0.04037, 0.16486, -0.25668, -0.12333, -0.04046, -0.18015, 0.02833, -0.05147, 0.00678, -0.02711, -0.00636, 0.02232, -0.02177, -0.00788, 0.00656, -0.00997, -0.00049, -0.00682, -0.00101, 8e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0.00226, 0.09252, 0.11863, 0.2076, 0.01749, 0.23241, -0.03695, -0.10468, 0.02023, -0.06292, 0.14479, 0.03187, -0.00498, -0.06724, 0.00817, -0.07297, -0.02699, 0.00795, 0.05422, -0.0315, 0.00114, -0.0468, -0.04321, 0.03198, 0.03889, -0.06598, 0.00644, -0.02935, 0.03113, 0.14678, 0.04395, -0.08303, -0.03853, -0.09111, -0.0748, -0.05638, -0.06366, -0.0431, 0.02634, -0.06314, 0.0932, 0.093, -0.02944, -0.14707, -0.01059, -0.04537, 0.01281, 0.06648, -0.01111, -0.01706, 0.07451, 0.02378, 0.01164, -0.02742, 0.05271, 0.06099, 0.03923, -0.05308, -0.04684, 0.01611, -0.0125, 0.03652, -0.01808, -0.04374, -0.04633, -0.0158, -0.01119, -0.03876, -0.0839, -0.1282, -0.03426, -0.09202, 0.03971, 0.04477, 0.02352, 0.083, 0.00818, 0.03804, 0.02986, -0.0013, 0.01519, 0.00169, -0.00431, -0.00387, -0.04838, 0.00075, -0.0395, 0.14201, 0.00819, -0.10007, 0.04979, 0.03733, -0.10088, -0.09204, -0.04303, -0.00669, -0.03645, 0.03756, 0.10338, -0.11723, 0.00346, 0.03557, 0.02327, 0.10418, -0.02919, -0.2525, -0.04085, -0.07114, 0.03414, -0.23531, -0.03477, 0.19926, -0.22445, -0.24596, -0.20197, -0.27155, 0.28581, -0.08458, 0.11767, 0.04103, -0.0237, 0.13691, -0.0102, -0.00552, -0.04756, -0.00833, 0.00531, 0.00083, -0.01593, 0.00142, -0.00989, -0.04778, 0.00075, -0.00116, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.0373, 0.01136, 0.06714, -0.05363, 0.03771, -0.16369, -0.12576, -0.08302, -0.10569, -0.02657, 0.03429, -0.14098, 0.07217, 0.03633, -0.02685, -0.01078, 0.02011, -0.04267, 0.01191, -0.00499, 0.03969, -0.07733, -0.0491, 0.09156, -0.0054, 0.03593, 0.01702, 0.03139, 0.10044, 0.0163, -0.08791, 0.07471, 0.08523, 0.03899, 0.08952, -0.00931, 0.0771, -0.03066, -0.00517, -0.07248, -0.16983, 0.02831, 0.08101, -0.11976, -0.01038, 0.19758, 0.11755, 0.05315, -0.04471, 0.06175, 0.05588, 0.01248, 0.00233, -0.02775, 0.07271, -0.03551, 0.188, 0.04144, -0.04514, -0.15231, 0.02518, 0.02154, -0.06098, 0.02086, -0.04154, 0.05253, -0.07562, 0.01021, 0.0541, 0.02965, 0.14288, 0.0017, -0.00175, -0.01448, -0.05441, -0.05012, 0.07887, -0.02874, -0.05281, -0.01382, -0.06324, 0.01698, -0.08413, -0.02929, -0.0162, 0.05492, -0.00141, -0.0983, -0.02824, 0.05104, -0.18715, 0.00049, 0.16823, -0.03326, 0.03122, 0.32645, -0.03101, -0.13748, -0.2186, 0.35413, -0.01057, -0.04673, 0.08399, -0.05867, 0.17548, 0.02437, -0.02649, -0.11203, 0.0152, 0.03406, -0.03372, 0.08474, -0.03323, -0.06501, -0.08708, -0.17675, 0.19275, 0.03441, 0.04477, 0.06876, -0.06632, 0.06346, -0.00027, -0.01045, 0.0093, 0.00408, 0.01787, 0.00418, -0.0051, -0.01465, -0.00208, 0.00055, 0.00027, -2e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -0.00197, 0.04174, 0.11247, 0.1103, 0.0348, 0.08123, -0.07329, -0.07161, 0.02924, -0.07603, 0.13185, 0.04999, -0.05101, -0.03113, 0.0165, -0.06393, 0.00274, 0.05395, 0.1038, -0.05798, -0.01066, -0.08354, 0.06494, 0.06373, -0.00756, -0.01592, -0.0797, -0.03884, 0.07377, 0.0349, -0.02509, 0.08282, -0.05851, 0.02633, -0.1307, -0.09052, -0.08772, -0.06654, 0.0759, -0.00325, 0.18011, 0.05422, -0.00874, -0.24245, -0.03284, -0.05842, -0.0033, -0.00324, -0.03125, -0.06323, 0.06541, 0.05435, 0.05097, -0.05077, 0.01987, 0.13285, 0.05908, -0.06444, -0.03698, 0.0186, -0.03762, 0.03763, -0.04316, -0.07493, 0.04607, 0.0283, 0.12467, 0.07887, -0.08706, -0.19935, -0.27399, -0.09463, 0.00124, 0.03489, 0.02844, 0.13598, -0.1143, -0.00987, 0.08485, -0.02134, 0.1226, 0.04815, 0.07902, 0.06062, -0.05833, -0.00528, -0.01243, 0.04381, -0.05379, -0.17588, -0.01783, 0.01699, -0.02979, -0.07596, 0.034, 0.16392, 0.25368, -0.11234, -0.03312, 0.28057, -0.12886, -0.03021, -0.01579, -0.10799, -0.0074, 0.18901, 0.02138, -0.00694, -0.05669, 0.15748, 0.0014, -0.07778, 0.12387, 0.11947, 0.12189, 0.12548, -0.12477, 0.09552, -0.03937, 0.02036, 0.00191, -0.07356, 0.00941, 0.0036, 0.0384, -0.02151, 0.00339, 0.00705, 0.00619, -0.00629, -0.00628, -0.05285, 0.0001, -0.00087, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -}; - -static const cv::Mat yaw00_eigvecs(154, 154, CV_64FC1, (double *)yaw00_eigvecsdata); - -} // namespace stasm -#endif // STASM_YAW00_SHAPEMODEL_MH diff --git a/3rdparty/stasm4.0.0/stasm/include/classicdesc.h b/3rdparty/stasm4.0.0/stasm/include/classicdesc.h deleted file mode 100755 index 500c3d8..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/classicdesc.h +++ /dev/null @@ -1,59 +0,0 @@ -// classicdesc.h: model for classic ASM descriptors -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_CLASSICDESC_H -#define STASM_CLASSICDESC_H - -#include "misc.h" -#include "basedesc.h" -#include "stasmhash.h" - -namespace stasm -{ -static const int CLASSIC_MAX_OFFSET = 2; // search +-2 pixels along the whisker -static const int CLASSIC_SEARCH_RESOL = 2; // search resolution, every 2nd pix - -extern void ClassicDescSearch( // search along whisker for best profile match - double& x, // io: (in: current posn of the point, out: new posn) - double& y, // io: - const Image& img, // in: the image scaled to this pyramid level - const Shape& inshape, // in: current posn of landmarks (for whisker directions) - int ipoint, // in: index of the current landmark - const MAT& meanprof, // in: mean of the training profiles for this point - const MAT& covi); // in: inverse of the covar of the training profiles - -class ClassicDescMod: public BaseDescMod -{ -public: - virtual void DescSearch_(double& x, double& y, // io - const Image& img, const Shape& shape, // in - int, int ipoint, const Hat &hat, StasmHash &hash) const // in - { - (void) hat; - (void) hash; - - ClassicDescSearch(x, y, img, shape, ipoint, meanprof_, covi_); - } - - ClassicDescMod( // constructor - int profwidth, - const double* const meanprof_data, - const double* const covi_data) - - : meanprof_(ArrayAsMat(1, profwidth, meanprof_data)), - covi_(ArrayAsMat(profwidth, profwidth, covi_data)) - { - } - -private: - const MAT meanprof_; // mean of the training profiles for this point - const MAT covi_; // inverse of the covariance of the training profiles - - DISALLOW_COPY_AND_ASSIGN(ClassicDescMod); - -}; // end class ClassicDescMod - - -} // namespace stasm -#endif // STASM_CLASSICDESC_H diff --git a/3rdparty/stasm4.0.0/stasm/include/convshape.h b/3rdparty/stasm4.0.0/stasm/include/convshape.h deleted file mode 100755 index f94f116..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/convshape.h +++ /dev/null @@ -1,17 +0,0 @@ -// convshape.cpp: convert a stasm 77 point shape to other formats -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_CONVSHAPE_H -#define STASM_CONVSHAPE_H - -#include "misc.h" - -namespace stasm -{ -Shape ConvertShape( // return shape with nlandmarks, return no rows if can't - const Shape& shape, // in - int nlandmarks); // in: 77=nochange, 76=stasm3, 68=xm2vts, 22=ar, 20=bioid, 17=me17 - -} // namespace stasm -#endif // STASM_CONVSHAPE_H diff --git a/3rdparty/stasm4.0.0/stasm/include/err.h b/3rdparty/stasm4.0.0/stasm/include/err.h deleted file mode 100755 index 89b38f7..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/err.h +++ /dev/null @@ -1,16 +0,0 @@ -// err.h: error handling for Stasm -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_ERR_H -#define STASM_ERR_H - -namespace stasm -{ -void CatchOpenCvErrs(void); -void UncatchOpenCvErrs(void); -void Err(const char* format, ...); -const char* LastErr(void); // return the last error message - -} // namespace stasm -#endif // STASM_ERR_H diff --git a/3rdparty/stasm4.0.0/stasm/include/eyedet.h b/3rdparty/stasm4.0.0/stasm/include/eyedet.h deleted file mode 100755 index 50d03bb..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/eyedet.h +++ /dev/null @@ -1,24 +0,0 @@ -// eyedet.h: interface to OpenCV eye and mouth detectors -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_EYEDET_H -#define STASM_EYEDET_H - -#include "misc.h" -#include "asm.h" -#include "stasmcascadeclassifier.h" - -namespace stasm -{ -void OpenEyeMouthDetectors( // possibly open OpenCV eye detectors and mouth detector - const vec_Mod& mods, // in: the ASM models (used to see if we need eyes or mouth) - const char* datadir); // in - -void DetectEyesAndMouth( // use OpenCV detectors to find the eyes and mouth - DetPar& detpar, // io: eye and mouth fields updated, other fields untouched - const Image& img, // in: ROI around face (already rotated if necessary) - StasmCascadeClassifier cascade); - -} // namespace stasm -#endif // STASM_EYEDET_H diff --git a/3rdparty/stasm4.0.0/stasm/include/eyedist.h b/3rdparty/stasm4.0.0/stasm/include/eyedist.h deleted file mode 100755 index 0546563..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/eyedist.h +++ /dev/null @@ -1,19 +0,0 @@ -// eyedist.h: calculate eye-mouth and inter-eye dist -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_EYEDIST_H -#define STASM_EYEDIST_H - -#include "misc.h" - -namespace stasm -{ -double EyeMouthDist( // eye-mouth distance of a face shape - const Shape& shape); // in - -double InterEyeDist( // inter-pupil distance of a face shape - const Shape& shape); // in: - -} // namespace stasm -#endif // STASM_EYEDIST_H diff --git a/3rdparty/stasm4.0.0/stasm/include/facedet.h b/3rdparty/stasm4.0.0/stasm/include/facedet.h deleted file mode 100755 index e752c37..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/facedet.h +++ /dev/null @@ -1,56 +0,0 @@ -// facedet.h: find faces in images (frontal model version) -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_FACEDET_H -#define STASM_FACEDET_H - -#include - -#include "misc.h" -#include "print.h" - -namespace stasm -{ -class FaceDet -{ -public: - void OpenFaceDetector_( // called by stasm_init, init face det from XML file - const char* datadir, // in: directory of face detector files - void* detparams); // in: unused (func signature compatibility) - - // Call DetectFaces_ once per image. Then call NextFace_ repeatedly to get - // all the faces in the image, one by one. When there are no more faces in - // the image, NextFace_ will return detpar.x set to INVALID. - // - // Note: This version of NextFace_ always sets detpar.rot to INVALID. - // Thus the calling routine (StartShapeAndRoi1) must estimate the - // rotation from the intereye angle. However, if an alternative - // implementation were to initialize detpar.rot, StartShapeAndRoi1 would - // use it (instead of estimating it from the eye angle). - - void DetectFaces_( // call once per image to find all the faces - const Image& img, // in: the image (grayscale) - const char* imgpath, // in: unused (match virt func signature) - bool multiface, // in: if false, want only the best face - int minwidth, // in: min face width as percent of img width - void* user, - cv::CascadeClassifier cascade); // in: unused (match virt func signature) - - const DetPar NextFace_(void); // get next face from faces found by DetectFaces_ - - FaceDet() {} // constructor - - -private: - vector detpars_; // all the valid faces in the current image - - int iface_; // index of current face for NextFace_ - // indexes into detpars_ - - DISALLOW_COPY_AND_ASSIGN(FaceDet); - -}; // end class FaceDet - -} // namespace stasm -#endif // STASM_FACEDET.H diff --git a/3rdparty/stasm4.0.0/stasm/include/faceroi.h b/3rdparty/stasm4.0.0/stasm/include/faceroi.h deleted file mode 100755 index 3b4fb42..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/faceroi.h +++ /dev/null @@ -1,45 +0,0 @@ -// faceroi.h: face ROI, and translation from image frame to the ROI -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_FACEROI_H -#define STASM_FACEROI_H - -#include "misc.h" - -namespace stasm -{ -// RoiFrac controls the size of the ROI area around the face. So for -// example leftfrac is the distance from the center to the left margin in -// units of the original detector rect width. So ROI_FRAC=.5, say, would -// return the original face detector rectangle. - -static const double ROI_FRAC = 1.0; // ROI is double the face detector width - -Shape ImgShapeToRoiFrame( // return shape in ROI frame - const Shape& shape, // in: shape in image frame - const DetPar& detpar_roi, // in: detpar wrt the ROI - const DetPar& detpar); // in - -Shape RoiShapeToImgFrame( // return shape in image frame - const Shape& shape, // in: shape in roi frame - const Image& face_roi, // in - const DetPar& detpar_roi, // in: detpar wrt the ROI - const DetPar& detpar); // in: detpar wrt the image - -void PossiblySetRotToZero( // avoid rotating the image unnecessarily - double& rot); // io - -void FaceRoiAndDetPar( // extract ROI around the face, rotate if necessary - Image& face_roi, // out - DetPar& detpar_roi, // out: detpar wrt the ROI - const Image& img, // in: original image - const DetPar& detpar, // in: wrt img frame, only x,y,w,h,rot used - bool flip, // in: mirror the ROI - double botfrac = ROI_FRAC, // in: distance from center to bottom marg - double leftfrac = ROI_FRAC, // in: dist from center to left marg - double topfrac = ROI_FRAC, // in - double rightfrac = ROI_FRAC); // in - -} // namespace stasm -#endif // STASM_FACEROI_H diff --git a/3rdparty/stasm4.0.0/stasm/include/hat.h b/3rdparty/stasm4.0.0/stasm/include/hat.h deleted file mode 100755 index 0cabb0e..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat.h +++ /dev/null @@ -1,50 +0,0 @@ -// hat.h: Histogram Array Transform descriptors -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_HAT_H -#define STASM_HAT_H - -#include "misc.h" - -namespace stasm -{ -class Hat -{ -public: - void Init_( // init the HAT internal grad mat and indices - const Image& img, // in: image ROI scaled to the current pyr lev - const int patchwidth); // in: patch will be patchwidth x patchwidth pixs - - VEC Desc_( // return HAT descriptor, Init_ must be called first - const double x, // in: x coord of center of patch (may be off image) - const double y) // in: y coord of center of patch (may be off image) - const; - - Hat() {} // constructor - -private: - // All these private variables are initialized by Hat::Init_. They must - // be initialized if the image changes or if the patch width changes. - // (In a Stasm context, that means they must be initialized once per - // pyramid level. Also, for safe use of OpenMP in SuggestShape_, - // they must not change unless the pyramid level changes.) - - int patchwidth_; // image patch is patchwidth x patchwidth pixels - - MAT magmat_; // grad mag of the current image (face ROI) - MAT orientmat_; // grad orient of the current image (face ROI) - - vec_int row_indices_; // histogram indices: these map a patch row,col - vec_double row_fracs_; // to the corresponding histogram grid row,col - vec_int col_indices_; - vec_double col_fracs_; - - vec_double pixelweights_; // weight pixel by closeness to center of patch - - //DISALLOW_COPY_AND_ASSIGN(Hat); - -}; // end class Hat - -} // namespace stasm -#endif // STASM_HAT_H diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/README.txt b/3rdparty/stasm4.0.0/stasm/include/hat/README.txt deleted file mode 100755 index c10872b..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/README.txt +++ /dev/null @@ -1,3 +0,0 @@ -These are machine generated fitness function files for HAT descriptors. - -milbo berea feb 2013 diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p16.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p16.mh deleted file mode 100755 index edef39c..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p16.mh +++ /dev/null @@ -1,84 +0,0 @@ -// hat_yaw00_lev0_p16.mh: - -#ifndef stasm_hat_yaw00_lev0_p16_mh -#define stasm_hat_yaw00_lev0_p16_mh - -#include "hatdesc.h" - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double linmod( - const double* const x, - const double intercept, - const double* const coef, - const int n) -{ -#if 0 // unoptimized - double yhat = intercept; - for (int i = 0; i < n; i++) - yhat += coef[i] * x[i]; -#else // optimized - double yhat = intercept; - const int n4 = n - 4; - int i = 0; - if(n4 > 0) - { - for(; i < n4; i += 4) - yhat += coef[i] * x[i] + - coef[i+1] * x[i+1] + - coef[i+2] * x[i+2] + - coef[i+3] * x[i+3]; - } - for(; i < n; i++) - yhat += coef[i] * x[i]; -#endif - return yhat; -} - -static double hatfit_yaw00_lev0_p16(const double* const d) // d has 160 elements -{ - const double intercept = -0.453369; - const double coef[160] = - { - 0.00372542, 0.0408172, 0.000737811, -0.000469039, 0.0199883, 0.104104, -0.072967, -0.0275536, - 0.0476482, 0.0336855, -0.0625293, 0.0792134, 0.00844284, 0.0468283, 0.0281004, 0.0429594, - 0.0212684, 0.0140295, 0.0240473, -0.0444501, -0.049152, -0.0138905, -0.0490636, 0.0464706, - 0.0380844, 0.0840699, -0.0444403, -0.00255277, 0.0189272, -0.0150143, 0.00990336, 0.140653, - -0.0174406, 0.00474267, 0.0852838, -0.05192, 0.0539234, -0.0022161, -0.081763, 0.0722966, - -0.00548851, -0.0938881, 0.0814419, -0.0662686, -0.034123, -0.0718359, 0.0380273, 0.0507774, - -0.00923894, -0.0135537, -0.0292176, 0.0644432, -0.0330563, -0.0387574, 0.0603047, 0.0415176, - -0.00796904, -0.0389034, 0.0408463, 0.0205151, 0.0021938, -0.0184184, 0.037596, -0.0300464, - -0.0635431, -0.0548118, 0.0293951, -0.0222044, 0.0166339, 0.025922, 0.010845, -0.11305, - 0.0452315, 0.0574284, -0.00512447, 0.0343274, 0.000738636, 0.0617322, -0.00445308, -0.0830076, - -0.0238772, 0.0369547, -0.0520601, 0.00859127, -0.030047, 0.0840427, 0.0609438, -0.0344356, - 0.0696376, -0.0160002, 0.0450477, 0.0209688, 0.013092, 0.0779064, 0.0238193, 0.0204056, - -0.0355255, 0.0530715, 0.0188183, -0.0320216, -0.020793, 0.000797391, -0.00462265, -0.00987595, - 0.0478896, 0.0397222, 0.0361005, 0.0190977, 0.0395541, -0.00440083, -0.0321619, 0.0214029, - -0.114959, -0.0563459, 0.0130055, -0.0112418, 0.0355367, -0.0397584, 0.135856, 0.145345, - -0.0185943, -0.0725598, 0.0794152, 0.015131, 0.0323186, 0.0151301, -0.0107669, 0.0614654, - 0.0280355, -0.0114101, -0.00805179, -0.00991979, 0.0205382, -0.056034, -0.0430887, -0.0824119, - -0.0260952, -0.0149136, -0.0502353, -0.00269792, 0.014834, 0.0114513, 0.0327027, 0.0182124, - -0.0395778, 0.00702357, -0.0422405, 0.0382446, -0.0188065, 0.0273028, -0.055736, 0.0248173, - 0.0623721, 0.0660628, 0.0572871, -0.0611501, -0.0541477, 0.0390754, -0.0566607, -0.00659149 - }; - return linmod(d, intercept, coef, NELEMS(coef)); -} - -static const HatDescMod hat_yaw00_lev0_p16(hatfit_yaw00_lev0_p16); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p16_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p17.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p17.mh deleted file mode 100755 index 0f71e4b..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p17.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p17.mh: - -#ifndef stasm_hat_yaw00_lev0_p17_mh -#define stasm_hat_yaw00_lev0_p17_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p17(const double* const d) // d has 160 elements -{ - const double intercept = -0.218036; - const double coef[160] = - { - 0.0683249, -0.0203007, 0.0437479, -0.028014, 0.0396198, 0.07016, -0.0468982, -0.0259897, - -0.0622189, -0.0324751, -0.061037, 0.0104632, 0.0236188, 0.0370506, 0.00178595, -0.069793, - -0.0262223, -0.0176854, -0.0360734, 0.00220166, 0.00282252, 0.0230145, -0.0555133, -0.0038649, - 0.0499822, 0.00946226, -0.00238031, -0.0487058, 0.105226, 0.0349072, -0.0302182, -0.0275999, - -0.0118505, 0.0442187, 0.00298641, 0.0273259, -0.0301957, 0.0258648, -0.0449226, 0.00234286, - -0.0232926, 0.0514649, 0.0400287, 0.0257169, -0.0117925, -0.0964899, -0.0453559, -0.00469365, - 0.0470646, 0.0145707, 0.042109, 0.0278525, -0.0539993, -0.0522365, 0.0524767, 0.0456086, - 0.0164593, 0.00268727, 0.0112625, -0.00506042, -0.011258, -0.0240507, 0.0436929, 0.0601421, - -0.039606, -0.0346194, 0.00646708, 0.0229158, -0.0318843, -0.0404174, 0.0817063, -0.010425, - 0.0745994, -0.032075, 0.0289402, -0.0337813, -0.071726, -0.00583817, 0.0326242, -0.0501133, - -0.0131024, 0.0061786, 0.00968947, -0.0255766, 0.00189238, 0.0985391, 0.0785375, -0.00249855, - 0.0398805, -0.0438232, -0.0327165, -0.0576398, 0.00629697, 0.129408, -0.0423841, -0.000809985, - -0.0326506, 0.0193708, 0.0359597, 0.00228456, 0.0168887, 0.0272311, -0.0330574, 0.0310251, - 0.0296366, 0.0245575, -0.0220943, -0.00788083, 0.0502952, 0.0487056, 0.00866824, 0.0643618, - -0.0827267, -0.00464663, 0.00968494, -0.00527354, -0.0241566, 0.0223436, -0.0177934, 0.0882853, - -0.00681881, 0.0363687, -0.0555716, -0.00305075, -0.0901926, 0.00361665, -0.00991696, 0.0680083, - 0.0124782, 0.0261691, 0.0408441, 0.032473, 0.0658858, -0.021588, -0.00784608, 0.0391355, - 0.0140649, -0.0152375, 0.00161421, -0.0106747, 0.023684, -0.0630555, -0.0165086, -0.0059009, - 0.0356548, -0.0079108, 0.0113296, 0.0240113, 0.0150257, -0.023987, 0.0218905, -0.0916508, - -0.035231, 0.00245323, 0.0197736, 0.00212028, 0.0302151, 0.0156463, -0.0163954, -0.0216011 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p17(hatfit_yaw00_lev0_p17); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p17_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p18.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p18.mh deleted file mode 100755 index fe1c662..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p18.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p18.mh: - -#ifndef stasm_hat_yaw00_lev0_p18_mh -#define stasm_hat_yaw00_lev0_p18_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p18(const double* const d) // d has 160 elements -{ - const double intercept = -0.346979; - const double coef[160] = - { - 0.0279532, -0.00609398, -0.012312, -0.00494513, 0.0378928, -0.00655823, 0.0462203, -0.0347771, - 0.0015831, 0.00535257, 0.0719783, -0.0375053, 0.00281042, -0.00157322, -0.0205927, 0.00629932, - 0.0519524, 0.0258327, -0.0472468, -0.0891186, 0.00603156, 0.0143309, -0.0234561, 0.0408229, - 0.0407427, -0.0314612, -0.0106707, -0.0412636, -0.0483126, 0.0524159, 0.0622703, -0.0065942, - 0.0135314, 0.0206874, 0.0250781, 0.0601108, -0.0175944, -0.0143739, -0.0189961, 0.0333546, - -0.0134624, -0.0120986, 0.0562662, 0.0118215, 0.0290007, 0.0311979, -0.0552341, 0.0451829, - -0.00138903, 0.0264013, -0.0932642, 0.0397548, 0.0655217, -0.0989104, 0.0446394, -0.0702257, - -0.0818234, -0.0323151, -0.0265924, 0.00359564, 0.135021, 0.0855873, -0.0117275, 0.0896797, - -0.0246237, 0.0604119, 0.0185726, 0.043299, -0.000698394, 0.0199644, 0.0876209, 0.0203925, - -0.0521624, 0.0272489, -0.0134243, -0.0419231, 0.0316835, -0.0520323, -0.037041, -0.0567536, - -0.0104151, 0.0225628, -0.00257791, 0.0205395, -0.0635785, -0.0707263, 0.0282968, 0.00510694, - 0.055994, -0.0133663, -0.0496851, 0.00689356, -0.013058, 0.0345494, 0.0336366, 0.0365501, - 0.0559076, 0.116704, 0.059131, 0.0857358, -0.0259943, -0.0947445, -0.00130131, -0.00968489, - 0.0170973, 0.00882214, -0.019839, -0.0121337, -0.0706856, 0.0208661, -0.000796458, -0.0332526, - 0.048445, 0.0245023, 0.0330112, 0.0555513, 0.0117985, -0.00190937, -0.0147076, 0.0266679, - 0.0114275, 0.00474427, -0.00714072, -0.0207511, 0.0183546, -0.00457808, 0.0389253, -0.0324772, - 0.0391394, -0.0915276, -0.00201296, 0.0936573, -0.0356517, 0.0278646, -0.0167872, -0.0570991, - -0.0312248, -0.0472778, -0.0131381, -0.04727, -0.00623392, 0.0609824, 0.033506, -0.00103341, - -0.0107256, -0.00662675, 0.0404214, -0.00269178, 0.0703617, -0.0677402, -0.0146087, 0.028654, - 0.0266917, -0.00757196, -0.0186592, -0.0290862, -0.0407427, 0.0995922, -0.0159115, 0.0419094 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p18(hatfit_yaw00_lev0_p18); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p18_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p19.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p19.mh deleted file mode 100755 index 8e3ad42..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p19.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p19.mh: - -#ifndef stasm_hat_yaw00_lev0_p19_mh -#define stasm_hat_yaw00_lev0_p19_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p19(const double* const d) // d has 160 elements -{ - const double intercept = -0.208389; - const double coef[160] = - { - -0.00183766, 0.0107511, -0.0411311, -0.069132, -0.0247103, 0.11925, 0.0537726, 0.0710876, - -0.000622952, 0.0154106, -0.0752117, -0.0342188, -0.0298825, -0.0378929, -0.10657, -0.0431747, - 0.0124295, 0.0146126, 0.00375325, 0.00842015, 0.0563219, -0.0183824, 0.00888441, -0.0291838, - 0.072871, -0.0170712, 0.00995424, 0.0253749, 0.0228285, 0.0543796, 0.0056957, 0.0112109, - 0.0225286, 0.0380625, -0.10313, 0.00479916, 0.0316051, 0.0421267, 0.058587, 0.0372101, - -0.0191445, -0.0203896, 0.0154654, 0.0471993, 0.00517509, -0.00268149, 0.0529576, -0.0143109, - 0.00752285, -0.00704421, 0.107428, 0.043463, 0.102785, -0.00722921, -0.00216775, 0.0641935, - -0.0579854, -0.00697146, -0.0111541, 0.0420899, 0.0749652, -0.0134849, 0.0375334, 0.0206827, - -0.0560198, 0.022214, 0.0558911, 0.0142093, -0.0555831, -0.0274554, -0.0626592, -0.0368935, - -0.0665352, -0.0714393, 0.0294576, -0.0460599, 0.0160245, -0.00671722, 0.0451949, -0.0347614, - 0.000967578, 0.0374, -0.0206688, 0.0101224, -0.0918418, -0.0136, -0.0529591, 0.0166251, - -0.00747454, 0.0565966, 0.0483812, -0.0384652, -0.0183018, -0.00405736, -0.0287864, -0.0136777, - 0.0289734, 0.0477801, -0.0329041, -0.00266396, -0.0532572, 0.011926, 0.05369, -0.0539863, - 0.0649387, 0.0397214, 0.0397163, 0.0420561, 0.0629613, 0.0361158, -0.00679125, 0.0371072, - -0.0412087, -0.0227813, -0.0844829, 0.0291781, -0.0579978, -0.00143226, 0.0394032, 0.0107211, - -0.0273922, -0.0176209, -0.038932, 0.0271722, 0.0018003, 0.0251344, -0.0398722, 0.0207583, - 0.0152829, -0.000512818, 0.00218805, 0.00722604, -0.0124995, 0.0153049, -0.00655756, -0.00220635, - 0.055623, -0.0407522, -0.0198396, -0.00981851, -0.00818717, 0.00632632, 0.0182355, 0.0171908, - -0.0211489, 0.0371114, 0.0201203, -0.0139588, 0.0256957, -0.0265248, -0.00914639, 0.048062, - 0.0512009, -0.0320212, -0.00366201, -0.0570103, 0.0256294, -0.0194269, 0.0519483, -0.0666447 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p19(hatfit_yaw00_lev0_p19); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p19_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p20.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p20.mh deleted file mode 100755 index 3bc8e61..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p20.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p20.mh: - -#ifndef stasm_hat_yaw00_lev0_p20_mh -#define stasm_hat_yaw00_lev0_p20_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p20(const double* const d) // d has 160 elements -{ - const double intercept = -0.346412; - const double coef[160] = - { - -0.0286608, 0.0951036, -0.0327747, -0.0271802, 0.102846, 0.039376, 0.0353439, -0.0426993, - 0.0391377, -0.0328533, -0.0410657, 0.0300066, 0.0247419, 0.0569735, 0.0533487, 0.0452141, - -0.0231817, 0.0502113, 0.0299987, -0.00641472, -0.0140579, 0.00708176, -0.0387248, -0.0147432, - -0.0177277, 0.038825, -0.111956, 0.0589898, 0.0588439, 0.0406529, 0.0310129, 0.0208808, - -0.0560495, -0.0709817, -0.0205542, 0.0534646, -0.0107228, -0.0398226, 0.00469786, 0.071798, - 0.0515842, -0.0627954, 0.108556, 0.103465, -0.0148225, -0.0351119, 0.0162062, 0.0511674, - 0.0118936, 0.023535, -0.0777513, -0.0295178, -0.00825485, -0.0535634, -0.0185874, -0.0287938, - 0.0506453, 0.0605264, -0.031215, 0.00321995, -0.0919029, -0.0122494, 0.0571264, 0.0581768, - 0.0280823, 0.0299377, 0.0286797, -0.0551839, -0.0552998, -0.0570511, -0.062882, -0.00878156, - 0.024091, 0.155557, 0.130379, -0.00454334, 0.0509226, 0.0608662, 0.00100265, -0.0100532, - -0.0259997, 0.0104091, -0.0116434, -0.0956454, -0.0569437, 0.043192, -0.00818788, -0.0371528, - -0.0949212, -0.0514707, 0.012307, -0.0121952, 0.05877, -0.0115497, 0.0333092, 0.0435442, - 0.00254519, -0.0426229, -0.0223494, 0.0642868, 0.042703, 0.070624, 0.0307296, -0.0207046, - -0.0695558, 0.00618685, 0.00445891, 0.0730341, 0.0549234, -0.0169157, 0.0221027, -0.0296842, - -0.0515455, -0.107785, 0.107671, -0.0431493, -0.0508154, -0.0902502, -0.0481087, 0.0340644, - 0.0554758, -0.0339273, -0.0365555, 0.0281108, 0.0620176, -0.0459229, 0.031228, -0.0152928, - 0.0430206, 0.00508139, 0.0286267, -0.0327993, -0.0639462, 0.0235737, -0.0127588, -0.0567247, - -0.0682092, 0.0397133, -0.0240483, 0.00414567, 0.0158482, 0.0947935, 0.000938787, 0.00180105, - 0.0683938, -0.0324453, 0.0695978, 0.0287013, -0.0173739, -0.0416173, 0.0970442, -0.0297747, - -0.0231911, 0.179173, -0.178513, 0.12144, 0.0264204, -0.0207417, -0.078799, 0.0657955 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p20(hatfit_yaw00_lev0_p20); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p20_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p21.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p21.mh deleted file mode 100755 index c5bfddc..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p21.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p21.mh: - -#ifndef stasm_hat_yaw00_lev0_p21_mh -#define stasm_hat_yaw00_lev0_p21_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p21(const double* const d) // d has 160 elements -{ - const double intercept = -0.34824; - const double coef[160] = - { - -0.0195837, -0.0594427, 0.0457297, -0.0413416, 0.101627, 0.0217043, -0.029393, 0.00546025, - -0.0540456, -0.0397525, -0.01759, 0.0399782, -0.0627363, -0.00551, 0.0579196, -0.0233754, - -0.0618483, -0.0533419, 0.0931547, -0.0217088, -0.00445169, 0.0941263, -0.0172428, 0.0791302, - -0.0432993, 0.0106155, -0.0346444, 0.0223171, -0.0984627, 0.00918708, -0.0503243, 0.00080812, - 0.0299071, 0.00854695, -8.61801e-05, -0.034618, 0.0524551, 0.0592769, 0.0332315, -0.0175941, - 0.0704596, 0.0118745, -0.070569, -0.0608147, 0.0118855, -0.0524116, 0.00211147, 0.124916, - 0.12147, 0.140212, 0.0475706, 0.0479433, 0.0163665, 0.0381531, -0.0668795, 0.023937, - 0.0540888, 0.00455889, -0.0194539, -0.00652279, 0.0051461, 0.0645376, -0.015857, 0.0389891, - 0.0516941, -0.0488854, 0.0378676, 0.0101942, 0.0745091, -0.054975, 0.0337688, 0.0644061, - 0.0451348, 0.0417211, -0.0399779, 0.0579709, -0.067052, -0.0125574, -0.0226409, 0.00421459, - -0.0995039, 0.017169, -0.0155152, -0.00951508, -0.0337954, -0.00524042, 0.115079, 0.00692938, - -0.129372, -0.012522, 0.0807145, 0.0604363, 0.00431702, -0.0916494, -0.0258139, -0.079287, - -0.0536237, 0.0852263, 0.0361908, 0.0372607, -0.00782468, -0.0495553, -0.0255199, -0.0968385, - -0.0536882, -0.0107084, -0.173729, -0.00902773, 0.0532978, 0.0271752, 0.0834321, -0.0317612, - -0.0898749, -0.0115822, 0.0109603, 0.0122497, -0.0838939, 0.00349276, 0.0359618, 0.00210141, - 0.0164206, -0.00459711, -0.0565242, 0.0478835, 0.022732, 0.0276373, -0.0111648, 0.022311, - 0.0084677, -0.0174473, -0.0012797, -0.041379, 0.0185713, -0.0206573, -0.0175031, -0.0437209, - 0.0616481, 0.0803273, 0.0246928, -0.00771595, -0.0120789, 0.0229895, 0.00328345, 0.086165, - 0.0591702, -0.00227974, -0.0174336, -0.027642, -0.00513335, -0.031001, 0.0534461, 0.100458, - 0.0877585, 0.00683638, 0.0161599, 0.0050948, -0.00925309, 0.00351326, -0.0695949, 0.0209707 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p21(hatfit_yaw00_lev0_p21); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p21_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p22.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p22.mh deleted file mode 100755 index 8e3eb64..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p22.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p22.mh: - -#ifndef stasm_hat_yaw00_lev0_p22_mh -#define stasm_hat_yaw00_lev0_p22_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p22(const double* const d) // d has 160 elements -{ - const double intercept = -0.340623; - const double coef[160] = - { - 0.077366, -0.0179264, 0.0221829, 0.00795535, 0.0345754, 0.0202614, 0.00176053, 0.0884274, - -0.102187, 0.00262938, -0.0444367, 0.0313732, -0.00135842, -0.0432315, -0.0364142, -0.0230328, - 0.00162904, -0.0075949, 0.0197524, -0.0679611, -0.0785347, 0.0847102, -0.0231708, 0.0662738, - -0.0178015, 0.0290901, 0.0148009, 0.00471732, -0.0579362, 0.018517, 0.0640303, 0.0346783, - 0.0490363, 0.00071375, 0.0232078, -0.076379, -0.0428451, -0.0259892, -0.0229649, 0.00462463, - -0.0633472, -0.00580997, 0.0242909, 0.056505, 0.0794106, -0.0435104, -0.00520999, -0.0784562, - 0.04692, 0.00275828, 0.0129567, -0.0845916, 0.0223295, 0.0776586, 0.00153567, -0.0198989, - 0.021552, 0.0318699, -0.0453227, 0.0258261, 0.0751738, 0.0360315, 0.0598211, 0.0891124, - 0.022844, 0.0258083, 0.0695306, 0.0783963, 0.1172, 0.0623024, -0.0838097, 0.0312752, - -0.00789437, -0.0489868, -0.0635873, 0.0519728, 0.0607013, 0.0984664, -0.0198633, -0.057964, - -0.0577819, -0.0191734, 0.0375784, -0.00779198, -0.149572, -0.0123264, 0.00389833, -0.0147415, - 0.0849692, -0.0544888, -0.155994, -0.00718992, 0.00879691, -0.0125904, 0.0995839, 0.103228, - -0.0280681, 0.0575173, 0.052586, 0.0534184, -0.0749574, -0.0494579, -0.0313825, -0.0894231, - -0.0325988, 0.066594, 0.0642883, 0.0182996, -0.0952706, -0.140608, -0.0557586, -0.0693731, - -0.00956899, -0.0320961, 0.0208987, -0.0123999, -0.0594117, -0.0166503, 0.174191, -0.0272156, - 0.0448788, -0.0226324, -0.0409136, 0.0389657, 0.0945082, -0.0128085, -0.0492372, 0.00180416, - -0.067069, -0.00987033, -0.00412323, -0.0029367, -0.00692239, 0.113989, 0.0468229, -0.0678667, - 0.029338, -0.0176171, 0.0169183, 0.0849822, 0.0779419, 0.0754246, 0.0375554, 0.00663478, - 0.0696616, -0.0225491, -0.0146464, -0.0150308, -0.0153187, -0.0498013, -0.00913153, -0.0185004, - -0.0202772, 0.0384967, -0.0704312, 0.0196789, -0.00501694, 0.0645764, -0.0611823, 0.0045614 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p22(hatfit_yaw00_lev0_p22); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p22_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p23.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p23.mh deleted file mode 100755 index 5d27d2a..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p23.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p23.mh: - -#ifndef stasm_hat_yaw00_lev0_p23_mh -#define stasm_hat_yaw00_lev0_p23_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p23(const double* const d) // d has 160 elements -{ - const double intercept = -0.461965; - const double coef[160] = - { - 0.0523032, -0.0518732, 0.0517111, 0.0438062, -0.0492018, 0.0540363, -0.036406, -0.042006, - 0.0482903, -0.0110723, -0.0854577, 0.110137, 0.0538408, 0.104875, -0.0112382, -0.00981319, - -0.0338787, -0.021962, 0.00473665, 0.0136433, 0.0188633, 0.0574213, -0.00446236, -0.00347816, - 0.0397319, 0.0115102, -0.0654115, 0.00327298, 0.0164438, 0.0379518, 0.0107427, 0.0427834, - 0.0693981, 0.0219157, 0.0814064, 0.0190653, -0.019162, -0.0253361, -0.0917516, 0.0730196, - 0.0327019, 0.0591464, 0.0156071, -5.73272e-05, 0.0343546, -0.0674331, -0.0304423, 0.0630831, - -0.014306, -0.0365847, 0.0570239, -0.0392864, -0.0332792, -0.0943494, 0.00424624, 0.0329673, - -0.0230502, 0.0445252, 0.0181068, -0.0151588, -0.0122217, -0.0428739, -0.015673, -0.0510802, - -0.0684689, -0.0242118, 0.00765104, -0.0158768, 0.061253, 0.106371, 0.131653, 0.00416125, - -0.0598883, -0.0489942, 0.0206371, -0.0381438, -0.0167632, 0.0395252, 0.037255, -0.048284, - -0.0277097, -0.0167262, -0.0223447, 0.0325511, -0.0854205, 0.111921, 0.165679, -0.034467, - 0.0554764, 0.0135595, 0.0224363, 0.00479271, 0.0146494, 0.0101634, -0.0558644, -0.0328749, - 0.0442127, -0.00273552, 0.0165471, -0.00360412, -0.018433, -0.0416512, 0.0287861, 0.00318617, - 0.0314232, 0.0429421, 0.0519481, 0.0191596, 0.0546515, -0.0237693, 0.0484497, 0.0714868, - 0.00971903, 0.00104851, -0.0357625, 0.00674301, -0.0185765, -0.0387338, 0.0530144, 0.0569744, - 0.0064157, -0.0353754, 0.070479, 0.00567205, 0.018648, 0.062755, -0.0856883, 0.0708912, - -0.00950189, 0.011787, -0.022207, 0.0423289, -0.04681, -0.0152456, -0.009021, 0.00556968, - -0.0318435, 0.0123402, -0.0612146, 0.0175134, 0.00205179, 0.00468405, 0.000830396, 0.0130946, - -0.00908286, -0.0301551, -0.0419029, -0.036379, 0.00736859, -0.00606914, -0.0373683, -0.0303132, - 0.0139267, 0.0335559, 0.0879257, -0.0344147, -0.0520043, 0.0371138, -0.0385617, -0.00274444 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p23(hatfit_yaw00_lev0_p23); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p23_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p24.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p24.mh deleted file mode 100755 index e963cea..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p24.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p24.mh: - -#ifndef stasm_hat_yaw00_lev0_p24_mh -#define stasm_hat_yaw00_lev0_p24_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p24(const double* const d) // d has 160 elements -{ - const double intercept = -0.223203; - const double coef[160] = - { - 0.00759021, -0.0055056, -0.0073713, 0.0308273, 0.0282134, -0.0260361, -0.0277129, 0.00573773, - 0.0817834, 0.0219989, -0.00406632, 0.0079682, -0.00533502, 0.0398129, -0.0125726, 0.067068, - 0.0430261, -0.000803057, -0.0327945, -0.0401474, -0.0305578, -0.049006, -0.0455141, 0.0511743, - 0.110885, 0.015022, -0.000883857, -0.0546561, -0.0288469, -0.0699016, -0.041525, 0.0407154, - -0.0271235, 0.0281858, -0.0102839, 0.00891484, 0.0130595, -0.0404419, -0.0477642, 0.0340345, - -0.0703068, -0.00218726, 0.0721903, -0.0116724, 0.0232438, -0.0327372, -0.00850997, -0.0188064, - -0.0278776, -0.0724395, 0.0112654, -0.0449049, 0.0268846, -0.0316681, 0.107946, -0.0437976, - -0.0353805, -0.0417873, -0.0413422, 0.0472778, -0.00234817, 0.0908644, 0.0775997, -0.0671011, - -0.11615, -0.000416996, 0.0555368, 0.00165362, 0.0280228, 0.0478133, 0.0735583, -0.0172228, - 0.0748491, -0.00716301, 0.0843619, 0.0730381, -0.010274, 0.0231678, -0.0825943, -0.111871, - 0.0532919, -0.0341804, 0.00389104, 0.00279808, -0.0362955, 0.0272775, 0.0229373, 0.0285774, - 0.0365465, 0.0339026, 0.00135799, -0.025427, -0.0162267, 0.0816967, 0.0150375, 0.0566388, - 0.0573805, -0.0114436, 0.0750253, 0.0053048, 0.00919129, 0.0111901, -0.0795198, 0.0262549, - -0.00984538, -0.0491219, -0.0391553, -0.0428717, 0.0213788, 0.0396437, -0.0485408, 0.0972563, - -0.0234263, 0.0033701, -0.0535601, 0.0187169, -0.0381269, -0.030668, 0.0900217, 0.110461, - 0.0321928, 0.0192795, 0.000646099, 0.0260936, -0.0167218, -0.0160385, 0.0145091, 0.0285376, - 0.0043183, 0.019777, -0.00737701, 0.0133084, -0.00860853, -0.0372363, -0.00639275, -0.0545576, - -0.0190646, -0.0113897, 0.0350557, -0.0242949, 0.0131131, -0.00398441, -0.0495583, -0.0134147, - 0.0309709, 0.0794429, -0.0103008, -0.00174767, 0.0358666, 0.00396927, 0.0125943, -0.0393979, - -0.0359715, -0.0571847, -0.00181492, 0.0563965, -0.00415715, 0.0621519, 0.0164125, 0.0054211 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p24(hatfit_yaw00_lev0_p24); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p24_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p25.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p25.mh deleted file mode 100755 index 2e06bdb..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p25.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p25.mh: - -#ifndef stasm_hat_yaw00_lev0_p25_mh -#define stasm_hat_yaw00_lev0_p25_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p25(const double* const d) // d has 160 elements -{ - const double intercept = -0.280421; - const double coef[160] = - { - -0.0400535, 0.0414172, -0.0241318, -0.0221016, -0.0163008, 0.0337893, -0.0186697, 0.0139877, - 0.00792495, -0.0650722, 0.0227684, 0.0483292, 0.0115117, -0.0121308, 0.0522657, 0.0072798, - -0.022599, -0.0733589, -0.0308909, -0.011057, 0.0383328, 0.136396, -0.0186217, 0.0545581, - 0.0555103, -0.034618, 0.04978, 0.0161402, -0.0315483, -0.00648121, -0.0228139, -0.0235081, - -0.00131138, 0.00807124, 0.0124839, -0.00602452, 0.0248727, -0.0346749, 0.045509, 0.016746, - 0.019974, -0.0492493, -0.0070519, 0.00304546, -0.0263074, -0.00301399, -0.0025644, -0.0575298, - 0.0247922, 0.0432854, 0.0345857, 0.0908686, -0.0574232, 0.00459185, 0.0501338, 0.0261785, - 0.168224, 0.0369258, -0.0494622, -0.00965397, -0.0712378, 0.070011, 0.0265275, 0.0331183, - 0.0244553, -0.00493331, -0.0676968, 0.031072, -0.0122692, -0.0423819, -0.0156902, -0.0334871, - -0.00155561, 0.041822, 0.00367972, -0.0159047, 0.0354222, 0.00763884, -0.0411545, 0.011563, - 0.033271, 0.0480907, 0.0102995, 0.0443927, 0.0240106, -0.00505156, -0.0354106, -0.0181828, - -0.105491, -0.0360062, -0.0485821, -0.00924608, 0.0389187, 0.00524319, 0.0470903, -0.00738215, - -0.0549213, 0.0902653, 0.099428, 0.075157, 0.0702933, -0.00971282, -0.0614313, -0.0112334, - -0.0261455, 0.0159345, -0.0863346, -0.0304713, 0.0530032, 0.00489781, 0.0793146, -0.0354918, - -0.0246215, -0.0212455, 0.0114848, 0.036059, -0.0678203, -0.0339122, 0.00533783, -0.0502067, - -0.0160177, -0.0405702, 0.00298591, -0.00448153, 0.0453489, 0.0517875, -0.0109091, 0.115212, - 0.0633411, 0.000774394, 0.0593845, -0.0609595, 0.00421489, -0.0136462, -0.0159747, -0.0693348, - -0.028278, 0.026844, -0.0370133, -0.00667643, -0.0355803, 0.0144561, 0.0162701, 0.0441711, - -0.0210169, 0.0118692, -0.00526951, -0.0665957, 0.0448446, -0.0244224, 0.0147369, 0.0711315, - 0.0432563, -0.0190787, 0.020547, -0.000324577, 0.0311602, -0.0167044, -0.00268172, -0.0444903 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p25(hatfit_yaw00_lev0_p25); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p25_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p26.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p26.mh deleted file mode 100755 index d67798e..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p26.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p26.mh: - -#ifndef stasm_hat_yaw00_lev0_p26_mh -#define stasm_hat_yaw00_lev0_p26_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p26(const double* const d) // d has 160 elements -{ - const double intercept = -0.255743; - const double coef[160] = - { - 0.00692737, 0.0194334, -0.113714, 0.0623229, 0.0714794, -0.00731698, 0.125544, 0.0384238, - 0.0818136, 0.0307813, 0.0356599, -0.0246677, 0.0299467, 0.0388785, -0.0624853, 0.0229773, - -0.0463268, 0.0221149, -0.0255056, 0.00177395, 0.0385248, -0.0569312, 0.0209152, 0.0170254, - -0.00345174, -0.0501504, -0.0445291, 0.0239741, 0.0083556, -0.0139281, -0.0833677, -0.0126101, - 0.0224749, -0.029708, -0.0834227, 0.0442514, -0.0540719, 0.0521406, 0.0311537, 0.115903, - 0.02201, -0.0388192, 0.0160826, -0.047066, -0.0809173, -0.0440246, 0.023151, -0.018014, - 0.00476726, 0.00487958, 0.00409056, 0.0276067, -0.096975, -0.0161165, 0.00478189, -0.015588, - 0.0679909, 0.0760158, 0.0215658, 0.00751135, -0.122779, -0.0179322, 0.0327519, -0.0333638, - 0.0946621, 0.0738181, 0.0954494, 0.00240209, 0.057808, 0.0226989, -0.0185668, -0.0741197, - -0.0719186, 0.0473879, 0.0143023, -0.00413896, -0.0507206, 0.0621448, 0.0824867, -0.00205496, - -0.0333383, 0.0513143, -0.0456868, -0.0137666, -0.0486989, 0.0140241, 0.0662594, -0.00522068, - 0.028143, 0.0154175, 0.0227702, 0.0557067, 0.123815, 0.0298751, -0.0118384, 0.0186131, - -0.0712891, -0.0269031, -0.0459169, 0.045181, 0.0368457, 0.0379993, 0.00212305, 0.0453545, - 0.00467711, -0.0350907, 0.0737455, 0.0592875, -0.0168856, -0.056106, -0.0311644, -0.0199809, - -0.0650892, -0.0354531, -0.0410075, 0.0412784, 0.0481653, 0.0165638, -0.0483525, 0.0321069, - 0.00812633, -0.0542742, -0.0390645, -0.00167167, 0.0148346, -0.0286401, 0.0606945, -0.0224465, - 0.0330649, -0.0160857, 0.0464291, -0.00303156, -0.0143526, 0.0352431, -0.0748096, -0.025033, - -0.0225852, 0.0119234, -0.017597, -0.022176, 0.02036, 0.00632215, 0.068705, 0.024569, - -0.00117043, 0.0166959, 0.0220684, -0.026049, 0.0131724, -0.00232683, -0.0176743, 0.00842005, - 0.013519, 0.0259861, -0.0479116, -0.0197429, -0.021785, 0.0131843, -0.0254269, 0.0350713 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p26(hatfit_yaw00_lev0_p26); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p26_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p27.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p27.mh deleted file mode 100755 index c14733d..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p27.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p27.mh: - -#ifndef stasm_hat_yaw00_lev0_p27_mh -#define stasm_hat_yaw00_lev0_p27_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p27(const double* const d) // d has 160 elements -{ - const double intercept = -0.463915; - const double coef[160] = - { - 0.0479375, -0.00319255, -0.0105924, -0.0756268, -0.0683371, 0.057243, 0.0568696, -0.064015, - 0.00387484, 0.0805585, -0.083481, 0.0617519, -0.0449808, -0.0214523, 0.0412005, 0.0239077, - 0.0708083, 0.0169029, -0.0110843, -0.0260801, 0.0339025, -0.0180517, -0.0363968, 0.0479424, - 0.0397678, 0.0344227, 0.0478986, -0.0148963, 0.0665821, -0.00602551, 0.0965074, 0.0200938, - 0.0827836, -0.0187764, -0.0686998, 0.0796047, -0.0121056, -0.049961, -0.0249006, 0.0523253, - 0.00216455, -0.0113274, 0.0634767, 0.128889, 0.0345853, 0.0428524, 0.00892465, 0.095211, - -0.00682563, -0.0429812, 0.0400419, 0.0557009, 0.00783205, 0.00444436, -0.0552572, -0.101339, - -0.0627508, -0.0568393, 0.00185677, 0.0480606, 0.0310887, 0.0706333, 0.0544758, -0.0602711, - -0.0873755, 0.023527, -0.0815973, 0.0345373, -0.0102817, 0.00507487, -0.053758, -0.0190882, - -0.0149365, 0.0397156, 0.138915, -0.0755282, 0.0396669, 0.0916266, 0.0208462, -0.0352263, - -0.0531042, -0.030225, 0.122263, -0.0769584, -0.0659675, 0.00616166, -0.00051444, -0.0606639, - 0.0670286, 0.0479938, -0.0187469, -0.0266876, -0.0288548, -0.0262532, -0.00848751, 0.0336486, - 0.0185754, 0.145478, -0.00103702, 0.0238192, -0.0614049, -0.0351352, 0.00145927, 0.0499618, - 0.0133165, -0.0764638, 0.0684049, -0.0877338, 0.00479691, 0.00326349, 0.052983, 0.0412907, - 0.0170189, -0.0578109, -0.0874416, 0.0568815, -0.0736229, -0.0291404, -0.00333928, 0.0241065, - -0.0649401, 0.130563, -0.17803, 0.05174, 0.0249613, 0.0593809, -0.106167, -0.0445619, - 0.020445, -0.00494927, 0.0362654, 0.0508476, 0.0160082, 0.0184673, 0.10164, -0.00951897, - 0.00794775, -0.0289175, 0.040868, -0.0470455, 0.0615087, -0.0590574, -0.0177495, 0.0604152, - 0.00361195, 0.0291409, -0.0118572, 0.0431013, 0.0029963, -0.0334427, 0.0520479, 0.0119778, - 0.0444027, 0.00467433, -0.000246422, -0.0209563, 0.0285789, 0.0182698, -0.00113396, -0.0492845 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p27(hatfit_yaw00_lev0_p27); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p27_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p28.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p28.mh deleted file mode 100755 index 66c51e8..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p28.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p28.mh: - -#ifndef stasm_hat_yaw00_lev0_p28_mh -#define stasm_hat_yaw00_lev0_p28_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p28(const double* const d) // d has 160 elements -{ - const double intercept = -0.506874; - const double coef[160] = - { - -0.0784613, 0.0121844, 0.00489221, 0.0395063, -0.0689672, 0.0752561, -0.0684628, -0.107224, - -0.0378404, -0.0188187, 0.0324368, -0.0166145, -0.069967, 0.0922398, -0.0966497, -0.0571723, - -0.00510059, -0.0172265, 0.0217243, -0.0487023, -0.027193, 0.0648868, 0.0346994, 0.00259343, - -0.0106185, 0.0097881, 0.015559, 0.0198533, -0.0253231, 0.032561, -0.0655483, 0.0443912, - 0.0367692, -0.0539447, -0.0147958, 0.0110131, 0.0265013, -0.0363564, -0.00160317, 0.084128, - 0.0616485, -0.0250155, -0.0407165, 0.0293272, -0.0347668, -0.10248, 0.0141058, 0.0823233, - 0.0635444, 0.0557117, 0.0207586, -0.0293784, 0.131631, -0.083441, 0.186915, 0.112217, - 0.104805, -0.0197265, 0.0439378, -0.011575, 0.00842989, -0.0584026, -0.0270734, 0.00479067, - 0.0570783, 0.0386787, 0.0211264, -0.067437, 0.0519423, 0.0132203, 0.0916372, -0.0218509, - 0.0505351, 0.0241844, 0.00904032, -0.116443, -0.039052, 0.0128594, -0.0699651, -0.0752647, - -0.0169601, 0.00585748, 0.0312534, -0.105584, -0.0108465, 0.130622, 0.105934, -0.0250018, - -0.0869647, 0.0408854, 0.0528488, 0.0140731, -0.0288625, 0.0121546, -0.0570119, 0.0187228, - -0.0703364, -0.0378628, -0.00574874, -0.033603, 0.0239437, -0.0279945, -0.0440856, -0.0296373, - -0.0691181, 0.000218943, 0.0733263, 0.117589, 0.0124093, 0.0551839, -0.0645384, 0.00381715, - -0.0531849, -0.0940519, -0.00290378, 0.0673449, 0.0529989, 0.0382406, 0.144874, 0.0581044, - -0.127729, 0.0672169, -0.0250649, 0.151382, 0.00148457, 0.0684749, -0.137647, -0.0229951, - 0.0917255, -0.136388, 0.0238971, 0.0351211, 0.059189, 0.013338, 0.166916, -0.103794, - 0.128341, -0.0906327, 0.0286383, -0.0602337, 0.00497176, -0.037041, 0.0618543, 0.0603425, - 0.0501083, -0.0272609, 0.0630509, -0.081441, -0.0222425, -0.0802907, -0.106979, -0.0589488, - -0.0345976, 0.137928, -0.0525908, -0.00430701, -0.0581273, 0.0318156, 0.101198, 0.0646515 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p28(hatfit_yaw00_lev0_p28); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p28_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p29.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p29.mh deleted file mode 100755 index 16460bb..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p29.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p29.mh: - -#ifndef stasm_hat_yaw00_lev0_p29_mh -#define stasm_hat_yaw00_lev0_p29_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p29(const double* const d) // d has 160 elements -{ - const double intercept = -0.48562; - const double coef[160] = - { - -0.00512158, 0.0586746, -0.0798093, 0.0180009, -0.0280963, 0.116762, -0.0189166, -0.0481293, - -0.0479871, 0.0112611, 0.0859658, 0.0221476, -0.0269003, 0.0576303, -0.0401595, 0.0470311, - -0.00250212, -0.0777604, -0.0399438, -0.0882451, -0.00553859, -0.00287363, 0.0171962, 0.0554015, - 0.0321909, 0.0066967, 0.0459881, 0.0175653, -0.0640833, -0.0459287, -0.0642564, 0.0555527, - -0.0775696, 0.0428062, 0.0120147, 0.0190259, -0.0498569, -0.102132, -0.116272, 0.0976456, - 0.00906292, -0.185513, 0.0638659, 0.0303079, 0.127411, -0.143208, -0.0743038, 0.0323266, - 0.0288056, -0.0206706, -0.00574707, 0.0564532, -0.000503975, 0.0125794, 0.0908472, 0.0331637, - 0.104306, -0.0109944, -0.0214472, -0.0206695, 0.0837613, 0.0374264, 0.0359718, -0.113151, - 0.0553828, 0.0106066, 0.0562636, 0.0613964, 0.0658492, 0.0957213, 0.125038, -0.103323, - -0.0418038, -0.055549, -0.0164352, -0.0441974, 0.0560263, 0.0611424, 0.0423445, -0.0384684, - -0.00502453, 0.144959, 0.000351633, -0.116383, -0.0419107, 0.058302, 0.0633299, 0.0926945, - 0.0443739, 0.0575564, 0.0941396, -0.0240567, -0.0363212, 0.00444002, -0.0345955, -0.00689339, - -0.0665449, -0.0573972, -0.0133429, -0.025529, -0.0605529, 0.0012417, -0.031918, 0.00740497, - -0.0640573, -0.0155675, 0.0532986, 0.0356676, -0.0643784, -0.0439708, -0.0276125, -0.0372154, - 0.0359257, -0.0506532, 0.00448912, 0.0380476, -0.0116334, 0.0274073, 0.0843044, 0.120536, - -0.0820354, -0.0527027, -0.0712199, 0.16005, -0.0312234, 0.0236113, 0.0842056, 0.0403934, - 0.0375245, -0.00135152, 0.0748432, -0.0409444, 0.0816635, -0.0354786, -0.0469224, -0.13919, - 0.134422, -0.093118, 0.0372906, -0.0373891, 0.0217897, 0.0116476, 0.0548633, -0.00559319, - 0.0727434, 0.0312082, 0.0135856, -0.15973, -0.00897797, -0.0242633, 0.082357, 0.0150905, - -0.0299137, 0.109233, -0.0348521, 0.103843, -0.0969788, -0.0672276, -0.0715875, 0.101708 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p29(hatfit_yaw00_lev0_p29); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p29_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p30.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p30.mh deleted file mode 100755 index d311e9b..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p30.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p30.mh: - -#ifndef stasm_hat_yaw00_lev0_p30_mh -#define stasm_hat_yaw00_lev0_p30_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p30(const double* const d) // d has 160 elements -{ - const double intercept = -0.307384; - const double coef[160] = - { - -0.0976915, -0.0157513, 0.0542291, -0.0275726, -0.0106452, -0.0433831, 0.0663134, 0.00960375, - 0.0678916, -0.0147168, -0.0624697, -0.0487353, -0.0296701, 0.0741982, 0.0102149, 0.0473877, - 0.00224397, 0.0390406, 0.0723501, 0.0334601, -0.0215762, -0.0234384, -0.0840566, -0.0478522, - 0.0190583, 0.00199417, -0.070565, -0.0287624, -0.0383371, 0.0307747, 0.0716929, 0.0257987, - 0.0223133, -0.000109589, 0.0138733, -0.00511998, 0.0319277, 0.0323793, -0.074089, 0.0544371, - 0.0825056, 0.0555438, -0.00505813, 0.0296174, -0.0669804, -0.00644871, -0.0249807, -0.0584444, - -0.0932023, -0.0178599, -0.0157678, 0.164961, 0.170676, -0.0162209, -0.0138016, 0.0167344, - -0.00686432, 0.0238387, -0.0423569, -0.058961, 0.0198049, 0.0441957, 0.0403968, 0.0928207, - -0.0016404, -0.0763977, -0.0105645, 0.000383256, -0.0100389, -0.0499875, 0.0501346, 0.0641137, - -0.0380489, 0.000522693, 0.065543, 0.0135046, -0.00255715, 0.0253511, -0.0634106, -0.100232, - -0.052102, 0.0790686, -0.0192697, -0.0670417, 0.0123938, -0.01176, 0.108684, -0.00515379, - 0.0175374, -0.049222, 0.0998104, -0.00692515, -0.0347418, -0.0105605, -0.0665368, 0.0601234, - 0.0133305, 0.0175988, 0.0336347, -0.028041, -0.0233755, 0.0621518, 0.000346735, -0.059242, - 0.124917, 0.103455, 0.138688, 0.0536303, 0.0327499, 0.031424, 0.0395041, 0.0209048, - 0.0351397, 0.00189515, -0.0520196, 0.012187, 0.02107, -0.0487657, 0.0293231, -0.0243275, - 0.00723984, 0.00655859, -0.00276809, 0.0305861, -0.00417185, 0.0375758, 0.0356237, 0.0295638, - 0.019522, -0.0444034, -0.000982982, 0.00359501, -0.0394528, -0.0106282, -0.0416023, -0.0892154, - -0.0476342, -0.0379193, -0.0678138, -0.0268524, -0.0121183, -0.0165821, -0.030781, 0.107548, - -0.0880742, -0.00713778, -0.0481077, -0.0408392, 0.0209118, 0.03522, 0.0262854, 0.0552789, - -0.106939, 0.0767143, -0.0487099, 0.00395575, -0.0177101, 0.0222295, -0.0722513, -0.0186226 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p30(hatfit_yaw00_lev0_p30); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p30_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p31.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p31.mh deleted file mode 100755 index 3862162..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p31.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p31.mh: - -#ifndef stasm_hat_yaw00_lev0_p31_mh -#define stasm_hat_yaw00_lev0_p31_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p31(const double* const d) // d has 160 elements -{ - const double intercept = -0.149653; - const double coef[160] = - { - 0.102792, -0.00789202, 0.0598279, 0.0383932, 0.0314396, 0.0354225, -0.137671, -0.0226661, - 0.0365126, -0.00786857, 0.0354617, -0.00611145, -0.00306365, 0.064468, 0.0597814, -0.0701481, - -0.0301681, 0.00693912, -0.0514889, 0.00274277, 0.0249402, 0.0113394, 0.0457705, -0.102015, - -0.025926, 0.0353191, -0.0138407, 0.00618827, 0.00649906, -0.0438448, 0.124918, 0.15508, - -0.0417982, -0.0421211, 0.00988954, -0.00689037, -0.0428412, 0.0550954, -0.149107, 0.0209882, - -0.0257726, -0.0637484, -0.00533911, -0.0627934, -0.0983968, -0.0630774, 0.117817, -0.0324073, - -0.0170204, 0.0162665, 0.00691796, 0.00749674, 0.00446238, -0.123501, 0.0375666, 0.0270828, - -0.0215574, -0.00569241, 0.0160521, -0.046765, -0.017903, 0.00972946, 0.0154102, 0.149299, - 0.0326936, -0.0630218, -0.0276987, -0.0452982, 0.032711, 0.0991898, -0.0314943, -0.0155756, - -0.0230624, 0.0624657, 0.0320531, 0.027173, -0.0123942, -0.0614351, -0.0313367, -0.0203405, - 0.0194565, 0.00454225, -0.0454752, 0.0204334, 0.107248, 0.0678514, -0.0702336, 0.0731753, - 0.0912235, -0.00324371, 0.0373891, -0.0321271, -0.0408679, 0.110325, -0.0185016, -0.00133724, - -0.0198913, 0.0159996, 0.0282584, -0.00418692, -0.0746972, -0.0115976, -0.0744241, -0.0964105, - -0.0560263, -0.0196536, 0.0668696, 0.231179, 0.0606925, -0.0166885, -0.0478474, 0.0258359, - 0.00595591, -0.0800362, -0.0944175, -0.145004, 0.00150118, 0.0929244, 0.0665964, 0.00132968, - 0.00751783, -0.0668613, 0.0573544, 0.0113606, -0.0271173, -0.0344456, 0.0535079, -0.0549112, - -0.0506515, 0.0959064, -0.00804938, -0.0111781, 0.0300032, -0.00559824, 0.0070531, 0.00563192, - 0.0230664, 0.0734045, -0.0273737, -0.0310137, -0.0158516, -0.0151536, 0.103164, -0.0171585, - 0.00812267, -0.0433804, 0.00373189, -0.0478893, 0.0121958, -0.057604, -0.0326567, -0.094755, - 0.00210226, -0.00575499, 0.0848674, -0.00954786, 0.0399587, 0.0370163, -0.0332987, 0.162617 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p31(hatfit_yaw00_lev0_p31); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p31_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p32.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p32.mh deleted file mode 100755 index f0267da..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p32.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p32.mh: - -#ifndef stasm_hat_yaw00_lev0_p32_mh -#define stasm_hat_yaw00_lev0_p32_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p32(const double* const d) // d has 160 elements -{ - const double intercept = -0.316197; - const double coef[160] = - { - -0.0553975, -0.0326231, 0.0140244, 0.0141833, 0.0542154, -0.00586302, -0.0695314, -0.0634706, - 0.0302362, -0.0131185, -0.0135585, 0.00285338, 0.0229264, 0.0221361, 0.109436, 0.0257932, - -0.0186387, -0.0466385, 0.0343189, -0.0271132, 0.0171234, -0.02604, -0.101529, -0.0572375, - 0.0702282, 0.064434, 0.00577874, -0.0298826, 0.00248206, 0.0346005, 0.0835609, -0.0624642, - -0.0259741, -0.0299555, -0.00310985, -0.00402477, 0.0373708, 0.0449609, 0.0137161, 0.0854487, - -0.00306658, 0.0416231, 0.0045002, -0.05457, -0.0251188, -0.0692618, 0.0147755, 0.124021, - 0.0232371, 0.0217226, 0.0514906, 0.0491317, -0.0162214, -0.00294008, -0.0791864, 0.0404659, - -0.0269759, -0.00465718, -0.0599927, -0.0541856, -0.0497073, 0.0892615, 0.061549, -0.0370637, - -0.0743379, -0.0102547, 0.00372573, 0.035167, 0.0212416, -0.0196718, 0.0713135, 0.0811415, - 0.00818322, -0.10258, -0.0238922, 0.0742356, 0.00109783, 0.0330836, -0.0228264, -0.0412167, - -0.0826987, -0.0116883, 0.0371461, 0.0373019, -0.0460285, 0.0745708, 0.123836, 0.0013614, - 0.053146, 0.0317554, 0.0669758, -0.0435545, 0.0311821, -0.043015, -0.0195011, -0.122941, - 0.0892976, -0.0969214, -0.0189759, 0.00807919, 0.0233355, -0.0372141, 0.0139117, 0.0219588, - 0.0549437, -0.00348644, -0.0127576, -0.0449112, -0.0499871, -0.00569642, 0.00211788, -0.0666201, - -0.0891527, 0.0910754, 0.107107, 0.00926749, -0.0648211, -0.0619068, 0.0141276, 0.189321, - 0.00974862, 0.0971979, -0.0539598, 0.120189, 0.112664, -0.148255, -0.0893447, 0.00793033, - -0.0382829, -0.104793, -0.00629037, -0.0668676, -0.0453596, 0.11252, -0.0678271, 0.0204766, - -0.0146969, 0.05302, 0.0309586, 0.0178427, 0.034914, 0.0407754, 0.0986471, 0.0311328, - 0.00863516, 0.00982672, -0.0138149, -0.090387, 0.0100125, 0.0535338, 0.0212296, 0.122067, - 0.105075, 0.0512898, -0.0406747, 0.073454, -0.0944377, 0.0343392, -0.0528356, -0.276148 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p32(hatfit_yaw00_lev0_p32); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p32_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p33.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p33.mh deleted file mode 100755 index 9ba0094..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p33.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p33.mh: - -#ifndef stasm_hat_yaw00_lev0_p33_mh -#define stasm_hat_yaw00_lev0_p33_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p33(const double* const d) // d has 160 elements -{ - const double intercept = 0.0987009; - const double coef[160] = - { - -0.0349938, -0.0726993, 0.00430352, -0.018835, 0.00862682, -0.0186267, -0.084952, 0.0101559, - -0.0558756, 0.0166949, -0.00014456, -0.012426, -0.0166169, 0.0839871, 0.113426, 0.0441275, - 0.0253636, -0.0303579, 0.01306, -0.0683307, -0.0027652, -0.0999608, -0.00183832, -0.0346063, - -0.00773266, 0.0612238, 0.062272, 0.0726653, 0.0820535, -0.037873, -0.0258476, -0.00541454, - 0.155962, 0.00800801, -0.019387, -0.0329701, 0.00694451, 0.0503662, 0.00499894, 0.0146567, - 0.0309123, 0.0956013, -0.0475971, 0.0462764, -0.0581348, -0.0399035, 0.034484, -0.0640663, - 0.0320945, -0.0742514, -0.0224246, 0.0107777, -0.00125174, -0.00299325, -0.0220781, 0.0271539, - -0.125384, 0.0245321, -0.0295677, -0.0251354, 0.0247743, 0.0735112, 0.00307819, 0.134836, - 0.0528494, -0.028394, 0.0657703, 0.00195505, -0.0635555, 0.000164117, -0.0507556, -0.0923626, - -0.112354, -0.0893438, -0.023866, -0.0498498, -0.105725, -0.0590232, 0.150473, 0.00609421, - -0.00914028, -0.108223, -0.00870758, -0.127048, 0.0558024, 0.0672957, 0.121867, 0.0377956, - -0.00706981, 0.140737, 0.0786787, -0.044068, -0.0202695, -0.0105375, -0.0573831, 0.00348953, - 0.0525494, -0.0689881, -0.0486301, -0.00355304, -0.046227, -0.03198, 0.00381899, -0.0391048, - 0.0171082, 0.083586, 0.0225981, -0.0212721, 0.0495224, 0.0298259, -0.106468, 0.00165893, - 0.125742, -0.0174689, 0.0245751, 0.00450798, 0.014657, 0.086278, -0.0625576, -0.0359416, - 0.0965469, -0.0282645, 0.13594, 0.0282853, -0.0077748, 0.102333, -0.107924, -0.0181288, - -0.0210137, -0.00825588, -0.145298, -0.00338699, -0.0753779, -0.0804827, 0.00278271, 0.0447177, - -0.039915, 0.0356498, -0.0452307, 0.158011, 0.110962, -0.0473837, 0.090604, -0.06284, - -0.0301958, -0.105687, 0.0573676, -0.021037, -0.000382299, -0.000412782, -0.0151293, 0.00442089, - -0.0849335, 0.0498234, 0.0468375, -0.0852527, 0.0406751, -0.0667538, 0.0757357, 0.0156054 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p33(hatfit_yaw00_lev0_p33); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p33_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p34.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p34.mh deleted file mode 100755 index 32d9ea7..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p34.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p34.mh: - -#ifndef stasm_hat_yaw00_lev0_p34_mh -#define stasm_hat_yaw00_lev0_p34_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p34(const double* const d) // d has 160 elements -{ - const double intercept = 0.103899; - const double coef[160] = - { - 0.0116532, -0.0960441, -0.0731859, -0.0580997, -0.0718075, -0.0497457, 0.0296645, 0.0704266, - 0.055171, 0.090107, 0.091435, -0.0248551, -0.0306247, 0.0322747, 0.00993825, -0.0205045, - -0.039048, 0.00227338, -0.0394511, 0.0620608, -0.0490692, -0.0930054, -0.0734326, 0.024631, - 0.0243695, -0.0417843, -0.013439, -0.0517189, 0.00157675, 0.0455944, -0.0346441, 0.0285537, - -0.0525393, -0.0636621, 0.0474901, -0.0660078, -0.0547137, 0.000957947, 0.027339, 0.043659, - -0.0412331, 0.0544558, -0.0138967, -0.0219317, 0.0529582, 0.0914145, -0.0474106, -0.0364707, - 0.035702, -0.0868278, 0.0431895, 0.100693, 0.128837, 0.0498026, 0.00668135, -0.0479242, - 0.0559766, -0.0267265, -0.00823433, -0.0727571, 0.029276, 0.0775935, 0.113228, -0.0642839, - -0.00823594, 0.146986, -0.0384164, 0.0418531, -0.0764214, -0.0394064, -0.0433749, -0.0243147, - 0.0636892, -0.0382199, -0.0740321, 0.0357386, 0.0272187, 0.0101528, -0.0325056, -0.111363, - 0.0496952, -0.0847683, 0.00116613, 0.0363979, -0.0112087, -0.0940083, -0.0548512, 0.131099, - 0.012491, 0.0714083, 0.0502695, -0.00608685, 0.0945865, -0.0208773, 0.0388364, 0.0258849, - 0.00333449, -0.0386422, 0.213543, -0.0235397, -0.0417724, -0.0412771, -0.102747, 0.0463958, - -0.027136, -0.0984879, -0.0415551, -0.0302189, 0.0406024, 0.00469946, -0.0202009, 0.120658, - -0.039418, -0.0694798, -0.014969, 0.0832812, 0.0655985, -0.0599477, 0.119247, 0.0083502, - -0.065653, 0.048549, 0.0154887, -0.0313582, -0.0521992, 0.0328655, 0.04705, -0.0688214, - -0.0618626, -0.0165657, -0.0609692, 0.0133931, -0.00907179, 0.0390636, 0.0220942, -0.00449588, - 0.0387907, 0.0635731, -0.11444, 0.00553919, -0.0394504, 0.01926, -0.0141318, -0.0146186, - -0.00956546, 0.0980052, 0.0796294, 0.0171925, -0.0455367, 0.000389098, -0.0105671, -0.07556, - 0.0171995, 0.0119002, -0.088144, 0.0262509, -0.110645, 0.0379231, 0.0189027, 0.0442737 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p34(hatfit_yaw00_lev0_p34); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p34_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p35.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p35.mh deleted file mode 100755 index cda3afa..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p35.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p35.mh: - -#ifndef stasm_hat_yaw00_lev0_p35_mh -#define stasm_hat_yaw00_lev0_p35_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p35(const double* const d) // d has 160 elements -{ - const double intercept = 0.0911783; - const double coef[160] = - { - 0.072946, -0.0803196, -0.148736, -0.0919549, -0.0579766, 0.00977487, 0.128006, -0.108242, - -0.003049, 0.119124, 0.0806486, -0.0526401, -0.0874254, -0.0147282, -0.0236752, 0.0179507, - -0.0108248, -0.0549988, -0.00562408, -0.111443, -0.0406327, -0.0100502, -0.0262271, -0.0250988, - 0.0459581, 0.0743667, 0.0228281, -0.055606, 0.014854, 0.0539807, 0.0120234, 0.00406083, - 0.143164, 0.0292026, 0.0319131, 0.0756062, -0.00377357, -0.0066216, -0.0193189, -0.0420019, - 0.0320485, -0.0183536, 0.217555, 0.0330694, 0.0797881, 0.0869132, -0.0779956, 0.0267643, - 0.00351436, -0.0663817, -0.12945, 0.0296081, -0.0684649, -0.0435509, -0.0236667, 0.121083, - -0.00338945, -0.0361458, -0.110001, 0.160606, 0.128875, -0.0937141, 0.128652, -0.0303316, - -0.0262289, -0.074895, 0.0158825, -0.0526749, 0.0348863, 0.0116732, -0.111386, -0.00203911, - -0.0856487, 0.0203703, 0.116734, -0.0773655, -0.0270685, -0.0410227, -0.01313, -0.0520797, - -0.026407, 0.0607511, -0.164786, -0.0474516, -0.0437693, -0.0550207, 0.0423482, 0.0196394, - -0.0261854, 0.067582, 0.0726053, -0.0691834, -0.0269777, 0.0659595, -0.0236981, -0.0402841, - -0.0174893, 0.0751519, 0.02007, 0.0410119, -0.0789935, 0.0217221, -0.0132749, 0.0613622, - 0.00312103, -0.0134453, -0.0384284, -0.000348083, -0.00745864, 0.022218, 0.0772291, 0.0318349, - 0.0256692, 0.0775988, 0.214678, 0.0361494, 0.0725331, -0.0518311, -0.0696995, 0.0626753, - 0.012046, -0.092102, -0.00926082, 0.0680354, 0.0184702, 0.0352264, -0.0156098, -0.0166752, - 0.0248438, -0.0881514, -0.0663464, 0.0526814, -0.038702, -0.035639, 0.032505, -0.0104396, - -0.0230753, -0.0268185, -0.00123079, 0.0100087, 0.0429343, -0.0477408, -0.0288445, -0.0101994, - 0.0172355, -0.049626, 0.00173479, -0.0324835, 0.0249573, -0.00325783, 0.0214775, -0.0985561, - -0.0513064, 0.0252211, -0.0357383, 0.00138656, -0.0330023, 0.00106741, 0.0637259, -0.0861695 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p35(hatfit_yaw00_lev0_p35); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p35_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p36.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p36.mh deleted file mode 100755 index cba5363..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p36.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p36.mh: - -#ifndef stasm_hat_yaw00_lev0_p36_mh -#define stasm_hat_yaw00_lev0_p36_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p36(const double* const d) // d has 160 elements -{ - const double intercept = 0.280546; - const double coef[160] = - { - -0.0581745, 0.0699183, -0.0333035, -0.0210688, 0.0271952, -0.0631361, 0.0684442, -0.104763, - 0.0180111, -0.00807323, -0.113466, -0.0939689, -0.053943, 0.0802201, -0.0195094, 0.0271342, - 0.113279, 0.108664, 0.0248165, 0.077442, 0.0283378, 0.0104888, -0.0197281, 0.0149863, - 0.0508221, -0.0349772, -0.0114309, -0.057592, -0.0477465, -0.00128831, -0.0331741, 0.024733, - 0.00713591, 0.0565007, -0.0789623, 0.123772, -0.104138, -0.0224268, 0.0130236, -0.0781584, - -0.0139592, -0.0280563, -0.0419102, 0.079595, 0.061647, -0.0488712, 0.089435, 0.114871, - 0.0577733, -0.14974, -0.0089122, 0.0274392, 0.0630212, 0.025585, 0.00524827, 0.0258316, - -0.0808737, -0.0974968, 0.149485, -0.0909861, -0.0252672, -0.0798785, -0.0850874, -0.0834924, - -0.0835056, 0.109213, 0.0228007, -0.0291643, 0.0572602, 0.0596024, -0.0271664, -0.019972, - 0.0640991, -0.00990889, 0.0592807, -0.0798839, -0.00273697, 0.074781, 0.0957268, 0.0125306, - -0.0054178, 0.00268026, -0.0101321, -0.0231462, -0.0388675, 0.0435692, -0.068056, -0.0959819, - -0.0788979, 0.0694287, -0.00537744, 0.0143399, 0.0086474, -0.0149666, 0.0685543, 0.0343267, - 0.00488427, 0.0948243, -0.0426739, 0.0562995, 0.0160068, 0.0617151, -0.0190014, 0.0210443, - 0.00831013, 0.0142092, 0.0664962, 0.00335949, 0.0195147, -0.0331472, -0.00268034, 0.0283125, - -0.0890688, -0.109309, -0.107191, -0.0130691, -0.0542881, -0.0745105, -0.00737389, 0.0515692, - 0.00930899, -0.0353333, 0.0496578, 0.0588347, -0.0267559, -0.0498763, 0.0141803, 0.0617549, - 0.0787918, -0.0859495, -0.0585285, -0.0632163, 0.0168112, -0.00393692, 0.0485385, -0.0636872, - -0.028588, -0.0942548, 0.0469378, -0.0932128, -0.026104, 0.0109808, 0.00255327, 0.0376435, - 0.0388294, 0.052282, 0.030413, 0.0221093, -0.034825, -0.0207677, 0.0201572, -0.0692499, - 0.000311311, -0.0380567, -0.00900435, -0.0257094, -0.0287797, 0.0309502, -0.054992, -0.116031 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p36(hatfit_yaw00_lev0_p36); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p36_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p37.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p37.mh deleted file mode 100755 index 059d97a..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p37.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p37.mh: - -#ifndef stasm_hat_yaw00_lev0_p37_mh -#define stasm_hat_yaw00_lev0_p37_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p37(const double* const d) // d has 160 elements -{ - const double intercept = -0.303677; - const double coef[160] = - { - 0.0706291, 0.0256233, -0.021169, 0.0726549, 0.106903, 0.016, 0.0457468, 0.00109793, - 0.0799033, -0.0305675, 0.0143763, -0.0350326, -0.0243856, 0.0192013, -0.00232405, 0.0487732, - -0.0230588, -0.0103424, 0.0721184, 0.0142125, -0.0769642, -0.0556642, -0.0421801, -0.00265729, - -0.030098, -0.0360621, 0.0251856, 0.141043, 0.0616018, -0.0332981, -0.00115691, -0.0336463, - -0.0376205, -0.0673052, -0.156891, -0.0652591, -0.0424114, -0.0041078, 0.0594929, 0.0495411, - -0.0607347, -0.114512, 0.0617291, -0.0287998, -0.0330698, -0.0261143, -0.0328967, -0.00900466, - -0.0115063, 0.071502, -0.0411456, -0.020872, -0.000536687, 0.067583, -0.0224365, -0.0326662, - 0.0729091, 0.0762454, -0.00446716, -0.0806294, -0.0592757, 0.0137622, 0.0902155, -0.0570413, - -0.0299335, -0.0264325, 0.00554022, 0.0203571, 0.0441139, -0.00377323, -0.0481923, 0.00883599, - 0.0138013, 0.105794, 0.149712, -0.0315718, 0.137982, 0.102671, -0.0437983, 0.0969226, - 0.0719147, 0.0865947, 0.107822, 0.0292804, 0.0342975, 0.020403, -0.0399132, 0.00472514, - -0.0241746, 0.00350706, -0.0368602, -0.0546159, 0.0343461, 0.0101666, 0.0651253, 0.0921604, - -0.0985254, 0.0263634, 0.0426699, 0.0344139, 0.0308005, -0.0379941, -0.0207972, 0.161392, - 0.0601695, -0.06631, 0.0616976, 0.0310606, -0.109, -0.0233544, -0.0519515, -0.132664, - -0.00408487, -0.0954923, -0.0729799, 0.0274431, -0.17811, -0.0587163, 0.0794439, 0.032856, - -0.00988991, -0.052296, -0.0403133, -0.0194977, -0.0612137, -0.00780234, 0.058056, -0.0277586, - 0.0389498, -0.0182139, -0.0312061, -0.0340493, 0.0265404, -0.0145565, 0.0514806, -0.102267, - 0.052377, 0.0136297, 0.0738003, 0.0553161, -0.0029244, 0.0202582, 0.00782223, -0.0944213, - -0.032578, 0.0135417, -0.0696944, -0.0957596, 0.0217285, -0.0375797, 0.000618574, 0.0527561, - -0.0209759, 0.0870326, 0.0509161, 0.00125393, 0.106862, 0.0609506, -0.108618, 0.00250289 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p37(hatfit_yaw00_lev0_p37); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p37_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p38.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p38.mh deleted file mode 100755 index 3dae6f9..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p38.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p38.mh: - -#ifndef stasm_hat_yaw00_lev0_p38_mh -#define stasm_hat_yaw00_lev0_p38_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p38(const double* const d) // d has 160 elements -{ - const double intercept = -0.068544; - const double coef[160] = - { - -0.0536626, -0.013359, -0.0294917, 0.0395418, 0.00602065, 0.0581479, -0.100305, 0.0984087, - -0.0265183, 0.0847183, 0.0881656, 0.0169484, -0.00537723, 0.00269831, -0.00777248, -0.0278024, - -0.114074, -0.0948015, -0.0947185, -0.0769229, -0.0876845, 0.0235384, 0.0826941, -0.0131893, - -0.0575983, 0.0354715, 0.00118615, 0.0387025, -0.067056, 0.0148072, 0.0394679, 0.00413559, - 0.00476013, -0.0143279, -0.0250807, 0.0560243, 0.0589762, 0.0124739, -0.077785, 0.0520474, - -0.000390957, -0.0558784, 0.00362459, -0.0645851, -0.0297658, -0.026952, 0.0783003, -0.0223294, - 7.13877e-05, 0.0394748, 0.069973, -0.0165605, 0.0168488, -0.0808365, -0.0571607, -0.0853212, - 0.158733, -0.0365206, -0.0414263, 0.037078, 0.0662872, 0.0932588, 0.0497674, 0.102722, - 0.0121497, -0.0443202, 0.0220478, -0.0286955, 0.00694251, -0.0239921, -0.0127487, -0.0313543, - -0.0408829, -0.0172101, 0.119929, -0.0229096, -0.0304701, -0.0691108, 0.00443885, 0.0468623, - -0.00797044, 0.0440466, -0.010895, 0.197432, 0.18775, -0.088284, 0.0324301, 0.0141221, - 0.0125759, -0.156198, -0.0999336, -0.143878, -0.129746, 0.126574, -0.06568, 0.020802, - -0.0779806, 0.124472, 0.172654, 0.0831697, 0.0414342, -0.0773946, 0.0238996, -0.0308337, - -0.0564015, -0.0310999, -0.0600586, -0.13068, -0.0243602, 0.122957, -0.0284857, 0.0385191, - 0.17181, 0.139347, -0.0926458, 0.0322527, -0.0163722, -0.0514824, 0.0795052, -0.159504, - -0.0368738, 0.0621942, -0.0230232, 0.00236451, -0.123108, -0.0157973, 0.0517587, -0.0372987, - 0.0357527, -0.00284768, -0.0118862, 0.0333667, 0.082229, 0.0399555, 0.0370592, 0.105621, - -0.0253431, -0.0930053, 0.128704, -0.114259, -0.0809802, -0.0904584, -0.108152, -0.0809041, - -0.00628502, 0.0643499, -0.0200468, -0.0217784, 0.11022, 0.078414, 0.0540143, 0.0464796, - -0.141757, -0.0644505, 0.0300048, 0.0217521, -0.0439924, 0.0209827, -0.0362896, 0.124412 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p38(hatfit_yaw00_lev0_p38); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p38_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p39.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p39.mh deleted file mode 100755 index f69aac3..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p39.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p39.mh: - -#ifndef stasm_hat_yaw00_lev0_p39_mh -#define stasm_hat_yaw00_lev0_p39_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p39(const double* const d) // d has 160 elements -{ - const double intercept = -0.151495; - const double coef[160] = - { - 0.05233, 0.0326952, -0.030743, -0.0747819, 0.0186847, 0.045901, -0.0789242, -0.0147117, - -0.0799741, 0.0480072, 0.0166566, 0.00759646, -0.0267397, -0.0114817, 0.0226446, 0.0172932, - -0.159158, -0.0423043, -0.0662936, -0.125164, -0.0486524, 0.0103393, 0.0633117, 0.0150984, - -0.0217734, 0.0789994, 0.0400544, 0.0244158, 0.019321, 0.000839682, 0.0356539, -0.00869088, - 0.0235972, -0.0057533, -0.0292413, 0.0438017, -0.0295794, 0.0307274, -0.0967119, 0.0430093, - -0.0942798, -0.00805416, 0.0489834, 0.00625914, -0.0404481, -0.0232292, 0.0633833, 0.0290491, - 0.0810178, 0.0250059, 0.113535, 0.00817501, 0.0507761, -0.031991, -0.0264698, -0.0835676, - 0.139131, -0.0566477, -0.0738287, 0.0639994, 0.0623956, 0.0696207, 0.0624551, 0.133946, - 0.00899642, -0.113214, 0.0366509, 0.0112528, -0.0664127, -0.0287526, -0.0855645, -0.0795175, - -0.0549311, 0.000138963, 0.0520412, -0.0511284, 0.0460914, -0.0293583, 0.0711697, 0.0547108, - 0.00131661, 0.00448629, -0.097527, 0.119325, 0.232548, -0.0784401, 0.0602338, -0.0436834, - -0.0230952, -0.112253, -0.0273693, -0.0489677, -0.112829, 0.0183623, -0.0492548, 0.069834, - 0.00247715, 0.153261, 0.18243, 0.0437835, 0.0141501, -0.0394721, 0.0169508, -0.0864296, - -0.0700037, -0.0984214, -0.100169, -0.126076, -0.0459887, 0.091595, -0.022361, 0.0849226, - 0.0986229, 0.18109, -0.0560676, 0.0833901, -0.00862341, 0.00326809, 0.0467629, -0.138509, - -0.0433134, 0.0601509, -0.0520382, -0.0151971, -0.153161, 0.078533, -0.0247407, -0.0060332, - 0.0549943, -0.0336008, 0.00376496, 0.0504749, 0.00647682, 0.0487571, 0.0748477, 0.0666459, - 0.00843305, -0.153977, 0.125587, -0.0821822, -0.0665281, -0.158249, -0.0777738, -0.0526751, - 0.0473934, 0.0394597, 0.0161365, 0.0142061, 0.0911971, 0.084828, -0.00496388, 0.00194326, - -0.0880339, -0.0143288, -0.00077513, 0.0103907, -0.0271255, -0.0129896, 0.0493004, 0.0699623 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p39(hatfit_yaw00_lev0_p39); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p39_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p40.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p40.mh deleted file mode 100755 index 22a28ce..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p40.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p40.mh: - -#ifndef stasm_hat_yaw00_lev0_p40_mh -#define stasm_hat_yaw00_lev0_p40_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p40(const double* const d) // d has 160 elements -{ - const double intercept = -0.294291; - const double coef[160] = - { - 0.026259, 0.00304231, 0.00471007, 0.0380693, 0.00169751, 0.0371624, -0.0325803, 0.0714946, - 0.038756, -0.0706592, -0.050556, -0.044473, 0.00847687, 0.0480757, 0.0251681, -0.00868673, - -0.0377852, 0.0725141, 0.0600166, 0.023805, 0.0198476, -0.0637376, -0.0291391, -0.00595925, - -0.0330728, -0.0470453, -0.0187225, -0.0402267, 0.030628, 0.0378158, -0.0681032, 0.0106109, - -0.0214861, -0.0443033, 0.04399, -0.0231529, -0.0596881, 0.0142875, 0.111937, -0.0125412, - 0.0584175, 0.0117751, 0.0847862, -0.0422083, -0.0228718, -0.106864, 0.000999244, -0.0151749, - -0.105051, -0.0073098, -0.0365, 0.00529735, 0.0203811, -0.00912108, 0.0328744, -0.0607686, - 0.0836886, -0.0848693, -0.0176966, -0.00737156, -0.012806, 0.126028, 0.0423842, -0.00318309, - 0.0293672, 0.182807, -0.0271086, 0.0277633, -0.061486, -0.0354926, -0.010041, 0.0286645, - 0.0276864, -0.0243306, -0.0165582, 0.0404657, 0.0917005, -0.0418445, -0.0159969, -0.0183133, - -0.0319363, 0.0720016, -0.0714358, -0.00818226, 0.0873738, 0.0055193, 0.0586962, -0.00883776, - 0.0404256, 0.0576895, 0.158382, 0.0138438, 0.140703, -0.0273241, 0.00108341, 0.0635048, - 0.0276563, -0.00684674, 0.0721205, 0.0407795, -0.00636522, 0.0174957, 0.00155901, 0.00708828, - -0.0363742, -0.0160143, 0.0608168, -0.0544775, -0.0138877, 0.0276545, -0.0496702, 0.00801456, - -0.0232002, -0.0268588, 0.00609065, 0.0497592, 0.00208893, -0.00925113, 0.101835, 0.0133899, - 0.0497545, -0.0352433, -0.0997082, 0.111765, -0.122685, -0.0352003, -0.065832, -0.0308568, - -0.0282716, -0.0327506, -0.0303215, 0.035174, -0.120091, 0.0711583, -0.00861694, 7.10477e-05, - -0.00997348, -0.0244965, -0.0696368, -0.0243425, -0.0127085, 0.0151471, 0.0267519, -0.00403202, - -0.00495083, 0.0127707, 0.00724922, -0.0609489, 0.023576, -0.0555012, -0.0413765, -0.00434404, - 0.0126848, 0.0212278, -0.0329424, 0.0628527, -0.0623354, 0.0609688, 0.0101004, 0.014555 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p40(hatfit_yaw00_lev0_p40); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p40_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p41.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p41.mh deleted file mode 100755 index d79e934..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p41.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p41.mh: - -#ifndef stasm_hat_yaw00_lev0_p41_mh -#define stasm_hat_yaw00_lev0_p41_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p41(const double* const d) // d has 160 elements -{ - const double intercept = -0.0377927; - const double coef[160] = - { - -0.0353348, -0.0589037, -0.00696798, -0.0153339, -0.0612999, -0.0360455, -0.162366, -0.00665881, - 0.0515615, 0.0251373, -0.016375, 0.016357, -0.0237196, 0.164118, 0.170332, -0.00381493, - 0.0365486, -0.0180069, -0.0473673, -0.00997962, -0.00629532, -0.124845, 0.00492644, 0.0330787, - 0.0128129, 0.0332008, 0.0422321, 0.0337041, 0.0774169, -0.0376993, 0.0263085, 0.0102676, - 0.0982231, 0.0127803, 0.0447597, 0.0112626, 0.039863, -0.0389654, -0.0829581, -0.0023913, - 0.0101263, 0.0630145, -0.00576953, -0.0471453, 0.011157, 0.00201119, 0.0300573, 0.00427715, - 0.00709766, -0.0197107, 0.0443243, 0.016412, -0.0125729, -0.0256797, -0.0988021, -0.0156427, - -0.0838289, -0.0358549, -0.0160809, -0.0676698, 0.00148966, 0.137653, 0.0541938, 0.00704553, - -0.026506, -0.0196888, 0.00263147, 0.00425232, 0.00130561, 0.00793335, 0.013356, -0.06753, - -0.124288, -0.0679816, 0.0187102, -0.0822505, -0.0156034, -0.0450377, 0.112686, -0.0414395, - -0.00771921, -0.148716, -0.0727516, -0.0327033, -0.000638185, 0.00963065, 0.0690835, -0.0416446, - -0.0756999, 0.213618, 0.0471655, -0.00315193, -0.0328858, 0.033096, -0.0824536, 0.122668, - 0.0419695, -0.0435438, 0.037645, 0.00861611, 0.0261346, -0.108489, -0.00987123, 0.0426558, - 0.0453392, 0.0382433, 0.0416339, 0.0447657, 0.0160877, 0.0725138, -0.119668, 0.0174806, - 0.139842, -0.0356199, -0.064772, 0.00813559, -0.0110396, 0.0340191, 0.00161844, 0.050326, - 0.10322, -0.0527045, 0.130425, -0.0248541, -0.0393123, 0.169389, -0.0495269, -0.0232829, - 0.0502757, 0.011799, -0.0442746, -0.00160266, -0.0114573, -0.0953306, 0.0132344, -0.0126185, - -0.0374817, -0.0546197, -0.0724885, 0.0126805, 0.0358073, -0.00478162, 0.0485347, -0.0636602, - -0.0487329, -0.00968574, 0.0464354, 0.0693049, -0.0143031, -0.0501061, 0.0335302, 0.00823605, - -0.0358175, 0.0265328, 0.0585218, -0.101333, 0.0400299, -0.0530801, 0.0523206, 0.00244195 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p41(hatfit_yaw00_lev0_p41); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p41_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p42.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p42.mh deleted file mode 100755 index 56501b7..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p42.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p42.mh: - -#ifndef stasm_hat_yaw00_lev0_p42_mh -#define stasm_hat_yaw00_lev0_p42_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p42(const double* const d) // d has 160 elements -{ - const double intercept = -0.255298; - const double coef[160] = - { - 0.0597054, -0.00639148, -0.0456597, 0.0742434, -0.0562403, 0.0468028, 0.0377836, 0.0261335, - 0.00668371, -0.00902325, 0.0102382, 0.0100169, 0.0745819, -0.0537504, 0.0570082, 0.0368723, - 0.0484989, -0.0122116, 0.054596, -0.024768, -0.0315189, -0.0708437, -0.0333413, -0.0525817, - 0.0530365, -0.0407074, -0.0185259, -0.0162354, -0.0673266, 0.0513573, 0.0222835, 0.0532301, - 0.0613899, 0.0505127, 0.0189354, -0.0406134, 0.0398369, -0.103857, -0.0276078, -0.0543191, - -0.0200936, 0.0326864, -0.0013231, -0.150375, 0.0262759, -0.0131941, -0.0383912, 0.00911761, - -0.0439418, 0.00131122, -0.0191709, -0.00675025, -0.0262729, 0.0538494, 0.0292808, 0.0204634, - -0.0758943, -0.0173521, -0.0234844, -0.0451664, 0.0344729, -0.00648703, 0.0372558, 0.044342, - -0.0623031, 0.0403734, 0.0141495, 0.0593253, 0.0385324, 0.077214, -0.00102277, -0.0161325, - -0.0268917, -0.0324921, -0.00732068, 0.0527798, -0.0309908, 0.107858, -0.0120938, -0.0499633, - -0.0542807, 0.0137124, 0.0733047, 0.109104, -0.0568691, 0.0979743, 0.00934294, -0.0662614, - 0.0381731, -0.0145372, 0.029335, -0.0198334, 0.0546906, -0.0276154, 0.0881988, -0.0322546, - 0.0751632, -0.0545224, 0.00349012, -0.0119639, -0.0116645, -0.0102112, -0.0282462, 0.0141178, - 0.0421056, -0.048577, 0.00676882, -0.040176, -0.0139058, -0.0723972, -0.0345437, -0.0520439, - -0.0550706, 0.0580846, 0.0662147, 0.00628797, -0.0432318, -0.0594546, 0.10154, 0.133251, - -0.0401073, 0.0144057, 0.01171, 0.0590425, 0.131444, -0.233853, -0.0506951, 0.0941215, - -0.0195994, -0.0857348, -0.0501328, 0.0372188, -0.0261387, 0.152688, -0.00874902, -0.0280669, - 0.0179512, 0.00127576, 0.0583033, 0.00306917, 0.023595, -0.0271535, 0.0926715, 0.0931256, - -0.00154915, -0.0546748, -0.043226, -0.0741834, -0.0663505, 0.116402, -0.0477188, 0.0670778, - 0.055369, 0.118064, -0.0272165, 0.100247, 0.0218371, -0.0305705, -0.0815681, -0.177642 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p42(hatfit_yaw00_lev0_p42); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p42_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p43.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p43.mh deleted file mode 100755 index 70dfc65..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p43.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p43.mh: - -#ifndef stasm_hat_yaw00_lev0_p43_mh -#define stasm_hat_yaw00_lev0_p43_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p43(const double* const d) // d has 160 elements -{ - const double intercept = 0.0682211; - const double coef[160] = - { - 0.133376, -0.0789378, 0.000363532, 0.0225045, 0.100677, 0.00512715, 0.034183, 0.0496652, - 0.0548152, 0.0102925, 0.0493077, 0.0667808, -0.0766423, 0.0350932, -0.0731524, -0.0201994, - -0.0792298, -0.0271338, -0.00685527, -0.0171653, -0.0160225, -0.0604475, 0.00351632, -0.108575, - 0.0324652, -0.00718609, -0.00533842, 0.0112263, -0.0618574, 0.0269659, 0.07854, 0.0863507, - -0.0302787, 0.0440785, -0.0174922, -0.0153434, -0.0571613, 0.0198642, -0.0448435, -0.0099439, - -0.121844, -0.0336577, -0.0163584, -0.0891238, -0.100695, -0.00669991, 0.141418, -0.0472936, - -0.0638395, 0.0067909, 0.0436656, -0.0442091, 0.0714521, -0.0902805, -0.0250223, 0.0367939, - 0.0268197, 0.0105633, -0.0204468, 0.0139929, -0.015485, 0.0859556, -0.00583686, 0.0479621, - -0.0526115, -0.00362009, -0.0274417, -0.110492, 0.00513976, 0.112853, -0.00111366, 0.00971831, - -0.020734, 0.0410006, 0.00506766, 0.0624033, 0.0564057, -0.0589353, 0.00101823, -0.00592113, - 0.0851656, 0.00722495, -0.00424113, 0.00791603, 0.137866, -0.0245269, -0.0393229, 0.123174, - 0.0810191, -0.0616335, 0.0467275, 0.0567535, -0.080989, 0.0918569, -0.134174, -0.0378361, - -0.0698077, 0.0251603, -0.0438065, -0.0845675, 0.0460268, -0.0747646, 0.0162698, 0.00630683, - -0.0112993, -0.0972859, 0.0621056, 0.187876, -0.012687, -0.0132837, -0.0988615, -0.0356376, - 0.0586386, -0.0521599, -0.017251, -0.104356, 0.0607113, 0.0482701, 0.14475, 0.0524129, - -0.022624, -0.0939393, 0.0598817, 0.0123851, -0.0845741, -0.0108795, 0.0748062, -0.0464025, - -0.0181628, 0.035901, 0.0230537, -0.096114, 0.0146146, -0.0234154, -0.0114559, -0.00910231, - 0.0569254, 0.157533, -0.0468979, 0.030716, -0.00900666, -0.0111136, 0.0834827, 0.00452342, - -0.108675, 0.00637435, -0.0723042, -0.0216719, 0.0125364, -0.0489838, 0.000672839, -0.0736326, - 0.0478355, -0.0106105, 0.0995251, -0.0189767, 0.00835041, 0.0635956, -0.103348, 0.0945145 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p43(hatfit_yaw00_lev0_p43); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p43_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p44.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p44.mh deleted file mode 100755 index 0f55a9b..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p44.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p44.mh: - -#ifndef stasm_hat_yaw00_lev0_p44_mh -#define stasm_hat_yaw00_lev0_p44_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p44(const double* const d) // d has 160 elements -{ - const double intercept = 0.0675791; - const double coef[160] = - { - -0.0767459, -0.0505188, 0.0575309, -0.0127404, -0.0220971, -0.00855632, 0.0188006, -0.0236023, - -0.0153973, -0.0149178, -0.0669407, -0.0520925, 0.020552, 0.0910471, -0.0435567, 0.066523, - -0.0440462, 0.0313665, -0.0217713, -0.0450519, -0.0192308, 0.0392672, -0.0379214, -0.0996695, - -0.027504, 0.0408019, 0.0939949, 0.116543, 0.0281901, -0.0470754, 0.0210486, -0.00561229, - -0.0869454, -0.076342, -0.0329686, -0.110867, 0.0214506, 0.0906042, 0.0267681, 0.00727575, - 0.0330856, 0.0472371, -0.0419293, -0.0554813, -0.00357445, -0.0449862, -0.0586204, 0.0603275, - -0.0472877, -0.0297275, -0.0328023, 0.16965, 0.0669265, -0.113541, -0.00395383, -0.0445593, - 0.0579616, -0.021522, -0.00834614, 0.0168392, 0.0730019, -0.0250998, 0.0551798, 0.0705395, - 0.0895496, 0.0277268, 0.028524, -0.136276, 0.0384447, 0.00776869, -0.00332092, 0.127278, - 0.0902896, 0.0314906, -0.0613173, 0.148177, -0.0544486, -0.0797823, 0.00201272, 0.0105111, - 0.025563, 0.130037, -0.0357178, -0.067914, -0.0654748, 0.0236465, 0.0934572, -0.0777674, - -0.040622, -0.0151037, -0.0265058, -0.069618, -0.0659292, 0.0783444, -0.0151342, -0.0151016, - 0.0247497, -0.0588109, 0.173313, -0.0490279, -0.0420719, 0.0246328, -0.0539151, -0.0277428, - 0.0857048, 0.0495073, 0.082829, 0.0551606, 0.00698982, 0.00724737, 0.0265228, -0.105501, - -0.0303618, -0.0176391, -0.0124724, -0.0838398, 0.0426059, 0.0759692, -0.0457718, -0.0695582, - -0.147492, 0.0132308, -0.0922444, -0.0129238, 0.0740357, 0.0330313, -0.000807307, 0.126891, - 0.0352588, -0.0201192, 0.110957, 0.0983945, 0.00943707, -0.0466551, 0.0049609, -0.029582, - -0.0249453, 0.0129157, -0.0737427, 0.00908893, 0.0203268, 0.0299702, -0.0275647, 0.00235915, - -0.0266059, -0.00973917, -0.077732, -0.0247806, -0.048671, -0.0531935, 0.0329534, 0.069377, - -0.0549999, -0.0114778, 0.00163595, 0.0616913, -0.0273367, -0.0745549, 0.0285486, 0.0775952 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p44(hatfit_yaw00_lev0_p44); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p44_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p45.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p45.mh deleted file mode 100755 index ec6ca2b..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p45.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p45.mh: - -#ifndef stasm_hat_yaw00_lev0_p45_mh -#define stasm_hat_yaw00_lev0_p45_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p45(const double* const d) // d has 160 elements -{ - const double intercept = 0.05526; - const double coef[160] = - { - 0.0630783, 0.0292596, 0.0318406, 0.0594866, 0.162379, -0.042481, -0.00574075, 0.0589157, - 0.0187495, -0.0845319, 0.0315902, 0.0586162, -0.00321549, 0.0424385, -0.0290492, 0.019273, - -0.0223471, -0.0925394, 0.0362161, -0.0493067, 0.0268499, -0.0652301, 0.0389793, 0.0232175, - -0.0856172, -0.123304, -0.0188575, 0.124631, -0.0229594, 0.0158323, -0.0698713, -0.0231933, - -0.00669872, -0.0155227, -0.0940264, -0.0507954, 0.0647246, -0.015021, 0.103123, 0.0434247, - -0.0454387, -0.0435106, 0.123729, 0.00425597, -0.117273, -0.0111372, -0.063966, -0.0870706, - -0.0145139, 0.00407427, -0.0493748, -0.102654, 0.0166099, -0.00490995, -0.0126985, 0.00883373, - 0.0724928, 0.194173, -0.0893296, -0.0535559, -0.0638593, 0.0124788, 0.0445199, -0.0546627, - -0.10875, 0.0229394, -0.0506729, -0.0494596, 0.0284053, 0.0332425, -0.00923559, -0.0446426, - 0.109393, -0.0111995, 0.176488, -0.010905, 0.0328859, 0.0782291, -0.0488318, 0.0486531, - 0.0662113, 0.00930658, 0.190805, 0.0246649, 0.0245184, -0.0199926, -0.0610693, -0.0182101, - 0.0195637, -0.0023639, -0.0381936, 0.0264845, -0.0101421, 0.0917089, 0.0477623, 0.0464948, - -0.110147, 0.0142015, -0.0189586, 0.026932, 0.0512207, 0.0101997, 0.0562209, 0.0693221, - 0.0843972, -0.0558798, 0.12107, 0.0796528, -0.0384577, -0.0286284, -0.0825829, 0.0214344, - -0.0545154, -0.00894612, -0.139344, -0.00303873, -0.0003585, -0.0585329, 0.0546727, -0.0467421, - -0.0205365, -0.00297735, -0.0124068, 0.0131846, -0.0326048, -0.0589612, 0.0353162, -0.0378347, - 0.0160492, -0.0169027, -0.0618055, -0.0317513, -0.0123924, -0.0599679, 0.0765982, -0.0172758, - 0.0192227, -0.00164206, 0.03529, -0.00517779, -0.0197369, -0.0373382, -0.0525962, -0.0805979, - -0.0586913, 0.0327283, -0.0892486, -0.0491158, 0.028206, 0.00940369, 0.077999, 0.0624194, - -0.0221663, 0.0538342, 0.0140521, -0.0422031, -0.0334, -0.00316129, -0.0506521, 0.000787958 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p45(hatfit_yaw00_lev0_p45); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p45_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p46.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p46.mh deleted file mode 100755 index f483477..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p46.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p46.mh: - -#ifndef stasm_hat_yaw00_lev0_p46_mh -#define stasm_hat_yaw00_lev0_p46_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p46(const double* const d) // d has 160 elements -{ - const double intercept = -0.100001; - const double coef[160] = - { - -0.0363415, 0.061142, -0.0180638, 0.0568104, 0.104338, -0.120442, 0.061189, -0.00934222, - 0.00585114, -0.0464362, -0.0525658, 0.00421259, -0.0302597, 0.124178, -0.0826488, -0.0377968, - 0.0847981, 0.0753743, 0.0452314, 0.111429, 0.0832982, -0.00317018, 0.0403802, 0.0433036, - 0.01293, -0.137277, -0.0958766, -0.0119499, -0.0341439, 0.0316035, -0.0180029, 0.000412558, - 0.010628, -0.0140923, -0.0372117, 0.0917931, -0.0325026, -0.0879887, 0.0284812, 0.0136098, - -0.0356775, -0.0148322, 0.00788642, 0.0261894, 0.0427855, 0.0487527, 0.064022, 0.0247199, - 0.0288025, -0.0800394, 0.0531466, -0.00520828, 0.0296685, -0.0443449, 0.0600888, 0.102966, - 0.0146727, -0.0733825, 0.167325, -0.0809933, -0.101347, -0.0855228, -0.119846, -0.0775401, - -0.059299, 0.106091, -0.0402652, -0.0764802, 0.0331985, 0.0732219, -0.0282939, 0.00358138, - -0.0297542, 0.0874255, 0.000458612, -0.071269, 0.0534737, 0.0733833, 0.134504, -0.0362897, - -0.0248235, -0.0377705, -0.102102, -0.0309831, -0.0885582, -0.0307088, -0.0261442, 0.00980097, - 0.021434, 0.0436111, 0.0199542, 0.0459498, -0.0794241, 0.0736978, -0.00438782, -0.112225, - 0.0130927, 0.032076, -0.057176, 0.064283, 0.0359534, -0.0105165, 0.0427164, 0.0449105, - 0.112998, 0.0121523, 0.0653882, 0.0681327, -0.0242019, -0.00868283, 0.0527934, 0.0273989, - -0.0170296, -0.0469701, -0.020071, 0.0254223, -0.0248253, -0.0755956, -0.091591, 0.0652433, - -0.0414259, 0.00346575, -0.000205791, -0.054021, 0.0277814, -0.0355947, -0.0545383, 0.00350014, - -0.0263599, -0.0313802, 0.06669, -0.0353331, 0.0390806, -0.046337, 0.0276272, 0.0202997, - 0.0160021, -0.0467744, 0.0404315, -0.0164396, 0.0041414, 0.0170388, 0.0115586, 0.000401085, - -0.0425657, -0.0635073, -0.0340973, -0.0870644, 0.0349884, -0.0538531, 0.0510425, -0.0116188, - 0.00410929, 0.0500994, 0.0317176, -0.0300254, 0.0144076, 0.0604306, 0.0304722, -0.0486339 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p46(hatfit_yaw00_lev0_p46); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p46_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p47.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p47.mh deleted file mode 100755 index b8f259a..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p47.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p47.mh: - -#ifndef stasm_hat_yaw00_lev0_p47_mh -#define stasm_hat_yaw00_lev0_p47_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p47(const double* const d) // d has 160 elements -{ - const double intercept = -0.288196; - const double coef[160] = - { - 0.0145772, -0.108212, -0.153255, -0.0959192, -0.0721609, 0.0482885, 0.0403409, -0.0763717, - -0.0240454, 0.178506, 0.0222825, 0.0499365, -0.0852489, 0.0213988, -0.0263927, 0.0147085, - 0.00565223, -0.0744593, 0.0766843, -0.0228721, 0.0209161, -0.0722632, -0.00590033, -0.0457106, - 0.0427698, 0.00304226, 0.0197483, 0.0300394, 0.0163251, 0.080772, -0.014475, -0.0360101, - 0.108441, -0.0135569, -0.0534398, 0.0371536, 0.0187779, -0.0138314, 0.0289164, 0.0438568, - 0.157381, -0.00633324, 0.153222, 0.114277, 0.0358875, 0.131352, -0.04012, -0.00182078, - -0.0443723, 0.0116973, 0.0276334, -0.0372375, -0.00223712, -0.0488363, -0.0250479, 0.0856026, - -0.0361814, -0.0313648, -0.0685539, 0.0479745, 0.0846673, -0.0121397, 0.0673389, 0.0463722, - -0.00283039, 0.0135717, 0.0429072, -0.00477862, 0.0291462, -0.0492575, -0.031119, 0.0168562, - -0.0568322, -0.00621676, 0.0338157, -0.104502, -0.0583815, 0.0412986, -0.0105419, -0.0429375, - -0.138418, -0.0270539, -0.0327738, -0.0970789, -0.0210804, -0.00923647, 0.0959681, -0.032649, - -0.0236632, 0.0205498, 0.00886108, -0.102493, 0.020029, -0.052447, -0.0788612, 0.0104641, - -0.0147946, 0.0278878, 0.0185803, 0.110861, -0.155255, 0.109212, 0.00441767, -0.0751712, - 0.0275521, -0.0596232, -0.0016217, 0.0301175, 0.00103745, 0.040789, 0.0678089, -0.0409453, - 0.036869, 0.0388775, 0.0929971, 0.105175, 0.0840349, -0.0215368, -0.0262974, 0.0979085, - 0.070227, 0.0379082, 0.0185362, 0.0930556, -0.00158945, 0.0407175, -0.0977794, 0.0358011, - -0.000864424, -0.0667904, -0.0417295, -0.000917683, 0.00583103, -0.00156479, 0.00926208, -0.0396698, - 0.00124758, 0.00648707, 0.0930743, -0.0384007, 0.0777273, -0.0514579, -0.0512981, 0.0585609, - -0.00036948, -0.00166287, 0.0256804, -0.00335939, 0.034693, -0.031642, 0.00565138, 0.0348895, - -0.0600963, -0.0407735, -0.106788, -0.0648633, -0.0307585, -0.00818235, 0.0451896, -0.00231565 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p47(hatfit_yaw00_lev0_p47); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p47_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p48.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p48.mh deleted file mode 100755 index 376b350..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p48.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p48.mh: - -#ifndef stasm_hat_yaw00_lev0_p48_mh -#define stasm_hat_yaw00_lev0_p48_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p48(const double* const d) // d has 160 elements -{ - const double intercept = -0.507211; - const double coef[160] = - { - -0.0614859, -0.0133936, -0.0429112, 0.00347771, 0.0487988, 0.0409153, -0.00429469, 0.0333295, - -0.00353205, 0.0171557, -0.00358719, -0.00380664, 0.063417, -0.0322571, 0.0448478, -0.0446385, - 0.00943581, -0.0403418, 0.0121319, 0.0351145, -0.0280968, -0.0131799, 0.0853901, 0.0375559, - 0.019734, 0.01007, 0.00669748, 0.0209879, 0.0692215, 0.0280948, 0.0254157, -0.0489721, - -0.00730337, -0.0127367, -0.0175461, -0.0106468, -0.0258536, 0.0137095, -0.054114, 0.00718197, - 0.0904448, -0.0401979, -0.0188511, 0.0104029, 0.0247849, 0.036541, 0.0167439, -0.0208021, - -0.0481446, -0.0136743, 0.0213653, 0.0268987, -0.0246408, 0.011438, -0.0502383, -0.0155063, - 0.029009, 0.10384, 0.00905245, 0.0524439, 0.00617108, -0.0200539, 0.0640796, -0.015994, - 0.007478, -0.0828052, 0.00644952, 0.00143945, -0.0562191, -0.0129642, 0.0179319, -0.00779265, - 0.0526817, 0.0228503, 0.0205606, -0.0136539, 0.0419818, -0.0497491, 0.0472136, -0.040681, - -0.0422641, 0.0134192, 0.0672202, 0.00381033, -0.0193291, 0.0175511, -0.0676679, 0.0378319, - 0.00997459, -0.0300587, -0.0551166, -0.0701947, 0.0373253, 0.0412041, 0.0438401, 0.0482775, - 0.0573613, 0.0613145, 0.0233865, 0.0973354, -0.0527661, -0.0387705, -0.0584262, -0.0129388, - 0.0660021, -0.0258971, -0.0815685, -0.115245, -0.0571867, 0.0677006, 0.0568456, 0.0438055, - -0.0131482, 0.0623761, 0.00405923, -0.0256485, 0.0287947, -0.027904, -0.0194221, -0.0266816, - 0.0517444, -0.0402605, 0.0182291, 0.00754605, -0.0182993, -0.0129928, 0.0355485, -0.00620289, - -0.0740793, -0.0119688, -0.0251986, 0.0410938, 0.0725084, -0.037937, -0.00898504, -0.0269353, - -0.00804159, 2.64874e-05, -0.0601373, 0.00649737, 0.0211966, 0.043171, 0.0394513, -0.0192821, - -0.081348, 0.0668955, 0.0817024, 0.0742745, 0.0639106, 0.00608219, -0.0127592, -0.0117291, - 0.0509639, -0.0885544, 0.084111, 0.115728, 0.00760755, 0.0589895, 0.055708, 0.0153924 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p48(hatfit_yaw00_lev0_p48); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p48_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p49.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p49.mh deleted file mode 100755 index 1c3e974..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p49.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p49.mh: - -#ifndef stasm_hat_yaw00_lev0_p49_mh -#define stasm_hat_yaw00_lev0_p49_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p49(const double* const d) // d has 160 elements -{ - const double intercept = -0.0776868; - const double coef[160] = - { - 0.0275848, -0.0284982, -0.0968786, 0.012601, 0.00316084, 0.0129449, 0.00235839, -0.0141913, - 0.0206723, -0.00190589, 0.00567599, -0.0649961, 0.0194063, -0.0218695, 0.0634073, 0.0830597, - -0.0303819, 0.044056, 0.109794, 0.0617282, -0.0587369, -0.0542978, -0.0373921, -0.0732725, - -0.0147875, -0.0559105, 0.0163286, -0.0135929, 0.0674894, 0.0751465, 0.00251262, -0.0182581, - 0.0741013, -0.0315891, -0.0603236, 0.00391363, 0.0408398, 0.023747, 0.118085, 0.0204529, - 0.0414591, 0.0412417, -0.0112869, 0.0261514, -0.055332, -0.0595552, -0.0397185, 0.00854414, - -0.000802313, -0.0363838, -0.0351976, -0.0156216, 0.0280306, 0.022729, 0.0339936, 0.0497414, - -0.00145967, 0.0484619, 0.0370571, 0.00932597, -0.0485191, 0.00736717, -0.0249638, -0.0268212, - 0.0469585, 0.0134989, 0.0087385, -0.0147704, 0.00580803, 0.0174812, -0.0159565, 0.0225577, - -0.086172, -0.0310139, -0.0435962, 0.0280613, 0.0303126, 0.0265348, -0.0459229, 0.00047702, - -0.00715624, 0.00728544, -0.0219822, 0.00398975, -0.00324255, 0.0189119, -0.046743, -0.00666247, - -0.0614471, -0.0207601, 0.0347472, -0.0269526, 0.0483011, 0.0129612, 0.033087, 0.0388187, - -0.00866783, -0.00879537, 0.0230041, 0.0188381, 0.00877423, -0.0108385, -0.023338, 0.011419, - 0.0151843, -0.0137601, 0.0365838, 0.0223036, -0.051489, 0.0424979, -0.0235289, 0.012765, - 0.0276007, 0.0202292, -0.00444591, -0.0218069, -0.0249463, 0.000393313, -0.0282154, -0.00764509, - 0.0679322, 0.0528856, -0.0034956, -0.00897923, -0.00621089, 0.00144049, -0.0004081, -0.0103731, - -0.00409102, -0.0275965, 0.055735, -0.011152, 0.0426197, -0.0233885, -0.024384, -0.0417632, - -0.00398724, -0.0208572, -0.0691497, -0.0154694, -0.00203742, 0.0474544, -0.0047922, 0.0394473, - 0.0499002, 0.00908049, 0.0428506, -0.0681492, -0.01479, -0.0484233, 0.00477276, -0.043034, - -0.0248895, -0.0168202, -0.0215518, 0.0550794, 0.0846115, -0.0264975, -0.00498056, 0.00626701 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p49(hatfit_yaw00_lev0_p49); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p49_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p50.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p50.mh deleted file mode 100755 index 0726e51..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p50.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p50.mh: - -#ifndef stasm_hat_yaw00_lev0_p50_mh -#define stasm_hat_yaw00_lev0_p50_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p50(const double* const d) // d has 160 elements -{ - const double intercept = -0.525298; - const double coef[160] = - { - -0.0608053, -0.017018, 0.0172086, -0.0532416, 0.0390494, -0.0315759, -0.0297668, 0.0473924, - 0.0586826, 0.00214756, -0.0129219, 0.0233852, -0.0546724, -0.00103882, -0.0289265, 0.030282, - 0.00588202, 0.0339987, 0.00612827, -0.0651488, 0.0365117, 0.0403052, 0.130052, -0.0547454, - 0.097231, 0.000362915, -0.0078282, 0.0087969, -0.0498595, -0.0528878, -0.00105175, -0.00900912, - 0.0194784, 0.050525, -0.0536473, 0.035498, -0.0304879, -0.0226244, -0.00355129, 0.0236915, - 0.0405772, 0.0418261, 0.011954, 0.0386399, 0.013586, 0.00375961, 0.0124255, -0.0264252, - -0.0673523, -0.0095416, -0.010273, -0.0466698, 0.0614134, -0.0413079, 0.005035, -0.00569076, - -0.0464577, 0.0131308, -0.0188681, 0.044243, 0.00477695, 0.103728, 0.017562, 0.0191207, - 0.0216523, 0.0303241, -0.00501208, 0.0651616, -0.0233342, -0.0485777, -0.00566667, -0.00804836, - -0.0110316, 0.0147137, 0.0109402, -0.0090745, 0.0313347, 0.0280601, -0.0329287, 0.0522614, - 0.0286707, -0.0140181, 0.0296315, 0.0747046, 0.0366504, -0.0681547, 0.025309, 0.000756275, - -0.0365015, -0.0828379, -0.0784041, -0.0216135, 0.0121855, 0.0576653, 0.0493504, 0.0327576, - -0.00447507, 0.0577139, 0.00984755, 0.021943, 0.0361952, -0.0192, 0.00460819, -0.00644308, - 0.0188758, -0.0303764, -0.0338884, -0.0107617, 0.0330361, 0.0286103, -0.00846447, -0.0121782, - -0.018174, -0.00604028, 0.059398, -0.0356322, 0.0184641, -0.0245576, -0.00695992, 0.0335402, - -0.00774446, 0.117024, 0.0552646, -0.0359862, -0.0119143, 0.0304411, 0.068866, 0.0682674, - 0.0555782, 0.0561491, 0.0561352, 0.00693271, 0.00115513, -0.0412321, -0.00218374, -0.0215376, - 0.0325355, 0.0286749, -0.0199706, 0.0677057, -0.032095, 0.0106421, 0.0338819, 0.0287217, - 0.0272375, 0.00545888, -0.0377829, -0.0680026, -0.0291841, -0.0199699, -0.00718858, -0.00224984, - -0.0131023, 0.0289813, 0.0128839, 0.0291955, -0.0326476, 0.0272142, -0.029973, -0.00616648 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p50(hatfit_yaw00_lev0_p50); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p50_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p51.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p51.mh deleted file mode 100755 index 034e7e1..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p51.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p51.mh: - -#ifndef stasm_hat_yaw00_lev0_p51_mh -#define stasm_hat_yaw00_lev0_p51_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p51(const double* const d) // d has 160 elements -{ - const double intercept = -0.0735283; - const double coef[160] = - { - 0.0771966, -0.0475953, 0.0141114, -0.0871626, -0.0297567, 0.0117006, 0.0543476, 0.100454, - -0.00160654, -0.00873661, 0.0558398, 0.0730243, -0.0876975, -0.0458926, -0.0748371, -0.0747857, - 0.043074, -0.0128038, 0.0230369, -0.0388383, 0.0207021, 0.0916334, -0.0459258, -0.0075095, - 0.0329335, -0.00683457, 0.0313122, 0.0053226, 0.00410068, -0.097334, -0.0380394, -0.0852712, - -0.043189, 0.04136, -0.0634401, 0.0336217, 0.0444248, 0.0201442, 0.115962, 0.0263664, - -0.165626, 0.0262665, -0.0616932, -0.0423803, 0.123605, 0.0371823, -0.0987946, 0.124207, - -0.0128535, 0.0327572, 0.0506632, 0.0230378, 6.70766e-05, -0.000671491, 0.082474, -0.183446, - -0.0152684, 0.0035587, -0.0499018, 0.0433574, -0.0190543, 0.0079787, 0.209665, 0.097934, - -0.0105021, 0.0475264, -0.0309403, -0.00883755, -0.00607743, -0.0292229, 0.00134788, 0.149204, - 0.0787195, -0.0241961, -0.0248272, -0.0083919, -0.0509569, -0.0183497, -0.127294, 0.000431771, - 0.102265, -0.0242652, -0.03769, 0.0246654, -0.0318418, -0.0121731, 0.0471392, -0.0252625, - -0.0130157, 0.015623, -0.0117869, 0.052078, -0.0434114, 0.0102768, -0.0805067, 0.112146, - 0.0164484, -0.0743776, 0.0826201, -0.0445363, -0.0273097, -0.0795545, -0.140864, -0.0563581, - -0.052288, 0.0941224, -0.0547488, -0.024436, 0.0455477, 0.113074, 0.00138931, -0.076687, - 0.0229466, 0.019664, 0.0236683, 0.0868684, -0.0243805, 0.0362332, 0.0363511, 0.00705766, - -0.00374566, -0.0312427, 0.00213632, -0.00514799, -0.00679184, 0.0175118, 0.0148382, -0.0639573, - -0.0106758, -0.00682166, 0.00437135, -0.0350406, 0.0249463, 0.056438, -0.00669385, -0.0437415, - -0.0168587, 0.0323241, 0.0551781, 0.0363316, 0.0518774, -0.0263602, 0.0890352, 0.0255487, - 0.0186968, -0.0221521, -0.0816743, -0.0552433, -0.0116053, -0.0323147, 0.04249, 0.0168891, - -0.0301822, -0.00211382, 0.044909, 0.05408, 0.0266886, -0.0671795, -0.0192068, 0.0266567 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p51(hatfit_yaw00_lev0_p51); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p51_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p52.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p52.mh deleted file mode 100755 index 2a7a839..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p52.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p52.mh: - -#ifndef stasm_hat_yaw00_lev0_p52_mh -#define stasm_hat_yaw00_lev0_p52_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p52(const double* const d) // d has 160 elements -{ - const double intercept = 0.356389; - const double coef[160] = - { - -0.0565966, -0.00436893, -0.0424478, -0.0441792, -0.0493693, -0.0432731, 0.0104868, -0.0650436, - 0.014265, -0.0511443, -0.00903977, -0.015103, 0.046282, 0.0308505, -0.020163, 0.0296418, - -0.00424917, 0.0130241, 0.0252249, 0.00242873, -0.048791, -0.0116566, -0.0430767, -0.027094, - 0.0141663, 0.01878, -0.0199225, -0.0357697, 0.030869, -0.0101056, 0.0593821, 0.00120212, - -0.0568285, -0.0102402, -0.0142321, -0.0413896, -0.0503273, -0.0679854, -0.0592801, 0.00953902, - 0.111465, 0.0533001, 0.0304643, -0.0172661, 0.0329174, 0.0509155, -0.0663429, 0.0313222, - -0.0275905, 0.00661647, 0.0228199, 0.0338488, 0.0772362, 0.0140637, 0.0392898, -0.0487548, - -0.0266179, -0.014756, 0.0164762, -0.0149078, -0.0383112, 0.0366548, 0.0253812, 0.0622187, - 0.0692298, 0.0385389, 0.0156687, 0.0392273, -0.0257355, -0.0034841, 0.00778259, 0.0171759, - 0.0321509, -0.0387728, 0.0235388, 0.0662522, 0.122091, 0.0199716, -0.0512887, -0.0019208, - -0.0772459, -0.112363, 0.0632655, -0.0853281, -0.0406988, -0.0210816, -0.0217176, 0.053754, - 0.0167587, 0.0105269, -0.0115349, 0.00922718, -0.0289366, 0.00887892, -0.0271364, 0.0398744, - -0.0281208, 0.00442741, -0.030013, -0.0247661, 0.0212935, -0.00852063, 0.0634168, -0.000419323, - -0.00546361, -0.0189612, 0.0459339, 0.0142435, 0.00896773, 0.0331033, -0.0353591, 0.00944868, - -0.00448893, -0.0501117, 0.0125946, -0.0807797, -0.134999, 0.0412527, -0.00657742, -0.0439409, - 0.0134538, 0.0589609, -0.0738359, 0.0728292, 0.0598862, -0.0619346, 0.00207611, 0.0837343, - -0.011448, -0.0570236, -0.00308141, -0.0547801, -0.048987, 0.0264815, -0.0873331, -0.0809104, - -0.0311207, 0.0187638, 0.0126964, 0.0260294, -0.00574034, -0.012768, 0.0660897, 0.0100209, - -0.00102118, -0.0647397, -0.0328181, -0.0209607, -0.0483956, -0.0197192, -0.0444137, -0.00505854, - 0.0317658, 0.0554469, -0.0459294, 0.0268268, 0.0425221, 0.0432919, -0.047069, -0.0406301 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p52(hatfit_yaw00_lev0_p52); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p52_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p53.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p53.mh deleted file mode 100755 index 2acc330..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p53.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p53.mh: - -#ifndef stasm_hat_yaw00_lev0_p53_mh -#define stasm_hat_yaw00_lev0_p53_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p53(const double* const d) // d has 160 elements -{ - const double intercept = -0.13673; - const double coef[160] = - { - -0.0162128, 0.00396476, -0.0566029, 0.0577933, -0.0403224, 0.043854, 0.0973011, 0.0299143, - 0.0168486, -0.00323911, 0.0485449, -0.0172789, 0.0649607, -0.0889802, -0.0184462, -0.0993979, - 0.0585193, -0.035293, -0.00442573, -0.0147112, 0.0211507, 0.0164799, -0.0609809, 0.0772597, - -0.0989319, 0.022683, 0.104042, -0.0263823, 0.00853071, -0.0832523, -0.0675489, -0.0649409, - -0.016282, -0.0674259, -0.0110918, -0.0391008, 0.082429, 0.122682, 0.0668481, 0.0173605, - -0.022077, -0.0368615, 0.0175569, -0.0553969, 0.107805, -0.0111341, -0.109027, -0.0523428, - -0.029643, 0.0261563, -0.0773877, 0.0807451, -0.0599563, 0.158952, -0.0351908, 0.00229856, - -0.0592867, 0.0120119, -0.0429973, -0.00470543, -0.0405086, 0.044953, 0.246439, 0.0100643, - 0.0409483, 0.0816822, 0.0164904, 0.039665, 0.0354091, -0.146376, 0.0452718, 0.054022, - 0.107014, -0.0216112, -0.029913, 0.0774411, -0.167302, 0.0628407, -0.0570565, 0.0198331, - -0.0142194, 0.105594, -0.0181337, 0.0493809, -0.020624, 0.0242202, 0.0123011, 0.0849996, - 0.0834657, -0.0662961, -0.0137023, 0.0501838, -0.0419186, -0.0859018, 0.0175011, 0.0450542, - -0.023375, -0.0190949, 0.0676106, -0.0654642, 0.035589, -0.0189422, -0.115612, -0.0683701, - -0.00420837, -0.000420717, 0.00812341, 0.0158822, -0.0376482, 0.0839915, -0.0577299, -0.0355472, - -0.0347943, 0.0233613, -0.0258721, -0.0477491, 0.0811518, 0.0227677, 0.00157778, -0.0204129, - 0.0165362, 0.0433761, 0.0466629, -0.00050736, -0.00799493, 0.000497581, 0.0162673, -0.0418607, - -0.0475751, -0.0505083, -0.0717373, 0.00104577, 0.00463248, -0.00374365, 0.0151036, -0.0539417, - 0.0369221, 0.0425143, 0.0314458, 0.0161309, -0.0246016, 0.0463812, 0.051867, 0.0384105, - 0.0125363, -0.0128568, 0.0299553, -0.0123259, 0.047599, -0.0800968, 0.0171995, 0.0348205, - -0.0129267, -0.00629993, -0.00966322, -0.01211, -0.027125, -0.0253052, 0.020968, 0.0456038 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p53(hatfit_yaw00_lev0_p53); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p53_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p54.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p54.mh deleted file mode 100755 index a7266df..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p54.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p54.mh: - -#ifndef stasm_hat_yaw00_lev0_p54_mh -#define stasm_hat_yaw00_lev0_p54_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p54(const double* const d) // d has 160 elements -{ - const double intercept = -0.464466; - const double coef[160] = - { - -0.0162754, -0.0153452, -0.0161929, 0.0257948, -0.0246163, -0.0193628, 0.0530305, 0.0300821, - 0.0486863, 0.0574463, -0.0244103, 0.107083, 0.0315724, 0.0284082, 0.012066, -0.0650411, - -0.0106388, 0.0183337, -0.0219904, -0.0990341, -0.0749949, -0.0334635, 0.0261003, 0.02563, - 0.011018, 0.0297827, 0.0760818, 0.0825351, -0.0197978, -0.0214938, 0.000281256, 0.0319635, - 0.0251952, -0.0217755, -0.0317886, -0.0251796, 0.0150476, 0.0310586, 0.027193, 0.00305684, - -0.0423644, -0.0266555, 0.0468223, 0.0278544, -0.0654182, -0.041959, -0.0455653, -0.0202466, - -0.0398525, 0.0113177, -0.00173139, 0.0465842, 0.124307, -0.042951, 0.0456485, -0.0201564, - 0.0807864, -0.015536, -0.0311899, -0.12592, 0.0902072, 0.129185, 0.0408016, 0.105544, - -0.0779884, -0.0445003, 0.0252348, 0.0535123, -0.0966987, -0.0273442, -0.0480463, -0.00988774, - 0.0142944, 0.00415365, -0.00524356, -0.0118335, 0.0622267, -0.0579706, -0.0054806, -0.00951735, - 0.0726154, 0.00363722, 0.0446771, 0.0406553, -0.0246469, -0.026586, -0.0437119, 0.0260516, - -0.0118612, -0.067339, -0.0755971, -0.134983, -0.0956992, 0.0330301, 0.0782567, 0.0478521, - 0.104947, 0.0930333, 0.0890881, 0.164204, 0.0697622, -0.00080646, -0.106038, -0.0455515, - 0.00634715, -0.0361326, -0.00731314, -0.0253596, 0.000753405, 2.08528e-05, 0.0958543, -0.0173228, - 0.0342102, 0.0261247, 0.00132271, -0.00554724, 0.0253332, 0.0323493, -0.00161845, 0.0190059, - -0.00543632, 0.0304435, 0.0391995, -0.00784013, -0.00276152, 0.0288609, 0.0414028, 0.00860349, - -0.0349619, 0.057662, -0.0989749, 0.0469945, 0.00829691, 0.060334, 0.0470848, -0.0054533, - 0.0335097, 0.0154854, 0.068254, -0.0794785, 0.059407, -0.0444638, -0.0561907, -0.0200719, - -0.0533013, 0.0146877, -0.0398335, 0.010249, -0.0494084, 0.0478146, 0.0141436, 0.0432986, - 0.0206777, 0.0120814, 0.0126949, 0.053215, -0.0018716, -0.0706257, -0.0213457, 0.032249 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p54(hatfit_yaw00_lev0_p54); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p54_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p55.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p55.mh deleted file mode 100755 index 0ad9404..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p55.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p55.mh: - -#ifndef stasm_hat_yaw00_lev0_p55_mh -#define stasm_hat_yaw00_lev0_p55_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p55(const double* const d) // d has 160 elements -{ - const double intercept = -0.0755359; - const double coef[160] = - { - 0.0097482, -0.047409, -0.0881379, -0.0172703, -0.0137115, 0.0235996, 0.029916, -0.0214355, - 0.00161234, 0.0750425, 0.135029, -0.0492864, -0.0153979, -0.0556731, 0.0322142, 0.00203836, - 0.0018056, -0.0900747, 0.0195889, 0.0194127, 0.0391212, -0.013897, -0.072664, 0.0721148, - 0.0615618, -0.062842, -0.0682977, -0.144091, 0.0446316, 0.0477021, -0.00812852, 0.0398407, - 0.0196783, 0.0356806, 0.0216706, 0.0420912, -0.0355284, 0.0109777, -0.0606375, 0.00570031, - -0.0230915, -0.0239408, 0.0843259, 0.0195546, 0.0289893, 0.0399275, -0.0146609, -0.0316555, - -0.0213881, 0.0260282, 0.0356055, 0.107212, 0.1077, 0.0154484, 0.0124143, -0.0202823, - 0.0256023, 0.0290213, -0.169727, -0.0176858, -0.0224288, 0.0858483, 0.125286, 0.0288955, - 0.0221204, 0.115091, -0.0585257, 0.121856, -0.132179, 0.0985308, 0.0433111, -0.116466, - -0.051042, 0.0849401, 0.0376088, 0.087932, 0.0112253, -0.0443104, -0.0331158, -0.0469505, - 0.010993, -0.0195273, -0.0830829, -0.0188093, -0.0383246, -0.0258202, 0.00472828, 0.00407893, - 0.0612224, 0.0928033, -0.0052713, -0.0382207, -0.103713, -0.0462224, -0.019763, 0.0530144, - -0.067134, 0.0130005, 0.109736, 0.00863756, -0.0121759, -0.0504208, -0.0640108, -0.0348149, - -0.0908492, -0.133754, 0.0758591, -0.0891465, 0.17336, -0.0308737, 0.0146765, 0.0527735, - 0.0404054, -0.0982392, 0.0282832, -0.050986, 0.00194332, -0.0301109, 0.0165215, 0.0125049, - -0.0216377, 0.0299807, 0.0343868, 0.0467858, 0.0612859, 0.0467386, 0.0272579, -0.0411306, - 0.0402067, -0.122819, -0.0320746, -0.029977, 0.00209943, 0.0424084, 0.00394216, -0.0624904, - 0.0228113, 0.00442315, 0.0133522, 0.0183693, -0.00681054, -0.0497652, -0.00411673, 0.0485881, - 0.0659018, 0.0673055, -0.0650168, 0.0802371, -0.107827, 0.0171927, 0.00624577, -0.00436165, - 0.00308984, 0.0014256, -0.050937, -0.0029626, 0.0664246, -0.0370867, 0.00921039, -0.0119243 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p55(hatfit_yaw00_lev0_p55); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p55_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p56.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p56.mh deleted file mode 100755 index 24899f1..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p56.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p56.mh: - -#ifndef stasm_hat_yaw00_lev0_p56_mh -#define stasm_hat_yaw00_lev0_p56_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p56(const double* const d) // d has 160 elements -{ - const double intercept = -0.0701842; - const double coef[160] = - { - -0.0132114, 0.119623, 0.0713842, 0.114439, 0.0054625, -0.00523126, -0.0795686, 0.101549, - -0.000944142, -0.0242149, -0.095902, -0.0807434, 0.0738906, 0.0268537, 0.021225, -0.0320412, - -0.0138074, -0.0830629, -0.0489884, -0.0431324, -0.0298249, -0.0612572, 0.00346305, -0.026525, - 0.0346444, -0.0416325, -0.0747525, -0.0405601, 0.00013738, -0.0140486, 0.00103337, 0.000979364, - 0.0149998, 0.0848052, 0.045373, 0.105516, 0.0223434, 0.103645, -0.0732751, 0.0249105, - -0.052389, -0.0195596, -0.0353349, -0.0223395, 0.0275832, -0.0217439, 0.00366545, 0.0131151, - 0.0707921, -0.0290049, -0.000771017, 0.058231, -0.0832677, 0.00170624, 0.0655336, 0.0349129, - 0.0166434, 0.0719843, 0.152037, 0.0561134, 0.0435895, -0.049025, 0.0490456, -0.0973362, - -0.0624395, 0.0465154, 0.0392454, -0.0112973, 0.0519201, 0.0413816, 0.0523942, 0.0218078, - 0.017602, -0.0182201, -0.0667719, -0.0265606, -0.048762, -0.0223863, 0.0212332, -0.0320959, - 0.0281657, 0.0187358, -0.0429681, -0.0843838, -0.0765552, -0.0197888, 0.0294666, -0.0780042, - -0.0450454, -0.0516515, 0.000542504, -0.00232806, 0.0702022, -0.0167278, -0.0438407, 0.0809685, - 0.020539, 0.00526552, 0.0693077, 0.00290782, -0.0202558, -0.0115138, -0.0704899, -0.0187245, - 0.055074, -0.0130068, -0.0440525, -0.0220203, -0.0252487, 0.0566609, -0.0329361, -0.0266697, - -0.0306602, -0.107831, 0.000767983, -0.0101934, 0.0108228, -0.0367206, 0.0122181, -0.000333538, - 0.0515653, 0.0244634, 0.00172497, 0.0794041, 0.0844254, 0.0294867, 0.00383756, 0.0424433, - -0.0448878, 0.0292897, 0.0288161, 0.0534636, 0.0220402, -0.0159877, -0.00873339, -0.0167804, - -0.0192203, -0.06132, -0.0446216, -0.0663121, -0.029097, 0.000563146, 0.061428, -0.0136953, - 0.0581288, 0.0601184, 0.0158533, 0.00126791, -0.0354869, -0.0315443, -0.0286293, 0.0164809, - 0.0175411, 0.101643, -0.0103028, 0.0580025, 0.0665844, 0.0382276, 0.0299581, 0.0251437 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p56(hatfit_yaw00_lev0_p56); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p56_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p57.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p57.mh deleted file mode 100755 index b8fa5ce..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p57.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p57.mh: - -#ifndef stasm_hat_yaw00_lev0_p57_mh -#define stasm_hat_yaw00_lev0_p57_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p57(const double* const d) // d has 160 elements -{ - const double intercept = -0.0571354; - const double coef[160] = - { - -0.0623248, 0.0566206, 0.0691202, 0.0579371, 0.0442881, 0.0106047, -0.0938253, 0.020986, - 0.0656418, -0.141306, -0.0794616, -0.0818886, 0.0672128, 0.0704122, 0.0153506, 0.0292146, - -0.0271806, 0.0015141, -0.00563497, -0.141781, -0.00666265, 0.0461878, -0.0848238, 0.0148376, - 0.0217444, -0.0427974, 0.152615, 0.0576113, 0.00811842, -0.00417743, 0.0647198, -0.0783728, - -0.0016353, -0.011506, -0.0855872, -0.00389048, -0.0308737, -0.00585197, 0.00306674, 0.0336197, - 0.0194198, 0.0928571, 0.0164469, 0.0398484, -0.0647082, -0.0722282, -0.0389821, -0.069822, - -0.0705482, 0.104529, -0.0409855, 0.124235, 0.029418, -0.0921492, 0.0667528, 0.13861, - 0.0234115, -0.00942052, -0.145887, 0.0451519, 0.0331773, 0.0298756, 0.109082, 0.0708995, - 0.0368133, 0.113175, -0.0175444, 0.0336535, -0.046025, -0.0220826, 0.00475333, 0.0410397, - 0.0541545, 0.0204659, 0.103674, -0.0128446, -0.00714037, -0.0218233, -0.0173083, 0.00525749, - 0.0159614, -0.0471427, 0.0131071, -0.114115, 0.0012803, 0.0168933, -0.00916179, -0.0359775, - 0.078492, -0.0863646, 0.0409317, -0.0949475, -0.146234, 0.0316559, 0.0347211, -0.0576807, - -0.0139048, -0.0170914, 0.109144, 0.0175288, -0.0194778, -0.0234532, -0.0623031, -0.087773, - -0.0753734, -0.0428324, 0.0248371, 0.0919151, 0.0759525, 0.0260988, -0.0105893, -0.0239722, - -0.0249461, -0.0290519, -0.0772167, -0.0434918, 0.000233576, 0.0129279, -0.00876653, -0.00220475, - 0.00474099, 0.0760477, -0.0340906, 0.0635409, 0.0525037, -0.00218869, 0.038332, 0.0308744, - -0.0493035, 0.0034007, -0.0563515, 0.0392411, 0.0432809, 0.0316663, -0.0117442, -0.00937159, - -0.0231698, 0.0476398, 0.00634718, -0.0296075, 0.0394447, 0.0251174, -0.0250208, -0.00687285, - 0.0342631, 0.0041199, -0.0525127, -0.0648111, -0.00750986, -0.0291794, 0.0301712, 0.0163773, - 0.031004, 0.0360219, 0.0223957, 0.00481596, -0.0157141, -0.0241272, 0.0034461, 0.0169819 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p57(hatfit_yaw00_lev0_p57); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p57_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p58.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p58.mh deleted file mode 100755 index 3e95624..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p58.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p58.mh: - -#ifndef stasm_hat_yaw00_lev0_p58_mh -#define stasm_hat_yaw00_lev0_p58_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p58(const double* const d) // d has 160 elements -{ - const double intercept = -0.359932; - const double coef[160] = - { - -0.00761123, -0.0101748, -0.0117021, -0.0128548, -0.0150867, 0.0174357, 0.0328092, 0.0050596, - -0.00400278, 0.0439325, 0.0170153, 0.0245041, -0.00633053, 0.0175203, -0.0352703, -0.0365102, - -0.0642809, -0.0521717, 0.00451388, 0.0309425, -0.0218091, 0.0284802, 0.0552614, 0.0148388, - 0.041233, 0.0935166, 0.0186703, 0.0214059, 0.0564032, -0.0538083, -0.0294074, -0.0206507, - -0.0216263, -0.00754928, -0.0254575, 0.00816284, -0.00287187, 0.0195221, 0.0582276, 0.00877311, - 0.0577802, -0.0210194, 0.00718873, -0.0129825, 0.0503901, 0.0155677, 0.0594518, -0.00213925, - -0.11883, 0.0361552, 0.0149552, -0.0607204, -0.048431, -0.0815044, -0.0680601, -0.0927384, - 0.081904, -0.0936196, -0.0204655, 0.0427298, 0.077855, 0.148306, 0.0584974, 0.14153, - 0.0376798, 0.0187805, -0.0091708, -0.0703296, -0.0126466, -0.0528165, -0.000347546, -0.0392141, - -0.0200908, -0.025994, 0.062282, -0.0117584, -0.0694793, 0.0127599, -0.0150978, -0.0539192, - 0.0719813, -0.0304772, 0.0147813, 0.0193291, 0.0410686, 0.0260082, -0.0324154, -0.0557322, - -0.0544753, 0.0150316, -0.0360627, -0.0141601, -0.0291539, 0.0452719, 0.0876727, 0.0738235, - 0.0814983, 0.131514, 0.112725, 0.0938299, 0.0979873, -0.0601742, -0.122296, -0.0394361, - -0.130863, -0.075843, -0.112055, -0.0258125, -0.0372027, 0.0590324, 0.0568197, 0.0664451, - 0.0305872, 0.0240616, 0.0328911, -0.0431841, 0.100371, 0.00834137, 0.0133415, -0.0191496, - 0.00333501, 0.067146, 0.0242995, -0.0225552, 0.0105483, 0.00587485, -0.0351108, -0.0345332, - -0.0358841, -0.0183259, -0.0552155, 0.0197743, -0.021501, 0.0084624, 0.0534296, -0.0201019, - 0.1101, -0.0419702, 0.0693107, 0.0233454, -0.0126147, -0.0343688, -0.0774627, -0.000330213, - 0.00517364, 0.00131838, -0.0864239, 0.0168628, 0.000298095, -0.0233303, 0.0777644, 0.0202048, - -0.0156178, 0.0126178, 0.0487398, 0.030913, -0.00627167, 0.0243627, 0.0107362, 0.0808626 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p58(hatfit_yaw00_lev0_p58); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p58_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p59.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p59.mh deleted file mode 100755 index 7bd0453..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p59.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p59.mh: - -#ifndef stasm_hat_yaw00_lev0_p59_mh -#define stasm_hat_yaw00_lev0_p59_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p59(const double* const d) // d has 160 elements -{ - const double intercept = -0.187416; - const double coef[160] = - { - -0.00286368, 0.0378576, -0.0227993, 0.0182712, -0.0112563, 0.0243808, 0.0360358, 0.029116, - 0.0431797, -0.000296918, 0.0358796, 0.008409, -0.00268351, 0.00142341, 0.00568496, -0.0108786, - 0.0195995, -0.0126412, -0.00397137, -0.0555884, -0.0784971, -0.0597657, -0.0585952, 0.0198854, - 0.0126553, 0.00987017, 0.0327971, 0.0833251, -0.056956, 0.00482448, -0.0888221, -0.0391884, - 0.00604851, -0.0422404, 0.018202, -0.0393439, -0.0328196, 0.0128808, -0.0127062, -0.00770134, - 0.0174057, -0.000154238, 0.0580039, 0.0105996, 0.0157576, 0.00279355, -0.00245585, -0.0194335, - -0.0369786, -0.0469248, -0.0701926, -0.0262929, 0.0327062, 0.0339589, -0.107627, -0.0730288, - -0.0497255, -0.00274556, -0.00571666, 0.00199734, 0.118007, 0.187527, 0.119406, 0.121708, - -0.0460156, 0.0219804, 0.101336, 0.0297406, -0.0288209, -0.0271647, 0.0616006, 0.00549581, - -0.028321, 0.0337983, -0.0899367, -0.00204601, 0.0646373, 0.0246665, 0.0286556, 0.00891863, - -0.0028117, -0.0149953, -0.054518, -0.0618125, -0.0563932, -0.00104922, 0.0134293, 0.0280059, - 0.0100872, 0.06537, -0.0498383, 0.0421938, -0.035882, -0.147703, -0.0233133, 0.0658052, - 0.0474915, 0.0739941, 0.0786827, 0.0564951, -0.02181, -0.00229185, -0.0427148, 0.0286327, - -0.00609921, -0.00512322, 0.064053, 0.0320087, -0.038672, -0.0297259, -0.0794662, 0.0292339, - 0.0574906, -0.018566, 0.000277248, -0.022751, -0.0198875, -0.0358639, 0.0158873, -0.010142, - 0.00182329, 0.00359756, 0.00435788, 0.0295796, 0.119456, 0.0263023, 0.0204098, 0.0114169, - -0.00193841, 0.0140433, 0.0570422, 0.0294554, -0.00820023, 0.0369345, -0.0367783, -0.0726929, - -0.0276336, -0.0243189, -0.0442886, -0.0407286, 0.0464547, 0.0672728, 0.100168, -0.0297279, - 0.00504735, -0.0173015, -0.0461166, 0.0336461, 0.0311748, -0.0196721, 0.0684134, -0.0403563, - -0.000164238, 0.0157417, 0.00717819, -0.011704, -0.0501911, -0.00318851, -0.0127978, -0.0111662 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p59(hatfit_yaw00_lev0_p59); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p59_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p60.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p60.mh deleted file mode 100755 index a99e716..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p60.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p60.mh: - -#ifndef stasm_hat_yaw00_lev0_p60_mh -#define stasm_hat_yaw00_lev0_p60_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p60(const double* const d) // d has 160 elements -{ - const double intercept = -0.236764; - const double coef[160] = - { - -0.00197245, 0.0128451, 0.0198147, 0.020576, -0.007079, -0.00636769, -0.0107469, -0.0493139, - -0.00569941, -0.0404362, 0.00276896, 0.00676751, 0.0438855, 0.140103, -0.0323757, 0.00516079, - -0.0529855, -0.0644861, -0.0442911, 0.0134652, -0.0194564, 0.021188, -0.0498812, -0.0232742, - -0.0102817, -0.1061, -0.0475803, -0.0172933, -0.00412755, 0.0293299, -0.0483678, 0.0282573, - 0.0827001, 0.148713, -0.00604033, -0.0105001, -0.0578514, 0.000328193, -0.118422, 0.0590516, - -0.0340966, 0.017112, -0.0161368, 0.049901, -0.0273938, -0.0929948, -0.124842, 0.069677, - 0.0378484, -0.0246342, -0.0179167, 0.0288639, 0.0721973, -0.107982, 0.0721401, 0.00446476, - 0.0765287, 0.109693, 0.0438368, 0.00040456, -0.00192336, 0.0528666, 0.0540516, 0.0657683, - -0.0428629, 0.0369003, 0.00763569, 0.0349373, -0.0146549, 0.111163, 0.152429, 0.0106377, - -0.0524489, 0.033647, 0.0669536, -0.0643599, -0.00796976, 0.0028909, 0.0133357, -0.030029, - 0.00393491, 0.053272, -0.000150223, 0.0442013, -0.0158533, -0.000621834, 0.0630153, -0.0181138, - 0.0168663, 0.0786882, 0.00852558, -0.00702952, -0.0766786, 0.116086, -0.00451059, -0.0183954, - -0.0689788, -0.0650831, -0.0742779, -0.0810078, -0.0297897, -0.00660032, 0.0415835, 0.0561212, - -0.0346848, -0.00160062, 0.0299663, -0.0098611, 0.00271499, -0.0827654, -0.0378623, 0.00499992, - 0.0139898, -0.0581541, -0.0315072, 0.00862046, 0.0442725, -0.0501002, 0.00183363, -0.0595284, - 0.0526538, 0.00426772, 0.0430322, 0.0451649, -0.0406563, 0.028459, -0.0120121, 0.0366126, - -0.0309153, -0.0141049, -0.0338174, -0.0518742, 0.00102668, -0.061806, -0.0272608, 0.0100434, - 0.0751594, -0.0403936, 0.00526156, 0.0525223, -0.00413169, 0.0437875, -0.00235025, -0.020801, - -0.0201232, 0.0186407, 0.00730079, -0.0170785, 0.0286837, 0.0694106, -0.0285483, -0.000623372, - 0.0268898, 0.0308178, 0.074486, 0.0490596, -0.0225366, -0.0159021, 0.0305269, 0.0645906 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p60(hatfit_yaw00_lev0_p60); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p60_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p61.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p61.mh deleted file mode 100755 index 2f11e84..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p61.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p61.mh: - -#ifndef stasm_hat_yaw00_lev0_p61_mh -#define stasm_hat_yaw00_lev0_p61_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p61(const double* const d) // d has 160 elements -{ - const double intercept = -0.28026; - const double coef[160] = - { - -0.0146942, -0.0055333, -0.0110751, 0.0521485, -0.0730841, 0.0291341, -0.037805, 0.010414, - 0.0234376, -0.0283204, -0.0472401, -0.0149803, -0.0338863, -0.00567664, -0.0529659, -0.0349243, - -0.00565509, 0.014049, -0.0388688, -0.0136404, 0.0126807, 0.0518957, -0.107478, 0.0383288, - 0.0252085, -0.0277018, -0.0478312, -0.0425131, 0.0291863, 0.00722947, 0.00927027, 0.0614206, - -0.0504781, 0.0182626, 0.0361532, -0.00574793, -0.0819782, 0.0321892, -0.0593218, -0.00448104, - 0.0320681, -0.0672482, 0.00516844, -0.0288856, 0.0611246, -0.0562171, 0.0165429, 0.0222913, - 0.0545127, 0.110174, 0.0540339, -0.0210936, -0.0159477, 0.0348006, -0.00998912, -0.0310053, - 0.0824834, -0.0182082, 0.0720612, 0.0534534, 0.0301741, -0.0284705, 0.137449, 0.00763148, - 0.0119775, -0.0384825, -0.0159306, 0.103958, 0.0538981, 0.0458337, 0.0763992, 0.0215485, - 0.0663792, 0.0107496, 0.0704059, -0.0504434, 0.0498079, -0.0470876, -0.0977784, -0.0779998, - -0.061815, 0.109146, 0.049255, 0.0042884, -0.0277765, 0.0857249, 0.124497, -0.00507932, - -0.0778694, -0.00651398, -0.0368312, -0.0432394, -0.00962921, 0.0262905, -0.0947112, 0.00602868, - -0.0622544, 0.00394355, 0.00617383, -0.0185923, -0.0552712, 0.0355191, -0.0326985, 0.0470317, - -0.0660571, -0.107443, -0.0668645, 0.0921773, 0.00600866, -0.111141, 0.0130448, 0.10503, - 0.00641894, -0.0304865, 0.127048, -0.0691013, 0.00550339, 0.027669, 0.114193, -0.0184766, - -0.0207632, -0.022765, 0.00904602, 0.00746773, 0.00599841, -0.00488869, -0.0534582, 0.0515307, - 0.0621438, 0.0187851, -0.0190282, 0.0501474, 0.0356681, -0.0386146, 0.0776663, -0.0113139, - 0.000161987, 0.0669283, 0.0548343, -0.00490547, -0.00534426, 0.0128642, 0.0401569, -0.0392736, - 0.0341419, -0.0508964, 0.0400578, -0.0308971, -0.035214, 0.00668947, -0.0767097, -0.0184894, - 0.0234721, 0.0166095, -0.111842, 0.0298985, 0.0129837, 0.069013, 0.00071445, 0.00835605 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p61(hatfit_yaw00_lev0_p61); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p61_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p62.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p62.mh deleted file mode 100755 index eece009..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p62.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p62.mh: - -#ifndef stasm_hat_yaw00_lev0_p62_mh -#define stasm_hat_yaw00_lev0_p62_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p62(const double* const d) // d has 160 elements -{ - const double intercept = -0.271217; - const double coef[160] = - { - 0.07948, 0.0437671, -0.0697943, 0.0119323, 0.0803141, 0.0932291, -0.09037, 0.0235767, - 0.00692423, -0.02589, 0.00495027, -0.0709938, -0.0677818, 0.0179643, 0.0101921, 0.0649224, - -0.0411595, 0.00562571, 0.0160733, 0.0165855, -0.0296651, -0.0320628, -0.128681, -0.0818367, - -0.0792844, -0.0413823, -0.000823847, 0.0110478, -0.0163832, 0.0231477, -0.0114021, 0.0520293, - 0.0577327, -0.0142028, -0.0675647, -0.0131133, 0.123754, 0.0369976, -0.0699567, 0.0929937, - -0.0545821, 0.0223352, 0.0326399, 0.00969172, -0.00425451, -0.00738795, 0.0776847, 0.0719315, - -0.0454727, -0.0823952, 0.00202134, 0.187556, 0.0873943, -0.0331156, 0.0474275, 0.0652721, - 0.0871686, -0.0484912, 0.120176, -0.0901076, 0.0364221, -0.0146413, -0.0385369, 0.0150759, - 0.0713851, 0.182518, -0.0132574, -0.0752734, -0.0595784, 0.0718288, 0.00931915, -0.0419838, - -0.0280534, 0.00628631, 0.0608759, 0.0500026, -0.0698966, 0.0283689, 0.108946, -0.0188968, - -0.0163942, 0.037053, 0.0289468, -0.033291, -0.0470211, 0.0418033, -0.041566, -0.0909216, - 0.0202262, -0.0895422, -0.0224228, -0.00758196, 0.00209972, -0.117618, -0.000201107, 0.0590209, - -0.0064056, -0.0313781, 0.0172467, -0.0636675, 0.0173885, 0.0650841, 0.106798, 0.0107954, - 0.000448156, -0.024564, -0.020756, -0.0362784, -0.00762973, 0.0272557, 0.0276844, -0.0909399, - 0.00735028, -0.0482779, 0.0332156, 0.0249625, 0.0114111, -0.088243, -0.0682508, 0.000282023, - 0.00690359, 0.0275026, 0.0680446, -0.0160326, 0.0227741, 0.011287, 0.0351742, 0.00275973, - -0.0225988, 0.0197895, -0.0193274, 0.0366129, -0.0533131, -0.00670991, -0.0447927, 0.00376718, - 0.0436822, 0.00625437, -0.0415818, 0.0150441, 0.0643689, 0.0633671, 0.0297409, 0.0607006, - -0.0610927, 0.0138872, -0.0109572, -0.000487174, -0.022088, 0.00549297, -0.0392257, 0.00331464, - 0.0412751, 0.0156284, 0.056929, 0.0353357, 0.042054, -0.00746676, 0.0248742, 0.0126526 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p62(hatfit_yaw00_lev0_p62); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p62_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p63.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p63.mh deleted file mode 100755 index 8c36743..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p63.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p63.mh: - -#ifndef stasm_hat_yaw00_lev0_p63_mh -#define stasm_hat_yaw00_lev0_p63_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p63(const double* const d) // d has 160 elements -{ - const double intercept = -0.180203; - const double coef[160] = - { - -0.0410927, -0.0257476, 0.0247765, 0.0347137, -0.021933, -0.0191296, -0.0465093, -0.0169094, - 0.0157761, -0.0390968, 0.0212151, -0.00466446, -0.00205661, 0.0565016, -0.0148909, 0.018339, - 0.0162372, -0.055823, -0.0878698, -0.0162096, 0.0287148, 0.0608344, -0.066679, 0.0270371, - -0.0622496, 0.0136787, -0.020422, -0.0158276, 0.00384923, -0.00560402, -0.0924711, 0.0254943, - -0.0938038, -0.00561036, -0.0438589, -0.0316654, -0.00692676, -0.00927567, -0.0349891, 0.0142371, - 0.0645674, -0.0537472, 0.0751499, -0.0283343, 0.0197518, -0.052364, -0.0677131, 0.00644532, - 0.0540218, 0.157756, -0.0435248, -0.0764782, 0.00166934, -0.0446328, 0.0366324, -0.00347119, - 0.0254115, 0.0612711, 0.100355, 0.0159177, 0.0953288, -0.00978288, 0.141379, 0.0205209, - 0.0541199, -0.042183, 0.0197066, 0.0512104, 0.0304227, 0.00089267, 0.0369377, 0.01988, - 0.0706556, 0.0182494, 0.0374609, -0.0366347, 0.0266579, -0.0197925, -0.0292716, -0.0187394, - -0.00673662, -0.0594272, 0.153993, -0.0569537, 0.00920547, 0.0104516, 0.101565, -0.0152649, - -0.034038, 0.0627083, -0.083143, -0.0873399, -0.0747769, 0.139222, 0.0307688, -0.112774, - -0.0104088, -0.0486825, 0.0213907, 0.0442054, -0.0752944, 0.0140747, -0.0176173, -0.0142793, - -0.0238698, -0.0508371, -0.0657885, 0.00397604, -0.0596904, 0.0198334, -0.119394, 0.0395842, - -0.0328248, -0.0113403, 0.0446755, 0.121346, -0.0474904, 0.00498587, 0.11635, 0.0451392, - 0.0241854, 0.079017, -0.0800126, 0.0116945, 0.0166996, 0.0367649, -0.0166098, 0.081991, - -0.051179, -0.0321827, 0.00834609, -0.0470143, 0.00398131, -0.0172868, -0.0708671, 0.0394914, - 0.0219069, -0.0114561, 0.0628756, 0.0394551, 0.0233882, -0.0586699, -0.0132243, -0.00531203, - 0.00143426, 0.0614334, -0.00182969, -0.00755107, 0.0506033, 0.0271987, 0.0995763, 0.0116256, - 0.0263639, 0.0079182, -0.00226031, -0.0342182, -0.000624975, -0.00309827, -0.0204641, -0.0322109 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p63(hatfit_yaw00_lev0_p63); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p63_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p64.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p64.mh deleted file mode 100755 index 4caa5c9..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p64.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p64.mh: - -#ifndef stasm_hat_yaw00_lev0_p64_mh -#define stasm_hat_yaw00_lev0_p64_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p64(const double* const d) // d has 160 elements -{ - const double intercept = -0.207531; - const double coef[160] = - { - -0.033128, -0.0316819, -0.0274924, 0.113993, 0.0858719, 0.0840909, -0.0868366, 0.0411405, - 0.0394788, 0.000950094, -0.00405899, -0.136485, -0.042866, -0.0107319, -0.0916283, -0.0320452, - -0.0305096, -0.00274163, -0.0261214, 0.00232638, -0.0393149, -0.00498823, -0.092735, 0.0366293, - -0.000545152, -0.00643406, -0.0317974, -0.0718109, -0.00255608, -0.0264166, 0.0157071, 0.0915263, - 0.0210131, -0.0107084, -0.00220488, 0.0351367, -0.0134759, 0.0243626, -0.0268685, -0.0108653, - -0.053215, -0.0525043, 0.00623991, 0.0217246, -0.0963558, -0.0670036, 0.0239302, 0.0214107, - -0.017606, 0.0426757, 0.0247713, 0.0735639, 0.021345, 0.0211247, 0.106267, 0.0829704, - 0.0515325, 0.0408728, 0.0601377, 0.101535, 0.0585454, 0.0716723, 0.109444, 0.0995805, - 0.0351164, 0.0664315, -0.0282609, -0.0103504, -0.0241923, 0.0307811, 0.0258399, -0.0550516, - 0.00864579, -0.00781669, 0.0238672, 0.000106582, 0.0113016, 0.0243508, -0.0842214, -0.0762506, - 0.0182182, -0.0119602, -0.0264737, -0.0444391, 0.0344863, -0.0405479, -0.00162291, -0.0734995, - 0.00789368, -0.0103634, 0.0473715, -0.0154205, -0.034351, 0.0215, -0.00958682, -0.0979013, - -0.0181511, -0.0946609, -0.101828, -0.0381887, -0.0633759, 0.0191792, 0.0112755, -0.0239655, - -0.0306826, -0.0632444, 0.0360317, 0.0710809, 0.0437091, -0.0203178, 0.0361068, 0.0929631, - -0.076424, 0.0819842, -0.0309505, 0.047973, -0.0424526, 0.0338694, 0.0185222, 0.00843244, - 0.0376399, 0.041092, 0.0594528, 0.0496896, 0.00222466, 0.0351351, 0.0396065, -0.0459489, - 0.026083, -0.00124059, -0.015927, -0.00203473, -0.0229173, 0.00113677, -0.0245556, 0.107057, - 0.0154908, 0.0506957, 0.048926, -0.0167151, 0.0701904, -0.0198818, -0.00706607, 0.0118937, - -0.0191824, -0.0380844, -0.0556689, -0.0440834, -0.020524, 0.00635039, -0.032976, -0.0442438, - -0.0123783, 0.0377041, 0.0446001, 0.0134392, 0.0538809, 0.0212788, 0.00813239, 0.0330974 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p64(hatfit_yaw00_lev0_p64); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p64_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p65.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p65.mh deleted file mode 100755 index 3ec6c56..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p65.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p65.mh: - -#ifndef stasm_hat_yaw00_lev0_p65_mh -#define stasm_hat_yaw00_lev0_p65_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p65(const double* const d) // d has 160 elements -{ - const double intercept = -0.143152; - const double coef[160] = - { - -0.000286311, -0.0237091, 0.00654515, -0.0550482, 0.00899456, -0.00353427, -0.0245149, 0.0134402, - -0.0774627, 0.0655919, 0.024402, -0.00462556, 0.0161056, -0.0320729, -0.0753361, 0.0126208, - -0.0406398, -0.0734501, 0.0243135, 0.00344451, 0.0124271, 0.0180368, -0.0632595, -0.0687805, - 0.011205, 0.0302186, 0.0262058, 0.00157304, 0.0390769, -0.00406096, 0.0273026, -0.0214496, - -0.00696482, -0.0167816, 0.00575971, 0.0127361, 0.0116785, 0.0285786, 0.0533964, 0.00789849, - 0.0463291, -0.0202002, -0.101443, -0.00188055, -0.0173454, -0.0238705, 0.0188397, 0.0175033, - -0.0284, 0.0416554, 0.0853441, 0.0309533, -0.0556561, 0.0124151, 0.0865916, -0.0506604, - 0.109722, 0.0424092, 0.00918329, -0.00578952, -0.0007513, 0.0558005, 0.102237, 0.237243, - 0.0383076, -0.0679934, -0.05276, -0.0470209, -0.104275, -0.0558653, -0.133914, 0.0511671, - 0.0180664, 0.0703407, 0.0093473, 0.0298243, 0.00151214, 0.0173337, 0.00713504, -0.00277523, - -0.036956, -0.00500627, -0.0229341, 0.0067312, 0.0482077, 0.012866, 0.0286959, -0.0228643, - -0.0174358, -0.00667265, 0.0459571, -0.0280541, -0.0347717, 0.00588267, -0.0958254, -0.0368828, - 0.0120706, 0.0685828, 0.0962024, 0.0748733, 0.0521348, 0.0858317, 0.00481773, -0.0132377, - -0.0462166, 0.0213407, -0.0365172, 0.0343196, 0.0448256, 0.0427066, -0.019736, -0.118236, - -0.0141359, -0.0486069, -0.036809, -0.0121779, -0.0232052, -0.00218179, 0.00755801, -0.0580209, - -0.0717068, 0.00415419, -0.0105233, 0.0246165, 0.00261025, 0.0065218, -0.000684385, 0.0136906, - 0.033893, 0.027067, -0.0379673, -0.0220513, -0.00640306, -0.0321068, 0.0454, -0.0263831, - -0.0279441, -0.0271368, -0.0605881, -0.0133898, 0.0222441, -0.0607897, 0.0663066, 0.10038, - 0.00498077, -0.00812369, 0.0471056, 0.000852444, -0.019487, -0.0321976, -0.0368678, 0.0336526, - 0.0585364, 0.0560496, 0.0185826, 0.0396382, 0.00556292, 0.0173752, 0.025127, 0.0257464 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p65(hatfit_yaw00_lev0_p65); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p65_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p66.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p66.mh deleted file mode 100755 index d6a86b4..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p66.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p66.mh: - -#ifndef stasm_hat_yaw00_lev0_p66_mh -#define stasm_hat_yaw00_lev0_p66_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p66(const double* const d) // d has 160 elements -{ - const double intercept = -0.264245; - const double coef[160] = - { - 0.105423, 0.0250395, -0.0610042, -0.0632526, -0.0405873, 0.149311, 0.0869565, 0.00829349, - -0.106012, 0.0254513, 0.0131773, 0.0647007, 0.00311146, -0.11239, -0.124436, 0.044122, - -0.0636883, 0.0221304, 0.038259, -0.00982186, 0.0813538, 0.000544199, -0.0495225, 0.0629233, - 0.0397194, 0.0230735, -0.0373231, 0.0198998, 0.0159334, 0.0448534, 0.134983, 0.104022, - 0.0661515, 0.0830687, 0.0293778, 0.0503456, 0.0448213, -0.0602775, 0.0503223, -0.0380878, - -0.00475375, -0.102519, -0.0687663, -0.0203904, -0.0280857, -0.0199738, -0.00843925, 0.0229027, - 0.0538909, 0.0104606, 0.0381393, 0.0571157, -0.0524618, -0.0204459, 0.0850965, -0.141019, - 0.0255757, -0.0532138, 0.0393097, -0.0326556, -0.0932934, 0.000714883, 0.0276072, -0.0689127, - -0.0566448, -0.0653501, -0.0616226, -0.0266183, -0.0185097, 0.010418, 0.00249784, -0.121397, - -0.123183, -0.0583139, -0.0591132, -0.026624, -0.0316232, 0.0754298, -0.024706, 0.00772637, - -0.0517452, 0.0624565, 0.0709369, 0.0788277, 0.0575006, 0.017722, 0.052472, -0.0371272, - -0.00991468, 0.0440494, 0.0195742, -0.0125498, 0.0931939, 0.0432486, -0.0229649, 0.0559666, - 0.00655715, 0.0349329, 0.0331465, 0.0612565, 0.00962413, 0.0242452, -0.0711512, 0.0750211, - 0.0859558, 0.0567727, 0.0351297, -0.0205731, 0.0858068, -0.0312985, 0.00804152, 0.154974, - 0.0242804, -0.0312061, 0.00407329, 0.027091, 0.0231395, -0.0288244, 0.0297562, 0.0235212, - -0.0152795, -0.0342731, -0.0325666, -0.0405934, -0.0165485, -0.0359246, 0.00538538, -0.0435186, - 0.00749711, 0.0485212, 0.0152491, 0.0424519, 0.00143966, 0.0216619, 0.0425046, 0.00467269, - 0.0144322, -0.0303874, -0.0142711, -0.0527349, -0.0467323, -0.0133392, 0.0118945, -0.062975, - -0.016459, 0.011253, -0.0130742, 0.00157675, -0.0177446, 0.0330739, 0.0121581, -0.00597341, - -0.0857059, 0.0488412, -0.0261425, -0.00176804, 0.00792429, -0.0248687, -0.0328186, -0.00667314 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p66(hatfit_yaw00_lev0_p66); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p66_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p67.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p67.mh deleted file mode 100755 index bc3c886..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p67.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p67.mh: - -#ifndef stasm_hat_yaw00_lev0_p67_mh -#define stasm_hat_yaw00_lev0_p67_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p67(const double* const d) // d has 160 elements -{ - const double intercept = -0.201401; - const double coef[160] = - { - -0.0881045, -0.0159495, 0.0173025, -0.0245041, 0.00117607, 0.0134409, -0.121019, -0.0165485, - -0.101617, -0.0546822, -0.0602906, 0.0789577, 0.13855, -0.113925, 0.0529473, 0.144175, - 0.112782, 0.021363, 0.0852604, -0.0533965, 0.103641, 0.0897197, 0.0480358, 0.0900049, - 0.160868, 0.0670096, -0.0828505, 0.00846669, -0.182177, 0.125791, 0.0721693, -0.155017, - -0.00397662, -0.0340865, 0.0104898, -0.0306927, -0.0616536, -0.0601507, -0.11105, -0.0377829, - -0.00016922, 0.0909498, 0.030216, 0.0051035, -0.0330505, 0.0417029, 0.0853449, -0.0296023, - 0.0593811, -0.0135493, 0.0233125, -0.0604536, -0.0701937, -0.0893642, -0.0799006, -0.00377828, - -0.110502, -0.0514702, -0.153871, -0.047958, -0.0469122, 0.0287942, 0.0797622, -0.0134567, - -0.0727119, -0.0687146, 0.00297959, -0.0110139, 0.0546135, -0.0102605, -0.081405, -0.0535832, - -0.00194179, 0.0272851, 0.0518762, 0.0507627, 0.0127016, -0.0181971, 0.0587454, 0.0477735, - 0.0462638, -0.000154786, -0.00555463, -0.0748188, 0.0664553, -0.00191742, -0.00897075, 0.0407636, - -0.0277267, -0.0141191, 0.0317961, 0.133582, 0.0204592, 0.0174013, 0.0181355, -0.0043058, - 0.0930437, 0.0815108, 0.0582352, 0.0791265, 0.0490144, 0.0516564, 0.0108075, 0.0756966, - 0.0150035, 0.116522, 0.0520821, -0.0173084, 0.00483679, -0.0236609, 0.0314996, -0.0209577, - 0.0197921, -0.0795259, -0.00875416, 0.0254668, 0.0580259, 0.0105996, -0.0100798, -0.00627572, - -0.0149854, 0.00413062, -0.00806864, 0.0667293, -0.0600582, -0.0361054, 0.0524902, -0.0694921, - -0.0260005, -0.0291485, -0.00116718, -0.0293204, 0.0320325, -0.00541632, 0.0018549, -0.0255409, - 0.00509329, -0.0419239, 0.0179005, -0.0208095, -0.00041907, 0.0367612, 0.0265514, 0.0308186, - -0.0113155, -0.0417062, 0.0125462, -0.060525, 0.00673506, -0.045987, -0.0128356, 0.0174284, - -0.0196561, 0.0675984, -0.0253421, 0.00707463, -0.0362088, -0.0328649, 0.0243431, -0.0284124 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p67(hatfit_yaw00_lev0_p67); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p67_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p68.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p68.mh deleted file mode 100755 index 1aff8c0..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p68.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p68.mh: - -#ifndef stasm_hat_yaw00_lev0_p68_mh -#define stasm_hat_yaw00_lev0_p68_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p68(const double* const d) // d has 160 elements -{ - const double intercept = -0.366819; - const double coef[160] = - { - 0.0265988, 0.0422833, 0.0257911, 0.0940722, 0.0569731, -0.00683419, -0.00532943, -0.0481013, - 0.075403, -0.00586177, -0.0225342, 0.0270272, 0.0270536, 0.0987389, 0.17904, 0.0286668, - 0.0332613, -0.00952983, 0.0119567, 0.0634839, -0.114182, 0.0483356, -0.00365111, -0.0290702, - 0.0756261, 0.0836779, 0.0284609, 0.0672962, -0.0136538, 0.0226978, -0.162384, -0.101798, - -0.103907, -0.0847535, -0.0652039, -0.000123264, 0.0424502, 0.0280952, 0.0818747, 0.17767, - 0.0291844, -0.0122052, -0.0544559, -0.04496, -0.161327, -0.0261948, 0.00837554, 0.0650585, - -0.0668893, -0.0212703, -0.0280788, -0.046825, 0.00695247, -0.121246, -0.0319339, 0.0054284, - -0.08896, -0.0661071, 0.025606, -0.0937221, 0.0402066, -0.0313304, 0.017649, -0.00397465, - -0.0401745, 0.0450826, 0.036861, 0.00084662, 0.0161449, -0.0981567, 0.10534, -0.012338, - -0.0564347, 0.0273505, -0.0852879, -0.0861725, 0.0234222, 0.0111968, 0.00116681, -0.00855638, - -0.0180932, 0.0127588, -0.0008401, -0.017225, 0.0354398, 0.0799972, 0.0278698, 0.00090194, - 0.104746, -0.00859931, 0.0482387, 0.0487455, 0.0351351, 0.128883, -0.02642, -0.0412762, - 0.0132593, 0.0812826, 0.0249021, 0.0663549, 0.00150147, 0.0557049, -0.0253372, 0.0509795, - 0.113438, -0.0154634, 0.0151967, 0.0184742, 0.00669164, 0.0452139, -0.0379432, 0.0259188, - 0.0535734, 0.0389962, 0.0877447, 0.0640894, -0.021027, -0.0615535, 0.0623233, -0.00185305, - 0.0353014, 0.014966, -0.0394086, 0.0677529, -0.0906169, -0.0144034, -0.0309466, -0.0348344, - -0.0252674, -0.00731876, 0.00124836, -0.0060929, 0.0352, -0.0123261, 0.0251895, 0.00570397, - -0.0257178, -0.0356001, -0.0161276, -0.00710459, -0.0284079, -0.0470061, 0.019277, -0.00442789, - -0.0194509, 0.0373907, 0.019379, 0.0197296, 0.0339624, 0.042812, -0.00204877, 0.0523138, - -0.0316774, -0.0226597, -0.0414849, -0.030228, -0.0839737, -0.0468238, 0.0299754, -0.0304553 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p68(hatfit_yaw00_lev0_p68); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p68_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p69.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p69.mh deleted file mode 100755 index 9019d3b..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p69.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p69.mh: - -#ifndef stasm_hat_yaw00_lev0_p69_mh -#define stasm_hat_yaw00_lev0_p69_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p69(const double* const d) // d has 160 elements -{ - const double intercept = -0.0235694; - const double coef[160] = - { - 0.0157275, 0.0595965, -0.0596587, 0.0635081, -0.0475996, 0.0276333, 0.0193975, -0.046948, - 0.0491686, -0.0106414, -0.0608392, 0.0076236, 0.0257097, 0.00689927, -0.00996926, -0.045825, - 0.00871685, -0.0241948, -0.0769836, -0.0137563, -0.0558283, -0.0257147, 0.0111846, -0.04479, - 0.0421523, 0.0334814, -0.0373457, 0.0838478, 0.00333984, -0.0309919, 0.00635941, 0.00564024, - 0.0046414, -0.0576283, 0.0379127, -0.00214163, -0.0531581, -0.0645105, -0.0277282, -0.015285, - 0.00857075, -0.0368841, 0.111707, 0.0444414, 0.0211478, -0.0334628, -0.0113917, 0.0158463, - 0.00941716, 0.0464516, 0.028282, 0.0508962, 0.0324731, 0.0682221, -0.0276964, 0.0320847, - -0.0385254, 0.0390322, 0.0216306, 0.0454043, 0.0359194, 0.0554051, 0.0730122, 0.0707507, - 0.00743874, -0.00080601, 0.0767604, -0.0117089, 0.10289, 0.0336405, 0.0189019, 0.0264799, - 0.00698227, -0.0138434, -0.0199559, -0.0407247, 0.0306866, 0.0103405, 0.0152181, 0.0138726, - -0.0465463, 0.0774723, -0.115569, -0.135806, -0.0749939, -0.020169, -0.0367089, -0.0027143, - 0.00262592, 0.0441086, 0.0400943, -0.074707, -0.103109, 0.00973179, 0.0350437, 0.0284099, - -0.0114075, -0.0146917, -0.0137825, 0.000117489, -0.0174022, -0.107906, -0.093023, -0.0312372, - -0.0152043, 0.0238037, 0.00176124, 0.0203291, -0.0639984, -0.0150513, -0.0533567, -0.0584983, - 0.0164656, -0.0642854, 0.0427559, -0.00637837, -0.0613465, -0.000748343, 0.0532175, 0.0446602, - 0.0211722, -0.0500968, -0.0115394, 0.0925451, -0.0917189, 0.0622838, 0.0386122, -0.0534624, - -0.0458546, -0.0504498, -0.00742409, 0.0829684, 0.0653468, -0.00653145, 0.0083576, 0.00584087, - 0.079808, -0.0168975, 0.0654734, -0.0204593, 0.00455287, 0.0698388, -0.0102542, 0.0424194, - 0.068932, 0.042975, 0.0329605, 0.0476639, -0.0134457, -0.0256802, -0.0186145, 0.044146, - -0.0985241, 0.0584528, -0.106737, -0.0248772, 0.0203297, 0.0105023, -0.000230355, -0.0181478 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p69(hatfit_yaw00_lev0_p69); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p69_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p70.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p70.mh deleted file mode 100755 index 337b9cf..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p70.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p70.mh: - -#ifndef stasm_hat_yaw00_lev0_p70_mh -#define stasm_hat_yaw00_lev0_p70_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p70(const double* const d) // d has 160 elements -{ - const double intercept = -0.208107; - const double coef[160] = - { - -0.00090055, 0.0546353, -0.0353788, 0.0154411, 0.0461907, -0.0491188, 0.0255463, -0.061678, - -0.0905312, -0.0408981, 0.0243486, -0.00448642, 0.0615633, -0.0409042, 0.0100977, -0.0126759, - 0.0350348, 0.0482091, -0.0753787, 0.0393433, 0.0528379, 0.0734246, -0.0263055, 0.0600362, - 0.0844456, -0.0306354, 0.0404791, -0.0176906, -0.133512, -0.0444668, 0.0573155, -0.0923998, - 0.0402414, 0.0141444, -0.0884436, 0.0810977, 0.00394053, -0.0445629, -0.0137841, -0.0462869, - 0.0587841, -0.00784728, 0.160068, 0.0536743, -0.00105336, -0.0637323, 0.0228582, 0.0581576, - 0.0414334, -0.0591198, -0.0652672, 0.0325394, -0.0509275, 0.0566555, -0.0633668, -0.015004, - 0.0343738, 0.00681077, 0.13518, -0.00132052, 0.0552101, 0.113455, 0.0716647, 0.137793, - -0.0711568, 0.0375828, -0.114079, -0.0939074, 0.0794876, 0.00356609, -0.0332021, 0.0486825, - -0.0143532, 0.0479114, 0.204395, -0.0319091, 0.0330645, 0.0616266, 0.00535451, -0.0244284, - -0.0646636, 0.0534692, -0.0951234, -0.111246, -0.00782859, -0.0124274, 0.013598, -0.0354386, - -0.00514551, -0.00998647, 0.00259819, 0.0383539, -0.0459996, -0.0789813, 0.0373038, 0.0766178, - 0.0184934, 0.035324, 0.0803344, 0.0411303, -0.000934144, -0.104175, -0.104083, -0.12536, - -0.0699303, -0.0328611, 0.010585, -0.023808, 0.00312656, 0.0726762, 0.0412183, -0.0274672, - 0.0149099, -0.0854293, -0.100815, 0.0827587, -0.0855814, -0.0453423, 0.00369089, -0.0200102, - -0.00217706, 0.0269608, -0.00400051, 0.0414681, 0.0356021, 0.0320039, 0.0540607, 0.0635866, - -0.0708449, -0.093044, 0.0166431, -0.0295871, 0.0306138, 0.106118, -0.0199366, -0.0138666, - 0.0728293, 0.0302307, 0.0482031, -0.0142578, 0.0337804, 0.0060773, -0.0849183, 0.0025265, - 0.0572282, 0.014886, -0.00333623, -0.0345345, -0.107297, -0.0192294, 0.0171171, 0.0657279, - -0.0415838, 0.0332244, -0.0152006, -0.0208666, 0.03549, 0.0644878, 0.0141499, 0.0639319 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p70(hatfit_yaw00_lev0_p70); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p70_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p71.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p71.mh deleted file mode 100755 index f7a82e4..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p71.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p71.mh: - -#ifndef stasm_hat_yaw00_lev0_p71_mh -#define stasm_hat_yaw00_lev0_p71_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p71(const double* const d) // d has 160 elements -{ - const double intercept = 0.0698267; - const double coef[160] = - { - -0.0200288, -0.0163994, 0.00994213, -0.0698051, -0.00414008, 0.0196422, -0.0132616, -0.0451151, - -0.0124583, 0.0988861, -0.0118251, 0.0288329, 0.00697295, -0.0204967, -0.0120209, -0.0568172, - -0.0358924, -0.0345258, -0.0686744, -0.000438436, -0.00517731, -0.0174085, 0.020691, -0.00452087, - 0.0141913, 0.0146745, -0.0597051, 0.0192343, 0.0303402, -0.0463564, -0.0194576, 0.0200466, - -0.0120258, 0.0203184, -0.0742359, 0.0438837, 0.0250272, -0.0430251, 0.0124393, -0.00223631, - -0.00443001, -0.00523121, -0.0490806, 0.0151531, 0.00304319, 0.0202574, 0.0120723, 0.0318208, - 0.1207, -0.0102639, 0.0681297, 0.00855108, 0.0321497, 0.00370784, 0.0398762, 0.00901874, - 0.0282995, 0.0396389, 0.0293478, 0.0184235, -0.0421145, 0.047603, 0.0589986, 0.0351678, - 0.065488, 0.0587881, 0.078464, 0.00756936, 0.046488, 0.0367089, -0.0232447, 0.0488474, - -0.0169958, 0.0366896, 0.0639427, -0.0333131, -0.00991654, 0.0200464, -0.00502049, -0.0337808, - -0.0333508, -0.0480539, 0.0339036, -0.102951, 0.0270207, 0.02789, 0.0507616, 0.0237684, - -0.0870788, 0.0672588, 0.00449247, 0.0475066, -0.0786955, -0.00682842, -0.0566759, -0.0170057, - -0.0412962, -0.0262738, -0.0156516, 0.000616457, -0.0120349, -0.0394508, -0.100801, -0.0830153, - -0.105829, -0.102891, 0.0328339, 0.0607407, -0.00722797, 0.0164441, 0.00877309, 0.0245608, - -0.0109281, -0.101967, -0.104317, 0.0860415, -0.0388299, 0.000115164, -0.00398764, -0.0238968, - 0.0448415, -0.0490259, -0.100597, 0.059111, -0.112485, 0.0116358, 0.0455271, -0.0101805, - -0.00850974, 0.0358312, 0.0160862, 0.0614424, 0.0915865, 0.0347102, -0.078669, -0.0139659, - 0.0393752, 0.0258584, 0.0706141, 0.0019399, 0.0319341, 0.0374976, 0.0242137, 0.0339497, - 0.0130769, 0.0754179, 0.00032229, -0.0798778, -0.0122108, -0.0145513, -0.0131137, -0.0151994, - -0.106024, 0.0678356, -0.0428864, -0.066365, -0.00996696, -0.0496478, 0.0602081, 0.0379822 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p71(hatfit_yaw00_lev0_p71); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p71_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p72.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p72.mh deleted file mode 100755 index 0645143..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p72.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p72.mh: - -#ifndef stasm_hat_yaw00_lev0_p72_mh -#define stasm_hat_yaw00_lev0_p72_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p72(const double* const d) // d has 160 elements -{ - const double intercept = 0.33656; - const double coef[160] = - { - 0.0109273, 0.00701231, 0.0123265, -0.054118, 0.00894793, 0.0199531, 0.0546884, -0.0225803, - -0.0159116, 0.0411868, 0.089538, 0.0774222, 0.0139166, 0.03471, -0.0248153, 0.0510105, - -0.0198116, -0.0334623, -0.0527264, 0.0411133, 0.0578461, -0.0727543, -0.0133322, -0.0412914, - -0.04439, 0.0801787, 0.000817053, 0.0326099, 0.00922548, 0.0353856, -0.0220976, -0.0590874, - -0.0356023, -0.017282, 0.0855007, -0.0161308, 0.114706, 0.0546855, 0.0533139, 0.101108, - 0.00644454, 0.0265675, -0.0404431, 0.0445425, 0.0437407, 0.00295126, -0.0454214, -0.0461645, - -0.030443, -0.0606773, -0.0425237, -0.0477967, -0.026027, -0.0396275, -0.0104379, -0.0202383, - 0.00136561, -0.0373245, -0.00439785, -0.0538319, -0.0821453, -0.0410854, -0.0236555, -0.0156586, - 0.089857, 0.072399, -0.0373804, -0.0516199, -0.0840442, -0.0347916, -0.00701551, 0.0122411, - 0.075689, -0.0575519, 0.0424952, 0.0150539, -0.030283, -0.0699195, 0.0392098, -0.00239024, - -0.0401443, -0.0621086, 0.0432013, 0.00931915, -0.0261652, 0.0398715, -0.104416, -0.0134155, - -0.0764198, 0.0411883, 0.0398532, -0.00732802, -0.0445227, 0.0122149, 0.0660047, 0.000599353, - -0.0486067, -0.00793528, -0.030983, -0.0149726, 0.0422138, 0.135505, 0.0391115, 0.0202661, - -0.0205573, -0.0319899, -0.0137975, 0.0193039, 0.00352849, -0.0786226, -0.0341239, -0.0161224, - -0.0199039, 0.00167935, 0.0266265, -0.0080568, 0.0484407, 0.0369868, -0.0592385, -0.0140752, - -0.0404225, 0.0611585, -0.0500993, -0.0269662, -0.017899, 0.0246863, 0.0940871, -0.0267323, - 0.0587296, 0.0813972, -0.00711683, -0.0171456, 0.00971521, 0.0010435, -0.0780172, 0.0767125, - 0.0262071, -0.0688454, -0.0296652, -0.00392671, -0.0126979, -0.0963767, -0.072691, -0.0329568, - 0.0167748, -0.0316049, -0.00463196, -0.0307026, 0.0172082, 0.0425607, -0.0333246, 0.014811, - 0.021138, -0.00155512, 0.0155899, 0.0310903, -0.0449127, -0.0306212, 0.0502775, -0.0182861 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p72(hatfit_yaw00_lev0_p72); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p72_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p73.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p73.mh deleted file mode 100755 index 8521fbf..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p73.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p73.mh: - -#ifndef stasm_hat_yaw00_lev0_p73_mh -#define stasm_hat_yaw00_lev0_p73_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p73(const double* const d) // d has 160 elements -{ - const double intercept = 0.210633; - const double coef[160] = - { - 0.00993489, -0.0123548, 0.0813264, -0.0669054, -0.0292149, 0.0459029, -0.0137748, 0.00549202, - 0.0174816, 0.0361606, 0.0571976, 0.0195353, 0.0312433, -0.0114901, 0.0166582, -0.0229622, - -0.0139445, -0.00237589, -0.0273617, -0.025682, 0.00262632, 0.0523251, -0.0376459, 0.0270926, - 0.0321683, -0.0387711, -0.00409677, -0.0459421, 0.0251588, 0.0015943, -0.0283464, -0.00233083, - -0.0200148, 0.00490126, -0.0366268, 0.0603787, -0.0432424, 0.0324428, -0.0569498, -0.0521196, - -0.0638931, 0.0369586, -0.075077, 0.0271411, -0.00340076, -0.0547343, -0.00702337, 0.0137728, - -0.0409277, -0.0606099, -0.045178, 0.0154017, -0.0366499, 0.0368017, -0.0755714, 0.0200326, - 0.00949665, 0.0351426, -0.00107786, 0.0295442, 0.0484526, 0.0209865, 0.0121481, -0.00530801, - -0.0462899, 0.0172678, 0.0159024, 0.0182306, -0.0373838, -0.0134695, -0.00843069, -0.0514371, - -0.0519359, 0.0581923, 0.06852, -0.0354488, -0.0471169, 0.0114502, 0.0576501, 0.00435383, - 0.0239621, 0.0054736, 0.0718089, -0.00638833, -0.0169387, -0.0225313, 0.0918254, 0.0158692, - -0.00696946, 0.0105221, 0.0148327, 0.0176189, 0.0628373, -0.0179542, 0.0883174, -0.00738715, - 0.0200552, -0.0220295, -0.0631872, -0.0480109, -0.0526641, 0.0518276, 0.0419778, 0.0130373, - 0.0214683, 0.00437175, 0.0150467, 0.0423724, 0.00362405, -0.0196705, 0.0141319, 0.0649049, - -0.00408967, 0.0245299, -0.00747905, -0.0109424, -0.0215761, -0.0797169, -0.0778722, 0.00621082, - 0.0276491, 0.0250119, 0.0269108, -0.0292634, 0.00762546, 0.0224147, -0.0723399, 0.0159608, - 0.0480934, -0.0483455, 0.0268956, -0.0608082, 0.00230266, -0.0448343, -0.0683353, 0.0561961, - -0.0287219, -0.0448469, -0.0647663, 0.021936, 0.00215741, 0.0193411, -0.0470916, 0.0135276, - -0.0811883, -5.48175e-05, -0.022252, -0.0226157, 0.0116641, 0.0240341, -0.0324637, -0.0192397, - 0.0442505, -0.00606093, 0.0301554, 0.0603075, 0.00971811, -0.00300752, 0.038494, -0.0530671 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p73(hatfit_yaw00_lev0_p73); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p73_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p74.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p74.mh deleted file mode 100755 index 207b2b7..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p74.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p74.mh: - -#ifndef stasm_hat_yaw00_lev0_p74_mh -#define stasm_hat_yaw00_lev0_p74_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p74(const double* const d) // d has 160 elements -{ - const double intercept = -0.123052; - const double coef[160] = - { - -0.0309546, -0.0442576, 0.0329204, -0.0401056, -0.0502024, 0.0343256, -0.0491264, 0.0526849, - -0.040565, -0.0251502, 0.0173818, 0.050259, 0.0339315, 0.0325101, 0.0366172, -0.028734, - 0.067187, 0.0052785, 0.00589749, 0.0160142, 0.0411707, 0.0461798, -0.0714963, 0.0647489, - 0.00545592, 0.0375401, 0.0428692, -0.090145, -0.0402123, -0.0364415, 0.00129696, 0.0376801, - -0.0244897, -0.00109254, 0.0127259, 0.0216829, -0.0424932, 0.0567491, -0.0433866, 0.0537255, - 0.0570212, 0.0897909, -0.00992388, 0.0122728, -0.058294, -0.0551936, 0.0444467, 0.0895306, - -0.04211, -0.0226888, -0.0386415, 0.0242739, 0.00707858, 0.00547357, -0.00889063, -0.0250536, - -0.0146531, -0.0142709, 0.00720937, -0.0163542, -0.045965, -0.0310865, -0.0377862, -0.0210059, - 0.0113062, 0.0381805, -0.098968, -0.00228149, -0.0761344, 0.00743713, 0.0364898, -0.0270678, - -0.0305538, -0.0239947, 0.0638429, 0.0444779, 0.0960313, 0.0278943, 0.0129631, -0.0823485, - -0.0216715, -0.0179719, -0.00199062, -0.019387, 0.044269, 0.123856, 0.0219088, -0.123845, - -0.0154337, 0.0173048, 0.126506, -0.0244077, 0.0389774, -0.069549, 0.111201, 0.0879703, - -0.00232957, -0.0142188, -0.0226004, -0.00927491, 0.0142168, 0.0540128, -0.0570127, 0.0172157, - -0.0269361, -0.0331642, 0.105292, 0.00342794, 0.00512422, 0.0443093, 0.107396, -0.03335, - 0.0570555, 0.0180421, 0.0138374, -0.00202105, 0.0294139, -0.0973497, 0.00842243, 0.12097, - 0.0137315, -0.0271564, 0.00294767, 0.00468403, -0.0238619, 0.0628131, -0.112951, -0.000238455, - 0.0220301, -0.0213483, -0.00694677, 0.036515, 0.0229286, -0.0244903, 0.0136216, 0.0388557, - -0.0202755, -0.0175832, -0.0547588, 0.00175371, -0.0382934, -0.0152379, -0.0469127, -0.02083, - 0.0438301, 0.0398035, -0.0354271, -0.0375309, -0.00191381, 0.0413821, 0.0172386, -0.052723, - -0.0278759, -0.00447389, 0.0182668, -0.00243191, 0.00880319, -0.014031, -0.0912596, 0.0792959 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p74(hatfit_yaw00_lev0_p74); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p74_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p75.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p75.mh deleted file mode 100755 index 029a09c..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p75.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p75.mh: - -#ifndef stasm_hat_yaw00_lev0_p75_mh -#define stasm_hat_yaw00_lev0_p75_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p75(const double* const d) // d has 160 elements -{ - const double intercept = 0.165504; - const double coef[160] = - { - -0.0320118, 0.0343613, -0.0215994, -0.000569257, 0.000656744, -0.0320308, -0.0767731, 0.0347843, - 0.0203295, -0.0053574, -0.0205905, -0.0136708, 0.015306, 0.0277487, -0.0259979, 0.0248288, - 0.0315677, -0.0558509, -0.0206099, -0.0168151, -0.00635614, -0.00498852, -0.0304595, 0.0400413, - 0.0249894, 0.0402471, 0.0703507, 0.0458057, -0.0151023, -0.00152099, -0.0171668, -0.00912523, - 0.00771034, -0.0769725, 0.0546738, 0.0215703, -0.0203595, -0.0016619, 0.0173413, 0.0197873, - -0.0181361, -0.052057, 0.0774675, 0.0537229, -0.0859344, 0.0273665, 0.0458014, -0.0104791, - -0.0239259, 0.0358007, 0.0301018, 0.0194988, 0.00317381, -0.0376339, 0.0149199, -0.00488466, - 0.0344714, 0.0402375, 0.0017248, 0.0334069, 0.0260413, 0.00682628, 0.0226781, 0.0348958, - -0.0192217, -0.0133318, -0.0268843, -0.0228292, -0.0360136, -0.0157801, -0.0822792, -0.0166745, - -0.0389326, 0.0248937, -0.100848, -0.00430341, -0.0235682, 0.00919385, 0.00131306, -0.0274536, - -0.0668529, -0.0101084, 0.018374, 0.0320503, 0.0448673, -0.0321037, -0.102204, -0.067574, - 0.0419346, -0.0265464, -0.0178497, -0.00615739, -0.00450659, 0.0641049, 0.0426419, -0.00771388, - -0.051412, 0.0115251, -0.0427088, -0.0103799, 0.01944, 0.00324462, 0.019458, 0.0559431, - 0.00150652, 0.0304491, 0.00140247, 0.00537331, -0.0278386, 0.023001, 0.0666532, 0.00376987, - -0.0154516, 0.00195108, 0.0654335, -0.00899461, 0.00831876, 0.00154418, 0.136438, -0.0471422, - 0.0581926, 0.0947665, 0.0336773, -0.0015039, 0.0136536, -0.0145534, 0.00861099, -0.0123438, - -0.0191193, -0.0219995, -0.0581665, -0.0479272, -0.054385, -0.0486962, 0.0154553, 0.0162758, - 0.0160868, -0.0147297, -0.00334181, -0.0122711, -0.0382172, 0.0160841, -0.0599771, 5.07346e-05, - -0.018855, -0.0369785, -0.0241901, -0.0345559, 0.0457693, 0.0415736, -0.0634227, -0.0180437, - 0.0241607, -0.0442557, 0.0486534, 0.00864905, 0.0225124, 0.0253203, -0.0993135, 0.0641906 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p75(hatfit_yaw00_lev0_p75); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p75_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p76.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p76.mh deleted file mode 100755 index e81a7c6..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev0_p76.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev0_p76.mh: - -#ifndef stasm_hat_yaw00_lev0_p76_mh -#define stasm_hat_yaw00_lev0_p76_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev0_p76(const double* const d) // d has 160 elements -{ - const double intercept = 0.229062; - const double coef[160] = - { - 0.116981, -0.0146652, 0.0805274, -0.0169097, -0.0508039, 0.0906799, 0.0250443, 0.0432456, - 0.0587242, 0.0213911, -0.0136849, 0.108586, -0.0311993, -0.0228875, 0.021087, 0.0190334, - -0.00245308, 0.0862394, -0.0577148, -0.0466893, -0.0657657, -0.0500989, -0.0316027, -0.0608753, - 0.00249728, 0.0734856, 0.100428, 0.0384354, 0.0383373, 0.0161285, -0.00234679, 0.0359347, - 0.00803544, -0.028746, 0.0163922, -0.00247927, 0.0189214, 0.00459289, 0.0281643, 0.0248393, - -0.0770743, 0.0106878, -0.0172592, -0.0798016, 0.019926, -0.0063997, -0.0122942, -0.0792252, - -0.0716314, -0.0640866, 0.0341624, 0.0366252, 0.123628, -0.0266889, 0.0769374, -0.00811922, - -0.0845058, -0.0764595, -0.0269535, -0.0199014, -0.0437083, 0.00499977, -0.0576146, -0.0349839, - 0.0180479, -0.00379294, -0.0463708, -0.00773665, 0.000995275, -0.0281857, -0.00547461, -0.0115937, - 0.0368069, 0.0102679, -0.02716, 0.0104688, -0.0227385, -0.0346443, -0.0513161, -0.0393638, - 0.0449888, 0.0137514, 0.00510399, 0.0205504, 0.0439477, -0.0218339, -0.0463837, 0.073077, - -0.00701239, -0.00547417, -0.00599687, -0.0420906, -0.00152454, -0.0450163, -0.0583551, -0.0840997, - 0.0910903, 0.023427, -0.0107036, 0.00868156, -0.0202352, 0.045091, 0.0584589, 0.102608, - -0.0499867, -0.0137135, 0.0752997, 0.0252478, -0.0481185, 0.0191086, 0.048995, -0.00900523, - 0.00176015, -0.0201574, 0.0365896, -0.0744776, -0.0226065, -0.0189596, -0.0818007, 0.0693222, - -0.0351821, -0.00179536, 0.0115058, -0.0109636, -0.0304185, 0.0181186, 0.0563143, -0.0234156, - 0.0621356, -0.0105263, 0.0415511, -0.026778, 0.00985116, 0.00626917, -0.00698782, 0.00721136, - -0.0472754, -0.0448799, -0.0642895, -0.0546127, 0.019504, -0.0411421, -0.111015, -0.0788803, - 0.0328179, 0.00638693, -0.017933, 0.0941219, 0.0317082, 0.0498469, -0.015293, -0.0410082, - -0.00642168, -0.0376461, -0.0312802, 0.0314786, -0.0358594, -0.00951312, 0.0722242, 0.0445234 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev0_p76(hatfit_yaw00_lev0_p76); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev0_p76_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p16.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p16.mh deleted file mode 100755 index 9f6261a..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p16.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p16.mh: - -#ifndef stasm_hat_yaw00_lev1_p16_mh -#define stasm_hat_yaw00_lev1_p16_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p16(const double* const d) // d has 160 elements -{ - const double intercept = -0.130126; - const double coef[160] = - { - -0.000445234, 0.043221, 0.0140256, -0.0176776, 0.0180011, 0.0751142, 0.00416233, 0.0231653, - 0.104674, 0.0549672, -0.0721341, -0.0127515, -0.0138794, 0.0338932, 0.0281944, 0.0621298, - 0.0911529, 0.0484904, 0.00900419, 0.0422819, -0.0630311, -0.0115877, -0.100845, 0.0587435, - 0.0279156, 0.0463337, -0.0298858, -0.035412, 0.0935972, 0.0198858, -0.0686332, 0.0466791, - -0.00672963, 0.0169272, 0.0333362, 0.00512634, -0.0613587, 0.0201456, -0.0406462, 0.07055, - -0.0638782, -0.0543191, -0.0472611, -0.0861293, -0.0274413, -0.0448311, 0.0635361, 0.0351661, - -0.0309816, -0.0576298, 0.0368246, 0.0267319, 0.00653227, -0.0267277, 0.0455019, -0.0197013, - -0.0723671, -0.0230741, 0.0715372, -0.00733044, 0.0377367, -0.0112378, 0.0222296, -0.0711139, - -0.0336036, -0.049834, 0.075822, 0.0612571, 0.0127347, -0.0363393, 0.0217066, -0.143767, - -0.0624119, -0.0310864, -0.0459203, -0.0374786, 0.013719, 0.0379785, 0.0966371, -0.0824829, - -0.00437739, -0.00529281, 0.0115613, 0.0919288, 0.0281675, 0.0621726, 0.0194302, -0.0421999, - 0.0151037, 0.0324625, -0.0663097, -0.0181548, -0.00958769, 0.050465, 0.0778563, 0.027344, - 0.00659999, 0.0454187, 0.0257894, 0.0242061, -0.0614949, -0.0331331, -0.0964159, 0.0097562, - 0.00810102, 0.0670151, 0.0431962, 0.0187627, -0.00581959, -0.00936328, -0.0662436, 0.0844052, - 0.100604, 0.00389021, -0.0344949, 0.0378302, 0.0106632, 0.0525071, 0.0978476, 0.161005, - 0.0628722, -0.0660993, 0.0878073, -0.00854462, -0.0434295, -0.0505323, -0.0343038, -0.00213331, - -0.0161968, -0.0963436, -0.00481572, 0.0643314, 0.0344135, -0.00774432, 0.0312189, -0.0762902, - -0.0341295, -0.0239998, -0.0515961, -0.00287077, 0.0293045, 0.0159731, 0.0573082, -0.0105915, - 0.00351762, -0.021431, 0.0181034, -0.00131951, -0.101467, -0.0448797, -0.0507844, -0.0420648, - -0.10945, 0.12603, 0.0213206, -0.11438, 0.0555109, 0.0345014, -0.0517138, 0.0216809 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p16(hatfit_yaw00_lev1_p16); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p16_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p17.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p17.mh deleted file mode 100755 index a1f3cce..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p17.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p17.mh: - -#ifndef stasm_hat_yaw00_lev1_p17_mh -#define stasm_hat_yaw00_lev1_p17_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p17(const double* const d) // d has 160 elements -{ - const double intercept = -0.16546; - const double coef[160] = - { - 0.0171966, -0.0275563, 0.0314074, 0.0443813, 0.0352954, 0.0360139, -0.024964, -0.00787478, - -0.0194631, -0.061424, -0.0315714, -0.065885, 0.0341884, 0.0301533, 0.0235951, -0.0382192, - 0.024691, 0.0226932, -0.0122046, 0.070336, -0.022967, -0.000195558, -0.0547027, -0.0113896, - 0.0371435, 0.0290348, 0.0370216, 0.0136441, 0.0311799, 0.0364149, -0.049558, -0.00475357, - 0.0233215, 0.0550764, 0.00609607, -0.00682064, 0.0153294, 0.0257363, -0.0295148, 0.0518475, - 0.0410708, 0.0470332, -0.00859611, 0.00716973, -0.000581094, -0.0923075, -0.12437, -0.0150305, - 0.00973378, 0.0305067, 0.0102754, 0.0452893, -0.0833901, 0.0553768, 0.0643014, 0.0256497, - -0.0725362, -0.0441515, -0.0345659, -0.0611385, 0.00278489, -0.0393033, 0.0851779, 0.015241, - -0.00101229, -0.0523925, -0.00948096, -0.0617794, -0.0437903, -0.0537819, 0.0645393, -0.033413, - 0.0621413, -0.0074961, 0.0868917, 0.0153207, -0.0607852, -0.0154115, 0.0534899, -0.0650833, - -0.0160714, 0.00891181, -0.0127801, -0.0150855, -0.050345, 0.104545, 0.162614, 0.031502, - -0.00391759, 0.0214315, 0.0377781, -0.0498718, 0.0182489, 0.0738549, -0.141809, 0.0252301, - 0.0481015, -0.00964915, 0.0479379, 0.0715328, 0.0905173, 0.0200443, -0.0407209, 0.0350024, - -0.0214207, -0.0302528, -0.0683485, 0.0500598, 0.0443642, 0.049822, -0.00970918, 0.0720314, - -0.102219, 0.0485874, 0.00420228, 0.0227607, 0.0305125, 0.0368292, -0.00241041, 0.03728, - -0.0286477, 0.0337817, 0.00314927, -0.0383266, -0.022275, 0.0802865, -0.0480953, 0.0843274, - 0.012186, 0.0236073, 0.0147595, 0.0353434, -0.0249638, -0.0470477, 0.00373069, -0.0112297, - -0.0136293, 0.0382654, -0.037789, -0.0167259, 0.000611127, -0.0637567, -0.00156791, -0.0585197, - 0.0178448, 0.0150697, 0.0445088, 0.00449942, -0.0150822, -0.0161511, 0.0542754, -0.0288515, - 0.0293693, -0.131679, 0.0506636, -0.00646806, 4.88179e-06, -0.027588, -0.00535106, -0.0394523 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p17(hatfit_yaw00_lev1_p17); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p17_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p18.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p18.mh deleted file mode 100755 index 7f9a543..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p18.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p18.mh: - -#ifndef stasm_hat_yaw00_lev1_p18_mh -#define stasm_hat_yaw00_lev1_p18_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p18(const double* const d) // d has 160 elements -{ - const double intercept = -0.448753; - const double coef[160] = - { - -0.0498749, -0.0295384, -0.0622896, 0.0356942, -0.0292167, 0.0283713, 0.00836971, -0.0121596, - 0.0209972, 0.00382417, 0.050891, -0.0164777, 0.0242696, -0.00391463, -0.0277812, -0.0138764, - 0.072988, -0.0271966, -0.0908054, -0.0734843, -0.0604963, 0.0136477, -0.0727193, 0.0275438, - 0.0110599, 0.0588015, 0.00201384, 0.0164636, -0.00199381, 0.0922571, 0.0699612, 0.0217522, - -0.00142602, -0.00528477, 0.00603293, 0.0617398, -0.0417845, 0.0516238, -0.0569251, 0.0888432, - 0.0420806, 0.0498754, 0.0839362, 0.0110966, 0.0596055, 0.0101679, 0.00859569, -0.021343, - 0.0153672, -0.0383215, -0.0905357, -0.00618441, 0.0649987, -0.0654346, -0.0405493, 0.0329732, - -0.09689, 0.0202469, 0.0330359, 0.0379222, 0.179394, 0.0828963, 0.130292, 0.0730782, - -0.0308012, 0.108059, 0.0110634, -0.0114949, -0.084209, -0.0632223, 0.00555993, 0.00827395, - -0.0322704, 0.0254536, 0.0448415, -0.0122099, 0.0581972, -0.0255867, -0.00141774, -0.0369018, - -0.00161121, 0.00661957, -0.045868, -0.0756884, -0.0735135, -0.0600961, 0.0242683, -0.0197821, - 0.0745215, -0.0585634, -0.0179505, 0.0547213, -0.0345571, -0.025263, 0.0334299, 0.00947121, - 0.051453, 0.0639829, 0.0359268, 0.0210573, -0.0619948, -0.0628176, -0.0306752, -0.051822, - 0.0126318, -0.0452903, -0.01876, 0.00772562, -0.00129544, 0.0511064, -0.0106129, -0.00556659, - 0.0426059, 0.032925, 0.0212555, 0.0334898, -0.0357824, -0.00509332, 0.0150316, 0.00836535, - 0.0260177, 0.0158509, 0.0215553, 0.0268927, 0.0590347, 0.0190613, 0.0199399, -0.0514828, - -0.00742887, -0.0419478, 0.00628358, 0.0638355, -0.00724743, 0.0347969, -0.00623699, -0.0583069, - -0.0161296, -0.037127, 0.0168519, 0.0147875, -0.00326895, 0.0385574, -0.0158858, 0.0614535, - -0.0200043, 0.00139308, 0.013431, -0.0543626, 0.0576407, -0.0165498, -0.0840573, 0.0222336, - 0.0296575, -0.00278878, 0.00448438, -0.00359893, 0.0102988, 0.106763, 0.090092, 0.0431567 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p18(hatfit_yaw00_lev1_p18); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p18_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p19.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p19.mh deleted file mode 100755 index 5fbe7a2..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p19.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p19.mh: - -#ifndef stasm_hat_yaw00_lev1_p19_mh -#define stasm_hat_yaw00_lev1_p19_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p19(const double* const d) // d has 160 elements -{ - const double intercept = -0.262195; - const double coef[160] = - { - 0.0570257, 0.0367344, -0.0570711, -0.011802, -0.0167134, 0.101382, -0.0180198, 0.00963814, - -0.0279159, 0.00725883, -0.0390742, -0.0731636, -0.0300552, 0.0610662, -0.0564866, -0.00215811, - 0.0331278, -0.0245061, -0.0190675, 0.0308108, 0.0597088, -0.0582475, 0.0068199, -0.0045789, - 0.0112172, -0.0042283, -0.0460313, -0.0683531, 0.0490784, 0.0357457, 0.0513087, 0.065163, - 0.0120269, 0.0846221, -0.0103265, 0.0475844, 0.00477526, 0.0399056, 0.0540089, -0.0564785, - -0.07569, -0.0260325, -0.0242496, -0.0162332, -0.01269, 0.0115391, 0.144577, 0.0917523, - -0.0031184, 0.0494672, 0.0600518, 0.0757492, 0.0268476, -0.0358991, -0.0714125, -0.0217126, - -0.0619601, 0.00266571, 0.0342395, 0.0499819, 0.0149065, -0.0327131, -0.0215528, -0.0440197, - -0.0420585, -0.0419247, 0.0676071, 0.0562871, -0.00336289, -0.0189186, -0.0412871, -0.063268, - -0.0263585, -0.139443, 0.050477, -0.0565013, -0.0138931, 0.00646753, 0.0454679, 0.0638653, - 0.00880726, 0.0693776, -0.00639578, 0.0123959, -0.0768389, 0.0366207, -0.0836684, -0.0324729, - -0.000682837, 0.0349943, 0.000274644, -0.00886348, 0.00739915, 0.00832502, 0.0206392, -0.0190099, - 0.0570095, 0.033442, -0.00262595, 0.0070713, 0.00129516, 0.0143729, 0.0452677, 0.00304362, - 0.00623422, 0.0423643, 0.00203898, -0.0335307, 0.0291394, -0.0161017, 0.00515308, 0.0344269, - 0.00664613, -0.020668, -0.0448438, 0.0866967, 0.0269182, 0.0468494, 0.0656892, 0.00646981, - -0.0383485, -0.00762912, -0.0750351, 0.0130538, 0.0269591, -0.0112271, -0.0624056, 0.0493525, - 0.0296482, -0.0213624, 0.0267932, 0.0117763, -0.0091476, 0.0151417, -0.00320312, 0.0152537, - -0.0114015, -0.00710413, 0.00773785, -0.00463671, -0.034757, 0.0182189, 0.0225663, 0.0463874, - 0.0323866, 0.0080666, 0.0581044, 0.0524154, 0.0108156, -0.0567258, -0.0227012, -0.048997, - 0.0646889, -0.0463338, -0.0283976, -0.0935714, 0.0225522, -0.0529328, 0.11244, -0.0702994 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p19(hatfit_yaw00_lev1_p19); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p19_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p20.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p20.mh deleted file mode 100755 index 3288679..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p20.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p20.mh: - -#ifndef stasm_hat_yaw00_lev1_p20_mh -#define stasm_hat_yaw00_lev1_p20_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p20(const double* const d) // d has 160 elements -{ - const double intercept = -0.40301; - const double coef[160] = - { - -0.044357, 0.065885, -0.100565, -0.0292176, 0.0431703, 0.0559038, 0.0422983, 0.0677039, - 0.0111116, 0.0543616, -0.00831535, 0.0316774, -0.0405766, 0.0545119, 0.0547792, 0.00707303, - -0.0118569, 0.0359603, 0.000738419, -0.00720546, 0.0159878, -0.0454474, -0.00219371, -0.0321887, - -0.00711376, -0.0118625, -0.031807, 0.0318091, 0.0721441, -0.00390437, 0.000654461, -0.00217822, - 0.0136697, -0.0564804, -0.0142228, 0.0489046, 0.0135339, 0.0265044, 0.0836901, -0.0131859, - 0.0193591, -0.0579067, 0.143029, 0.0854465, -0.0273751, -0.0743443, -0.00470803, -0.0470495, - 0.0284289, -0.0908781, -0.0390148, 0.0216415, 0.0237698, -0.00135428, 0.0883609, 0.0570308, - -0.0190371, 0.0543571, -0.0426702, -0.0233553, -0.062339, -0.0680657, -0.0296903, 0.0182473, - -0.0275637, 0.031327, 0.0632576, -0.0441019, -0.0551259, -0.0493404, -0.0933736, 0.0139715, - 0.0351187, 0.201519, 0.109671, -0.0436287, 0.0343854, 0.0617872, 0.00231902, 0.131171, - -0.0447616, 0.0471011, -0.0241846, -0.130945, -0.00283226, 0.0292567, -0.0124652, 0.00699345, - -0.00646692, 0.00169924, 0.0120173, 0.0392728, -0.027388, 0.0654505, 0.0643972, -0.0154942, - -0.0480685, -0.0210734, -0.0285767, 0.0874262, 0.0749026, 0.0901079, 0.0342709, -0.0234091, - 0.0509444, -0.014923, -0.0252291, 0.0453003, 0.0172163, -0.0234517, 0.0583706, -0.00834267, - -0.128634, -0.0329519, 0.0279247, -0.0235598, -0.00885352, -0.0981358, -0.0500313, -0.0635172, - 0.0233945, -0.051642, -0.0143921, 0.0752504, 0.0105108, -0.022365, 0.0275288, -0.0364368, - 0.0413996, -0.0392726, 0.0157608, -0.0648484, 0.0178105, -0.0352664, 0.0258897, -0.0719777, - 0.0267576, 0.019921, 0.000531101, 0.00717289, -0.0355602, -0.0040235, 0.0217799, -0.0267584, - -0.00189987, 0.0767193, 0.0513729, 0.0696818, 0.0447269, -0.00696514, 0.0455562, 0.0813045, - -0.0438993, 0.0213466, -0.0743853, 0.0140133, 0.0300957, 0.042562, -0.0818879, 0.0010326 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p20(hatfit_yaw00_lev1_p20); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p20_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p21.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p21.mh deleted file mode 100755 index 4c3a4f9..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p21.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p21.mh: - -#ifndef stasm_hat_yaw00_lev1_p21_mh -#define stasm_hat_yaw00_lev1_p21_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p21(const double* const d) // d has 160 elements -{ - const double intercept = -0.360611; - const double coef[160] = - { - -0.0436506, -0.054941, -0.00971474, 0.0521024, 0.00206954, 0.0185906, -0.00413247, -0.024137, - -0.0462877, -0.04999, -0.0126494, -0.0039948, 0.0150353, 0.0313915, 0.0540088, -0.0256915, - -0.128476, -0.0262562, 0.0509892, 0.00366824, -0.00866948, 0.0298188, -0.00831123, 0.0105693, - -0.0529987, -0.0259216, -0.00600078, -0.0230685, 0.0339906, 0.0307667, -0.0178926, 0.0698492, - 0.0722452, -0.0227056, -0.00609198, 0.0519129, 0.0620325, 0.0588752, 0.00577859, 0.00438022, - 0.0282987, 0.0421252, 0.0104122, -0.018805, -0.102164, -0.0445192, -0.0648688, 0.0809432, - 0.0950726, 0.117475, 0.0853208, 0.0458148, -0.0171331, 0.0300579, -0.0406555, 0.0118699, - 0.0976135, 0.0484639, -0.033011, 0.0899271, 0.0202407, 0.0261913, -0.00930254, 0.0461875, - 0.0378907, -0.0493307, -0.0274167, -0.0190517, -0.0107293, -0.0157886, 0.0123958, 0.0879697, - 0.00302485, 0.0109669, -0.0332263, -0.0316753, -0.0598432, -0.0198672, 0.0300908, -0.0590955, - -0.0598014, -0.0300721, -0.0144178, 0.00587939, -0.0163208, -0.010562, 0.0622535, -0.0122884, - -0.0888054, 0.00986846, 0.0480497, -0.0690815, 0.0316751, -0.0658706, -0.017178, 2.19983e-05, - -0.031337, 0.12937, 0.00135608, 0.00324541, -0.0383022, -0.0209004, 0.012759, -0.0579081, - -0.022554, -0.0243307, -0.161701, -0.0383884, -0.0341709, 0.0256652, 0.0349183, 0.0408659, - -0.0589702, 0.0420497, 0.069216, 0.0258794, 0.0283805, -0.0236499, -0.00459621, 0.0139046, - 0.0328212, 0.0585561, 0.0112508, 0.0231436, 0.0542301, -0.00382625, 0.045863, 0.0514639, - -0.00793891, -0.0151828, -0.0451044, 0.00866035, -0.0408645, 0.00331327, -0.080927, -0.085434, - 0.0547401, 0.0158916, 0.0294454, 0.0202408, 0.0291153, 0.0326214, 0.0244101, 0.0986617, - 0.0364547, -0.0604266, 0.0127313, -0.0474485, 0.0555188, 0.0124198, -0.0257955, 0.0798925, - 0.124739, -0.0247137, 0.0450575, 0.0279182, -0.005408, 0.00205407, -0.0160856, -0.0509189 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p21(hatfit_yaw00_lev1_p21); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p21_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p22.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p22.mh deleted file mode 100755 index 81d362c..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p22.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p22.mh: - -#ifndef stasm_hat_yaw00_lev1_p22_mh -#define stasm_hat_yaw00_lev1_p22_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p22(const double* const d) // d has 160 elements -{ - const double intercept = -0.283461; - const double coef[160] = - { - 0.113408, 0.028207, 0.0103549, -0.0219927, 0.0431519, 0.00919302, -0.0021129, 0.0822461, - -0.0605805, -0.0288046, 0.00869981, 0.00197979, -0.091122, 0.00543819, -0.0875602, -0.0096333, - -0.0140809, -0.00180853, 0.0272279, -0.0408326, -0.108702, 0.0415715, 0.057489, 0.0631665, - 0.0449359, 0.00809672, -0.0378282, -0.040463, -0.0505169, -0.0300831, 0.0435633, -0.0196153, - 0.0188522, 0.0430165, -0.013274, -0.00146621, -0.0787595, -0.0382562, 0.00339013, -0.0244168, - -0.109492, -0.0534605, 0.0150209, 0.00353936, 0.0185733, -0.0188727, 0.0288706, -0.044357, - 0.0503095, 0.0649049, -0.0550787, -0.0715569, 0.0863819, 0.0590576, 0.00904189, 0.051242, - 0.0460924, 0.0585139, -0.0128731, 0.064008, 0.0780372, 0.0710941, 0.0145533, 0.0773075, - -0.0980892, 0.0193442, 0.0810367, 0.13997, 0.0733226, 0.0512428, -0.103792, 0.0650737, - -0.0728885, -0.012266, 0.023387, -0.00658721, 0.0246795, 0.0391211, -0.0425422, -0.0452243, - 0.0327159, -0.00046799, -0.00746934, 0.041174, -0.0191744, -0.00525241, 0.00667091, -0.044836, - -0.0405409, -0.106829, -0.153472, -0.00257772, -0.0275851, 0.0490619, 0.0456676, 0.0148601, - -0.0409661, 0.0154871, 0.0948287, 0.105885, -0.0128939, -0.0611814, -0.00809154, -0.0978214, - 0.0252439, -0.0215762, -0.0285384, -0.018451, -0.0553872, -0.0160569, 0.00576589, -0.109376, - -0.00953276, -0.0124028, -0.00071097, -0.00153849, -0.043606, -0.0358039, 0.0836616, 0.0602529, - 0.0487441, 0.0265395, 0.0409188, 0.00543898, 0.0838617, -0.0281679, -0.0813627, 0.00686685, - -0.0205098, -0.0206478, -0.0149907, -0.0498131, 0.0185005, 0.0928399, 0.0517432, -0.00931367, - 0.0553956, -0.000987589, 0.0256532, 0.0190481, 0.0120548, 0.0256755, -0.0056007, 0.0773276, - -0.0299009, 0.0231982, -0.0541054, -0.0363423, -0.00481595, -0.0450222, -0.0591807, 0.0140353, - 0.0115709, 0.051797, 0.00671813, 0.060524, 0.0404935, 0.0628342, 0.0301882, -0.0445167 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p22(hatfit_yaw00_lev1_p22); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p22_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p23.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p23.mh deleted file mode 100755 index ce9f12c..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p23.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p23.mh: - -#ifndef stasm_hat_yaw00_lev1_p23_mh -#define stasm_hat_yaw00_lev1_p23_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p23(const double* const d) // d has 160 elements -{ - const double intercept = -0.130233; - const double coef[160] = - { - 0.0472834, 0.00781718, 0.00785787, 0.0540163, -0.026445, 0.116213, -0.0237177, 0.0424393, - 0.0187807, -0.024349, -0.0246988, 0.0576934, 0.0111652, 0.0538067, -0.121513, 0.0500683, - -0.00359233, -0.0209018, -0.00154044, 0.0619222, 0.0839956, 0.070999, -0.0467736, 0.0184966, - 0.00613903, 0.00382141, -0.0737772, 0.00515294, -0.00382716, 0.0400579, 0.00606548, 0.0256581, - 0.0594181, 0.0186452, 0.0815342, 0.0398505, 0.00194601, 0.0017904, -0.0349286, 0.106442, - -0.018651, 0.00312345, -0.0059111, -0.0568959, -0.0328872, -0.148534, 0.104767, 0.0236835, - 0.00637615, 0.0115255, 0.0801526, -0.00868843, 0.00586364, -0.10412, -0.0490881, -0.0593897, - -0.00372443, 0.00618455, 0.0371041, -0.0521332, -0.00660873, -0.0285671, 0.131414, -0.0504068, - -0.0296972, -0.0634493, 0.0637341, -0.0350294, 0.0066418, -0.00762099, -0.0144002, -0.0300104, - -0.0378424, -0.0719849, -0.0839801, -0.0249018, -0.0853061, 0.0688983, 0.103192, -0.0620734, - 0.0151431, 0.0111592, -0.0657549, 0.0352495, 0.0105818, 0.246062, 0.0820122, 0.0520822, - 0.0462958, 0.0629337, 0.0883106, 0.0716172, -0.073364, -0.0192448, -0.109873, -0.0512651, - -0.0390072, -0.00551202, -0.0114683, 0.0342657, 0.0128699, 0.0191531, -0.0255654, 0.0133674, - 0.0513161, 0.0279945, -0.0674543, -0.00280994, 0.0383715, -0.0308886, 0.101607, 0.102294, - -0.00181516, 0.0832472, 0.0175008, 0.0196384, 0.0216818, -0.070902, -0.0207262, 0.0160676, - -0.0254123, -0.0816697, 0.0283321, 0.125951, -0.0731279, 0.0101732, -0.0494108, 0.00338782, - -0.051712, 0.0155175, 0.0158018, -0.0212249, -0.00432322, -0.0379499, -0.0358608, -0.00421285, - 0.0108169, 0.0207882, -0.0720815, -0.0455948, -0.0374766, -0.049237, 0.0186335, 0.0110743, - -0.0458633, 0.0435132, 0.0137485, -0.0760113, 0.0111323, -0.00146219, 0.0642206, -0.0233832, - -0.0129117, -0.0448585, 0.0893718, -0.0306933, -0.00994433, 0.0235545, -0.0486931, -0.0471647 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p23(hatfit_yaw00_lev1_p23); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p23_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p24.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p24.mh deleted file mode 100755 index 04fbd78..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p24.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p24.mh: - -#ifndef stasm_hat_yaw00_lev1_p24_mh -#define stasm_hat_yaw00_lev1_p24_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p24(const double* const d) // d has 160 elements -{ - const double intercept = -0.209957; - const double coef[160] = - { - 0.0329241, 0.0204195, -0.0457593, 0.0501425, -0.00613224, 0.00723748, 0.00753633, -0.00218967, - 0.0567324, 0.0279709, 0.044728, 0.00627779, 0.0202298, 0.00300185, -0.0439539, 0.0484225, - 0.0599061, -0.0229727, -0.0046023, -0.0425072, -0.0265741, -0.0402482, -0.0184064, -0.0400436, - 0.129868, 0.0186916, -0.0187492, -0.0279144, -0.00644049, -0.0152003, -0.019119, 0.0695958, - -0.0579541, 0.0241296, 0.0301872, -0.0184226, -0.0375482, 0.00369089, -0.067679, 0.0316725, - -0.055719, -0.0459733, 0.130253, 0.0100149, 0.0523362, -0.0390752, 0.049506, -0.0562703, - -0.0882681, -0.0460667, -0.0540077, -0.0063019, 0.00833983, -0.0356212, 0.0579247, -0.0667233, - -0.0917908, -0.0543343, -0.0344169, -0.0230161, -0.00531222, 0.0843524, 0.07836, 0.0221333, - -0.139507, 0.007516, 0.0603828, 0.0806264, 0.0404374, -0.00715456, 0.088454, 0.0628061, - 0.0829363, -0.0348646, -0.0190776, 0.00782911, 0.0738113, 0.0218468, -0.133212, -0.109976, - 0.0430187, 0.0600624, -0.0250504, 0.0394135, -0.105551, 0.0274974, 0.0425897, 0.0730274, - 0.0721941, 0.0543258, -0.00415248, -0.0637805, -0.0302164, 0.0400649, -0.0335531, 0.0165375, - 0.0569047, 0.0575467, 0.0384013, 0.0282555, -0.0193094, 0.0499828, -0.10377, 0.0923725, - 0.018542, -0.0432079, -0.0109277, 0.00175565, -0.028568, 0.0184082, -0.0969235, 0.0896471, - -0.0161893, 0.0327373, -0.004733, 0.00905427, -0.0520759, 0.0635459, 0.152796, 0.000308197, - -0.0354366, -0.00113181, 0.061364, -0.128608, 0.00421285, -0.0287593, 0.0243545, -0.052208, - 0.000375558, -0.0167535, 0.00873265, 0.0752245, 0.00744216, -0.0119389, 0.0225206, -0.0189916, - -0.0253872, 0.00905674, -0.00873364, 0.00526114, 0.0448877, -0.0580581, 0.00681423, -0.0637524, - -0.0370372, -0.0561434, -0.00836047, 0.0433733, -0.0140024, 0.000233554, 0.00309609, -0.0161593, - 0.0248977, 0.0330903, 0.0336645, 0.0216872, 0.0263714, 0.072331, -0.0283138, 0.0637294 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p24(hatfit_yaw00_lev1_p24); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p24_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p25.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p25.mh deleted file mode 100755 index 8efc458..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p25.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p25.mh: - -#ifndef stasm_hat_yaw00_lev1_p25_mh -#define stasm_hat_yaw00_lev1_p25_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p25(const double* const d) // d has 160 elements -{ - const double intercept = -0.343956; - const double coef[160] = - { - 0.00760984, 0.00677376, -0.0254998, -0.0180962, -0.0163319, 0.0787102, -0.0501463, 0.109694, - 0.0324034, 0.0167922, -0.0197681, 0.0290643, -0.0292062, 0.0780218, 0.0643669, 0.0284101, - -0.0255905, -0.0887582, -0.00245165, 0.000299687, 0.0577481, 0.0246098, -0.0493255, 0.0317641, - 0.0699807, 0.00365498, -0.0248711, -0.0952788, -0.0441012, -0.00877127, -0.030372, 0.025457, - 0.00123633, 0.00568069, 0.0530734, 0.0160453, -0.0228293, -0.0383732, -0.0202062, 0.00138904, - -0.0311672, -0.0647133, -0.011528, 0.0200126, -0.0633424, -0.0168273, 0.01839, -0.0474396, - 0.0407186, 0.0366202, 0.0856484, 0.190433, 0.0179868, 0.00304538, 0.0494411, -0.0136479, - 0.111389, 0.0899019, -0.0682664, -0.0100893, -0.06274, 0.0846425, 0.0863926, 0.0344789, - -0.00408501, -0.0395417, -0.0479772, 0.0403961, 0.0353354, 0.0277053, -0.0834275, -0.0522247, - 0.0280733, 0.0182633, 0.0412811, 0.030988, 0.0378751, -0.029654, 0.0410781, -0.0249082, - 0.00416055, 0.018964, 0.0161914, 0.0459608, 0.0419443, 0.000767701, 0.00510756, 0.0379706, - -0.0847118, -0.00462727, -0.00259532, -0.0472359, 0.019949, -0.015067, -0.0199384, -0.00995159, - -0.0998395, 0.0710568, 0.0364557, 0.0287091, 0.0888186, -0.0355493, -0.041063, -0.0758328, - -0.0759168, -0.0295297, -0.0642619, -0.030304, 0.0497545, 0.0141481, 0.0492566, -0.00652294, - -0.0226196, -0.0498264, -0.0234137, -0.0373272, -0.00606085, -0.00196313, -0.0231809, -0.0233476, - -0.00804062, 0.0100827, -0.0173219, 0.010049, 0.0315197, 0.0323537, 0.113683, 0.111685, - 0.050072, -0.0252066, 0.0313543, -0.0228036, -0.0584108, 0.0153078, -0.0722343, -0.0497144, - 0.0357457, 0.0532115, -0.0072414, -0.0434428, -0.035532, -0.00558749, -0.0402508, 0.0592584, - 0.0665029, 0.0417867, 0.00392788, -0.0309772, 0.00040911, -0.0210691, 0.0148444, 0.0146238, - 0.0102926, 0.0166917, 0.0144286, 0.0537487, 0.000804561, -0.0208786, -0.0339195, 0.0450666 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p25(hatfit_yaw00_lev1_p25); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p25_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p26.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p26.mh deleted file mode 100755 index be11363..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p26.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p26.mh: - -#ifndef stasm_hat_yaw00_lev1_p26_mh -#define stasm_hat_yaw00_lev1_p26_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p26(const double* const d) // d has 160 elements -{ - const double intercept = -0.258416; - const double coef[160] = - { - -0.00350965, -0.00176727, 0.0280615, 0.100582, 0.0516356, -0.014299, 0.0969119, 0.0611335, - 0.0505389, -0.0141772, -0.072076, -0.0704732, 0.0288541, 0.0270603, 0.0417463, 0.012438, - -0.026474, 0.0106418, -0.0192412, 0.00922146, -0.0171761, 0.000301015, -0.0321873, -0.0131573, - 0.0106071, -0.0488669, -0.0599012, 0.0174829, 0.025597, -0.0133362, -0.104343, 0.184658, - 0.00435425, -0.0187789, -0.0399474, 0.0455359, -0.0288366, 0.0699611, 0.0333399, -0.0800692, - 0.0122853, 0.00344305, 0.0364898, -0.151364, -0.0852088, -0.00178568, 0.0316897, -0.0305154, - 0.00425055, 0.0301504, 0.0282844, -0.0151934, -0.0699295, -0.0299469, 0.0155334, -0.0324951, - 0.0297988, 0.0744955, 0.0666288, 0.0450893, -0.0617183, -0.0574214, -0.0496704, -0.0188076, - -0.0436869, -0.0200248, 0.0252562, 0.0178969, -0.047149, 0.00292977, -0.062868, -0.0842954, - 0.043477, 0.0700997, -0.00511285, 0.00301757, -0.0417495, 0.0746707, 0.129842, 0.0575271, - -0.0194383, 0.0668798, -0.0348481, -0.0217796, 0.0407116, 0.00766602, 0.0684383, 0.00838842, - 0.00132244, -0.0290873, 0.0186756, 0.0560339, 0.0317368, 0.045016, 0.0153503, 0.0255243, - -0.0127486, -0.0204903, -0.0369487, 0.0489509, 0.076522, 0.0118913, 0.0292849, 0.0308702, - 0.0262609, 0.00018022, -0.00272539, 0.00638587, -0.00702837, -0.0447886, -0.00564197, 0.0424315, - -0.0743288, -0.00477299, 0.0350454, 0.0938537, 0.0271551, 0.0364917, -0.0451706, 0.0142219, - 0.0136303, -0.0614797, -0.0208402, -0.0323582, 0.0512702, -0.0464986, 0.0845153, -0.00519982, - -0.0139982, 0.0406294, 0.0316932, -0.0047094, -0.00554515, -0.00944887, -0.057371, -0.0618004, - -0.0259082, 0.0238172, 0.0214687, -0.0108454, -0.00737554, 0.0388521, 0.0486423, -0.015575, - -0.0425036, -0.0370336, -0.0227926, 0.0054459, -0.00637709, 0.0188067, 0.0420747, 0.0616357, - 0.0455921, 0.0453217, -0.0197868, -0.0337423, 0.00859838, 0.00324809, -0.110627, -0.0217408 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p26(hatfit_yaw00_lev1_p26); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p26_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p27.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p27.mh deleted file mode 100755 index 555f46f..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p27.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p27.mh: - -#ifndef stasm_hat_yaw00_lev1_p27_mh -#define stasm_hat_yaw00_lev1_p27_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p27(const double* const d) // d has 160 elements -{ - const double intercept = -0.27113; - const double coef[160] = - { - 0.0659569, 0.0464331, -0.103289, -0.0413934, -0.0712755, 0.0346774, 0.0776075, 0.00796679, - 0.0563323, 0.0349391, 0.00432435, 0.0186805, -0.0227768, -0.0411882, 0.0180095, -0.0299084, - -0.00206588, 0.0248174, 0.00940869, 0.0292864, 0.036919, -0.0294685, 0.0153051, -0.00761443, - 0.0207946, -0.020588, -0.0167524, 0.0681632, 0.0617253, -0.0113329, 0.0781032, 0.120613, - 0.0584448, 0.00895681, -0.0797661, 0.0199725, -0.091961, 0.0210085, -0.0103899, -0.0277577, - -0.0227788, -0.0613546, 0.129852, 0.213951, 0.0422787, 0.13874, -0.00840513, 0.0306937, - -0.0819338, -0.0682186, -0.000161617, 0.0264743, -0.0361697, -0.00122901, -0.0812425, -0.0483864, - -0.0367527, 0.00506988, -0.0264522, 0.028902, -0.0366666, 0.0396858, -0.0272568, -0.0785532, - -0.0198807, 0.0610862, -0.025964, -0.14049, -0.00583712, 0.0220212, 0.0874111, -0.0149439, - -0.0559577, 0.00576425, 0.140836, 0.0080078, 0.0273005, -0.0369856, -0.00886448, -0.0916488, - 0.0144509, 0.0354737, 0.0483817, -0.0442041, -0.131503, -0.0762792, -0.0897255, -0.127158, - 0.0441685, 0.0695112, -0.074735, -0.0137479, 0.0393981, -0.00539789, 0.128842, 0.0522683, - 0.0255804, 0.047649, -0.00367784, -0.0202382, 0.00898913, -0.0726423, 0.0113562, 0.11802, - -0.0330782, -0.0250013, 0.0268071, 0.0255662, -0.0229084, 0.0101128, 0.0254925, 0.0043954, - 0.0369233, -0.0643779, -0.032985, 0.0624686, -0.0150503, 0.0408147, -0.0230252, 0.0894271, - -0.0239848, 0.0469918, -0.0968045, -0.0127922, -0.0347748, 0.0538083, -0.115578, 0.00181725, - -0.012524, 0.0620152, 0.0521556, 0.0723663, 0.0223458, 0.0462425, 0.0593311, -0.0103422, - 0.0260298, -0.0407782, 0.0141628, 0.0185399, 0.0204076, -0.028273, 0.0340808, -0.0169075, - 0.0207457, -0.00554604, -0.0227777, -0.0297453, 0.0190428, -0.042317, 0.0355453, -0.0367405, - -0.0275647, 0.0482755, 0.0201301, -0.03366, 0.024693, -0.02327, 0.00295774, -0.0371129 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p27(hatfit_yaw00_lev1_p27); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p27_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p28.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p28.mh deleted file mode 100755 index 935c0d0..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p28.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p28.mh: - -#ifndef stasm_hat_yaw00_lev1_p28_mh -#define stasm_hat_yaw00_lev1_p28_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p28(const double* const d) // d has 160 elements -{ - const double intercept = -0.367265; - const double coef[160] = - { - -0.0491177, 0.0231859, -0.0192595, 0.0330815, -0.0576877, 0.0225005, -0.0189693, -0.073541, - -0.0359155, 0.0280567, 0.058852, -0.021962, -0.0898127, 0.00992803, -0.105721, -0.0758356, - -0.0399572, -0.00768943, -0.00834162, -0.0527198, -0.00505285, 0.0574883, 0.0495735, 0.0353355, - 0.00565149, -0.0138252, 0.0275444, -0.0166165, -0.0180696, 0.0225599, 0.00422979, 0.0218285, - 0.0106431, -0.00438759, -0.0253353, 0.0531471, -0.00232429, 0.0125946, -0.0443213, 0.0380441, - 0.0545565, -0.0245121, -0.0243301, -0.0125267, 0.00408049, 0.0140579, 0.0684684, 0.0430101, - 0.0634023, 0.0491572, 0.00547892, -0.00679154, 0.0471163, -0.0927548, 0.0349607, 0.144998, - 0.0668455, 0.0199738, 0.0526352, -0.0139169, 0.0229871, -0.054652, -0.0295048, -0.00122264, - 0.015289, 0.0322566, 0.0218405, 0.0401696, 0.0214872, 0.00197294, -0.010518, -0.0242283, - -0.0318135, -0.00595729, 0.0123801, -0.064379, -0.0093272, -0.047988, 0.0772107, -0.0524223, - -0.0844024, -0.000671938, -0.0151113, -0.0149563, -0.0036049, 0.083559, -0.0754542, -0.0956407, - -0.035109, -0.0375144, 0.0130195, -0.0312299, -0.0114591, 0.055766, 0.120315, -0.0705052, - -0.09633, -0.011542, 0.0518571, 0.00872181, 0.0032912, -0.103982, 0.0191252, 0.000668796, - -0.0401536, -0.0493773, 0.0168348, 0.01139, 0.00740454, 0.039254, -0.0362172, 0.02814, - 0.014249, 0.0354089, -0.0336193, -0.0126663, -0.0140059, 0.0756294, 0.0198288, 0.0730499, - -0.0297365, 0.16755, 0.0359386, 0.111478, -0.0208914, 0.0188063, -0.041303, 0.0697762, - 0.0757622, -0.134472, 0.0145896, 0.133626, 0.109506, -0.00747391, 0.0592377, -0.0418491, - 0.158857, -0.0764913, -0.0324145, -0.0740956, -0.0123833, 0.021435, 0.0274086, 0.0530061, - -0.0218357, 0.158698, -0.0228227, -0.102267, -0.0387576, -0.0172159, -0.0725893, -0.113119, - -0.0698103, -0.0334452, 0.0718383, 0.153521, 0.0144299, 0.0119134, 0.0590488, 0.0985707 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p28(hatfit_yaw00_lev1_p28); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p28_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p29.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p29.mh deleted file mode 100755 index 443c0bf..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p29.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p29.mh: - -#ifndef stasm_hat_yaw00_lev1_p29_mh -#define stasm_hat_yaw00_lev1_p29_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p29(const double* const d) // d has 160 elements -{ - const double intercept = -0.424705; - const double coef[160] = - { - -0.0101392, 0.0594769, -0.0503994, -0.0217849, -0.0176289, 0.0145377, -0.0522176, 0.00121116, - 0.00360008, -0.0637196, 0.0524819, 0.00122919, 0.00585721, 0.0379185, 0.0118428, 0.0235596, - -0.00853191, -0.0297745, -0.0191564, 0.0336039, -0.0503812, -0.018574, 0.0527383, 0.0650683, - -0.0243727, -0.0434241, 0.00644921, -0.0300497, 0.00796432, -0.0536368, -0.0621528, 0.0279038, - -0.00738354, 0.0727482, 0.0549024, 0.0158414, -0.0583833, -0.0326461, -0.0674633, 0.0371455, - -0.00235584, -0.115486, 0.0571597, 0.0360401, 0.0540954, -0.0771664, 0.0161136, -0.035354, - 0.0430979, 0.0319481, 0.0163812, 0.0243459, 0.0489217, 0.0122026, 0.0135831, -0.000182662, - 0.0122186, -0.00370179, 0.0199094, -0.00179121, 0.0482769, 0.0688446, -0.0269516, -0.12388, - -0.00352889, 0.0219264, -0.00611725, 0.0666546, 0.0573278, 0.107485, 0.106329, -0.0893211, - -0.0891537, -0.0652508, -0.0010934, -0.00372103, 0.0410134, -0.00465645, 0.0239861, 0.0364478, - 0.0299715, 0.0630202, -0.0419831, -0.0686255, -0.0778967, 0.0467799, 0.0227674, 0.0657124, - 0.027953, 0.0426046, 0.0358549, -0.0399428, -0.0516945, 0.00788335, -0.00547867, -0.048281, - -0.0345903, -0.0463522, 0.0183776, -0.0318859, -0.0904243, -0.0961235, 0.071241, -0.0241751, - 0.0132324, 0.0117648, 0.0641096, 0.0415856, -0.00481538, -0.07176, 0.0348739, 0.107626, - 0.0708185, 0.0693277, -0.0641239, -0.0530838, -0.0661927, 0.0143412, -0.0828503, 0.0556659, - -0.142306, 0.110705, -0.0279635, 0.149666, -0.0350018, 0.0168867, 0.0640467, 0.0316187, - 0.0633347, -0.158517, 0.1008, 0.0477829, 0.111661, -0.0384688, -0.0385956, -0.0884942, - 0.092242, -0.028367, -0.0673696, -0.0897616, 0.061894, 0.10119, 0.0367397, 0.0390003, - 0.00781926, 0.135441, -0.000614327, -0.0771375, -0.107391, 0.0188102, -0.0536738, -0.0515374, - -0.0620133, -0.0284957, 0.0837494, 0.185942, 0.135109, -0.0251174, 0.0389205, 0.114206 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p29(hatfit_yaw00_lev1_p29); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p29_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p30.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p30.mh deleted file mode 100755 index 57b0c46..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p30.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p30.mh: - -#ifndef stasm_hat_yaw00_lev1_p30_mh -#define stasm_hat_yaw00_lev1_p30_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p30(const double* const d) // d has 160 elements -{ - const double intercept = -0.0531596; - const double coef[160] = - { - -0.116102, -0.0172225, 0.0454119, -0.0262966, -0.0207222, -0.0427532, 0.103657, 0.02224, - 0.0453501, -0.0014315, -0.0386289, -0.0456763, -0.0244043, 0.0208895, -0.0248768, 0.0451056, - -0.0245413, 0.0127505, 0.0329261, -0.00134255, -0.0140381, -0.0259175, -0.0684072, -0.0488436, - -0.0394765, -0.0451636, -0.0680844, -0.0211025, -0.00292934, 0.0674798, -0.00288135, 0.0395926, - 0.00930007, 0.0408055, 0.0158728, -0.0368503, -0.00486911, 0.0206787, -0.0960855, 0.0674777, - 0.146507, 0.0597985, -0.0785504, -0.0352399, -0.0553251, 0.0498531, -0.0510412, -0.05066, - -0.0637962, 0.0197599, 0.0860904, 0.19492, 0.16902, -0.0177371, 0.0311064, 0.0233502, - 0.0702246, 0.0475911, -0.09766, -0.0689293, -0.00937745, 0.00158015, 0.113499, 0.129597, - 0.0206268, 0.0119381, 0.0850598, 0.015194, -0.0276467, -0.0842619, 0.00383884, -0.00787932, - 0.016834, 3.43563e-05, 0.0220212, 0.0351324, -0.013533, 0.00399515, -0.0409508, -0.0654589, - -0.032318, 0.0819506, -0.0245304, -0.127415, -0.0202418, 0.00750139, 0.103719, 0.027766, - -0.00622414, -0.0615687, 0.0384051, -0.00782071, -0.109777, -0.0693072, -0.030324, -0.0384596, - -0.0193364, -0.0411026, 0.113159, 0.0408849, -0.0170671, 0.0279579, -0.0372294, -0.0214017, - 0.0114996, 0.0578027, -0.0615514, 0.0152347, 0.0460153, 0.111419, 0.0514752, 0.0416284, - -0.00200971, -0.00390233, -0.0450069, -0.023482, 0.0194326, -0.0105444, -0.0657913, -0.0614153, - -0.00685912, -0.0665019, -0.0477235, 0.0210051, 0.0345011, 0.0562563, 0.0548732, 0.00697098, - -0.0315075, -0.0138438, 0.00567381, -0.0284875, 0.00999239, -0.00871022, -0.0646768, -0.0581475, - -0.0023445, 0.0307289, -0.0300773, -0.0644101, 0.012134, -0.0145632, -0.0152647, 0.0761716, - -0.0944007, -0.00998309, 0.0451726, 0.0128116, 0.025647, -0.0153354, -0.0149689, 0.0425286, - 0.00340354, 0.0453019, -0.0248344, 0.0279366, -0.0537908, -0.00810353, -0.0232331, -0.0725048 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p30(hatfit_yaw00_lev1_p30); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p30_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p31.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p31.mh deleted file mode 100755 index f3392ae..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p31.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p31.mh: - -#ifndef stasm_hat_yaw00_lev1_p31_mh -#define stasm_hat_yaw00_lev1_p31_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p31(const double* const d) // d has 160 elements -{ - const double intercept = -0.388448; - const double coef[160] = - { - 0.0395692, -0.000582387, 0.0396386, 0.00866431, 0.0319535, 0.0041876, -0.0354922, -0.0104189, - -0.0310756, -0.0246819, 0.0131718, 0.0140588, -0.0118571, 0.0396711, 0.00573793, -0.0420841, - -0.0392253, 0.00435255, 0.0107915, 0.0484352, 0.069234, 0.0120039, -0.0142504, -0.0481674, - -0.0288146, -0.0300535, 0.0359163, 0.0134041, 0.0314277, -0.0117238, 0.0785214, 0.0631591, - -0.0130544, -0.0264549, -0.05275, -0.012083, 0.0545285, 0.00115459, -0.0312022, 0.0219239, - -0.0323945, -0.0122762, 0.015471, -0.0308729, -0.0539241, -0.0488238, 0.12595, -0.111672, - -0.0124925, 0.00426807, 0.0116804, -0.00775668, 0.039259, -0.0806952, 0.061823, 0.0456183, - 0.0410691, 0.0470852, 0.0510043, -0.00393638, -0.0729619, -0.0124941, 0.0428558, 0.122023, - 0.0525826, 0.0228482, -0.0453305, -0.0276555, -0.0690039, 0.00233118, -0.0920037, -0.011254, - -0.0476996, -0.00179941, -0.00906979, -0.0290895, 0.00247007, 0.0122311, -0.0150106, -0.0317769, - 0.099511, -0.102523, 0.0281903, 0.0553347, 0.119371, 0.0605233, -0.0784847, 0.0330739, - 0.0753692, 0.0859453, -0.0625154, -0.0926569, -0.0918532, 0.109675, -0.0501109, 0.0111423, - -0.049514, 0.0157422, 0.0406392, 0.105897, 0.038947, -0.0269157, -0.0732481, -0.134709, - -0.0132958, -0.0224088, 0.0157976, 0.0838067, 0.120186, 0.0517959, 0.105812, 0.130127, - 0.0182283, 0.052454, -0.0116218, -0.0192446, -0.0667099, -0.0212154, 0.0318632, -0.00745494, - 0.00943903, -0.0745027, 0.0762356, -0.00904315, -0.017699, -0.0561609, 0.0252819, 0.00907982, - -0.0613076, 0.0518035, 0.0243614, -0.0599225, 0.0215072, 0.00576192, 0.00735767, -0.0274716, - 0.0246765, 0.0444133, -0.000244459, -0.0395511, -0.0331652, -0.0164145, 0.0816089, 0.0400588, - -0.0199769, -0.102558, -0.0129884, -0.0170645, -0.0686559, -0.0387113, -0.0817568, -0.0127845, - -0.00316126, 0.0933731, 0.0331108, 0.0268358, 0.0409501, 0.0787449, 0.0206058, 0.0677994 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p31(hatfit_yaw00_lev1_p31); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p31_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p32.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p32.mh deleted file mode 100755 index a76f1ee..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p32.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p32.mh: - -#ifndef stasm_hat_yaw00_lev1_p32_mh -#define stasm_hat_yaw00_lev1_p32_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p32(const double* const d) // d has 160 elements -{ - const double intercept = -0.320639; - const double coef[160] = - { - -0.00911108, -0.0479156, -0.00740632, -0.012859, 0.0309539, 0.00489859, -0.00624756, -0.020108, - 0.0677567, -0.0155136, 0.0678659, 0.00147824, 0.0438044, 0.00549171, 0.0268882, -0.00297623, - 0.0467355, -0.000569183, 0.0496245, 0.014699, 0.0616936, 0.00263958, -0.0395147, -0.0297785, - 0.0126961, -0.00781382, 0.000625079, 0.0178607, 0.0226246, 0.0655686, 0.0337088, -0.0304876, - -0.0257202, -0.0219612, -0.0213103, 0.0194326, 0.0577388, -0.0477398, 0.0466768, 0.0194634, - 0.0182962, -0.0162236, -0.00055095, -0.0110111, -0.0190531, -0.0274738, -0.0244005, 0.066355, - -0.0631781, 0.0319185, 0.00377789, 0.00719412, -0.0578098, 0.0220575, -0.0130465, -0.0338156, - -0.0718547, -0.0406409, -0.0248472, -0.0471251, -0.0763616, -0.0305719, 0.0872795, -0.04342, - -0.0291223, 0.0174219, 0.0140269, 0.0152528, -0.00418056, -0.0340391, 0.0826187, 0.0677038, - 0.0170003, -0.00907442, -0.0291512, -0.0377432, -0.0488433, 0.0483225, -0.100243, 0.034457, - -0.106342, 0.12952, 0.0241453, 0.0446246, -0.0607043, 0.0811712, 0.0895215, -0.0504978, - 0.122301, -0.0768722, 0.0214746, -0.0429019, 0.0439603, -0.0422063, 0.0225263, -0.0368518, - 0.0926311, 0.02738, -0.0239644, 0.0229243, 0.0579599, 0.0101616, -0.00726972, -0.000649471, - 0.0135215, 0.0385566, 0.0175664, -0.0460473, -0.050476, 0.0167167, -0.040066, 0.0147113, - -0.00118741, 0.042841, 0.0631771, 0.145191, 0.0466015, -0.0373302, 0.0596687, 0.106164, - 0.0088616, 0.0634729, -0.0771898, 0.0459812, 0.0167569, -0.0705409, -0.0386409, 0.112283, - -0.0571554, -0.168199, 0.0226604, 0.034943, 0.0155652, 0.0234396, -0.0123834, 0.00107804, - 0.0273647, 0.033714, 0.0945813, -0.0809198, 0.0404793, 0.0308191, -0.00997607, -0.0276745, - 0.0276755, 0.0481048, -0.101447, -0.0905513, -0.0451026, 0.0491422, 0.0664234, -0.0265713, - -0.040285, -0.0443237, 0.0464626, 0.0769965, 0.0259644, -0.0342793, -0.0543196, -0.0928784 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p32(hatfit_yaw00_lev1_p32); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p32_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p33.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p33.mh deleted file mode 100755 index 36a056d..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p33.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p33.mh: - -#ifndef stasm_hat_yaw00_lev1_p33_mh -#define stasm_hat_yaw00_lev1_p33_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p33(const double* const d) // d has 160 elements -{ - const double intercept = -0.0187845; - const double coef[160] = - { - 0.0128283, -0.055128, 0.010886, -0.0231225, -0.0305408, 0.00461099, 0.0104216, 0.0271656, - -0.00228586, 0.0483301, -0.0136487, 0.0271316, 0.0564309, -0.0270776, 0.043211, -0.0112379, - 0.0231918, -0.0112949, 0.036762, -0.00612861, -0.00486995, -0.0342318, -0.0290889, -0.0106391, - 0.000312558, 0.0285837, 0.0235095, -0.028434, 0.00831803, 0.0265148, -0.050084, -0.0117228, - 0.00236049, -0.041693, -0.026685, 0.0302716, 0.00699107, 0.0666115, 0.037568, -0.003785, - -0.0251941, 0.0411825, -0.122721, -0.0247136, -0.0390895, 0.0417399, -0.0253207, -0.0118569, - -0.0162393, -0.0527942, 0.0783038, -0.00984112, -0.0233633, -0.000284128, -0.0400959, 0.0280783, - -0.0313475, 0.0260252, 0.00081784, -0.00324565, -0.0279781, 0.044135, 0.040844, 0.0306354, - 0.0187744, -0.0480202, 0.00757192, -0.00948626, -0.0589132, -0.0367085, 0.0597323, -0.108456, - -0.0430326, -0.0269714, 0.0392287, -0.00913477, 0.0286522, -0.137626, 0.0983528, 0.0694479, - 0.0673885, -0.0641448, 0.0966714, 0.0478503, 0.0526654, 0.105189, 0.0627519, -0.00105678, - -0.0623832, 0.134875, -0.0582099, -0.0352066, -0.0525147, 0.00990412, 0.0244933, 0.0171214, - 0.0367176, -0.0621222, 0.0158906, 0.0668107, -0.0107779, -0.0596686, -0.0566563, -0.0810594, - 0.0323834, 0.0121392, 0.0145543, -0.00650743, 0.114811, 0.0771221, -0.0600683, 0.0573055, - 0.0851473, 0.0814111, -0.0693027, -0.0160514, -0.0557765, 0.096182, -0.0552072, -0.0662288, - -0.029029, -0.0104541, 0.00859579, -0.0230395, -0.00224977, -0.0723467, -0.113479, -0.0628757, - 0.0067731, -0.000458681, -0.0301224, -0.00614874, -0.0341254, 0.00474058, 0.0300139, 0.0479876, - -0.0236848, -0.0624128, -0.0471116, 0.0415574, 0.0389746, 0.00909709, 0.102794, 0.0861245, - -0.0197406, -0.0237167, 0.164457, -0.0215144, -0.0320249, -0.0882093, -0.0687686, -0.0792362, - -0.0391014, 0.0326003, -0.031806, -0.111365, 0.0365271, 0.00928061, 0.0847804, 0.066844 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p33(hatfit_yaw00_lev1_p33); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p33_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p34.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p34.mh deleted file mode 100755 index e1812de..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p34.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p34.mh: - -#ifndef stasm_hat_yaw00_lev1_p34_mh -#define stasm_hat_yaw00_lev1_p34_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p34(const double* const d) // d has 160 elements -{ - const double intercept = 0.178305; - const double coef[160] = - { - 0.0332668, -0.0545706, -0.0397769, -0.102727, -0.0513047, -0.0280496, 0.0212568, 0.100975, - 0.0147986, 0.0945098, 0.0225728, 0.0163496, -0.0706498, 0.0135124, -0.0338867, -0.00292602, - -0.0117578, -0.0228322, -0.0991631, -0.0196783, -0.0715382, -0.0609741, -0.0451959, -0.00996876, - -0.0218956, 0.0405813, 0.0512725, -0.0304816, -0.0346735, 0.0410437, -0.0599454, 0.0278405, - -0.00430012, -0.0515526, 0.0408474, -0.0180384, -0.0375938, -0.050297, 0.0854439, -0.065132, - -0.0480776, -0.00851022, -0.0311825, -0.0125235, 0.10003, 0.0265117, -0.0932129, -0.0905405, - -0.0179596, -0.0783844, 0.0545748, 0.0983039, 0.112361, 0.103802, 0.000276691, -0.000181198, - 0.0260529, 0.0539351, 0.0215641, -0.0677932, 0.000667061, 0.145442, 0.129529, -0.000832013, - -0.0467681, 0.0241408, 0.0423294, 0.121797, -0.0189404, -0.12473, -0.00636875, -0.0269607, - 0.0997501, -0.0567658, -0.0953586, -0.0093058, 0.0775357, 0.0544267, -0.0465235, -0.0602757, - 0.0582786, -0.0635637, -0.027749, -0.0187748, -0.0546626, -0.149418, 0.043224, 0.0541148, - 0.0228059, 0.0306246, 0.00155719, -0.0412755, 0.032523, -0.0587637, -0.0013374, 0.0502265, - -0.0342482, 0.038831, 0.110763, -0.0240828, -0.0316851, -0.083598, -0.0966767, 0.00540257, - 0.0175222, -0.0453235, -0.0782324, 0.0424939, 0.0441882, -0.00707829, 0.0587061, 0.0676098, - -0.0898869, -0.0279974, 0.112122, -0.0175998, 0.0104283, -0.00582047, 0.00140559, 0.0392947, - -0.0652298, 0.0749545, 0.0544736, 0.0131598, 0.0152306, 0.0831729, -0.0200888, -0.0612296, - -0.0401844, -0.0736851, -0.079223, 0.0341835, -0.0466979, 0.0652963, -0.0215782, 0.0160373, - -0.00665171, 0.0425585, -0.0160073, 0.0448272, 0.00451256, 0.00694954, -0.00332655, -0.00627149, - -0.0135419, 0.00919265, 0.0027794, -0.00835187, -0.0440384, 0.0110796, -0.000867199, -0.00321809, - 0.0543303, -0.0137353, -0.0224532, -0.0320376, -0.0150772, 0.00407994, 0.0127847, -0.0176401 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p34(hatfit_yaw00_lev1_p34); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p34_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p35.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p35.mh deleted file mode 100755 index b04fecc..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p35.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p35.mh: - -#ifndef stasm_hat_yaw00_lev1_p35_mh -#define stasm_hat_yaw00_lev1_p35_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p35(const double* const d) // d has 160 elements -{ - const double intercept = -0.128463; - const double coef[160] = - { - 0.0548922, -0.0110683, -0.142114, -0.061709, -0.0739904, 0.0729181, 0.00372399, -0.0401665, - -0.0617821, 0.0601517, 0.0413927, -0.0297843, -0.0801413, 0.00486967, 0.0463089, 0.0182653, - 0.0368233, -0.00796331, 0.00955545, -0.0470071, -0.0327957, -0.0484237, 0.00205177, -0.0591226, - 0.0825365, 0.0521992, 0.00709222, 0.0413314, 0.026715, 0.0396009, 0.05337, -0.0870864, - 0.0624343, -0.0520468, 0.0297113, 0.0155546, 0.0373713, -0.0259624, -0.00302342, 0.0722519, - -0.012865, -0.0359395, 0.201415, 0.0834435, 0.131066, 0.0488908, -0.0165508, -0.0287044, - -0.0236077, 0.0360244, -0.0465815, 0.0298103, -0.0507475, -0.0381212, -0.00291925, 0.066679, - -0.0280296, -0.116999, -0.0653786, 0.138842, 0.135875, 0.00553319, 0.0729103, 0.0155418, - -0.0202042, -0.0540844, 0.101567, -0.051419, 0.0423417, 0.0287684, -0.123131, 0.0581658, - 0.0604602, 0.113075, -0.0644531, -0.0664801, -0.0592592, 0.0547968, 0.0039087, -0.0837654, - -0.0117236, 0.0236007, -0.146423, -0.0754925, -0.0932447, -0.0715713, -0.0024796, 0.001342, - 0.00909714, 0.0537925, -0.0105599, -0.0726132, -0.0738913, 0.023578, 0.0422188, -0.0206054, - 0.0173315, 0.0659782, 0.0403875, 1.06256e-05, -0.0569155, -0.00761777, 0.00587271, 0.0149728, - -0.0151301, 0.0470131, 0.0320093, 0.0175039, -0.0121165, -0.051231, 0.0608582, -0.0104416, - -0.0912704, 0.00771752, 0.0291578, -0.0629806, 0.0279452, -0.0162268, -0.0166928, 0.0858329, - -0.0414572, -0.00935215, -0.00984813, 0.0352476, 0.0321423, 0.0210393, -0.0371691, 0.0191584, - -0.0362629, -0.0497132, 0.00950301, 0.0912439, 0.0447469, 0.0326298, -0.0463132, 0.0560467, - 0.0252251, -0.0729444, -0.00413866, -0.0123862, 0.0247588, -0.0158056, 0.017215, -0.0253207, - 0.0436535, -0.0472254, 0.0386084, -0.0160216, 0.00108055, 0.00200998, 0.0146819, 0.00212591, - 0.0759401, -0.0456016, 0.0433273, -0.0109767, 0.00185021, 0.0298317, -0.018552, -0.128413 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p35(hatfit_yaw00_lev1_p35); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p35_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p36.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p36.mh deleted file mode 100755 index 9902dcf..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p36.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p36.mh: - -#ifndef stasm_hat_yaw00_lev1_p36_mh -#define stasm_hat_yaw00_lev1_p36_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p36(const double* const d) // d has 160 elements -{ - const double intercept = -0.1457; - const double coef[160] = - { - -0.0564536, 0.0914242, 0.00271123, -0.00182844, -0.0633129, -0.00733241, 0.0999422, -0.0477681, - 0.0764352, -0.0870852, -0.0486103, -0.0607736, -0.000435941, 0.00508668, -0.00500671, -0.0702268, - 0.128733, 0.0442575, 0.00878972, 0.0700395, 0.0473909, 0.0543005, -0.0111132, 0.013342, - 0.0205181, -0.0355777, -0.0151112, -0.0472716, -0.0856515, -0.0205877, -0.052943, -0.0136666, - 0.0069465, -0.0149346, -0.011358, 0.12753, 0.0984476, -0.0389193, 0.0579468, 0.0582624, - -0.0110768, 0.0444154, 0.00744086, 0.0866081, 0.0722389, -0.0573269, 0.0403181, 0.0920937, - -0.0364049, -0.115042, -0.00983702, 0.0596673, 0.0885667, 0.0310721, 0.00586564, 0.0468913, - -0.017122, -0.000325935, 0.0991339, -0.116244, -0.00667895, -0.0376603, -0.0678163, -0.0170879, - 0.0636697, 0.176845, -0.0927495, -0.091466, -0.0301194, 0.0528387, 0.0603075, 0.0012436, - -0.023938, 0.0278906, 0.172167, 0.0984494, 0.0194545, -0.024253, 0.0253562, -0.0318126, - -0.0194975, -0.0336116, -0.0267596, -0.0570041, -0.114461, 0.049068, -0.0356616, -0.0641071, - -0.00190114, 0.0505992, 0.0442466, 0.0142396, 0.00045172, 0.00117748, 0.064219, 0.00253523, - -0.0195815, -0.0274017, -0.0863983, -0.00886134, 0.030472, 0.0307451, 0.0463506, 0.0257106, - -0.0510129, -0.0619829, 0.0429726, 0.00240901, 0.0356966, 0.0180151, 0.0145302, 0.0191548, - -0.00199986, -0.0803635, -0.0330699, -0.0717274, -0.111292, -0.0742702, -0.0968331, -0.0140921, - -0.00389644, -0.0145533, 0.0115622, 0.0453926, 0.0300503, -0.0389438, -0.0292711, 0.0364436, - 0.0649299, -0.0437214, 0.0145625, -0.0366767, -0.00301135, -0.0164178, 0.0228936, -0.0039428, - 0.0138233, -0.059277, 0.0865879, -0.0358495, 0.0105995, -0.00712132, -0.0193304, -0.0165668, - 0.030437, -0.0192797, -0.0634831, -0.010421, -0.0251347, 0.0561532, 0.0426267, -0.0252875, - -0.0555928, 0.101112, 0.0649617, 0.0141765, 0.0842734, 0.00376744, -0.076665, -0.0297095 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p36(hatfit_yaw00_lev1_p36); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p36_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p37.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p37.mh deleted file mode 100755 index f2343ca..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p37.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p37.mh: - -#ifndef stasm_hat_yaw00_lev1_p37_mh -#define stasm_hat_yaw00_lev1_p37_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p37(const double* const d) // d has 160 elements -{ - const double intercept = -0.210055; - const double coef[160] = - { - 0.0950493, -0.00935139, 0.01181, 0.0394899, 0.0811007, 0.0275117, 0.0722424, -0.0881804, - 0.0348525, -0.0485876, -0.0160258, -0.0341514, -0.0305043, 0.0101718, -0.015857, 0.0402802, - -0.0377945, -0.0019027, 0.072919, 0.0842745, 0.000222965, -0.0380939, -0.0246376, -0.00424166, - 0.0194486, -0.0349667, -0.0273841, 0.0305295, 0.0636758, 0.00705299, 0.0305668, 0.0398521, - -0.118265, -0.0584037, -0.10794, -0.0415925, -0.0515304, -0.0127716, -0.0253359, -0.0407751, - 0.0420787, -0.148058, 0.0641812, 0.0268058, 0.0528418, -0.0247641, -0.0671391, 0.0818132, - 0.0311401, 0.128031, -0.0883229, -0.153532, -0.0651225, 0.034562, -0.00306306, -0.0456042, - 0.0944498, 0.100044, -0.000950214, 0.0151305, -0.0213224, -0.00808936, 0.0587715, -0.0295509, - -0.0385254, 0.034971, 0.0858179, 0.0599195, 0.0747935, -0.0450389, 0.00131876, 0.0261896, - 0.169738, 0.154491, 0.100171, 0.012634, -1.95869e-05, 0.0209616, 0.0390095, 0.102296, - -0.0308072, 0.0561644, 0.0242179, 0.0230298, -0.0307823, -0.00846482, 0.0667324, -0.0606024, - -0.0581933, -0.0114812, -0.0133874, -0.0071245, 0.0813445, 0.0274338, 0.0280443, 0.0464938, - -0.0905175, -0.0693952, 0.00853314, -0.00178364, -0.0380305, 0.00459273, 0.0106825, 0.0111277, - -0.0120436, -0.117429, -0.0235661, -0.0397598, -0.101663, -0.0520093, -0.0944389, 0.000748769, - -0.11383, -0.000200208, -0.0660839, -0.0318683, 0.00202877, 0.0629289, 0.0393827, -0.0105708, - 0.0631688, -0.108595, 0.0667351, -0.0726672, 0.0300087, -0.00349452, 0.00734037, 0.031999, - 0.0497461, 0.00735207, 0.00306494, 0.014219, -0.0212763, 0.00729894, 0.0156232, -0.0397873, - 0.0196028, 0.0102293, -0.0297117, -0.0220887, 0.011573, 0.0196214, -0.0306056, -0.0356663, - 0.0183344, 0.0707345, 0.0325791, -0.00904613, 0.0610273, 0.0230972, -0.0134933, -0.00580341, - -0.00179494, 0.0261325, 0.0439199, 0.0950851, 0.0437041, -0.0344384, -0.0711167, 0.0268441 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p37(hatfit_yaw00_lev1_p37); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p37_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p38.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p38.mh deleted file mode 100755 index 73ca407..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p38.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p38.mh: - -#ifndef stasm_hat_yaw00_lev1_p38_mh -#define stasm_hat_yaw00_lev1_p38_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p38(const double* const d) // d has 160 elements -{ - const double intercept = 0.00825774; - const double coef[160] = - { - 0.020407, 0.00890872, -0.0169787, -0.00204599, 0.00584481, 0.00639558, -0.0849912, 0.00116488, - -0.0601776, 0.00297223, 0.0121289, -0.000996734, -0.0504259, 0.0155576, 0.0171136, -0.0268562, - -0.113227, -0.0539823, -0.00137992, -0.0682175, -0.054388, -0.029641, 0.056121, -0.0473043, - -0.0266457, 0.0332315, -0.0335831, 0.0421327, 0.0238765, 0.0182142, 0.0496482, 0.0712496, - -0.00973039, 0.0157489, 0.0170978, -0.0118249, -0.00446035, 0.00864153, -0.085431, 0.0142116, - -0.0440188, 0.0403919, 0.0950656, 0.0150426, -0.0402887, -0.00466724, 0.0537792, 0.00106359, - 0.0897128, -0.0689607, -0.0521427, -0.0517765, 0.030659, -0.0411972, 0.0376676, -0.082132, - 0.127533, 0.0719542, 0.00061304, 0.0947038, 0.0898292, 0.05316, 0.0314538, 0.053163, - -0.00890308, -0.0451384, 0.0111458, -0.10212, -0.0509414, -0.0147361, -0.0346506, -0.0219878, - 0.00741214, 0.0021788, 0.0244155, 0.101578, 0.0200075, -0.0234641, 0.0230619, 0.0857225, - -0.0198343, 0.0936703, -0.0537956, 0.0921753, 0.138995, -0.0724931, 0.0615286, 0.0941637, - -0.0237765, -0.164809, 0.0134797, -0.00604466, -0.0255852, 0.0324988, -0.1069, 0.0255736, - -0.0514497, -0.0090038, 0.0936203, -0.0991071, 0.00258113, -0.0100746, -0.00428397, -0.0354388, - 0.0905338, 0.142749, -0.142989, -0.0846769, -0.0825498, 0.0805062, -0.00189693, -0.0404901, - -0.00501544, -0.0170325, 0.104385, 0.133965, 0.0772667, -0.076081, 0.040041, -0.0423703, - -0.0192534, 0.00365024, -0.00859575, -0.021672, -0.0746258, 0.0422147, 0.00830109, -0.00595983, - -0.00282683, 0.0146986, 0.0234629, 0.0102508, 0.00175921, 0.0115853, 0.0428529, -0.0050183, - -0.0154206, -0.0336309, 0.0154812, -0.0383404, 0.0251418, -0.0212968, -0.0185515, 0.0357765, - -0.0842346, -0.022264, -0.00279582, 0.00169226, 0.056891, 0.056779, 0.0231415, 0.0348637, - -0.0464232, -0.0307553, -0.00421516, -0.0536781, -0.0807341, -0.0179894, -0.0516063, 0.0255976 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p38(hatfit_yaw00_lev1_p38); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p38_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p39.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p39.mh deleted file mode 100755 index 5dd53ad..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p39.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p39.mh: - -#ifndef stasm_hat_yaw00_lev1_p39_mh -#define stasm_hat_yaw00_lev1_p39_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p39(const double* const d) // d has 160 elements -{ - const double intercept = -0.02697; - const double coef[160] = - { - -0.0137683, 0.0311045, -0.00576306, -0.0245337, -0.02928, 0.0415028, -0.107335, -0.016224, - -0.0457684, -0.00847157, 0.00116153, -0.0267579, -0.0351215, 0.010888, 0.05105, -0.00561323, - -0.0823366, -0.0528186, -0.0139097, -0.0424504, -0.0681589, -0.0593362, 0.0631822, -0.0315455, - -0.0168791, 0.0661379, 0.00162439, 0.00656767, 0.0131466, 0.0123653, 0.0107543, -0.00464072, - -0.0276494, 0.0165671, -0.0178021, 0.0154676, -0.0178779, 0.0137792, -0.0560624, 0.0100809, - -0.0397822, 0.0332191, 0.0806629, 0.106174, -0.0112653, 0.00187161, 0.017389, 0.0214195, - 0.089707, -0.0532137, -0.0466615, -0.0195368, 0.0441674, -0.0145126, 0.0705208, -0.0387176, - 0.116554, 0.0654563, 0.00963125, 0.0722848, 0.113763, 0.0196434, 0.0266145, 0.0757253, - -0.0426398, -0.109253, 0.000972455, -0.070805, -0.068536, -0.00561257, -0.0636282, -0.0180017, - 0.0597286, -0.0306022, 0.0558584, 0.0753626, 0.0085934, -0.0378896, 0.067625, 0.0802456, - -0.0274845, 0.162607, -0.0419922, 0.0483271, 0.123508, -0.0646426, 0.0586254, 0.0346976, - 0.0291506, -0.159534, -0.0188968, 0.0379708, 0.0134742, 0.029137, -0.0647252, 0.029742, - -0.0261874, -0.0465041, 0.143266, -0.088367, -0.0551904, -0.00386277, -0.0299972, -0.0609167, - 0.00441822, 0.154191, -0.129404, -0.0879472, -0.0580239, 0.0599026, -0.0028995, -0.0540687, - 0.0144118, -0.0158184, 0.0417359, 0.0837592, 0.0243108, 0.00549566, 0.0503914, -0.0967733, - -0.0229701, -0.073099, -0.0420856, -0.0503984, -0.111204, 0.0354666, -0.0518395, -0.0114431, - 0.0396234, 0.025096, 0.0130838, 0.056822, -0.0405526, -0.00781527, 0.073553, 0.00667156, - 0.000719109, -0.0457464, -0.00136307, -0.0379476, -0.0192339, -0.0586512, -0.0390123, 0.0188078, - -0.0139295, 0.0144688, 0.0327322, 0.0454937, 0.0938609, 0.0331601, 0.050297, 0.0423592, - -0.0363346, -0.010519, -0.00131118, -0.0415203, -0.0498438, -0.00662749, -0.0168949, 0.0644758 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p39(hatfit_yaw00_lev1_p39); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p39_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p40.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p40.mh deleted file mode 100755 index 6e71e5e..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p40.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p40.mh: - -#ifndef stasm_hat_yaw00_lev1_p40_mh -#define stasm_hat_yaw00_lev1_p40_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p40(const double* const d) // d has 160 elements -{ - const double intercept = -0.0617577; - const double coef[160] = - { - 0.0156052, -0.0459866, -0.00696063, 0.0189737, 0.0265626, 0.0491555, -0.068995, 0.0519549, - 0.0218703, 0.00595397, -0.048948, -0.0240862, -0.0436321, 0.0146736, 0.00315227, 0.0799594, - -0.0552814, -0.00730044, -0.0093325, -0.0324573, -0.0363188, -0.0184091, -0.0983743, -0.0142322, - -0.0277883, -0.0040611, 0.0201635, 0.0043392, -0.0182613, 0.0492748, -0.0425199, -0.0311676, - -0.0198514, -0.0524871, 0.0234489, -0.0173401, -0.0654155, -0.0320293, 0.136825, 0.00609792, - 0.0312316, 0.0166199, 0.0998807, -0.0362655, -0.00310585, -0.103129, -0.0359893, -0.0347384, - -0.125087, -0.0814028, -0.00221715, 0.057648, 0.0746448, 0.00398399, 0.0274751, -0.0829248, - 0.0451593, 0.0611274, -0.0543719, 0.00362775, 0.00348841, 0.154784, 0.0544589, -0.000858817, - 0.0289775, 0.116359, 0.0488896, 0.0798694, 0.0394962, -0.0692173, 0.0532962, 0.0636297, - 0.088678, -0.0533548, -0.0582863, -0.000803631, 0.109162, 0.00118488, -0.059963, -0.0239472, - 0.0771359, 0.0276344, -0.0882249, 0.0688487, -0.00748756, -0.0326405, -0.0178754, -0.00313541, - 0.0451601, 0.043886, 0.0659399, -0.059189, 0.0788565, 0.0218061, 0.0332941, 0.108433, - -0.0465029, -0.0203694, 0.0980137, -0.0546819, -0.0378287, -0.03932, -0.00657228, -0.018022, - -0.0559456, -0.00620295, -0.0316693, 0.00968451, -0.0135787, 0.0130518, -0.00506395, -0.00892536, - -0.0593109, -0.104716, 0.0508358, 0.060059, -0.00030429, 0.0226462, 0.069877, 0.0195314, - -0.0268644, 0.00339959, 0.00963795, 0.0229593, -0.0540894, -0.0612055, -0.0395579, -0.0376664, - 0.0072953, 0.0102422, -0.0257972, 0.0812377, -0.110344, 0.046166, 0.0147895, -0.0229899, - 0.00976963, -0.0256674, -0.0210554, 0.00772394, -0.00608955, 0.00331062, -0.0475402, 0.0181648, - 0.0137614, -0.000236305, -0.0178339, -0.0104172, -0.0305334, -0.0299109, -0.0491962, -0.0191575, - 0.057466, 0.0412388, -0.034844, -0.0256005, -0.00917834, 0.00792608, 0.0468386, 0.021432 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p40(hatfit_yaw00_lev1_p40); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p40_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p41.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p41.mh deleted file mode 100755 index 3368ddf..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p41.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p41.mh: - -#ifndef stasm_hat_yaw00_lev1_p41_mh -#define stasm_hat_yaw00_lev1_p41_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p41(const double* const d) // d has 160 elements -{ - const double intercept = -0.262799; - const double coef[160] = - { - 0.0594156, -0.0187286, -0.0323565, -0.0226788, -0.055155, 0.0173702, -0.033518, -0.0434084, - 0.0596953, 0.04228, -0.00726641, 0.0119526, -0.0537957, 0.0293668, 0.100588, 0.000491553, - 0.0307966, 0.0224319, 0.00512161, -0.0152303, 0.00408469, -0.0856581, -0.0283398, 0.0343747, - 0.0086871, 0.0207789, 0.0469816, -0.038938, 0.00391296, -0.0168281, -0.0427036, 0.00361286, - 0.0179812, 0.0169613, 0.00572675, 0.0304129, -0.00196809, 0.0418755, -0.00682326, -0.00526619, - -0.051209, 0.00270587, -0.0942246, -0.032416, -0.0220637, -0.00783117, -0.0169596, 0.0714794, - -0.0995697, -0.0152599, 0.0286164, 0.00709659, 0.0347345, 0.0513593, -0.132293, -0.0621502, - -0.0369908, 0.00803909, 0.0541353, 0.049953, -0.00213287, 0.0951546, 0.0857773, -0.00410647, - -0.0191665, -0.0381783, -0.0355435, -0.0131754, -0.00711061, -0.0496656, 0.0938031, -0.0537285, - -0.0575811, -0.0393168, 0.0567432, 0.00969633, 0.00741533, -0.0857071, 0.0651419, 0.0182334, - -0.0445946, -0.078534, 0.0226902, 0.00333909, 0.0361221, 0.0670708, 0.0128299, -0.0734256, - 0.0400354, 0.166504, 0.0157823, -0.00584887, -0.0352993, 0.0117685, 0.0264848, 0.0966697, - 0.0356856, -0.0375088, 0.0058627, 0.0673025, 0.0384437, -0.0679526, -0.0509106, -0.00267304, - 0.0892667, 0.0126181, 0.0327518, 0.0443882, 0.073673, 0.0527703, -0.0464817, 0.0490703, - 0.0459133, 0.0243223, -0.0656711, -0.0428812, -0.0567108, 0.0741543, -0.0408965, -0.0359412, - 0.00660457, 0.0337438, 0.084027, 0.00664404, 0.00537387, 0.00442322, -0.016303, 0.0799516, - -0.0276819, -0.0329564, -0.0322236, -0.0538003, -0.0247828, -0.0352706, -0.00563658, -0.0606449, - -0.0264253, -0.0629177, -0.0583771, 0.0590368, -0.00873518, 0.0266721, 0.0847975, 0.0309815, - 0.00688709, -0.0389876, 0.132531, -0.0169061, -0.0111577, -0.0763632, -0.0418102, -0.0389548, - -0.00804132, 0.0567647, 0.00484636, -0.0533848, 0.0127496, 0.00782392, 0.079095, 0.0268384 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p41(hatfit_yaw00_lev1_p41); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p41_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p42.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p42.mh deleted file mode 100755 index f128ecf..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p42.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p42.mh: - -#ifndef stasm_hat_yaw00_lev1_p42_mh -#define stasm_hat_yaw00_lev1_p42_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p42(const double* const d) // d has 160 elements -{ - const double intercept = -0.267832; - const double coef[160] = - { - 0.0250589, 0.0223719, -0.0531637, 0.0118598, -0.0518864, 0.0149485, 0.0560363, 0.000827213, - 0.0652895, 0.0216623, 0.0213494, -0.00431385, 0.0155663, -0.0697053, 0.0143104, 0.0269714, - 0.0717636, 0.0164198, 0.0651081, -0.00678762, 0.0217544, 0.0433132, -0.0405112, 0.0233288, - 0.0368319, -0.00987942, 0.0394593, 0.0363214, 0.0098887, -0.032322, -0.0148654, -0.0114874, - 0.0167995, -0.0430063, -0.00212365, -0.0600111, -0.0100988, 0.00564683, 0.00651138, 0.0223506, - -0.0475533, -0.017191, -0.0231814, -0.0394015, 0.0183108, 0.056735, -0.0773495, -0.0186808, - -0.10888, -0.01172, -0.012778, -0.0280946, -0.023565, 0.0426887, 0.0803558, -0.00555116, - -0.0821078, -0.0211481, 0.0114963, 0.0126135, -0.0138914, -0.0961712, 0.0534635, -0.0237414, - -0.0627828, 0.0069159, -0.0124681, -0.0437366, -0.015536, 0.0277698, 0.00946747, -0.0386741, - -0.00681303, 0.0287985, -0.0146775, -0.00106336, -2.09394e-05, 0.0529079, 0.0153303, 0.00134007, - -0.0475712, 0.150543, 0.0663932, 0.110781, -0.0139091, 0.0487534, -0.00906667, -0.00264463, - 0.105522, -0.0986673, 0.00944924, 0.044035, 0.0759185, -0.00941136, 0.0772422, -0.0080406, - 0.0982731, 0.009884, -0.0309918, 0.00527481, 0.0366586, -0.0249879, -0.00944553, 0.0612417, - -0.0196947, 0.0219406, -0.00881142, -0.0202785, -0.0113854, 0.0112294, -0.0726931, -0.00253419, - 0.0140862, -0.0546059, 0.0840347, 0.104682, -0.0256582, -0.038651, 0.0835034, 0.136506, - 0.00104366, 0.0249283, -0.0248792, 0.00766329, 0.0371655, -0.0961918, 0.0151661, 0.0401377, - 0.000438639, -0.108393, -0.0157583, 0.0281483, 0.0234077, 0.0413021, -0.0310684, 0.00633404, - 0.0395615, -0.0197817, 0.0962121, -0.0522614, -0.042909, 0.027851, 0.0400732, -0.00705579, - 0.0100766, 0.082584, -0.0489721, -0.0849357, -0.0251572, 0.0194749, -0.0308505, -0.074304, - -0.0790463, -0.0262516, -0.024485, 0.0603077, 0.0270147, 0.0375003, 0.00448266, -0.0809277 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p42(hatfit_yaw00_lev1_p42); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p42_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p43.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p43.mh deleted file mode 100755 index 625323d..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p43.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p43.mh: - -#ifndef stasm_hat_yaw00_lev1_p43_mh -#define stasm_hat_yaw00_lev1_p43_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p43(const double* const d) // d has 160 elements -{ - const double intercept = -0.109739; - const double coef[160] = - { - 0.0570196, -0.00816288, -0.0396789, -0.0691714, -0.0147693, -0.0113571, 0.0238471, 0.0654756, - 0.0127259, 0.0262569, 0.0713755, 0.0551583, -0.00408789, 7.70712e-06, -0.0481539, -0.0185502, - -0.0290117, -0.0125839, -0.00523495, 0.0186073, 0.0100473, 0.00134032, -0.0158129, -0.0650889, - -0.00211844, 0.0373439, 0.00656235, 0.0406139, 0.0121945, -0.0274831, 0.0764015, 0.0587713, - -0.00853797, -0.0345838, -0.00964707, -0.0727974, 0.00889578, 0.0503037, -0.0333862, -0.034163, - -0.0827511, -0.0471695, -0.0346255, -0.0385785, -0.00680009, -0.023391, 0.180779, -0.110075, - -0.0308566, 0.00913772, 0.0667521, -0.0236769, 0.0473191, -0.114058, -0.00661101, 0.0277845, - 0.00833675, -0.0048789, 0.0638954, -0.00843914, -0.00834834, 0.0313403, 0.00101895, 0.0332497, - -0.00245061, -0.0320165, -0.0555559, -0.111136, -0.0490009, 0.056839, 0.00416749, -0.0448449, - -0.0293516, 0.031744, -0.0351489, 0.113501, 0.00559084, -0.0416646, -0.011213, 0.0752133, - 0.163951, -0.0631562, 0.0117438, 0.0983181, 0.129859, 0.0358397, -0.0592237, 0.0938551, - 0.0407702, 0.016116, -0.0669065, -0.0705481, -0.0925694, 0.0770623, -0.06897, -0.0108773, - -0.038666, 0.106142, 0.0032002, 0.0526937, -0.0260607, -0.0476551, -0.0931545, -0.0581646, - -0.0213479, -0.0944708, 0.0764147, 0.155, 0.0953724, 0.00644171, 0.0818339, 0.098784, - 0.0583541, 0.0385834, 0.014567, -0.151929, 0.0651872, 0.0237393, 0.0354186, 0.0701812, - -0.00868975, -0.120429, 0.0431517, 0.00308768, -0.0856116, -0.0145191, 0.036296, -0.0410546, - -0.0409622, 0.0470182, 0.0770556, -0.0371906, 0.0159651, -0.0274052, 0.0122354, -0.030157, - -0.0336936, 0.0396808, -0.0337803, -0.0324049, 0.0169184, 0.0412101, 0.0850196, 0.0202203, - -0.0207872, -0.0314282, 0.00840539, -0.0183683, -0.036961, 0.00315037, -0.0447284, -0.0183713, - 0.00828758, 0.0171499, -0.0376258, -0.00846203, -0.0420137, -0.0241747, -0.0150662, -0.0478079 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p43(hatfit_yaw00_lev1_p43); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p43_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p44.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p44.mh deleted file mode 100755 index e474deb..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p44.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p44.mh: - -#ifndef stasm_hat_yaw00_lev1_p44_mh -#define stasm_hat_yaw00_lev1_p44_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p44(const double* const d) // d has 160 elements -{ - const double intercept = 0.109008; - const double coef[160] = - { - -0.0945362, -0.0449524, 0.0660333, -0.0246236, 0.0158696, -0.0471226, 0.0447189, -0.0258553, - 0.025887, -0.0135329, -0.0214826, -0.0206675, 0.013636, 0.0741179, -0.0320414, 0.0372598, - -0.0704824, -0.0233604, -0.00317469, -0.00842793, -0.00341977, 0.00219688, -0.0954223, -0.0554482, - -0.0525299, -0.0333753, 0.0021748, 0.074139, 0.0360935, 0.00534435, 0.0684776, 0.0403155, - -0.0192615, -0.0568851, -0.0342091, -0.0741966, -0.00925542, 0.052715, -0.0159705, -0.0190257, - 0.0881149, 0.0554443, -0.077389, -0.0955993, -0.0563765, 0.0634231, -0.0891371, 0.0688448, - -0.0877472, -0.0258642, 0.0407242, 0.157993, 0.0400953, -0.127256, -0.0189779, -0.0743465, - 0.113783, 0.0492693, 0.0370564, -0.010719, 0.0538533, 0.0681946, 0.16568, 0.173489, - 0.104194, 0.0467617, 0.0189704, -0.0376701, 0.00528474, -0.0861354, -0.00434834, 0.122647, - 0.0184847, -0.00775123, -0.0450692, 0.0104375, -0.0201632, -0.0271411, -0.0935868, -0.0408573, - -0.0339742, 0.12917, 0.0588921, -0.0593483, -0.0471046, 0.00587893, 0.0765586, -0.0184146, - -0.0654201, -0.0186158, -0.0343246, -0.0380061, -0.036993, 0.0425709, -0.00783674, -0.0133803, - 0.00813309, -0.0370071, 0.10609, 0.0397922, -0.0274873, -0.021436, -0.0703765, -0.0782073, - -0.0418972, -0.00730855, -0.0399368, -0.00838882, 0.00432808, 0.0418548, 0.0388093, -0.133597, - -0.032826, -0.0237243, -0.0124979, -0.0523122, 0.0277924, 0.0076101, -0.00757488, -0.080163, - -0.0339697, -0.0814072, -0.024809, -0.0294447, 0.0479387, 3.89295e-05, 0.0361916, 0.00560784, - 0.00638087, 0.0103722, -0.0058001, 0.0313552, -0.0131113, 0.0205947, -0.0219136, 0.000589408, - -0.0214051, 0.0924824, -0.0379552, 0.00046803, -0.0307971, 0.0155563, -0.0262803, 0.0326664, - -0.0468105, -0.00447329, -0.0346878, -0.0124326, -0.0402621, 0.0115866, -0.0451612, 0.138228, - 0.0480731, 0.01717, 0.0404243, 0.0616278, -0.0362902, -0.0333519, 0.0372897, 0.0130936 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p44(hatfit_yaw00_lev1_p44); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p44_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p45.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p45.mh deleted file mode 100755 index ad60533..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p45.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p45.mh: - -#ifndef stasm_hat_yaw00_lev1_p45_mh -#define stasm_hat_yaw00_lev1_p45_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p45(const double* const d) // d has 160 elements -{ - const double intercept = -0.25172; - const double coef[160] = - { - 0.138588, 0.0320257, 0.0356155, 0.0724541, 0.120651, -0.0189986, 0.106301, -0.0298257, - 0.0350613, -0.0742858, -0.00626365, -0.0366956, 0.00288059, -0.0262773, -0.0335548, 0.0513913, - -0.0487848, -0.0594982, 0.0626344, 0.0553294, -0.0107779, -0.0238063, -0.0467799, -0.0179865, - -0.0237511, -0.0537311, 0.00119416, 0.0220104, 0.0691962, 0.0204227, 0.0969524, 0.0179205, - -0.0370185, -0.0426937, -0.100493, 0.0102081, 0.0312435, 0.00265713, -0.0234102, 0.122252, - 0.0547786, -0.107252, 0.111451, 0.0475615, 0.0537575, -0.00080478, -0.0791252, 0.0088121, - 0.0253345, 0.0846276, -0.108816, -0.130749, -0.10341, 0.0592801, -0.0318539, -0.0249449, - -0.010017, 0.192572, -0.0720721, -0.0648521, -0.0571078, 0.0111925, 0.0666735, -0.0547617, - -0.0309815, -0.0215697, 0.109581, 0.0672603, 0.011995, -0.00119004, -0.0238963, 0.0618288, - 0.146923, 0.133224, 0.0838379, -0.0742575, -0.0287099, -0.00583805, 0.0450488, -0.0666454, - -0.0188749, -0.0366709, 0.037215, 0.0536543, -0.100444, -0.0419477, 0.0163139, -0.0565705, - -0.0278959, 0.000975454, 0.0281221, 0.049062, 0.102175, 0.0226027, 0.0645185, 0.0349713, - -0.0826408, -0.0749836, 0.0577827, 0.0822353, 0.0798172, 0.0386831, -0.0101139, 0.0461214, - 0.00293569, -0.0776405, -0.0391742, 0.0176803, -0.00405256, -0.0141349, 0.0250607, 0.00126634, - -0.111324, -0.0221828, -0.11046, 0.0129321, 0.0242276, 0.00152692, -0.00077143, 0.0251926, - 0.0453204, -0.0121045, 0.09637, -0.0769084, 0.0588002, -0.0329975, -0.0250022, 0.0456485, - -0.0177055, -0.0139467, -0.0054085, -0.0442463, -0.0385275, -0.020766, -0.00469496, -0.0233761, - 0.0459073, 0.0279808, -0.0103614, -0.0883182, -0.0111125, 4.03714e-05, 0.0135568, -0.062711, - -0.00610121, 0.0899954, 0.00370827, -0.0199731, -0.043631, 0.0366049, 0.0242956, 0.0318513, - 0.0163144, -0.0494192, 0.00613827, -0.0128951, -0.0382535, -0.0117383, -0.0496041, -0.0232795 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p45(hatfit_yaw00_lev1_p45); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p45_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p46.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p46.mh deleted file mode 100755 index 2f576a5..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p46.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p46.mh: - -#ifndef stasm_hat_yaw00_lev1_p46_mh -#define stasm_hat_yaw00_lev1_p46_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p46(const double* const d) // d has 160 elements -{ - const double intercept = -0.1262; - const double coef[160] = - { - -0.0247898, 0.0725981, 0.00940554, 0.0052597, 0.00695337, -0.0227812, 0.0829615, -0.0182238, - 0.0912312, -0.0397266, -0.00802797, 0.0164496, 0.050756, -0.00600232, -0.0175702, -0.03503, - 0.147221, 0.0160325, -0.00482178, 0.0407726, 0.0537962, 0.020743, 0.0355159, 0.057278, - -0.0217205, -0.0576563, -0.0685952, -0.0518904, -0.0855381, -0.0101204, -0.0816496, -0.00958126, - -0.017169, -0.0468333, 0.0395461, 0.0787189, 0.0362518, -0.0288426, 0.0762642, 0.0955865, - -0.0407962, 0.0912819, 0.00170931, 0.111283, 0.0747911, 0.0214694, 0.0356399, 0.0678785, - -0.0119807, -0.125812, 0.0183076, 0.0566146, 0.0650642, 0.043017, -0.0296444, 0.0171253, - -0.0139448, -0.0234206, 0.0995859, -0.0773336, -0.0337063, -0.0184082, -0.0234433, -0.0469514, - -0.0159479, 0.164123, -0.0909827, -0.0802733, -0.0225864, 0.0681187, 0.0216672, -0.0506549, - -0.0686634, 0.0314723, 0.0919573, 0.053391, 0.0320703, 0.052185, 0.0490161, -0.0794547, - -0.0305819, -0.0936891, -0.0178693, -0.0513525, -0.0980818, -0.00498728, -0.074374, -0.0999793, - 0.00662704, 0.0383561, 0.00845843, 0.0425148, -0.0533615, 0.0118851, 0.0324261, -0.00552462, - 0.0162779, -0.0513451, -0.0764762, -0.00473995, 0.000206355, 0.00314181, 0.0385827, 0.0602592, - -0.0351145, -0.0386392, 0.0498369, 0.0366033, 0.0440881, 0.0136349, 0.0225003, 0.0527547, - 0.00338717, -0.0367825, -0.0426791, -0.0226034, -0.0303609, -0.0594028, -0.0347768, 0.0730718, - 0.0173539, 0.0453047, 0.0667917, 0.0466438, -0.0243697, -0.0156744, -0.101598, 0.0479361, - 0.0261366, -0.0550373, -0.0107337, -0.0677039, 0.00929147, 0.0117664, 0.0345724, 0.0198759, - -0.0534636, 0.0071773, 0.0380319, -0.051799, 0.0129421, -0.00628485, -0.00436391, 0.0113728, - 0.0319683, -0.0269471, 0.0113978, -0.0513272, 0.0395217, -0.00380428, 0.0259736, -0.0518657, - 0.014918, 0.0633155, -0.00548257, 0.0103552, -0.04868, 0.0484848, -0.00154793, -0.102005 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p46(hatfit_yaw00_lev1_p46); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p46_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p47.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p47.mh deleted file mode 100755 index 3fa31a0..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p47.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p47.mh: - -#ifndef stasm_hat_yaw00_lev1_p47_mh -#define stasm_hat_yaw00_lev1_p47_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p47(const double* const d) // d has 160 elements -{ - const double intercept = -0.118965; - const double coef[160] = - { - -0.0440492, -0.0836416, -0.141257, -0.0910721, -0.110534, -0.00214304, -0.0472487, 0.00261588, - -0.0335697, 0.0914798, 0.0305937, 0.00916225, -0.0435401, 0.0723333, -0.040065, -0.0185088, - 0.0401661, -0.0159768, 0.0349517, 0.0174412, 0.00390451, -0.0429541, 0.0773829, -0.038843, - 0.0832298, 0.0353028, 0.0146736, 0.0350658, 0.0369444, -0.00336594, -0.0110071, -0.00688144, - 0.0573221, -0.0910749, -0.0130102, 0.0147298, -0.00252087, -0.0223729, 0.0463613, 0.0419724, - 0.0217844, 0.0157986, 0.163274, 0.102168, 0.131031, 0.106365, -0.00268922, -0.0544499, - -0.0149947, 0.135501, 0.0304682, 0.0334622, 0.0114081, -0.039136, 0.0350434, 0.0430796, - -0.0425841, -0.110417, -0.0606183, 0.0744933, 0.134342, 0.0286298, 0.0279522, 0.0449863, - 0.0347973, -0.0419459, 0.0857313, -0.0128635, 0.0381703, -0.00587311, -0.0681089, -0.0187003, - -0.00328471, 0.0941593, -0.0736437, -0.128757, -0.04768, 0.0727935, 0.0273488, -0.0977504, - -0.023949, -0.0421614, -0.0286373, -0.0653269, -0.0963842, -0.0483031, 0.0505979, 0.0368761, - -0.0125742, -0.0706676, -0.0430058, -0.0963538, -0.0924971, -0.0266817, -0.0941927, -0.0325834, - 0.00716453, 0.0209282, 0.00390391, 0.0369161, -0.0915738, 0.00390245, 0.0418545, -0.0403939, - 0.00975892, -0.0248716, -0.0255247, 0.0214165, -0.0274118, -0.0254147, 0.0207873, 0.00385507, - -0.0257841, 0.0125612, 0.034636, 0.0482864, 0.0363408, -0.0167484, 0.0397208, 0.11034, - 0.0580511, 0.0643112, 0.00275626, 0.0200438, 0.0397158, -0.00459059, -0.0624459, -0.0130516, - 0.0194177, 0.0302497, 0.0528601, 0.0954436, 0.0441685, -0.000957178, 0.0123102, -0.0159973, - 0.0208708, 0.00253739, 0.00969131, 0.00487447, 0.0228892, -0.00806758, -0.0474296, 0.0435123, - 0.0126327, -0.0250043, -0.0049342, -0.0446558, 0.00411561, 0.0215649, 0.01054, -0.0185998, - 0.000267183, -0.0528733, 0.0212056, -0.0966146, 0.00481207, -0.00617578, 0.0559641, -0.0571265 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p47(hatfit_yaw00_lev1_p47); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p47_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p48.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p48.mh deleted file mode 100755 index 14ed789..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p48.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p48.mh: - -#ifndef stasm_hat_yaw00_lev1_p48_mh -#define stasm_hat_yaw00_lev1_p48_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p48(const double* const d) // d has 160 elements -{ - const double intercept = -0.348712; - const double coef[160] = - { - -0.0199642, -0.016524, 0.0185488, 0.0753993, 0.0220202, 0.0315148, -0.0563141, -0.00505819, - 0.00273267, -0.0239206, -0.0834737, -0.0285988, 0.0565259, -0.00569715, 0.0483493, -0.0712883, - -0.0712879, -0.00462779, 0.0462177, 0.0520587, -0.020654, -0.0252241, 0.0488485, 0.0282503, - 0.00559442, 0.0144023, -0.0132484, 0.0254584, 0.0395418, 0.0306705, -0.0352704, -0.0166598, - -0.00170908, -0.0370785, -0.0203859, 0.0144599, -0.0146208, -0.01403, -0.00723498, -0.00876678, - 0.0327493, -0.0113121, 0.0448436, -0.0526941, 0.0259987, 0.0262766, -0.0312069, -0.000567117, - 0.013922, 0.0441781, 0.0086888, 0.0547899, 0.0423473, 0.00918695, -0.0101297, -0.0328613, - 0.0691136, 0.00758904, 0.0224273, -0.0291462, -0.0939671, 0.0324741, 0.0354135, -0.0303462, - 0.0356238, -0.0387213, -0.0665426, -0.0383849, -0.0274669, -0.0220878, 0.0289407, -0.00507145, - 0.111319, 0.0215501, 0.0416781, -0.0171691, 0.00257299, -0.0688882, 0.0220108, -0.0918581, - 0.0105098, 0.0140829, 0.0724206, 0.0268746, -0.0194448, -0.029022, -0.0317727, -0.0115339, - 0.00787806, 0.00153147, -0.133061, -0.0171583, 0.060793, -0.0497396, 0.0178434, 0.0115849, - 0.0521507, 0.0308188, 0.0278041, 0.087127, 0.0105865, -0.00899581, -0.00784267, 0.0185296, - 0.0018345, -0.0473944, -0.0727011, -0.06032, 0.0167443, 0.0669789, 0.0532385, 0.0856828, - -0.0457355, 0.0439268, 0.0353426, 0.0279889, -0.0711119, 0.00938103, -0.0660489, -0.00674734, - 0.0124368, -0.0648288, 0.0244971, 0.00933523, -0.0561851, 0.0146086, 0.00783616, 0.0405319, - 0.0264534, -0.0114669, 0.042876, 0.0869413, 0.030355, 0.0372803, -0.0117394, -0.0308215, - -0.0666074, -0.000140927, -0.050663, -0.0559189, -0.0074306, 0.00361242, 0.0232975, 0.0355665, - -0.0388373, 0.0357383, 0.115658, 0.0711105, -0.0131747, -0.0143666, -0.0302213, -0.080427, - 0.0653268, 0.0254734, 0.0134195, 0.121503, 0.142421, 0.0482576, 0.0452815, 0.0540552 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p48(hatfit_yaw00_lev1_p48); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p48_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p49.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p49.mh deleted file mode 100755 index 7a851cc..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p49.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p49.mh: - -#ifndef stasm_hat_yaw00_lev1_p49_mh -#define stasm_hat_yaw00_lev1_p49_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p49(const double* const d) // d has 160 elements -{ - const double intercept = 0.337902; - const double coef[160] = - { - 0.0114154, -0.0726488, -0.0778797, -0.0423141, -0.101282, -0.0447445, 0.0436873, -0.0644333, - 0.0624447, 0.0491255, -0.0232039, -0.0278307, 0.0139972, -0.0112907, -0.0322537, 0.0502897, - -0.098117, 0.0451549, 0.103961, 0.087829, -0.0385551, -0.0336443, -0.0132464, -0.0463502, - 0.0256201, -0.0661301, -0.0965179, 0.00416883, 0.12706, 0.0554865, -0.0172941, -0.0300243, - -0.101453, -0.0254417, -0.0144953, -0.011406, -0.065835, -0.0178107, 0.0889139, -0.0244951, - -0.0274361, -0.0272035, -0.0302713, 0.02199, 0.0393062, 0.0542217, 0.0382146, 0.00430417, - -0.0252084, 0.0177507, 0.0837669, -0.020463, 0.023539, -0.0222531, -0.033568, 0.0405018, - 0.0366544, 0.0219979, 0.0433826, 0.0337518, -0.0382937, 0.026798, 0.0155538, 0.022436, - 0.022377, -0.0522834, 0.00202955, -0.0484192, 0.0382646, 0.00632605, -0.0541592, -0.0216834, - 0.0718766, 0.0921278, 7.72105e-05, -0.0248985, -0.121145, 0.0050598, 0.0584069, 0.0625849, - 0.0341806, 0.0432261, -0.0717361, 0.019553, -0.00874797, -0.0566127, -0.035232, -0.0217414, - 0.0112061, -0.0173741, -0.0251796, -0.061976, 0.00953155, 0.0346141, -0.0552639, -0.0386179, - -0.049074, 0.0114269, 0.0481586, 0.0266696, -0.0454927, -0.0340543, -0.0192265, -0.0198516, - 0.0283237, -0.00680941, -0.00792814, -0.00371509, 0.0451747, -0.00511052, -0.038361, 0.042594, - -0.0624682, -0.0839768, -0.125767, 0.0346305, 0.0854665, -0.0188636, 0.012889, -0.0784834, - 0.0532098, 0.00439309, -0.00386652, -0.0325034, -0.00939869, 0.00199078, -0.00463391, 0.00874155, - -0.0679019, 0.0341406, 0.107982, 0.0298168, 0.0419922, 0.00153954, 0.036435, -0.011819, - 0.0351083, -0.0217196, -0.0573149, -0.0786371, -0.0240665, 0.0144203, -0.0828524, 0.0440092, - 0.0234886, -0.003938, 0.048797, 0.0791573, -0.0599733, -0.0299365, 0.0744551, 0.0195751, - -0.0408867, 0.0259072, 0.00605974, -0.0173957, 0.0276731, 0.016588, -0.0502496, 0.0181499 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p49(hatfit_yaw00_lev1_p49); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p49_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p50.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p50.mh deleted file mode 100755 index e440e3c..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p50.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p50.mh: - -#ifndef stasm_hat_yaw00_lev1_p50_mh -#define stasm_hat_yaw00_lev1_p50_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p50(const double* const d) // d has 160 elements -{ - const double intercept = -0.354588; - const double coef[160] = - { - -0.0230603, -0.00406651, -0.00636519, -0.0227412, 0.00548503, -0.0184082, -0.0141572, 0.0294223, - -0.00797574, 0.0429883, 0.00673783, 0.00372198, -0.0629349, -0.00877111, -0.0495952, -0.0169266, - -0.0011404, 0.0479142, 0.0259209, -0.0259865, -0.0192255, 0.0396561, 0.0876463, 0.0230926, - 0.166111, -0.0461354, -0.0703753, -0.0448939, -0.0629481, -0.0580323, -0.0453387, -0.0270917, - -0.0884495, 0.140163, 0.0784775, 0.0228562, 0.024435, -0.0254433, 0.00177285, 0.0505875, - 0.0343714, -0.0174439, -0.0160221, -0.00753022, 0.117415, -0.0406816, 0.0532156, -0.0788673, - -0.108941, -0.0483069, -0.00519991, -0.0256438, 0.0142451, -0.040349, -0.0169156, -0.0526813, - 0.00228688, -0.0658973, -0.0337889, -0.0172707, 0.0379358, 0.0414351, 0.0617095, 0.0538789, - -0.0267418, 0.0563266, 0.0380729, 0.0618607, 0.0620722, -0.0352426, -0.0599867, 0.0257612, - 0.0177003, -0.0275431, 0.0416884, -0.00144024, 0.059808, 0.0194098, 0.026223, 0.0179042, - -0.0544042, 0.0229145, 0.0554572, 0.0782817, 0.00250939, -0.0428284, 0.0150715, -0.0411066, - 0.105643, -0.0499674, -0.073674, -0.0294076, -0.0109432, 0.120955, 0.0618048, 0.104465, - 0.00742026, 0.104745, -0.0396997, 0.0703248, 0.0415391, -0.0242536, 0.00578664, -0.0406675, - 0.0587635, -0.021202, -0.0501602, -0.0246371, -0.0119139, -0.00216564, -0.0159471, -0.0599296, - -0.0168455, 0.0184902, 0.0463801, 0.023843, -0.0373052, -0.0362718, -0.033582, -0.00780508, - 0.112369, 0.133683, 0.0611724, -0.058416, 0.00130038, 0.0465242, -0.011343, 0.0759481, - -0.0879834, 0.0318877, 0.0545767, 0.0623571, -0.00027041, -0.0773191, -0.00461445, -0.0368097, - 0.0221211, -0.0317399, -0.0332144, -0.0194702, -0.0366173, 0.0686429, 0.000139026, 0.0184993, - 0.00466772, 0.0430889, 0.0650156, 0.00889211, 0.0384161, -0.0229575, 0.0181281, 0.0296131, - -0.0204703, -0.0082565, -0.00745633, -0.0388592, -0.0328784, 0.0540064, -0.0102891, -0.0235745 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p50(hatfit_yaw00_lev1_p50); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p50_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p51.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p51.mh deleted file mode 100755 index 9683559..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p51.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p51.mh: - -#ifndef stasm_hat_yaw00_lev1_p51_mh -#define stasm_hat_yaw00_lev1_p51_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p51(const double* const d) // d has 160 elements -{ - const double intercept = 0.0230474; - const double coef[160] = - { - 0.0663473, 0.000903765, -0.0568126, -0.0645652, -0.0530415, -0.0268245, -0.0218149, 0.0366416, - -0.014686, 0.000853658, 0.0810107, -0.00321661, -0.066158, -0.0160669, 0.00472433, -0.0332292, - 0.0330697, -0.00830061, -0.038049, 0.0414012, -0.025938, -0.0337634, -0.0624311, -0.0666223, - 0.0190076, 3.00099e-05, -0.0131323, -0.000139539, -0.0129442, -0.00751247, -0.00130726, -0.0481927, - -0.0262949, -0.0109233, 0.0115115, -0.00923386, 0.023316, 0.0373891, 0.0673234, 0.00609755, - -0.0574537, 0.0107934, -0.00300931, 0.00542485, 0.079916, 0.0676615, -0.0268088, 0.11462, - -0.0158615, -0.00119364, -0.0246292, 0.028597, 0.0300322, 0.00761411, 0.061184, -0.145516, - -0.00567826, 0.050977, 0.0545752, 0.0137527, -0.00676976, 0.0184424, 0.196666, 0.144337, - 0.0411955, 0.00197774, 0.0394365, -0.00925136, 0.0421624, -0.105268, -0.0782102, 0.115249, - 0.00126801, -0.0217805, -0.074432, -0.0324334, -0.0274283, -0.0287226, -0.0339885, -0.010246, - 0.0325106, -0.00227297, -0.0941444, -0.00635483, -0.0408689, -0.0332418, 0.0612756, -0.0524843, - 0.0355948, -0.0014673, 0.0306843, 0.0577673, 0.0199915, -0.0467922, -0.0840219, 0.0587219, - -0.0329374, -0.0208942, 0.0176221, -0.0472118, 0.0111347, 0.0012257, -0.0930815, -0.0833302, - -0.00729518, 0.0645366, -0.0184519, 0.0540724, 0.0145464, 0.0883286, -0.00444572, -0.0526893, - -0.000339233, -0.0349865, 0.0208982, 0.0190641, -0.0156414, 0.031688, 0.0360566, 0.0317097, - -0.0217811, -0.0349732, -0.00390683, 0.0259709, 0.00449953, 0.0655442, 0.00876421, 0.0173605, - -0.035843, -0.0170143, 0.0354342, -0.0122638, -0.00324034, 0.0223394, -0.00597277, -0.0410188, - 0.00998847, 0.0325441, -0.0168173, 0.0160914, -0.011555, 0.00730345, 0.0483929, 0.0374363, - 0.0135017, -0.0115598, -0.0202782, -0.0114978, -0.0321284, -0.0731003, -0.0334655, -0.00437303, - 0.0197171, -0.0246698, 0.0248675, -0.0169994, -0.000349178, -0.000402507, 0.0187988, 0.000184288 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p51(hatfit_yaw00_lev1_p51); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p51_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p52.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p52.mh deleted file mode 100755 index b193f51..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p52.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p52.mh: - -#ifndef stasm_hat_yaw00_lev1_p52_mh -#define stasm_hat_yaw00_lev1_p52_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p52(const double* const d) // d has 160 elements -{ - const double intercept = 0.260475; - const double coef[160] = - { - -0.0122162, 0.0115179, -0.0394977, -0.0273243, 0.0081333, -0.0292732, -0.0272394, -0.0629533, - -0.0160925, -0.0153455, 0.0233635, 0.00893212, 0.0156689, -0.00794567, -0.0215812, 0.0127846, - 0.00154317, -0.0295031, -0.0112134, -0.0471515, -0.0387776, 0.00687466, -0.0651829, -0.00330553, - -0.00238385, 0.0168992, -0.0253943, 0.0126812, -0.00885185, -0.0310302, 0.0462275, -0.0090145, - 0.0199466, -0.00959636, 0.0223492, -0.043071, 0.00604921, -0.0458674, -0.0598643, -0.0317473, - 0.041322, 0.0243245, -0.0333469, 0.00167273, -0.0231955, 0.0280683, -0.0408995, 0.0521944, - 0.0471815, 0.0195343, 0.0768077, 0.0138787, 0.0532719, 0.0308796, 0.0358051, -0.040371, - -0.0161893, -0.000882692, 0.00726768, -0.00207923, -0.0419194, 0.0167848, 0.0744163, 0.0413397, - 0.00373214, 0.0212196, 0.0661876, 0.106068, 0.0905908, 0.0277513, -0.0535409, 0.0355472, - 0.00544559, -0.0416627, -0.0741092, 0.0324289, -0.0080518, 0.0432406, 0.015265, -0.0241128, - -0.0894882, -0.0119182, 0.0450217, 0.0378082, 0.0401644, -0.0560642, -0.0292303, 0.093536, - -0.0402295, -0.0737898, -0.0504552, -0.0355426, -0.0623674, 0.0272413, -0.0698962, 0.0609242, - -0.0243137, -0.0250455, -0.0456399, -0.00184349, 0.010865, -0.0160513, 0.0462055, -0.00131114, - 0.00717732, -0.0360419, 0.00377416, -0.100877, -0.150282, 0.102032, -0.119642, -0.0398214, - -0.0127371, 0.0342076, 0.0148993, -0.0137932, -0.0433186, 0.00366693, 0.0356687, 0.0112555, - 0.0687725, 0.0916713, 0.00660631, 0.0305018, 0.0272057, -0.0504018, 0.0325087, -0.0239357, - 0.0155957, -0.0185372, 0.00141619, -0.0305813, 0.0167892, 0.0193565, -0.00279585, 0.0248534, - -0.0360369, -0.0333261, 0.0219202, -0.00153852, -0.0756654, -0.0493757, -0.00439795, -0.0429899, - -0.00114111, 0.0156505, -0.0395002, -0.00583805, 0.0881942, 0.0363239, 0.0082846, 0.0303329, - 0.0175637, 0.0392368, -0.00202269, 0.0581765, 0.030248, -0.0268457, 0.0116774, -0.0235466 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p52(hatfit_yaw00_lev1_p52); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p52_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p53.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p53.mh deleted file mode 100755 index 1b223f5..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p53.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p53.mh: - -#ifndef stasm_hat_yaw00_lev1_p53_mh -#define stasm_hat_yaw00_lev1_p53_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p53(const double* const d) // d has 160 elements -{ - const double intercept = 0.00632593; - const double coef[160] = - { - 0.0162556, -0.016435, 0.0339606, 0.0190099, -0.00390404, 0.0151999, 0.0530393, 0.052145, - -0.00404482, -0.0094945, -0.0652414, -0.00307563, 0.0279835, -0.0286695, -0.00707483, -0.0602497, - -0.0578366, 0.00570518, 0.00521795, -0.0343149, 0.0021638, -0.0576883, -0.0745119, 0.019378, - -0.0841465, -0.0374895, 0.101069, 0.0372186, -0.00409056, 0.00763705, -0.0176534, -0.0721434, - -0.00235338, -0.0460276, -0.105931, -0.00206172, 0.126004, 0.0340346, 0.00308281, 0.0239345, - 0.00935259, -0.026381, -0.0517119, -0.0346371, 0.0437243, 0.0277076, -0.0788865, -0.0669713, - -0.0392242, 0.00309652, 0.0151427, 0.0303108, -0.0255152, 0.144139, -0.0251527, -0.0566317, - 0.00885491, 0.0283135, 0.037537, 0.0185783, -0.0110133, 0.00417545, 0.230708, 0.0531011, - 0.0907433, 0.0775194, -0.0214501, 0.011126, 0.0125839, -0.0929108, 0.00861834, 0.0431739, - 0.0294098, -0.00786103, 0.0294776, -0.0266784, -0.0651989, 0.0573041, -0.0222599, 0.0342067, - -0.00935431, 0.0617671, 0.0254821, -0.0025932, -0.0126894, 0.0202708, 0.0160974, 0.065353, - 0.0739513, -0.0176589, -0.0373128, 0.0569696, -0.0255352, -0.056134, -0.00311956, 0.0397551, - -0.00707641, 0.00840045, 0.0395881, -0.0274419, -0.000901333, 0.0115174, -0.11227, -0.0630251, - -0.0277898, 0.0103932, -0.0382606, 0.00752723, 0.0198304, 0.0285424, -0.0162424, -0.0462255, - -0.0205232, -0.00646888, -0.0418055, 0.0165335, 0.0309852, -0.0296247, 0.0262914, -0.0154413, - 0.00808804, -0.0302165, 0.0269277, -0.0276307, 0.00803103, 0.00727718, 0.00967092, -0.0103951, - -0.0485179, -0.0149506, -0.0186684, 0.0197415, 0.00151862, -0.0135448, -0.0159554, -0.0411914, - 0.0203195, 0.00491663, 0.00384737, -0.00418953, -0.000701313, -0.00528702, 0.030757, 0.0292946, - -0.0010533, -0.0195983, 0.0331644, -0.0196452, -0.0326561, -0.0333651, -0.00118972, 0.0528589, - 0.00832532, 0.00903297, -0.0053677, -0.0299995, 0.0035794, 0.0148879, 0.0135945, 0.0180385 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p53(hatfit_yaw00_lev1_p53); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p53_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p54.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p54.mh deleted file mode 100755 index 7268853..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p54.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p54.mh: - -#ifndef stasm_hat_yaw00_lev1_p54_mh -#define stasm_hat_yaw00_lev1_p54_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p54(const double* const d) // d has 160 elements -{ - const double intercept = -0.327895; - const double coef[160] = - { - -0.0260285, -0.0305355, -0.0270729, 0.0336952, 0.0120556, -0.0589881, 0.0423471, -0.0165861, - 0.0533515, 0.0665271, -0.00661282, -0.011853, -0.0202604, 0.0660017, 0.0285465, 0.00870395, - 0.011837, -0.00816245, 0.0137459, -0.0274992, -0.040575, -0.0637543, -0.0130194, 0.0133845, - 0.0178475, 0.0405467, 0.0289009, 0.0209144, 0.0200407, 0.0257918, 0.0374848, 0.0275908, - 0.0136018, -0.0102763, 0.00641704, -0.00874899, 0.00182998, -0.0147132, 0.009265, -0.0220378, - -0.00638297, -0.0385975, 0.0624042, 0.0211003, -0.0707084, -0.0690531, -0.0210087, -0.0194916, - -0.0478112, -0.0269841, -0.0424758, 0.0264064, 0.142619, -0.00246511, 0.0361538, -0.0312128, - 0.0834964, -0.0165381, -0.0157382, -0.0939294, 0.0240593, 0.0854562, 0.0349298, 0.14353, - -0.0906933, -0.0340672, 0.0548739, 0.0571566, -0.0687595, -0.0800209, -0.0813809, -0.0359659, - -0.00366757, -0.0117603, -0.0208327, -0.0119305, 0.0182508, -0.00730518, 0.00837606, 0.0256656, - 0.0411851, 0.0630306, 0.0979421, 0.0441905, -0.00305332, 0.00201647, -0.0361447, -0.0198163, - 0.00723425, -0.0100551, -0.110571, -0.0993676, -0.00957446, 0.0802569, 0.128686, 0.0888631, - 0.0427143, 0.0464205, 0.0483508, 0.0942419, 0.0700467, -0.018517, -0.103884, -0.116386, - -0.0176959, 0.0100904, -0.0232444, -0.0174606, 0.00793912, -0.00859066, 0.0853811, 0.00499183, - 0.0240163, 0.00380892, 0.00422997, -0.0257352, 0.0227225, 0.00677831, -0.0593922, 0.0328476, - 0.00827972, 0.0692015, 0.0431744, 0.0373662, -0.0140093, 0.0106239, 0.0258463, 0.0208192, - -0.0546277, 0.0957585, -0.0963772, -0.027162, 0.00231769, 0.0486463, 0.0512952, 0.00430508, - -0.0114316, 0.00979404, 0.0511977, -0.0338667, 0.00809882, -0.0153916, -0.0599761, 0.0148887, - 0.00670799, -0.0197052, -0.0426134, 0.0297467, -0.0830705, -0.0143339, -0.0152399, -0.00805109, - 0.00354804, 0.0101011, 0.0160634, 0.0429957, -0.0188213, 0.0160184, -0.0033741, 0.046853 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p54(hatfit_yaw00_lev1_p54); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p54_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p55.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p55.mh deleted file mode 100755 index 1602318..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p55.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p55.mh: - -#ifndef stasm_hat_yaw00_lev1_p55_mh -#define stasm_hat_yaw00_lev1_p55_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p55(const double* const d) // d has 160 elements -{ - const double intercept = -0.141314; - const double coef[160] = - { - -0.0184455, -0.0496397, -0.0592839, -0.00129605, 0.0152698, 0.00895235, 0.0198226, -0.0277392, - 0.00174921, 0.0466079, 0.136804, -0.0408086, -0.0219539, -0.0515463, 0.0376534, 0.0197422, - 0.0264812, -0.0747326, -0.0189345, -0.0108892, 0.12583, -0.050607, 0.0287181, 0.0893428, - 0.0338705, -0.0305728, -0.0605811, -0.123117, 0.0530918, 0.0561058, -0.0661859, 0.0142702, - 0.0222033, 0.00274117, 0.0488894, 0.00854528, -0.0357957, -0.0137169, -0.0860731, 0.0804902, - 0.0155904, -0.0489535, 0.110207, 0.0279448, 0.0146425, 0.0608853, -0.0478279, -0.0360042, - -0.0253087, 0.0520949, 0.00854192, 0.0698672, 0.0728003, 0.0192769, 0.0532905, -0.0539675, - 0.0194983, 0.0686626, -0.14808, -0.00330555, -0.0603803, 0.161152, 0.125227, 0.0176252, - -0.0489934, 0.129008, 0.0143522, 0.0924871, -0.0940712, 0.0170069, -0.0504719, -0.0804901, - -0.0535133, 0.0471255, 0.0155013, 0.041728, 0.0464161, -0.0309468, 0.022264, -0.0485352, - -0.0161353, 0.00673767, -0.069235, -0.0269012, -0.0468631, -0.0286551, 0.0185527, 0.00926746, - 0.0816668, 0.0315413, -0.0115304, 0.00704217, -0.081754, -0.0394356, -0.0400905, 0.0372851, - -0.0783434, -0.00330682, 0.0511188, -0.0193499, 0.0811155, -0.090431, -0.0156567, 0.0132851, - -0.0127041, -0.119106, 0.0548832, -0.0584279, 0.0635739, -0.0258336, 0.0090243, -0.00490429, - 0.0567433, -0.0508576, -0.0229306, 0.00359339, -0.0406265, -0.0266562, 0.00501218, 0.0391647, - -0.0125267, -0.00340731, 0.0125769, 0.0486265, 0.0777279, 0.00933577, -0.00487516, -0.0130414, - -0.0285719, -0.0331306, 0.00711141, -0.0199061, 0.0080499, 0.0135002, 0.0017077, -0.0214639, - 0.0445958, -0.0085222, 0.006994, 0.00919682, -0.0502234, 0.0181756, -0.0122827, 0.0353963, - -0.00204672, 0.0618339, -0.0356547, -0.000447894, -0.0157183, 0.00273223, -0.000334279, -0.0068244, - -6.21048e-05, -0.0152627, 0.000293438, 0.0261028, 0.0310108, 0.0125394, 0.0326627, 0.00563211 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p55(hatfit_yaw00_lev1_p55); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p55_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p56.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p56.mh deleted file mode 100755 index 47fdda9..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p56.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p56.mh: - -#ifndef stasm_hat_yaw00_lev1_p56_mh -#define stasm_hat_yaw00_lev1_p56_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p56(const double* const d) // d has 160 elements -{ - const double intercept = 0.017971; - const double coef[160] = - { - 0.00383981, 0.132936, 0.051431, 0.0241506, 0.0525363, -0.0220713, 0.0264425, 0.162811, - 0.010563, -0.024777, -0.0376598, -0.00827839, 0.00969403, 0.00935741, -0.0604863, 0.0154237, - -0.0274918, -0.0916428, -0.0771056, -0.0789401, -0.0175398, -0.0618622, 0.0553185, 0.000933057, - 0.016674, 0.0419166, -0.0552628, -0.010995, -0.000659341, 0.111832, -0.113944, -0.0251928, - 0.0213259, 0.0239533, 0.0910532, 0.124619, 0.00420422, 0.0613157, 0.0784614, 0.0147032, - -0.0502116, -0.00272015, -0.0218368, 0.0310639, -0.0254734, 0.0358821, -0.0424754, -0.0367543, - 0.034152, -0.0402477, 0.00443733, 0.0517393, -0.0272244, -0.0217685, 0.0550534, 0.0378432, - -0.0246521, 0.0384891, 0.112565, 0.0140988, 0.0115197, -0.0149323, -0.0195592, -0.0719281, - -0.0191504, 0.0050603, -0.00609517, 0.00456367, -0.0230841, 0.0247522, 0.0545905, -0.000413494, - 0.0194383, 0.0112078, -0.0309524, -0.0159333, -0.0384538, -0.0252684, -0.0531839, -0.0135636, - 0.0280733, -0.0273113, -0.0108497, -0.0499342, -0.0281279, -0.0259257, -0.0200306, -0.0279048, - 0.00745871, -0.00630893, -0.0226936, -0.0506898, 0.0313296, -0.00117594, -0.00321243, 0.00721248, - 0.0305157, 0.00244387, 0.0234044, 0.0174985, -0.0430736, -0.0159342, -0.033331, -0.0123217, - 0.0225584, -0.0402171, -0.028357, -0.0100419, 0.0292749, 0.00170746, 0.00587944, 0.0203983, - -0.0195129, -0.0348478, -0.00877047, -0.0150409, -0.0216345, -0.0229652, -0.0295588, 0.0128356, - 0.0211214, 0.0382187, -0.0154869, 0.0121175, -0.00290521, 0.00593086, 0.0205967, 0.0272012, - -0.0202218, -0.035515, 0.0315396, 0.0916433, 0.0619819, 0.00402121, -0.00515144, 0.0165358, - -0.0207477, 0.00806855, 0.00542765, -0.0761913, -0.0252847, 0.0203587, -0.0169178, 0.00516717, - 0.0370735, 0.0901672, -0.00499778, 0.0357751, 0.00468033, 0.0309109, -0.0129976, -0.0110622, - -0.0403696, -0.0231525, 0.0128741, 0.0240667, 0.0221441, 0.0157496, 0.0360906, -0.0192411 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p56(hatfit_yaw00_lev1_p56); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p56_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p57.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p57.mh deleted file mode 100755 index b23935f..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p57.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p57.mh: - -#ifndef stasm_hat_yaw00_lev1_p57_mh -#define stasm_hat_yaw00_lev1_p57_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p57(const double* const d) // d has 160 elements -{ - const double intercept = -0.167239; - const double coef[160] = - { - 0.0260893, -0.0208531, 0.0851417, 0.0640984, 0.0395397, 0.0832486, -0.106037, -0.00565412, - 0.135724, -0.112393, -0.0760649, -0.0727544, 0.0301193, 0.0232471, -0.0351258, 0.0368426, - 0.0011005, -0.0139854, -0.0151755, -0.0914272, -0.00952267, 0.0704949, 0.0125235, -0.0656696, - 0.0163932, -0.0335675, 0.111352, 0.0753735, -0.00554281, -0.0227295, 0.0323614, -0.017804, - 0.0300734, 0.0112641, -0.0658481, -0.0309896, -0.0172728, -0.0217191, 0.0190975, 0.0200581, - -0.0304982, 0.111991, -0.030698, 0.014727, -0.0765688, -0.112386, -0.0101198, -0.0275647, - -0.0291291, 0.0641304, 0.0141026, 0.131626, 0.0186017, -0.0385728, 0.0421381, 0.0855096, - 0.0213613, 0.0420065, -0.102038, 0.0681566, 0.0273364, 0.00325661, 0.109219, 0.137224, - 0.0491412, 0.088167, 0.0714511, -0.0240283, -0.0108067, -0.02918, -0.00819857, 0.00807906, - -0.000642976, 0.0220372, 0.0679965, -0.0029879, -0.00222426, 0.00558169, -0.0326685, 0.0492872, - -0.0260234, -0.0484975, -0.0112216, -0.0918971, 0.020581, 0.0441363, -0.0100994, -0.0226429, - 0.0423898, -0.0759438, 0.0145201, -0.0784476, -0.110442, -0.0174169, 0.0110941, -0.0645113, - -0.0452308, -0.038347, 0.0775638, 0.0521202, 0.0446646, 0.0411368, -0.0421825, -0.0853063, - -0.0442879, -0.0157349, -0.0467638, -0.0149989, 0.0432842, 0.0192302, -0.0305666, -0.0181959, - -0.0200714, -0.035937, -0.0330333, 0.00311701, -0.0224627, -0.026858, 0.0243919, -0.00885834, - 0.0217909, 0.0593707, -0.0167115, 0.0215884, 0.0155522, -0.0263219, 0.0362682, -0.0223162, - -0.0338701, 0.0206674, -0.0189506, 0.0452908, 0.0427534, 0.0569601, -0.00517576, 0.0232792, - -0.0144103, 0.0177986, -0.00841608, -0.0333067, -0.0267299, -0.00136334, -0.00993319, 0.0110416, - 0.0370933, 0.0113945, -0.020208, -0.0220435, -0.0428138, -0.0156631, 0.0366901, 0.00527689, - 0.0700923, 0.0280007, 0.0391572, 0.0324461, 0.0177147, -0.00531412, -0.0189824, -0.0167404 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p57(hatfit_yaw00_lev1_p57); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p57_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p58.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p58.mh deleted file mode 100755 index 18448a5..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p58.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p58.mh: - -#ifndef stasm_hat_yaw00_lev1_p58_mh -#define stasm_hat_yaw00_lev1_p58_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p58(const double* const d) // d has 160 elements -{ - const double intercept = -0.387439; - const double coef[160] = - { - 0.0251959, -0.031358, 0.0248397, -0.0131824, 0.013193, 0.00977301, 0.0348601, -0.0349634, - -0.0411533, 0.0159114, 0.0200665, 0.0543823, -0.00285392, -0.0164136, -0.0131662, -0.0514869, - -0.0336987, -0.0299794, -0.0270398, 0.0109185, 0.0625347, 0.0464263, 0.0578354, 0.00233093, - -0.010815, 0.0476417, 0.0163326, 0.0303621, 0.01894, -0.00207762, 0.0393991, 0.0221854, - 0.0233303, 0.0113982, -0.0423612, -0.00875855, -0.0287951, -0.0320702, 0.0137407, -0.0522144, - 0.0268739, 0.0237628, -0.0114081, -0.0225842, -0.0248982, 0.0488374, -0.0460236, -0.00664693, - -0.145548, -0.00911589, 0.0412094, -0.0239402, -0.0495942, -0.0117525, -0.0624228, -0.0266718, - 0.16983, 0.00188042, -0.0316957, 0.0227592, 0.0206071, 0.0874189, 0.0592865, 0.0821602, - -0.0523558, -0.0319036, 0.00421973, -0.111092, -0.0440164, 0.0161895, -0.0261552, -0.00754087, - 0.0331884, 0.0112931, 0.0394848, 0.0335052, 0.000709858, -0.0220998, 0.010377, -0.065032, - -0.00952658, 0.00141604, 0.000973108, 0.00853263, 0.0150984, -0.0348417, -0.0396614, 0.0344867, - 0.0216721, 0.0202387, -0.0365127, -0.0293635, -0.00677211, 0.0411506, 0.0676114, 0.016138, - 0.127968, 0.025489, 0.0839619, 0.105465, 0.0564818, -0.10753, -0.0982015, -0.0440012, - -0.0646146, -0.0759671, -0.141105, -0.0364377, 0.00156565, 0.0914474, 0.140688, 0.105158, - 0.0291594, 0.0630341, 0.146519, 0.0441008, 0.0494588, -0.0256931, -0.0515613, 0.0123743, - -0.0393184, 0.0750014, -0.0384452, -0.0162481, 0.029397, 0.0409304, 0.0106834, -0.00793491, - -0.0516883, -0.041537, -0.00348172, 0.0114551, -0.0441435, 0.00598323, -0.0702927, -0.0302706, - 0.0455167, -0.0145394, -0.0133603, 0.0211058, -0.000153093, -0.0450269, 0.0275393, 0.00331146, - -0.0536648, -0.0167442, -0.0187828, 0.0685981, 0.0143649, 0.0544769, 0.00699127, 0.0343859, - -0.0182254, 0.0574156, 0.0272669, 0.0274204, 0.00861177, -0.0038009, 0.0266157, 0.038463 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p58(hatfit_yaw00_lev1_p58); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p58_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p59.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p59.mh deleted file mode 100755 index 0f1e06f..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p59.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p59.mh: - -#ifndef stasm_hat_yaw00_lev1_p59_mh -#define stasm_hat_yaw00_lev1_p59_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p59(const double* const d) // d has 160 elements -{ - const double intercept = -0.107774; - const double coef[160] = - { - 0.0426851, 0.0262278, -0.00991465, -0.000978476, 0.0458819, 0.0860606, 0.0126212, 0.0351958, - -0.0108269, 0.0156452, -0.00403915, -0.0589473, -0.0503682, -0.0320335, 0.00120433, -0.021901, - 0.0165196, 0.00485185, -0.0632538, -0.033039, -0.0857811, -0.0409284, -0.0988562, -0.0239078, - -0.0159283, 0.0137357, 0.0167643, 0.0372145, -0.0532216, -0.00210648, -0.0560769, -0.0308524, - -0.00231797, -0.00864326, -0.0076651, -0.0200123, -0.00891805, 0.0118245, -0.0131865, 0.00115877, - -0.0157525, 0.00356822, 0.0567132, 0.0403024, 0.0292255, -0.0482951, -0.0460269, -0.0327407, - -0.0675029, -0.0684373, -0.109158, 0.0287362, 0.0815637, 0.084078, -0.13562, -0.0559729, - -0.0141325, -0.00702409, 0.114953, 0.0541443, 0.100854, 0.170284, 0.183675, 0.146337, - -0.0231098, 0.0221174, 0.0281214, 0.0233031, -0.017274, -0.0041107, 0.0963267, 0.00364101, - 0.014492, 0.00786082, -0.00316655, 0.00596734, 0.0241714, -0.000496014, -0.00440175, -0.0178358, - 0.00585745, 0.0161528, -0.0458383, -0.00903678, -0.0375578, -0.0417482, -0.00357475, 0.0374616, - 0.0654028, 0.0913228, -0.0561372, -0.0271866, -0.0859397, -0.109589, -0.00593507, 0.052015, - 0.012834, 0.0383004, 0.0439461, 0.0182694, -0.0531884, -0.0306476, -0.0185561, 0.0390919, - 0.0141079, -0.0136812, 0.0498581, 0.0531345, -0.0225092, -0.044298, -0.0679187, -0.0250561, - 0.00712008, 0.00510321, -0.0365955, -0.0117867, -0.000928219, -0.019591, 0.00284898, -0.00144887, - 0.000711874, 0.000233623, -0.0184974, 0.00654051, 0.0396035, 0.0526651, 0.04285, 0.00770713, - -0.0319265, 0.0147321, 0.0456475, 0.00415368, 0.0131458, 0.0349704, -0.0124635, -0.0340754, - -0.0113526, -0.0312564, -0.022371, 0.0178618, 0.042623, 0.0281632, 0.0326478, -0.0512589, - -0.0159272, -0.0205289, -0.00583209, -0.00745363, 0.020593, -0.0142671, 0.0127739, -0.000311366, - 0.0624123, 0.00682976, 0.00476288, 0.00296209, -0.0286042, 0.00250046, -0.00978856, 0.0134617 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p59(hatfit_yaw00_lev1_p59); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p59_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p60.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p60.mh deleted file mode 100755 index f8adb0f..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p60.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p60.mh: - -#ifndef stasm_hat_yaw00_lev1_p60_mh -#define stasm_hat_yaw00_lev1_p60_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p60(const double* const d) // d has 160 elements -{ - const double intercept = -0.116653; - const double coef[160] = - { - -0.00800115, -0.019492, 0.00130996, 0.093303, 0.0040077, 0.00293987, 0.0207828, 0.0148185, - -0.00817948, -0.0597545, 0.0187817, -0.0230762, 0.0288565, 0.0880908, -0.0261195, -0.0208943, - -0.0786128, -0.110647, -0.000169552, 0.0230022, -0.0147655, 0.02944, -0.07112, 0.00319348, - 0.0383762, 0.00837539, -0.0543089, -0.138768, -0.0885013, 0.00156443, -0.0660238, -0.00148416, - 0.189822, 0.067456, 0.0813394, 0.0406543, 0.018721, 0.000646743, 0.0077848, -0.0197932, - -0.0269575, -0.017093, -0.00285546, -0.0457437, -0.00899611, -0.102345, -0.0712876, 0.0432109, - 0.0359983, 0.056176, -0.0205152, 0.0611076, -0.018347, -0.0684581, 0.0147728, -0.00519016, - 0.0229803, 0.0944576, -0.0201227, -0.0464451, -0.00871038, 0.0315791, 0.0922994, 0.0030201, - -0.0269314, 0.0528, 0.0333682, -0.00605027, -0.030852, 0.04281, 0.0665199, -0.0700912, - -0.101844, -0.0220294, -0.0188747, 0.0615306, 0.0196525, -0.0799243, 0.0370941, 0.0902844, - 0.0416295, 0.052584, 0.0186824, 0.0684195, -0.0496191, 0.0324619, 0.13132, 0.0186903, - 0.0444294, 0.0309525, 0.00405779, 0.00128988, -0.0657186, 0.112942, 0.0240502, -0.00600384, - -0.0561522, -0.0562045, -0.0645724, -0.0383953, -0.0717917, -0.0210858, -0.0221317, 0.0233049, - -0.00346189, -0.0171532, 0.0635409, 0.0106124, 0.0421655, -0.0798043, -0.0581925, -0.0148507, - -0.0014853, -0.0312885, 0.00728589, -0.0465815, 0.00556272, -0.0347748, 0.0110482, -0.0348356, - 0.0195249, -0.00102007, 0.0754928, 0.0908389, 0.0423783, 0.0519425, 0.0120671, -0.00592963, - -0.0746104, -0.0188304, -0.109229, -0.0357286, -0.0569914, -0.0486546, -0.019758, -0.0133699, - 0.0361224, 0.0025763, 0.0344059, 0.0643234, 0.04667, 0.0730196, -0.0286662, -0.0235946, - 0.0214739, 0.0315117, -0.034062, 0.017128, -0.000353135, 0.054981, -0.0163462, 0.0336397, - 0.063106, 0.0276215, 0.0973305, 0.0433355, -0.0436393, -0.0243513, 0.0297241, 0.013637 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p60(hatfit_yaw00_lev1_p60); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p60_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p61.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p61.mh deleted file mode 100755 index e64022a..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p61.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p61.mh: - -#ifndef stasm_hat_yaw00_lev1_p61_mh -#define stasm_hat_yaw00_lev1_p61_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p61(const double* const d) // d has 160 elements -{ - const double intercept = -0.355452; - const double coef[160] = - { - 0.00140287, -0.0316798, 0.0380944, 0.0396429, -0.00327414, 0.0534538, -0.0514958, 0.0113563, - 0.0628189, -0.0527768, -0.0827135, -0.00429168, -0.0555817, -0.0224312, -0.0407113, -0.00936148, - 0.117758, 0.0172411, -0.0474983, -0.0391484, -0.00839861, 0.0452208, -0.0689015, 0.0234783, - -0.0403392, 0.0229358, 0.0537275, 0.0364107, -0.0132679, 0.00101861, -0.0318202, 0.0280393, - -0.00788005, -0.0354963, 0.00622629, -0.0649081, 0.0307974, 0.0258964, -0.0857159, 0.0242797, - -0.040267, 0.0102513, -0.0156274, -0.102174, -0.0138545, -0.0322275, -0.0188658, -0.0404741, - 0.0330834, 0.0739416, 0.0376474, -0.0476424, 0.00287154, 0.00264503, 0.0639759, 0.0475915, - 0.0401054, -0.00781034, 0.0559358, 0.150539, 0.0994351, -0.0272158, 0.141554, 0.0275502, - 0.0128532, -0.0504704, 0.0469205, 0.0449008, 0.0408228, -0.0276349, -0.0209576, -0.0231619, - 0.072671, 0.12655, 0.0367423, -0.075046, -0.00881941, 0.0092089, 0.0531118, -0.0610395, - -0.0308093, 0.0767906, 0.0426318, 0.0265518, -0.0121348, 0.0626648, 0.1149, -0.0153465, - -0.0529852, -0.0242805, -0.0290872, -0.0384416, 0.0343093, -0.0252964, -0.0554503, -0.0615641, - -0.106664, -0.0378279, 0.00787081, 0.0156845, -0.0198557, -0.0269115, -0.0297493, 0.0352897, - -0.0297293, -0.0573563, -0.0150174, -0.00484731, -0.000683478, -0.0495411, 0.0360824, 0.16726, - -0.0293956, 0.00953138, 0.00360933, -0.0400254, -0.0715633, 0.142315, 0.0342854, -0.177897, - 0.0310687, -0.0126615, -0.0606509, 0.00786516, -0.0250216, 0.0461068, -0.041784, 0.0340997, - 0.0534171, 0.0510974, 0.0264472, 0.0273428, 0.00988166, -0.00606464, 0.0777458, 0.0387601, - 0.066705, 0.0378485, 0.0927968, 0.000296498, 0.00404288, -0.0435417, -0.0159648, -0.061769, - 0.00421003, -0.0703772, -0.062171, 0.017123, -0.0279047, 0.0872595, -0.00249575, 0.0153716, - -0.00386909, 0.0423806, 0.0198908, -0.00423521, 0.0487592, -0.0326987, -0.0145375, 0.0613222 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p61(hatfit_yaw00_lev1_p61); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p61_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p62.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p62.mh deleted file mode 100755 index 80d3416..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p62.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p62.mh: - -#ifndef stasm_hat_yaw00_lev1_p62_mh -#define stasm_hat_yaw00_lev1_p62_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p62(const double* const d) // d has 160 elements -{ - const double intercept = -0.401911; - const double coef[160] = - { - 0.184278, -0.00880947, -0.0685209, 0.00358168, -0.0459728, 0.0232556, -0.0864801, -0.00469044, - 0.0310894, 0.0243865, 0.0258792, 0.00859373, -0.00994606, 0.0328219, 0.00173091, 0.0121548, - -0.0353948, -0.036784, 0.0429776, -0.0300712, -0.0116732, -0.0122296, -0.108762, -0.0247855, - -0.0145263, 0.0219631, -0.00113074, 0.0309911, 0.107029, 0.0123373, 0.0532587, 0.069205, - -0.0494749, -0.0244451, -0.0697308, -0.0338787, 0.0873429, 0.0171967, -0.130104, 0.0204336, - -0.088184, 0.0317872, -0.00989599, -0.015471, 0.0552868, -0.0243923, 0.0858775, 0.0686318, - -0.0481306, -0.0770413, 0.0589144, 0.168037, 0.0945978, -0.0524547, 0.0839754, 0.124417, - 0.0480366, 0.0590726, 0.0667549, -0.0894952, -0.0230222, -0.0171754, -0.0533098, -0.0684075, - 0.0712733, 0.142855, -0.00189312, -0.00863717, -0.0647512, 0.101509, 0.0666608, -0.0918015, - -0.000196614, -0.0658736, 0.0204404, 0.0705559, -0.0270679, -0.0141069, 0.126831, -0.019163, - -0.0343151, 0.00672472, 0.03967, -0.0291874, 0.0336686, -0.0107086, -0.0043349, -0.0798378, - -0.0110414, -0.0650645, -0.0318544, -0.027198, -0.0480764, -0.0918649, -0.0143225, 0.107353, - -0.0130905, -0.00631972, -0.0110005, -0.0352918, 0.0152812, 0.102473, 0.0223577, -0.00408579, - -0.037512, -0.0288581, -0.0172214, -0.0453225, -0.0328941, -0.0150905, 0.0194013, -0.050533, - 0.0512633, 0.00142581, 0.0276191, 0.0555792, -0.0250743, -0.049271, -0.0158396, 0.00580838, - 0.0759738, 0.0489876, 0.00899392, -0.0250023, -0.0139366, -0.00691351, 0.069753, 0.02297, - -0.010819, -0.0195435, 0.0379298, 0.0638778, 0.00869268, 0.0244828, -0.0468469, -0.0425572, - 0.0265019, -0.00503489, -0.0229935, -0.0391067, 0.00398011, 0.0506024, 0.0196865, 0.0822405, - -0.0331631, 0.0331953, 0.0364992, 0.0264935, 0.0194893, -0.0485401, -0.0526263, -0.0288017, - -0.000343949, -0.00305366, 0.0195557, 0.00916105, 0.0849109, 0.0622262, 0.0617623, 0.0296367 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p62(hatfit_yaw00_lev1_p62); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p62_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p63.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p63.mh deleted file mode 100755 index ebdf6f0..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p63.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p63.mh: - -#ifndef stasm_hat_yaw00_lev1_p63_mh -#define stasm_hat_yaw00_lev1_p63_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p63(const double* const d) // d has 160 elements -{ - const double intercept = -0.327027; - const double coef[160] = - { - 0.00117412, -0.0265293, 0.0414526, -0.00446532, -0.000780244, 0.0309753, -0.126524, 0.0273416, - -0.0422317, -0.00609733, 0.00825351, 0.00790836, 0.0291014, 0.0441713, -0.0145854, 0.0137382, - -0.00831013, -0.0526895, -0.037661, -0.00968318, 0.116618, 0.0103253, -0.0595431, 0.0496003, - -0.0665721, 0.00702109, -0.109901, -0.0827082, -0.00936522, -0.00162648, -0.0562617, -0.0153416, - -0.0065123, 0.0472623, 0.0634004, -0.0196607, -0.019769, -0.00566076, -0.0607523, 0.0749408, - -0.00611749, -0.0276194, 0.114619, 0.084836, 0.00815514, -0.0555772, 0.0391078, 0.0414358, - 0.121184, 0.147412, -0.0318164, -0.145786, 0.00704808, -0.0110287, 0.0164001, -0.0621218, - 0.0149256, 0.0808699, 0.0804086, 0.106282, 0.0405482, 0.0330293, 0.12561, -0.0589569, - 0.0224142, -0.108786, -0.00491116, 0.0465216, 0.0453282, 0.0296043, 0.0982771, 0.0627282, - 0.0506193, -0.0174854, 0.0256419, -0.0266217, -0.0465652, -0.0619258, -0.0532835, -0.0785362, - -0.0161707, -0.0490527, 0.0143398, -0.0138499, 0.020052, -0.0703482, 0.0590368, 0.134647, - -0.049885, -0.00266826, -0.0244827, -0.111946, -0.0878235, 0.15595, -0.000659438, -0.154788, - 0.00297078, 0.0132703, 0.0115521, 0.0331993, -0.0966483, -0.0545614, -0.026128, 0.0150231, - -0.0128654, -0.0320918, -0.0591223, -0.0218507, -0.0361654, -0.0115635, -0.0273279, -0.0585035, - -0.0352849, 0.0301985, 0.0714253, 0.0790165, 0.0457336, 0.00843746, 0.113132, 0.10087, - 0.0580212, -0.0135828, 0.00489927, 0.0153762, -0.0217218, 0.0638703, 0.000115968, 0.0334685, - -0.0241135, 0.00384658, -0.0261348, -0.0454305, 0.0297893, -0.0343742, -0.036355, 0.0349305, - -0.0196957, 0.00692413, 0.075663, 0.0631312, 0.0852203, -0.0199816, 0.0110331, -0.0218748, - 0.0535471, 0.0363862, 0.0293074, -0.00509621, 0.0277587, 0.0447058, 0.0520932, 0.00976812, - -0.00756772, -0.0466398, -0.0370653, -0.0200316, 0.0236178, 0.0165199, -0.0315377, 0.0236377 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p63(hatfit_yaw00_lev1_p63); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p63_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p64.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p64.mh deleted file mode 100755 index 6b196a9..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p64.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p64.mh: - -#ifndef stasm_hat_yaw00_lev1_p64_mh -#define stasm_hat_yaw00_lev1_p64_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p64(const double* const d) // d has 160 elements -{ - const double intercept = -0.221659; - const double coef[160] = - { - 0.0364118, -0.0340164, 0.0407147, 0.113031, 0.190778, 0.0314938, 0.0342179, 0.015366, - -0.0132611, -0.0636244, -0.040571, -0.081486, -0.0900368, -0.0268184, -0.089493, -0.0174274, - 0.0183977, 0.0234542, 0.0288216, -0.0624968, -0.0524316, -0.0307032, -0.0639346, 0.0857077, - -0.0308074, 0.00837735, -0.00453838, -0.0611632, -0.0128637, 0.0077273, -0.0417138, 0.0219363, - 0.00718579, 0.0559161, 0.000579146, -0.0125301, 0.0297841, -0.0235627, 0.0463869, 0.0387731, - -0.0562936, -0.0190806, 0.0087306, 0.0261748, -0.0659872, 0.00151971, 0.0554092, -0.0774134, - -0.0402783, -0.0251337, 0.00201256, 0.053982, 0.0628297, -0.00454475, 0.0813841, 0.0984645, - 0.0291425, 0.0222582, 0.0444502, 0.0767124, 0.0390445, 0.051904, 0.0941079, -0.00941949, - 0.00284052, 0.0111219, -0.0460434, 0.0373575, -0.00560822, -0.0544922, 0.00609882, -0.141022, - -0.024522, -0.0432508, -0.0190956, -0.0165462, -0.0313735, 0.0506585, -0.0642271, -0.0219566, - 0.0127945, -0.0164266, -0.01266, -0.0571315, -0.042462, -0.0443998, -0.0256433, -0.0906727, - 0.0369999, -0.00749289, 0.0305802, -0.0199618, -0.0398645, -0.012479, 0.0293881, -0.0915479, - -0.0875018, -0.0522991, -0.0300075, -0.0293367, 0.00304054, -0.0153113, -0.0852418, 0.0606356, - -0.0508301, 0.0473317, -0.00559567, -0.0145069, 0.0155352, 0.0937862, 0.0419105, 0.107439, - -0.0132481, 0.0641715, 0.0312028, 0.0733368, 0.0265372, 0.0135173, 0.106767, 0.0236229, - 0.00246322, 0.0206615, 0.10063, 0.0451973, 0.030797, 0.0583173, 0.00928432, -0.0118978, - 0.0111116, 0.0528778, -0.0254398, -0.00435345, 0.0536206, 0.0278869, -0.0166692, 0.118701, - 0.0105538, 0.0128111, 0.0164439, 0.0130927, 0.00129399, -0.0440021, -0.0115579, -0.019537, - -0.0620245, -0.0291088, -0.110246, -0.0248473, -0.0256739, -0.0519484, -0.000626873, -0.0129347, - 0.0514691, 0.105352, 0.0998094, 0.0253072, 0.0281183, 0.0241761, -0.00190695, 0.061081 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p64(hatfit_yaw00_lev1_p64); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p64_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p65.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p65.mh deleted file mode 100755 index 05ea80b..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p65.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p65.mh: - -#ifndef stasm_hat_yaw00_lev1_p65_mh -#define stasm_hat_yaw00_lev1_p65_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p65(const double* const d) // d has 160 elements -{ - const double intercept = -0.175002; - const double coef[160] = - { - -0.0277865, -0.00461839, 0.000804702, -0.00666069, -0.000353549, -0.00788238, -0.00938188, 0.0222033, - -0.050188, 0.00359491, 0.00366198, -0.0166296, 0.000297359, 0.00483099, -0.0825797, 0.000643547, - -0.0630764, -0.0659505, -0.0102977, 0.0360068, 0.0127702, -0.0259893, -0.0789133, -0.0683098, - -0.00482564, -0.0310966, 0.00995508, -0.0132953, 0.00953184, 0.0175084, 0.00165241, 0.00201592, - 0.0766108, -0.0181389, -0.0332234, 0.0332517, 0.0219349, 0.0512349, 0.0322202, 0.046018, - 0.0169466, 0.0146008, -0.0477406, 0.019435, -0.0121325, -0.0332415, 0.00211002, 0.00113552, - -0.00347845, 0.0185526, 0.0799375, 0.0184735, -0.0247489, 0.0306522, 0.132248, -0.00205819, - 0.13069, 0.115871, 0.0506738, -0.0372212, -0.0175758, 0.0684921, 0.122341, 0.269659, - 0.0665379, -0.0155841, -0.0518629, -0.0142568, -0.0944692, -0.088548, -0.11378, 0.01854, - 0.0115034, 0.0424948, 0.0296922, 0.0247563, 0.00335754, -0.00599567, -0.0309015, -0.0741586, - -0.0465119, -0.00161941, -0.0021765, -0.00246838, 0.0341996, 0.00583213, -0.0227952, -0.0198427, - -0.0189341, 0.0117395, 0.0318078, -0.0215246, -0.0300004, -0.00681776, -0.0461987, -0.0623052, - -0.0844771, 0.000542585, 0.0246798, 0.0770029, 0.0857678, 0.0739165, 0.0184543, -0.0843127, - -0.0576231, -0.0629255, -0.0450643, 0.00599557, 0.0455094, 0.0537528, 0.00473172, -0.0845924, - 0.0150027, 0.0171967, -0.0127595, 0.00703861, -0.0182145, -0.0213446, -0.00797504, -0.0245089, - -0.0192921, 0.0136112, 0.0116631, 0.00265455, -0.000741286, 0.0304773, -0.02086, -0.00264433, - 0.0204618, 0.0387465, -0.0510006, -0.041918, -0.0177707, -0.0228606, 0.0180372, -0.00552248, - 0.0331364, -0.00103725, -0.00155859, 0.00364934, -0.030725, -0.0601593, -0.00316454, 0.0510012, - 0.024794, 0.0200472, 0.0260482, 0.03692, 0.00540666, -0.012112, 0.012476, 0.0372805, - 0.0373335, -0.00687078, 0.0080672, -0.0159034, 0.0101183, 0.0374216, 0.0163694, 0.0310197 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p65(hatfit_yaw00_lev1_p65); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p65_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p66.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p66.mh deleted file mode 100755 index 7cf1ef9..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p66.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p66.mh: - -#ifndef stasm_hat_yaw00_lev1_p66_mh -#define stasm_hat_yaw00_lev1_p66_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p66(const double* const d) // d has 160 elements -{ - const double intercept = -0.114908; - const double coef[160] = - { - 0.0621479, 0.148664, -0.0808057, -0.0734325, -0.0779598, 0.112303, 0.0691012, -0.0734984, - -0.0891871, -0.0303359, -0.0296288, 0.0653355, 0.057726, -0.0747313, -0.0389204, 0.030748, - -0.0376043, -0.0242851, 0.00215944, -0.0128589, 0.0526175, -0.0154007, -0.0356016, 0.00790394, - 0.0393551, 0.0121278, 0.0740665, 0.101692, 0.0326844, 0.00688292, 0.0422339, 0.107239, - 0.0503345, 0.00995021, -0.0509846, 0.0117855, -0.0384774, 0.031577, 0.00134269, -0.127872, - -0.0709863, -0.149595, 0.00666169, -0.000596597, -0.0462128, 0.0550865, -0.0638316, -0.0380512, - 0.0592485, 0.0172013, 0.0699331, 0.0563683, -0.0446237, -0.0296292, 0.0829031, -0.0981408, - -0.00211501, -0.0287852, 0.0204565, -0.0160499, -0.0508642, -0.0430687, 0.0686544, -0.0860575, - -0.109292, -0.0432463, -0.0627935, -0.0897644, -0.0565552, -0.0392803, -0.0675007, -0.0981836, - -0.110825, -0.00265412, -0.024454, 0.00582448, 0.0328972, 0.0868582, 0.151676, 0.157909, - 0.0173907, 0.0769144, 0.0790404, -0.024212, 0.0882533, -0.0252413, 0.0427054, 0.0565396, - -0.00320091, 0.043672, -0.00638487, 0.015961, 0.0536973, 0.0572533, -0.0228992, 0.00460968, - 0.0530984, 0.0482597, 0.0217364, 0.0170837, 0.0227786, 0.0455684, -0.0356677, 0.14438, - 0.0971565, 0.0352834, 0.0686218, 0.0613583, 0.0810098, -0.0496866, -0.085401, 0.0643533, - -0.0701281, -0.0474367, -0.0551886, 0.0374986, 0.0114636, 0.0147769, 0.0209621, -0.0237301, - -0.0613557, -0.048417, -0.0312429, -0.0513667, -0.04645, -0.0179482, 0.0837733, -0.0114909, - 0.0243065, 0.00229574, 0.0533605, 0.0381334, 0.00564831, -0.00935319, -0.0554278, -0.015606, - -0.0499693, -0.00343467, 0.00644126, -0.00769993, 0.0214419, 0.017018, 0.00379739, -0.0394817, - -0.0649387, 0.00961401, -0.0294862, -0.047631, -0.0189085, -0.0200228, -0.0206836, 0.0113553, - 0.0340622, 0.0568404, -0.030138, -0.026374, -0.0548503, -0.0599922, 0.0537001, -0.0145433 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p66(hatfit_yaw00_lev1_p66); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p66_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p67.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p67.mh deleted file mode 100755 index 58885e7..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p67.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p67.mh: - -#ifndef stasm_hat_yaw00_lev1_p67_mh -#define stasm_hat_yaw00_lev1_p67_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p67(const double* const d) // d has 160 elements -{ - const double intercept = -0.113909; - const double coef[160] = - { - -0.0188617, 0.00316902, -0.0739061, 0.0282265, 0.003645, -0.057957, 0.0050709, 0.0242442, - -0.123112, -0.0885432, -0.0231802, 0.0524963, 0.145596, -0.0695975, 0.0542611, 0.213012, - 0.0771955, 0.0859766, 0.112913, 0.00182485, -0.041207, 0.0709448, -0.133451, -0.0534433, - 0.0443474, 0.0526311, -0.0920123, -0.0394857, -0.110341, 0.114107, 0.105256, -0.104847, - -0.0502754, -0.019576, -0.0423652, 0.00980916, 0.0210069, -0.0375084, -0.00186543, -0.0165352, - -0.068461, 0.033185, 0.0545209, -0.0520722, 0.0253465, -0.0047908, 0.0872255, -0.0718019, - 0.0179633, -0.0174179, 0.0828479, 0.0307566, -0.0581829, -0.0772103, -0.0863097, 0.0172761, - -0.0636419, -0.0857602, -0.225817, -0.129229, -0.0221761, 0.049664, 0.0880692, -0.0322266, - -0.00965428, -0.0102029, 0.113926, 0.0290924, -0.0104373, -0.0425892, -0.0732669, -0.0120473, - 0.0358277, -0.0121853, 0.0111512, 0.0297736, -0.0455152, -0.0421967, 0.106585, -0.0538339, - 0.119307, 0.0605931, 0.0337106, -0.0143666, -0.000475732, -0.00033312, -0.016137, 0.0540146, - -3.17965e-05, -0.0643621, -0.0239138, 0.0592346, 0.0313051, 0.0205812, 0.00707053, -0.00760147, - 0.0728607, 0.0906611, 0.112247, 0.0393033, 0.057346, 0.044609, 0.0267728, 0.111261, - -0.0273771, 0.0108312, -0.0310528, -0.0753102, 0.00676557, -0.00323801, -0.00547113, -0.042993, - 0.0217995, 0.000293362, 0.0527807, 0.052532, 0.0965316, 0.0762126, -0.050425, 0.0904335, - -0.00995776, -0.0420223, -0.0163665, -0.00787983, -0.0444523, -0.0292807, 0.00134789, -0.00916903, - -0.0439685, -0.00308172, 0.0153934, 0.0264436, -0.0139337, 0.0130059, 0.0210779, -0.0585686, - 0.00739594, -0.0367863, 0.016144, -0.0448992, -0.0466312, 0.00240427, 0.0113582, 0.0102517, - 0.000421868, 0.00283884, -0.0185146, -0.00344203, 0.00447471, -0.0599441, 0.0294516, -0.0166099, - -0.039928, 0.0147255, 0.0114217, 0.0182585, 0.000694995, 0.0165909, -0.0146478, -0.022212 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p67(hatfit_yaw00_lev1_p67); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p67_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p68.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p68.mh deleted file mode 100755 index e4d551b..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p68.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p68.mh: - -#ifndef stasm_hat_yaw00_lev1_p68_mh -#define stasm_hat_yaw00_lev1_p68_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p68(const double* const d) // d has 160 elements -{ - const double intercept = -0.0472535; - const double coef[160] = - { - -0.0333984, 0.0656835, 0.0106519, 0.0399759, 0.0837495, -0.0590801, -0.0354664, 0.000401582, - 0.0507861, 0.0305926, -0.0299797, -0.0280611, -0.0375379, 0.0890645, 0.0991353, -0.0119074, - 0.0500358, 0.0327039, 0.0326631, 0.0156037, -0.0896013, -0.0172661, -0.0611493, -0.0487139, - -0.0158553, -0.0170312, -0.0675439, 0.0393561, -0.0252104, -0.0245059, -0.0460004, -0.00717333, - -0.0699404, -0.0325669, -0.0441731, 0.122475, 0.114906, -0.00302238, 0.0638788, 0.0975657, - 0.0238194, -0.0122492, 0.00939505, -0.0268166, -0.161655, 0.0738256, 0.133678, 0.0601642, - -0.0502025, -0.0815136, -0.0643104, -0.0445671, -0.0357928, -0.0869471, -0.0474168, -0.0431398, - -0.0825893, -0.0275855, 0.0356601, -0.0646219, 0.033888, -0.0717098, 0.0574178, -0.0301816, - -0.00499705, 0.0727134, 0.0824336, -0.0235041, 0.0235093, -0.0639051, 0.0631396, -0.0419611, - -0.037852, -0.0387067, -0.0240848, -0.111232, -0.0691031, -0.0380525, -0.0390921, 0.099562, - -0.00279045, 0.0328427, -0.0615046, -0.0442496, -0.0400743, 0.00526195, 0.00243521, 0.0295069, - 0.0521513, 0.0641226, 0.040687, 0.0798061, 0.0492278, 0.12391, -0.076507, -0.00658683, - 0.0782203, 0.0321287, 0.0274339, 0.0559232, 0.0188869, 0.0718778, -0.0556092, 0.0221964, - 0.0632411, 0.0219449, -0.0251334, 0.0464636, -0.0239108, -0.0166778, 0.0142018, 0.0594118, - 0.0749457, -0.0632603, 0.094559, 0.077424, 0.0532179, 0.0567741, 0.02659, -0.0608049, - -0.010741, -0.037765, -0.02709, 0.0687838, 0.0112361, 0.0066147, 0.0325352, -0.0838491, - -0.00727761, -0.00590156, -0.0304007, -0.00232171, -0.0285817, -0.0194663, -0.0117951, 0.0231252, - -0.000157544, 0.0139116, 0.00777066, -0.00782038, -0.00366661, -0.023865, -0.0216654, 0.0361765, - -0.00748849, 0.00483604, 0.0402628, 0.00263971, -0.0368632, -0.0121392, -0.00152512, -0.0232155, - -0.0494068, -0.0315213, -0.0389766, -0.00911571, -0.0881912, -0.00859301, 0.0414033, -0.0362998 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p68(hatfit_yaw00_lev1_p68); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p68_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p69.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p69.mh deleted file mode 100755 index 0b19712..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p69.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p69.mh: - -#ifndef stasm_hat_yaw00_lev1_p69_mh -#define stasm_hat_yaw00_lev1_p69_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p69(const double* const d) // d has 160 elements -{ - const double intercept = 0.138467; - const double coef[160] = - { - 0.0727278, 0.0410694, -0.0121286, 0.10934, -0.0571606, 0.039361, 0.0798405, 0.00142393, - 0.0423685, -0.0694792, -0.08714, -0.00116926, -0.0417457, 0.00768107, -0.0147799, -0.0480903, - 0.0175646, -0.0171768, -0.0445522, -0.00384396, -0.0298101, -0.0217389, -0.0199785, -0.0402522, - -0.0202302, 0.053779, 0.0185913, 0.0391604, 0.0158164, -0.0631713, -0.0215226, -0.013408, - -0.0493236, -0.0716819, -0.0305592, -0.00565181, 0.0295756, -0.0225791, -0.0125007, 0.0718176, - 0.0186186, 0.0286526, 0.0436904, -0.019139, -0.0522052, -0.00536649, 0.0472919, 0.0208337, - -0.0203697, 0.0782312, 0.0839855, 0.090479, 0.0706644, 0.0731851, -0.0965635, -0.0463428, - -0.0293672, -0.00786047, 0.0409683, -0.0374142, 0.0901149, 0.0818718, 0.0673608, 0.0438763, - 0.0559625, 0.0183026, 0.0521258, -0.00613286, 0.0426728, -0.00262783, 0.0623643, 0.0629963, - 0.0465622, -0.0554452, -0.000150035, -0.0175842, -0.00246682, 0.0739301, 0.0362838, 0.00592763, - -0.12026, -0.00668744, -0.0786816, -0.0647531, -0.0321518, -0.0100294, -0.0490275, -0.029289, - 0.0413105, 0.0238406, -0.0300419, -0.0638156, -0.110498, -0.0941771, -0.0253184, 0.0428704, - 0.0438465, 0.0224067, -0.0342461, 0.0399161, -0.0840878, -0.0685666, -0.0208694, -0.0306758, - 0.00892258, -0.00213832, 0.032049, 0.0173309, -0.0638428, -0.0443805, -0.0341364, -0.0546695, - -0.0353043, -0.0557252, 0.00519504, 0.0286246, -0.044046, -0.014966, 0.0130059, -0.0170023, - -0.0490745, -0.0462449, -0.0301219, 0.0728487, -0.00719909, -0.0244057, -0.014565, -0.0500982, - -0.0102718, -0.0382015, 0.0355018, -0.0108327, 0.0390334, 0.0880404, 0.0422387, 0.0559269, - 0.0475343, 0.0106384, 0.060598, 0.00438707, 0.021236, 0.0164531, -0.112987, 0.0802725, - -0.00106202, 0.0180457, 0.0100923, -0.0175058, 0.0423891, 0.0244042, -0.0349724, -0.0170408, - -0.0506162, -0.0169565, -0.0853738, -0.0504872, -0.0229947, -0.00657965, 0.132349, -0.025945 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p69(hatfit_yaw00_lev1_p69); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p69_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p70.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p70.mh deleted file mode 100755 index b1e76b6..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p70.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p70.mh: - -#ifndef stasm_hat_yaw00_lev1_p70_mh -#define stasm_hat_yaw00_lev1_p70_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p70(const double* const d) // d has 160 elements -{ - const double intercept = -0.133387; - const double coef[160] = - { - 0.0424555, 0.0670308, 0.0010174, -0.0308677, 0.0528108, -0.070897, 0.0448855, -0.000525556, - -0.100123, -0.0861334, 0.0316145, 0.0169901, 0.0901615, -0.0500279, -0.0376332, 0.0427404, - 0.0720401, 0.0227514, -0.106129, -0.0212751, -0.0379922, 0.063484, 0.0188433, 0.0395767, - 0.0301117, -0.0215064, 0.0471855, -0.0341529, -0.0803298, -0.0145573, -0.0235636, -0.105323, - 0.0193279, 0.0311169, -0.0481364, 0.11473, 0.0624199, 0.0110681, 0.0336379, 0.00642461, - 0.0422275, 0.0139292, 0.155419, 0.0669998, -0.0508135, -0.00343256, -0.0168017, 0.0231051, - 0.0575028, -0.0536568, -0.0718591, 0.000673625, -0.0521534, 0.0252803, -0.00296366, -0.0187603, - -0.00851754, 0.0395557, 0.100741, 0.00741312, 0.0600377, 0.0807008, 0.0521776, 0.0797571, - -0.0629093, -0.00673294, -0.0946586, -0.116795, 0.0606276, -0.00622547, 0.0292151, 0.0388462, - -0.0109681, 0.0554172, 0.240807, -0.0162847, 0.0303524, 0.0470641, -0.0465172, 0.00661341, - -0.0431188, -0.0139805, -0.0778138, -0.0917159, -0.0543887, -0.0126208, 0.0157767, -0.0381842, - -0.0601245, -0.0132269, 0.0229161, 0.0946917, 0.0333466, -0.0432457, 0.00767451, 0.0313255, - 0.00869893, 0.0124194, 0.0200126, -0.0542009, -0.0419267, -0.0324422, -0.0361022, -0.0342807, - 0.0285237, -0.00941491, 0.042298, 0.0531628, -0.0579588, -0.00360975, 0.0202182, -0.0463113, - -0.0217165, -0.0558329, -0.10461, 0.000644266, 0.0265933, -0.0190376, -0.0139198, -0.0177487, - 0.042957, 0.0337059, 0.0435429, 0.0366932, 0.0356663, 0.0708965, -0.112017, 0.0768778, - -0.0748603, -0.02778, -0.0439688, -0.0396568, -0.0230837, 0.0124313, 0.140415, -0.0556834, - 0.000653722, -0.070152, 0.00936496, -0.058654, -0.0223955, -0.0612233, 0.00818948, -0.0656468, - -0.00210204, 0.0253095, -0.0739135, -0.00608692, 0.00664508, -0.0317965, 0.123874, 0.0472496, - 0.00864499, 0.017566, 0.100338, 0.0076835, 0.0248831, 0.089721, -0.121064, 0.0594471 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p70(hatfit_yaw00_lev1_p70); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p70_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p71.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p71.mh deleted file mode 100755 index ce2385d..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p71.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p71.mh: - -#ifndef stasm_hat_yaw00_lev1_p71_mh -#define stasm_hat_yaw00_lev1_p71_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p71(const double* const d) // d has 160 elements -{ - const double intercept = 0.266632; - const double coef[160] = - { - -0.00323948, -0.0113591, -0.0336446, -0.0710632, -0.0705223, 0.062828, -0.0251187, -0.0602036, - 1.21336e-05, 0.0550747, 0.00732572, 0.0563387, -0.0153524, -0.0419621, -0.00887493, -0.0643784, - -0.0137269, -0.024181, -0.0454399, -0.00608388, 0.0322647, -0.0382676, -0.00581657, -0.016338, - -0.0108501, 0.0256067, -0.0825346, -0.032075, 0.013924, -0.0233511, -0.0214738, 0.0280752, - -0.107449, 0.0538449, -0.0324866, 0.0252568, 0.0629976, 0.0207773, 0.0430119, 0.0273273, - -0.014923, -0.0388074, 0.00823292, -0.045255, 0.0650417, 0.0443541, 0.0635936, 0.083295, - 0.0382236, 0.000554167, 0.0419841, 0.0106936, 0.0110228, 0.0459013, 0.00467543, 0.0332924, - 0.0945127, 0.0472357, 0.0382225, -0.0225111, -0.0164956, 0.0434837, 0.0606323, 0.118943, - 0.0227736, 0.0480948, 0.082012, 0.0256161, 0.0113917, -0.0481997, -0.073957, 0.00668885, - -0.0322754, -0.019252, 0.0818042, 0.00733527, 0.0100666, 0.00991564, 0.0338835, 0.000509096, - -0.0388687, -0.00841774, 0.0167134, -0.0761158, -0.0143569, -0.00907291, 0.0220304, -0.0468844, - -0.0292457, -0.000624045, 0.0446416, 0.0363924, -0.00851759, -0.0481172, -0.0102748, -0.0435456, - -0.133599, -0.0498851, -0.0371449, 0.0411598, 0.0312921, -0.00926869, -0.0673707, -0.0917156, - -0.042758, -0.0852033, -0.0295567, 0.059162, -0.0074855, 0.0215083, -0.0329871, -0.0651943, - -0.0189135, -0.00652077, -0.11006, 0.032581, -0.102509, -0.0305093, -0.00925267, -0.0128011, - 0.0166546, -0.0709906, -0.0983723, -0.0197508, -0.0533792, -0.0488329, 0.141153, 0.0443988, - 0.00938893, 0.0266859, 0.0275815, 0.0470291, 0.0272184, 0.0654562, -0.107629, 0.0189209, - 0.0634252, 0.0416836, 0.071386, -0.00291001, -0.0148239, 0.0567805, -0.071365, 0.0271712, - -0.0311755, 0.0128937, 0.00768441, -0.0793778, -0.0645176, -0.0124901, 0.0369286, 0.0268296, - 0.0126682, 0.0331465, -0.0406404, -0.0143453, -0.0388306, -0.0232577, -0.0152349, -0.00314514 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p71(hatfit_yaw00_lev1_p71); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p71_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p72.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p72.mh deleted file mode 100755 index 7e45765..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p72.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p72.mh: - -#ifndef stasm_hat_yaw00_lev1_p72_mh -#define stasm_hat_yaw00_lev1_p72_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p72(const double* const d) // d has 160 elements -{ - const double intercept = 0.298111; - const double coef[160] = - { - 0.0659044, -0.0136349, -0.000657047, -0.0524316, 0.0093208, 0.0259109, 0.0627028, -0.00903453, - 0.0274928, 0.0297302, 0.0694621, 0.0678002, 0.0654913, -0.0031269, 0.00777132, 0.0435105, - -0.0336438, -0.00949334, -0.0201626, 0.0315994, 0.0374407, -0.0292693, -0.0488771, -0.0692642, - -0.0778231, 0.0947238, 0.0986332, 0.0204165, 0.0653812, 0.0855347, 0.10902, 0.0990798, - 0.0252731, 0.0228385, -0.0354786, -0.0257165, 0.00979335, 0.0133789, -0.011996, 0.122096, - -0.116807, 0.03751, 0.0182167, 0.072391, 0.0461229, 0.0279572, -0.0575722, -0.0174644, - -0.110995, -0.0872117, -0.044589, -0.0274898, -0.0213475, -0.0663374, -0.0594111, -0.038104, - 0.0225458, 0.0143709, -0.0475647, -0.0176696, -0.0952845, -0.0270043, -0.0115237, -0.013899, - 0.0440536, -0.0365961, -0.0699315, -0.0686312, -0.0798702, -0.0546913, -0.00454662, -0.0516614, - -0.021318, -0.0627624, 0.0824855, 0.0662995, 0.0526493, -0.0404413, 0.0253183, -0.010623, - 0.0509673, -0.0313634, 0.0580512, 0.036311, 0.00554113, 0.0408745, -0.0538253, -0.0556542, - -0.0161722, 0.0340043, -0.0203796, -0.0764515, -0.0650205, 0.0578113, 0.091688, 0.00397961, - 0.0227092, -0.012721, -0.0121066, -0.0237495, 0.000210238, 0.00523915, 0.00866707, 0.0416126, - -0.00888034, 0.0335162, 0.00281285, 0.000216386, 0.0195712, -0.00883568, -0.0601433, -0.0224163, - 0.0219169, -0.0063463, -0.0157962, 0.0198269, 0.00410662, 0.00975731, -0.0218908, 0.0454962, - -0.0155503, 0.0988849, 0.0463098, -0.0100967, -0.0268059, 0.0566602, 0.072615, 0.0740009, - -0.0333233, -0.0182402, -0.0706448, 0.0125493, -0.040476, -0.0350976, -0.137625, 0.00128251, - -0.0558219, -0.00671415, -0.0848036, 0.0173377, -0.0294549, -0.000625941, -0.0863849, -0.0417296, - -0.00513088, -0.0261223, 0.0074173, -0.0278166, -0.0170869, 0.00271093, 0.0106674, 0.0273419, - -0.0100846, 0.00562695, -0.00600253, 0.0216703, -0.00989039, -0.00382208, 0.0260593, -0.000255542 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p72(hatfit_yaw00_lev1_p72); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p72_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p73.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p73.mh deleted file mode 100755 index 1a6731b..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p73.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p73.mh: - -#ifndef stasm_hat_yaw00_lev1_p73_mh -#define stasm_hat_yaw00_lev1_p73_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p73(const double* const d) // d has 160 elements -{ - const double intercept = 0.444151; - const double coef[160] = - { - -0.020546, 0.0161181, 0.0654594, -0.0948747, 0.0285488, 0.0408993, -0.0211689, 0.0247758, - -0.00582393, 0.0185156, 0.0725341, 0.00802478, 0.0177493, 0.0507399, 0.0132491, 0.00144042, - -0.0140682, 0.0033576, -0.000123129, -0.0115809, -0.00328298, 0.0253079, -0.0533519, 0.0387285, - -0.00350354, -0.0703206, 0.0106172, -0.0374575, 0.0282741, 0.0254831, -0.0700683, -0.0170526, - -0.0364723, 0.0324261, -0.0404725, 0.0728566, 0.00123376, -0.01443, 0.0143197, -0.0289, - -0.044168, -0.0394531, -0.0453126, -0.0427691, -0.0969554, -0.104084, 0.0706115, -0.0336697, - -0.0357658, -0.00877757, -0.018146, 0.0280338, 0.0330396, -0.0116376, -0.0718934, -0.0169607, - -0.00429307, -0.00922947, -0.0148544, 0.0603271, 0.0430832, 0.0702863, -0.0180784, -0.0242528, - -0.0409658, 0.0116987, 0.0459699, 0.0121752, -0.0819474, -0.00677367, 0.0379443, -0.0223598, - -0.0292117, 0.000454892, -0.0194356, -0.031597, -0.109613, -0.0242186, -0.00652066, 0.0350001, - -0.012082, 0.0091048, 0.065266, -0.0128821, 0.028678, 0.00238832, 0.182173, -0.0143746, - 0.0724319, 0.0371631, 0.0456258, 0.0132541, 0.031683, -0.0492994, 0.0593304, 0.0549378, - 0.0210115, 0.00293678, -0.0423056, -0.0732382, -0.0307535, 0.00439763, -0.0169179, 0.0584682, - -0.00417461, -0.000920001, -0.0323396, -0.0243903, -0.0290335, -0.0224079, -0.0441952, 0.0355719, - 0.00940746, 0.0466832, -0.0271315, -0.0411812, 0.00951903, -0.0392041, -0.112846, -0.0197858, - 0.0278604, 0.00782806, -0.0426082, -0.0257704, 0.0161067, 0.0148668, -0.128532, -0.0126304, - 0.0221653, -0.0646441, 0.00312968, -0.0427131, -0.0420398, -0.021803, -0.0280242, 0.00798578, - -0.0327944, -0.0170829, -0.0214821, 0.058862, 0.0327726, 0.00170463, -0.029606, 0.0144036, - -0.0451911, -0.0545393, -0.0336726, 0.0161638, -0.0212735, 0.00839933, 0.00677629, -0.0399395, - -0.0440208, 0.0470579, 0.01285, 0.0786805, 0.00188622, -0.00854256, 0.00466533, -0.00454773 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p73(hatfit_yaw00_lev1_p73); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p73_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p74.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p74.mh deleted file mode 100755 index f7dcbd7..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p74.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p74.mh: - -#ifndef stasm_hat_yaw00_lev1_p74_mh -#define stasm_hat_yaw00_lev1_p74_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p74(const double* const d) // d has 160 elements -{ - const double intercept = -0.0861693; - const double coef[160] = - { - 0.0377272, -0.052074, 0.0842496, 0.0269239, -0.0173226, -0.0148563, -0.0387223, 0.0620431, - -0.0304301, -0.0629466, -0.011215, 0.0698194, -0.0163436, 0.0618149, -0.0107698, 0.00857855, - 0.0154768, 0.0553717, 0.0201951, -0.0199971, 0.0157546, 0.0529829, -0.0227046, 0.0993725, - -0.00917861, 0.0140864, 0.0278605, -0.0611641, -0.0496295, -0.0369097, -0.00715461, 0.0107413, - -0.00622658, -0.00358566, 0.0699447, -0.027576, 0.0455637, 0.125504, -0.0768594, 0.0122902, - 0.0925916, 0.0657672, -0.020839, -0.0717925, -0.0366377, -0.0562988, 0.0310773, 0.0800754, - -0.0604142, -0.0229939, 0.00696296, -0.00243065, 0.0139147, -0.0643964, 0.0709301, -0.0999129, - -0.0211337, -0.0358355, -0.02303, -0.0486519, -0.0799998, -0.0850369, 0.0285144, -0.0695838, - -0.0289704, 0.000604421, -0.00804623, -0.0119128, 0.013159, -0.0179008, 0.0642296, -0.0752543, - -0.0255169, -0.0183058, 0.0117462, 0.111172, 0.0510885, 0.0540716, 0.00467105, -0.00388082, - -0.0727964, -0.0721001, -0.0465695, 0.0430624, -0.0273294, 0.141421, -0.119877, -0.0860733, - 0.0234302, 0.004918, 0.106259, -0.0271116, 0.0233788, -0.0203192, 0.135544, 0.0318046, - 0.0164929, -0.0175186, 0.0115526, 0.000396585, 0.0416848, 0.0269781, 0.00863606, -0.0310569, - 0.0687198, 0.0206739, 0.124923, 0.0268222, 0.0208457, -0.0239115, 0.129879, 0.0822653, - 0.0138962, 0.0317609, -0.0513746, -0.0950611, -0.00748574, -0.0715021, -0.146752, 0.101075, - 0.0161374, 0.0291443, -0.0163718, -0.00827008, 0.0423341, -0.0263848, -0.0503185, -0.00127387, - 0.00326663, -0.0664793, 0.00148467, 0.031439, -0.00665274, 0.00286052, -0.0226317, 0.00987852, - -0.0108395, 0.0167889, -0.0189328, -0.00941313, 0.0100464, 0.00736375, -0.0125995, 0.0145155, - -0.0128805, 0.0106394, -0.0727996, -0.0944875, -0.0211638, 0.040031, -0.0387772, -0.0253539, - 0.0236832, -0.0159759, 0.0388389, 0.0955583, -0.0130999, -0.0450405, -0.026158, -0.0274946 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p74(hatfit_yaw00_lev1_p74); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p74_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p75.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p75.mh deleted file mode 100755 index 9d6c29f..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p75.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p75.mh: - -#ifndef stasm_hat_yaw00_lev1_p75_mh -#define stasm_hat_yaw00_lev1_p75_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p75(const double* const d) // d has 160 elements -{ - const double intercept = 0.244095; - const double coef[160] = - { - -0.000899974, 0.0353078, 0.0145825, -0.0121622, -0.00485157, -0.0256038, -0.0205757, -0.00587983, - 0.0199168, -0.0300858, -0.0231304, -0.0156234, -0.0188123, 0.0105047, -0.0780988, 0.0180119, - 0.0160617, -0.0164322, 0.0267275, 0.0324825, 0.0183688, 0.0275049, -0.0196376, 0.0290752, - 0.0127766, 0.00365792, 0.074349, 0.0197182, -0.00756497, -0.0135765, -0.00210256, 0.0444623, - 0.0134508, -0.0655841, 0.0336806, 0.0269161, -0.0119017, 0.0793009, -0.00775912, 0.0461052, - -0.115087, -0.0353255, 0.0132794, 0.00745167, -0.0310263, 0.0243837, 0.00809966, -0.00518043, - 0.0636831, 0.037696, 0.0776245, -0.0330936, 0.000981091, -0.00115743, 0.0407476, 0.0586357, - 0.0680963, 0.0492938, -0.00274996, -0.00482297, -0.0331305, -0.0555758, -0.0430299, 0.0130458, - -0.00616732, -0.0500856, -0.0828604, -0.0381615, -0.0566974, -0.0150602, 0.0302092, -0.0708142, - -0.0398492, 0.00213115, 0.00406433, -0.00636538, -0.0487779, -0.0669123, 0.0364117, -0.0910838, - -0.017267, -0.033364, -0.0169948, 0.0431293, 0.0316849, -0.0475541, -0.10673, -0.085643, - -0.0627401, -0.022714, -0.0650185, 0.060876, -0.0126668, 0.0498532, -0.0311162, -0.00631595, - -0.0592686, -0.0217015, -0.0353328, 3.01015e-05, 0.00939841, 0.0838227, -0.0118762, 0.046194, - -0.0344715, 0.010483, 0.0423841, 0.0120006, 0.0735342, 0.0507255, 0.0291151, -0.0374105, - 0.0230171, -0.0427561, 0.0774957, -0.0130141, 0.0157903, -0.0284648, 0.205693, -0.00952433, - -0.00556125, 0.0859779, 0.0195645, 0.000381589, -0.0186602, -0.0494488, -0.0101716, 0.00144208, - 0.0220583, 0.00610326, -0.0362644, -0.0273198, -0.0653834, -0.0249836, 0.0135337, 0.0338374, - 0.0109754, 0.0187904, -0.0189524, -0.0386528, -0.00947884, -0.0129014, -0.0440307, -0.0168492, - 0.00959161, -0.0341214, 0.00378802, 0.0197966, 0.0237692, 0.00692549, -0.0449733, 0.0142163, - 0.0276045, 0.0132254, -0.0378692, -0.0531314, -0.0021312, 0.0143778, -0.106118, 0.0143603 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p75(hatfit_yaw00_lev1_p75); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p75_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p76.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p76.mh deleted file mode 100755 index ef0902e..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev1_p76.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev1_p76.mh: - -#ifndef stasm_hat_yaw00_lev1_p76_mh -#define stasm_hat_yaw00_lev1_p76_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev1_p76(const double* const d) // d has 160 elements -{ - const double intercept = 0.167083; - const double coef[160] = - { - 0.0178567, 0.00471566, -0.00311486, 0.0590848, 0.018484, 0.109937, 0.0273678, 0.0385779, - 0.0964948, 0.0198502, 0.0733013, 0.0630774, -0.0975216, 0.0475847, 0.141174, 0.055912, - 0.0450708, 0.102869, -0.0110608, 0.0225142, -0.00837921, -0.0446967, -0.0637368, -0.0486541, - 0.007223, 0.0421737, 0.0486142, 0.035173, 0.0203823, 0.0383853, 0.00289787, -0.0133363, - 0.00970628, -0.0349687, 0.0170089, -0.0533628, 0.0531978, 0.000440911, 0.046605, 0.0487779, - 0.000617105, 0.0353907, 0.0273192, -0.092682, -0.0704793, -0.0155085, -0.0217113, -0.0631617, - -0.112172, -0.0802243, -0.0608824, 0.0123457, 0.101898, -0.0345389, 0.00356435, -0.0256903, - -0.0861817, -0.0318411, -0.00801122, -0.0602708, -0.0648524, -0.0169876, -0.0223819, -0.0399834, - 0.0246939, -0.00651791, -0.025922, -0.0122764, -0.0152515, -0.074221, -0.0428134, 0.0231071, - 0.0214263, 0.0464157, -0.00333684, 0.0686476, -0.0726611, -0.01918, -0.0510255, -0.0121835, - 0.0251027, 0.017702, -0.020816, 0.0256276, 0.062492, 0.031742, 0.0160975, 0.0905406, - -0.00495778, -0.0248092, -0.0028224, 0.00834231, -0.0172717, -0.0282789, -0.0644648, -0.091834, - 0.0375562, -0.00619002, -0.00536505, 0.020868, 0.032814, 0.0248805, 0.0170806, 0.0586391, - -0.0149593, -0.0445147, 0.0531902, -0.0218665, -0.0289037, 0.065172, 0.0438367, 0.017724, - 0.0487856, 0.0179788, 0.0317689, -0.0629089, 0.0142979, -0.051581, -0.00846684, 0.0634947, - -0.0244065, 0.00798281, 0.0281053, -0.0294804, 0.00115965, 0.0110325, 0.0143852, -0.0351062, - -0.0154878, -0.0199757, -0.0262725, 0.00266283, -0.0202465, 0.0119766, -0.0192617, 0.0439345, - -0.0650565, -0.0194041, -0.0956524, -0.0440435, -0.00749312, -0.0431471, -0.067371, -0.054401, - -0.0463175, 0.0219669, -0.0384754, 0.0520812, -0.0308316, -0.0167847, -0.100874, 0.0112061, - -0.0256602, -0.0237249, 0.0170488, 0.0909679, -0.0136034, 0.0805518, 0.0374694, 0.0708242 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev1_p76(hatfit_yaw00_lev1_p76); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev1_p76_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p16.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p16.mh deleted file mode 100755 index d1fa3ee..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p16.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p16.mh: - -#ifndef stasm_hat_yaw00_lev2_p16_mh -#define stasm_hat_yaw00_lev2_p16_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p16(const double* const d) // d has 160 elements -{ - const double intercept = 0.201199; - const double coef[160] = - { - 0.0479748, -0.00784569, -0.0839676, -0.0402904, -0.00990121, -0.0161831, 0.0171531, 0.0633562, - 0.0458178, 0.038718, -0.00229275, -0.00807225, -0.00097018, -0.0167164, -0.0218175, 0.0212908, - 0.0483748, 0.0306654, 0.00668657, -0.0368009, 0.00499699, -0.0319757, -0.0424916, 0.0178991, - 0.0126939, 0.0156106, -0.0195705, -0.0524409, 0.00303049, -0.00036784, -0.0339076, -0.00650181, - -0.00221962, 0.0418911, 0.0109849, -0.0273736, -0.026405, 0.0189485, -0.0374008, -0.0135253, - -0.0509223, -0.017173, -0.00960212, -0.00728783, 0.0171797, 0.0235679, 0.11178, 0.00767195, - -0.0532631, -0.0134703, 0.0251553, 0.0296362, 0.0100125, -0.00951279, 0.0175886, -0.0152258, - -0.0643198, -0.00778827, 0.0185586, 0.0440405, 0.0352242, 0.000335484, 0.0510853, -0.0333015, - -0.0664789, -0.022523, 0.0492345, 0.0635387, 0.0590402, -0.0214514, 0.0291401, -0.0576358, - -0.0595315, -0.0602438, -0.0498133, -0.00367544, 0.0452483, -0.0124489, 0.125025, 0.0170502, - -0.0049248, -0.0393945, 0.0171818, 0.0114648, -0.0132102, -0.016775, 0.0096432, -0.0147961, - 0.0331186, 0.00980842, -0.0214262, -0.0321873, -0.0313714, -0.0137095, -0.0132678, 0.0154735, - 0.0614494, 0.0190023, 0.00482608, -0.0350526, -0.0510161, -0.04975, -0.0354202, 0.0309835, - 0.0550816, 0.0681949, 0.0527185, -0.0125734, -0.0319863, -0.0356415, -0.0373618, 0.0207985, - 0.0501947, 0.0225517, -0.0432618, 0.00168456, -0.00521152, -0.013559, 0.00523639, 0.094479, - -0.00574153, -0.0537307, 0.0131248, -0.00685395, -0.0151087, 0.00691375, -0.00111654, -0.0486872, - -0.014142, -0.0469476, 0.00942551, 0.0237295, 0.0337823, 0.0245199, 0.0387013, -0.0252803, - -0.0613539, -0.0400444, 0.0029828, 0.00468973, 0.00446706, 0.0299791, 0.00778386, -0.0241703, - -0.0407481, -0.00160535, 0.00760824, 0.00280452, -0.0209072, -0.0135813, -0.030542, -0.0249088, - -0.0641581, 0.0137424, -0.0494603, -0.0549461, -0.0140327, 0.010657, -0.0297539, -0.0048274 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p16(hatfit_yaw00_lev2_p16); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p16_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p17.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p17.mh deleted file mode 100755 index dec1d34..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p17.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p17.mh: - -#ifndef stasm_hat_yaw00_lev2_p17_mh -#define stasm_hat_yaw00_lev2_p17_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p17(const double* const d) // d has 160 elements -{ - const double intercept = 0.0641183; - const double coef[160] = - { - 0.00548101, -0.0278398, -0.0529979, -0.0184241, -0.0244758, 0.00750857, -0.0870743, -0.0408273, - 0.0191316, -0.0132359, -0.0197415, -0.0282264, -0.0230354, -0.0469168, 0.00305976, 0.00509154, - 0.0337102, 0.0317416, -0.0147772, -0.0521098, -0.0298594, -0.0364094, 0.00320256, -0.00965839, - 0.0502111, 0.0040414, -0.0186344, -0.00963626, -0.00643085, -0.0348256, 0.0274904, 0.0428869, - 0.0423164, 0.0703478, 0.0436876, -0.043167, -0.0155584, -0.0627262, -0.0910627, -0.0270945, - 0.0381986, 0.0170332, -0.0378051, -0.0305759, -0.0101497, 0.0294837, 0.0541005, 0.0204143, - -0.0107043, 0.0141293, -0.000124892, -0.00228929, -0.00584688, 0.0562794, 0.029545, 0.0289569, - -0.0294728, -0.00693026, -0.00502799, -0.0220686, 0.017127, 0.0168838, 0.0372847, 0.035913, - -0.0387757, -0.00677981, 0.0154889, 0.00584213, 0.0138248, 0.022448, 0.0259633, -0.000267879, - -0.0199762, 0.0355431, 0.0268489, 0.059433, 0.0371466, -0.0195291, 0.0631884, 0.0154288, - -0.0666278, -0.0212345, 0.00775835, -0.0203998, -0.00585601, 0.118692, 0.0160203, 0.00520236, - -0.0245992, -0.0205268, 0.0347002, 0.0146157, 0.021682, 0.0334895, -0.0537345, -0.0151598, - -0.0188597, -0.0376348, 0.0303035, 0.0415455, 0.0246958, 0.0142054, -0.0206932, 0.00589225, - -0.0151944, -0.0372652, 0.00272563, -0.00158859, 0.0128479, 0.00141992, -0.0375236, -0.0219545, - -0.0257391, -0.0161181, 0.0355049, -0.0246824, -0.0230046, -0.0200004, 0.00343231, 0.0139045, - -0.00558463, 0.0414232, -0.0391887, -0.048578, -0.0148066, 0.00240101, -0.0306445, 0.0222875, - 0.0113709, 0.0243018, 0.0126473, -0.0107071, -0.028586, -0.0114096, 0.00955817, 0.00577993, - 0.00295543, -0.00017432, -0.00483328, -0.00866622, -0.0210113, -0.00407164, 0.00779089, -0.0204989, - 0.0224204, -0.0126428, 0.0216603, 0.0197888, -0.00295644, -0.000934317, 0.0240641, -0.0132466, - 0.0069265, -0.0727936, 0.0252536, 0.0185129, -0.00494405, 0.00818837, 0.0187053, -0.0385674 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p17(hatfit_yaw00_lev2_p17); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p17_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p18.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p18.mh deleted file mode 100755 index 2aa4ba4..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p18.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p18.mh: - -#ifndef stasm_hat_yaw00_lev2_p18_mh -#define stasm_hat_yaw00_lev2_p18_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p18(const double* const d) // d has 160 elements -{ - const double intercept = -0.464167; - const double coef[160] = - { - -0.0070516, -0.0138885, -0.00838615, 0.0241183, 0.00800509, -0.0107691, -0.0318889, -0.0226589, - 0.0601676, -0.0169016, -0.00575287, -0.0394743, 0.0451446, -0.0203331, -0.0540854, -0.0105876, - 0.0294445, -0.0333346, -0.0331402, -0.0444691, 0.0121001, 0.0844445, 0.041568, 0.0562884, - -0.0322616, 0.0360436, 0.00921021, -0.013502, -0.0027091, 0.0523874, 0.0272614, 0.012032, - 0.000168089, 0.0174628, 0.0798083, 0.0276852, 0.0135955, 0.0296484, 0.0129555, 0.0806812, - 0.0500424, 0.00710139, -0.00429781, -0.0238927, 0.00206671, -0.0204532, 0.0172665, -0.000815265, - -0.00492949, -0.00120939, -0.0317968, -0.00504358, 0.00071816, -0.00772781, 0.00686577, 0.0260517, - -0.028403, 0.0759707, 0.0504597, 0.0504078, 0.0332929, -0.00196605, -0.000229055, -0.0222047, - 0.0165769, 0.0412389, -0.00796234, -0.00544252, -0.0125328, -0.0431626, -0.00170195, -0.0120648, - -0.0211015, 0.00974593, 0.0316203, 0.0240425, -0.00954887, 0.0135305, 0.0313708, -0.0139964, - 0.00818618, -0.0291873, -0.0385677, -0.0388603, -0.00953679, -0.0185117, 0.00438256, -0.0280945, - 0.00657028, -0.0137535, 0.0160152, 0.0283693, 0.0329595, -0.00655665, 0.0025663, -0.00771347, - 0.0294882, 0.0260856, 0.00637648, -0.00866566, -0.040871, -0.0224035, -0.00895485, -0.00151325, - 0.00673054, -0.0275637, -0.0518765, -0.0346669, -0.0177936, 0.0449881, 0.0065214, 0.00766954, - 0.0429394, 0.0386208, 0.0464108, 0.00573303, -0.0410096, 0.00386441, 0.0278229, 0.0230318, - 0.0152115, -0.0100685, 0.0293164, 0.0540824, 0.0292131, 0.0355769, 0.000325612, -0.0256946, - -0.0172053, -0.00233631, 0.00716747, 0.0294623, -0.00225413, -0.0271301, -0.037571, -0.00656058, - -0.00636178, -0.0178503, -0.0179586, 0.0090866, 0.0361297, 0.00409523, -0.0119827, -0.0166724, - 0.00418527, -0.00409336, 0.00976438, 0.0118843, 0.0649968, 0.00491458, -0.0490295, 0.00522135, - -0.0017874, 0.00497965, -0.0123665, 0.0632608, 0.0561797, 0.0983509, 0.126985, 0.0707482 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p18(hatfit_yaw00_lev2_p18); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p18_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p19.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p19.mh deleted file mode 100755 index c0c45d2..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p19.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p19.mh: - -#ifndef stasm_hat_yaw00_lev2_p19_mh -#define stasm_hat_yaw00_lev2_p19_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p19(const double* const d) // d has 160 elements -{ - const double intercept = -0.240635; - const double coef[160] = - { - 0.0168096, -0.0442579, -0.070338, -0.0473302, -0.0222136, 0.0957758, 0.0164518, 0.00523625, - 0.00195702, -0.0127086, -0.00720966, -0.00891624, -0.0226743, 0.0302098, -0.00206097, 0.00197536, - 0.0119359, -0.010845, 0.0263878, 0.0103592, 0.0269128, 0.0031775, 0.00825071, 0.0185765, - -0.00863547, -0.0109844, -0.0088456, -0.026454, -0.0136792, 0.02238, 0.0159833, 0.0229814, - 0.00676278, 0.0356278, 0.0243659, -0.0483941, -0.00029279, -0.0285899, 0.0724552, 0.0293844, - -0.0628865, 0.0278929, 0.0492395, -0.00819929, -0.00417028, -0.0135682, -0.00638027, -0.00104148, - -0.0277807, 0.0166524, 0.0453805, 0.00800668, 0.0257926, -0.0182616, -0.0193732, -0.0185252, - -0.0363109, -0.00320665, 0.0598099, 0.0404136, -0.000212925, -0.0243272, -0.00412736, -0.0254325, - 0.00665958, -0.0315541, 0.0232733, 0.0193451, 0.0184404, 0.00400625, 0.0300885, -0.00994864, - -0.0271101, -0.0865407, 0.064576, 0.0308198, -0.0193159, -0.00973269, -0.0206604, -0.0100628, - 0.0268986, 0.0501878, -0.0267205, -0.0220307, -0.0236678, 0.0160175, -0.0324663, -0.00533803, - 0.0409558, -0.00325867, -0.0142667, -0.0142876, -0.0127697, 0.0148601, 0.0163897, 0.00407631, - 0.0428517, 0.0201913, -0.0215948, -0.00872995, -0.00192159, 0.008682, 0.0154782, -0.00524282, - 0.00842598, -0.00765053, 0.00464852, 6.63136e-05, 0.014949, 0.00761466, 0.0266099, -0.00830669, - 0.0452914, -0.0164204, -0.031957, 0.0121778, 0.028522, 0.0417206, 0.0588211, -0.0239453, - -0.00447031, -0.00836715, -0.036449, 0.0202073, 0.0334947, 0.0145783, -0.0586885, 0.0168487, - -0.00579858, 0.0101248, 0.0214281, 0.00176611, 0.000148868, 0.0413324, 0.0124326, 0.0215377, - 0.0165895, 0.00406493, 0.0232231, 0.0357304, -0.00316806, -0.00542247, 0.0273935, 0.0283702, - 0.0246317, -0.0173005, 0.0102101, 0.00916052, -0.00898166, -0.0394295, -0.00401933, -0.0383193, - 0.0141222, 0.0139724, -0.0176987, -0.0316665, -0.00812724, 0.00615176, 0.0640168, 0.00201298 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p19(hatfit_yaw00_lev2_p19); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p19_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p20.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p20.mh deleted file mode 100755 index d9c0510..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p20.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p20.mh: - -#ifndef stasm_hat_yaw00_lev2_p20_mh -#define stasm_hat_yaw00_lev2_p20_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p20(const double* const d) // d has 160 elements -{ - const double intercept = -0.57973; - const double coef[160] = - { - -0.00205481, -0.0137214, -0.00309148, -0.0185552, -0.0044485, -0.00405411, 0.0980302, 0.0258474, - 0.0441372, 0.0271223, -0.022722, -0.0374453, -0.00967222, 0.00451008, 0.0400823, 0.0441306, - 0.0282369, 0.0376717, 0.00993434, -0.00164766, -0.0277478, -0.0452401, 0.0094723, 0.0245945, - -0.00383547, 0.0326884, 0.0353405, 0.0255885, 0.0267886, 0.0080378, 0.0145145, 0.0248141, - 0.0470777, -0.0160207, 0.0149831, 0.0101602, 0.0657714, -0.0467214, 0.102737, 0.0984535, - 0.0310132, -0.0311305, 0.095894, 0.0438843, 0.00138908, -0.0255201, 0.00320738, -0.00878598, - -0.00080174, -0.0433443, 0.00994268, 0.0442605, 0.0359996, 0.0168742, 0.0266655, -0.015031, - -0.0108812, -0.0152446, 0.0306542, -0.0408367, -0.0200448, -0.0219055, -0.00829048, -0.0299107, - 0.00286763, 0.0235611, 0.0619527, -0.00629094, -0.0349205, -0.0349401, -0.0219735, -0.0223126, - -0.0190521, 0.0522663, 0.0175953, -0.0569897, -0.0104982, 0.0112655, -0.0351287, -0.0102906, - -0.020444, -0.0218077, -0.0230517, -0.0435241, -0.00586253, 0.0243467, 0.023879, -0.031373, - 0.00837013, -0.0207039, 0.00489612, 0.0227467, 0.00429101, 0.0393884, 0.0267815, -0.0161819, - 0.00150121, -0.0100761, -0.0098574, 0.058646, 0.0332048, 0.0457629, 0.0414061, -0.000192158, - 0.0113764, -0.0175181, -0.00533787, 0.0196774, 0.0189207, 0.00725609, 0.0267366, 0.0193298, - -0.0244301, -0.0107281, -0.0358781, -0.0160337, 0.00206874, -0.0594505, -0.0192336, 0.00931433, - 0.0467891, -0.0349222, 0.0139858, 0.0436247, -0.00253807, 0.003628, 0.0264592, -0.0351408, - 0.0164997, 0.0299346, -0.0112387, -0.049508, -0.00414905, -0.0249483, 0.0164856, -0.0237207, - 0.0292897, 0.0463837, 0.00937479, 0.00963005, 0.0212507, 0.00877913, 0.0395294, 0.0149616, - 0.00562129, 0.0367735, 0.0154453, 0.0195445, 0.0171127, 0.0147879, 0.0285341, 0.0203778, - -0.0326154, 0.0306668, -0.00174604, 0.0345561, 0.0300234, 0.0564806, -0.0346435, 0.0125497 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p20(hatfit_yaw00_lev2_p20); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p20_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p21.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p21.mh deleted file mode 100755 index 68ae1d7..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p21.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p21.mh: - -#ifndef stasm_hat_yaw00_lev2_p21_mh -#define stasm_hat_yaw00_lev2_p21_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p21(const double* const d) // d has 160 elements -{ - const double intercept = -0.137371; - const double coef[160] = - { - -0.00236509, -0.00904201, 0.0482622, 0.0424488, 0.0565872, -0.0327647, 0.0570792, 0.0605706, - -0.0128233, -0.0312516, 0.0244441, 0.0247274, 0.0639721, 0.00583817, 0.051489, 0.0328103, - -0.0583378, -0.0380139, 0.0164458, 0.0317571, 0.0424508, 0.0116324, 0.0200214, 0.0590078, - -0.0306806, -0.0405981, -0.00652414, 0.00700168, 0.0290531, 0.0100532, -0.0120271, 0.0226684, - -0.0112358, 0.00504471, -0.0403399, -0.0153419, -0.0315861, 0.0165162, 0.00592848, 0.0118801, - 0.0344096, 0.0426078, 0.0536365, -0.0266674, -0.0599532, -0.0454601, -0.0507451, -0.0308664, - 0.00734138, 0.0751499, 0.00975933, 0.0111379, -0.00815451, 0.00552466, -0.0422937, -0.0288442, - 0.0361002, 0.0313253, -0.0258745, 0.000885331, -0.0193726, 0.00598507, -0.0090692, -0.00433989, - 0.0222115, -0.00361573, -0.0331707, -0.030468, -0.0244275, -0.00293196, 0.0322258, 0.0321031, - -0.0104847, -0.0303236, 0.00775746, -0.00491881, -0.00907141, 0.003709, -0.00123734, -0.0289989, - -0.0653049, -0.0366091, -0.0253084, -0.0427656, -0.0227685, -0.0113534, 0.0215344, 0.000436021, - 0.00641436, 0.011706, -0.0162955, -0.0391898, -0.0397683, -0.0374501, 0.0154038, 0.0331744, - 0.0310901, 0.0396808, -0.0369438, -0.0320113, -0.0365431, -0.0231747, 0.00364888, 0.0506336, - 0.00216586, 0.00920747, 4.29333e-06, -0.0160827, -0.0171278, -0.00370237, -0.0198794, 0.0251668, - -0.0425848, 0.0218599, 0.0425504, 0.0306612, -0.0116232, -0.030963, -0.0149334, -0.0128814, - 0.0366718, 0.0230035, -0.0129825, 0.0180202, 0.0178947, 0.0340951, 0.020461, 0.0255292, - -0.0281736, 0.00630762, 0.0147464, 0.0573448, 0.0240933, 0.0175706, -0.0213692, -0.022618, - 0.0105691, -0.0263521, -0.00420126, 0.0318987, 0.037116, 0.0379115, -0.00468657, 0.0204243, - 0.062086, -0.0372716, -0.0137724, -0.00837101, 0.0258512, 0.00812403, -0.0121935, 0.0185915, - 0.085514, -0.0301003, 0.0350227, 0.0149268, -0.00248905, 0.000797402, -0.0177684, -0.00654257 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p21(hatfit_yaw00_lev2_p21); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p21_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p22.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p22.mh deleted file mode 100755 index ce2b58b..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p22.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p22.mh: - -#ifndef stasm_hat_yaw00_lev2_p22_mh -#define stasm_hat_yaw00_lev2_p22_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p22(const double* const d) // d has 160 elements -{ - const double intercept = 0.0117697; - const double coef[160] = - { - -0.0178546, -0.00507232, -0.00537885, -0.0530472, -0.0562883, 0.0296127, -0.0548014, -0.000823639, - 0.015926, 0.00988827, 0.00843378, -0.0217375, -0.0385913, 0.0506703, -0.00520324, -0.0104024, - -0.000330601, 0.00924059, -0.0198405, -0.0429418, -0.0654977, 0.0470837, 0.0526988, -0.0131279, - 0.018024, 0.0390424, 0.0101875, 0.0238801, -0.00712584, 0.0535957, 0.0522608, 0.0102155, - -0.0226839, 0.0148612, 0.0226066, 0.0162535, -0.0285434, 0.0257833, 0.0471718, -0.0458596, - 0.000277075, 0.00620342, -0.0221676, -0.00461481, 0.0636075, 0.00634243, 0.00543572, 0.0105987, - 0.00897372, -0.0190757, -0.0626532, -0.0109301, 0.0265744, 0.00603106, 0.00160259, 0.0368236, - -0.00140971, -0.0150079, 0.0203465, 0.0625984, 0.0503313, -0.00942197, -0.0263503, 0.00727295, - -0.0242728, -0.0137839, 0.0411412, 0.0404335, 0.0170111, -0.0161308, -0.0472095, -0.00676737, - -0.0562529, -0.0229003, 0.0162299, -0.00866833, -0.00391738, -0.0337265, -0.0379058, -0.0230986, - -0.0253698, 0.00212937, -0.00591203, 0.0584039, -0.0129678, 0.00929018, -0.0232662, -0.0520017, - -0.0194294, -0.053814, -0.0157562, -0.00375296, 0.00727014, 0.0407859, 0.0240675, -0.0271583, - -0.0294064, -0.0145298, 0.0048997, 0.0142413, -0.0138544, 0.00606824, 0.0031445, -0.0401113, - -0.0231949, -0.024332, -0.0455487, -0.0347302, -0.0593698, 0.0135033, 0.0127122, -0.0139138, - 0.0174126, 0.010852, -0.00842191, -0.0195408, -0.0233637, -0.0315422, 0.0133297, 0.0701624, - 0.0198514, 0.0102554, 0.00782285, -0.0285294, 0.104508, -0.00569995, -0.0339732, 5.90907e-05, - 0.0168465, 0.00239644, -0.0307843, -0.0371566, -0.0234185, 0.00555857, 0.00332544, 0.0340692, - 0.0329612, 0.0234823, -0.000965576, 0.00522464, -0.00789185, -0.0021173, -0.00775234, 0.0164451, - 0.0117572, 0.0227539, 0.00524717, 0.00727862, 0.0275104, 0.0121523, -0.020892, 0.00706355, - -0.0286189, 0.0186815, -0.0136882, 0.051597, 0.0459619, 0.0245787, 0.0183904, -0.0107941 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p22(hatfit_yaw00_lev2_p22); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p22_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p23.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p23.mh deleted file mode 100755 index c4fb6cc..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p23.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p23.mh: - -#ifndef stasm_hat_yaw00_lev2_p23_mh -#define stasm_hat_yaw00_lev2_p23_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p23(const double* const d) // d has 160 elements -{ - const double intercept = 0.242677; - const double coef[160] = - { - 0.000810244, -0.0477374, 0.0151243, 0.0792231, 0.043766, 0.000172928, -0.075201, 0.00877918, - 0.015561, -0.0270447, -0.0130295, 0.0234744, 0.0498321, 0.0208237, -0.0278933, -0.0238794, - 0.00150402, -0.0242494, -0.0122306, 0.0299458, 0.0606751, 0.0493692, -0.0425213, -0.0218249, - -0.0176783, -0.027917, -0.0168181, 0.012025, 0.0191672, 0.0318289, -0.00528081, -0.0383298, - 0.0343618, -0.0327522, -0.0511107, -0.0318691, -0.00791867, 0.0300615, 0.0169818, -0.00332896, - 0.0518194, 0.0364182, -0.0303691, -0.0891738, -0.108781, -0.0286836, 0.128743, -0.0317241, - 0.0213597, 0.0567028, 0.04782, 0.02951, -0.0305566, -0.0470166, 0.0357719, -0.02154, - -0.0043653, 0.0199172, 0.0119268, -0.0062304, -0.0498879, -0.0364475, 0.0605531, -0.0401511, - -0.0210481, 0.0142989, 0.0170633, 0.0183518, -0.00906584, -0.00979833, 0.020948, -0.0205823, - -0.019643, -0.0211283, -0.0295402, 0.00603548, -0.0146838, 0.0189525, 0.131104, 0.065143, - -0.0461765, -0.0538791, -0.0125012, 0.0887613, 0.0478228, 0.1007, -0.0118974, -0.0282087, - -0.0355892, -0.0213169, 0.00692103, 0.0126706, 0.00220347, 0.00400608, -0.0346168, -0.0361555, - -0.0238473, -0.0127767, -0.00240078, 0.00380214, 0.013514, 0.00170848, -0.0348666, -0.0270525, - 0.0167837, 0.00526975, -0.0129707, -0.0673188, -0.0227539, -0.0285314, 0.0154404, 0.0236957, - -0.015565, -0.00533645, 0.017867, -0.014366, 0.000218929, -0.00643451, -0.0288213, -0.0261644, - -0.00861372, -0.0167076, -0.0179646, -0.0232297, -0.0938334, -0.0352466, -0.0660536, -0.0109894, - 0.00404062, 0.0396702, -0.00151376, -0.00703396, -0.029871, -0.0304434, 0.0106963, 0.0171258, - 0.00310458, 0.00955822, 0.00599693, -0.0508966, -0.0324266, -0.0448106, 0.0169098, 0.0349014, - -0.0102038, -0.00315048, -0.00164872, -0.0324597, 0.00105539, -0.014407, 0.0222697, 0.00200826, - -0.00475663, -0.0406545, 0.046732, -0.00708498, 0.01835, -9.08009e-05, 0.00659241, 0.0128114 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p23(hatfit_yaw00_lev2_p23); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p23_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p24.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p24.mh deleted file mode 100755 index df1912a..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p24.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p24.mh: - -#ifndef stasm_hat_yaw00_lev2_p24_mh -#define stasm_hat_yaw00_lev2_p24_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p24(const double* const d) // d has 160 elements -{ - const double intercept = -0.290285; - const double coef[160] = - { - -0.00391734, -0.0373713, 0.0296847, 0.0856366, 0.0680252, -0.0141347, -0.056779, -0.0639785, - -0.0345783, -0.0245752, -0.00601101, 0.0248511, 0.0549668, -0.0103632, 0.0176319, -0.0324854, - 0.0277483, -0.0459327, -0.0292241, -0.0201631, 0.018909, 0.0133223, 0.0299505, -0.0124793, - 0.0329833, 0.0094125, -0.0165424, -0.0104312, 0.00643773, -0.00469624, -0.0291954, 0.027616, - -0.0116333, -0.0426014, -0.00213712, -0.0557142, -0.00217717, -0.0468454, -0.0729048, -0.0447836, - -0.0144842, 0.0405147, 0.0584253, 0.0787079, -0.00218177, 0.00945018, 0.0511602, -0.043676, - -0.0145351, -0.00977988, 0.00578833, -0.0117745, -0.0274247, 0.0305891, 0.0285472, 0.0443184, - -0.050581, -0.0244408, -0.0281909, 0.0058221, 0.00330261, 0.0454032, 0.0898193, 0.0662471, - -0.0216286, -0.013524, 0.00069891, 0.0404074, 0.0169764, 0.0274654, 0.0459739, 0.0206503, - 0.0152971, 0.0228002, -0.0187678, 0.0247393, 0.0265094, 0.0373614, -0.0228019, -0.00311044, - 0.024944, 0.0275463, 0.0259327, -0.0799705, -0.082091, -0.0391279, 0.0124728, 0.033311, - 0.0487404, 0.0302635, 0.0271769, -0.0397876, -0.0402077, -0.0282224, -0.0541014, -0.00161753, - 0.0762442, 0.0214009, 0.04125, 0.00345349, -0.0299646, 0.00257046, -0.0469857, 0.0344531, - 0.0353149, 0.00880637, 0.0149039, -0.00547696, -0.022949, 0.0183402, 0.0309907, 0.0685378, - 0.0257068, 0.00948362, 0.022245, 0.00982482, -0.0307185, 0.0381942, 0.013981, 0.0019222, - -0.0234243, -0.0100864, 0.0290335, -0.0571687, 0.0195604, -0.0328423, 0.0471029, 0.0198729, - -0.00538831, -0.025955, 0.0340384, 0.0245018, 0.0335489, -0.00632678, 0.0119202, 0.00663611, - -0.029499, -0.0505394, 0.0100067, 0.0302057, 0.0131081, -0.00547969, 0.0186686, -0.00161012, - -0.00888793, -0.0391302, 0.00500464, 0.0354366, 0.0211353, 0.0240429, 0.00906457, -0.024416, - -0.000141046, 0.0398088, -0.0288674, 0.00956516, 0.0214225, 0.0303871, -0.0272088, 0.020084 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p24(hatfit_yaw00_lev2_p24); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p24_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p25.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p25.mh deleted file mode 100755 index d46ebfc..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p25.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p25.mh: - -#ifndef stasm_hat_yaw00_lev2_p25_mh -#define stasm_hat_yaw00_lev2_p25_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p25(const double* const d) // d has 160 elements -{ - const double intercept = -0.48192; - const double coef[160] = - { - 0.080069, 0.0254212, 0.0698047, 0.0172652, -0.0437604, 0.0533673, 0.0479497, 0.0707692, - 0.028919, 0.0218598, -2.02511e-05, 0.0177421, 0.0252949, 0.0957902, 0.0679331, 0.0477211, - 0.015103, -0.0350397, -0.0226795, -0.0309532, 0.0196631, 0.0314508, -0.0098721, 0.026174, - 0.00875322, -0.0102275, 0.00161853, -0.0244689, -0.00217672, -0.0258021, -0.0712362, -0.0247072, - 0.0169485, -0.00647493, 0.00909959, -0.00290298, -0.0018975, -0.00785463, 0.0170031, -0.00405343, - -0.0453393, -0.0316815, 0.00553392, 0.0467984, 0.013018, 0.00286137, 0.0641622, -0.0108293, - 0.0106426, 0.0659868, 0.0619154, 0.0683916, 0.00400672, -0.0316998, -0.0439017, -0.0531982, - 0.0227195, 0.0171857, 0.0149441, 0.0469003, 0.0509676, 0.0393706, 0.0125297, -0.0131728, - 0.00232523, -0.043456, -0.0545071, -0.0356114, 0.0232419, 0.00208771, -0.0142744, -0.0270206, - 0.00372195, -0.00702677, 0.00791299, -0.0125764, 0.016542, 0.000498141, 0.0112614, -0.00637377, - -0.0150705, -0.0661879, 0.000954137, 0.00578005, 0.0330873, 0.0207243, 0.0608699, 0.0118893, - 0.00744177, 0.0285924, -0.0143176, -0.0313716, 0.00486059, -0.0034366, -0.00624046, 0.0333263, - 0.00123777, 0.0434691, 0.0071437, -0.00841325, -0.00695282, -0.0243996, -0.0220286, -0.0228198, - 0.00216731, -0.0135737, -0.0088714, -0.0068874, 0.021012, -0.0209814, 0.00917872, 0.0201832, - 0.03023, -0.0125052, -0.00717798, 0.0265657, 0.0205816, 0.00318955, -0.00975955, 0.00153578, - 0.0342051, 0.0493117, -0.0221902, 0.0290784, -0.00464809, 0.060173, 0.170815, 0.107283, - -0.0163555, -0.0098902, -0.0120301, -0.0361608, -0.0128753, -0.0265617, -0.0919782, -0.0455791, - 0.0263706, 0.0432768, -0.00306199, 0.00291669, 0.0149201, -0.019987, -0.0236052, 0.0239656, - 0.0316036, 0.010793, 0.0203367, 0.0120483, 0.00752219, -0.0246316, 0.00150752, -0.0318513, - 0.00499792, -0.00242502, 0.03601, 0.000732988, 0.0184117, -0.0522315, 0.00194238, 0.0259723 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p25(hatfit_yaw00_lev2_p25); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p25_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p26.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p26.mh deleted file mode 100755 index 224cc7c..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p26.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p26.mh: - -#ifndef stasm_hat_yaw00_lev2_p26_mh -#define stasm_hat_yaw00_lev2_p26_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p26(const double* const d) // d has 160 elements -{ - const double intercept = -0.433871; - const double coef[160] = - { - -0.0129694, -0.0362405, 0.0456953, 0.00806892, 0.0332427, 0.0166249, 0.0858091, -0.021537, - 0.0121069, -0.00958319, 0.00183791, -0.0445408, -0.00691424, 0.0149946, 0.0484259, 0.0455105, - 0.042137, -0.000148501, 0.0187582, 0.000764644, 0.00677489, 0.00827639, -0.0203425, 0.0730549, - 0.0487964, -0.0258577, -0.0323376, 0.0132528, 0.0104709, 0.0293409, 0.0351007, 0.0678395, - 0.0204265, -0.0113785, -0.0333476, -0.0144913, -0.0179195, 0.0584139, -0.0229801, -0.0179397, - 0.0227342, 0.0295118, 0.0340656, -0.100074, -0.0846886, -0.0443842, 0.0208676, -0.00939233, - 0.000832701, 0.0194225, 0.0593964, 0.0382799, -0.010556, -0.0222984, -0.00961312, -0.0178815, - 0.00109992, 0.00598413, 0.0445235, 0.03007, -0.0509595, -0.0385867, 0.00564818, -0.0411887, - -0.0344969, -0.0066254, 0.061847, 0.0286021, -0.0345655, 0.00151497, -0.0380565, -0.0705052, - 0.00740955, 0.020345, -0.00978735, 0.00859556, -0.0107584, 0.0208075, 0.0526561, 0.0167182, - -0.00683639, -0.00606006, -0.0112797, 0.010233, 0.0705434, 0.00259656, 0.0712719, 0.0468567, - 0.00622382, -0.0110342, -0.026088, 0.0169622, 0.036032, 0.00953248, 0.00938651, 0.0240754, - 0.00729027, -0.0263141, -0.0345428, -0.00845764, 0.0462167, 0.0211959, 0.0531272, 0.0379018, - 0.0424938, 0.0160658, -0.00649713, 0.021857, 0.0325163, -0.0139418, 0.00759465, 0.0524858, - -0.0168994, 0.0164893, 0.022728, 0.0323317, 0.0331378, 0.00548303, -0.0425947, -0.0101325, - -0.0124091, -0.00910286, -0.00862779, -0.049988, 0.0218122, -0.0166035, 0.0570387, -0.0150303, - -0.0109328, 0.0141641, 0.0296191, 0.00220599, 0.00667076, 0.00647957, 0.00102784, -0.02686, - -0.0170128, 0.019061, 0.00824237, 0.0392189, 0.00182692, 0.03255, 0.0341041, 0.0186872, - 0.000108326, -0.00739809, -0.0118376, 0.00302759, 0.00874007, 0.0298719, 0.0378712, 0.0260831, - 0.0143321, 0.0357566, -0.0302584, -0.0210763, -0.00892332, -0.0329427, -0.0798826, -0.0461567 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p26(hatfit_yaw00_lev2_p26); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p26_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p27.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p27.mh deleted file mode 100755 index 5225077..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p27.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p27.mh: - -#ifndef stasm_hat_yaw00_lev2_p27_mh -#define stasm_hat_yaw00_lev2_p27_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p27(const double* const d) // d has 160 elements -{ - const double intercept = -0.306931; - const double coef[160] = - { - 0.0262349, -0.0455742, -0.0345448, 0.0296043, -0.0368644, 0.105961, 0.0917271, -0.0349775, - -0.0118083, 0.00226836, 0.0315588, 0.0651592, 0.0192105, 4.45677e-05, 0.0111032, -0.0301818, - -0.0235868, -0.026485, -0.00434409, 0.0180196, 0.0351823, 0.0192955, 0.0241057, -0.0337034, - 0.00146458, -0.019946, -0.00849322, -0.0249317, 0.00794208, 0.00548202, 0.0600154, 0.0171288, - 0.00478391, 0.0128435, 0.0206005, -0.0152299, -0.00785918, -0.000263394, 0.0517713, 0.0416178, - -0.0400955, -0.0371783, 0.0589854, 0.0327506, -0.0189932, -0.0248052, -0.0847246, -0.0425839, - -0.0294927, 0.00193715, 0.0270183, -0.0242868, -0.02323, -0.0221412, -0.0299839, -0.0253512, - 0.0019324, 0.032574, 0.011557, -0.0437154, -0.0286583, -0.028798, 0.0130759, -0.00196222, - 0.00783066, 0.0246079, 0.0314151, -0.0433835, -0.0152253, -0.00376657, 0.0137829, -0.0141508, - -0.0185663, -0.0270969, 0.0763604, 0.032464, -0.00457786, -0.00714493, -0.00839772, -0.0471893, - -0.0304596, 0.0113046, -0.0575614, -0.04895, -0.0555437, -0.0118463, -0.0287419, -0.0226617, - 0.0476703, 0.0541762, -0.0129649, -0.0181623, -0.00457971, 0.0050365, 0.048555, 0.0856549, - 0.00916771, 0.0128563, 0.00436323, -0.00929648, 0.00355898, -0.0264574, 0.0298014, 0.048906, - 0.00256579, -0.0139028, 0.0214163, 0.0158788, 0.0410612, -0.0213137, 0.0133411, 0.0239583, - 0.0212723, -0.014747, -0.0303819, -0.00101849, 0.0202947, -0.00473982, 0.000768866, 0.0634918, - 0.0272171, 0.0606848, -0.0083977, 0.0323225, 0.00269824, 0.0622742, -0.0492059, 0.0108266, - -0.0245984, -0.00360764, 0.0335002, 0.0621516, 0.0580589, 0.0152602, 0.062728, 0.00257798, - 0.00265603, -0.0211292, -0.00126619, 0.0229256, 0.0381987, -0.00541837, 0.02072, -0.0247069, - -0.00978707, 0.00263283, -0.00619977, -0.0417827, 0.00227379, -0.0141621, 0.0218684, -0.0106956, - -0.0028489, 0.0407164, 0.00786468, 0.00379042, 0.0117465, -0.002769, 0.00417461, 0.00823767 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p27(hatfit_yaw00_lev2_p27); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p27_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p28.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p28.mh deleted file mode 100755 index 6f76b98..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p28.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p28.mh: - -#ifndef stasm_hat_yaw00_lev2_p28_mh -#define stasm_hat_yaw00_lev2_p28_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p28(const double* const d) // d has 160 elements -{ - const double intercept = -0.911282; - const double coef[160] = - { - 0.0238533, 0.0397944, -0.00203305, -0.0376938, -0.0576054, 0.0102932, -0.00350282, -0.0347154, - 0.0114035, 0.0375278, 0.0576787, -0.011191, -0.00113305, -0.00862682, 0.015185, -0.00437239, - 0.0307686, 0.0196598, 0.0440094, -0.0379801, -0.0141113, -0.0120627, 0.0393276, 0.0134787, - 0.0370115, 0.000457543, 0.0603269, -0.00987555, 0.0105079, -0.00996932, 0.019966, 0.0060897, - 0.0304525, -0.0284774, 0.0406466, 0.0226233, -0.00374561, -0.00344988, -0.0165723, 0.00456927, - 4.77179e-05, -0.0215519, -0.0611072, -0.0461596, -0.0359187, 0.00475347, 0.0589447, 0.0603199, - 0.015611, 0.0302667, 0.012469, -0.0101909, 0.0232281, -0.058931, 0.0315346, 0.0487677, - -0.0218948, 0.0241924, 0.0431596, 0.00191124, 0.0400794, -0.0415914, 0.00944237, 0.000643755, - -0.032809, 0.013452, 0.0403323, 0.0361078, 0.0355794, -0.0115256, -0.037264, -0.031884, - -0.042228, -0.0211665, -0.0310247, -0.0319164, 0.00456799, 0.0271444, 0.0618117, 0.0108998, - -0.0234185, 0.0129911, 0.00094152, 0.0555492, 0.0407842, 0.0751483, -0.00163825, -0.0359983, - -0.062111, -0.018929, 0.0249147, 0.00943173, 0.0418229, -0.00747328, 0.0690318, -0.0227955, - -0.0198671, -0.00218184, 0.0446939, 0.00229586, 0.053604, -0.0153666, 0.0320683, 0.0248043, - 0.00287477, 0.00778391, 0.0331717, 0.00229524, 0.00562737, 0.0154625, 0.0164591, 0.0400992, - 0.0425685, 0.000193887, 0.00597018, -0.0136202, -0.00538856, 0.0131999, 0.0261254, 0.123714, - 0.0643788, 0.0452873, 0.0716094, 0.159596, 0.0741898, 0.056755, 0.0376108, 0.0507256, - 0.0697902, -0.0516756, 0.0169421, 0.0447843, 0.0417189, 0.00326605, 0.00592841, -0.0132248, - 0.0556151, 0.0180181, -0.0209075, -0.0826685, -0.0280024, 0.025601, -0.00580471, -0.0237519, - 0.00913779, 0.0706989, 0.0126799, 0.00300497, -0.00981312, -0.0168915, -3.9095e-05, -0.0625823, - -0.00544378, 0.0403442, 0.0135646, 0.0797236, 0.0384641, 0.0289419, 0.0494675, -0.00505185 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p28(hatfit_yaw00_lev2_p28); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p28_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p29.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p29.mh deleted file mode 100755 index 2fe1275..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p29.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p29.mh: - -#ifndef stasm_hat_yaw00_lev2_p29_mh -#define stasm_hat_yaw00_lev2_p29_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p29(const double* const d) // d has 160 elements -{ - const double intercept = -1.05057; - const double coef[160] = - { - 0.0182463, -0.0164278, 0.0793519, 0.0203683, 0.0103424, -0.00468872, 0.00376642, 0.00789167, - 0.0365452, -0.0296432, 0.0316379, 0.0281642, 0.0264598, 0.00896892, 0.0389974, 0.00696295, - 0.0210673, -0.0165715, 0.0249197, 0.0415189, 0.0234516, 0.0039805, 0.0282824, 0.019377, - 0.0136788, 0.0078962, 0.0400487, 0.0247874, 0.0484899, -0.00169232, 0.0157129, 0.00810864, - 0.00254052, 0.004636, 0.0127591, 0.023789, 0.00420449, -0.0383569, -0.0112375, 0.0181937, - 0.0123328, -0.00178604, -0.0273803, -0.0125259, -0.00871021, 0.00392074, 0.0347972, -0.00844315, - 0.0058953, 0.0156757, 0.029977, 0.014578, 0.00275342, 0.000159312, -0.00132859, -0.0674545, - -0.0131045, -0.0125819, 0.0371212, 0.0165592, 0.0301665, 0.0350271, 0.0262243, -0.0768821, - -0.0251874, -0.00765544, 0.0265035, 0.022286, 0.0165599, 0.0398895, 0.0171191, -0.00820294, - -0.0258373, -0.0408784, -0.0487514, -0.0316219, 0.0193729, 0.05273, 0.0415007, 0.0334458, - 0.00916367, 0.00382008, 0.0153757, 0.00359487, -0.0514642, 0.0857362, 0.0547107, 0.00137235, - 0.0347672, 0.00346709, 0.00981953, 0.0124956, -0.00603081, -0.0447948, 0.0584001, -0.0200425, - 0.0510406, 0.031761, 0.0119073, -0.0177227, -0.041249, -0.0484298, 0.0517662, 0.0266991, - 0.0669104, 0.0763834, 0.0368872, 0.0240411, 0.0134583, -0.0205295, 0.0445935, 0.0713025, - 0.0204831, 0.0253047, -0.0104218, -0.0282662, -0.0465509, 0.013753, -0.0597406, 0.0126048, - 0.0241487, 0.0263117, 0.034671, 0.116738, 0.0671411, 0.00670641, 0.042299, 0.0235448, - 0.0144205, -0.0647902, 0.0507454, 0.00526156, 0.0375987, 0.00463127, -0.0314179, -0.0293136, - 0.0496903, 0.0400285, -0.0293638, -0.0647404, 0.0175175, 0.0611509, 0.0215046, 0.0172993, - -0.0101004, 0.0569459, -0.00413199, 0.0193916, 0.0152643, 0.00874664, -0.0093991, -0.0254695, - -0.00236696, 0.0810356, 0.085522, 0.09974, 0.0918543, 0.0265118, 0.081347, 0.0256086 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p29(hatfit_yaw00_lev2_p29); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p29_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p30.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p30.mh deleted file mode 100755 index 6244251..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p30.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p30.mh: - -#ifndef stasm_hat_yaw00_lev2_p30_mh -#define stasm_hat_yaw00_lev2_p30_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p30(const double* const d) // d has 160 elements -{ - const double intercept = -0.158421; - const double coef[160] = - { - -0.00843022, 0.013809, -0.00794464, -0.0280121, -0.0255196, -0.0195118, 0.075042, 0.0257987, - 0.02871, 0.014171, -0.0372592, -0.0380695, -0.0431202, 0.0171225, 0.022328, 0.055504, - 0.0265488, -0.0289131, -0.0281819, -0.0412153, -0.0759227, -0.0295684, 0.0107261, 0.0315409, - 0.0272802, -0.0116362, 0.0206321, 0.0109335, -0.0183937, -0.0122625, -0.0481045, 0.0309332, - 0.0608065, 0.024013, 0.0347018, -0.00428828, -0.0368289, -0.0443961, -0.136547, 0.0201979, - 0.0855011, 0.0571143, -0.0375799, 0.016459, 0.047898, 0.0619319, -0.00773834, 0.0441075, - 0.0146869, 0.0451598, 0.0725738, 0.132561, 0.101115, 0.0209962, 0.0323263, -0.0114213, - 0.0252005, 0.0741543, -0.0264473, 0.0168047, 0.00380724, 0.025259, 0.0513686, 0.0286347, - -0.0300812, 0.0154615, 0.0249453, 0.0434057, 0.0262186, 0.00797694, 0.0215338, -0.0195746, - 0.0452787, -0.00701455, -0.0229841, 0.0159123, -0.00454588, -0.0185701, -0.0208287, -0.097003, - -0.031168, 0.0169527, -0.0343204, -0.0604752, -0.0506117, -0.00868898, 0.0581987, 0.0346967, - -0.0299566, -0.0487133, 0.0231685, -0.0172943, -0.0444626, -0.0258802, -0.0260437, 0.00632427, - -0.0239597, -0.00391656, 0.0107738, -0.00493213, -0.000692711, 0.0458643, -0.0185572, 0.00836634, - -0.0305402, 0.0256927, 0.00675199, 0.0139364, 0.0439735, 0.0283794, -0.0130652, 0.00275794, - 0.0312156, 0.0296386, -0.0355726, -0.0134245, -0.020942, 0.00984381, -0.00773278, -0.023931, - -0.0300758, -0.0669045, -0.0276446, -0.00646776, -0.00236777, 0.0540602, -0.016052, -0.0336337, - -0.0154917, 0.00563903, 0.0243744, -0.00992392, 0.0268612, 0.00221559, -0.0196216, -0.0194976, - -0.0281026, 0.0153356, 0.0276602, 0.00143168, 0.0411615, -0.0150804, -0.00796113, -0.00828842, - -0.0284587, 0.0130893, 0.0282914, 0.0170294, -0.0129933, -0.0233002, 0.00116514, -0.0143735, - -0.025027, 0.0174324, -0.0541421, -0.0264543, -0.0165433, 0.00211273, 0.0148214, -0.0422046 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p30(hatfit_yaw00_lev2_p30); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p30_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p31.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p31.mh deleted file mode 100755 index 23c14ba..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p31.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p31.mh: - -#ifndef stasm_hat_yaw00_lev2_p31_mh -#define stasm_hat_yaw00_lev2_p31_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p31(const double* const d) // d has 160 elements -{ - const double intercept = -0.528655; - const double coef[160] = - { - -0.066406, -0.0431597, 0.0637768, 0.0370243, -0.00068307, -0.0259349, 0.0159448, -0.136056, - -0.0293552, -0.0403311, 0.0230454, 0.0283, 0.0388175, 0.046244, 0.04128, -0.00817411, - -0.0405367, -0.0406695, 0.0112241, 0.0182357, 0.0367736, 0.0285879, -0.00759859, -0.00266288, - -0.00139768, -0.0344043, 0.00392997, 0.0241541, 0.0412715, 0.0280483, 0.0292519, 0.0165686, - -0.00435702, -0.0265016, -0.0453606, -0.00250928, 0.0196911, 0.00655709, -0.0367992, 0.0509089, - 0.031559, 0.00575523, -0.0247191, -0.0486219, -0.0750928, -0.00041327, 0.0747566, 0.0146888, - 0.0646145, 0.054396, -0.0192251, -0.0412112, -0.0324459, -0.0705477, 0.0119363, 0.0347726, - 0.106872, 0.102241, 0.0271929, 0.00171756, -0.0470992, 0.00978825, 0.0508835, 0.0792254, - 0.0360194, 0.0367165, -0.0314265, -0.044109, -0.0814634, -0.0126653, 0.0191743, 0.0371767, - -0.0164398, 0.0210203, 0.0384518, 0.0141576, -0.0197071, -0.0172753, -0.101494, -0.0619908, - 0.0851666, -0.0212017, 0.0488603, 0.0448861, 0.118305, 0.0508748, -0.0450723, 0.0224068, - 0.0187996, 0.0203916, -0.0541929, -0.055438, -0.0193445, 0.0425345, -0.00569827, -0.0287024, - -0.0268724, 0.0050541, 0.0470904, 0.103708, 0.10632, 0.0373919, -0.00797826, -0.0303334, - 0.0272002, 0.0300674, 0.0210971, 0.0667653, 0.0624621, 0.0579313, 0.0607208, 0.0280428, - 0.00218957, 0.0585137, -0.00491464, 0.0042163, -0.00801497, 0.00611642, 0.00430601, -0.000424544, - -0.0332441, 0.000448628, 0.107588, -0.0215919, -0.0459838, -0.0180594, -0.00837773, 0.0129875, - -0.0322999, 0.0200498, -0.0108524, -0.0415339, 0.00357464, 0.0119421, 0.00847187, 0.0184128, - -0.0147528, -0.0172094, 0.00718621, -0.0272791, -0.0360428, 0.000881667, 0.018738, 0.0129722, - -0.033975, -0.0226858, 0.0149901, -0.00787227, 0.0079924, -0.0160559, -0.0223671, 0.0172656, - -0.0396059, 0.0749142, -0.00781715, -0.0241655, 0.0206719, 0.0288847, 0.00349044, 0.000974065 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p31(hatfit_yaw00_lev2_p31); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p31_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p32.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p32.mh deleted file mode 100755 index b26c2d0..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p32.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p32.mh: - -#ifndef stasm_hat_yaw00_lev2_p32_mh -#define stasm_hat_yaw00_lev2_p32_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p32(const double* const d) // d has 160 elements -{ - const double intercept = -0.609531; - const double coef[160] = - { - 0.0172974, -0.0195856, 0.0167722, 0.00276741, -0.00863195, -0.00587176, -0.00695058, 0.00103168, - 0.0252518, -0.00719318, 0.0691906, 0.0363376, 0.0383578, 0.00307675, -0.000676522, -0.024943, - -0.0442041, -0.0318909, 0.034783, 0.0447597, 0.0655272, 0.0380396, -0.00974726, -0.0836417, - -0.0233229, -0.039634, 0.0247777, 0.0296812, 0.0518156, 0.0525699, 0.0183891, -0.0139419, - -0.020914, -0.0524356, -0.0490225, 0.00449505, 0.0358374, 0.0320777, 0.0296459, 0.0310532, - -0.0330381, -0.00897001, -0.00230202, -0.0116356, -0.0561876, 0.0508519, 0.0528285, -0.0220447, - -0.0139597, 0.00648959, -0.0200131, -0.0142853, -0.0548651, -0.0256694, 0.0602749, -0.0456561, - 0.0398712, 0.0362381, 0.0279318, -0.028746, -0.0830828, -0.0523895, 0.0622793, 0.0371123, - 0.0490164, 0.0442704, 0.00661728, -0.00335947, -0.0317967, -0.0174821, 0.0718556, 0.0818157, - 0.0211283, 0.02002, -0.0133365, -0.026983, -0.0673874, 0.0154517, -0.063193, -0.00218304, - 0.0374297, 0.0487677, 0.0544543, 0.0878194, 0.0336702, 0.0359337, 0.0358279, -0.0204046, - 0.0455341, -0.0529557, 0.00531201, 0.0209168, 0.0554839, 0.00579068, -0.0201319, -0.0282061, - 0.0528097, 0.00506556, -0.057539, -0.0366376, 0.0122283, 0.040994, -0.021031, 0.0168281, - 0.00323699, 0.0498915, -0.00517948, 0.0202621, 0.0198603, -0.00465672, -0.0212471, -0.0241135, - 0.0386897, 0.0834197, 0.0564583, 0.0766421, 0.0567623, 0.0541306, 0.038094, 0.006473, - 0.00720124, 0.00299913, 0.00695718, 0.0279686, 0.00285145, -0.0329046, -0.0212397, 0.0685372, - 0.0195813, -0.0237838, 0.0724148, 0.00519205, 0.0182673, 0.00552493, 0.00626116, 0.0171959, - -0.00884863, 0.0247297, 0.0399036, -0.0589063, 0.00735654, 0.014987, 0.00327186, -0.0123504, - -0.0107126, -0.00717319, -0.0262902, -0.0281028, 0.00582021, 0.0159987, 0.0436614, 0.0026328, - -0.0659616, 0.0210302, 0.0281372, 0.0251827, 0.0175415, -0.00426784, -0.0135234, 0.0161755 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p32(hatfit_yaw00_lev2_p32); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p32_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p33.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p33.mh deleted file mode 100755 index 545ff33..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p33.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p33.mh: - -#ifndef stasm_hat_yaw00_lev2_p33_mh -#define stasm_hat_yaw00_lev2_p33_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p33(const double* const d) // d has 160 elements -{ - const double intercept = -0.134494; - const double coef[160] = - { - 0.00347821, -0.012647, -0.0365701, -0.0502767, -0.0744315, 0.043386, -0.0109632, 0.0408712, - 0.0179905, 0.012047, 0.00764653, 0.0153773, -0.00873694, -0.0365147, -0.0151809, 0.00267504, - -0.0168584, -0.0186926, 0.0209671, -0.00799703, -0.00927319, -0.0278799, -0.00988936, -0.0523256, - -0.0294883, -0.00538619, 0.068079, 0.0330258, 0.0310367, -0.0115363, 0.0173, -0.0956444, - -0.057032, -0.064803, -0.0476392, -0.00186673, 0.0208305, 0.0656317, 0.076984, -0.00418163, - -0.0342102, -0.0295482, -0.0482665, -0.00800121, 0.00782046, 0.0959585, 0.00216746, -0.032154, - 0.00264983, 0.00756613, 0.0352023, -0.0055577, -0.0268146, 0.0481587, 0.0554458, 0.0308655, - 0.00604261, 0.0099717, 0.0418676, 0.0370696, -0.0259611, 0.00845801, 0.0177592, -0.053832, - 0.0574967, -0.00604871, -0.0470008, -0.03597, -0.0512817, -0.0258823, 0.0508364, 0.0315381, - 0.0494617, 0.0662095, 0.0300199, -0.00536518, -0.0187981, -0.0615925, 0.0101557, 0.0309746, - 0.00546111, 0.0467793, 0.0561231, 0.0115831, 0.044103, 0.0122641, -0.0163395, 0.0139846, - -0.00558476, -0.00304077, -0.0153255, 0.0488837, 0.0226645, 0.00507803, -0.00177007, 2.87077e-05, - 0.0540572, -0.0334947, 0.0243881, 0.0453923, 0.0752189, -0.00790317, -0.0371975, -0.022949, - 0.013664, -0.0464787, -0.0117823, -0.0402601, 0.0423795, 0.0570048, -0.0240886, -0.0248997, - 0.00782879, 0.0796069, -0.0435097, 0.00644649, 0.0344214, 0.050919, 0.00223326, -0.0633793, - -0.0164302, 0.0151376, 0.0285752, 0.0378886, -0.0433041, -0.0629131, -0.0664811, -0.01045, - 0.00204687, 0.00533082, -0.0442703, -0.0276485, -0.0263146, 0.00585577, 0.041874, 0.0404161, - 0.0136317, -0.00439693, 0.0465754, 0.0266685, -0.0134835, -0.0163303, 0.0257163, 0.0497645, - -0.0267151, -0.00359233, 0.0465391, -0.052706, -0.0343048, -0.054638, -0.0428177, -0.0114796, - -0.0324168, 0.0278659, 0.0114471, -0.0448499, -0.00375096, 0.0193088, 0.00295261, 0.0724012 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p33(hatfit_yaw00_lev2_p33); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p33_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p34.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p34.mh deleted file mode 100755 index 9f03ee3..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p34.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p34.mh: - -#ifndef stasm_hat_yaw00_lev2_p34_mh -#define stasm_hat_yaw00_lev2_p34_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p34(const double* const d) // d has 160 elements -{ - const double intercept = -0.0298145; - const double coef[160] = - { - -0.00712763, -0.0168461, -0.0649287, -0.0964368, -0.0396287, 0.0355124, -0.0932723, -0.0232354, - 0.0015701, 0.000841849, -0.0528588, -0.0779626, -0.0767684, 0.0536808, 0.021654, 0.0115116, - -0.0244025, 0.0129733, 0.00882587, -0.0296528, -0.0752668, 0.0202583, 0.0284596, 0.0038893, - 0.0131413, 0.0202238, 0.0632173, 0.00876749, -0.00538983, 0.00914925, 0.0317333, -0.0110394, - 0.0197249, -0.0156403, -0.0123602, -0.00436375, -0.0205289, -0.0380516, 0.0528582, -0.0722589, - 0.00167284, -0.0296978, -0.0278581, 0.0860811, 0.109771, -0.0337156, -0.0290938, -0.000718443, - -0.0306613, 0.0175718, 0.0508415, 0.0882596, 0.0906046, 0.0451894, 0.0249118, 0.0101467, - 0.0197867, 0.0163201, 0.0461364, 0.0497436, 0.0735869, 0.0261005, 0.0272832, 0.00319717, - 0.0133939, -0.033167, 0.0138665, 0.076355, 0.0436984, -0.0193582, 0.00494415, 0.00794336, - 0.0402147, -0.0356436, -0.0325444, -0.0406939, 0.0445568, 0.0529566, -0.0480436, -0.0361198, - 0.0239785, -0.022601, 0.004583, 0.0357781, -0.024916, -0.0673301, 0.0300021, 0.0233541, - 0.00131507, 0.020674, -0.0172261, -0.0378908, -0.0281607, -0.0362968, -0.0120887, 0.00251283, - -0.0151418, 0.0139788, 0.00226799, -0.0405325, -0.0372183, -0.0239591, 0.000689374, 0.00728419, - 0.0109032, 0.00117639, 0.0110613, 0.0284659, -0.00405134, 0.0224151, 0.0497437, 0.024467, - -0.0197926, 0.0191099, 0.0560234, -0.015999, 0.00349098, -0.0136769, -0.00855267, 0.0378745, - -0.0402489, 0.0187419, 0.00346364, 0.00200766, -0.051981, 0.0314351, -0.0370516, -0.031647, - 0.00269862, -0.0117079, -0.0113778, 0.0323024, 0.000887866, 0.0206333, 0.00573009, 0.0182514, - 0.0140522, -0.00215495, 0.00969224, 0.0445658, -0.0164545, 0.00403198, -0.0327273, 0.00355842, - 0.00186056, -0.0365137, 0.001591, -0.0147659, -0.0152249, -0.028393, -0.0295118, 0.00309647, - 0.0177405, -0.022215, 0.0110218, -0.0373177, -0.0264965, 0.0153762, -0.0577899, -0.0217735 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p34(hatfit_yaw00_lev2_p34); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p34_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p35.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p35.mh deleted file mode 100755 index d1cc4ef..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p35.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p35.mh: - -#ifndef stasm_hat_yaw00_lev2_p35_mh -#define stasm_hat_yaw00_lev2_p35_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p35(const double* const d) // d has 160 elements -{ - const double intercept = -0.0569861; - const double coef[160] = - { - -0.0452166, -0.00120985, -0.0642733, -0.0433011, -0.0143067, 0.187839, -0.00428658, -0.00650242, - 0.0394361, 0.0211488, 0.0687109, 0.000483339, -0.0199071, 0.0220808, 0.0780823, 0.0556368, - 0.0586077, -0.0237231, 0.030264, 0.0372592, 0.0211708, -0.00451533, -0.0238338, -0.0808726, - 0.0375287, -0.0425377, -0.0537355, -0.0160995, 0.0191792, 0.0143375, 0.0323217, -0.0160405, - 0.0641634, 0.041519, -0.0194647, 0.00845982, -0.00460267, -0.00117591, 0.00773437, 0.00707627, - 0.0137806, 0.0537537, 0.116498, 0.0836869, 0.042555, -0.128439, -0.0448244, -0.0201245, - -0.0354514, -0.0320875, -0.0596862, 0.0322179, 0.0248905, 0.00867726, 0.0026904, 0.00215038, - 0.0176725, -0.0278685, 0.0647107, 0.0700868, 0.0723984, 0.013583, 0.0189065, 0.0296625, - -0.0125392, -0.0363014, 0.0524765, -0.0592515, -0.00260219, -0.00356819, -0.0465201, 0.00398317, - -0.0148738, 0.0892113, -0.00931875, -0.0290633, 0.0459755, 0.0466378, 0.0537626, 0.0155148, - 0.00157531, -0.0144777, -0.0566745, -0.0333648, -0.0635901, -0.00229455, -0.0108516, 0.0337369, - 0.0213568, 0.0212246, 0.0134308, -0.0349036, -0.0518544, 0.00736802, 0.00410732, -0.00219179, - 0.00875987, -0.00275223, 0.00445113, -0.0208322, -0.0406893, -0.0105535, 0.0171398, 0.0333355, - 0.0272341, 0.016625, -0.0150876, -0.0448088, -0.0305251, -0.00475766, 0.0282755, 0.0229124, - -0.0562676, -0.00235707, 0.00318367, -0.0375074, -0.036737, -0.0121753, -0.0456456, 0.0088149, - -0.0129207, -0.00481494, 0.0121743, 0.0636755, -0.00218512, -0.0264368, -0.0426944, -0.0331295, - -0.000268162, -0.0303325, -0.0100597, 0.0201173, -0.0187584, -0.0106597, -0.0162527, 0.00213507, - 0.000782108, -0.0446817, 0.0291512, -0.00622929, -0.032462, -0.00722358, -0.015956, -0.017508, - -0.00442869, -0.0616177, 0.00842057, -0.0221374, 0.00273545, 0.0370507, -0.0110599, -0.00349913, - -0.0150104, -0.00249232, 0.0607886, 0.00642015, 0.0137252, -0.00537359, -0.0407976, -0.0264226 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p35(hatfit_yaw00_lev2_p35); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p35_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p36.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p36.mh deleted file mode 100755 index cfe7474..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p36.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p36.mh: - -#ifndef stasm_hat_yaw00_lev2_p36_mh -#define stasm_hat_yaw00_lev2_p36_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p36(const double* const d) // d has 160 elements -{ - const double intercept = -0.15802; - const double coef[160] = - { - 0.0486285, 0.0186809, 0.0610722, 0.0591576, 0.0388397, 0.0574882, 0.0641434, 0.0121667, - 0.0637028, -0.0778575, 0.0320216, 0.00871883, 0.0568133, -0.0225462, -0.015418, -0.0783217, - 0.0842919, -0.0221539, -0.0830029, -0.0634517, -0.0171046, 0.0330657, -0.00201285, 0.0145844, - 0.0509864, 0.0483077, -0.019694, -0.00253477, 0.00980955, -0.0071178, -0.00909895, 0.0133682, - 0.0367686, 0.0816382, 0.0405787, 0.0708277, 0.0300118, 0.0263414, 0.0264027, 0.0197782, - 0.0128342, 0.013998, 0.0557143, 0.0705258, 0.0274475, -0.0401644, -0.0111443, 0.0419802, - -0.0182621, -0.0129423, 0.0528886, 0.0155429, 0.0246531, -0.000775137, 0.00772486, 0.0353004, - -0.0283473, 0.0586058, 0.0423699, -0.0620206, 0.0120028, 0.0105429, 0.0076168, 0.00933035, - -0.0370865, 0.0248185, -0.0452911, -0.0178737, -0.00556646, 0.0268091, 0.0552079, 0.0282525, - -0.0621828, 0.0145903, 0.0643291, 0.0572874, 0.0105461, -0.0216231, -0.0403918, -0.0157246, - 0.0215985, -0.0416195, -0.0175289, -0.0418673, -0.0733202, 0.019949, -0.00658043, 0.0100759, - 0.0164112, -0.00890375, 0.00470579, -0.0475732, -0.0369, 0.00252177, 0.0184815, -0.00362862, - 0.0292086, -0.0130186, -0.0116424, -0.0283327, -0.0278432, 0.0182052, 0.0289034, 0.0470675, - -0.00995198, -0.0356322, -0.000162729, -0.0194088, -0.00831224, -0.00612526, -0.0350988, -0.0230069, - -0.0117491, -0.000818398, 0.015496, -0.0512162, -0.0297679, -0.00224479, -0.0714257, -0.0113509, - -0.043043, -0.0334773, 0.0407909, 0.0321586, -0.00719895, -0.0271855, -0.0296371, -0.0375253, - -0.000821446, -0.0586061, 0.0237793, -0.0243459, -0.00034366, 0.00762769, -0.00338772, 0.0103057, - -0.0559739, -0.0361567, 0.0295625, -0.0245679, 0.0341336, 0.0163618, -0.0120698, -0.034086, - -0.00365451, 0.00950689, 0.021756, -0.000354534, 0.0156633, 0.0315098, -0.00492233, 0.0151073, - -0.0510463, 0.0232019, 0.0325111, 0.0112793, 0.0388108, -0.0584284, -0.00696607, 0.000317936 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p36(hatfit_yaw00_lev2_p36); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p36_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p37.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p37.mh deleted file mode 100755 index 0998e72..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p37.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p37.mh: - -#ifndef stasm_hat_yaw00_lev2_p37_mh -#define stasm_hat_yaw00_lev2_p37_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p37(const double* const d) // d has 160 elements -{ - const double intercept = -0.357641; - const double coef[160] = - { - 0.090426, -0.0479457, -0.0400332, -0.0212107, 0.0130497, 0.0347203, 0.0603362, -0.00201685, - 0.0617162, 0.0154297, -0.0587526, -0.0498464, -0.0406109, -0.0444513, -0.0101726, 0.00113316, - 0.0643447, 0.0712631, 0.0518715, 0.0514074, 0.0424869, 0.0176295, -0.000344309, 0.0428262, - 0.0942759, 0.0405735, -0.0464468, -0.0186385, -0.0142453, -0.00193271, 0.0862762, 0.081217, - -0.016825, 0.0197965, 0.0147129, 0.0161728, -0.0757111, -0.0559225, -0.115652, -0.0622848, - -0.00501507, 0.0123832, 0.15875, 0.0352441, 0.0686156, -0.00259391, -0.00970851, 0.0319497, - 0.0172795, 0.0454753, -0.0590746, -0.0806317, 0.00137259, 0.049291, 0.0217576, 0.0280549, - -0.0351055, 0.0234457, 0.0331394, 0.0432127, 0.0247829, 0.0144538, 0.0285027, 0.00046848, - -0.0448116, 0.0182161, 0.0592176, 0.0918027, 0.0649448, 0.0105857, -0.0196588, 0.00406895, - 0.0034925, 0.0990291, -0.0319524, -0.00638724, 0.00562423, 0.0447108, 0.0227806, 0.014012, - -0.0143819, -0.0158124, -0.0378926, -0.0673686, -0.0649373, 0.00224931, 0.0333127, 0.0316347, - -0.0234361, 0.00150827, -0.0153644, -0.0250532, -0.00597671, -0.0067867, 0.018995, 0.0223197, - -0.0146966, -0.0435748, -0.00637642, -0.0419609, -0.0532878, -0.0176804, -0.0263347, -0.0276614, - 0.0162287, -0.00532958, -0.015642, -0.0538278, -0.025124, -0.0130719, -0.0193754, 0.0287796, - -0.0413712, 0.0480701, 0.0441385, 0.00548393, 0.00292707, 0.0269691, -0.0504128, -0.00968982, - -0.0149377, -0.0761418, 0.0646164, -0.013872, 0.0254016, 0.0211067, -0.0213354, -0.0101183, - -0.00769239, -0.018979, 0.0195936, 0.00275689, 0.0226773, 0.0528095, 0.00701476, -0.000215039, - -0.0385599, 0.0166449, 0.0279211, 0.0131107, 0.0463374, 0.0352633, -0.0267223, -0.00659304, - -0.0239268, 0.00596462, 0.064236, 0.0534211, 0.0618139, -0.00417547, 0.0169228, 0.00955138, - -0.0356719, -0.0140551, -0.0375888, -0.00973585, -0.00167822, -0.0297079, -0.0161585, -0.0314359 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p37(hatfit_yaw00_lev2_p37); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p37_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p38.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p38.mh deleted file mode 100755 index d13a2f3..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p38.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p38.mh: - -#ifndef stasm_hat_yaw00_lev2_p38_mh -#define stasm_hat_yaw00_lev2_p38_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p38(const double* const d) // d has 160 elements -{ - const double intercept = -0.376783; - const double coef[160] = - { - -0.0381625, -0.0216802, -0.0155914, -0.0404376, -0.0631582, 0.0381639, 0.0377976, -0.0516102, - -0.028152, -0.0202302, 0.0302485, 0.00262319, -0.0207045, -0.0417396, 0.0787168, -0.0787154, - -0.0329266, -0.0189142, 0.000370531, -0.00575274, -0.0277813, -0.0345295, 0.0621677, -0.0119504, - 0.0166243, 0.0148557, 0.0187655, 0.0119691, 0.0209956, 0.000136722, 0.0679876, 0.0596953, - -0.0173308, -0.0304385, -0.0195675, -0.00678459, -0.058364, 0.00845924, -0.0914828, -0.0269946, - 0.0442164, 0.0218957, 0.0834356, 0.0923645, 0.0542928, 0.0437193, 0.00909546, 0.00658516, - 0.0595327, -0.0285361, -0.0120236, 0.0127215, 0.0471597, 0.00693775, -0.0502759, -0.00219912, - 0.0692, 0.0115397, -0.0597431, -0.0345065, 0.00897436, 0.0644876, -0.00529858, 0.0172422, - 0.0592641, 0.0368146, -0.0170227, 0.000427752, -0.0220798, -0.002191, -0.0154746, -0.0168699, - 0.0352867, 0.111853, 0.0565004, 0.0728899, 0.0717551, 0.033416, 0.048564, 0.00220777, - 0.031206, 0.0294133, -0.00374811, 0.0601965, 0.0488322, -0.0252048, 0.0418437, 0.0539204, - -0.00425075, -0.0373638, 0.0889858, -0.00515388, -0.00512685, -0.0250974, -0.00357214, 0.00699725, - -0.038465, 0.0384146, 0.0125729, -0.0497535, 0.0188856, 0.00873619, 0.0314734, 0.0134863, - -0.0273422, 0.032113, -0.0321483, 0.0119197, 0.0338809, 0.0323335, 0.0534044, 0.0411907, - -0.0332367, 0.0126317, 0.0531453, 0.0720893, 0.00242768, 0.00830297, -0.00492567, 0.0257998, - 0.0186504, -0.0333308, 0.0421134, 0.00815198, -0.0375097, 0.0125134, -0.0599385, 0.000119946, - 0.00751917, -0.019638, 0.00632028, -0.0359062, -0.0111683, 0.00175841, -0.00667292, 0.00282321, - -0.0037453, -0.0103999, 0.00707973, -0.0368289, -0.00472334, 0.00666663, -0.017547, 0.000420025, - -0.0198019, -0.038683, 0.00103139, -0.0286226, -0.00983428, 0.00971842, -0.0108167, -0.0309264, - -0.019254, 0.00464451, 0.0170737, -0.0466007, -0.0101921, -0.019542, -0.0446412, -0.0198669 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p38(hatfit_yaw00_lev2_p38); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p38_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p39.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p39.mh deleted file mode 100755 index 87acb56..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p39.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p39.mh: - -#ifndef stasm_hat_yaw00_lev2_p39_mh -#define stasm_hat_yaw00_lev2_p39_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p39(const double* const d) // d has 160 elements -{ - const double intercept = -0.175478; - const double coef[160] = - { - -0.0340044, 0.0102974, -0.0326885, -0.027898, -0.0574698, 0.0218861, -0.0295587, -0.0136835, - -0.0670967, -0.00859483, 0.01472, -0.0127685, -0.00715043, -0.0560974, 0.095579, -0.0138027, - -0.0477498, -0.0188489, 0.0206146, -0.0341245, -0.0114705, -0.0814169, 0.067814, 0.0128964, - -0.0372988, -0.00688147, 0.0535055, 0.0309127, 0.0136957, -0.00924958, -0.0222743, 0.000739304, - 0.00947217, -0.0633822, -0.0394817, -0.0256672, -0.0301259, 0.0126494, 0.033581, 0.0792859, - 0.0625707, 0.0213443, 0.0645021, 0.132729, 0.103496, 0.0360967, 0.0149085, 0.0283455, - 0.0447562, -0.0191749, -0.0247524, 0.0118958, 0.0418581, 0.0228802, -0.0348868, -0.00160803, - 0.0499076, 0.000436949, -0.0455082, -0.0523261, 0.0281439, 0.0563502, -0.0373772, 0.01161, - 0.0649382, 0.0375478, -0.000152216, -0.0242474, -0.0302719, -0.024227, -0.0163539, -0.0237781, - 0.0413481, 0.0639565, 0.0449211, 0.0730719, 0.0627154, 0.0195653, 0.0534155, 0.0242415, - -0.000842906, 0.0446278, 0.00706155, 0.107019, 0.0513803, 0.0188349, 0.0145981, 0.0541501, - 0.0323207, -0.0788871, 0.0691921, 0.0198263, 0.00516369, -0.00499741, 0.0431621, 0.0124451, - -0.0272489, 0.0178388, 0.0144972, -0.0310218, -0.0193413, -0.0027794, 0.0101328, -0.0183224, - -0.0375776, 0.0308271, -0.000599625, 0.00775446, 0.0111844, 0.00535355, 0.0351003, -0.00201906, - -0.0403671, -0.0297313, 0.000650426, 0.0552283, 0.00158567, 0.0127998, 0.0129658, -0.0540405, - 0.0126699, -0.0194195, -0.00137171, -0.0249486, -0.0977167, -0.0190306, -0.0617337, -0.0140263, - -0.0100231, -0.0157547, 0.014888, -0.0241838, -0.0298007, -0.00558167, -0.0200118, -0.00189711, - -0.00822873, -0.0244598, 0.0163851, -0.0267565, -0.00843671, 0.0101747, -0.0156994, 0.0148806, - 0.00397398, -0.0200779, -0.00718148, -0.0189266, 0.0237742, 0.0249438, -0.0174873, 0.00724446, - -0.0138303, 0.0292336, 0.0226407, -0.0766599, -0.0446403, -0.0119488, -0.0658979, 0.00344958 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p39(hatfit_yaw00_lev2_p39); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p39_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p40.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p40.mh deleted file mode 100755 index 51341b2..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p40.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p40.mh: - -#ifndef stasm_hat_yaw00_lev2_p40_mh -#define stasm_hat_yaw00_lev2_p40_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p40(const double* const d) // d has 160 elements -{ - const double intercept = -0.578154; - const double coef[160] = - { - -0.0230053, -0.0210838, 0.00833996, -0.00132794, -0.0195168, -0.0318791, -0.127763, -0.0155701, - -0.034902, -0.0315064, -0.0238103, -0.0304517, -0.0559896, 0.0267209, -0.0384578, -0.0265872, - -0.0585699, -0.0104624, -0.0336322, -0.0122956, 0.0132704, 0.0493953, -0.0308533, -0.00357042, - -0.0150394, 0.0170744, 0.0514288, 0.0387841, 0.0129995, 0.0622468, 0.0250487, -0.0148398, - -0.0116489, -0.0478068, -0.0371379, -0.0249553, -0.0180283, -0.0432322, 0.132777, 0.0320973, - 0.0230915, 0.016988, 0.00972359, 0.010769, 0.0282244, -0.0455557, -0.0193062, -0.0163898, - -0.0221048, 0.0368945, 0.0199199, 0.0685538, 0.117503, 0.0400076, 0.0400602, 0.0219632, - 0.0804955, 0.113797, 0.0771816, 0.0595862, 0.0464587, 0.044355, 0.033685, 0.04135, - 0.0573583, 0.000241402, 0.00757319, 0.061972, 0.0494706, -0.00927967, 0.0377478, 0.0453895, - 0.0660352, -0.00707717, -0.00409466, -0.00659626, 0.0710256, 0.0611401, -0.0468957, -0.0240416, - 0.0347565, 0.0332099, 0.0189545, 0.0699647, 0.0311581, 0.00807129, -0.00869748, 0.0150902, - -0.00120095, 0.00668937, 0.0326635, -0.0161191, -0.0129208, 0.0251813, 0.0124696, 0.0217988, - -0.0263708, -0.010514, -0.00390802, -0.0325808, -0.0571086, -0.0154732, 0.0102109, 0.0214122, - -0.0357933, -0.0272357, -0.00538061, 0.0474521, 0.0227356, 0.0232602, 0.0168437, 0.00073643, - 0.0113116, -0.0475376, 0.0560595, 0.031259, 0.0121835, 0.0106892, 0.0648001, 0.0432554, - -0.024124, -0.000816847, -0.0314966, 0.0103787, -0.0787828, -0.0520581, -0.00567509, -0.0185509, - 0.0535842, 0.0555946, 0.0181, 0.0220096, -0.0165579, 0.00212479, 0.0108745, 0.0136421, - 0.00809864, 0.0153479, 0.0293642, 0.0041109, -0.00828299, -0.0165547, -0.00871561, 0.00771352, - 0.0348994, 0.00533858, 0.0126395, -0.00496751, -0.0284364, -0.00480445, -0.0365954, 0.0008347, - -0.0041323, -0.0130019, 0.00889659, -0.0643651, -0.0419563, -0.002939, -0.0148031, 0.000960831 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p40(hatfit_yaw00_lev2_p40); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p40_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p41.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p41.mh deleted file mode 100755 index 9156cea..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p41.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p41.mh: - -#ifndef stasm_hat_yaw00_lev2_p41_mh -#define stasm_hat_yaw00_lev2_p41_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p41(const double* const d) // d has 160 elements -{ - const double intercept = -0.504123; - const double coef[160] = - { - 0.0296403, 0.0184192, -0.0822754, -0.0845612, -0.108267, 0.0246414, -0.0393737, 0.000256301, - 0.0228941, 0.041033, 0.0219511, -0.0137096, -0.0388542, -0.0138863, -0.00818661, 0.0105972, - 0.0145915, 0.0357209, -0.00152212, -0.0583622, -0.0404801, -0.0635977, 0.029528, 0.0399791, - -0.0220115, 0.0247502, 0.0609008, -0.00388183, -0.00349649, -0.0646161, 0.00873463, -0.03864, - -0.0574588, 0.0144267, 0.0276363, -0.00116585, -0.00827149, -0.0148357, 0.0379215, 0.0178955, - -0.0908591, -0.0282526, -0.0384145, 0.0148034, 0.0555861, 0.0348459, -0.0682362, -0.0137359, - -0.0161934, -0.000992711, 0.0417267, 0.0533682, 0.0606705, 0.0785771, 0.0177393, 0.0258979, - -0.0378051, -0.0430567, 0.0340479, 0.0873226, 0.0767643, 0.0501276, 0.0462917, -0.0225498, - -0.0253765, -0.0254106, -0.0434375, -0.0268121, 0.00946014, -0.0095343, 0.0410103, 0.0386735, - 0.0417865, -0.0111444, 0.038282, 0.0109508, 0.0165757, -0.0350916, 0.0181481, 0.0559019, - 0.0110023, 0.0756945, 0.0451606, 0.0317503, 0.0342808, 0.0563747, 0.00184054, 0.010916, - 0.0490982, 0.0742725, 0.0272439, 0.0667738, 0.0190779, -0.00363077, 0.0399377, 0.0587057, - 0.08214, -0.00631514, 0.015092, 0.0469049, 0.0700421, -0.000771437, -0.0188088, 0.00943442, - 0.0630941, -0.0083379, 0.000113802, -0.042742, 0.011614, 0.060704, -0.0111803, -0.0069888, - -0.0106874, 0.0722705, -0.0291486, 0.00721724, 0.00275513, 0.0355739, -0.0104596, -0.122197, - 0.0204395, 0.0355279, 0.0431984, 0.00359042, -0.0360651, -0.0240803, 0.00372068, 0.00855862, - -0.0373134, -0.035564, -0.0466182, -0.034249, -0.0504504, -0.0126724, -0.0210202, -0.0237463, - 0.0132138, -0.0377139, 0.0280111, 0.0393601, -0.0212865, 0.0149723, 0.0411332, 0.028714, - -0.0196819, -0.0324787, 0.0620909, -0.0094347, -0.0184877, -0.0330845, -0.013543, 0.00747859, - 0.0163584, 0.0246972, 0.0322218, -0.0315325, -0.00362678, 0.0186201, -0.00667478, 0.0466913 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p41(hatfit_yaw00_lev2_p41); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p41_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p42.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p42.mh deleted file mode 100755 index 35e06c0..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p42.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p42.mh: - -#ifndef stasm_hat_yaw00_lev2_p42_mh -#define stasm_hat_yaw00_lev2_p42_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p42(const double* const d) // d has 160 elements -{ - const double intercept = -0.487045; - const double coef[160] = - { - 0.0625564, 0.0377063, -0.0936294, -0.112431, -0.11527, -0.0167091, 0.0406052, 0.0738598, - 0.031717, 0.0592982, 0.0601575, -0.0166848, -0.00291908, -0.0829607, -0.00857274, 0.0205755, - 0.00948705, 0.0357341, 0.0519815, -0.0105257, -0.0086745, -0.0348401, -0.0191874, -0.00563161, - -0.00584097, 0.00939445, 0.0496421, 0.00617174, 0.0109272, -0.00699703, -0.019802, -0.036845, - 0.00622295, -0.0363641, -0.00320816, -0.00398417, -0.00117188, 0.0340202, 0.0232643, 0.0210433, - -0.076952, -0.0577683, 0.00690922, 0.0417571, 0.050944, 0.0913182, 0.0142636, -0.0422739, - -0.0723603, -0.0353338, 0.0062463, 0.027837, 0.0227093, -0.0154173, 0.0851114, 0.00579794, - -0.0556967, -0.016606, 0.00632741, -0.00221272, 0.0259411, -0.0336812, 0.0517649, 0.0257381, - -0.0381896, -0.000830177, 0.0243649, 0.0013848, 0.0115003, -0.0168612, 0.00369493, 0.0256691, - 0.0106233, -0.00775145, -0.00300705, -0.0247126, -0.0192061, 0.0160463, 0.0219635, 0.0912614, - 0.054399, 0.0505047, 0.0788935, 0.124535, 0.0689719, 0.0184976, 0.00473304, 0.0295179, - 0.05098, -0.0160143, -0.0138044, -0.00226117, 0.0481735, 0.0127097, -0.0128908, -0.000225028, - 0.0365491, 0.00311747, -0.0318899, -0.0402103, 0.00986184, 0.0267959, -0.0597112, 0.00930144, - 0.0337973, 0.0299957, 0.0120455, -0.00462641, -0.0216377, -0.0225958, 0.00223717, -0.0270024, - 0.0628005, 0.0489483, 0.0415761, 0.0761125, 0.0714916, 0.0226824, 0.0721983, 0.0584937, - 0.0218871, -0.00527917, -0.021159, 0.0474577, -0.0094378, 0.0238818, 0.00390066, 0.0178393, - 0.0356874, -0.0529759, 0.0605261, 0.0161625, 0.00235941, 0.00300719, 0.0191452, 0.0183478, - 0.00476389, 0.0355849, 0.0325118, -0.0273234, -0.0178925, 0.00676039, 0.00677796, -0.0404392, - -0.0159076, 0.00463432, -0.0117526, -0.00362902, 0.00451682, 0.0295932, 0.0400523, -0.00565271, - -0.0698196, 0.00656611, -0.00782271, 0.000942894, -0.0420094, -0.00445787, -0.0551658, -0.0701101 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p42(hatfit_yaw00_lev2_p42); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p42_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p43.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p43.mh deleted file mode 100755 index 3867d83..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p43.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p43.mh: - -#ifndef stasm_hat_yaw00_lev2_p43_mh -#define stasm_hat_yaw00_lev2_p43_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p43(const double* const d) // d has 160 elements -{ - const double intercept = 0.00648366; - const double coef[160] = - { - -0.0152163, -0.00938193, -0.0190419, -0.0687831, -0.0468449, -0.0880119, 0.0812563, -0.00542163, - -0.0303208, 0.00806224, 0.0623734, 0.0413201, -0.00380485, -0.0133008, -0.00241608, -0.0323745, - -0.0738325, -0.0242139, 0.0190181, 0.0157716, 0.0080979, 0.00166531, -0.0480585, -0.0434921, - -0.0302065, -0.0234743, -0.0184186, 0.0244355, 0.0155824, 0.0468844, 0.0080336, 0.00117218, - -0.0331888, -0.0584217, -0.0338365, -0.026523, -0.0119799, 0.0596711, 0.0115523, -0.0122433, - -0.0458657, -0.0397486, 0.00973897, 0.0146185, 0.069101, -0.0167322, 0.0669437, 0.0339211, - 0.00604615, 0.00201924, -0.0142197, -0.0430294, -0.00720905, -0.0326489, -0.0359383, 0.0285836, - 0.0545388, 0.0379828, 0.0598856, 0.0112929, -0.0060677, -0.00368719, 0.0259153, 0.0502069, - 0.0226217, 0.0012846, 0.0148117, -0.0016945, -0.000385082, 0.00444569, 0.0713966, 0.090965, - 0.0507963, -0.00174389, -0.0463333, 0.00418675, 0.0053341, -0.0537939, -0.0550999, 0.0945129, - 0.113893, -0.0139617, 0.0316123, 0.0529792, 0.0495666, 0.0340494, -0.039953, 0.0260375, - 0.00641793, 0.0377733, -0.0625308, -0.0868844, -0.048856, 0.0186374, -0.0411507, -0.0667005, - 0.0029778, 0.0232979, 0.0265188, 0.0512988, 0.0191031, 0.00196293, -0.0345508, -0.0318195, - 0.00777352, 0.0336489, 0.0340635, 0.0523148, 0.03348, 0.0224716, 0.0471509, -0.0111932, - 0.0163388, 0.0360007, -0.0550825, -0.0319889, 0.00674877, 0.0246315, 0.0166669, -0.00832142, - -0.0104868, -0.0427722, 0.0921329, 0.0220887, -0.0355666, -0.0185576, -0.00916089, -0.0092353, - -0.0317364, 0.0305874, 0.00675156, -0.0249873, 0.01326, 0.0109879, -0.016378, 0.00128751, - -0.0210845, -0.0114771, -0.00718837, -0.00888316, -0.0110957, 0.0127997, 0.0179059, 0.0174434, - -0.0127198, -0.0120589, -0.0196548, -0.0179925, -0.071387, 0.00189062, -0.0285034, 0.0140863, - -0.0971454, 0.0467506, -0.00717021, -0.0347361, -0.0281356, -0.0441394, -0.0500878, -0.0092695 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p43(hatfit_yaw00_lev2_p43); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p43_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p44.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p44.mh deleted file mode 100755 index 0c890e2..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p44.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p44.mh: - -#ifndef stasm_hat_yaw00_lev2_p44_mh -#define stasm_hat_yaw00_lev2_p44_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p44(const double* const d) // d has 160 elements -{ - const double intercept = 0.133498; - const double coef[160] = - { - -0.0434608, -0.0375412, 0.0454066, -0.00232263, 0.00944101, -0.0499478, 0.0126621, -0.0423901, - -0.00525387, -0.0133133, 0.0215207, 0.0288921, 0.0142323, 0.049969, 0.0481931, 0.0500351, - -0.00359542, -0.0930273, 0.00287021, 0.00598216, 0.0164819, 0.0124433, 0.00604495, 0.0709833, - 0.0020777, -0.0585229, -0.0286585, 0.0102381, 0.0246242, -0.00483163, 0.0220621, 0.0599245, - -0.0185056, -0.0421779, -0.0461277, -0.0347843, -0.0399771, 0.0179453, -0.0988327, -0.0343631, - 0.062811, 0.0709959, -0.0625171, -0.0890556, -0.038321, 0.00148258, -0.0706364, 0.0280211, - 0.013062, 0.0328506, 0.0540438, 0.0737895, 0.0182533, 0.00714815, 0.00747047, -0.0631775, - 0.0937722, 0.11209, 0.00853257, -0.0115347, -0.0403247, 0.0116919, 0.0922686, 0.100438, - 0.0496898, 0.0776282, -0.00799543, 0.0177156, -0.0209815, -0.0426646, 0.012797, 0.00244885, - 0.00795191, 0.0361026, -0.00259492, -0.0143084, -0.0014389, -0.0315686, -0.0858858, -0.0289207, - -0.0384161, 0.0405562, 0.0318509, -0.00677956, 0.0019075, 0.0227394, 0.0385147, 0.0332749, - -0.0443305, -0.0409049, 0.0268993, 0.0395555, -0.00697073, -0.0169692, -0.0110896, 0.0226296, - -0.099113, -0.0380493, -0.0555956, -0.0272147, 0.00162701, 0.0157433, -0.00016503, -0.0427643, - -0.0706651, -0.0126277, -0.00925659, -0.0135335, 0.00727166, -0.00311888, -0.0019915, -0.0481127, - -0.0174759, 0.00736274, 0.0108935, -0.0304465, -0.00479456, 0.0137333, -0.0236878, -0.026351, - -0.0180594, -0.0492838, 0.00470431, -0.0337215, 0.0155772, 0.00649963, -0.0740774, -0.0380523, - 0.0186271, 0.0388299, -0.00633185, -0.0332862, -0.0272252, 0.00657739, -0.0168025, -0.024778, - -0.0133223, -0.000528839, 0.00341718, -0.00758616, -0.0135721, 0.0138585, -0.0262324, 0.0120914, - 0.00661195, -0.00240091, 0.0207088, 0.0293574, -0.0124487, 0.00932525, -0.0122027, 0.0285461, - 0.0236277, 0.000629146, 0.00127135, 0.0423906, -0.00154121, -0.014517, -0.00175293, 0.0134204 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p44(hatfit_yaw00_lev2_p44); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p44_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p45.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p45.mh deleted file mode 100755 index d7d8b17..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p45.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p45.mh: - -#ifndef stasm_hat_yaw00_lev2_p45_mh -#define stasm_hat_yaw00_lev2_p45_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p45(const double* const d) // d has 160 elements -{ - const double intercept = 0.167203; - const double coef[160] = - { - 0.0727442, -0.0166493, -0.0626483, -0.00407148, 0.0385231, 0.0138944, 0.0220685, 0.0317868, - 0.0202424, -0.00508257, -0.02991, -0.0642126, -0.0457136, -0.0205781, -0.0460721, -0.0144347, - 0.0185551, 0.021069, 0.0572957, 0.0567964, 0.0393136, 0.00655403, 0.00297779, -0.0212999, - 0.0588155, -0.0125789, 0.0302992, 0.0420561, 0.0321475, 0.0444928, 0.113518, 0.115613, - 0.0840319, 9.00529e-05, -0.0672098, -0.0382904, 0.00831286, -0.0415421, -0.0300061, 0.112934, - 0.0500438, -0.0398309, 0.121826, 0.0632192, 0.0417922, 0.0189858, 0.00649431, 0.00459315, - -0.0273207, 0.0733033, -0.023846, -0.0719232, -0.0331931, 0.00526774, -0.0276115, -0.0230609, - -0.0322007, 0.0294648, 0.024586, 0.0277014, -0.0083174, 0.00650928, 0.000355891, -0.0111656, - -0.0321933, 0.0129832, -0.00113023, 0.0126422, -0.028525, -0.0111074, 0.00155808, -0.0336636, - -0.0639764, 0.0777543, -0.0134676, -0.0233251, -0.0131801, -0.0252243, 0.00837433, -0.0979294, - -0.0316445, -0.0533707, 0.0260078, 0.0344793, -0.0253976, -0.0140301, 0.00174039, 0.00276017, - 0.00545666, -0.0200741, -0.0239352, -0.0327871, 0.0297689, 0.00861198, 0.040564, 0.052606, - 0.0074788, -0.0479343, 0.0154175, -0.0141605, -0.00841478, -0.00624186, -0.0179837, 0.00613419, - -0.0151695, -0.00554206, -0.0266159, -0.00971198, -0.0140612, 0.00957265, -0.00149456, 0.0407301, - -0.0514291, -0.00426822, -0.0378928, -0.025287, -0.000235668, -0.00516234, -0.043896, 0.0421735, - -0.0130924, -0.0251465, 0.0425118, -0.0765011, -0.041684, -0.0207319, -0.06635, -0.0265088, - -0.033695, -0.0298012, 0.00865036, -0.0296191, 0.00521558, 0.0239798, 0.00332807, -0.0132821, - -0.0237629, 0.0281534, -0.00584087, -0.0281866, -0.00921105, 0.00566867, -0.0154368, -0.0327216, - -0.0208287, 0.00086343, 0.0179541, -0.0235674, -0.0233201, -0.00703314, -0.022644, -0.0103356, - -0.0110677, -0.0168262, 0.00978007, 0.0523263, -0.0194004, -0.00861894, -0.0303185, -0.0325916 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p45(hatfit_yaw00_lev2_p45); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p45_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p46.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p46.mh deleted file mode 100755 index 4ba2f6c..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p46.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p46.mh: - -#ifndef stasm_hat_yaw00_lev2_p46_mh -#define stasm_hat_yaw00_lev2_p46_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p46(const double* const d) // d has 160 elements -{ - const double intercept = 0.134623; - const double coef[160] = - { - 0.0531168, 0.0334694, 0.043996, 0.12206, 0.0730851, 0.0708911, -0.00521965, 0.0159515, - 0.0281719, -0.0421384, -0.0138892, -0.0198386, 0.0505329, -0.0104663, 0.00154503, -0.0128061, - 0.058639, -0.00837575, -0.0821761, -0.0997137, -0.0181503, 0.0377087, -0.0401936, 0.00375633, - 0.00143321, 0.0237199, 0.00718317, -0.00464007, -0.0229915, -0.0257773, -0.0106924, -0.0683993, - 0.0987416, 0.0460078, 0.0523512, 0.0644147, 0.0502609, 0.0165771, 0.0867663, 0.123899, - 0.00447481, 0.0121519, 0.00354363, 0.0803775, 0.00817232, -0.0145719, 0.00701082, 0.0432215, - 0.0279507, -0.0634129, 0.0607196, 0.0344952, 0.0197178, 0.00448424, 0.00693527, 0.00980093, - -0.0263267, 0.0359766, 0.0495958, 0.00492949, -0.00529447, 0.00687388, 0.0106333, -0.00370484, - -0.0402679, 0.0157835, -0.00736962, -0.00841176, 0.00542731, 0.0202024, 0.010359, 0.0114009, - -0.114368, -0.00373064, 0.0193916, 0.0368617, -0.0185698, -0.00661785, -0.0196855, -0.0660228, - -0.0155701, -0.0423849, 0.0227829, -0.00564839, -0.0628149, -0.0119208, -0.0545034, -0.0238897, - -0.0304989, -0.0239419, 0.018287, 0.0139659, 0.0074725, 0.00120524, -0.0106813, -0.0109142, - -0.0190309, -0.0788974, -0.0350183, -0.040745, -0.00553431, 0.0194616, 0.0108564, 0.0408648, - 0.0127743, -0.0466269, -0.0114537, -0.0223878, 0.0214901, 0.0118409, 0.0131341, 0.0240932, - 0.0149353, 0.00707499, -0.0278634, -0.0513, -0.0344982, 0.00220224, -0.0332546, 0.008111, - -0.00234963, 0.0362378, 0.0399499, 0.0076758, -0.0431636, -0.0341594, -0.0400981, -0.0105245, - 0.0153956, -0.000767963, 0.0185314, -0.0453842, -0.0557711, -0.00781512, 0.00407695, 0.00583734, - -0.0275517, -0.0113003, 0.0115792, -0.0641317, -0.0148315, -0.0078452, -0.0106168, -0.0332407, - -0.0315385, -0.00204452, -0.00591023, -0.0533512, -0.00380281, 0.00919725, 0.0024589, -0.00864855, - -0.0314061, 0.0254036, 0.0529685, 0.00313081, -0.0361513, -0.0241116, -0.0383206, -0.0235494 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p46(hatfit_yaw00_lev2_p46); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p46_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p47.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p47.mh deleted file mode 100755 index 33b09c3..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p47.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p47.mh: - -#ifndef stasm_hat_yaw00_lev2_p47_mh -#define stasm_hat_yaw00_lev2_p47_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p47(const double* const d) // d has 160 elements -{ - const double intercept = -0.349958; - const double coef[160] = - { - -0.0938759, 0.00296821, -0.0729677, -0.0316095, -0.00706991, 0.0713807, -0.125104, -0.0615868, - 0.0707216, 0.055996, 0.066673, 0.063191, 0.0360445, 0.0752131, 0.0635663, 0.0533688, - 0.0104127, -0.0312641, 0.00659127, 0.0569067, 0.0593655, 0.0106091, 0.00629004, -0.0474023, - 0.0337274, -0.0232891, -0.0632985, -0.060388, 0.0187142, 0.0192868, 0.00269171, 0.0232338, - 0.0544664, -0.00795061, 0.00310823, -0.0143325, -0.0106303, -0.010281, 0.0267312, 0.00531744, - 0.0397312, 0.0957103, 0.117226, 0.0655497, 0.0423688, -0.0166754, 0.0271625, 0.0107862, - -0.0253908, 0.0119722, -0.031478, 0.0428568, 0.00490836, -0.0267872, 0.00626841, 0.0239749, - 0.0451296, -0.0252722, 0.0191709, 0.0668581, 0.0521968, 0.042853, 0.0250142, 0.0680039, - 0.0265303, -0.0209002, 0.0792489, -0.0097866, -0.00997529, 0.00598961, -0.0162379, -0.000541026, - -0.0667264, 0.0992408, 0.0101751, -0.0104197, 0.0343122, 0.0579504, 0.00881062, -0.0444161, - -0.0118875, -0.0064939, 0.0189168, 0.000886423, -0.0630399, -0.00776045, -0.0401691, 0.0212956, - -0.0124791, -0.0363352, -0.0313423, -0.0383338, -0.0471207, -0.00316822, -0.0288681, -0.00340652, - -0.0159142, -0.0354307, 0.0194541, 0.0374145, -0.00104714, 0.00322418, -0.00696972, -0.014788, - -0.0295837, -0.0265521, -0.0117168, 0.0133084, -0.0186389, -0.00254122, 0.00481712, 0.0100409, - 0.0211604, -0.0462735, -0.00647958, -0.0555301, -0.00469603, 0.0267769, 0.0434688, 0.0614441, - 0.0477303, 0.0342047, -0.0337731, -0.00408043, -0.0142271, -0.0233577, 0.00147113, -0.0202956, - 0.00291611, 0.0343229, 0.0658706, 0.042245, 0.00563476, -0.011158, -0.00236379, -0.00430019, - 0.024499, 0.0109992, 0.0275971, -0.0199714, -0.0525608, -0.0207767, -0.00988041, 0.0184047, - 0.0161338, -0.0137057, 0.0222027, -0.0660978, -0.0223864, 0.0155657, 0.00532412, 0.00796028, - -0.0192531, -0.00810867, 0.0503201, -0.0601432, -0.00343015, -0.000829491, -0.0402855, -0.0187734 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p47(hatfit_yaw00_lev2_p47); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p47_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p48.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p48.mh deleted file mode 100755 index 04d1e37..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p48.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p48.mh: - -#ifndef stasm_hat_yaw00_lev2_p48_mh -#define stasm_hat_yaw00_lev2_p48_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p48(const double* const d) // d has 160 elements -{ - const double intercept = -0.266244; - const double coef[160] = - { - -0.00244126, -0.00695775, -0.00750911, 0.0373564, 0.0912859, -0.0323123, 0.0135883, -0.0108903, - -0.0138802, -0.0188198, -0.0310479, -0.00867961, 0.0052937, 0.02034, -0.00643894, -0.0194933, - 0.00309242, -0.0162415, 0.0107541, 0.0155267, -0.0138722, -0.0117513, 0.0212924, -0.00367859, - 0.0165307, 0.00492787, -0.00487953, 0.00917269, -0.00646058, -0.00447639, -0.0268833, -0.0118095, - -0.000936887, 0.0130276, 0.0132283, 0.0163816, -0.00492111, -0.0137712, -0.00156212, -0.0168748, - -0.00170122, 0.01619, -0.00337298, 0.0267796, 0.0277441, -0.01436, -0.021252, -0.00902059, - 0.000179468, -0.00228062, -0.00427859, 0.032054, -0.00956211, -0.00282608, 0.00909247, -0.0129984, - -0.00618627, -0.0247032, -0.000789677, -0.0353493, -0.0504948, 0.0341041, 0.00664619, 0.00987884, - 0.0321276, -0.0307376, -0.0337874, -0.0369077, -0.0136238, -0.0040396, 0.0365185, 0.0295871, - 0.0337312, 0.0194397, 0.0405361, 0.00148259, 0.000971457, -0.0311783, -0.0283214, -0.0576002, - 0.0379415, 0.0162879, 0.0238018, 0.0896146, 0.0338163, -0.0440928, -0.0198169, 0.0139492, - 0.0135434, -0.0196034, -0.0666693, -0.0221157, 0.0240976, -0.00951311, 0.00591992, 0.00916109, - 0.0469733, 0.0313011, 0.0146373, 0.030906, 0.000892364, -0.0286324, -0.00992309, 0.0304088, - -0.0208145, -0.0248092, -0.0366884, -0.0395867, -0.0286382, 0.0170484, -0.00629805, 0.0301099, - 0.0390146, 0.0614085, 0.0576423, 0.0200063, -0.0242775, -0.05258, -0.0131601, 0.0207403, - -0.00163866, -0.0121648, 0.0215263, 0.0394177, -0.0529247, 0.0340943, -0.00183509, 0.00380548, - 0.00476614, -0.0106921, -0.0110888, 0.0573969, 0.0170387, 0.0482549, 0.0231282, -0.0111661, - -0.0603029, -0.0115112, -0.0168214, -0.00270062, 0.00541293, 0.012113, 0.0468421, -0.0042761, - -0.00759411, 0.0354396, 0.0728358, 0.0893882, 0.0657231, 0.0364996, 0.0136322, -0.0390175, - 0.0584287, -0.0251267, -0.0315721, 0.0521113, 0.116648, 0.060466, 0.0375091, 0.0571198 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p48(hatfit_yaw00_lev2_p48); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p48_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p49.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p49.mh deleted file mode 100755 index edf24ac..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p49.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p49.mh: - -#ifndef stasm_hat_yaw00_lev2_p49_mh -#define stasm_hat_yaw00_lev2_p49_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p49(const double* const d) // d has 160 elements -{ - const double intercept = 0.192501; - const double coef[160] = - { - 0.0835498, -0.0204216, -0.0675207, -0.0489665, -0.033897, -0.021236, -0.00268309, -0.0164719, - -0.0187461, 0.0227914, 0.0300364, 0.015184, -0.0202062, -0.0158775, -0.0168518, -0.0179463, - -0.038041, -0.0119964, 0.00579416, 0.0356555, 0.0566812, -0.0199519, -0.0280012, -0.0420213, - -0.0132371, -0.0144199, -0.0541125, -0.0105326, 0.0603322, 0.022851, 0.00906489, 0.00544175, - -0.0290449, -0.0236012, -0.00222911, 0.00202367, -0.0600652, -0.00660235, 0.00674581, -0.0434849, - -0.0202302, -0.0287063, -0.0283714, -0.0407221, -0.0072558, 0.00972238, 0.00968606, 0.0152914, - -0.0149908, 0.0289505, 0.0488872, 0.0189728, -0.00561173, -0.0135145, -0.0488983, -0.0182296, - 0.00738071, -0.00137348, 0.0304801, 0.00910722, -0.00820217, -0.00508927, -0.0146195, -0.00154415, - -0.00504071, -0.0246486, -0.0311558, 0.0192517, 0.0282089, -0.00265505, 0.0248406, -0.0107161, - 0.0285478, -0.0112178, -0.0346098, -0.0519415, -0.0952246, 0.00133508, 0.00722505, 0.0403746, - 0.0649075, 0.0123525, -0.0457291, -0.0256825, 0.0120643, -0.00891199, -0.0416236, -0.0463997, - -0.0164144, 0.0205189, 0.0227254, -0.0232941, -0.0217079, -0.0199973, -0.0149456, -0.0384636, - -0.00166413, 0.0212203, 0.00416943, 0.0416679, -0.00479935, -0.0405398, -0.0239473, 0.00734616, - 0.0178309, -0.00162916, -0.0119294, 0.0305882, 0.0530868, -0.0145587, 0.00292821, -0.00612065, - -0.0178099, -0.0325072, -0.0661953, 0.00742307, 0.0488632, 0.0027951, -0.0201514, -0.0186999, - 0.0404047, 0.00993155, 0.0343232, 0.0122804, 0.0379228, 0.0375848, 0.0775912, 0.0897432, - -0.0461039, 0.00967581, 0.0305412, 0.0137018, -0.0143922, -0.00987391, -0.0348911, -0.018628, - 0.0197026, -0.00799958, 0.00957767, 0.00337207, -0.0613752, 0.0195736, -0.0140907, 0.0353882, - 0.034985, 0.0218205, 0.0298671, 0.0567854, -0.00573089, 0.018223, 8.00595e-05, 0.00255585, - -0.0136921, -0.0121694, -0.0137683, 0.0372801, -0.0100846, 0.0482397, 0.057524, 0.0142762 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p49(hatfit_yaw00_lev2_p49); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p49_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p50.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p50.mh deleted file mode 100755 index 97538f0..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p50.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p50.mh: - -#ifndef stasm_hat_yaw00_lev2_p50_mh -#define stasm_hat_yaw00_lev2_p50_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p50(const double* const d) // d has 160 elements -{ - const double intercept = -0.0477386; - const double coef[160] = - { - -0.0495539, 0.0211041, -0.0123644, -0.00237358, 0.0108027, -0.0275818, -0.0549775, -0.0233839, - -0.0836514, 0.0310929, -0.010384, -0.0336357, -0.0451937, -0.0144377, -0.0114682, -0.0333021, - 0.0882937, -0.00533626, -0.0302569, -0.0444939, -0.0423566, 0.0042213, 0.0342134, 0.0200237, - 0.0692929, 0.0399971, 0.0131628, -0.00253586, -0.0242977, -0.0384338, -0.0239605, -0.00330828, - -0.0419197, 0.00794452, -0.02165, 0.0106045, 0.0321402, -0.0296086, -0.0243697, -0.039781, - -0.042991, -0.0300578, 0.0575712, 0.0340556, 0.0579353, -0.0319422, -0.00851638, -0.0470556, - -0.00101905, -0.0480291, -0.0347489, -0.0109098, 0.00852354, 0.0360537, 0.0439627, 0.042935, - -0.0107764, -0.0386511, -0.0721515, -0.0327677, 0.00865226, 0.0152686, 0.0465945, 0.0362127, - 4.46165e-05, 0.0391035, 0.0494602, 0.0191409, 0.00970513, -0.0327974, -0.0348296, -0.0350654, - -0.0118673, -0.00809259, 0.0306083, 0.0223223, 0.0113989, 0.0111524, -0.0393564, -0.00130007, - -0.00938587, 0.0532157, 0.00277165, 0.0182028, -0.0584938, 0.0277438, 0.00704494, -0.00816859, - 0.0295228, 0.00526707, -0.0163852, -0.0128342, -0.0167003, -0.0067569, 0.0236241, -0.00624285, - 0.0457654, 0.0173623, -0.0646333, -0.00727445, 0.00955263, 0.0091617, -0.0389154, -0.0404082, - 0.036049, 0.0225123, 0.0275935, -0.0153545, -0.00186503, -0.0072327, -0.0506511, -0.0285569, - -0.00781563, 0.0385601, 0.00797834, 0.0318072, -0.00728755, -0.0361007, -0.0141264, -0.0288934, - 0.104485, 0.0503813, 0.0321288, -0.0221143, -0.0110662, 0.0157634, 0.0254731, 0.0313357, - -0.0274174, 0.0228067, 0.0466918, 0.0514846, 0.0267139, 0.0101061, -0.00114006, 0.0169987, - 0.0127578, -0.0134715, -0.013775, -0.0045049, 0.0264766, 0.0464675, 0.0606609, 0.0584783, - -0.0149799, 0.0290195, 0.0436679, 0.0239956, 0.0250228, -0.00806094, 0.0177236, 0.00230823, - -0.012279, -0.014165, 0.0218013, 0.00711751, -0.04036, 0.0250468, -0.0194546, 0.0282929 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p50(hatfit_yaw00_lev2_p50); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p50_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p51.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p51.mh deleted file mode 100755 index 4e0e380..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p51.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p51.mh: - -#ifndef stasm_hat_yaw00_lev2_p51_mh -#define stasm_hat_yaw00_lev2_p51_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p51(const double* const d) // d has 160 elements -{ - const double intercept = 0.0764357; - const double coef[160] = - { - 0.0650944, 0.0193851, -0.0594972, -0.100121, -0.104022, -0.0135567, -0.0376246, 0.0163301, - -0.0129405, 0.0103163, 0.0383381, 0.0231603, -0.0437137, -0.0245345, 0.0999677, -0.0503141, - 0.0283688, 3.67082e-05, 0.0251029, 0.0506682, 0.0184266, -0.0705395, 0.0184774, 0.0297773, - -0.00595488, -0.0341949, -0.00113204, 0.00722669, 0.0464591, -0.0242277, -0.0192974, 0.00749769, - -0.0107425, -0.0521185, -0.04147, -0.0343186, -0.0526623, 0.0383393, 0.0396407, 0.0098424, - -0.00613143, -0.0146145, -0.037507, 0.052777, 0.108913, 0.0489861, 0.0294413, 0.00825218, - 0.00635863, 0.017598, 0.00982251, 0.00746601, 0.0341631, 0.0363752, 0.0151007, 0.00218081, - 0.0294743, 0.0752663, 0.0559439, 0.000286545, 0.0110606, 0.012381, 0.0289762, 0.0671849, - 0.0313379, 0.0311749, 0.0262417, 0.0283269, 0.0130074, -0.0453311, -0.0087264, 0.0826683, - -0.0305231, -0.0395294, -0.0730491, -0.0439395, -0.00667226, 0.0224563, 0.00542897, -0.00669543, - -0.00254243, -0.0285783, -0.0136673, 0.0294769, 0.0177926, -0.0204505, 0.00655116, -0.0212695, - -0.0351333, -0.026744, 0.0102726, 0.00539215, -0.0062701, -0.0134256, -0.0305623, -0.0311588, - -0.0275912, 0.00367917, -0.0134105, 0.00069081, 0.003861, 0.0132189, -0.0253056, -0.0409523, - 0.00296127, 0.00236138, -0.00174571, 0.00992103, -0.00668856, 0.00554392, -0.0147451, 0.00857709, - -0.0172276, -0.0069705, 0.00110024, 0.0114147, 0.00020103, 0.0260044, 0.0350674, -0.015979, - -0.0468747, -0.0412072, -0.020738, -0.0234711, -0.0415735, 0.0120218, -0.0126633, -0.02575, - -0.000798617, 0.0116575, -0.00498169, -0.0220634, -0.0188038, 0.00136545, 0.00679813, 0.0155936, - 0.0294948, -0.00340731, -0.00214841, -0.0186313, -0.019873, -0.0132203, -0.00228597, 0.0017341, - 0.0248672, 0.00242723, 0.00372801, 0.0125139, -0.00768655, -0.0294099, -0.00568277, -0.00574113, - -0.00529745, -0.010464, -0.00262238, -0.0218967, -0.00582704, 0.00480886, 0.00623102, 0.00438627 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p51(hatfit_yaw00_lev2_p51); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p51_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p52.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p52.mh deleted file mode 100755 index 07371ef..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p52.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p52.mh: - -#ifndef stasm_hat_yaw00_lev2_p52_mh -#define stasm_hat_yaw00_lev2_p52_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p52(const double* const d) // d has 160 elements -{ - const double intercept = 0.0675872; - const double coef[160] = - { - 0.0422232, 0.00605944, -0.0402839, -0.0373185, -0.0290048, -0.0300657, -0.0521738, -0.0466676, - -0.010222, 0.0108525, 0.010731, 0.00984706, 0.0071276, -0.0020334, 0.00506905, -0.0378795, - 0.0256222, -0.00261496, -0.00874904, 0.0389066, 0.00516485, -0.0127199, 0.0187019, -0.000190753, - -0.00267674, -0.0253644, -0.00748812, 0.0673018, 0.0356246, -0.0255024, -0.00546691, -0.0188718, - -0.0131194, -0.0303938, -0.0786897, -0.0136168, -0.00421177, -0.0507213, -0.0482906, -0.0439651, - 0.0165339, -0.00723551, 0.0494401, 0.0500584, 0.0445881, 0.0448531, 0.00679038, 0.127445, - 0.00635129, -0.00477785, -0.0144259, 0.00167362, -0.00852137, 0.0127319, 0.0194569, 0.0380326, - -0.00862816, 0.00856149, 0.0171049, 0.0156228, -0.021514, 0.0473204, -0.00787639, 0.02784, - 0.00322575, 0.0140646, 0.00674093, -0.00690135, -0.0250757, 0.0660233, -0.0360162, -0.00921877, - 0.00959317, 0.0110007, 0.0146054, 0.018331, -0.0163642, 0.049363, 0.0730171, 0.0120552, - -0.0164216, 0.023567, 0.0119819, 0.0361643, 0.0255793, -0.0372276, 0.00954623, 0.0744301, - -0.0511832, -0.0570134, -0.0396644, -0.0404291, -0.0241616, -0.0218683, 0.0113479, 0.00422602, - -0.0198206, -0.0071985, -0.0374479, -0.0315704, -0.0633209, 0.0221232, -0.015953, -0.00428115, - 0.0153375, 0.0136208, -0.023364, -0.0307367, -0.0540647, 0.0534357, -0.0172693, -0.0192023, - -0.0168497, 0.04081, 0.0412586, 0.0312318, -0.00389699, -0.0169878, 0.044265, 0.00451415, - 0.0174412, 0.046257, 0.000171126, 0.00684629, 0.00116319, -0.0263814, 0.0101471, 0.0133016, - -0.0112506, -0.0140623, -0.0175112, -7.98279e-05, -0.00964185, -0.00319915, 0.00209215, -0.0136634, - -0.014852, -0.00364934, 0.00261632, -0.00717517, 0.0168242, -0.00207797, -0.014872, -0.0169025, - -0.00321814, -0.00673075, -0.00480385, 0.0226337, 0.0466613, 0.0354814, 0.0169009, -0.00421824, - -0.000706595, 0.0251857, 0.00525701, -0.0187527, 0.00833638, -0.0156336, -0.0185438, -0.00773955 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p52(hatfit_yaw00_lev2_p52); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p52_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p53.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p53.mh deleted file mode 100755 index 13639b7..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p53.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p53.mh: - -#ifndef stasm_hat_yaw00_lev2_p53_mh -#define stasm_hat_yaw00_lev2_p53_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p53(const double* const d) // d has 160 elements -{ - const double intercept = 0.0626878; - const double coef[160] = - { - -0.018691, -0.0296059, -0.0703994, 0.00120945, -0.0494968, 0.0795052, -0.00971431, -0.0329191, - -0.0362483, -0.0085063, -0.0191623, -0.024323, -0.0312561, -0.0143246, -0.00839651, -0.0488237, - -0.0588511, -0.00926484, 0.0441297, 0.0445941, 0.017878, -0.046711, 0.0849654, -0.0249244, - -0.0423636, -0.0462836, 0.0275196, 0.0497014, 0.063428, 0.0314373, -0.00740839, -0.0418502, - 0.0557852, -0.0506972, -0.0623033, -0.0245665, 0.0507803, 0.0253386, -0.0329503, 0.0540937, - 0.0081901, -0.0173538, -0.0468151, -0.0113454, 0.0219419, 0.094097, -0.0336471, -0.0388668, - -0.00046048, 0.00541129, 0.0423549, 0.0338251, 0.0152872, 0.0485634, 0.0308025, 0.0141435, - 0.0688133, 0.0714458, 0.0222149, 0.00240129, -0.003577, 0.0127541, 0.0484851, 0.0474281, - 0.0625819, 0.0711041, -0.0137645, -0.00438153, -0.0217192, -0.0282293, 0.0145261, 0.0291524, - 0.000221867, 0.0219362, -0.00657695, -0.00351057, -0.019949, 0.0184259, -0.0142055, 0.00232768, - 0.0323774, 0.0241413, 0.0107102, 0.0214944, 0.000167494, 0.00677882, 0.0125334, 0.0430097, - 0.00430616, -0.0118973, 0.0184187, 0.0247654, 0.0199142, -0.0243278, -0.0211138, -0.00152234, - -0.0335908, -0.0136346, -0.00509563, -0.0118379, 0.00521896, -0.0137947, -0.029525, -0.033767, - -0.0409034, -0.0136538, -0.00955293, -0.0135913, 0.0034148, -0.00914535, -0.0143001, -0.0305599, - 0.00261832, 0.0124695, -0.0291263, -0.00591625, 0.00662083, 0.00995792, 0.0301587, -0.00637953, - -0.00596176, -0.023765, 0.00159443, -0.017357, 0.0219382, -0.00169842, 0.00159802, -0.0072873, - -0.00549211, -0.0196789, 0.00654718, -0.00794658, -0.0214648, -0.0236879, -0.0144501, -0.0129102, - 0.00940209, -0.013199, 0.00696873, -0.0156188, -0.0263607, -0.0121995, -0.0039541, 0.0131912, - 0.0121015, -0.00687284, -0.00235904, -0.0296469, -0.0215484, -0.0173748, -0.0020463, 0.0232373, - -0.0247, -0.00367961, -0.00750513, -0.0123954, -0.0110696, -0.0125895, 0.0128087, 0.0139221 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p53(hatfit_yaw00_lev2_p53); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p53_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p54.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p54.mh deleted file mode 100755 index b5d8222..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p54.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p54.mh: - -#ifndef stasm_hat_yaw00_lev2_p54_mh -#define stasm_hat_yaw00_lev2_p54_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p54(const double* const d) // d has 160 elements -{ - const double intercept = -0.277291; - const double coef[160] = - { - -0.0446887, -0.00374708, 0.00385274, 0.0503045, 0.0217272, -0.0400245, 0.0183714, -0.0416097, - 0.0361514, 0.0264205, -0.0355195, -0.0535544, -0.0176517, 0.0109518, 0.0471306, 0.0530063, - 0.0408165, -0.00365712, 0.0186745, -0.0167308, -0.0192916, -0.0318051, 0.0164768, 0.0619793, - -0.000283606, 0.0150233, 0.0253617, 0.0234364, -0.00652511, -0.0238146, -0.0132057, -0.00482485, - -0.0557863, -0.0139786, 0.0177731, -0.0304113, -0.0156029, -0.0503534, -0.00948837, -0.00765604, - 0.00322491, 0.0139671, 0.0437126, 0.051357, -0.0120266, -0.0424331, 0.0545242, 0.0207623, - 0.0389337, -0.0450301, -0.0408157, -0.00188467, 0.0802237, 0.10159, 0.00144506, 0.00801055, - 0.0471722, 0.00134928, 0.0049963, 0.00331887, -0.023034, -0.0105944, 0.000381919, 0.0476973, - -0.01709, -0.00342293, 0.0247222, 0.0385434, 0.031444, -0.00491429, -0.0478791, -0.00725465, - -0.00313559, -0.026061, -0.00803455, -0.00766215, -0.00734289, -0.00485036, -0.0128516, 0.0467148, - 0.0217181, 0.0961528, 0.0442988, 0.0244961, -0.00209479, 0.070689, 0.0440197, -0.0210048, - -0.0333998, 0.00952642, -0.0375876, 0.00130615, 0.033453, 0.0267356, 0.0286615, -0.0131523, - 0.0185672, 0.00152239, -0.0076401, 0.0130947, 0.0407226, 0.0263838, -0.0137793, -0.0336713, - 0.0205575, 0.0190752, 0.00701367, 0.0192376, 0.000230231, 0.00256423, -0.00603685, 0.00141138, - -0.000274883, -0.0127365, -0.0275762, -0.00276515, -0.0121963, -0.00158619, -0.00822213, 0.021954, - 0.00219908, 0.0747051, -0.00507968, -0.0224858, -0.0288911, -0.009155, -0.0148191, 0.0314522, - -0.00385337, 0.0544586, -0.0213008, -0.0350865, -0.0216466, 0.0122098, 0.00669712, 0.00928643, - -0.0222463, -0.00865128, -0.0119568, -0.0130535, -0.028518, -0.0214098, -0.0315799, -0.0243013, - 0.0445565, 0.0313687, 0.0127979, 0.0226593, 0.002793, -0.00884828, 0.0147583, 0.0132262, - 0.0187937, -0.00249565, -0.00482565, -0.00873885, -0.00158184, 0.018112, 0.00190477, 0.0203196 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p54(hatfit_yaw00_lev2_p54); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p54_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p55.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p55.mh deleted file mode 100755 index a3ca6d7..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p55.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p55.mh: - -#ifndef stasm_hat_yaw00_lev2_p55_mh -#define stasm_hat_yaw00_lev2_p55_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p55(const double* const d) // d has 160 elements -{ - const double intercept = -0.250169; - const double coef[160] = - { - 0.00770038, -0.0117506, 0.062048, 0.0180783, 0.0240321, 0.0333108, 0.0369724, -0.0106229, - 0.0118312, 0.0499778, 0.061373, 0.0373043, 0.0472146, -0.00673929, 0.0755102, 0.0273608, - 0.0547031, -0.015602, -0.0683437, -0.0307405, 0.0675858, 0.0804987, 0.0421439, 0.0451601, - 0.0381199, -0.00587557, -0.017652, 0.00875733, -0.00608711, 0.0247261, -0.0605143, 0.0144518, - 0.107937, 0.00733392, -0.0109964, 0.0212265, -0.0131021, -0.055415, -0.0756234, 0.06983, - -0.0126466, 0.00585092, 0.020196, 0.030979, 0.00395235, 0.0345755, -0.0128192, -0.0237322, - 0.00551386, 0.05754, -0.0355483, -0.0133549, -0.034749, 0.024405, 0.0142873, -0.00536911, - -0.0123543, 0.0699165, -0.00607456, 0.0269026, -0.0222243, 0.0179932, -0.0170113, -0.0444965, - -0.043051, 0.0686616, 0.0156304, 0.0271785, -0.00155287, -0.0190537, 0.00520236, -0.0426718, - -0.0380035, 0.0159989, -0.0108328, 0.00100199, 0.0144364, 0.0342008, 0.0593881, -0.0223646, - 0.0102675, -0.0133535, -0.00346879, 0.01142, 0.001026, -0.00617268, -0.0179935, 0.0294985, - 0.00672279, 0.0123285, 0.0107054, -0.00973206, -0.00529085, -0.0241834, -0.01892, 0.0318575, - -0.0107454, -0.0399393, -0.00696133, -0.0353624, -0.000994443, -0.0316886, 0.0117592, 0.0338041, - 0.0196972, -0.0370209, -0.0057983, -0.0262384, -0.0001756, -0.0105558, 0.0138915, 0.0301981, - 0.046032, 0.0066506, 0.0175139, 0.0332507, 0.00442133, -0.0277928, 0.0017533, 0.0299767, - -0.00254022, -0.00614713, 0.0406137, 0.0403652, 0.0213262, -0.00909879, -0.0216363, -0.0136817, - -0.00606465, -0.0205355, -0.0101716, -0.020908, -0.020426, 0.00635634, -0.00863355, -0.0117216, - -0.0107347, 0.00235228, 0.00293927, 0.00761096, -0.00581517, 0.0156982, -0.00447562, -0.00811945, - -0.0236372, 0.0142137, -0.0213592, 0.0131076, -0.00325128, 0.00408089, -0.0124824, -0.0344511, - -0.0238587, -0.019063, -0.00917022, -0.0286919, 0.023084, 0.0092957, 0.0240128, 0.036306 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p55(hatfit_yaw00_lev2_p55); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p55_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p56.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p56.mh deleted file mode 100755 index 2d234c4..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p56.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p56.mh: - -#ifndef stasm_hat_yaw00_lev2_p56_mh -#define stasm_hat_yaw00_lev2_p56_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p56(const double* const d) // d has 160 elements -{ - const double intercept = -0.328306; - const double coef[160] = - { - 0.0422546, 0.184962, 0.111152, 0.115769, 0.101409, -0.0368084, -0.0156815, 0.139848, - -0.052356, -0.108451, -0.0700122, -0.0229977, -0.0024418, 0.0153147, 0.0345232, 0.0241745, - 0.0212702, 0.000153695, -0.0788591, -0.0915139, -0.0247898, 0.0565069, 0.00748018, 0.0422068, - 0.0181788, 0.0418746, -0.0156512, 0.0312404, -0.00018109, 0.114732, -0.0092167, -0.0121939, - 0.0231432, 0.0906016, 0.160848, 0.0908163, 0.0713517, 0.0394256, 0.00905898, 0.0264914, - 0.0148162, -0.0424319, -0.0394716, -0.0317375, -0.0753654, -0.0172819, -0.0305321, -0.0236258, - 0.022185, 0.012337, 0.0471083, 0.0319807, -0.0116053, -0.0167637, 0.0203835, 0.00503093, - -0.0140213, 0.0198297, 0.0664976, 0.0462881, 0.0105653, -0.000511109, -0.00413334, -0.0450897, - -0.00640742, -0.0325777, 0.0146104, 0.0213001, 0.0387468, -0.00322437, 0.0274184, 0.00179133, - -0.0146529, -0.0246124, -0.0441073, -0.042919, -0.0813967, -0.0495854, -0.0512577, -0.0147774, - 0.0484091, -0.00169258, 0.00229933, 0.0214474, 0.0207526, -0.0267993, -0.042788, -0.0367772, - -0.0232888, -0.0114198, -0.00746757, -0.0123173, 0.000351264, 0.00888676, 0.0162699, 0.0085016, - 0.0219701, 0.00384312, -0.0292739, -0.0425834, 0.0015455, 0.00867374, -0.00863364, 0.0193312, - 0.023051, 0.00926908, 0.00392346, 0.0118959, 0.0199253, 0.00515107, 0.0196919, 0.0199765, - -0.0084015, -0.00823807, 0.0127497, -0.0211327, -0.0121992, -0.0401961, -0.0610518, -0.0164254, - -0.000862504, 0.0221161, 0.0126576, 0.00322465, -0.0033571, 0.00501517, 0.0331727, 0.048669, - -0.0105479, -0.0102952, 0.0363188, 0.0324739, 0.0273342, -0.0126718, 0.00903472, -0.00375157, - 0.00556322, 0.0250934, 0.0164272, 0.0050311, -0.000954502, 0.00514953, -0.00287182, -0.0133536, - -0.0146159, 0.0136428, 0.00980887, 0.0328536, 0.0203876, 0.0245116, 0.00937394, -0.0276986, - -0.00316586, -0.0252487, 0.0171106, 0.0432378, 0.00206141, 0.011208, 0.0426284, -0.0135959 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p56(hatfit_yaw00_lev2_p56); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p56_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p57.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p57.mh deleted file mode 100755 index 19cafd6..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p57.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p57.mh: - -#ifndef stasm_hat_yaw00_lev2_p57_mh -#define stasm_hat_yaw00_lev2_p57_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p57(const double* const d) // d has 160 elements -{ - const double intercept = -0.203007; - const double coef[160] = - { - 0.0865128, 0.0248213, 0.0086474, 0.0259264, 0.0268835, 0.0689304, -0.102411, 0.0205806, - 0.117378, -0.00638402, -0.0704098, -0.0455065, 0.0117648, 0.0137531, 0.0162044, 0.0398035, - 0.0274852, -0.00498262, 0.0209268, 0.0316234, 0.0288375, 0.0340683, 0.0668118, 0.0260287, - 0.0215089, 0.0406523, 0.0853733, 0.0623678, 0.0242103, -0.012731, 0.0075814, 0.0342916, - 0.0283612, -0.00154386, -0.0240037, -0.0495551, 0.00866836, -0.0187868, 0.0618618, 0.0776875, - -0.0219694, 0.0250212, -0.0495675, 0.0345358, -0.00554467, -0.0609616, 0.0596593, -0.0024294, - -0.00819783, 0.0356277, 0.0464799, 0.0898769, 0.0426898, -0.0331242, 0.000643486, -0.00481121, - 0.000895754, 0.0312877, -0.00516461, 0.0300407, 0.00527737, -0.00775853, 0.00704294, 0.0223022, - -0.00470824, 0.0474949, 0.0244843, -0.0149368, -0.0229115, -0.0154321, -0.0265509, 0.0119826, - -0.016407, -0.0128797, 0.00940966, 0.0142355, 0.0178779, 0.02561, -0.0083376, 0.0394511, - -0.052462, -0.0293036, 0.00800413, -0.0132136, -0.0146051, 0.0310741, -0.00819054, -0.0509036, - -0.024018, -0.0654997, -0.0291971, -0.0366762, -0.0289362, 0.0235513, 0.00167891, -0.00503019, - -0.0119401, -0.0284647, 0.00416893, 0.00107612, 0.012074, 0.0370183, -2.30073e-05, -0.0357759, - 0.00721041, 0.00510823, 0.0151765, -0.0191009, -0.0173274, -0.00825617, -0.0405202, -0.0194431, - 0.0323954, -0.0224443, -0.020123, 0.0101763, -0.0117992, -0.000572933, 0.0238616, 0.00865666, - 0.0040677, 0.011807, -0.0538971, -0.00438757, -0.0352308, -0.000402236, -0.00168159, -0.00856236, - -0.00958126, 0.0209521, 0.0110831, 0.0138053, -0.0217701, -0.0060596, -0.0140786, -0.0134007, - -0.0150505, 0.00959312, -0.00261968, -0.0179398, -0.0201037, -0.00983304, -0.000632587, 0.00957735, - 0.0348604, 0.0354315, -0.00866957, -0.0197128, -0.00944631, -8.65125e-05, 0.00391458, 0.0133003, - -0.00452637, 0.010231, 0.0347043, 0.0398113, 0.00425353, -0.00193257, -0.0202522, -0.0150822 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p57(hatfit_yaw00_lev2_p57); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p57_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p58.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p58.mh deleted file mode 100755 index 108e28c..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p58.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p58.mh: - -#ifndef stasm_hat_yaw00_lev2_p58_mh -#define stasm_hat_yaw00_lev2_p58_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p58(const double* const d) // d has 160 elements -{ - const double intercept = -0.384347; - const double coef[160] = - { - -0.0590473, -0.0107227, 0.0440664, 0.00644412, -0.0110966, 0.00148019, -0.0853849, -0.0932483, - -0.0392207, -0.0348981, -0.00926003, 0.0317718, 0.0280975, 0.0566762, 0.00941703, -0.0125592, - -0.000283368, -0.00502152, -0.0161522, -0.000118852, 0.00761111, 0.0468401, 0.0465597, 0.00643877, - -0.00673491, 0.00193026, -0.0347163, -0.0226197, -0.0508994, 0.00725766, 0.0415696, -0.0173771, - 0.0682239, 0.0358892, 0.0108749, -0.00233464, -0.0229325, -0.064544, 0.000298107, -0.0620169, - -0.0186442, 0.0436344, -0.0143493, -0.050769, -0.0402411, 0.0134804, -0.0727617, 0.0189837, - 0.0197985, 0.0115539, 0.00412827, 0.0101014, 0.0171984, 0.0365728, 0.00240549, 0.0200738, - 0.102691, 0.0325696, 0.00238379, -0.0144204, -0.0414022, 0.0173708, 0.00370051, 0.0572132, - -0.0500593, -0.0452855, -0.0308472, -0.0417367, 0.0276262, 0.0335967, 0.000101994, -0.0125322, - 0.0184756, 0.0674955, 0.0767639, 0.0524944, 0.0106225, -0.00806347, 0.0145697, 0.0241127, - 0.0271895, 0.0055225, -0.0450105, -0.0188389, 0.0217115, 0.0201329, -0.0117536, 0.0364266, - 0.0621516, 0.0058109, 0.0328488, 0.0289039, 0.0422151, -0.0215054, 0.0247541, 0.010941, - 0.0546283, 0.0028825, -0.00979371, 0.02213, 0.0302506, -0.0296153, 0.0105182, 0.03328, - 0.0185126, -0.0128748, 0.00842694, 0.0417042, 0.0210447, 0.0329542, 0.0635035, 0.0543379, - 0.0372297, 0.0482659, 0.0787115, 0.0584661, 0.0446115, -0.0131087, -0.00200247, 0.043677, - -0.0560349, 0.0193011, -0.0152084, -0.0208463, 0.0323249, 0.0279498, -0.000862152, 0.00584713, - -0.0218628, -0.0139652, -0.0164495, 0.00507096, -0.0313434, -0.0317992, -0.0274037, -0.0352698, - -0.0352773, -0.0269394, -0.0122851, 0.0570417, 0.0430161, 0.017478, 0.0152139, 0.00152666, - -0.0431643, -0.0129325, 0.0101743, 0.024005, 0.030459, 0.026044, -0.00930558, -0.0343825, - -0.00255551, 0.02388, -0.00157908, -0.0270078, -0.0219657, 0.0105858, -0.0106584, 0.0122666 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p58(hatfit_yaw00_lev2_p58); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p58_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p59.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p59.mh deleted file mode 100755 index 47320f3..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p59.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p59.mh: - -#ifndef stasm_hat_yaw00_lev2_p59_mh -#define stasm_hat_yaw00_lev2_p59_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p59(const double* const d) // d has 160 elements -{ - const double intercept = -0.225675; - const double coef[160] = - { - -0.040477, -0.00609423, -0.00821916, -0.0548738, -0.0169424, 0.0560629, -0.0976803, -0.0536427, - -0.00845835, -0.00693062, -0.0641817, -0.0622238, -0.0746946, -0.00356808, -0.0219615, -0.0562677, - -0.0112212, -0.00771601, -0.0362499, -0.0567906, -0.0768136, 0.00568094, 0.0410822, 0.00568983, - -0.00380847, 0.0141137, 0.0186174, 0.00927793, -0.0298109, -0.00952264, 0.0131703, -0.0200301, - -0.0191894, 0.0028206, 0.00948692, 0.0159359, 0.00167328, -0.0168206, 0.0138921, -0.0010733, - 0.0206606, 0.011975, -0.0235473, 0.0564816, 0.0761392, -0.0740906, -0.0572061, -0.0199989, - 0.00309155, -0.0190737, 0.000729695, 0.0495573, 0.117437, 0.0523793, 0.0212986, 0.0454454, - 0.0286832, 0.0402036, 0.0860817, 0.0986324, 0.080419, 0.0786126, 0.0961135, 0.0916864, - 0.000713514, 0.0161459, 0.0238884, 0.0219361, -0.00209585, 0.0039416, 0.0269808, -0.000680694, - 0.00881705, 0.0295667, 0.0165846, 0.00277793, 0.0118923, -0.0177124, -0.0122367, 0.000993965, - 0.0169292, 0.0339602, -0.019476, 0.0122096, 0.0174662, -0.00977033, 0.0269987, 0.0407677, - 0.0307038, 0.0399019, -0.0295386, -0.030221, -0.061692, -0.0551209, 0.03251, 0.0324767, - -0.00701717, 0.0126396, 0.00466349, 0.0169105, -0.0294034, -0.0441127, -0.00279974, -0.0113114, - 0.0191582, 0.0291767, 0.0220347, 0.0167793, 0.00828308, -0.0079766, -0.0115879, 0.00390746, - 0.00364135, 0.0333894, 0.0046142, -0.00540084, 0.0075717, -0.00470646, -0.0191649, -0.00688477, - 0.0113193, -0.00401891, 0.00742461, -0.00336853, 0.0177918, 0.0482465, 0.0163182, -0.0144115, - -0.0189215, -0.0170834, 0.000100562, -0.00627354, 0.0241668, 0.0217989, -0.0120274, -0.0186345, - -0.0243717, -0.0432802, -0.0227666, 0.0136494, 0.0290572, 0.0133098, -0.0198099, -0.0344272, - -0.0299281, -0.0202596, -0.0112792, -0.00627686, 0.0113015, 0.00128058, -0.0142346, -0.0147663, - 0.0242026, 0.00906782, -0.00932914, 0.016803, -0.00062888, -0.000295773, 0.0133787, 0.064017 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p59(hatfit_yaw00_lev2_p59); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p59_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p60.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p60.mh deleted file mode 100755 index d939901..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p60.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p60.mh: - -#ifndef stasm_hat_yaw00_lev2_p60_mh -#define stasm_hat_yaw00_lev2_p60_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p60(const double* const d) // d has 160 elements -{ - const double intercept = -0.0574429; - const double coef[160] = - { - -0.0481914, -0.0802053, -0.0574908, -0.0144008, -0.0340921, 0.0176143, -0.0273937, -0.065969, - -0.0645076, -0.0216497, -0.0319475, -0.0358559, -0.0307303, -0.000141573, -0.0476916, -0.019718, - -0.011527, 0.00677815, -0.0317135, -0.0533613, -0.0469683, 0.00057032, -0.0231745, 0.00652888, - 0.0652671, 0.0573901, -0.00943745, -0.0753712, -0.0411104, -0.0184814, 0.000290673, 0.0272182, - 0.0513562, 0.0555283, 0.0992615, 0.0705934, 0.024459, 0.00052681, 0.0214185, -0.0196554, - -0.00446396, 0.0397874, -0.0230297, -0.0356375, -0.0500258, -0.0872619, 0.0171653, -0.00482889, - 0.0163187, 0.0409706, 0.0199018, 0.0214592, 0.00166659, -0.00809229, 0.0346777, 0.0031199, - -0.0113046, 0.0163862, -0.00277179, 0.018063, 0.022806, -0.00388124, 0.105189, 0.00141979, - -0.0687237, -0.0122344, -0.00200493, 0.0379497, 0.0276317, -0.0045303, 0.00388892, -0.0202021, - -0.0677418, -0.0309028, -0.016149, -0.00385407, -0.0104694, -0.0736018, 0.0296348, 0.0565345, - 0.0757052, 0.0444074, 0.00251371, 0.0318623, -0.0424912, 0.122445, 0.118608, 0.0299465, - 0.0324904, 0.00866944, -0.0105795, 0.00675961, -0.0485598, 0.0270956, 0.00775366, 0.00346522, - -0.0240875, -0.0145366, 0.00787615, -0.013137, -0.0283774, -0.0251651, -0.036254, -0.0162058, - -0.00468493, -0.0105304, 0.011014, -0.0353427, 0.0080706, -0.03488, 0.00061812, -0.00251708, - -0.00221024, -0.0177607, 0.0496022, -0.0320555, 0.0287524, -0.0167142, -0.0221543, -0.00306374, - -0.0473918, -0.00819185, 0.0295476, 0.0660758, 0.0524945, -0.00485913, -0.0213759, -0.0239857, - -0.0371676, -0.00204892, -0.057195, -0.0158003, 0.0125775, -0.0164363, 0.00846072, -0.0232319, - 0.0346082, 0.034776, 0.00184092, 0.0412026, 0.00858117, 0.042719, -0.0115131, 0.000989414, - 0.0302057, 0.0501328, 0.0110354, 0.0176725, 0.00231205, 0.0281351, -0.00680329, 0.028958, - 0.0595568, 0.00981931, 0.0759773, 0.0700752, -0.0174127, 0.0333898, 0.0162407, 0.0248003 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p60(hatfit_yaw00_lev2_p60); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p60_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p61.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p61.mh deleted file mode 100755 index ca250df..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p61.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p61.mh: - -#ifndef stasm_hat_yaw00_lev2_p61_mh -#define stasm_hat_yaw00_lev2_p61_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p61(const double* const d) // d has 160 elements -{ - const double intercept = -0.522524; - const double coef[160] = - { - -0.025582, -0.051103, -0.0682627, -0.0420982, -0.0651034, -0.00234092, -0.0747404, -0.0480761, - 0.107729, 0.00864232, -0.00692037, -0.0102879, -0.0240543, -0.0372096, -0.00379856, 0.00575709, - 0.0676828, 0.00608742, 0.0175875, 0.0310507, 0.0308839, -0.000315561, -0.021326, -0.00721177, - 0.00359587, -0.00721105, 0.00543791, -0.0175253, -0.00954474, -0.0153807, -0.0221238, 0.000263776, - -0.00772571, 0.0223946, -0.0182963, -0.0436557, 0.0567689, 0.00871555, -0.0673544, -0.0361942, - -0.0467252, 0.0726687, -0.00774027, -0.0425389, 0.0317325, -0.0200056, 0.0628934, 0.0106654, - -0.0175337, 0.0410224, 0.0554879, 0.0386439, 0.0295719, 0.0146787, 0.0482875, 0.058383, - -0.024714, 0.0232768, 0.0340872, 0.055188, 0.0395916, 0.0177769, 0.0895858, 0.0178616, - -0.0133556, 0.0151659, -0.00673149, -0.0250919, -0.0304849, -0.0186642, 0.000626389, -0.0335218, - 0.0608877, 0.0685431, 0.0731696, 0.0613766, -0.0132325, 0.0413995, 0.131949, 0.0114613, - -0.0118039, 0.0113914, 0.0373391, -0.0196422, 0.0161307, 0.0250844, 0.0644002, -0.0362912, - -0.0408222, -0.0456617, -0.0231356, -0.0395514, -0.00521852, -0.0370925, -0.00181958, -0.0144886, - -0.0149205, -0.0229657, 0.0109783, -0.017396, 0.0178595, -0.0404573, -0.0112393, 0.0812739, - 0.0020366, -0.0124532, 0.00444585, -0.0111524, -0.00913733, 0.0125664, 0.00483298, 0.00217064, - -0.0144132, -0.0490858, -0.0180631, -0.0293735, -0.0397752, 0.0204384, 0.0192876, -0.114034, - 0.0300214, 0.0347912, -0.0458519, 0.0255813, -0.0321425, 0.038942, 0.0340921, 0.0874599, - 0.0527331, 0.051523, 0.0481371, -0.0111974, 0.0113982, -0.0118794, 0.0174943, 0.00461061, - 0.0252508, -0.0129713, 0.0672082, 0.045425, 0.00719687, 0.0363388, 0.0130413, -0.0106249, - 0.0131324, -0.025057, 0.0374134, -0.0126326, -0.00183529, -0.00414838, -0.014713, -0.0068541, - 0.0114563, 0.00325675, 0.0470546, 0.0109092, 0.055069, 0.0410553, 0.0344168, 0.061962 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p61(hatfit_yaw00_lev2_p61); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p61_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p62.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p62.mh deleted file mode 100755 index 5b19024..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p62.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p62.mh: - -#ifndef stasm_hat_yaw00_lev2_p62_mh -#define stasm_hat_yaw00_lev2_p62_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p62(const double* const d) // d has 160 elements -{ - const double intercept = -0.546964; - const double coef[160] = - { - 0.138885, -0.00653416, 0.00853471, 0.0371284, 0.0234242, -0.0284408, -0.0315538, -0.0084206, - -0.0215589, -0.0296899, -0.0172399, 0.0141021, -0.00141327, 0.0023797, 0.0203704, -0.0246041, - 0.0218481, 0.0149802, -0.00505354, -0.0424898, 0.0127839, -0.014713, -0.0497268, 0.0124626, - 0.0272064, 0.0198233, 0.0172056, 0.037164, 0.0912689, 0.0180614, 0.040656, 0.0120559, - -0.00933765, -0.0506735, -0.0260352, -0.0163973, -0.0156429, -0.0580504, -0.0765838, -0.0387924, - -0.0905708, 0.0280471, 0.0110524, 0.0151604, 0.0410297, 0.00172472, 0.0868415, 0.125911, - -0.0135293, 0.00280759, 0.0468298, 0.0177423, 0.0340985, -0.0281303, 0.0436825, 0.00510234, - -0.000461449, 0.0356534, 0.00241731, 0.0121216, -0.0304363, 0.0429733, 0.043888, -0.0563081, - 0.00259206, 0.0322458, 0.0219172, 0.0211178, -0.032417, 0.0411085, 0.0655549, -0.0576921, - 0.0124454, 0.000714222, 0.0186819, 0.0605241, -0.00227574, 0.0301202, 0.114545, 0.00673266, - -0.0480568, -0.0312519, 0.0222479, -0.0534711, -0.00581887, -0.0658351, 0.00621864, -0.0312635, - 0.0388063, -0.0279277, 0.00658296, -0.0142938, 0.00486383, -0.0184964, -0.0183719, 0.0867722, - -0.0211815, -0.0206133, 0.0011078, -0.0233788, -0.00747, 0.0274744, -0.0195416, -0.0643339, - -0.0140197, -0.0308474, -0.0133872, -0.0273788, -0.0271311, -0.0214956, 0.00498129, -0.0151128, - 0.0111828, -0.0314769, 0.00919131, -0.0110078, 0.0173443, -0.00997421, 0.0334072, 0.0217874, - 0.106887, 0.0221746, 0.0352712, 0.00712471, -0.0108071, 0.04537, 0.059324, 0.0630501, - -0.0271398, -0.021732, 0.056126, 0.0255872, 0.0172018, -0.0036939, -0.00765012, -0.0380807, - 0.028154, 0.0365638, 0.0154153, -0.0389189, -0.00990173, 0.012854, 0.0239918, 0.0617999, - 0.00838691, 0.0237335, 0.0890365, 0.043905, 0.0672928, 0.0101857, -0.022384, -0.00226531, - 0.00802148, -0.0030324, -0.0216086, 0.0359947, 0.0382351, 0.0844859, 0.0510145, 0.0127371 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p62(hatfit_yaw00_lev2_p62); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p62_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p63.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p63.mh deleted file mode 100755 index 5244e9c..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p63.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p63.mh: - -#ifndef stasm_hat_yaw00_lev2_p63_mh -#define stasm_hat_yaw00_lev2_p63_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p63(const double* const d) // d has 160 elements -{ - const double intercept = -0.423857; - const double coef[160] = - { - 0.0265549, -0.0276044, -0.00370968, -0.0118707, -0.00882112, -0.0246113, -0.0467704, 0.0199824, - -0.00186678, 0.0315145, -0.000559825, 0.00730218, 0.0767914, 0.00480617, -0.0305773, -0.00495591, - -0.00544638, -0.0269742, -0.00591436, -0.000756903, 0.0649644, -0.0157527, 0.00517219, 0.0190719, - -0.00839473, -0.0469533, -0.0418069, -0.0369397, -0.0190076, -0.0324, -0.0165552, 0.0149198, - -0.00471751, 0.0171046, 0.000668457, -0.0698986, -0.0619992, -0.0615341, -0.12642, 0.0252094, - -0.0435028, 0.043545, 0.0441414, 0.0306194, 0.00830911, -0.00160527, 0.0788639, -0.022395, - 0.0282649, 0.0525967, 0.0219707, 0.0154664, -0.0297831, 0.0328373, 0.0345584, -0.0153494, - 0.00618624, 0.0107224, 0.0286507, 0.0758012, 0.00679737, 0.0580987, 0.0755779, -0.0314715, - 0.0216487, 0.00472771, 0.0206649, 0.0615916, -0.00126626, 0.0549339, 0.0545175, -0.0178235, - 0.00250801, -0.0135117, 0.0126693, 0.0254024, -0.0119378, -0.0245614, 0.0872058, -0.061571, - -0.0144706, -0.0139933, 0.0138068, -0.00669542, -0.000147116, 0.0109306, 0.0232728, 0.0236077, - -0.00255406, -0.0218093, -0.0178081, -0.0399348, -0.0541426, 0.0179802, 0.000382026, -0.080307, - -0.0241902, -0.0399402, -0.00650599, -0.0171668, -0.0288674, -0.0543343, 0.00140922, -0.0267591, - -0.0219663, -0.0134303, -0.0101318, -0.0399241, 0.00262961, -0.000841279, 0.000310534, 0.0195679, - 0.00601974, 0.00463629, 0.0528312, 0.0334954, 0.0483439, 0.0173347, 0.0736588, 0.0803597, - 0.0245546, 0.00187879, 0.0513636, -0.0410876, -0.0243436, 0.00211205, 0.0302069, 0.0518358, - 0.000846981, 0.0155087, 0.0579027, -0.000698564, 0.0446464, 0.00159007, -0.00940185, 0.0313693, - 0.0356152, 0.00868856, 0.0632068, 0.0260316, 0.0439695, 0.0391611, -0.00809624, 0.0123908, - 0.0122246, 0.0118871, -0.000141026, 0.0285526, 0.013631, 0.0368892, 0.0312239, -0.0214874, - -0.0506746, -0.00442504, -0.0284878, -0.000463468, 0.0254501, 0.0404056, 0.000673732, 0.0570073 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p63(hatfit_yaw00_lev2_p63); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p63_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p64.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p64.mh deleted file mode 100755 index c42863d..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p64.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p64.mh: - -#ifndef stasm_hat_yaw00_lev2_p64_mh -#define stasm_hat_yaw00_lev2_p64_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p64(const double* const d) // d has 160 elements -{ - const double intercept = -0.318611; - const double coef[160] = - { - 0.0303392, -0.0338756, 0.0834237, 0.120868, 0.0812831, 0.0402208, 0.0340414, 0.00752149, - 0.0202789, -0.0293674, -0.0115149, -0.0100918, -0.0275825, -0.00502325, -0.0134966, 0.0249952, - -0.00173327, -0.0202851, -0.0188452, -0.00362694, -0.0342703, -0.0545043, -0.0315145, 0.0116079, - -0.0292766, -0.0238764, -0.043136, -0.0673906, -0.024928, -0.0381466, -0.0403704, -0.0131486, - -0.00476721, 0.0190162, -0.0253495, -0.035439, 0.0183347, -0.0346492, 0.0120401, 0.0775275, - -0.0580545, 0.0137694, -0.0451933, -0.0478655, -0.0560371, -0.0302546, 0.0278067, -0.0906249, - -0.00611261, 0.0136716, 0.0284031, 0.0141213, 0.0380981, 0.0211424, 0.061006, 0.0220357, - -0.0239319, 0.004601, 0.0116586, 0.00780832, 0.0126529, 0.0389716, 0.0619632, -0.0620037, - -1.6622e-05, 0.00529334, 0.0163925, 0.0575629, -0.0126739, 0.0293707, 0.0555329, -0.0340061, - -0.0492854, -0.0263342, -0.0230841, -0.00664351, -0.00307715, -0.0315079, -0.00801194, -0.0224053, - 0.0216491, -0.0340911, 0.0330381, -0.0138968, -0.0369097, -0.0292224, 0.00749071, -0.0717104, - 0.00193177, -0.0161945, -0.0172798, -0.0321503, -0.0400085, -0.0127888, -0.010172, 0.0146021, - 0.0102315, 0.0240944, 0.0175333, 0.0151656, 0.0321006, -0.00574093, -0.0279765, 0.0826356, - -0.0166594, 0.032607, 0.00456517, 0.0192567, 0.0363608, 0.0470817, 0.0494096, 0.0576953, - 0.0478303, 0.0388651, 0.0304998, 0.0556383, 0.06976, 0.0325026, 0.0548839, 0.0677554, - 0.0387995, 0.058294, 0.0845377, 0.0621987, 0.0602871, 0.100239, -0.032246, 0.0648524, - -0.00656602, 0.0129769, 0.0062775, 0.025612, 0.0493872, 0.0198563, 0.0228554, 0.0235844, - -0.0314601, 0.0076225, -0.013869, 0.00267554, -0.00261668, -0.026843, -7.51825e-05, -0.0290167, - -0.0213466, 0.0254961, -0.0551618, 0.000592905, -0.0348985, -0.00987818, -0.00998483, -0.000237291, - -0.0332162, 0.114249, 0.00864831, 0.00608068, 0.00960567, -0.00525184, -0.00263628, 0.0300145 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p64(hatfit_yaw00_lev2_p64); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p64_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p65.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p65.mh deleted file mode 100755 index d220dc0..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p65.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p65.mh: - -#ifndef stasm_hat_yaw00_lev2_p65_mh -#define stasm_hat_yaw00_lev2_p65_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p65(const double* const d) // d has 160 elements -{ - const double intercept = -0.243987; - const double coef[160] = - { - -0.0349282, -0.0157765, -0.0086924, -0.00282699, -0.0149473, -0.0225539, 0.00811034, -0.0277787, - -0.0445545, -0.0268885, 0.00123814, 0.018723, 0.0215577, 0.00348647, 0.0432877, 0.015393, - -0.0146094, -0.0727512, -0.0167339, -0.00526844, 0.0124206, -0.0192743, -0.00112128, 0.0524325, - 0.0318377, -0.0210181, 0.0185195, 0.0107726, 0.00235686, -0.0229252, -0.0378398, 0.0122169, - 0.0648801, -0.0481284, -0.0225702, -0.016585, -0.0145166, 0.00342191, -0.0343923, 0.0447919, - 0.00730072, 0.00968041, 0.0132859, 0.025228, -0.0165621, 0.00393144, 0.0214046, 0.00439897, - 0.0515766, 0.105316, 0.0531057, 0.0329829, 0.00820431, 0.0454908, 0.0646219, 0.0528244, - 0.0913025, 0.116096, 0.00542359, 0.00230105, -0.00361529, 0.0339653, 0.0867848, 0.0887866, - 0.0249319, 0.0225997, -0.0341391, -0.0283439, -0.032192, -0.0270769, -0.0276354, -0.0278922, - -0.00167969, 0.031839, 0.0130776, 0.0513927, 0.0148874, -0.0333221, -0.0565927, -0.0919326, - -0.0481775, 0.00961148, 0.0369173, 0.0339856, 0.0305644, -0.0105843, -0.0406127, -0.0459686, - -0.0572706, -0.0102658, 0.006908, 0.024483, 0.0237157, 0.0174332, 0.00794934, -0.0169364, - -0.0855346, -0.0607299, -0.0165062, 0.0368585, 0.0678364, 0.0470307, 0.0111429, -0.0778053, - -0.0145917, -0.00644063, -8.66602e-05, 0.0483476, 0.0388019, 0.0390603, 0.0208508, -0.0057846, - 0.02632, 0.0177281, -0.0409234, -0.0488005, -0.00595819, 0.0191264, 0.0198247, 0.0079343, - 0.00294371, 0.0450466, -0.049365, -0.0611519, -0.0673944, 0.00661048, -0.0227719, -0.0129555, - 0.0390499, 0.0313589, -0.0183179, -0.027491, -0.0362773, -0.0336254, -0.0183198, 0.0135441, - 0.0478529, 0.0184543, 0.00221541, -0.0113542, -0.0103142, -0.0332987, -0.00890361, 0.00957642, - 0.035809, 0.00510408, 0.0259121, 0.00585391, 0.00227161, -0.00880785, 0.00959148, 0.0217641, - -0.00181733, -0.0159237, -0.00991204, -0.0155567, -0.00237713, 0.0162149, 0.0108071, 0.0235907 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p65(hatfit_yaw00_lev2_p65); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p65_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p66.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p66.mh deleted file mode 100755 index d97f04b..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p66.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p66.mh: - -#ifndef stasm_hat_yaw00_lev2_p66_mh -#define stasm_hat_yaw00_lev2_p66_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p66(const double* const d) // d has 160 elements -{ - const double intercept = -0.0701518; - const double coef[160] = - { - -0.0708654, 0.00765122, -0.0479664, -0.0151742, -0.0449968, 0.0104616, 0.0187811, -0.111585, - -0.0537272, -0.0074824, 0.00745304, 0.0122481, 0.00990062, -0.0218072, 0.00427396, -0.0480915, - -0.0640504, -0.0264089, -0.0418814, 0.0102942, 0.00557185, 0.022444, 0.0205122, -0.0415472, - -0.000980233, 0.0081122, 0.0142478, 0.0312302, 0.0283258, 0.0249698, 0.0275674, -0.0121698, - 0.00328101, -0.0607017, -0.0547278, -0.00533866, -0.0167359, -0.0187817, 0.0308578, -0.0826227, - 0.0210649, -0.0401433, 0.0858922, -0.0162593, -0.0293997, -0.00709196, -0.0103385, -0.0348045, - 0.046604, 0.0130812, 0.0206067, 0.00890424, -0.0267464, -0.00939369, 0.0128553, -0.0132674, - 0.0038518, -0.00440902, 0.0568641, 0.0129008, -0.0236924, -0.0437552, 0.0106715, -0.00669881, - -0.0294986, -0.0368686, -0.0473002, -0.0190321, -0.0199637, -0.0099342, 0.00954593, 0.0244957, - -0.011637, 0.0395508, 0.0042163, 0.0441084, 0.0638421, 0.0394723, 0.103015, 0.156714, - 0.052255, 0.0621412, 0.0272445, 0.00398312, 0.0339932, 0.0758456, 0.0253288, 0.0927471, - 0.0252759, 0.00858632, -0.00436336, -0.000708602, 0.0080489, 0.0244064, -0.0327362, 0.0375689, - 0.0432853, 0.0704611, 0.0170734, 0.00734155, 0.00790755, 0.0196225, -0.0162497, 0.0689148, - -0.0052587, 0.0383359, 0.0450021, 0.0342107, 0.0244859, -0.0326178, -0.0691935, -0.0223194, - -0.0558986, 0.031864, -0.0243773, 0.0420224, 0.022056, 0.0248185, 0.0355769, 0.00639857, - -0.0372143, -0.0413475, 0.0206646, -0.0256079, 0.013142, 0.000549, 0.0656237, -0.0167369, - -0.00157571, -0.0133437, 0.0393268, 0.0442889, 0.023384, 0.0158681, -0.0211338, -0.0113463, - -0.0411466, -0.0306031, -0.0099946, -0.00577642, 0.0167192, 0.015533, -0.0201584, -0.0222372, - -0.0119031, -0.0196272, -0.0679993, -0.0403379, -0.0448462, -0.00325033, 0.0126336, 0.0200267, - -0.00218492, 0.0761284, 0.00536654, -0.045271, -0.0379694, -0.068879, -0.048176, -0.0235171 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p66(hatfit_yaw00_lev2_p66); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p66_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p67.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p67.mh deleted file mode 100755 index f6cd06c..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p67.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p67.mh: - -#ifndef stasm_hat_yaw00_lev2_p67_mh -#define stasm_hat_yaw00_lev2_p67_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p67(const double* const d) // d has 160 elements -{ - const double intercept = -0.247596; - const double coef[160] = - { - -0.0736169, -0.0276127, -0.0110018, 0.0327689, 0.0417696, -0.0508686, 0.0518187, 0.0840511, - -0.0303886, -0.00991154, -0.0190655, 0.0268638, 0.0390148, -0.0306362, 0.00124625, 0.0292091, - -0.028384, 0.0154506, -0.0489238, -0.0292177, -0.0432419, 0.0237735, -0.00645516, -0.075781, - -0.0344447, 0.00795708, -0.0113362, 0.00375715, -0.0307709, 0.019674, 0.0208082, -0.0810644, - -0.0320321, -0.00306997, -0.0356069, -0.0101321, -0.0319446, -0.00480176, 0.0949859, -0.0169822, - -0.00113823, 0.00555259, 0.071154, -0.062097, -0.0217091, -0.0145069, 0.00738431, -0.0397669, - 0.01241, -0.0189924, 0.0300015, -0.0195862, -0.00475629, -0.0265258, 0.0166531, 0.0318153, - -0.00367116, -0.02759, 0.0188702, -0.0188599, -0.00399811, 0.0167034, -0.0182665, -0.0490339, - 0.0140556, -0.0226848, 0.0621946, 0.00136623, 0.0219617, -0.00417779, 0.00867766, 0.0167383, - 0.0303028, -0.0610571, -0.00157912, 0.00590548, -0.000679747, -0.0181829, 0.0759585, -0.0109324, - 0.103172, 0.0419958, 0.0377971, 0.0550718, 0.0372263, 0.0418955, 0.0177629, 0.105186, - 0.0102773, -0.0236646, 0.0132591, 0.0170306, 0.0274957, 0.0243854, -0.0133287, 0.00106572, - 0.0625944, 0.0669875, 0.0409219, -0.0185662, 0.0264258, -0.00204492, 0.0117916, 0.0869794, - 0.0293629, 0.0145125, -0.0270072, -0.029051, 0.00351191, 0.0514497, -0.0230748, -0.00405066, - 0.0308248, 0.0564195, 0.0713889, 0.0670879, 0.0589003, 0.0795609, -0.0235842, 0.0512964, - 0.0126223, -0.0347411, 0.0108369, -0.00844631, -0.0383972, -0.00864758, -0.0113566, -0.0264627, - -0.0568571, -0.026271, 0.0151984, -0.00574079, -0.0192334, -0.02782, 0.044097, -0.0414028, - -0.0366356, -0.0275175, -0.0127972, -0.0357274, -0.0439535, -0.0347405, 0.0295106, -0.0334166, - -0.0115584, -0.00484589, 0.0494478, 0.0215708, 0.0369365, 0.00632509, 0.029246, 0.0119853, - -0.0246275, -0.010441, -0.01384, -0.00788622, 0.00133374, 0.0109552, -0.0532666, 0.0105872 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p67(hatfit_yaw00_lev2_p67); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p67_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p68.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p68.mh deleted file mode 100755 index 4fbe40c..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p68.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p68.mh: - -#ifndef stasm_hat_yaw00_lev2_p68_mh -#define stasm_hat_yaw00_lev2_p68_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p68(const double* const d) // d has 160 elements -{ - const double intercept = -0.0757646; - const double coef[160] = - { - -0.00765739, 0.00768329, -0.0575099, -0.0516348, -0.0266656, -0.0500927, 0.0358745, -0.0175411, - 0.0177345, 0.0236582, -0.0120278, 0.00559529, -0.0201657, -0.030502, 0.054121, 0.0297531, - -0.0419598, -0.00731448, -0.0151526, -0.00912542, -0.0240267, -0.0837478, -0.0202523, -0.0256003, - -0.022269, 0.00466779, -0.00589252, 0.0435573, 0.0254818, -0.0237978, 0.0257976, 0.0146779, - -0.043373, -0.00708679, -0.0357599, -0.0156336, -0.0216445, -0.0389312, 0.0389291, 0.0233499, - -0.00632229, 0.000509776, -0.0435948, -0.0470262, -0.0667185, 0.0747328, 0.126893, -0.00129318, - -0.0321395, -0.00897225, -3.68053e-05, -0.0283675, -0.0115208, -0.0179474, 0.00675529, -0.00883719, - -0.00705335, 0.0316865, 0.0578501, -0.00771022, 0.0100425, -0.0355437, 0.00655766, -0.0165289, - -0.00349749, 0.0104534, 0.0685608, -0.0369772, 0.00639225, -0.0285923, -0.0259713, -0.00514401, - 0.00499322, -0.0696404, 0.0409068, -0.0124631, 0.00566939, 0.00741387, 0.0199054, 0.0279777, - 0.0304533, 0.0406592, -0.00748054, 0.0523836, 0.0196262, 0.0455741, -0.0128034, 0.0109261, - -0.00248401, 0.0177039, 0.0520706, 0.0980207, 0.0581796, 0.0613779, -0.0584795, -0.0338671, - 0.0320062, 0.000106168, 0.000814598, 0.0446986, 0.0337714, 0.0634353, -0.0129168, 0.04023, - 0.0377319, -0.00135489, -0.00272649, 0.019746, 0.00571683, 0.02824, 0.0143515, 0.0464345, - 0.0379201, -0.0171932, 0.0394895, 0.0366438, 0.0357272, 0.0660102, 0.00613955, 0.000755978, - -0.0498287, -0.00827933, -0.00564258, 0.0293193, -0.0132385, -0.0318905, -0.0579884, -0.0629771, - 0.0413162, 0.0205211, -0.0287987, -0.0527852, -0.0204785, -0.00947517, 0.0112812, 0.0552937, - 0.0302039, 0.0256271, 0.0032538, -0.0196052, -0.0411717, -0.023336, -0.00622439, 0.0119921, - -0.0111091, 0.0054059, 0.00325768, 0.0155701, -0.0202819, -0.0142514, -0.00104689, -0.0309015, - -0.0329345, -0.0311195, 0.00280669, -0.0246231, -0.0683577, -0.0298862, 0.0717735, -0.0271166 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p68(hatfit_yaw00_lev2_p68); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p68_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p69.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p69.mh deleted file mode 100755 index 43fede1..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p69.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p69.mh: - -#ifndef stasm_hat_yaw00_lev2_p69_mh -#define stasm_hat_yaw00_lev2_p69_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p69(const double* const d) // d has 160 elements -{ - const double intercept = -0.501654; - const double coef[160] = - { - 0.0230762, 0.013781, -0.00657445, 0.0471398, -0.0427199, 0.0616323, 0.0787647, -0.0205178, - 0.0283805, 0.00417323, -0.0299789, -0.00113931, 0.00442089, 0.0032871, 0.0688228, 0.0346765, - 0.0165321, -0.00414199, 0.0122695, -0.00732337, 0.0150011, -0.0245671, 0.0132475, 0.032327, - 0.000797509, -0.00988351, 0.051295, 0.0229001, 0.0359781, -0.0336637, -0.0108366, 0.0252209, - 0.020593, -0.052713, -0.00831198, -0.023326, 0.0160632, -0.00662693, 0.0392824, 0.0359511, - 0.0132203, 0.0843051, 0.0489842, 0.0283437, 0.0252406, -0.0132659, -0.00237541, 0.0296945, - -0.0310582, 0.0390671, 0.0513185, 0.063233, 0.0463622, 0.0295249, -0.046507, -0.0503186, - 0.00465255, 0.042021, 0.0377644, 0.0377952, 0.0454656, 0.0607733, 0.011305, 0.00291495, - 0.0162281, 0.0229597, 0.000801866, -0.0258597, -0.006601, 0.0314184, 0.0300617, 0.0221378, - 0.0353532, -0.0223414, 0.0576977, 0.0532616, 0.0339265, 0.0812579, 0.0746731, 0.0397337, - -0.0452784, -0.0296776, -0.00618464, -0.0518293, -0.0230095, -0.0246242, -0.0108614, -0.032008, - 0.0463778, -0.00181644, -0.011047, -0.0398095, -0.032624, -0.0271314, -0.0057484, 0.0243942, - 0.0450044, 0.00126629, -0.0208306, -0.000854032, -0.0459446, -0.0179491, 0.0195236, 0.023157, - 0.0121265, -0.00441669, -0.00206993, 0.0209117, -0.0164818, -0.0292706, 0.0150287, -0.0104449, - 8.88458e-05, -0.00480531, 0.0246249, 0.00735242, -0.0548231, -0.0298589, 0.00930757, -0.0227601, - -0.0147846, -0.00834553, 0.0140991, 0.0687771, 0.0127808, -0.0391709, -0.100938, -0.0643944, - 0.00304581, 0.0149064, -0.00979668, -0.00442815, 0.00117602, 0.0288025, 0.0130279, 0.0453444, - 0.00588069, 0.0113229, 0.0145629, -0.010143, 0.0273337, 0.00405032, -0.026315, 0.0255917, - -0.0205528, -0.0099725, -0.00149903, -0.00361405, 0.0109862, 0.0220806, 0.00492744, -0.0209835, - -0.0241067, -0.0574909, -0.0389412, -0.0288473, -0.0352359, -0.0309879, 0.133181, -0.0314818 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p69(hatfit_yaw00_lev2_p69); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p69_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p70.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p70.mh deleted file mode 100755 index 5e758c7..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p70.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p70.mh: - -#ifndef stasm_hat_yaw00_lev2_p70_mh -#define stasm_hat_yaw00_lev2_p70_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p70(const double* const d) // d has 160 elements -{ - const double intercept = -0.796744; - const double coef[160] = - { - 0.0341126, 0.030913, 0.0565538, -0.0217916, 0.0594326, -0.00177041, 0.0670565, 0.110014, - 0.0136715, -0.0211248, 0.0298438, -0.00643463, 0.0507008, 0.0165849, 0.00193834, 0.0198088, - 0.040878, -0.00468351, 0.0100448, -0.00929118, -0.00366385, 0.0370591, 0.0151456, -0.00610841, - -0.013336, -0.0204119, 0.0169284, 0.0136462, 0.0235074, 0.0580339, -0.0254044, -0.0406963, - 0.0457589, 0.000602063, 0.0289157, 0.0500932, 0.0437863, 0.0717904, 0.115542, 0.0436263, - 0.0597082, 0.04082, 0.0822951, 0.0789102, -0.0223879, 0.0168742, 0.00346895, -0.00116304, - 0.00827851, -0.0188379, 0.00784034, 0.0193207, 0.00303974, 0.0132664, 0.0323815, 0.0108335, - -0.000397366, 0.0480992, 0.0571615, -0.0306483, 0.0298595, -0.0114398, 0.00719362, 0.0230871, - 0.0337041, 0.0186319, 0.016356, -0.0379243, -0.0010245, 0.0157864, 0.039134, 0.0443413, - -0.00662945, 0.0302044, 0.100822, 0.0421849, 0.021755, 0.00721991, -0.0526274, -0.00401875, - 0.00745431, -0.0546156, -0.0483602, -0.0723921, -0.0346058, 0.00494108, 0.0417335, 0.038248, - -0.0521416, -0.0183956, 0.0329272, 0.00122424, -0.0210599, -0.0336885, -0.000733202, -0.0429939, - -0.0131328, -0.00134099, 0.00244619, -0.00476187, -0.0511824, 6.90332e-05, 0.0192196, 0.035143, - -0.0167092, -0.0203088, 0.0356238, 0.0305921, 0.0310917, -0.0159399, -0.00998229, -0.0332763, - -0.00396009, -0.0509041, -0.0438387, -0.0139841, 0.0156792, 0.0802788, -0.00387387, 0.0396491, - -0.0138537, 0.00411943, 0.0459761, 0.0705967, 0.0388752, -0.00499727, -0.0434178, -0.0411767, - 0.00068529, -0.0315149, -0.0276846, -0.0166414, 0.0211953, -0.0120308, 0.101158, -0.0236568, - 0.00511414, -0.00715396, 0.00110345, -0.0277911, 0.01183, -0.0440184, 0.065236, -0.0390393, - 0.0345616, 0.0270472, -0.0106751, -0.0168165, 0.00699347, 0.0236292, 0.0722466, 0.0388224, - 0.0165932, 0.0619228, 0.0400074, 0.00844104, -0.0458653, -0.0401251, -0.0834489, -0.053744 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p70(hatfit_yaw00_lev2_p70); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p70_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p71.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p71.mh deleted file mode 100755 index aa708b4..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p71.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p71.mh: - -#ifndef stasm_hat_yaw00_lev2_p71_mh -#define stasm_hat_yaw00_lev2_p71_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p71(const double* const d) // d has 160 elements -{ - const double intercept = -0.228303; - const double coef[160] = - { - -0.017111, -0.022052, -0.00614923, -0.0357715, -0.0435176, 0.0448165, 0.0220894, -0.0516583, - 0.0108187, 0.00215221, 0.0254229, 0.0407787, -0.00456935, 0.00405667, -0.00742958, -0.0386631, - -0.015499, -0.00547458, -0.0352142, -0.0268172, 0.0305546, 0.0189814, 0.0391679, 0.0137124, - -0.0184416, 0.0157674, -0.0167993, -0.00814776, 0.0233144, 0.00835204, 0.0267862, 0.0261481, - -0.031253, 0.053105, 0.00506253, 0.0295576, 0.0810968, 0.000240087, 0.0685961, 0.0736698, - 0.0396325, -0.00192333, 0.0398411, -0.0224833, 0.0568153, 0.0653045, 0.0746592, 0.0545985, - 0.0476846, 0.0445793, 0.0128924, 0.0168234, 0.0199235, 0.00612228, 0.00681783, 0.0652892, - 0.0271855, 0.0683756, 0.0482958, 0.0264938, 0.0049733, -0.00396101, -0.0108081, 0.0179262, - -0.0120251, 0.0171102, 0.0621464, 0.0619762, 0.00706686, -0.0169642, -0.056881, -0.0319456, - 0.0173384, 0.0326166, 0.0196537, 0.024805, 0.0106165, 0.0307442, 0.0466129, 0.0408582, - -0.0466218, -0.00108609, 0.0448339, -0.0176936, -0.00619008, -0.00752668, -0.00836617, -0.0182072, - -0.0185282, -0.0351142, 0.0156919, 0.0410905, 0.028794, 0.0296952, -0.0019478, -0.00737658, - -0.0497287, -0.0804701, -0.028536, 0.00617823, 0.0208016, 0.0122223, -0.0116624, -0.0289944, - -0.0185809, -0.00769248, -0.049657, -0.0105338, -0.0136338, -0.0318718, -0.00579806, -0.0141414, - -0.0423346, 0.00531431, -0.029213, -0.00106899, -0.0104407, -0.0311609, 0.0452972, -0.0288284, - -0.000861945, -0.0264658, -0.060526, -0.0221315, -0.0058577, -0.00805579, 0.126322, 0.0137975, - 0.0286371, 0.0189514, 0.0126194, 0.0137927, -3.51434e-05, 0.0184098, -0.0200559, -0.00883375, - 0.0122228, 0.0290598, 0.0135307, -0.0147906, -0.0471683, -0.000711908, -0.0279763, -0.00207475, - -0.0208812, 0.00633825, -0.0057985, -0.0346104, -0.0503356, -0.00016977, -0.00822498, -0.00219097, - 0.00821315, 0.0429233, -0.0253353, -0.049237, -0.037318, -0.0431846, -0.104914, -0.0377205 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p71(hatfit_yaw00_lev2_p71); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p71_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p72.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p72.mh deleted file mode 100755 index b9d96a4..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p72.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p72.mh: - -#ifndef stasm_hat_yaw00_lev2_p72_mh -#define stasm_hat_yaw00_lev2_p72_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p72(const double* const d) // d has 160 elements -{ - const double intercept = 0.0989027; - const double coef[160] = - { - 0.0353764, 0.0277736, 0.04861, 0.04112, 0.0318701, 0.0638361, 0.0247897, 0.0240266, - -0.029073, 0.0102228, 0.0311509, 0.0575003, 0.0473831, -0.0324984, -0.0463012, -0.0206577, - -0.037861, 0.0584556, 0.000544823, 0.0446031, 0.0441769, 0.0171549, 0.0071004, -0.00858692, - -0.0259733, 0.0649289, 0.0597177, 0.0379904, 0.060508, 0.0483501, 0.0606923, 0.0483977, - 0.0661255, 0.0586531, -0.0390427, -0.0124601, 0.00511991, 0.00752953, 0.0470815, 0.0899895, - -0.0509386, -0.0158875, 0.0177365, 0.0503958, 0.0272851, 0.00163617, -0.0573846, -0.032114, - -0.0140886, -0.0360239, -0.0132793, -0.0438912, -0.0533735, -0.0178983, 0.00808064, -0.0037729, - 0.00674255, 0.00883555, -0.0407354, -0.0373997, -0.0647183, -0.048717, -0.0122859, -0.0419641, - -0.0126266, -0.0328703, -0.012028, -0.0100037, -0.0112557, -0.0387492, 0.0066805, -0.0281232, - -0.0138208, -0.0198197, 0.00231299, 0.0379716, 0.0331442, 0.00275953, 0.0226216, 0.0050906, - 0.0396779, 0.00572949, 0.0354563, 0.0213916, -0.0189767, 0.0629411, 0.0430068, -0.001415, - 0.00446211, 0.0394156, -0.02176, -0.0226459, -0.016732, 0.0233161, 0.000864116, 0.00640479, - 0.00623369, 0.0189184, -0.0344753, -0.042294, -0.0352279, -0.00984565, -0.0545616, -0.00547315, - 0.00238742, 0.00755953, -0.00149086, 0.00472792, -0.0127927, 0.0140774, -0.0201612, -0.00222445, - 0.00755303, -0.0167544, -0.0126289, 0.010009, -0.0270465, 0.0279078, 0.0155872, 0.0209598, - -0.0326684, 0.061328, 0.0523704, -0.00903776, -0.0186215, -0.0228648, -0.000452808, 0.0277466, - -0.0358783, -0.0374315, -0.0188875, -0.0180433, -0.0288677, -0.0363021, -0.0697074, -0.0256992, - -0.0105341, -0.000758809, -0.019205, 0.00468453, 0.0167659, -0.0189989, -0.00735232, -0.0126924, - -0.0193627, 0.00313296, -0.0349624, -0.00599344, -0.0143699, -0.0147435, -0.00646707, -0.0132372, - 0.00929204, -0.0217543, -0.00755049, -0.0319638, 0.0274715, -0.0140345, -0.0298341, 0.000378985 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p72(hatfit_yaw00_lev2_p72); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p72_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p73.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p73.mh deleted file mode 100755 index 8d96d83..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p73.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p73.mh: - -#ifndef stasm_hat_yaw00_lev2_p73_mh -#define stasm_hat_yaw00_lev2_p73_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p73(const double* const d) // d has 160 elements -{ - const double intercept = 0.2272; - const double coef[160] = - { - 0.0255893, 0.0398401, 0.0722409, -0.0445891, -0.00470297, 0.0199131, 0.0165382, 0.0502811, - -0.00357428, 0.0267947, 0.0298553, 0.0338194, 0.0115309, 0.0525491, -0.0585943, 0.0168286, - -0.0344251, -0.0135233, 0.00966544, -0.00890617, 0.0219983, 0.0400588, -0.0679062, -0.0236777, - -0.0311951, -0.00646702, -0.00432313, 0.0206786, 0.000559952, 0.0152661, -0.0226117, -0.013479, - -0.0105264, 0.068243, 0.0255499, 0.0686949, 0.0348068, 0.00315771, 0.022277, -0.0270726, - -0.0638634, -0.0465897, 0.000870173, -0.00499389, 0.0135916, -0.0406264, 0.134036, -0.0508613, - 0.0164918, -0.0227687, 0.0123077, 0.0246532, 0.0388393, 0.0162069, 0.0206663, -0.0122329, - 0.0299857, -0.00969451, 0.012411, 0.029231, 2.48269e-05, 0.0192934, 0.0275271, 0.0159747, - 0.00547446, -0.00790329, -0.0158997, -0.0171256, -0.0474391, -0.0183324, 0.00562775, -0.014244, - 0.00208121, 0.014199, -0.0392767, -0.0390247, -0.0773608, -0.0353364, -0.059764, -0.00843707, - 0.0343853, 0.0210175, 0.0667703, -0.0188759, 0.00741526, -0.0248253, 0.0236731, 0.0150207, - 0.02456, 0.011471, -0.00712584, -0.00760106, 0.00412152, -0.00145081, -0.00908071, 0.0340654, - -0.0160172, 0.0134107, -0.033796, -0.0640794, -0.0423164, -0.0309958, -0.0195926, 0.0046965, - -0.0302013, 0.00814257, 0.0109026, -0.00412582, -0.0214709, -0.00833786, -0.0445951, 0.00290581, - -0.0485127, 0.0372803, -0.0382319, -0.037839, -0.0146938, -0.0105336, -0.0543978, -0.0349175, - -0.0338447, -0.0119121, 0.0375504, -0.070027, -0.031661, -0.0501551, -0.0756655, -0.0274004, - 0.0166032, -0.00992744, 0.00897534, 0.0151133, 0.0147912, 0.0192464, 0.0249975, 0.000497542, - -0.0298722, -0.0303016, -0.0064489, 0.0242609, 0.00872472, 0.0181461, -0.00119551, 0.00268649, - -0.022466, -0.00770383, 0.00493488, 0.0351058, 0.0112933, -0.0113295, -0.0163328, -0.00654885, - -0.00769511, -0.00613724, -0.0214477, 0.0156502, 0.00151531, -0.0105068, -0.0139874, -0.00132222 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p73(hatfit_yaw00_lev2_p73); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p73_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p74.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p74.mh deleted file mode 100755 index 84e0683..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p74.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p74.mh: - -#ifndef stasm_hat_yaw00_lev2_p74_mh -#define stasm_hat_yaw00_lev2_p74_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p74(const double* const d) // d has 160 elements -{ - const double intercept = 0.220837; - const double coef[160] = - { - 0.0997616, 0.0125493, 0.0805498, 0.0505776, 0.0241363, -0.0158419, -0.00138413, 0.122373, - -0.0548679, -0.0388266, -0.0205136, 0.00769371, -0.0244587, -0.00259736, -0.0334081, -0.0375006, - -0.000879399, 0.0375804, 0.022773, -0.0364326, -0.0197282, -0.0116901, -0.0067975, 0.0542848, - -0.00496367, 0.00205504, 0.00612758, -0.0245926, -0.00805552, 0.0306298, -0.0388553, -0.00607397, - -0.0344556, 0.00688398, 0.0726518, 0.0611777, 0.0524567, 0.133079, -0.0805806, -0.0304452, - 0.0178677, 0.0146661, -0.0404539, -0.0564941, -0.0251524, -0.00790241, 0.0491951, 0.0209929, - -0.0179925, -0.0133809, 0.0486278, -0.00252625, 0.00212989, -0.0610684, 0.061689, -0.0801673, - -0.0163816, -0.0372453, 0.00362735, -0.0162172, 0.00727025, -0.0274276, 0.0750418, -0.045223, - -0.000489668, -0.00779798, 0.0240939, 0.0361449, 0.0502159, 0.00077348, 0.0667484, -0.0117676, - 0.0332801, 0.00466945, -0.0202147, 0.00608668, -0.000506863, -0.00459854, -0.00812146, 0.0152727, - -0.0425586, -0.0802285, 0.00159375, 0.0558017, -0.00765114, 0.00755221, -0.0865962, -0.0550125, - -0.00236795, -0.020008, 0.0172968, -0.0217609, -0.00662207, -0.00394266, 0.0197515, 0.00845607, - 0.00294191, -0.015641, 0.0306525, -0.0346056, 0.00200094, -0.0243319, -0.0388526, -0.0104735, - 0.0332378, 0.00964622, 0.015311, -0.031667, -0.0026931, -0.0167854, 0.0413121, 0.0305034, - -0.0497629, 0.0223061, -0.0173011, -0.0670779, -0.0373291, -0.0491551, -0.0999961, -0.0247411, - -0.00199409, 0.00331581, -0.00190104, 0.0357631, -0.0189724, -0.0121322, -0.0489254, -0.00806714, - -0.00593859, -0.0420058, -0.00393673, -0.0122627, -0.02622, -0.00047707, 0.00341348, -0.0080613, - -0.0147898, 0.00988879, 0.0294775, -0.025466, -0.0314937, -0.0253052, -0.00229925, -0.0165381, - 0.0120794, -0.000878892, -0.0134628, -0.0299334, -0.000286509, 0.0341773, 0.00942387, 0.01636, - 0.00437037, 0.0138162, -0.00189742, 0.0512054, 0.0145081, -0.0253149, -0.0284283, -0.000407491 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p74(hatfit_yaw00_lev2_p74); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p74_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p75.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p75.mh deleted file mode 100755 index 1ff5063..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p75.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p75.mh: - -#ifndef stasm_hat_yaw00_lev2_p75_mh -#define stasm_hat_yaw00_lev2_p75_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p75(const double* const d) // d has 160 elements -{ - const double intercept = 0.143169; - const double coef[160] = - { - 0.00500872, 0.0788672, 0.0830198, 0.0347642, -0.0187663, -0.0351558, -0.0415346, 0.0104833, - 0.0498593, -0.0189021, -0.00322631, 0.0243254, 0.0296824, 0.0101936, -0.0423976, 0.0253372, - 0.0264438, 0.0109294, 0.00481503, 0.0401891, 0.00785275, 0.0183256, -0.0359458, 0.0222586, - 0.0156764, -0.0259935, 0.0140222, 0.032216, 0.0129041, 0.0165035, 0.0218827, 0.0255931, - -0.000384394, 0.00497098, 0.0593127, 0.0308721, 0.00392444, 0.044366, -0.00035291, -0.00172973, - -0.030345, -0.0104249, -0.0251774, -0.0307689, -0.0132279, 0.0105106, -0.0441885, -0.00590676, - 0.0163224, 0.0580328, 0.0210897, -0.0185961, -0.0262614, 0.0140714, 0.00418796, 0.0559395, - 0.0287848, 0.0198064, 0.0171609, -0.0322414, -0.0331728, -0.0154635, 0.0338829, 0.00292881, - -0.0252734, -0.00853298, -0.011739, -0.00645236, -0.021923, -0.0136072, 0.0177093, -0.0464155, - 0.00499591, -0.0300743, 0.000695989, -0.0423862, -0.0442462, -0.0612181, 0.137093, -0.0412476, - -0.0647362, -0.0389046, 0.00246774, 0.10443, 0.00126402, -0.0269946, -0.0753447, -0.0576863, - -0.0234948, -0.05018, -0.0350569, 0.045086, -0.00129855, 0.0252666, -0.0227364, 0.00152243, - -0.0214684, -0.0347765, -0.0292191, 0.0101462, 0.00576992, 0.034891, -0.0286404, 0.0115731, - 0.0166064, -0.00540362, 0.0170785, -0.000730702, 0.0076479, -0.00579039, 0.000993971, -0.00161051, - -0.0243942, -0.0351045, 0.0418538, -0.0097826, 0.0250171, 0.000271145, 0.0154932, -0.0324622, - 0.0201201, 0.0511685, -0.0276986, -0.0137756, -0.0753459, -0.0498984, -0.0279214, -0.0080389, - 0.0279161, 0.0353108, -0.0087214, -0.00518912, -0.019555, -0.0113267, 0.00225945, 0.00182463, - -0.00303256, -0.009005, -0.0044915, 0.00135642, -0.0402617, -0.000805723, 0.00377508, -0.00364319, - -0.017734, -0.0284965, 0.0101866, 0.0294709, -0.00494104, 0.00568477, 0.0026554, 0.0024603, - 0.0331129, -0.000183846, 0.0391978, -0.0503583, -0.0647342, -0.0203285, -0.071913, -0.00292174 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p75(hatfit_yaw00_lev2_p75); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p75_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p76.mh b/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p76.mh deleted file mode 100755 index e63b8ca..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hat/hat_yaw00_lev2_p76.mh +++ /dev/null @@ -1,54 +0,0 @@ -// hat_yaw00_lev2_p76.mh: - -#ifndef stasm_hat_yaw00_lev2_p76_mh -#define stasm_hat_yaw00_lev2_p76_mh - -namespace stasm { - -// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf -// static const int EYEMOUTH_DIST = 100; -// static const int FACESCALE = 1 -// static const int PYRSCALE = 1 -// static const double SIGMOIDSCALE = 0 -// static const double PYR_RATIO = 2; -// static const int NEGTRAIN_SEED = 2013; -// static const int HAT_PATCH_WIDTH = 19; -// static const int HAT_PATCH_WIDTH_ADJ = -6; -// static const int GRIDHEIGHT = 4; -// static const int GRIDWIDTH = 5; -// static const int BINS_PER_HIST = 8; -// static const double WINDOW_SCALE = 0.5; - -static double hatfit_yaw00_lev2_p76(const double* const d) // d has 160 elements -{ - const double intercept = -0.201853; - const double coef[160] = - { - 0.0611373, 0.0315796, 0.0567915, 0.106684, 0.0484192, 0.0674777, 0.0757485, 0.0605822, - 0.0186337, 0.0519524, 0.0346602, 0.0198745, -0.00704912, -0.00303739, 0.0450818, 0.0361972, - 0.0369279, 0.091747, 0.0269727, 0.0391098, -0.00623467, -0.00886847, -0.0219807, 0.00198184, - -0.00639586, 0.0351891, 0.0215669, 0.0166585, 0.0285714, -0.00488696, -0.0227643, -0.0313198, - 0.0481887, 0.021827, 0.0344451, 0.0295356, 0.0218445, 0.0148926, 0.0491293, 0.0874688, - -0.0506854, 0.00908012, -0.0301636, -0.020028, -0.0276748, -0.0438808, -0.0051665, -0.0169528, - -0.04442, -0.0557306, -0.0222959, -0.0149306, 0.0132545, -0.0284669, -0.0162358, -0.0420221, - -0.0273391, -0.0344512, 0.00447293, -0.0428183, -0.0259566, -0.027002, -0.00397243, 0.00140603, - 0.0180769, 0.0192412, -0.00879481, -0.0152303, -0.0131571, -0.0139515, -0.0280759, 0.0147447, - 0.0135716, 0.0181163, 0.0118787, 0.0380173, -0.0208318, -0.00114229, 0.00245865, -0.00468111, - 0.00239062, -0.0172136, 0.0122535, -0.0113478, 0.0467641, 0.0450793, 0.025304, 0.0200704, - -0.00336887, -0.0417958, -0.0106864, 0.0015939, 0.0052554, 4.45126e-05, -0.043915, -0.0132575, - 0.00779591, 0.0124207, -0.00729038, 0.0235562, 0.0188436, 0.0162366, -0.0049948, 0.0219917, - 0.00685187, 0.00962004, 0.0242144, -0.0208656, -0.00332951, 0.0194852, -0.00885252, 0.0384181, - 0.0336081, 0.0232335, 0.0185163, -0.00383684, 0.0050504, 0.000545654, 0.0614317, 0.0711241, - 0.00410444, -0.00721999, -0.0234826, -0.00556213, -0.00222316, -0.0218519, -0.0229695, -0.0315578, - 0.00101129, 0.00344464, -0.0110083, -0.00632637, -0.0111474, -0.00212928, 0.0064592, -0.00594809, - -0.0431056, -0.0271004, -0.0278623, 0.0168796, -0.0128066, -0.0357533, -0.0304638, -0.0240973, - -0.0122436, 0.0135754, -0.0410427, 0.0175618, -0.036486, -0.00465138, -0.0283021, -0.0328289, - -0.019626, -0.0317221, 0.0607035, 0.0916186, -0.0109209, 0.0271553, -0.00350397, -0.0121741 - }; - return linmod(d, intercept, coef, 160); -} - -static const HatDescMod hat_yaw00_lev2_p76(hatfit_yaw00_lev2_p76); - -} // namespace stasm -#endif // stasm_hat_yaw00_lev2_p76_mh diff --git a/3rdparty/stasm4.0.0/stasm/include/hatdesc.h b/3rdparty/stasm4.0.0/stasm/include/hatdesc.h deleted file mode 100755 index 5104d5e..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/hatdesc.h +++ /dev/null @@ -1,68 +0,0 @@ -// hatdesc.h: Model for HAT descriptors -// This does a search using the descriptors from hat.cpp. -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_HATPATCH_H -#define STASM_HATPATCH_H - -#include "misc.h" -#include "hat.h" -#include "basedesc.h" - -namespace stasm -{ -static const int HAT_MAX_OFFSET = 4; // search grid +-4 pixs from current posn - -static const int HAT_SEARCH_RESOL = 2; // search resolution, search every 2nd pixel - -// Following params must match those used for generating the HAT -// descriptors used to generate the HAT models during training. - -static const int HAT_PATCH_WIDTH = 9*2+1; - // HAT patch is 19 x 19 at pyr lev 0 - -static const int HAT_PATCH_WIDTH_ADJ = -6; - // grid gets smaller for smaller pyr levs - -static const int HAT_START_LEV = 2; // HAT descriptors are for pyr levs 0...2 - // so no need for Hat::Init_ at pyr lev 3 - -// define HatFit: a pointer to a func for measuring fit of HAT descriptor -typedef double(*HatFit)(const double* const); - -extern Hat InitHatLevData( // init the global HAT data needed for this pyr level - const Image& img, // in - int ilev); // in: pyramid level, 0 is full size - -extern void HatDescSearch( // search in a grid around the current landmark - double& x, // io: (in: old posn of landmark, out: new posn) - double& y, // io - const HatFit hatfit, // in: func to estimate descriptor match - const Hat &hat, - StasmHash &hash); - -class HatDescMod: public BaseDescMod -{ -public: - virtual void DescSearch_(double& x, double& y, // io - const Image&, const Shape&, // in - int, int, const Hat &hat, StasmHash &hash) const // in - { - HatDescSearch(x, y, hatfit_, hat, hash); - } - - HatDescMod(const HatFit hatfit) // constructor - : hatfit_(hatfit) - { - } - -private: - HatFit const hatfit_; // func to estimate HAT descriptor match - - DISALLOW_COPY_AND_ASSIGN(HatDescMod); - -}; // end class HatDescMod - -} // namespace stasm -#endif // STASM_HATPATCH_H diff --git a/3rdparty/stasm4.0.0/stasm/include/initasm.h b/3rdparty/stasm4.0.0/stasm/include/initasm.h deleted file mode 100755 index 9485c67..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/initasm.h +++ /dev/null @@ -1,17 +0,0 @@ -// initasm.h: initialize the ASM model -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_INITASM_H -#define STASM_INITASM_H - -#include "asm.h" - -namespace stasm -{ -void InitMods( - vec_Mod& mods, // out: ASM model (only one model in this version of Stasm) - const char* datadir); // in: directory of face detector files - -} // namespace stasm -#endif // STASM_INITASM_H diff --git a/3rdparty/stasm4.0.0/stasm/include/landmarks.h b/3rdparty/stasm4.0.0/stasm/include/landmarks.h deleted file mode 100755 index 250bca5..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/landmarks.h +++ /dev/null @@ -1,122 +0,0 @@ -// landmarks.h: code for manipulating landmarks -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_LANDMARKS_H -#define STASM_LANDMARKS_H - -#include "misc.h" -#include "stasm_lib.h" - -namespace stasm -{ -struct LANDMARK_INFO // landmark information -{ - int partner; // symmetrical partner point, -1 means no partner - - int prev, next; // previous and next point - // special val -1 means prev=current-1 and next=current+1 - - double weight; // weight of landmark relative to others (for shape mod) -}; - -static const LANDMARK_INFO LANDMARK_INFO_TAB[stasm_NLANDMARKS] = // stasm77 points -{ - // par pre next weight - { 12, 1, 15, 1. }, // 00 L_LTemple - { 11, -1, -1, 1. }, // 01 L_LJaw01 - { 10, -1, -1, 1. }, // 02 L_LJawNoseline - { 9, -1, -1, 1. }, // 03 L_LJawMouthline - { 8, -1, -1, 1. }, // 04 L_LJaw04 - { 7, -1, -1, 1. }, // 05 L_LJaw05 - { -1, -1, -1, 1. }, // 06 L_CTipOfChin - { 5, -1, -1, 1. }, // 07 L_RJaw07 - { 4, -1, -1, 1. }, // 08 L_RJaw08 - { 3, -1, -1, 1. }, // 09 L_RJawMouthline - { 2, -1, -1, 1. }, // 10 L_RJawNoseline - { 1, -1, -1, 1. }, // 11 L_RJaw11 - { 0, 11, 13, 1. }, // 12 L_RTemple - { 15, -1, -1, 0. }, // 13 L_RForehead point is virtually useless - { -1, -1, -1, 0. }, // 14 L_CForehead point is virtually useless - { 13, -1, -1, 0. }, // 15 L_LForehead point is virtually useless - { 23, -1, -1, 0. }, // 16 L_LEyebrowTopInner - { 24, -1, -1, 0. }, // 17 L_LEyebrowTopOuter - { 25, 0, 17, 0. }, // 18 L_LEyebrowOuter - { 26, -1, -1, 0. }, // 19 L_LEyebrowBotOuter - { 27, -1, -1, 0. }, // 20 L_LEyebrowBotInner - { 22, 0, 12, 0. }, // 21 L_LEyebrowInner - { 21, 0, 12, 0. }, // 22 L_REyebrowInner - { 16, -1, -1, 0. }, // 23 L_REyebrowTopInner - { 17, -1, -1, 0. }, // 24 L_REyebrowTopOuter - { 18, 12, 24, 0. }, // 25 L_REyebrowOuter - { 19, -1, -1, 0. }, // 26 L_REyebrowBotOuter - { 20, -1, -1, 0. }, // 27 L_REyebrowBotInner - { 29, 26, 39, 1. }, // 28 L_REyelid - { 28, 20, 38, 1. }, // 29 L_LEyelid - { 40, 32, 36, 1. }, // 30 L_LEyeInner - { 41, -1, -1, 1. }, // 31 L_LEye31 - { 42, -1, -1, 1. }, // 32 L_LEyeTop - { 43, -1, -1, 1. }, // 33 L_LEye33 - { 44, 32, 36, 1. }, // 34 L_LEyeOuter - { 45, -1, -1, 1. }, // 35 L_LEye35 - { 46, -1, -1, 1. }, // 36 L_LEyeBot - { 47, 30, 36, 1. }, // 37 L_LEye37 - { 39, -1, -1, 1. }, // 38 L_LPupil - { 38, -1, -1, 1. }, // 39 L_RPupil - { 30, 42, 46, 1. }, // 40 L_REyeInner - { 31, -1, -1, 1. }, // 41 L_REye41 - { 32, -1, -1, 1. }, // 42 L_REyeTop - { 33, -1, -1, 1. }, // 43 L_REye43 - { 34, 42, 46, 1. }, // 44 L_REyeOuter - { 35, -1, -1, 1. }, // 45 L_REye45 - { 36, -1, -1, 1. }, // 46 L_REyeBot - { 37, 40, 46, 1. }, // 47 L_REye47 - { 50, 0, 12, 1. }, // 48 L_RNoseMid - { -1, -1, -1, 1. }, // 49 L_CNoseMid - { 48, 0, 12, 1. }, // 50 L_LNoseMid - { 53, 0, 12, 1. }, // 51 L_LNostrilTop - { -1, 0, 12, 1. }, // 52 L_CNoseTip - { 51, 0, 12, 1. }, // 53 L_RNostrilTop - { 58, 0, 12, 1. }, // 54 L_RNoseSide - { 57, 60, 62, 1. }, // 55 L_RNostrilBot - { -1, -1, -1, 1. }, // 56 L_CNoseBase - { 55, 30, 62, 1. }, // 57 L_LNostrilBot - { 54, 0, 12, 1. }, // 58 L_LNoseSide - { 65, 61, 74, 1. }, // 59 L_LMouthCorner - { 64, 59, 61, 1. }, // 60 L_LMouth60 - { 63, -1, -1, 1. }, // 61 L_LMouthCupid - { -1, -1, -1, 1. }, // 62 L_CTopOfTopLip - { 61, -1, -1, 1. }, // 63 L_RMouthCupid - { 60, 63, 65, 1. }, // 64 L_RMouth64 - { 59, 61, 74, 1. }, // 65 L_RMouthCorner - { 68, 65, 67, 1. }, // 66 L_RMouth66 - { -1, -1, -1, 1. }, // 67 L_CBotOfTopLip - { 66, 59, 67, 1. }, // 68 L_LMouth68 - { 71, 59, 70, 1. }, // 69 L_LMouth69 - { -1, -1, -1, 1. }, // 70 L_CTopOfBotLip - { 69, 65, 70, 1. }, // 71 L_RMouth71 - { 76, 65, 73, 1. }, // 72 L_RMouth72 - { 75, 72, 74, 1. }, // 73 L_RMouth73 - { -1, -1, -1, 1. }, // 74 L_CBotOfBotLip - { 73, 74, 76, 1. }, // 75 L_LMouth75 - { 72, 59, 75, 1. }, // 76 L_LMouth76 -}; - -double MeanPoint( - const Shape& shape, // in - int ipoint1, // in - int ipoint2, // in - int ix); // in: IX or IY - -void PrevAndNextLandmarks( - int& prev, // out - int& next, // out - int ipoint, // in - const Shape& shape); // in - -Shape FlipShape( // flip shape horizontally - const Shape& shape, // in - int imgwidth); // in - -} // namespace stasm -#endif // STASM_LANDMARKS_H diff --git a/3rdparty/stasm4.0.0/stasm/include/misc.h b/3rdparty/stasm4.0.0/stasm/include/misc.h deleted file mode 100755 index 6b8aeaf..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/misc.h +++ /dev/null @@ -1,444 +0,0 @@ -// misc.h: miscellaneous definitions for Stasm -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_MISC_H -#define STASM_MISC_H - -#include - -namespace stasm -{ - -using cv::Rect; -using std::vector; -using std::string; - -typedef vector vec_int; -typedef vector vec_double; -typedef vector vec_Rect; - -typedef unsigned char byte; - -typedef cv::Mat_ MAT; // a matrix with double elements -typedef cv::Mat_ VEC; // by convention indicates one-dim matrix - -typedef cv::Mat_ Shape; // by convention an N x 2 matrix holding a shape - -typedef cv::Mat_ Image; // a gray image (a matrix of bytes) - -typedef cv::Vec3b RGBV; // a vec of three bytes: red(0), green, and blue(2) - -typedef cv::Mat_ CImage; // an RGB image (for apps and debugging, unneeded for ASM) - -static const int IX = 0; // X,Y index in shape matrices. For clarity by -static const int IY = 1; // convention we use these rather than 0 and 1. - -static const int SLEN = 260; // generic string length - // big enough for any Windows path (MAX_PATH is 260) - -static const int SBIG = 10000; // long string length, enough for big printfs - -#ifndef _MAX_PATH // definitions copied verbatim from Microsoft stdlib.h -#define _MAX_PATH 260 /* max. length of full pathname */ -#define _MAX_DRIVE 3 /* max. length of drive component */ -#define _MAX_DIR 256 /* max. length of path component */ -#define _MAX_FNAME 256 /* max. length of file name component */ -#define _MAX_EXT 256 /* max. length of extension component */ -#endif - -// Secure form of strcpy and friends (prevent buffer overrun). -// The CV_DbgAssert catches an easy programming error where -// we mistakenly take the size of a pointer. - -#if _MSC_VER // microsoft compiler - #define STRCPY(dest, src) \ - { \ - CV_DbgAssert(sizeof(dest) > 8); \ - strcpy_s(dest, sizeof(dest), src); \ - } - #define STRCAT(dest, src) \ - { \ - CV_DbgAssert(sizeof(dest) > 8); \ - strcat_s(dest, sizeof(dest), src); \ - } - #define VSPRINTF(dest, format, args) \ - { \ - CV_DbgAssert(sizeof(dest) > 8); \ - vsnprintf_s(dest, sizeof(dest), _TRUNCATE, format, args); \ - } -#else - #define STRCPY(dest, src) \ - { \ - CV_DbgAssert(sizeof(dest) > 8); \ - strncpy_(dest, src, sizeof(dest)); \ - } - #define STRCAT(dest, src) \ - { \ - CV_DbgAssert(sizeof(dest) > 8); \ - strncat(dest, sizeof(dest), src); \ - } - #define VSPRINTF(dest, format, args) \ - { \ - CV_DbgAssert(sizeof(dest) > 8); \ - vsnprintf(dest, sizeof(dest), format, args); \ - } -#endif - -// A macro to disallow the copy constructor and operator= functions. -// This is used in the private declarations for a class where those member -// functions have not been explicitly defined. This macro prevents use of -// the implicitly defined functions (the compiler will complain if you try -// to use them). -// This is often just paranoia. The implicit functions may actually be ok -// for the class in question, but shouldn't be used until that is checked. -// For details, See Item 6 Meyers Effective C++ and the Google C++ Style Guide. - -#define DISALLOW_COPY_AND_ASSIGN(ClassName) \ - ClassName(const ClassName&); \ - void operator=(const ClassName&) - -template int NELEMS(const T& x) // number of elems in an array -{ - return int(sizeof(x) / sizeof((x)[0])); -} - -// The NSIZE and STRNLEN utility functions prevent the following -// warnings from certain compilers: -// o signed/unsigned mismatch -// o conversion from 'size_t' to 'int', possible loss of data -// Alternatives would be to use typecasts directly in the code -// or pedantically use size_t instead of int. - -static inline int NSIZE(const MAT& m) // nrows * ncols -{ - return int((m).total()); -} - -template int NSIZE(const T& x) // size of any STL container -{ - return int(x.size()); -} - -static inline int STRNLEN(const char* s, int n) -{ - return int(strnlen(s, n)); -} - -template T SQ(const T x) // define SQ(x) -{ - return x * x; -} - -template T ABS(const T x) // define ABS(x) -{ - // portable across compilers unlike "abs" - return x < 0? -x: x; -} - -template T Clamp(const T x, const T min, const T max) -{ - return MIN(MAX(x, min), max); -} - -// Equal() returns true if x == y within reasonable tolerance. -// The 1e-7 is arbitrary but approximately equals FLT_EPSILON. -// (If one or both of the numbers are NANs then the test fails, even if -// they are equal NANs. Which is not necessarily desireable behaviour.) - -static inline bool Equal(const double x, const double y, const double max = 1e-7) -{ - return ABS(x-y) < max; -} - -static inline bool IsZero(const double x, const double max = 1e-7) -{ - return Equal(x, 0, max); -} - -static inline double RadsToDegrees(const double rads) -{ - return 180 * rads / 3.14159265358979323846264338328; -} - -static const int INVALID = 99999; // used to specify unavail eye locations, etc - -template bool Valid(const T x) -{ - return x != INVALID && x != -INVALID; -} - -// For reference, the fields of an OpenCV Mat are as follows. -// See \OpenCV\build\include\opencv2\core\core.hpp for details. -// -// int flags; // magic signature, continuity flag, depth, number of chans -// int dims; // matrix dimensionality, >= 2 -// int rows, cols; // number of rows and columns or (-1, -1) -// uchar* data; // the data -// int* refcount; // pointer to ref counter, NULL if user-allocated -// uchar* datastart; // fields used in locateROI and adjustROI -// uchar* dataend; -// uchar* datalimit; -// MatAllocator* allocator; // custom allocator -// MSize size; -// MStep step; - -static inline double* Buf(const MAT& mat) // access MAT data buffer -{ - return (double*)(mat.data); -} - -static inline VEC AsColVec(const MAT& mat) // view entire matrix as a col vector -{ - CV_Assert(mat.isContinuous()); - return MAT(mat.rows * mat.cols, 1, Buf(mat)); -} - -static inline VEC AsRowVec(const MAT& mat) // view entire matrix as a row vector -{ - CV_Assert(mat.isContinuous()); - return MAT(1, mat.rows * mat.cols, Buf(mat)); -} - -// Note on unused points: -// -// Unused points (a.k.a. missing points) points are indicated -// by setting both x and y equal to zero. -// Thus if there is a valid point that happens actually to -// be at 0,0 (rare) we must offset x slightly to ensure that the -// point is seen by Stasm as used. Hence XJITTER. -// -// XJITTER is one tenth of a pixel, which is big enough to be -// visible when saved in a shapefile with one decimal digit. -// -// Unused points are mostly useful during training (it is not unusual for a -// landmark to be obscured in a training face). They are also used during -// a search with pinned points (non-pinned points are marked as unused in -// the shape which specifies the pinned points). - -static const double XJITTER = .1; - -static inline bool PointUsed(const double x, const double y) -{ - return !IsZero(x, XJITTER) || !IsZero(y, XJITTER); -} - -static inline bool PointUsed(const Shape& shape, int ipoint) -{ - return PointUsed(shape(ipoint, IX), shape(ipoint, IY)); -} - -static inline double PointDist( - double x1, // in - double y1, // in - double x2, // in - double y2) // in -{ - CV_Assert(PointUsed(x1, y1)); - CV_Assert(PointUsed(x2, y2)); - - return sqrt(SQ(x1 - x2) + SQ(y1 - y2)); -} - -static inline double PointDist( - const Shape& shape1, // in: the first shape - const Shape& shape2, // in: the second shape - int ipoint) // in: the point -{ - return PointDist(shape1(ipoint, IX), shape1(ipoint, IY), - shape2(ipoint, IX), shape2(ipoint, IY)); -} - -static inline double PointDist( - const Shape& shape, // in - int ipoint1, // in: the first point - int ipoint2) // in: the second point -{ - return PointDist(shape(ipoint1, IX), shape(ipoint1, IY), - shape(ipoint2, IX), shape(ipoint2, IY)); -} - -// note: in frontal-model-only Stasm, the only valid value for EYAW is EYAW00 - -enum EYAW -{ - EYAW_45 = -3, // yaw -45 degrees (left facing strong three-quarter pose) - EYAW_22 = -2, // yaw -22 degrees (left facing mild three-quarter pose) - EYAW00 = 1, // yaw 0 degrees (frontal pose) - EYAW22 = 2, // yaw 22 degrees (right facing mild three-quarter pose) - EYAW45 = 3 // yaw 45 degrees (right facing strong three-quarter pose) -}; - -enum ESTART // do we use the detected eyes or mouth to help position the startshape? - // note: gaps in enum numbering are for compat with other Stasm versions -{ - ESTART_RECT_ONLY = 1, // use just the face det rect to align the start shape - ESTART_EYES = 2, // use eyes if available (as well as face rect) - ESTART_EYE_AND_MOUTH = 4 // uses eye(s) and mouth if both available -}; - -#if MOD_3 || MOD_A || MOD_A_EMU // experimental versions -static double EYAW_TO_USE_DET22 = 14; // what estimated yaw requires the yaw22 mod -static double EYAW_TO_USE_DET45 = 35; // ditto for yaw45 model -#endif - -struct DetPar // the structure describing a face detection -{ - double x, y; // center of detector shape - double width, height; // width and height of detector shape - double lex, ley; // center of left eye, left and right are wrt the viewer - double rex, rey; // ditto for right eye - double mouthx, mouthy; // center of mouth - double rot; // in-plane rotation - double yaw; // yaw - EYAW eyaw; // yaw as an enum - - DetPar() // constructor sets all fields to INVALID - : x(INVALID), - y(INVALID), - width(INVALID), - height(INVALID), - lex(INVALID), - ley(INVALID), - rex(INVALID), - rey(INVALID), - mouthx(INVALID), - mouthy(INVALID), - rot(INVALID), - yaw(INVALID), - eyaw(EYAW(INVALID)) - { - }; - -}; - -//----------------------------------------------------------------------------- - -const char* ssprintf(const char* format, ...); -void strncpy_(char* dest, const char* src, int n); -void ToLowerCase(char* s); -void ConvertBackslashesToForwardAndStripFinalSlash(char* s); -const char* Base(const char* path); -const char* BaseExt(const char* path); - -void splitpath( - const char* path, - char* drive, char* dir, char* base, char* ext); - -void makepath( - char* path, - const char* drive, const char* dir, const char* base, const char* ext); - -void LogShape(const MAT& mat, const char* matname); - -MAT DimKeep(const MAT& mat, int nrows, int ncols); - -const MAT ArrayAsMat(int ncols, int nrows, const double* data); - -void RoundMat(MAT& mat); // round mat entries to integers - -Shape JitterPointsAt00(const Shape& shape); - -double ForcePinnedPoints( // force pinned landmarks in shape to their pinned posn - Shape& shape, // io - const Shape pinnedshape); // in - -void ShapeMinMax( - double& xmin, // out - double& xmax, // out - double& ymin, // out - double& ymax, // out - const Shape& shape); // in - -double ShapeWidth(const Shape& shape); // width of shape in pixels - -double ShapeHeight(const Shape& shape); // height of shape in pixels - -void AlignShapeInPlace( // affine transform of shape - Shape& shape, // io - const MAT& alignment_mat); // in - -void AlignShapeInPlace( // affine transform of shape - Shape& shape, // io - double x0, double y0, double z0, // in - double x1, double y1, double z1); // in - -Shape AlignShape( // return transformed shape, affine transform - const Shape& shape, // in - const MAT& alignment_mat); // in - -Shape AlignShape( // return transformed shape, affine transform - const Shape& shape, // in - double x0, double y0, double z0, // in - double x1, double y1, double z1); // in - -const MAT AlignmentMat( // return similarity transf to align shape to anchorshape - const Shape& shape, // in - const Shape& anchorshape, // in - const double* weights=NULL); // in: if NULL (default) all points equal weight - -void DrawShape( // draw a shape on an image - CImage& img, // io - const Shape& shape, // in - unsigned color=0xff0000, // in: rrggbb e.g. 0xff0000 is red - bool dots=false, // in: true for dots only - int linewidth=0); // in: default 0 means automatic - -void ImgPrintf( // printf on image - CImage& img, // io - double ix, // in - double iy, // in - unsigned color, // in: rrggbb e.g. 0xff0000 is red - double size, // in: relative font size, 1 is standard size - const char* format, // in - ...); // in - -void DesaturateImg( - CImage& img); // io: convert to gray (but still an RGB image) - -void ForceRectIntoImg( // force rectangle into image - int& ix, // io - int& iy, // io - int& ncols, // io - int& nrows, // io - const Image& img); // in - -void ForceRectIntoImg( // force rectangle into image - Rect& rect, // io - const Image& img); // in - -Image FlipImg(const Image& img); // in: flip image horizontally (mirror image) - -void FlipImgInPlace(Image& img); // io: flip image horizontally (mirror image) - -void OpenDetector( // open face or feature detector from its XML file - cv::CascadeClassifier& cascade, // out - const char* filename, // in: basename.ext of cascade - const char* datadir); // in - -vec_Rect Detect( // detect faces or facial features - const Image& img, // in - cv::CascadeClassifier* cascade, // in - const Rect* searchrect, // in: search in this region, can be NULL - double scale_factor, // in - int min_neighbors, // in - int flags, // in - int minwidth_pixels); // in: reduces false positives - -// TODO Following commented out to avoid circular dependency. -// int EyawAsModIndex(EYAW eyaw, const vec_Mod& mods); - -bool IsLeftFacing(EYAW eyaw); // true if eyaw is for a left facing face - -EYAW DegreesAsEyaw( // this determines what model is best for a given yaw - double yaw, // in: yaw in degrees, negative if left facing - int nmods); // in - -const char* EyawAsString(EYAW eyaw); - -DetPar FlipDetPar( // mirror image of detpar - const DetPar& detpar, // in - int imgwidth); // in - -} // namespace stasm -#endif // STASM_MISC_H diff --git a/3rdparty/stasm4.0.0/stasm/include/pinstart.h b/3rdparty/stasm4.0.0/stasm/include/pinstart.h deleted file mode 100755 index 2d9edd7..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/pinstart.h +++ /dev/null @@ -1,25 +0,0 @@ -// pinstart.h: utilities for creating a start shape from manually pinned points -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_PINSTART_H -#define STASM_PINSTART_H - -#include "misc.h" -#include "asm.h" - -namespace stasm -{ - -void PinnedStartShapeAndRoi( // use the pinned landmarks to init the start shape - Shape& startshape, // out: the start shape (in ROI frame) - Image& face_roi, // out: ROI around face, possibly rotated upright - DetPar& detpar_roi, // out: detpar wrt to face_roi - DetPar& detpar, // out: detpar wrt to img - Shape& pinned_roi, // out: pinned arg translated to ROI frame - const Image& img, // in: the image (grayscale) - const vec_Mod& mods, // in: a vector of models, one for each yaw range - const Shape& pinned); // in: manually pinned landmarks - -} // namespace stasm -#endif // STASM_PINSTART_H diff --git a/3rdparty/stasm4.0.0/stasm/include/print.h b/3rdparty/stasm4.0.0/stasm/include/print.h deleted file mode 100755 index e815db3..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/print.h +++ /dev/null @@ -1,20 +0,0 @@ -// print.h: printing and logging utilities for the Stasm library -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_PRINT_H -#define STASM_PRINT_H - -namespace stasm -{ -extern bool print_g; // true to allow output to stdout - -extern bool trace_g; // true to trace Stasm internal operation - -void OpenLogFile(void); -void lputs(const char* s); -void lprintf(const char* format, ...); // args like printf -void logprintf(const char* format, ...); - -} // namespace stasm -#endif // STASM_PRINT_H diff --git a/3rdparty/stasm4.0.0/stasm/include/shape17.h b/3rdparty/stasm4.0.0/stasm/include/shape17.h deleted file mode 100755 index f1362e6..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/shape17.h +++ /dev/null @@ -1,62 +0,0 @@ -// shape17.h: convert a shape to a 17 point shape -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_SHAPE17_H -#define STASM_SHAPE17_H - -#include "misc.h" - -namespace stasm -{ -enum LANDMARKS_17 // the 17 points that make up a Shape17 shape -{ - L17_LPupil, // 0 - L17_RPupil, // 1 - L17_LMouthCorner, // 2 - L17_RMouthCorner, // 3 - L17_LEyebrowOuter, // 4 - L17_LEyebrowInner, // 5 - L17_REyebrowInner, // 6 - L17_REyebrowOuter, // 7 - L17_LEyeOuter, // 8 - L17_LEyeInner, // 9 - L17_REyeInner, // 10 - L17_REyeOuter, // 11 - L17_CNoseTip, // 12 - L17_LNostril, // 13 - L17_RNostril, // 14 - L17_CTopOfTopLip, // 15 - L17_CBotOfBotLip // 16 -}; - -#if 0 -static const char *LANDMARKS_17_NAMES[] = -{ - "LPupil", - "RPupil", - "LMouthCorner", - "RMouthCorner", - "LEyebrowOuter", - "LEyebrowInner", - "REyebrowInner", - "REyebrowOuter", - "LEyeOuter", - "LEyeInner", - "REyeInner", - "REyeOuter", - "CNoseTip", - "LNostril", - "RNostril", - "CTopOTopLip", - "CBotOfBotLip" -}; -#endif - -extern const Shape MEANSHAPE17; // mean 17 point shape - -Shape Shape17( // convert an arb face shape to a 17 point shape - const Shape& shape); // in - -} // namespace stasm -#endif // STASM_SHAPE17_H diff --git a/3rdparty/stasm4.0.0/stasm/include/shapehacks.h b/3rdparty/stasm4.0.0/stasm/include/shapehacks.h deleted file mode 100755 index 10b4bbe..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/shapehacks.h +++ /dev/null @@ -1,20 +0,0 @@ -// shapehacks.h: -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_SHAPEHACKS_H -#define STASM_SHAPEHACKS_H - -#include "misc.h" - -namespace stasm -{ -static const unsigned SHAPEHACKS_DEFAULT = 0x01; -static const unsigned SHAPEHACKS_SHIFT_TEMPLE_OUT = 0x10; // for frontal models - -void ApplyShapeModelHacks( // adjust shape by applying various hacks - Shape& shape, // io: features possibly adjusted - unsigned hackbits); // in: which hacks to apply, see above constants - -} // namespace stasm -#endif // STASM_SHAPEHACKS_H diff --git a/3rdparty/stasm4.0.0/stasm/include/shapemod.h b/3rdparty/stasm4.0.0/stasm/include/shapemod.h deleted file mode 100755 index 121e414..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/shapemod.h +++ /dev/null @@ -1,71 +0,0 @@ -// shapemod.h: the ASM shape model -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_SHAPEMODEL_H -#define STASM_SHAPEMODEL_H - -#include "stasm_lib.h" -#include "shapehacks.h" -#include "misc.h" - -namespace stasm -{ -class ShapeMod -{ -public: - const Shape ConformShapeToMod_( // return shape conformed to shape mod - VEC& b, // io: eigvec weights - const Shape& shape, // in: shape suggested by the descriptor mods - int ilev) // in: pyramid level (0 is full size) - const; - - const Shape ConformShapeToMod_Pinned_( // like above but allow pinned points - VEC& b, // io: eigvec weights - const Shape& shape, // in: shape suggested by the descriptor mods - int ilev, // in: pyramid level (0 is full size) - const Shape& pinnedshape) // in: pinned landmarks - const; - - ShapeMod( // constructor - const Shape& meanshape, - const VEC& eigvals, - const MAT& eigvecs, - const int neigs, - const double bmax, - const unsigned hackbits) - - : meanshape_(meanshape), - eigvals_(DimKeep(eigvals, neigs, 1)), - eigvecs_(DimKeep(eigvecs, eigvecs.rows, neigs)), // retain neigs cols - // take inverse of eigvecs (by taking transpose) and retain neigs rows - eigvecsi_(DimKeep(eigvecs.t(), neigs, eigvecs.cols)), - bmax_(bmax), - hackbits_(hackbits) - { - CV_Assert(meanshape.rows == stasm_NLANDMARKS); - CV_Assert(meanshape.cols == 2); - CV_Assert(NSIZE(eigvals) == 2 * stasm_NLANDMARKS); - CV_Assert(eigvecs.rows == 2 * stasm_NLANDMARKS); - CV_Assert(eigvecs.cols == 2 * stasm_NLANDMARKS); - CV_Assert(neigs > 0 && neigs <= 2 * stasm_NLANDMARKS); - CV_Assert(bmax > 0 && bmax < 10); - CV_Assert((hackbits & ~(SHAPEHACKS_DEFAULT|SHAPEHACKS_SHIFT_TEMPLE_OUT)) == 0); - } - - // all data remains constant after ShapeMod construction - - const Shape meanshape_; // mean shape aligned to face det frame - const VEC eigvals_; // neigs x 1 vector - const MAT eigvecs_; // 2n x neigs matrix where n is nbr of landmarks - const MAT eigvecsi_; // neigs x 2n matrix, inverse of eigvecs_ - const double bmax_; // eigvec weight limit, for LimitB() - const unsigned hackbits_; // allowable shape model hacks (e.g. SHAPEHACKS_DEFAULT) - -private: - DISALLOW_COPY_AND_ASSIGN(ShapeMod); - -}; // end class ShapeMod - -} // namespace stasm -#endif // STASM_SHAPEMODEL_H diff --git a/3rdparty/stasm4.0.0/stasm/include/startshape.h b/3rdparty/stasm4.0.0/stasm/include/startshape.h deleted file mode 100755 index 0ddcaea..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/startshape.h +++ /dev/null @@ -1,38 +0,0 @@ -// startshape.h: routines for finding the start shape for an ASM search -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_startshape_H -#define STASM_startshape_H - -#include "stasmcascadeclassifier.h" -#include "misc.h" -#include "asm.h" -#include "facedet.h" - -namespace stasm -{ -// get the start shape for the next face in the image, and the ROI around it - -bool NextStartShapeAndRoi( // use face detector results to estimate start shape - Shape& startshape, // out: the start shape we are looking for - Image& face_roi, // out: ROI around face, possibly rotated upright - DetPar& detpar_roi, // out: detpar wrt to face_roi - DetPar& detpar, // out: detpar wrt to img - const Image& img, // in: the image (grayscale) - const vec_Mod& mods, // in: a vector of models, one for each yaw range - FaceDet& facedet, // io: the face detector (internal face index bumped) - StasmCascadeClassifier cascade); - -void PinnedStartShapeAndRoi( // use the pinned landmarks to init the start shape - Shape& startshape, // out: the start shape (in ROI frame) - Image& face_roi, // out: ROI around face, possibly rotated upright - DetPar& detpar_roi, // out: detpar wrt to face_roi - DetPar& detpar, // out: detpar wrt to img - Shape& pinned_roi, // out: pinned arg translated to ROI frame - const Image& img, // in: the image (grayscale) - const vec_Mod& mods, // in: a vector of models, one for each yaw range - const Shape& pinned); // in: pinned landmarks - -} // namespace stasm -#endif // STASM_startshape_H diff --git a/3rdparty/stasm4.0.0/stasm/include/stasm.h b/3rdparty/stasm4.0.0/stasm/include/stasm.h deleted file mode 100755 index 3bccfae..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/stasm.h +++ /dev/null @@ -1,19 +0,0 @@ -// stasm.h: (nearly) all include files for the Stasm package -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_H -#define STASM_H - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#endif // STASM_H diff --git a/3rdparty/stasm4.0.0/stasm/include/stasm_landmarks.h b/3rdparty/stasm4.0.0/stasm/include/stasm_landmarks.h deleted file mode 100755 index abbb2b3..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/stasm_landmarks.h +++ /dev/null @@ -1,93 +0,0 @@ -// stasm_landmarks.h: define the Stasm landmarks -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_STASM_LANDMARKS_H -#define STASM_STASM_LANDMARKS_H - -// All landmark names begin with L_ followed by L, C, or R, -// for left, center, or right. -// Note that left and right are with respect to the viewer, not the subject. - -enum stasm_LANDMARKS_77 // stasm77 landmarks -{ - L_LTemple, // 00 - L_LJaw01, // 01 - L_LJawNoseline, // 02 nose line on left jaw - L_LJawMouthline, // 03 mouth line on left jaw - L_LJaw04, // 04 - L_LJaw05, // 05 - L_CTipOfChin, // 06 - L_RJaw07, // 07 - L_RJaw08, // 08 - L_RJawMouthline, // 09 - L_RJawNoseline, // 10 - L_RJaw11, // 11 - L_RTemple, // 12 - L_RForehead, // 13 - L_CForehead, // 14 - L_LForehead, // 15 - L_LEyebrowTopInner, // 16 - L_LEyebrowTopOuter, // 17 - L_LEyebrowOuter, // 18 - L_LEyebrowBotOuter, // 19 - L_LEyebrowBotInner, // 20 - L_LEyebrowInner, // 21 - L_REyebrowInner, // 22 - L_REyebrowTopInner, // 23 - L_REyebrowTopOuter, // 24 - L_REyebrowOuter, // 25 - L_REyebrowBotOuter, // 26 - L_REyebrowBotInner, // 27 - L_REyelid, // 28 - L_LEyelid, // 29 - L_LEyeInner, // 30 - L_LEye31, // 31 - L_LEyeTop, // 32 - L_LEye33, // 33 - L_LEyeOuter, // 34 - L_LEye35, // 35 - L_LEyeBot, // 36 - L_LEye37, // 37 - L_LPupil, // 38 - L_RPupil, // 39 - L_REyeInner, // 40 - L_REye41, // 41 - L_REyeTop, // 42 - L_REye43, // 43 - L_REyeOuter, // 44 - L_REye45, // 45 - L_REyeBot, // 46 - L_REye47, // 47 - L_RNoseMid, // 48 - L_CNoseMid, // 49 - L_LNoseMid, // 50 - L_LNostrilTop, // 51 - L_CNoseTip, // 52 - L_RNostrilTop, // 53 - L_RNoseSide, // 54 - L_RNostrilBot, // 55 - L_CNoseBase, // 56 - L_LNostrilBot, // 57 - L_LNoseSide, // 58 - L_LMouthCorner, // 59 - L_LMouth60, // 60 - L_LMouthCupid, // 61 - L_CTopOfTopLip, // 62 - L_RMouthCupid, // 63 - L_RMouth64, // 64 - L_RMouthCorner, // 65 - L_RMouth66, // 66 - L_CBotOfTopLip, // 67 - L_LMouth68, // 68 - L_LMouth69, // 69 - L_CTopOfBotLip, // 70 - L_RMouth71, // 71 - L_RMouth72, // 72 - L_RMouth73, // 73 - L_CBotOfBotLip, // 74 - L_LMouth75, // 75 - L_LMouth76 // 76 -}; - -#endif // STASM_STASM_LANDMARKS_H diff --git a/3rdparty/stasm4.0.0/stasm/include/stasm_lib.h b/3rdparty/stasm4.0.0/stasm/include/stasm_lib.h deleted file mode 100755 index 9980c48..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/stasm_lib.h +++ /dev/null @@ -1,153 +0,0 @@ -// stasm_lib.h: interface to the Stasm library -// -// The Stasm library interface function and variable names are all prefixed -// by "stasm_". They are not in the stasm namespace. -// -// The library routines return 1 on success, 0 on error (they do not throw -// exceptions). Use stasm_lasterr to get the error string. An example -// error is "Cannot open ../data/haarcascade_frontalface_alt2.xml". -// Errors in OpenCV routines called by Stasm and out-of-memory errors are -// handled in the same way. -// -// Typical usage in multiple face scenario with stasm_search_auto: -// -// stasm_init() -// load image from disk -// optionally present the image to the user -// stasm_open_image() -// while stasm_find_face() finds another face: -// save the face shape (and optionally present the image to the user) -// optionally present the image with all face shapes to the user -// optionally call stasm_search_pinned to correct any bad faces -// -// The interface is defined in vanilla C so can be used by code -// in "any" language. -// -//----------------------------------------------------------------------------- -// -// Stasm License Agreement -// -// Copyright (C) 2005-2013, Stephen Milborrow -// All rights reserved. -// -// Redistribution of Stasm in source and binary forms, with or -// without modification, is permitted provided that the following -// conditions are met: -// * Redistributions of source code must retain the above copyright notice, -// this list of conditions and the following disclaimers. -// -// * Redistributions in binary form must reproduce the above copyright notice, -// this list of conditions and the following disclaimers in the documentation -// and/or other materials provided with the distribution. -// -// A SIFT patent restriction may be in conflict with the copyright -// freedoms granted by this license. This license does not give you -// permission to infringe patents. -// -// This software is provided by the copyright holders and contributors "as is" and -// any express or implied warranties, including, but not limited to, the implied -// warranties of merchantability and fitness for a particular purpose are disclaimed. -// In no event shall the copyright holder be liable for any direct, -// indirect, incidental, special, exemplary, or consequential damages -// (including, but not limited to, procurement of substitute goods or services; -// loss of use, data, or profits; or business interruption) however caused -// and on any theory of liability, whether in contract, strict liability, -// or tort (including negligence or otherwise) arising in any way out of -// the use of this software, even if advised of the possibility of such damage. -// -// Note that Stasm versions prior to version 4.0.0 had a different license. -// -//----------------------------------------------------------------------------- - -#ifndef STASM_LIB_H -#define STASM_LIB_H - -#if defined STASM_LIBRARY -# if defined _WIN32 || defined __CYGWIN__ -# define STASM_EXPORT __declspec(dllexport) -# else -# define STASM_EXPORT __attribute__((visibility("default"))) -# endif -#else -# if defined _WIN32 || defined __CYGWIN__ -# define STASM_EXPORT __declspec(dllimport) -# else -# define STASM_EXPORT -# endif -#endif - -#include "stasmcascadeclassifier.h" - -#define TRACE_IMAGES 0 // 1 to generate debugging images - -static const char* const STASM_VERSION = "4.0.0"; -static const int stasm_NLANDMARKS = 77; // number of landmarks - -extern const char* const stasm_VERSION; - - -STASM_EXPORT int stasm_init( // call once, at bootup - const char* datadir, // in: directory of face detector files - int trace); // in: 0 normal use, 1 trace to stdout and stasm.log - - -STASM_EXPORT int stasm_open_image( // call once per image, detect faces - const char* img, // in: gray image data, top left corner at 0,0 - int width, // in: image width - int height, // in: image height - const char* imgpath, // in: image path, used only for err msgs and debug - int multiface, // in: 0=return only one face, 1=allow multiple faces - int minwidth); // in: min face width as percentage of img width - - -STASM_EXPORT int stasm_search_auto( // call repeatedly to find all faces - int* foundface, // out: 0=no more faces, 1=found face - float* landmarks, // out: x0, y0, x1, y1, ..., caller must allocate - const char* data, - const int width, - const int height, - StasmCascadeClassifier cascade); - - -STASM_EXPORT int stasm_search_single( // wrapper for stasm_search_auto and friends - int* foundface, // out: 0=no face, 1=found face - float* landmarks, // out: x0, y0, x1, y1, ..., caller must allocate - const char* img, // in: gray image data, top left corner at 0,0 - int width, // in: image width - int height, // in: image height - StasmCascadeClassifier cascade, - const char* imgpath, // in: image path, used only for err msgs and debug - const char* datadir); // in: directory of face detector files - - // find landmarks, no OpenCV face detect -STASM_EXPORT int stasm_search_pinned( // call after the user has pinned some points - float* landmarks, // out: x0, y0, x1, y1, ..., caller must allocate - const float* pinned, // in: pinned landmarks (0,0 points not pinned) - const char* img, // in: gray image data, top left corner at 0,0 - int width, // in: image width - int height, // in: image height - const char* imgpath); // in: image path, used only for err msgs and debug - - -STASM_EXPORT const char* stasm_lasterr(void); // return string describing last error - - -STASM_EXPORT void stasm_force_points_into_image( // force landmarks into image boundary - float* landmarks, // io - int ncols, // in - int nrows); // in - - -STASM_EXPORT void stasm_convert_shape( // convert stasm 77 points to given number of points - float* landmarks, // io: return all points zero if can't do conversion - int nlandmarks); // in: 77=nochange 76=stasm3 68=xm2vts 22=ar 20=bioid 17=me17 - -// stasm_printf is like printf but also prints to the file stasm.log if it -// is open. The file stasm.log will be open if stasm_init was called with -// trace=1. This function was added primarily for the programs that test -// the stasm library. - - -STASM_EXPORT void stasm_printf(const char* format, ...); // print to stdout and stasm.log - -#endif // STASM_LIB_H diff --git a/3rdparty/stasm4.0.0/stasm/include/stasm_lib_ext.h b/3rdparty/stasm4.0.0/stasm/include/stasm_lib_ext.h deleted file mode 100755 index 174d4a9..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/stasm_lib_ext.h +++ /dev/null @@ -1,29 +0,0 @@ -// stasm_lib_ext.h: experimental extensions to the Stasm library -// Please don't use these functions, they may change at any time. - -#ifndef STASM_LIB_EXT_H -#define STASM_LIB_EXT_H - -extern "C" // extended version of stasm_init -int stasm_init_ext( // call once, at bootup - const char* datadir, // in: directory of face detector files - int trace, // in: 0 normal use, 1 trace to stdout and stasm.log - void* detparams); // in: NULL or face detector parameters - -extern "C" // extended version of stasm_open_image -int stasm_open_image_ext( // call once per image, detect faces - const char* img, // in: gray image data, top left corner at 0,0 - int width, // in: image width - int height, // in: image height - const char* imgpath, // in: image path, used only for err msgs and debug - int multiface, // in: 0=return only one face, 1=allow multiple faces - int minwidth, // in: min face width as percentage of img width - void* user); // in: NULL or pointer to user abort func - -extern "C" -int stasm_search_auto_ext( // extended version of stasm_search_auto - int* foundface, // out: 0=no more faces, 1=found face - float* landmarks, // out: x0, y0, x1, y1, ..., caller must allocate - float* estyaw); // out: NULL or pointer to estimated yaw - -#endif // STASM_LIB_EXT_H diff --git a/3rdparty/stasm4.0.0/stasm/include/stasmcascadeclassifier.h b/3rdparty/stasm4.0.0/stasm/include/stasmcascadeclassifier.h deleted file mode 100644 index e2870a5..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/stasmcascadeclassifier.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef STASMCASCADECLASSIFIER_H -#define STASMCASCADECLASSIFIER_H - -#include -#include - -class StasmCascadeClassifier -{ - -public: - cv::CascadeClassifier faceCascade; - cv::CascadeClassifier mouthCascade; - cv::CascadeClassifier leftEyeCascade; - cv::CascadeClassifier rightEyeCascade; - - bool load(const std::string &path) { - if (!faceCascade.load(path + "haarcascades/haarcascade_frontalface_alt2.xml") || - !mouthCascade.load(path + "haarcascades/haarcascade_mcs_mouth.xml") || - !leftEyeCascade.load(path + "haarcascades/haarcascade_mcs_lefteye.xml") || - !rightEyeCascade.load(path + "haarcascades/haarcascade_mcs_righteye.xml")) return false; - - return true; - } - -}; - -#endif // STASMCASCADECLASSIFIER_H diff --git a/3rdparty/stasm4.0.0/stasm/include/stasmhash.h b/3rdparty/stasm4.0.0/stasm/include/stasmhash.h deleted file mode 100644 index e104a9f..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/stasmhash.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef STASMHASH_H -#define STASMHASH_H - -#include - -typedef QHash StasmHash; - -#endif // STASMHASH_H diff --git a/3rdparty/stasm4.0.0/stasm/include/yaw00.h b/3rdparty/stasm4.0.0/stasm/include/yaw00.h deleted file mode 100755 index 267c0df..0000000 --- a/3rdparty/stasm4.0.0/stasm/include/yaw00.h +++ /dev/null @@ -1,638 +0,0 @@ -// yaw00.h: yaw00 ASM model -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#ifndef STASM_YAW00_1_H -#define STASM_YAW00_1_H - -#include "classic/yaw00_shapemodel.mh" -#include "classic/classic_yaw00_lev0_p00.mh" -#include "classic/classic_yaw00_lev0_p01.mh" -#include "classic/classic_yaw00_lev0_p02.mh" -#include "classic/classic_yaw00_lev0_p03.mh" -#include "classic/classic_yaw00_lev0_p04.mh" -#include "classic/classic_yaw00_lev0_p05.mh" -#include "classic/classic_yaw00_lev0_p06.mh" -#include "classic/classic_yaw00_lev0_p07.mh" -#include "classic/classic_yaw00_lev0_p08.mh" -#include "classic/classic_yaw00_lev0_p09.mh" -#include "classic/classic_yaw00_lev0_p10.mh" -#include "classic/classic_yaw00_lev0_p11.mh" -#include "classic/classic_yaw00_lev0_p12.mh" -#include "classic/classic_yaw00_lev0_p13.mh" -#include "classic/classic_yaw00_lev0_p14.mh" -#include "classic/classic_yaw00_lev0_p15.mh" -#include "classic/classic_yaw00_lev1_p00.mh" -#include "classic/classic_yaw00_lev1_p01.mh" -#include "classic/classic_yaw00_lev1_p02.mh" -#include "classic/classic_yaw00_lev1_p03.mh" -#include "classic/classic_yaw00_lev1_p04.mh" -#include "classic/classic_yaw00_lev1_p05.mh" -#include "classic/classic_yaw00_lev1_p06.mh" -#include "classic/classic_yaw00_lev1_p07.mh" -#include "classic/classic_yaw00_lev1_p08.mh" -#include "classic/classic_yaw00_lev1_p09.mh" -#include "classic/classic_yaw00_lev1_p10.mh" -#include "classic/classic_yaw00_lev1_p11.mh" -#include "classic/classic_yaw00_lev1_p12.mh" -#include "classic/classic_yaw00_lev1_p13.mh" -#include "classic/classic_yaw00_lev1_p14.mh" -#include "classic/classic_yaw00_lev1_p15.mh" -#include "classic/classic_yaw00_lev2_p00.mh" -#include "classic/classic_yaw00_lev2_p01.mh" -#include "classic/classic_yaw00_lev2_p02.mh" -#include "classic/classic_yaw00_lev2_p03.mh" -#include "classic/classic_yaw00_lev2_p04.mh" -#include "classic/classic_yaw00_lev2_p05.mh" -#include "classic/classic_yaw00_lev2_p06.mh" -#include "classic/classic_yaw00_lev2_p07.mh" -#include "classic/classic_yaw00_lev2_p08.mh" -#include "classic/classic_yaw00_lev2_p09.mh" -#include "classic/classic_yaw00_lev2_p10.mh" -#include "classic/classic_yaw00_lev2_p11.mh" -#include "classic/classic_yaw00_lev2_p12.mh" -#include "classic/classic_yaw00_lev2_p13.mh" -#include "classic/classic_yaw00_lev2_p14.mh" -#include "classic/classic_yaw00_lev2_p15.mh" -#include "classic/classic_yaw00_lev3_p00.mh" -#include "classic/classic_yaw00_lev3_p01.mh" -#include "classic/classic_yaw00_lev3_p02.mh" -#include "classic/classic_yaw00_lev3_p03.mh" -#include "classic/classic_yaw00_lev3_p04.mh" -#include "classic/classic_yaw00_lev3_p05.mh" -#include "classic/classic_yaw00_lev3_p06.mh" -#include "classic/classic_yaw00_lev3_p07.mh" -#include "classic/classic_yaw00_lev3_p08.mh" -#include "classic/classic_yaw00_lev3_p09.mh" -#include "classic/classic_yaw00_lev3_p10.mh" -#include "classic/classic_yaw00_lev3_p11.mh" -#include "classic/classic_yaw00_lev3_p12.mh" -#include "classic/classic_yaw00_lev3_p13.mh" -#include "classic/classic_yaw00_lev3_p14.mh" -#include "classic/classic_yaw00_lev3_p15.mh" -#include "classic/classic_yaw00_lev3_p16.mh" -#include "classic/classic_yaw00_lev3_p17.mh" -#include "classic/classic_yaw00_lev3_p18.mh" -#include "classic/classic_yaw00_lev3_p19.mh" -#include "classic/classic_yaw00_lev3_p20.mh" -#include "classic/classic_yaw00_lev3_p21.mh" -#include "classic/classic_yaw00_lev3_p22.mh" -#include "classic/classic_yaw00_lev3_p23.mh" -#include "classic/classic_yaw00_lev3_p24.mh" -#include "classic/classic_yaw00_lev3_p25.mh" -#include "classic/classic_yaw00_lev3_p26.mh" -#include "classic/classic_yaw00_lev3_p27.mh" -#include "classic/classic_yaw00_lev3_p28.mh" -#include "classic/classic_yaw00_lev3_p29.mh" -#include "classic/classic_yaw00_lev3_p30.mh" -#include "classic/classic_yaw00_lev3_p31.mh" -#include "classic/classic_yaw00_lev3_p32.mh" -#include "classic/classic_yaw00_lev3_p33.mh" -#include "classic/classic_yaw00_lev3_p34.mh" -#include "classic/classic_yaw00_lev3_p35.mh" -#include "classic/classic_yaw00_lev3_p36.mh" -#include "classic/classic_yaw00_lev3_p37.mh" -#include "classic/classic_yaw00_lev3_p38.mh" -#include "classic/classic_yaw00_lev3_p39.mh" -#include "classic/classic_yaw00_lev3_p40.mh" -#include "classic/classic_yaw00_lev3_p41.mh" -#include "classic/classic_yaw00_lev3_p42.mh" -#include "classic/classic_yaw00_lev3_p43.mh" -#include "classic/classic_yaw00_lev3_p44.mh" -#include "classic/classic_yaw00_lev3_p45.mh" -#include "classic/classic_yaw00_lev3_p46.mh" -#include "classic/classic_yaw00_lev3_p47.mh" -#include "classic/classic_yaw00_lev3_p48.mh" -#include "classic/classic_yaw00_lev3_p49.mh" -#include "classic/classic_yaw00_lev3_p50.mh" -#include "classic/classic_yaw00_lev3_p51.mh" -#include "classic/classic_yaw00_lev3_p52.mh" -#include "classic/classic_yaw00_lev3_p53.mh" -#include "classic/classic_yaw00_lev3_p54.mh" -#include "classic/classic_yaw00_lev3_p55.mh" -#include "classic/classic_yaw00_lev3_p56.mh" -#include "classic/classic_yaw00_lev3_p57.mh" -#include "classic/classic_yaw00_lev3_p58.mh" -#include "classic/classic_yaw00_lev3_p59.mh" -#include "classic/classic_yaw00_lev3_p60.mh" -#include "classic/classic_yaw00_lev3_p61.mh" -#include "classic/classic_yaw00_lev3_p62.mh" -#include "classic/classic_yaw00_lev3_p63.mh" -#include "classic/classic_yaw00_lev3_p64.mh" -#include "classic/classic_yaw00_lev3_p65.mh" -#include "classic/classic_yaw00_lev3_p66.mh" -#include "classic/classic_yaw00_lev3_p67.mh" -#include "classic/classic_yaw00_lev3_p68.mh" -#include "classic/classic_yaw00_lev3_p69.mh" -#include "classic/classic_yaw00_lev3_p70.mh" -#include "classic/classic_yaw00_lev3_p71.mh" -#include "classic/classic_yaw00_lev3_p72.mh" -#include "classic/classic_yaw00_lev3_p73.mh" -#include "classic/classic_yaw00_lev3_p74.mh" -#include "classic/classic_yaw00_lev3_p75.mh" -#include "classic/classic_yaw00_lev3_p76.mh" - -#include "hat/hat_yaw00_lev0_p16.mh" -#include "hat/hat_yaw00_lev0_p17.mh" -#include "hat/hat_yaw00_lev0_p18.mh" -#include "hat/hat_yaw00_lev0_p19.mh" -#include "hat/hat_yaw00_lev0_p20.mh" -#include "hat/hat_yaw00_lev0_p21.mh" -#include "hat/hat_yaw00_lev0_p22.mh" -#include "hat/hat_yaw00_lev0_p23.mh" -#include "hat/hat_yaw00_lev0_p24.mh" -#include "hat/hat_yaw00_lev0_p25.mh" -#include "hat/hat_yaw00_lev0_p26.mh" -#include "hat/hat_yaw00_lev0_p27.mh" -#include "hat/hat_yaw00_lev0_p28.mh" -#include "hat/hat_yaw00_lev0_p29.mh" -#include "hat/hat_yaw00_lev0_p30.mh" -#include "hat/hat_yaw00_lev0_p31.mh" -#include "hat/hat_yaw00_lev0_p32.mh" -#include "hat/hat_yaw00_lev0_p33.mh" -#include "hat/hat_yaw00_lev0_p34.mh" -#include "hat/hat_yaw00_lev0_p35.mh" -#include "hat/hat_yaw00_lev0_p36.mh" -#include "hat/hat_yaw00_lev0_p37.mh" -#include "hat/hat_yaw00_lev0_p38.mh" -#include "hat/hat_yaw00_lev0_p39.mh" -#include "hat/hat_yaw00_lev0_p40.mh" -#include "hat/hat_yaw00_lev0_p41.mh" -#include "hat/hat_yaw00_lev0_p42.mh" -#include "hat/hat_yaw00_lev0_p43.mh" -#include "hat/hat_yaw00_lev0_p44.mh" -#include "hat/hat_yaw00_lev0_p45.mh" -#include "hat/hat_yaw00_lev0_p46.mh" -#include "hat/hat_yaw00_lev0_p47.mh" -#include "hat/hat_yaw00_lev0_p48.mh" -#include "hat/hat_yaw00_lev0_p49.mh" -#include "hat/hat_yaw00_lev0_p50.mh" -#include "hat/hat_yaw00_lev0_p51.mh" -#include "hat/hat_yaw00_lev0_p52.mh" -#include "hat/hat_yaw00_lev0_p53.mh" -#include "hat/hat_yaw00_lev0_p54.mh" -#include "hat/hat_yaw00_lev0_p55.mh" -#include "hat/hat_yaw00_lev0_p56.mh" -#include "hat/hat_yaw00_lev0_p57.mh" -#include "hat/hat_yaw00_lev0_p58.mh" -#include "hat/hat_yaw00_lev0_p59.mh" -#include "hat/hat_yaw00_lev0_p60.mh" -#include "hat/hat_yaw00_lev0_p61.mh" -#include "hat/hat_yaw00_lev0_p62.mh" -#include "hat/hat_yaw00_lev0_p63.mh" -#include "hat/hat_yaw00_lev0_p64.mh" -#include "hat/hat_yaw00_lev0_p65.mh" -#include "hat/hat_yaw00_lev0_p66.mh" -#include "hat/hat_yaw00_lev0_p67.mh" -#include "hat/hat_yaw00_lev0_p68.mh" -#include "hat/hat_yaw00_lev0_p69.mh" -#include "hat/hat_yaw00_lev0_p70.mh" -#include "hat/hat_yaw00_lev0_p71.mh" -#include "hat/hat_yaw00_lev0_p72.mh" -#include "hat/hat_yaw00_lev0_p73.mh" -#include "hat/hat_yaw00_lev0_p74.mh" -#include "hat/hat_yaw00_lev0_p75.mh" -#include "hat/hat_yaw00_lev0_p76.mh" -#include "hat/hat_yaw00_lev1_p16.mh" -#include "hat/hat_yaw00_lev1_p17.mh" -#include "hat/hat_yaw00_lev1_p18.mh" -#include "hat/hat_yaw00_lev1_p19.mh" -#include "hat/hat_yaw00_lev1_p20.mh" -#include "hat/hat_yaw00_lev1_p21.mh" -#include "hat/hat_yaw00_lev1_p22.mh" -#include "hat/hat_yaw00_lev1_p23.mh" -#include "hat/hat_yaw00_lev1_p24.mh" -#include "hat/hat_yaw00_lev1_p25.mh" -#include "hat/hat_yaw00_lev1_p26.mh" -#include "hat/hat_yaw00_lev1_p27.mh" -#include "hat/hat_yaw00_lev1_p28.mh" -#include "hat/hat_yaw00_lev1_p29.mh" -#include "hat/hat_yaw00_lev1_p30.mh" -#include "hat/hat_yaw00_lev1_p31.mh" -#include "hat/hat_yaw00_lev1_p32.mh" -#include "hat/hat_yaw00_lev1_p33.mh" -#include "hat/hat_yaw00_lev1_p34.mh" -#include "hat/hat_yaw00_lev1_p35.mh" -#include "hat/hat_yaw00_lev1_p36.mh" -#include "hat/hat_yaw00_lev1_p37.mh" -#include "hat/hat_yaw00_lev1_p38.mh" -#include "hat/hat_yaw00_lev1_p39.mh" -#include "hat/hat_yaw00_lev1_p40.mh" -#include "hat/hat_yaw00_lev1_p41.mh" -#include "hat/hat_yaw00_lev1_p42.mh" -#include "hat/hat_yaw00_lev1_p43.mh" -#include "hat/hat_yaw00_lev1_p44.mh" -#include "hat/hat_yaw00_lev1_p45.mh" -#include "hat/hat_yaw00_lev1_p46.mh" -#include "hat/hat_yaw00_lev1_p47.mh" -#include "hat/hat_yaw00_lev1_p48.mh" -#include "hat/hat_yaw00_lev1_p49.mh" -#include "hat/hat_yaw00_lev1_p50.mh" -#include "hat/hat_yaw00_lev1_p51.mh" -#include "hat/hat_yaw00_lev1_p52.mh" -#include "hat/hat_yaw00_lev1_p53.mh" -#include "hat/hat_yaw00_lev1_p54.mh" -#include "hat/hat_yaw00_lev1_p55.mh" -#include "hat/hat_yaw00_lev1_p56.mh" -#include "hat/hat_yaw00_lev1_p57.mh" -#include "hat/hat_yaw00_lev1_p58.mh" -#include "hat/hat_yaw00_lev1_p59.mh" -#include "hat/hat_yaw00_lev1_p60.mh" -#include "hat/hat_yaw00_lev1_p61.mh" -#include "hat/hat_yaw00_lev1_p62.mh" -#include "hat/hat_yaw00_lev1_p63.mh" -#include "hat/hat_yaw00_lev1_p64.mh" -#include "hat/hat_yaw00_lev1_p65.mh" -#include "hat/hat_yaw00_lev1_p66.mh" -#include "hat/hat_yaw00_lev1_p67.mh" -#include "hat/hat_yaw00_lev1_p68.mh" -#include "hat/hat_yaw00_lev1_p69.mh" -#include "hat/hat_yaw00_lev1_p70.mh" -#include "hat/hat_yaw00_lev1_p71.mh" -#include "hat/hat_yaw00_lev1_p72.mh" -#include "hat/hat_yaw00_lev1_p73.mh" -#include "hat/hat_yaw00_lev1_p74.mh" -#include "hat/hat_yaw00_lev1_p75.mh" -#include "hat/hat_yaw00_lev1_p76.mh" -#include "hat/hat_yaw00_lev2_p16.mh" -#include "hat/hat_yaw00_lev2_p17.mh" -#include "hat/hat_yaw00_lev2_p18.mh" -#include "hat/hat_yaw00_lev2_p19.mh" -#include "hat/hat_yaw00_lev2_p20.mh" -#include "hat/hat_yaw00_lev2_p21.mh" -#include "hat/hat_yaw00_lev2_p22.mh" -#include "hat/hat_yaw00_lev2_p23.mh" -#include "hat/hat_yaw00_lev2_p24.mh" -#include "hat/hat_yaw00_lev2_p25.mh" -#include "hat/hat_yaw00_lev2_p26.mh" -#include "hat/hat_yaw00_lev2_p27.mh" -#include "hat/hat_yaw00_lev2_p28.mh" -#include "hat/hat_yaw00_lev2_p29.mh" -#include "hat/hat_yaw00_lev2_p30.mh" -#include "hat/hat_yaw00_lev2_p31.mh" -#include "hat/hat_yaw00_lev2_p32.mh" -#include "hat/hat_yaw00_lev2_p33.mh" -#include "hat/hat_yaw00_lev2_p34.mh" -#include "hat/hat_yaw00_lev2_p35.mh" -#include "hat/hat_yaw00_lev2_p36.mh" -#include "hat/hat_yaw00_lev2_p37.mh" -#include "hat/hat_yaw00_lev2_p38.mh" -#include "hat/hat_yaw00_lev2_p39.mh" -#include "hat/hat_yaw00_lev2_p40.mh" -#include "hat/hat_yaw00_lev2_p41.mh" -#include "hat/hat_yaw00_lev2_p42.mh" -#include "hat/hat_yaw00_lev2_p43.mh" -#include "hat/hat_yaw00_lev2_p44.mh" -#include "hat/hat_yaw00_lev2_p45.mh" -#include "hat/hat_yaw00_lev2_p46.mh" -#include "hat/hat_yaw00_lev2_p47.mh" -#include "hat/hat_yaw00_lev2_p48.mh" -#include "hat/hat_yaw00_lev2_p49.mh" -#include "hat/hat_yaw00_lev2_p50.mh" -#include "hat/hat_yaw00_lev2_p51.mh" -#include "hat/hat_yaw00_lev2_p52.mh" -#include "hat/hat_yaw00_lev2_p53.mh" -#include "hat/hat_yaw00_lev2_p54.mh" -#include "hat/hat_yaw00_lev2_p55.mh" -#include "hat/hat_yaw00_lev2_p56.mh" -#include "hat/hat_yaw00_lev2_p57.mh" -#include "hat/hat_yaw00_lev2_p58.mh" -#include "hat/hat_yaw00_lev2_p59.mh" -#include "hat/hat_yaw00_lev2_p60.mh" -#include "hat/hat_yaw00_lev2_p61.mh" -#include "hat/hat_yaw00_lev2_p62.mh" -#include "hat/hat_yaw00_lev2_p63.mh" -#include "hat/hat_yaw00_lev2_p64.mh" -#include "hat/hat_yaw00_lev2_p65.mh" -#include "hat/hat_yaw00_lev2_p66.mh" -#include "hat/hat_yaw00_lev2_p67.mh" -#include "hat/hat_yaw00_lev2_p68.mh" -#include "hat/hat_yaw00_lev2_p69.mh" -#include "hat/hat_yaw00_lev2_p70.mh" -#include "hat/hat_yaw00_lev2_p71.mh" -#include "hat/hat_yaw00_lev2_p72.mh" -#include "hat/hat_yaw00_lev2_p73.mh" -#include "hat/hat_yaw00_lev2_p74.mh" -#include "hat/hat_yaw00_lev2_p75.mh" -#include "hat/hat_yaw00_lev2_p76.mh" - -namespace stasm -{ -// YAW00_DESCMODS defines the descriptor model to use at each point -static const BaseDescMod* YAW00_DESCMODS[] = -{ - &classic_yaw00_lev0_p00, - &classic_yaw00_lev0_p01, - &classic_yaw00_lev0_p02, - &classic_yaw00_lev0_p03, - &classic_yaw00_lev0_p04, - &classic_yaw00_lev0_p05, - &classic_yaw00_lev0_p06, - &classic_yaw00_lev0_p07, - &classic_yaw00_lev0_p08, - &classic_yaw00_lev0_p09, - &classic_yaw00_lev0_p10, - &classic_yaw00_lev0_p11, - &classic_yaw00_lev0_p12, - &classic_yaw00_lev0_p13, - &classic_yaw00_lev0_p14, - &classic_yaw00_lev0_p15, - &hat_yaw00_lev0_p16, - &hat_yaw00_lev0_p17, - &hat_yaw00_lev0_p18, - &hat_yaw00_lev0_p19, - &hat_yaw00_lev0_p20, - &hat_yaw00_lev0_p21, - &hat_yaw00_lev0_p22, - &hat_yaw00_lev0_p23, - &hat_yaw00_lev0_p24, - &hat_yaw00_lev0_p25, - &hat_yaw00_lev0_p26, - &hat_yaw00_lev0_p27, - &hat_yaw00_lev0_p28, - &hat_yaw00_lev0_p29, - &hat_yaw00_lev0_p30, - &hat_yaw00_lev0_p31, - &hat_yaw00_lev0_p32, - &hat_yaw00_lev0_p33, - &hat_yaw00_lev0_p34, - &hat_yaw00_lev0_p35, - &hat_yaw00_lev0_p36, - &hat_yaw00_lev0_p37, - &hat_yaw00_lev0_p38, - &hat_yaw00_lev0_p39, - &hat_yaw00_lev0_p40, - &hat_yaw00_lev0_p41, - &hat_yaw00_lev0_p42, - &hat_yaw00_lev0_p43, - &hat_yaw00_lev0_p44, - &hat_yaw00_lev0_p45, - &hat_yaw00_lev0_p46, - &hat_yaw00_lev0_p47, - &hat_yaw00_lev0_p48, - &hat_yaw00_lev0_p49, - &hat_yaw00_lev0_p50, - &hat_yaw00_lev0_p51, - &hat_yaw00_lev0_p52, - &hat_yaw00_lev0_p53, - &hat_yaw00_lev0_p54, - &hat_yaw00_lev0_p55, - &hat_yaw00_lev0_p56, - &hat_yaw00_lev0_p57, - &hat_yaw00_lev0_p58, - &hat_yaw00_lev0_p59, - &hat_yaw00_lev0_p60, - &hat_yaw00_lev0_p61, - &hat_yaw00_lev0_p62, - &hat_yaw00_lev0_p63, - &hat_yaw00_lev0_p64, - &hat_yaw00_lev0_p65, - &hat_yaw00_lev0_p66, - &hat_yaw00_lev0_p67, - &hat_yaw00_lev0_p68, - &hat_yaw00_lev0_p69, - &hat_yaw00_lev0_p70, - &hat_yaw00_lev0_p71, - &hat_yaw00_lev0_p72, - &hat_yaw00_lev0_p73, - &hat_yaw00_lev0_p74, - &hat_yaw00_lev0_p75, - &hat_yaw00_lev0_p76, - - &classic_yaw00_lev1_p00, - &classic_yaw00_lev1_p01, - &classic_yaw00_lev1_p02, - &classic_yaw00_lev1_p03, - &classic_yaw00_lev1_p04, - &classic_yaw00_lev1_p05, - &classic_yaw00_lev1_p06, - &classic_yaw00_lev1_p07, - &classic_yaw00_lev1_p08, - &classic_yaw00_lev1_p09, - &classic_yaw00_lev1_p10, - &classic_yaw00_lev1_p11, - &classic_yaw00_lev1_p12, - &classic_yaw00_lev1_p13, - &classic_yaw00_lev1_p14, - &classic_yaw00_lev1_p15, - &hat_yaw00_lev1_p16, - &hat_yaw00_lev1_p17, - &hat_yaw00_lev1_p18, - &hat_yaw00_lev1_p19, - &hat_yaw00_lev1_p20, - &hat_yaw00_lev1_p21, - &hat_yaw00_lev1_p22, - &hat_yaw00_lev1_p23, - &hat_yaw00_lev1_p24, - &hat_yaw00_lev1_p25, - &hat_yaw00_lev1_p26, - &hat_yaw00_lev1_p27, - &hat_yaw00_lev1_p28, - &hat_yaw00_lev1_p29, - &hat_yaw00_lev1_p30, - &hat_yaw00_lev1_p31, - &hat_yaw00_lev1_p32, - &hat_yaw00_lev1_p33, - &hat_yaw00_lev1_p34, - &hat_yaw00_lev1_p35, - &hat_yaw00_lev1_p36, - &hat_yaw00_lev1_p37, - &hat_yaw00_lev1_p38, - &hat_yaw00_lev1_p39, - &hat_yaw00_lev1_p40, - &hat_yaw00_lev1_p41, - &hat_yaw00_lev1_p42, - &hat_yaw00_lev1_p43, - &hat_yaw00_lev1_p44, - &hat_yaw00_lev1_p45, - &hat_yaw00_lev1_p46, - &hat_yaw00_lev1_p47, - &hat_yaw00_lev1_p48, - &hat_yaw00_lev1_p49, - &hat_yaw00_lev1_p50, - &hat_yaw00_lev1_p51, - &hat_yaw00_lev1_p52, - &hat_yaw00_lev1_p53, - &hat_yaw00_lev1_p54, - &hat_yaw00_lev1_p55, - &hat_yaw00_lev1_p56, - &hat_yaw00_lev1_p57, - &hat_yaw00_lev1_p58, - &hat_yaw00_lev1_p59, - &hat_yaw00_lev1_p60, - &hat_yaw00_lev1_p61, - &hat_yaw00_lev1_p62, - &hat_yaw00_lev1_p63, - &hat_yaw00_lev1_p64, - &hat_yaw00_lev1_p65, - &hat_yaw00_lev1_p66, - &hat_yaw00_lev1_p67, - &hat_yaw00_lev1_p68, - &hat_yaw00_lev1_p69, - &hat_yaw00_lev1_p70, - &hat_yaw00_lev1_p71, - &hat_yaw00_lev1_p72, - &hat_yaw00_lev1_p73, - &hat_yaw00_lev1_p74, - &hat_yaw00_lev1_p75, - &hat_yaw00_lev1_p76, - - &classic_yaw00_lev2_p00, - &classic_yaw00_lev2_p01, - &classic_yaw00_lev2_p02, - &classic_yaw00_lev2_p03, - &classic_yaw00_lev2_p04, - &classic_yaw00_lev2_p05, - &classic_yaw00_lev2_p06, - &classic_yaw00_lev2_p07, - &classic_yaw00_lev2_p08, - &classic_yaw00_lev2_p09, - &classic_yaw00_lev2_p10, - &classic_yaw00_lev2_p11, - &classic_yaw00_lev2_p12, - &classic_yaw00_lev2_p13, - &classic_yaw00_lev2_p14, - &classic_yaw00_lev2_p15, - &hat_yaw00_lev2_p16, - &hat_yaw00_lev2_p17, - &hat_yaw00_lev2_p18, - &hat_yaw00_lev2_p19, - &hat_yaw00_lev2_p20, - &hat_yaw00_lev2_p21, - &hat_yaw00_lev2_p22, - &hat_yaw00_lev2_p23, - &hat_yaw00_lev2_p24, - &hat_yaw00_lev2_p25, - &hat_yaw00_lev2_p26, - &hat_yaw00_lev2_p27, - &hat_yaw00_lev2_p28, - &hat_yaw00_lev2_p29, - &hat_yaw00_lev2_p30, - &hat_yaw00_lev2_p31, - &hat_yaw00_lev2_p32, - &hat_yaw00_lev2_p33, - &hat_yaw00_lev2_p34, - &hat_yaw00_lev2_p35, - &hat_yaw00_lev2_p36, - &hat_yaw00_lev2_p37, - &hat_yaw00_lev2_p38, - &hat_yaw00_lev2_p39, - &hat_yaw00_lev2_p40, - &hat_yaw00_lev2_p41, - &hat_yaw00_lev2_p42, - &hat_yaw00_lev2_p43, - &hat_yaw00_lev2_p44, - &hat_yaw00_lev2_p45, - &hat_yaw00_lev2_p46, - &hat_yaw00_lev2_p47, - &hat_yaw00_lev2_p48, - &hat_yaw00_lev2_p49, - &hat_yaw00_lev2_p50, - &hat_yaw00_lev2_p51, - &hat_yaw00_lev2_p52, - &hat_yaw00_lev2_p53, - &hat_yaw00_lev2_p54, - &hat_yaw00_lev2_p55, - &hat_yaw00_lev2_p56, - &hat_yaw00_lev2_p57, - &hat_yaw00_lev2_p58, - &hat_yaw00_lev2_p59, - &hat_yaw00_lev2_p60, - &hat_yaw00_lev2_p61, - &hat_yaw00_lev2_p62, - &hat_yaw00_lev2_p63, - &hat_yaw00_lev2_p64, - &hat_yaw00_lev2_p65, - &hat_yaw00_lev2_p66, - &hat_yaw00_lev2_p67, - &hat_yaw00_lev2_p68, - &hat_yaw00_lev2_p69, - &hat_yaw00_lev2_p70, - &hat_yaw00_lev2_p71, - &hat_yaw00_lev2_p72, - &hat_yaw00_lev2_p73, - &hat_yaw00_lev2_p74, - &hat_yaw00_lev2_p75, - &hat_yaw00_lev2_p76, - - &classic_yaw00_lev3_p00, - &classic_yaw00_lev3_p01, - &classic_yaw00_lev3_p02, - &classic_yaw00_lev3_p03, - &classic_yaw00_lev3_p04, - &classic_yaw00_lev3_p05, - &classic_yaw00_lev3_p06, - &classic_yaw00_lev3_p07, - &classic_yaw00_lev3_p08, - &classic_yaw00_lev3_p09, - &classic_yaw00_lev3_p10, - &classic_yaw00_lev3_p11, - &classic_yaw00_lev3_p12, - &classic_yaw00_lev3_p13, - &classic_yaw00_lev3_p14, - &classic_yaw00_lev3_p15, - &classic_yaw00_lev3_p16, - &classic_yaw00_lev3_p17, - &classic_yaw00_lev3_p18, - &classic_yaw00_lev3_p19, - &classic_yaw00_lev3_p20, - &classic_yaw00_lev3_p21, - &classic_yaw00_lev3_p22, - &classic_yaw00_lev3_p23, - &classic_yaw00_lev3_p24, - &classic_yaw00_lev3_p25, - &classic_yaw00_lev3_p26, - &classic_yaw00_lev3_p27, - &classic_yaw00_lev3_p28, - &classic_yaw00_lev3_p29, - &classic_yaw00_lev3_p30, - &classic_yaw00_lev3_p31, - &classic_yaw00_lev3_p32, - &classic_yaw00_lev3_p33, - &classic_yaw00_lev3_p34, - &classic_yaw00_lev3_p35, - &classic_yaw00_lev3_p36, - &classic_yaw00_lev3_p37, - &classic_yaw00_lev3_p38, - &classic_yaw00_lev3_p39, - &classic_yaw00_lev3_p40, - &classic_yaw00_lev3_p41, - &classic_yaw00_lev3_p42, - &classic_yaw00_lev3_p43, - &classic_yaw00_lev3_p44, - &classic_yaw00_lev3_p45, - &classic_yaw00_lev3_p46, - &classic_yaw00_lev3_p47, - &classic_yaw00_lev3_p48, - &classic_yaw00_lev3_p49, - &classic_yaw00_lev3_p50, - &classic_yaw00_lev3_p51, - &classic_yaw00_lev3_p52, - &classic_yaw00_lev3_p53, - &classic_yaw00_lev3_p54, - &classic_yaw00_lev3_p55, - &classic_yaw00_lev3_p56, - &classic_yaw00_lev3_p57, - &classic_yaw00_lev3_p58, - &classic_yaw00_lev3_p59, - &classic_yaw00_lev3_p60, - &classic_yaw00_lev3_p61, - &classic_yaw00_lev3_p62, - &classic_yaw00_lev3_p63, - &classic_yaw00_lev3_p64, - &classic_yaw00_lev3_p65, - &classic_yaw00_lev3_p66, - &classic_yaw00_lev3_p67, - &classic_yaw00_lev3_p68, - &classic_yaw00_lev3_p69, - &classic_yaw00_lev3_p70, - &classic_yaw00_lev3_p71, - &classic_yaw00_lev3_p72, - &classic_yaw00_lev3_p73, - &classic_yaw00_lev3_p74, - &classic_yaw00_lev3_p75, - &classic_yaw00_lev3_p76, -}; - -} // namespace stasm -#endif // STASM_YAW00_1_H diff --git a/3rdparty/stasm4.0.0/stasm/src/asm.cpp b/3rdparty/stasm4.0.0/stasm/src/asm.cpp deleted file mode 100755 index 0cbf0b4..0000000 --- a/3rdparty/stasm4.0.0/stasm/src/asm.cpp +++ /dev/null @@ -1,251 +0,0 @@ -// asm.cpp: Active Shape Model class -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#include "asm.h" -#include "hatdesc.h" -#include "eyedist.h" - -namespace stasm -{ -static void TraceShape( // write an image file showing current shape on the image - const Shape& shape, // in: current search shape - const Image& pyrimg, // in: image scaled to this pyramid level - int ilev, // in: pyramid level (0 is full size) - int iter, // in: model iteration (-1 if start shape) - const char* name) // in -{ - (void) shape; - (void) pyrimg; - (void) ilev; - (void) iter; - (void) name; -#if TRACE_IMAGES // will be 0 unless debugging (defined in stasm.h) - - static int index = 0; // number images so they appear in order in the directory - - if (index == 0) - lprintf("TRACE_IMAGES "); - - Image img; // pyrimg rescaled back to full size image (after rescaling by eyemouth) - const double RESOLUTION = 2; // 1 for no extra resolution, 2 for double resolution - const double rescale = RESOLUTION / GetPyrScale(ilev); - cv::resize(pyrimg, img, cv::Size(), rescale, rescale, cv::INTER_NEAREST); - CImage cimg; cvtColor(img, cimg, CV_GRAY2BGR); // color image - DesaturateImg(cimg); - Shape shape1(shape.clone()); RoundMat(shape1); - shape1 += .4; // put shape points in center of rescaled pixels - shape1 *= rescale; - DrawShape(cimg, shape1, 0xffff00, false, 1); - char path[SLEN]; - if (iter < 0) // start shape? - sprintf(path, "_%2.2d_%s.bmp", index, name); - else - sprintf(path, "_%2.2d_lev%d_iter%d_%s.bmp", index, ilev, iter, name); - ImgPrintf(cimg, 10 * RESOLUTION, 20 * RESOLUTION, 0xffff00, 2, path); - if (iter >= 0) - { - // draw 1D patch boundary at one point (patch is drawn - // horizontal, not rotated to shape boundary as it should be) - - Shape shape2(shape); RoundMat(shape2); - int ipoint = shape2.rows >= L_RJaw11? L_RJaw11: 0; - int proflen = 9; - int x1 = cvRound(shape2(ipoint, IX)) - proflen / 2; - int x2 = x1 + proflen; - int y1 = cvRound(shape2(ipoint, IY)); - int y2 = y1 + 1; - rectangle(cimg, - cv::Point(cvRound(rescale * x1), cvRound(rescale * y1)), - cv::Point(cvRound(rescale * x2), cvRound(rescale * y2)), - CV_RGB(255,0,0), 1); - - // draw 2D patch boundary at one point - - if (ilev <= HAT_START_LEV) // we use HATs only at upper pyr levs - { - ipoint = shape2.rows >= L_LPupil? L_LPupil: 0; - #define round2(x) 2 * cvRound((x) / 2) - int patchwidth = HAT_PATCH_WIDTH + round2(ilev * HAT_PATCH_WIDTH_ADJ); - x1 = cvRound(shape2(ipoint, IX)) - patchwidth / 2; - x2 = x1 + patchwidth; - y1 = cvRound(shape2(ipoint, IY)) - patchwidth / 2; - y2 = y1 + patchwidth; - rectangle(cimg, - cv::Point(cvRound(rescale * x1), cvRound(rescale * y1)), - cv::Point(cvRound(rescale * x2), cvRound(rescale * y2)), - CV_RGB(255,0,0), 1); - - } - } - - cv::imwrite(path, cimg); - index++; - -#endif // TRACE_IMAGES -} - -#if _OPENMP - -void Mod::SuggestShape_( // args same as non OpenMP version, see below - Shape& shape, // io - int ilev, // in - const Image& img, // in - const Shape& pinned) // in -const -{ - static bool firsttime = true; - int ncatch = 0; - const Shape inshape(shape.clone()); - - // Call the search function DescSearch_ concurrently for multiple points. - // Note that dynamic OpenMP scheduling is faster here than static, - // because the time through the loop varies widely (mainly because - // classic descriptors are faster than HATs). - - #pragma omp parallel for schedule(dynamic) - - for (int ipoint = 0; ipoint < shape.rows; ipoint++) - if (pinned.rows == 0 || !PointUsed(pinned, ipoint)) // skip point if pinned - { - // You are not allowed to jump out of an OpenMP for loop. Thus - // we need this try block, to subsume the global try blocks in - // stasm_lib.cpp. Without this try, a call to Err would cause - // a jump to the global catch. - - try - { - if (firsttime && omp_get_thread_num() == 0) - { - firsttime = false; - logprintf("[nthreads %d]", omp_get_num_threads()); - } - descmods_[ilev][ipoint]->DescSearch_(shape(ipoint, IX), shape(ipoint, IY),img, inshape, ilev, ipoint); - } - catch(...) - { - ncatch++; // a call was made to Err or a CV_Assert failed - } - } - - if (ncatch) - { - if (ncatch > 1) - lprintf("\nMultiple errors, only the first will be printed\n"); - // does not matter what we throw, will be caught by global catch - throw "SuggestShape_"; - } -} - -#else // not _OPENMP - -void Mod::SuggestShape_( // estimate shape by matching descr at each point - Shape& shape, // io: points will be moved for best descriptor matches - int ilev, // in: pyramid level (0 is full size) - const Image& img, // in: image scaled to this pyramid level - const Shape& pinned, // in: if no rows then no pinned landmarks, else - // points except those equal to 0,0 are pinned - const Hat &hat, - StasmHash &hash) -const -{ - const Shape inshape(shape.clone()); - - for (int ipoint = 0; ipoint < shape.rows; ipoint++) - if (pinned.rows == 0 || !PointUsed(pinned, ipoint)) // skip point if pinned - { - // Call the ClassicDescMod or HatDescMod search function - // to update the current point in shape (the point at ipoint) - // yaw00.h:YAW00_DESCMODS defines which descriptor model is used - // for each point (assuming we are using the yaw00 model). - - descmods_[ilev][ipoint]->DescSearch_(shape(ipoint, IX), shape(ipoint, IY),img, inshape, ilev, ipoint, hat, hash); - } -} -#endif // not _OPENMP - -void Mod::LevSearch_( // do an ASM search at one level in the image pyr - Shape& shape, // io: the face shape for this pyramid level - int ilev, // in: pyramid level (0 is full size) - const Image& img, // in: image scaled to this pyramid level - const Shape& pinnedshape) // in: if no rows then no pinned landmarks, else - // points except those equal to 0,0 are pinned -const -{ - StasmHash hash; - - TraceShape(shape, img, ilev, 0, "enterlevsearch"); - - const Hat &hat = InitHatLevData(img, ilev); // init internal HAT mats for this lev - - VEC b(NSIZE(shapemod_.eigvals_), 1, 0.); // eigvec weights, init to 0 - - for (int iter = 0; iter < SHAPEMODEL_ITERS; iter++) - { - // suggest shape by descriptor matching at each landmark - - SuggestShape_(shape, ilev, img, pinnedshape, hat, hash); - - TraceShape(shape, img, ilev, iter, "suggested"); - - // adjust suggested shape to conform to the shape model - - if (pinnedshape.rows) - shape = shapemod_.ConformShapeToMod_Pinned_(b, shape, ilev, pinnedshape); - else - shape = shapemod_.ConformShapeToMod_(b, shape, ilev); - - TraceShape(shape, img, ilev, iter, "conformed"); - } -} - -static void CreatePyr( // create image pyramid - vector& pyr, // out: the pyramid, pyr[0] is full size image - const Image& img, // in: full size image - int nlevs) // in -{ - CV_Assert(nlevs >= 1 && nlevs < 10); // 10 is arb - pyr.resize(nlevs); - pyr[0] = img; // pyramid level 0 is full size image - for (int ilev = 1; ilev < nlevs; ilev++) - { - const double scale = GetPyrScale(ilev); - cv::resize(img, pyr[ilev], cv::Size(), scale, scale, cv::INTER_LINEAR); - } -} - -Shape Mod::ModSearch_( // returns coords of the facial landmarks - const Shape& startshape, // in: startshape roughly positioned on face - const Image& img, // in: grayscale image (typically just ROI) - const Shape* pinnedshape) // in: pinned landmarks, NULL if nothing pinned -const -{ - Image scaledimg; // image scaled to fixed eye-mouth distance - const double imgscale = EYEMOUTH_DIST / EyeMouthDist(startshape); - - // TODO This resize is quite slow (cv::INTER_NEAREST is even slower, why?). - cv::resize(img, scaledimg, - cv::Size(), imgscale, imgscale, cv::INTER_LINEAR); - - TraceShape(startshape * imgscale, scaledimg, 0, -1, "start"); - - vector pyr; // image pyramid (a vec of images, one for each pyr lev) - CreatePyr(pyr, scaledimg, N_PYR_LEVS); - - Shape shape(startshape * imgscale * GetPyrScale(N_PYR_LEVS)); - - Shape pinned; // pinnedshape scaled to current pyr lev - if (pinnedshape) - pinned = *pinnedshape * imgscale * GetPyrScale(N_PYR_LEVS); - - for (int ilev = N_PYR_LEVS-1; ilev >= 0; ilev--) - { - shape *= PYR_RATIO; // scale shape to this pyr lev - pinned *= PYR_RATIO; - - LevSearch_(shape, ilev, pyr[ilev], pinned); - } - return shape / imgscale; -} - -} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/src/classicdesc.cpp b/3rdparty/stasm4.0.0/stasm/src/classicdesc.cpp deleted file mode 100755 index c6cd0aa..0000000 --- a/3rdparty/stasm4.0.0/stasm/src/classicdesc.cpp +++ /dev/null @@ -1,275 +0,0 @@ -// classicdesc.cpp: model for classic ASM descriptors -// -// By "classic descriptor" we mean the Cootes' style one dimensional -// profile along the whisker orthogonal to the shape boundary. -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#include "classicdesc.h" -#include "landmarks.h" - -namespace stasm -{ -static void NormalizeMat( - MAT& mat) // io: normalized so L2 length is 1 -{ - double norm = cv::norm(mat); // L2 norm - if (!IsZero(norm)) - mat /= norm; -} - -static const VEC Bisector( // return normalized bisector of three ordered points - const VEC& prev, // in: x,y coords of previous point (1x2 matrix) - const VEC& point, // in - const VEC& next) // in -{ - VEC u(1, 2); // u is point - prev, rotated by 90 degrees - u(IX) = point(IY) - prev(IY); - u(IY) = prev(IX) - point(IX); - NormalizeMat(u); - - VEC v(1, 2); // v is next - point, rotated by 90 degrees - v(IX) = next(IY) - point(IY); - v(IY) = point(IX) - next(IX); - NormalizeMat(v); - - VEC w(u + v); NormalizeMat(w); - - // are prev and next in the same line? if so, avoid numerical issues - if (IsZero(w(IX)) && IsZero(w(IY))) - { - w = point - prev; - NormalizeMat(w); - } - return w; // w is the direction of the bisector -} - -// get x and y distances to take a single pixel step along the whisker - -static void WhiskerStep( - double& xstep, // out: x dist to move one pix along whisker - double& ystep, // out: y dist to move one pix along whisker - const Shape& shape, // in - int ipoint) // in: index of the current point -{ - int prev, next; PrevAndNextLandmarks(prev, next, ipoint, shape); - - if ((Equal(shape(prev, IX), shape(ipoint, IX)) && - Equal(shape(prev, IY), shape(ipoint, IY))) || - - (Equal(shape(next, IX), shape(ipoint, IX)) && - Equal(shape(next, IY), shape(ipoint, IY)))) - { - // The prev or next point is on top of the current point. - // Arbitrarily point the whisker in a horizontal direction. - // TODO Revisit, this is common at low resolution pyramid levels. - - xstep = 1; - ystep = 0; - } - else - { - const VEC whisker_direction(Bisector(shape.row(prev), - shape.row(ipoint), - shape.row(next))); - xstep = -whisker_direction(IX); - ystep = -whisker_direction(IY); - - // normalize so either xstep or ystep will be +-1, - // and the other will be smaller than +-1 - - const double abs_xstep = ABS(xstep); - const double abs_ystep = ABS(ystep); - if (abs_xstep >= abs_ystep) - { - xstep /= abs_xstep; - ystep /= abs_xstep; - } - else - { - xstep /= abs_ystep; - ystep /= abs_ystep; - } - } -} - -static inline int Step( // return x coord at the given offset along whisker - double x, // in: x coord of center of whisker - double xstep, // in: x dist to move one pixel along whisker - int offset) // in: offset along whisker in pixels -{ - return cvRound(x + (offset * xstep)); -} - -static inline int Pix( // get pixel at ix and iy, forcing ix and iy in range - const Image& img, // in - int ix, // in - int iy) // in -{ - return img(Clamp(iy, 0, img.rows-1), Clamp(ix, 0, img.cols-1)); -} - -// fullprof is the 1D profile along the whisker, including extra elements -// to allow searching away from the current position of the landmark. -// -// shape[ipoint] is the current position of the landmark, -// and the center point of the whisker. -// We also use shape for figuring out the direction of the whisker. - -static void FullProf( - VEC& fullprof, // out - const Image& img, // in - const MAT& shape, // in - int ipoint) // in: index of the current point -{ - double xstep; // x axis dist corresponding to one pixel along whisker - double ystep; - WhiskerStep(xstep, ystep, shape, ipoint); - - const double x = shape(ipoint, IX); // center point of the whisker - const double y = shape(ipoint, IY); - - // number of pixs to sample in each direction along the whisker - const int n = (NSIZE(fullprof) - 1) / 2; - - int prevpix = Pix(img, - Step(x, xstep, -n-1), Step(y, ystep, -n-1)); - - for (int i = -n; i <= n; i++) - { - const int pix = Pix(img, - Step(x, xstep, i), Step(y, ystep, i)); - - fullprof(i + n) = double(pix - prevpix); // signed gradient - prevpix = pix; - } -} - -double SumAbsElems( // return the sum of the abs values of the elems of mat - const MAT& mat) // in -{ - CV_Assert(mat.isContinuous()); - const double* const data = Buf(mat); - double sum = 0; - int i = NSIZE(mat); // number of elements - while (i--) - sum += ABS(data[i]); - return sum; -} - -// This returns a double equal to x.t() * mat * x. -// -// x is a vector (row or column, it doesn't matter). -// -// mat is assumed to be a symmetric matrix -// (but only the upper right triangle of mat is actually used). -// -// mat and x are not modified. -// -// This function is equivalent to x.t() * mat * x(), but is optimized -// for speed and is faster. It's faster because we use the fact that -// mat is symmetric to roughly halve the number of operations. - -static double xAx( - const VEC& x, // in - const MAT& mat) //in: must be symmetric -{ - const int n = NSIZE(x); - CV_Assert(mat.rows == n && mat.cols == n && x.isContinuous()); - const double* px = Buf(x); - double diagsum = 0, sum = 0; - int i = n; - while (i--) - { - const double xi = px[i]; - const double* const rowbuf = mat.ptr(i); - diagsum += rowbuf[i] * SQ(xi); // sum diag elements - for (int j = i+1; j < n; j++) // sum upper right triangle elements - sum += rowbuf[j] * xi * px[j]; - } - return diagsum + 2 * sum; // "2 *" to include lower left triangle elements -} - -// Get the profile distance. That is, get the image profile at the given -// offset along the whisker, and return the Mahalanobis distance between -// it and the model mean profile. Low distance means good fit. - -static double ProfDist( - int offset, // in: offset along whisker in pixels - int proflen, // in - const VEC& fullprof, // in - const VEC& meanprof, // in: mean of the training profiles for this point - const MAT& covi) // in: inverse of the covar of the training profiles -{ - VEC prof(1, proflen); // the profile at the given offset along whisker - - // copy the relevant part of fullprof into prof - - memcpy(Buf(prof), - Buf(fullprof) + offset + NSIZE(fullprof)/2 - NSIZE(prof)/2, - NSIZE(prof) * sizeof(prof(0))); - - // normalize prof - - double sum = SumAbsElems(prof); - if (!IsZero(sum)) - prof *= NSIZE(prof) / sum; - - // The following code is equivalent to - // return (prof - meanprof).t() * covi * (prof - meanprof) - // but is optimized for speed. - - prof -= meanprof; // for efficiency, use "-=" not "=" with "-" - return xAx(prof, covi); -} - -// If OpenMP is enabled, multiple instances of this function will be called -// concurrently (each call will have a different value of x and y). Thus this -// function and its callees do not modify any data that is not on the stack. - -void ClassicDescSearch( // search along whisker for best profile match - double& x, // io: (in: old posn of landmark, out: new posn) - double& y, // io: - const Image& img, // in: the image scaled to this pyramid level - const Shape& inshape, // in: current posn of landmarks (for whisker directions) - int ipoint, // in: index of the current landmark - const MAT& meanprof, // in: mean of the training profiles for this point - const MAT& covi) // in: inverse of the covar of the training profiles -{ - const int proflen = NSIZE(meanprof); - CV_Assert(proflen % 2 == 1); // proflen must be odd in this implementation - - // fullprof is the 1D profile along the whisker including the extra - // elements to allow search +-CLASSIC_MAX_OFFSET pixels away from - // the current position of the landmark. - // We precalculate the fullprof for efficiency in the for loop below. - - VEC fullprof(1, proflen + 2 * CLASSIC_MAX_OFFSET); - CV_Assert(NSIZE(fullprof) % 2 == 1); // fullprof length must be odd - FullProf(fullprof, img, inshape, ipoint); - - // move along the whisker looking for the best match - - int bestoffset = 0; - double mindist = FLT_MAX; - for (int offset = -CLASSIC_MAX_OFFSET; - offset <= CLASSIC_MAX_OFFSET; - offset += CLASSIC_SEARCH_RESOL) - { - const double dist = ProfDist(offset, proflen, fullprof, meanprof, covi); - - if (dist < mindist) - { - mindist = dist; - bestoffset = offset; - } - } - // change x,y to the best position along the whisker - - double xstep, ystep; - WhiskerStep(xstep, ystep, inshape, ipoint); - x = inshape(ipoint, IX) + (bestoffset * xstep); - y = inshape(ipoint, IY) + (bestoffset * ystep); -} - -} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/src/convshape.cpp b/3rdparty/stasm4.0.0/stasm/src/convshape.cpp deleted file mode 100755 index 67a52fb..0000000 --- a/3rdparty/stasm4.0.0/stasm/src/convshape.cpp +++ /dev/null @@ -1,232 +0,0 @@ -// convshape.cpp: convert a stasm 77 point shape to other formats -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#include "stasm_lib.h" -#include "convshape.h" -#include "shape17.h" - -namespace stasm -{ -static void Copy( // copy a point from oldshape to shape - Shape& shape, // io - const Shape& oldshape, // in - int i, // in - int iold) // in -{ - shape(i, IX) = oldshape(iold, IX); - shape(i, IY) = oldshape(iold, IY); -} - -static void Inter( // interpolate a point from two nearby oldshape points - Shape& shape, // io - const Shape& oldshape, // in - int i, // in: shape point - double ratio, // in: interpolation ratio, 0 to 1 - int i1, // in: oldshape point 1 - int i2) // in: oldshape point 2 -{ - if (!PointUsed(oldshape, i1) && !PointUsed(oldshape, i2)) - { - shape(i, IX) = 0; - shape(i, IY) = 0; - } - else if (!PointUsed(oldshape, i1)) - { - shape(i, IX) = oldshape(i2, IX) + 1; // +1 is arb, to disambiguate point - shape(i, IY) = oldshape(i2, IY) + 1; - } - else if (!PointUsed(oldshape, i2)) - { - shape(i, IX) = oldshape(i1, IX) + 1; - shape(i, IY) = oldshape(i1, IY) + 1; - } - else - { - CV_Assert(ratio >= 0 && ratio <= 1); - shape(i, IX) = ratio * oldshape(i1, IX) + (1-ratio) * oldshape(i2, IX); - shape(i, IY) = ratio * oldshape(i1, IY) + (1-ratio) * oldshape(i2, IY); - } -} - -static Shape Shape77As20( // return an approximated BioID 20 point shape - const Shape& shape) // in: Stasm 77 point shape -{ - CV_Assert(shape.rows == 77); - - Shape newshape(20, 2); - - Copy(newshape, shape, 0, 38); - Copy(newshape, shape, 1, 39); - Copy(newshape, shape, 2, 59); - Copy(newshape, shape, 3, 65); - Copy(newshape, shape, 4, 18); - Copy(newshape, shape, 5, 21); - Copy(newshape, shape, 6, 22); - Copy(newshape, shape, 7, 25); - Copy(newshape, shape, 8, 0); - Copy(newshape, shape, 9, 34); - Copy(newshape, shape, 10, 30); - Copy(newshape, shape, 11, 40); - Copy(newshape, shape, 12, 44); - Copy(newshape, shape, 13, 12); - Copy(newshape, shape, 14, 52); - Copy(newshape, shape, 15, 51); - Copy(newshape, shape, 16, 53); - Copy(newshape, shape, 17, 62); - Copy(newshape, shape, 18, 74); - Copy(newshape, shape, 19, 6); - -#if MOD_A1 || MOD_A || MOD_A_EMU - const double eyemouth = EyeMouthDist(shape); - newshape(15, IY) += MAX(1, .02 * eyemouth); // move down, into nostril - newshape(16, IY) += MAX(1, .02 * eyemouth); // move down, into nostril -#endif - - return newshape; -} - -static Shape Shape77As22( // return an approximated AR 22 point shape - const Shape& shape) // in: Stasm 77 point shape -{ - CV_Assert(shape.rows == 77); - - // first 20 points same as BioId - Shape newshape = DimKeep(Shape77As20(shape), 77, 2); - - Copy(newshape, shape, 20, 3); - Copy(newshape, shape, 21, 9); - - return newshape; -} - -static Shape Shape77As68( // return an approximated XM2VTS 68 point shape - const Shape& shape) // in: Stasm 77 point shape -{ - CV_Assert(shape.rows == 77); - - Shape newshape(68, 2); - - Copy(newshape, shape, 0, 0); - Inter(newshape, shape, 1, .6667, 1, 2); - Inter(newshape, shape, 2, .5, 2, 3); - Copy(newshape, shape, 3, 3); - Inter(newshape, shape, 4, .3333, 3, 4); - Inter(newshape, shape, 5, .6667, 4, 5); - Copy(newshape, shape, 6, 5); - Copy(newshape, shape, 7, 6); - Copy(newshape, shape, 8, 7); - Inter(newshape, shape, 9, .3333, 7, 8); - Inter(newshape, shape, 10, .6667, 8, 9); - Copy(newshape, shape, 11, 9); - Inter(newshape, shape, 12, .5, 9, 10); - Inter(newshape, shape, 13, .3333, 10, 11); - Copy(newshape, shape, 14, 12); - Copy(newshape, shape, 15, 25); - Copy(newshape, shape, 16, 24); - Copy(newshape, shape, 17, 23); - Copy(newshape, shape, 18, 22); - Copy(newshape, shape, 19, 27); - Copy(newshape, shape, 20, 26); - Copy(newshape, shape, 21, 18); - Copy(newshape, shape, 22, 17); - Copy(newshape, shape, 23, 16); - Copy(newshape, shape, 24, 21); - Copy(newshape, shape, 25, 20); - Copy(newshape, shape, 26, 19); - Copy(newshape, shape, 27, 34); - Copy(newshape, shape, 28, 32); - Copy(newshape, shape, 29, 30); - Copy(newshape, shape, 30, 36); - Copy(newshape, shape, 31, 38); - Copy(newshape, shape, 32, 44); - Copy(newshape, shape, 33, 42); - Copy(newshape, shape, 34, 40); - Copy(newshape, shape, 35, 46); - Copy(newshape, shape, 36, 39); - Inter(newshape, shape, 37, .6667, 30, 40); - newshape(37, IX) = shape(50, IX); - Copy(newshape, shape, 38, 50); - Copy(newshape, shape, 39, 58); - Copy(newshape, shape, 40, 57); - Copy(newshape, shape, 41, 56); - Copy(newshape, shape, 42, 55); - Copy(newshape, shape, 43, 54); - Copy(newshape, shape, 44, 48); - Inter(newshape, shape, 45, .3333, 30, 40); - newshape(45, IX) = shape(48, IX); - Copy(newshape, shape, 46, 51); - Copy(newshape, shape, 47, 53); - Copy(newshape, shape, 48, 59); - Copy(newshape, shape, 49, 60); - Copy(newshape, shape, 50, 61); - Copy(newshape, shape, 51, 62); - Copy(newshape, shape, 52, 63); - Copy(newshape, shape, 53, 64); - Copy(newshape, shape, 54, 65); - Copy(newshape, shape, 55, 72); - Copy(newshape, shape, 56, 73); - Copy(newshape, shape, 57, 74); - Copy(newshape, shape, 58, 75); - Copy(newshape, shape, 59, 76); - Copy(newshape, shape, 60, 69); - Copy(newshape, shape, 61, 70); - Copy(newshape, shape, 62, 71); - Copy(newshape, shape, 63, 66); - Copy(newshape, shape, 64, 67); - Copy(newshape, shape, 65, 68); - Inter(newshape, shape, 66, .5, 67, 70); - Copy(newshape, shape, 67, 52); - -#if MOD_A1 || MOD_A || MOD_A_EMU - const double eyemouth = EyeMouthDist(shape); - newshape(38, IY) += MAX(1, .05 * eyemouth); // move side of nose down - newshape(44, IY) += MAX(1, .05 * eyemouth); // move side of nose down - newshape(46, IY) += MAX(1, .02 * eyemouth); // move down, into nostril - newshape(47, IY) += MAX(1, .02 * eyemouth); // move down, into nostril -#endif - - return newshape; -} - -static Shape Shape77As76( // return an approximated MUCT 76 point shape - const Shape& shape) // in: Stasm 77 point shape -{ - // first 68 points same as XM2VTS - Shape newshape = DimKeep(Shape77As68(shape), 77, 2); - - Copy(newshape, shape, 68, 33); // extra eyelid points - Copy(newshape, shape, 69, 31); - Copy(newshape, shape, 70, 37); - Copy(newshape, shape, 71, 35); - Copy(newshape, shape, 72, 43); - Copy(newshape, shape, 73, 41); - Copy(newshape, shape, 74, 47); - Copy(newshape, shape, 75, 45); - - return newshape; -} - -Shape ConvertShape( // return shape with nlandmarks, return no rows if can't - const Shape& shape, // in - int nlandmarks) // in: 77=nochange, 76=stasm3, 68=xm2vts, 22=ar, 20=bioid, 17=me17 -{ - Shape newshape; - if (nlandmarks == shape.rows) - newshape = shape.clone(); - else if (nlandmarks == 17) // me17 - newshape = Shape17(shape); - else if (shape.rows == stasm_NLANDMARKS) - { - switch(nlandmarks) - { - case 20: newshape = Shape77As20(shape); break; // BioID - case 22: newshape = Shape77As22(shape); break; // AR - case 68: newshape = Shape77As68(shape); break; // XM2VTS - case 76: newshape = Shape77As76(shape); break; // Stasm 3 - } - } - return newshape; -} - -} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/src/err.cpp b/3rdparty/stasm4.0.0/stasm/src/err.cpp deleted file mode 100755 index aca7809..0000000 --- a/3rdparty/stasm4.0.0/stasm/src/err.cpp +++ /dev/null @@ -1,148 +0,0 @@ -// err.cpp: error handling for Stasm -// -// Don't call internal Stasm functions (i.e. functions in the Stasm namespace -// when not in a try block, because Stasm's error handler (Err) raises an -// exception. You need to catch that exception to avoid a messageless crash. -// -// Your code should look like this (see e.g. stasm_lib.cpp and stasm_main.cpp): -// -// CatchOpenCvErrs(); // tell Stasm to handle CV_Assert as Stasm errors -// try -// { -// ... your code which calls Stasm's internal functions ... -// } -// catch(...) -// { -// // a call was made to Err or a CV_Assert failed -// printf("\n%s\n", stasm_lasterr()); -// exit(1); -// } -// UncatchOpenCvErrs(); // restore OpenCV handler to its previous state -// -// Note that the stasm library function (i.e. the functions prefixed -// by "stasm_") use try blocks internally, and code that calls -// them doesn't have to worry about the above exception. -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#include - -#include "err.h" -#include "misc.h" - -namespace stasm -{ -static char err_g[SBIG]; // err msg saved for retrieval by LastErr and stasm_lasterr - -static vector stack_g(10); // stack of err handlers, 10 is generous - -static int istack_g; // index into stack_g - -//----------------------------------------------------------------------------- - -static void PossiblyEnterDebugger(void) -{ -#if _DEBUG - // requires you to be in a debugger or have set up a just-in-time debugger - printf("\n%s\nDEBUG is true so forcing entry to the debugger\n", err_g); - fflush(stdout); - static volatile int* p = 0; - *p = 99; -#endif // _DEBUG -} - -// This gets called during OpenCV error handling e.g. if a CV_Assert fails. -// Save the error info in our global string err_g. - -static int CV_CDECL CvErrorCallbackForStasm( - int code, // translated to a string e.g. "Assertion failed" - const char* , // unused here - const char* err_msg, // e.g. the contents of the line where assert failed - const char* file_name, // filename where error occurred (if available) - int line, // line number where error occurred - void* ) // unused here -{ - if (err_g[0]) - { - // Recursive, we are already processing an error. - // Not really an issue, only first error will be reported via LastErr. - printf("\nNested error in CvErrorCallbackForStasm\n" - " Current error: %.80s\n New error: %.80s\n", - err_g, err_msg); - } - else - { - char temp[SBIG]; // temporary string needed because err_msg may be err_g - const char* errmsg = cvErrorStr(code); - if (file_name && file_name[0]) - sprintf(temp, "%s(%d) : %s : %s", - BaseExt(file_name), line, errmsg, err_msg); - else - sprintf(temp, "OpenCV %s : %s", errmsg, err_msg); - - STRCPY(err_g, temp); - } - PossiblyEnterDebugger(); - return 0; -} - -void CatchOpenCvErrs(void) // makes CV_Assert work with LastErr and stasm_lasterr -{ - err_g[0] = 0; - cv::ErrorCallback prev = cv::redirectError(CvErrorCallbackForStasm); - if (istack_g < NSIZE(stack_g)) - stack_g[istack_g++] = prev; - else // should never get here (CatchErr regions nested too deeply) - printf("\nCallback stack overpush\n"); -} - -void UncatchOpenCvErrs(void) // restore handler that was active before CatchOpenCvErrs -{ - if (istack_g > 0) - cv::redirectError(stack_g[--istack_g]); - else // should never get here (call to UncatchErr without matching CatchErr) - printf("\nCallback stack overpop\n"); -} - -void Err(const char* format, ...) // args like printf, throws an exception -{ - if (err_g[0]) - { - // Recursive, we are already processing an error. - // Ok, only first error will be reported via LastErr. - // This happens if Err is called to report a stasm_search_auto fail. - } - else - { - char s[SBIG]; // temporary needed because format or ... may be err_g - va_list args; - va_start(args, format); - VSPRINTF(s, format, args); - va_end(args); - STRCPY(err_g, s); - } - PossiblyEnterDebugger(); - throw "Err"; // does not matter what we throw, will be caught by global catch -} - -const char* LastErr(void) // return the last error message, called by stasm_lasterr -{ - if (!err_g[0]) // no error message? - { - // Should never get here unless someone calls LastErr or - // stasm_lasterr incorrectly (i.e. when there has been no error). - // - // TODO But in fact we do actually get here if cv::fastMalloc fails - // (within OpenCV) when allocating a small amount of memory (say 10 bytes - // large amounts are ok). It seems that when there is very little memory - // remaining, OpenCV does not handle exceptions properly (an exception - // is raised but the OpenCV error callback function is not called). - // To reproduce, put the following in your code: - // volatile void *p; while (1) p = cv::fastMalloc(10); - - STRCPY(err_g, "Illegal call to LastErr"); - } - return err_g; -} - -} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/src/eyedet.cpp b/3rdparty/stasm4.0.0/stasm/src/eyedet.cpp deleted file mode 100755 index 4ebf470..0000000 --- a/3rdparty/stasm4.0.0/stasm/src/eyedet.cpp +++ /dev/null @@ -1,720 +0,0 @@ -// eyedet.cpp: interface to OpenCV eye and mouth detectors -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#include "eyedet.h" -#include "err.h" - -namespace stasm -{ -//static cv::CascadeClassifier leye_det_g; // left eye detector -//static cv::CascadeClassifier reye_det_g; // right eye detector -//static cv::CascadeClassifier mouth_det_g; // mouth detector - -//----------------------------------------------------------------------------- - -// Return the region of the face we search for the left or right eye. -// Return rect of width=0 if eye must not be searched for (outer eyes in side views). -// We reduce false positives and save time by searching in only part of the face. -// The entire eye box must fall in this region, not just the center of the eye. -// The magic numbers below were found empirically to give good -// results in informal tests. They reduce the number of false positives -// in the forehead, eyebrows, nostrils, and mouth. - -static Rect EyeSearchRect( - EYAW eyaw, // in - const Rect& facerect, // in - const bool is_right_eye) // in: true for right eye, false for left eye -{ - Rect rect = facerect; - int width = facerect.width; - switch (eyaw) - { - case EYAW00: // frontal model - if (is_right_eye) - rect.x += width / 3; // don't search left third of face - rect.width -= width / 3; // or right third - rect.height = cvRound(.6 * facerect.height); // don't search lower part of face - break; - case EYAW_22: // left facing three-quarter model - if (is_right_eye) // inner eye - { - rect.x += cvRound(.4 * width); - rect.width = cvRound(.5 * width); - } - else // outer eye - { - rect.x += cvRound(.1 * width); - rect.width = cvRound(.5 * width); - } - rect.height = cvRound(.5 * facerect.height); - break; - case EYAW22: // right facing three-quarter model - if (is_right_eye) // outer eye - { - rect.x += cvRound(.4 * width); - rect.width = cvRound(.5 * width); - } - else // inner eye - { - rect.x += cvRound(.1 * width); - rect.width = cvRound(.5 * width); - } - rect.height = cvRound(.5 * facerect.height); - break; - case EYAW_45: // left facing three-quarter model - if (is_right_eye) // inner eye - { - rect.x += cvRound(.4 * width); - rect.width = cvRound(.5 * width); - rect.height = cvRound(.5 * facerect.height); - } - else // outer eye - rect.width = rect.height = 0; - break; - case EYAW45: // right facing three-quarter model - if (is_right_eye) // outer eye - rect.width = rect.height = 0; - else // inner eye - { - rect.x += cvRound(.1 * width); - rect.width = cvRound(.5 * width); - rect.height = cvRound(.5 * facerect.height); - } - break; - default: - Err("EyeSearchRect: Invalid eyaw %d", eyaw); - break; - } - rect.width = MAX(0, rect.width); - rect.height = MAX(0, rect.height); - return rect; -} - -// Get adjustment for position of mouth, based on model type and eye angle. - -static void MouthRectShift( - int& ixshift, // out - int& iyshift, // out - EYAW eyaw, // in - int facerect_width, // in - int facerect_height, // in - int ileft_best, // in - int iright_best, // in - const vec_Rect& leyes, // in - const vec_Rect& reyes) // in -{ - double xshift = 0, yshift = 0; - switch (eyaw) - { - case EYAW00: // frontal model - break; - case EYAW_45: // left facing three-quarter model - xshift -= .04 * facerect_width; - break; - case EYAW_22: // left facing three-quarter model - xshift -= .03 * facerect_width; - break; - case EYAW22: // right facing three-quarter model - xshift += .03 * facerect_width; - break; - case EYAW45: // right facing three-quarter model - xshift += .04 * facerect_width; - break; - default: - Err("GeMouthRect: Invalid eyaw %d", eyaw); - break; - } - - if (ileft_best != -1 && iright_best != -1) // got both eyes? - { - // get center of eye boxes to get eye angle - const int xleft = leyes[ileft_best].x + leyes[ileft_best].width/2; - const int yleft = leyes[ileft_best].y + leyes[ileft_best].height/2; - const int xright = reyes[iright_best].x + reyes[iright_best].width/2; - const int yright = reyes[iright_best].y + reyes[iright_best].height/2; - double theta = -atan2(double(yright - yleft), double(xright - xleft)); - // move the mouth in the direction of rotation - xshift += .3 * facerect_height * tan(theta); - // as the face rotates, the mouth moves up the page - yshift -= .1 * facerect_height * ABS(tan(theta)); - } - ixshift = cvRound(xshift); - iyshift = cvRound(yshift); -} - -static Rect MouthRect( // will search for mouth in this rectangle - const Rect& facerect, // in - EYAW eyaw, // in - int ileft_best, // in: index of best left eye, -1 if none - int iright_best, // in: index of best right eye, -1 if none - const vec_Rect& leyes, // in: left eyes found by eye detector - const vec_Rect& reyes) // in: right eyes found by eye detector -{ - Rect rect = facerect; - - int ixshift, iyshift; - MouthRectShift(ixshift, iyshift, - eyaw, facerect.width, facerect.height, - ileft_best, iright_best, leyes, reyes); - - rect.x += cvRound(.2 * facerect.width) + ixshift; - - rect.width = MAX(1, cvRound(.6 * facerect.width)); - - switch (eyaw) - { - case EYAW00: // frontal model - rect.y += cvRound(.64 * facerect.height); - break; - case EYAW_45: // left facing three-quarter model - rect.y += cvRound(.55 * facerect.height); - break; - case EYAW_22: // left facing three-quarter model - rect.y += cvRound(.55 * facerect.height); - break; - case EYAW22: // right facing three-quarter model - rect.y += cvRound(.55 * facerect.height); - break; - case EYAW45: // right facing three-quarter model - rect.y += cvRound(.55 * facerect.height); - break; - default: - Err("MouthRect: Invalid eyaw %d", eyaw); - break; - } - rect.y += iyshift; - rect.height = cvRound(.42 * facerect.height); - rect.width = MAX(0, rect.width); - rect.height = MAX(0, rect.height); - return rect; -} - -bool NeedMouth( - const vec_Mod& mods) // in: the ASM model(s) -{ - for (int imod = 0; imod < NSIZE(mods); imod++) - if (mods[imod]->Estart_() == ESTART_EYE_AND_MOUTH) - return true; - return false; -} - -// Possibly open OpenCV eye detectors and mouth detector. We say "possibly" because -// the eye and mouth detectors will actually only be opened if any model in mods -// actually needs them. That is determined by the model's estart field. - -void OpenEyeMouthDetectors( - const vec_Mod& mods, // in: the ASM models (used to see if we need eyes or mouth) - const char* datadir) // in -{ - (void) mods; - (void) datadir; - /* - static bool needeyes = true; // static for efficiency - // we need the eyes if the estart field of any model - // is ESTART_EYES or ESTART_EYE_AND_MOUTH - needeyes = false; - for (int imod = 0; imod < NSIZE(mods); imod++) - if (mods[imod]->Estart_() == ESTART_EYES || - mods[imod]->Estart_() == ESTART_EYE_AND_MOUTH) - needeyes = true; - if (needeyes) - { - // I tried all the eye XML files that come with OpenCV 2.1 and found that - // the files used below give the best results. The other eye XML files - // often failed to detect eyes, even with EYE_MIN_NEIGHBORS=1. - // - // In the XML filenames, "left" was verified empirically by me to respond - // to the image left (not the subject's left). I tested this on the on - // the MUCT and BioID sets: haarcascade_mcs_lefteye.xml finds more eyes - // on the viewer's left than it finds on the right (milbo Lusaka Dec 2011). - - //OpenDetector(leye_det_g, "haarcascade_mcs_lefteye.xml", datadir); - //OpenDetector(reye_det_g, "haarcascade_mcs_righteye.xml", datadir); - } - static bool needmouth = true; // static for efficiency - // we need the eyes if the estart field of any model is ESTART_EYE_AND_MOUTH - needmouth = false; - for (int imod = 0; imod < NSIZE(mods); imod++) - if (mods[imod]->Estart_() == ESTART_EYE_AND_MOUTH) - needmouth = true; - if (needmouth) - //OpenDetector(mouth_det_g, "haarcascade_mcs_mouth.xml", datadir);*/ -} - -static void DetectAllEyes( - vec_Rect& leyes, // out - vec_Rect& reyes, // out - const Image& img, // in - EYAW eyaw, // in - const Rect& facerect, // in - StasmCascadeClassifier cascade) -{ - // 1.2 is 40ms faster than 1.1 but finds slightly fewer eyes - static const double EYE_SCALE_FACTOR = 1.2; - static const int EYE_MIN_NEIGHBORS = 3; - static const int EYE_DETECTOR_FLAGS = 0; - - Rect leftrect(EyeSearchRect(eyaw, facerect, false)); - - if (leftrect.width) - leyes = Detect(img, &cascade.leftEyeCascade, &leftrect, - EYE_SCALE_FACTOR, EYE_MIN_NEIGHBORS, EYE_DETECTOR_FLAGS, - facerect.width / 10); - - Rect rightrect(EyeSearchRect(eyaw, facerect, true)); - - if (rightrect.width) - reyes = Detect(img, &cascade.rightEyeCascade, &rightrect, - EYE_SCALE_FACTOR, EYE_MIN_NEIGHBORS, EYE_DETECTOR_FLAGS, - facerect.width / 10); -} - -static void DetectAllMouths( - vec_Rect& mouths, // out - const Image& img, // in - EYAW eyaw, // in - const Rect& facerect, // in - int ileft_best, // in - int iright_best, // in - const vec_Rect& leyes, // in - const vec_Rect& reyes, // in - cv::CascadeClassifier cascade) -{ - static const double MOUTH_SCALE_FACTOR = 1.2; // less false pos with 1.2 than 1.1 - static const int MOUTH_MIN_NEIGHBORS = 5; // less false pos with 5 than 3 - static const int MOUTH_DETECTOR_FLAGS = 0; - - Rect mouth_rect(MouthRect(facerect, - eyaw, ileft_best, iright_best, leyes, reyes)); - - mouths = - Detect(img, &cascade, &mouth_rect, - MOUTH_SCALE_FACTOR, MOUTH_MIN_NEIGHBORS, MOUTH_DETECTOR_FLAGS, - facerect.width / 10); -} - -// Return the region of the face which the _center_ of an eye must be for -// the eye to be considered valid. This is a subset of the region we -// search for eyes (as returned by EyeSearchRect, which must be big -// enough to enclose the _entire_ eye box). - -static Rect EyeInnerRect( - EYAW eyaw, // in - const Rect& facerect) // in -{ - Rect rect = facerect; - switch (eyaw) - { - case EYAW00: // frontal model - rect.x += cvRound(.1 * facerect.width); - rect.width = cvRound(.8 * facerect.width); - rect.y += cvRound(.2 * facerect.height); - rect.height = cvRound(.28 * facerect.height); - break; - case EYAW_45: // left facing three-quarter model - rect.x += cvRound(.4 * facerect.width); - rect.width = cvRound(.5 * facerect.width); - rect.y += cvRound(.20 * facerect.height); - rect.height = cvRound(.25 * facerect.height); - break; - case EYAW_22: // left facing three-quarter model - rect.x += cvRound(.1 * facerect.width); - rect.width = cvRound(.8 * facerect.width); - rect.y += cvRound(.20 * facerect.height); - rect.height = cvRound(.25 * facerect.height); - break; - case EYAW22: // right facing three-quarter model - rect.x += cvRound(.1 * facerect.width); - rect.width = cvRound(.8 * facerect.width); - rect.y += cvRound(.20 * facerect.height); - rect.height = cvRound(.25 * facerect.height); - break; - case EYAW45: // right facing three-quarter model - rect.x += cvRound(.1 * facerect.width); - rect.width = cvRound(.5 * facerect.width); - rect.y += cvRound(.20 * facerect.height); - rect.height = cvRound(.25 * facerect.height); - break; - default: - Err("EyeInnerRect: Invalid eyaw %d", eyaw); - break; - } - rect.width = MAX(0, rect.width); - rect.height = MAX(0, rect.height); - return rect; -} - -// Is the horizontal overlap between the LeftEye and RightEye rectangles no -// more than 10% and is the horizontal distance between the edges of the -// eyes no more than the eye width. - -static bool IsEyeHorizOk( - const Rect& left, // in - const Rect& right) // in -{ - return left.x + left.width - right.x <= .1 * left.width && - right.x - (left.x + left.width) <= left.width; -} - -static bool VerticalOverlap( // do the two eyes overlap vertically? - const Rect& left, // in - const Rect& right) // in -{ - const int topleft = left.y + left.height; - const int topright = right.y + right.height; - - return (left.y >= right.y && left.y <= right.y + right.height) || - (topleft >= right.y && topleft <= right.y + right.height) || - (right.y >= left.y && right.y <= left.y + left.height) || - (topright >= left.y && topright <= left.y + left.height); -} - - -// Is the center of rect within the enclosing rect? - -static bool InRect( - const Rect& rect, // in - const Rect& enclosing) // in -{ - int x = rect.x + rect.width / 2; // center of rectangle - int y = rect.y + rect.height / 2; - - return x >= enclosing.x && - x <= enclosing.x + enclosing.width && - y >= enclosing.y && - y <= enclosing.y + enclosing.height; -} - -// Return the indices of the best left and right eye in the list of eyes. -// returned by the feature detectors. -// The heuristic in in detail (based on looking at images produced): -// Find the left and right eye that -// (i) are both in eye_inner_rect -// (ii) don't overlap horizontally by more than 10% -// (ii) overlap vertically. -// (iii) have the largest total width. -// (iv) if frontal have an intereye dist at least .25 * eye_inner_rect width - -static void SelectEyes( - int& ileft_best, // out: index into leyes, -1 if none - int& iright_best, // out: index into reyes, -1 if none - EYAW eyaw, // in - const vec_Rect& leyes, // in: left eyes found by detectMultiScale - const vec_Rect& reyes, // in: right eyes found by detectMultiScale - const Rect& eye_inner_rect) // in: center of the eye must be in this region -{ - ileft_best = iright_best = -1; // assume will return no eyes - int min_intereye = eyaw == EYAW00? cvRound(.25 * eye_inner_rect.width): 0; - int maxwidth = 0; // combined width of both eye boxes - int ileft, iright; - Rect left, right; - - // this part of the code will either select both eyes or no eyes - - for (ileft = 0; ileft < NSIZE(leyes); ileft++) - { - left = leyes[ileft]; - if (InRect(left, eye_inner_rect)) - { - for (iright = 0; iright < NSIZE(reyes); iright++) - { - right = reyes[iright]; - if (InRect(right, eye_inner_rect) && - IsEyeHorizOk(left, right) && - right.x - left.x >= min_intereye && - VerticalOverlap(left, right)) - { - int total_width = left.width + right.width; - if (total_width > maxwidth) - { - maxwidth = total_width; - ileft_best = ileft; - iright_best = iright; - } - } - } - } - } - if (ileft_best == -1 && iright_best == -1) - { - // The above loops failed to find a left and right eye in correct - // relationship to each other. So simply select largest left eye and - // largest right eye (but make sure that they are in the eye_inner_rect). - - int max_left_width = 0; - for (ileft = 0; ileft < NSIZE(leyes); ileft++) - { - left = leyes[ileft]; - if (InRect(left, eye_inner_rect)) - { - if (left.width > max_left_width) - { - max_left_width = left.width; - ileft_best = ileft; - } - } - } - int max_right_width = 0; - for (iright = 0; iright < NSIZE(reyes); iright++) - { - right = reyes[iright]; - if (InRect(right, eye_inner_rect)) - { - if (right.width > max_right_width) - { - max_right_width = right.width; - iright_best = iright; - } - } - } - // One final check (for vr08m03.bmp) -- if the two largest eyes overlap - // too much horizontally then discard the smaller eye. - - if (ileft_best != -1 && iright_best != -1) - { - left = leyes[ileft_best]; - right = reyes[iright_best]; - if (!IsEyeHorizOk(left, right) || right.x - left.x < min_intereye) - { - if (max_right_width > max_left_width) - ileft_best = -1; - else - iright_best = -1; - } - } - } -} - -// The values below are fairly conservative: for the ASM start shape, -// it's better to not find a mouth than to find an incorrect mouth. - -static Rect MouthInnerRect( - const Rect& facerect, // in - EYAW eyaw, // in - int ileft_best, // in: index of best left eye, -1 if none - int iright_best, // in: index of best right eye, -1 if none - const vec_Rect& leyes, // in: left eyes found by eye detector - const vec_Rect& reyes) // in: right eyes found by eye detector -{ - Rect rect = facerect; - double width = (eyaw == EYAW00? .12: .20) * facerect.width; - double height = .30 * facerect.height; - - int ixshift, iyshift; - MouthRectShift(ixshift, iyshift, - eyaw, facerect.width, facerect.height, - ileft_best, iright_best, leyes, reyes); - - rect.x += cvRound(.50 * (facerect.width - width)) + ixshift; - - rect.width = cvRound(width); - - switch (eyaw) - { - case EYAW00: // frontal model - rect.y += cvRound(.7 * facerect.height); - break; - case EYAW_45: // left facing three-quarter model - rect.y += cvRound(.65 * facerect.height); - break; - case EYAW_22: // left facing three-quarter model - rect.y += cvRound(.65 * facerect.height); - break; - case EYAW22: // right facing three-quarter model - rect.y += cvRound(.65 * facerect.height); - break; - case EYAW45: // right facing three-quarter model - rect.y += cvRound(.65 * facerect.height); - break; - default: - Err("MouthInnerRect: Invalid eyaw %d", eyaw); - break; - } - rect.y += iyshift; - rect.height = cvRound(height); - rect.width = MAX(0, rect.width); - rect.height = MAX(0, rect.height); - return rect; -} - -// The OpenCV mouth detector biases the position of the mouth downward (wrt the -// center of the mouth determined by manual landmarking). Correct that here. - -static int MouthVerticalShift( - const int ileft_best, // in - const int iright_best, // in - const int imouth_best, // in - const vec_Rect& leyes, // in - const vec_Rect& reyes, // in - const vec_Rect& mouths) // in -{ - double shift = 0; - if (ileft_best != -1 && iright_best != -1) // got both eyes? - { - CV_Assert(imouth_best != -1); - // get eye mouth distance: first get center of both eyes - const double xleft = leyes[ileft_best].x + leyes[ileft_best].width / 2; - const double yleft = leyes[ileft_best].y + leyes[ileft_best].height / 2; - const double xright = reyes[iright_best].x + reyes[iright_best].width / 2; - const double yright = reyes[iright_best].y + reyes[iright_best].height / 2; - const double eyemouth = - PointDist((xleft + xright) / 2,(yleft + yright) / 2, - mouths[imouth_best].x, mouths[imouth_best].y); - static const double MOUTH_VERT_ADJUST = -0.050; // neg to shift up - shift = MOUTH_VERT_ADJUST * eyemouth; - } - return cvRound(shift); -} - -// Return the indices of the best mouth in the list of mouths - -static void SelectMouth( - int& imouth_best, // out: index into mouths, -1 if none - int ileft_best, // in: index of best left eye, -1 if none - int iright_best, // in: index of best right eye, -1 if none - const vec_Rect& leyes, // in: left eyes found by eye detector - const vec_Rect& reyes, // in: right eyes found by eye detector - const vec_Rect& mouths, // in: left eyes found by eye detector - const Rect& mouth_inner_rect) // in: center of mouth must be in this region -{ - CV_Assert(!mouths.empty()); - imouth_best = -1; - - // if only one mouth, use it - if (NSIZE(mouths) == 1 && InRect(mouths[0], mouth_inner_rect)) - imouth_best = 0; - else - { - // More than one mouth: selected the lowest mouth to avoid - // "nostril mouths". But to avoid "chin mouths", the mouth - // must also meet the following criteria: - // i) it must be wider than the .7 * smallest eye width - // ii) it must be not much narrower than widest mouth. - - int minwidth = 0; - if (ileft_best != -1) - minwidth = leyes[ileft_best].width; - if (iright_best != -1) - minwidth = MIN(minwidth, reyes[iright_best].width); - minwidth = cvRound(.7 * minwidth); - - // find widest mouth - int maxwidth = minwidth; - for (int imouth = 0; imouth < NSIZE(mouths); imouth++) - { - const Rect mouth = mouths[imouth]; - if (InRect(mouth, mouth_inner_rect) && mouth.width > maxwidth) - { - maxwidth = mouth.width; - imouth_best = imouth; - } - } - // choose lowest mouth that is at least .84 the width of widest - minwidth = MAX(minwidth, cvRound(.84 * maxwidth)); - int ymin = int(-1e5); - for (int imouth = 0; imouth < NSIZE(mouths); imouth++) - { - const Rect mouth = mouths[imouth]; - if (InRect(mouth, mouth_inner_rect) && - mouth.y + mouth.height / 2 > ymin && - mouth.width > minwidth) - { - ymin = mouth.y + mouth.height / 2; - imouth_best = imouth; - } - } - } -} - -static void TweakMouthPosition( - vec_Rect& mouths, // io - const vec_Rect& leyes, // in - const vec_Rect& reyes, // in - const int ileft_best, // in - const int iright_best, // in - const int imouth_best, // in - const DetPar& detpar) // in - -{ - mouths[imouth_best].y += // move mouth up to counteract OpenCV mouth bias - MouthVerticalShift(ileft_best, iright_best, imouth_best, - leyes, reyes, mouths); - - // If face pose is strong three-quarter, move mouth - // out to counteract OpenCV mouth detector bias. - - if (detpar.eyaw == EYAW_45) - mouths[imouth_best].x -= cvRound(.06 * detpar.width); - else if (detpar.eyaw == EYAW45) - mouths[imouth_best].x += cvRound(.06 * detpar.width); -} - -static void RectToImgFrame( - double& x, // out: center of feature - double& y, // out: center of feature - const Rect& featrect) // in -{ - x = featrect.x + featrect.width / 2; - y = featrect.y + featrect.height / 2; -} - -void DetectEyesAndMouth( // use OpenCV detectors to find the eyes and mouth - DetPar& detpar, // io: eye and mouth fields updated, other fields untouched - const Image& img, // in: ROI around face (already rotated if necessary) - StasmCascadeClassifier cascade) -{ - Rect facerect(cvRound(detpar.x - detpar.width/2), - cvRound(detpar.y - detpar.height/2), - cvRound(detpar.width), - cvRound(detpar.height)); - - // possibly get the eyes - - detpar.lex = detpar.ley = INVALID; // mark eyes as unavailable - detpar.rex = detpar.rey = INVALID; - vec_Rect leyes, reyes; - int ileft_best = -1, iright_best = -1; // indices into leyes and reyes - - DetectAllEyes(leyes, reyes, img, detpar.eyaw, facerect, cascade); - - SelectEyes(ileft_best, iright_best, detpar.eyaw, leyes, reyes, EyeInnerRect(detpar.eyaw, facerect)); - - if (ileft_best >= 0) - RectToImgFrame(detpar.lex, detpar.ley, - leyes[ileft_best]); - - if (iright_best >= 0) - RectToImgFrame(detpar.rex, detpar.rey, - reyes[iright_best]); - - // possibly get the mouth - - detpar.mouthx = detpar.mouthy = INVALID; // mark mouth as unavailable - vec_Rect mouths; - DetectAllMouths(mouths, - img, detpar.eyaw, facerect, - ileft_best, iright_best, leyes, reyes, cascade.mouthCascade); - - if (!mouths.empty()) - { - int imouth_best = -1; - - SelectMouth(imouth_best, - ileft_best, iright_best, leyes, reyes, mouths, - MouthInnerRect(facerect, detpar.eyaw, - ileft_best, iright_best, leyes, reyes)); - - if (imouth_best >= 0) - { - TweakMouthPosition(mouths, - leyes, reyes, ileft_best, iright_best, - imouth_best, detpar); - - RectToImgFrame(detpar.mouthx, detpar.mouthy, - mouths[imouth_best]); - } - } -} - -} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/src/eyedist.cpp b/3rdparty/stasm4.0.0/stasm/src/eyedist.cpp deleted file mode 100755 index 750187e..0000000 --- a/3rdparty/stasm4.0.0/stasm/src/eyedist.cpp +++ /dev/null @@ -1,138 +0,0 @@ -// eyedist.cpp: calculate eye-mouth and inter-eye dist -// -// The functions in this file know how to deal with missing points. This -// matters during testing when we are comparing results to manually -// landmarked reference shapes. For example, a reference eye pupil may be -// concealed by the side of the nose. When calculating the inter-eye -// distance, if the pupil is missing we can instead use a point near the -// pupil. We must then adjust the point-to-point distance calculated using -// this surrogate point. We use the mean face shape to figure out the -// adjustment. The accuracy of the resulting estimated inter-eye distance will -// depend upon how similar the proportions of the face are to the mean face. -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#include "eyedist.h" -#include "shape17.h" -#include "landmarks.h" - -namespace stasm -{ -static int TabPoint( // return first used point in tab, -1 if none - const int* tab, // in - int ntab, // in - const Shape& shape) // in -{ - for (int i = 0; i < ntab; i++) - if (PointUsed(shape, tab[i])) - return tab[i]; // note return - - return -1; -} - -// TODO Use center of mouth rather than bottom of bottom lip -// --- but then would have to to retrain the ASM models. - -static double CanonicalEyeMouthDist( // return 0 if pupils and mouth not avail - const Shape& shape17) // in -{ - if (!PointUsed(shape17, L17_LPupil) || - !PointUsed(shape17, L17_RPupil) || - !PointUsed(shape17, L17_CBotOfBotLip)) - { - return 0; // note return - } - return PointDist( - MeanPoint(shape17, L17_LPupil, L17_RPupil, IX), // eye mid point - MeanPoint(shape17, L17_LPupil, L17_RPupil, IY), - shape17(L17_CBotOfBotLip, IX), // bot of bot lip - shape17(L17_CBotOfBotLip, IY)); -} - -double EyeMouthDist( // eye-mouth distance of a face shape - const Shape& shape) // in -{ - static const int eyes[] = // surrogates for pupil midpoint - { - L17_LPupil, - L17_RPupil, - L17_LEyeOuter, - L17_REyeOuter, - L17_LEyeInner, - L17_REyeInner, - L17_LEyebrowInner, - L17_REyebrowInner, - L17_LEyebrowOuter, - L17_REyebrowOuter - }; - static const int mouths[] = // surrogates for bot of bot lip - { - L17_CBotOfBotLip, - L17_CTopOfTopLip, - L17_LMouthCorner, - L17_RMouthCorner - }; - const Shape shape17(shape.rows == 17? shape: Shape17(shape)); - double eyemouth = CanonicalEyeMouthDist(shape17); - if (eyemouth == 0) // pupils and mouth not available? - { - const int eye = TabPoint(eyes, NELEMS(eyes), shape17); - const int mouth = TabPoint(mouths, NELEMS(mouths), shape17); - if (eye >= 0 && mouth >= 0) // actual or surrogate points available? - { - eyemouth = PointDist(shape17, eye, mouth) * - CanonicalEyeMouthDist(MEANSHAPE17) / - PointDist(MEANSHAPE17, eye, mouth); - } - } - if (eyemouth == 0) - { - // last resort, estimate eyemouth dist from shape extent - eyemouth = MAX(ShapeWidth(shape17), ShapeHeight(shape17)) * - PointDist(MEANSHAPE17, L17_LPupil, L17_CBotOfBotLip) / - MAX(ShapeWidth(MEANSHAPE17), ShapeHeight(MEANSHAPE17)); - } - CV_Assert(eyemouth > 1 && eyemouth < 1e5); // sanity check - return eyemouth; -} - -double InterEyeDist( // inter-pupil distance of a face shape - const Shape& shape) // in -{ - static const int leyes[] = // surrogates for left pupil - { - L17_LPupil, - L17_LEyeOuter, - L17_LEyeInner, - L17_LEyebrowInner, - L17_LEyebrowOuter - }; - static const int reyes[] = // surrogates for right pupil - { - L17_RPupil, - L17_REyeOuter, - L17_REyeInner, - L17_REyebrowInner, - L17_REyebrowOuter - }; - double eyedist = 0; - const Shape shape17(Shape17(shape)); - const int leye = TabPoint(leyes, NELEMS(leyes), shape17); - const int reye = TabPoint(reyes, NELEMS(reyes), shape17); - if (leye >= 0 && reye >= 0) // actual or surrogate points available? - { - eyedist = PointDist(shape17, leye, reye) * - PointDist(MEANSHAPE17, L17_LPupil, L17_RPupil) / - PointDist(MEANSHAPE17, leye, reye); - } - else // last resort, estimate inter-pupil distance from shape extent - { - eyedist = MAX(ShapeWidth(shape17), ShapeHeight(shape17)) * - PointDist(MEANSHAPE17, L17_LPupil, L17_RPupil) / - MAX(ShapeWidth(MEANSHAPE17), ShapeHeight(MEANSHAPE17)); - } - CV_Assert(eyedist > 1 && eyedist < 1e5); // sanity check - return eyedist; -} - -} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/src/facedet.cpp b/3rdparty/stasm4.0.0/stasm/src/facedet.cpp deleted file mode 100755 index 69b2dfc..0000000 --- a/3rdparty/stasm4.0.0/stasm/src/facedet.cpp +++ /dev/null @@ -1,221 +0,0 @@ -// facedet.cpp: find faces in images (frontal model version) -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#include "facedet.h" -#include "stasm_lib.h" - -namespace stasm -{ -typedef vector vec_DetPar; - -//static cv::CascadeClassifier facedet_g; // the face detector - -static double BORDER_FRAC = 0.1; // fraction of image width or height - // use 0.0 for no border - -//----------------------------------------------------------------------------- - -void FaceDet::OpenFaceDetector_( // called by stasm_init, init face det from XML file - const char* datadir, // in: directory of face detector files - void*) // in: unused (func signature compatibility) -{ - (void) datadir; - //OpenDetector(facedet_g, "haarcascade_frontalface_alt2.xml", datadir); -} - -// If a face is near the edge of the image, the OpenCV detectors tend to -// return a too-small face rectangle. By adding a border around the edge -// of the image we mitigate this problem. - -static Image EnborderImg( // return the image with a border - int& leftborder, // out: border size in pixels - int& topborder, // out: border size in pixels - const Image& img) // io -{ - Image bordered_img(img); - leftborder = cvRound(BORDER_FRAC * bordered_img.cols); - topborder = cvRound(BORDER_FRAC * bordered_img.rows); - copyMakeBorder(bordered_img, bordered_img, - topborder, topborder, leftborder, leftborder, - cv::BORDER_REPLICATE); - return bordered_img; -} - -void DetectFaces( // all face rects into detpars - vec_DetPar& detpars, // out - const Image& img, // in - int minwidth, - cv::CascadeClassifier cascade) // in: as percent of img width -{ - int leftborder = 0, topborder = 0; // border size in pixels - Image bordered_img(BORDER_FRAC == 0? - img: EnborderImg(leftborder, topborder, img)); - - // Detection results are very slightly better with equalization - // (tested on the MUCT images, which are not pre-equalized), and - // it's quick enough to equalize (roughly 10ms on a 1.6 GHz laptop). - - Image equalized_img; cv::equalizeHist(bordered_img, equalized_img); - - CV_Assert(minwidth >= 1 && minwidth <= 100); - - int minpix = MAX(100, cvRound(img.cols * minwidth / 100.)); - - // the params below are accurate but slow - static const double SCALE_FACTOR = 1.1; - static const int MIN_NEIGHBORS = 3; - static const int DETECTOR_FLAGS = 0; - - vec_Rect facerects = // all face rects in image - Detect(equalized_img, &cascade, NULL, - SCALE_FACTOR, MIN_NEIGHBORS, DETECTOR_FLAGS, minpix); - - // copy face rects into the detpars vector - - detpars.resize(NSIZE(facerects)); - for (int i = 0; i < NSIZE(facerects); i++) - { - Rect* facerect = &facerects[i]; - DetPar detpar; // detpar constructor sets all fields INVALID - // detpar.x and detpar.y is the center of the face rectangle - detpar.x = facerect->x + facerect->width / 2.; - detpar.y = facerect->y + facerect->height / 2.; - detpar.x -= leftborder; // discount the border we added earlier - detpar.y -= topborder; - detpar.width = double(facerect->width); - detpar.height = double(facerect->height); - detpar.yaw = 0; // assume face has no yaw in this version of Stasm - detpar.eyaw = EYAW00; - detpars[i] = detpar; - } -} - -// order by increasing distance from left marg, and dist from top marg within that - -static bool IncreasingLeftMargin( // compare predicate for std::sort - const DetPar& detpar1, // in - const DetPar& detpar2) // in -{ - return 1e5 * detpar2.x + detpar2.y > - 1e5 * detpar1.x + detpar1.y; -} - -// order by decreasing width, and dist from the left margin within that - -static bool DecreasingWidth( // compare predicate for std::sort - const DetPar& detpar1, // in - const DetPar& detpar2) // in -{ - return 1e5 * detpar2.width - detpar2.x < - 1e5 * detpar1.width - detpar1.x; - -} - -// Discard too big or small faces (this helps reduce the number of false positives) - -static void DiscardMissizedFaces( - vec_DetPar& detpars) // io -{ - // constants (TODO These have not yet been rigorously empirically adjusted.) - const double MIN_WIDTH = 1.33; // as fraction of median width - const double MAX_WIDTH = 1.33; // as fraction of median width - - if (NSIZE(detpars) >= 3) // need at least 3 faces - { - // sort the faces on their width (smallest first) so can get median width - sort(detpars.begin(), detpars.end(), DecreasingWidth); - const int median = cvRound(detpars[NSIZE(detpars) / 2].width); - const int minallowed = cvRound(median / MIN_WIDTH); - const int maxallowed = cvRound(MAX_WIDTH * median); - // keep only faces that are not too big or small - vec_DetPar all_detpars(detpars); - detpars.resize(0); - for (int iface = 0; iface < NSIZE(all_detpars); iface++) - { - DetPar* face = &all_detpars[iface]; - if (face->width >= minallowed && face->width <= maxallowed) - detpars.push_back(*face); - else if (trace_g || TRACE_IMAGES) - lprintf("[discard %d of %d]", iface, NSIZE(all_detpars)); - } - } -} - -static void TraceFaces( // write image showing detected face rects - const vec_DetPar& detpars, // in - const Image& img, // in - const char* filename) // in -{ - (void) detpars; - (void) img; - (void) filename; - -#if TRACE_IMAGES // will be 0 unless debugging (defined in stasm.h) - - CImage cimg; cvtColor(img, cimg, CV_GRAY2BGR); // color image - for (int iface = 0; iface < NSIZE(detpars); iface++) - { - const DetPar &detpar = detpars[iface]; - - rectangle(cimg, - cv::Point(cvRound(detpar.x - detpar.width/2), - cvRound(detpar.y - detpar.height/2)), - cv::Point(cvRound(detpar.x + detpar.width/2), - cvRound(detpar.y + detpar.height/2)), - CV_RGB(255,255,0), 2); - - ImgPrintf(cimg, // 10 * iface to minimize overplotting - detpar.x + 10 * iface, detpar.y, 0xffff00, 1, ssprintf("%d", iface)); - } - cv::imwrite(filename, cimg); - -#endif -} - -void FaceDet::DetectFaces_( // call once per image to find all the faces - const Image& img, // in: the image (grayscale) - const char*, // in: unused (match virt func signature) - bool multiface, // in: if false, want only the best face - int minwidth, // in: min face width as percentage of img width - void* user, // in: unused (match virt func signature) - cv::CascadeClassifier cascade) -{ - CV_Assert(user == NULL); - //CV_Assert(!facedet_g.empty()); // check that OpenFaceDetector_ was called - - DetectFaces(detpars_, img, minwidth, cascade); - TraceFaces(detpars_, img, "facedet_BeforeDiscardMissizedFaces.bmp"); - DiscardMissizedFaces(detpars_); - TraceFaces(detpars_, img, "facedet_AfterDiscardMissizedFaces.bmp"); - if (multiface) // order faces on increasing distance from left margin - { - sort(detpars_.begin(), detpars_.end(), IncreasingLeftMargin); - TraceFaces(detpars_, img, "facedet.bmp"); - } - else - { - // order faces on decreasing width, keep only the first (the largest face) - sort(detpars_.begin(), detpars_.end(), DecreasingWidth); - TraceFaces(detpars_, img, "facedet.bmp"); - if (NSIZE(detpars_)) - detpars_.resize(1); - } - iface_ = 0; // next invocation of NextFace_ must get first face -} - -// Get the (next) face from the image. -// If no face available, return detpar.x INVALID. -// Eyes, mouth, and rot in detpar always returned INVALID. - -const DetPar FaceDet::NextFace_(void) -{ - DetPar detpar; // detpar constructor sets all fields INVALID - - if (iface_ < NSIZE(detpars_)) - detpar = detpars_[iface_++]; - - return detpar; -} - -} // namespace stasm \ No newline at end of file diff --git a/3rdparty/stasm4.0.0/stasm/src/faceroi.cpp b/3rdparty/stasm4.0.0/stasm/src/faceroi.cpp deleted file mode 100755 index 115bc46..0000000 --- a/3rdparty/stasm4.0.0/stasm/src/faceroi.cpp +++ /dev/null @@ -1,213 +0,0 @@ -// faceroi.cpp: face ROI, and translation from image frame to the ROI -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#include "faceroi.h" -#include "landmarks.h" - -namespace stasm -{ -// Rotations less than 5 are treated as zero to minimize image preprocessing. - -static const double ROT_TREAT_AS_ZERO = 5; - -//----------------------------------------------------------------------------- - -// Return a rect which covers the face with enough space around it for an -// ASM search, but also ensuring that the rect is in the image boundaries. - -static Rect RoiRect( - const DetPar& detpar, // in - int nimgcols, // in - int nimgrows, // in - bool flip, // in: mirror the ROI - double botfrac, // in: distance from center to bottom marg - double leftfrac, // in: dist from center to left marg - double topfrac, // in - double rightfrac) // in -{ - int ixmin, ixmax; - if (flip) - { - ixmin = MAX(0, cvRound(detpar.x - rightfrac * detpar.width)); - ixmax = MIN(nimgcols, cvRound(detpar.x + leftfrac * detpar.width)); - } - else - { - ixmin = MAX(0, cvRound(detpar.x - leftfrac * detpar.width)); - ixmax = MIN(nimgcols, cvRound(detpar.x + rightfrac * detpar.width)); - } - const int iymin = MAX(0, cvRound(detpar.y - botfrac * detpar.height)); - const int iymax = MIN(nimgrows, cvRound(detpar.y + topfrac * detpar.height)); - - Rect roi; - - roi.x = ixmin; - roi.y = iymin; - roi.width = ixmax - ixmin; - roi.height = iymax - iymin; - - CV_Assert(roi.width > 0); - CV_Assert(roi.height > 0); - - return roi; -} - -static bool IsRoiEntireImg( - const Rect& roi, // in - int imgcols, // in - int imgrows) // in -{ - return roi.x == 0 && - roi.y == 0 && - roi.width == imgcols && - roi.height == imgrows; -} - -static DetPar ImgDetParToRoiFrame( - const DetPar& detpar, // in - const Rect& rect_roi) // in -{ - DetPar detpar_roi(detpar); - detpar_roi.x -= rect_roi.x; - detpar_roi.y -= rect_roi.y; - Shape eyemouth_shape(5, 2, 0.); - if (Valid(detpar_roi.lex)) - { - eyemouth_shape(0, IX) -= rect_roi.x; - eyemouth_shape(0, IY) -= rect_roi.y; - } - if (Valid(detpar_roi.rex)) - { - eyemouth_shape(1, IX) -= rect_roi.x; - eyemouth_shape(1, IY) -= rect_roi.y; - } - if (Valid(detpar_roi.mouthx)) - { - eyemouth_shape(2, IX) -= rect_roi.x; - eyemouth_shape(2, IY) -= rect_roi.y; - } - if (Valid(detpar.rot) && detpar.rot) - { - // rotate eyes and mouth - const MAT rotmat = getRotationMatrix2D(cv::Point2f(float(detpar_roi.x), - float(detpar_roi.y)), - -detpar.rot, 1.); - AlignShapeInPlace(eyemouth_shape, rotmat); - } - if (Valid(detpar.lex)) - { - detpar_roi.lex = eyemouth_shape(0, IX); - detpar_roi.ley = eyemouth_shape(0, IY); - } - if (Valid(detpar.rex)) - { - detpar_roi.rex = eyemouth_shape(1, IX); - detpar_roi.rey = eyemouth_shape(1, IY); - } - if (Valid(detpar.mouthx)) - { - detpar_roi.mouthx = eyemouth_shape(2, IX); - detpar_roi.mouthy = eyemouth_shape(2, IY); - } - return detpar_roi; -} - -Shape ImgShapeToRoiFrame( // return shape in ROI frame - const Shape& shape, // in: shape in image frame - const DetPar& detpar_roi, // in: detpar wrt the ROI - const DetPar& detpar) // in -{ - Shape outshape(shape.clone()); - for (int i = 0; i < outshape.rows; i++) - if (PointUsed(outshape, i)) - { - outshape(i, IX) -= detpar.x - detpar_roi.x; - outshape(i, IY) -= detpar.y - detpar_roi.y; - } - - if (Valid(detpar.rot) && detpar.rot) - { - const MAT rotmat = getRotationMatrix2D(cv::Point2f(float(detpar_roi.x), - float(detpar_roi.y)), - -detpar.rot, - 1.); - outshape = AlignShape(outshape, rotmat); - } - return outshape; -} - -// In StartShapeAndRoi we selected a ROI and possibly rotated that ROI. -// The search was done on that ROI. Now de-adjust the search results -// to undo the effects of searching on the ROI, not on the actual image. - -Shape RoiShapeToImgFrame( // return shape in image frame - const Shape& shape, // in: shape in roi frame - const Image& face_roi, // in - const DetPar& detpar_roi, // in: detpar wrt the ROI - const DetPar& detpar) // in: detpar wrt the image -{ - Shape outshape(shape.clone()); - if (IsLeftFacing(detpar.eyaw)) - outshape = FlipShape(outshape, face_roi.cols); - if (Valid(detpar.rot) && detpar.rot) - { - const MAT rotmat = getRotationMatrix2D(cv::Point2f(float(detpar_roi.x), - float(detpar_roi.y)), - detpar.rot, 1.); - outshape = AlignShape(outshape, rotmat); - } - for (int i = 0; i < outshape.rows; i++) - if (PointUsed(outshape, i)) - { - outshape(i, IX) += detpar.x - detpar_roi.x; - outshape(i, IY) += detpar.y - detpar_roi.y; - } - return outshape; -} - -void PossiblySetRotToZero( // this is to avoid rotating the image unnecessarily - double& rot) // io -{ - if (rot >= -ROT_TREAT_AS_ZERO && rot <= ROT_TREAT_AS_ZERO) - rot = 0; -} - -void FaceRoiAndDetPar( // get ROI around the face, rotate if necessary - Image& face_roi, // out - DetPar& detpar_roi, // out: detpar wrt the ROI - const Image& img, // in: original image - const DetPar& detpar, // in: wrt img frame, only x,y,w,h,rot used - bool flip, // in: mirror the ROI? - double botfrac, // in: default ROI_FRAC - double leftfrac, // in: dist from center to left margin - double topfrac, // in - double rightfrac) // in -{ - Rect rect_roi = RoiRect(detpar, img.cols, img.rows, flip, - botfrac, leftfrac, topfrac, rightfrac); - - detpar_roi = ImgDetParToRoiFrame(detpar, rect_roi); - - // following "if"s are for efficiency (avoid rotation etc. when possible). - - if (detpar.rot == 0 && IsRoiEntireImg(rect_roi, img.cols, img.rows)) - face_roi = img; - - else if (!Valid(detpar.rot) || detpar.rot == 0) - face_roi = Image(img, rect_roi); - - else // rotate image so face is upright, results go into face_roi - warpAffine(Image(img, rect_roi), face_roi, - getRotationMatrix2D(cv::Point2f(float(detpar_roi.x), - float(detpar_roi.y)), - -detpar.rot, 1.), - cv::Size(face_roi.cols, face_roi.rows), - cv::INTER_AREA, cv::BORDER_REPLICATE); - - // TODO For efficiency could combine this flip with above rot img when possible? - if (flip) - FlipImgInPlace(face_roi); -} - -} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/src/hat.cpp b/3rdparty/stasm4.0.0/stasm/src/hat.cpp deleted file mode 100755 index 3bf80cc..0000000 --- a/3rdparty/stasm4.0.0/stasm/src/hat.cpp +++ /dev/null @@ -1,434 +0,0 @@ -// hat.cpp: Histogram Array Transform descriptors -// -// Rob Hess' opensift implementation was used a reference: -// http://blogs.oregonstate.edu/hess/code/sift -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#include "hat.h" - -namespace stasm -{ -static const int GRIDHEIGHT = 4; // 4 x 5 grid of histograms in descriptor -static const int GRIDWIDTH = 5; - -static const int BINS_PER_HIST = 8; // 8 gives a 45 degree range per bin - -static const double WINDOW_SIGMA = .5; // gaussian window as frac of patch width - // .5 implies patch border downweight is .368 - -static const double FINAL_SCALE = 10; // arb but 10 is good for %g printing of descriptors - -// Get gradient magnitude and orientation of pixels in given img. -// We use a [1,-1] convolution mask rather than [1,0,-1] because it gives as good -// Stasm results and doesn't "waste" pixels on the left and top image boundary. -// Before scaling by bins_per_degree, orientations are from 0 to 359.99... -// degrees, with 0 being due east, and anticlockwise increasing. - -static void InitGradMagAndOrientMats( - MAT& magmat, // out: grad mag mat - MAT& orientmat, // out: grad ori mat - const Image& img) // in: ROI scaled to current pyramid level -{ - const int nrows = img.rows, nrows1 = img.rows-1; - const int ncols = img.cols, ncols1 = img.cols-1; - const double bins_per_degree = BINS_PER_HIST / 360.; - - magmat.create(nrows, ncols); - orientmat.create(nrows, ncols); - - for (int y = 0; y < nrows1; y++) - { - const byte* const buf = (byte*)(img.data) + y * ncols; - const byte* const buf_x1 = (byte*)(img.data) + y * ncols + 1; - const byte* const buf_y1 = (byte*)(img.data) + (y+1) * ncols; - - double* const magbuf = Buf(magmat) + y * ncols; - double* const orientbuf = Buf(orientmat) + y * ncols; - - for (int x = 0; x < ncols1; x++) - { - const byte pixel = buf[x]; - const double xdelta = buf_x1[x] - pixel; - const double ydelta = buf_y1[x] - pixel; - - magbuf[x] = sqrt(SQ(xdelta) + SQ(ydelta)); - - double orient = - RadsToDegrees(atan2(ydelta, xdelta)); // -180 <= orient < 180 - if (orient < 0) - orient += 360; // 0 <= orient < 360 - orientbuf[x] = orient * bins_per_degree; // 0 <= orient < BINS_PER_HIST - } - } - // fill bottom and right edges - magmat.row(nrows1) = 0; - magmat.col(ncols1) = 0; - orientmat.row(nrows1) = 0; - orientmat.col(ncols1) = 0; -} - -// Init the indices which map a patch row,col to the corresponding -// histogram grid row,col. The mapping depends only on the image -// patchwidth and the histogram GRIDHEIGHT and WIDTH. -// -// The first pixel in the image patch maps to histogram grid x coord -0.5. -// Therefore after TrilinearAccumulate, the pixel will be equally smeared -// across histogram bin -1 and histogram bin 0. The histogram row indices -// for this pixel are irow=-1 row_frac=0.5. - -static inline void InitIndices( - vec_int& row_indices, // out - vec_double& row_fracs, // out - vec_int& col_indices, // out - vec_double& col_fracs, // out - vec_double& pixelweights, // out - const int patchwidth) // in: in pixels -{ - CV_Assert(patchwidth % 2 == 1); // patchwidth must be odd in this implementation - - const int npix = SQ(patchwidth); // number of pixels in image patch - - row_indices.resize(npix); - row_fracs.resize(npix); - col_indices.resize(npix); - col_fracs.resize(npix); - pixelweights.resize(npix); - - const int halfpatchwidth = (patchwidth-1) / 2; - - const double grid_rows_per_img_row = GRIDHEIGHT / (patchwidth-1.); - const double row_offset = GRIDHEIGHT / 2. - .5; // see header comment - - const double grid_cols_per_img_col = GRIDWIDTH / (patchwidth-1.); - const double col_offset = GRIDWIDTH / 2. - .5; - - // downweight at border of patch is exp(-1 / (2 * WINDOW_SIGMA)) - const double weight = -1 / (WINDOW_SIGMA * GRIDHEIGHT * GRIDWIDTH ); - - int ipix = 0; - - for (double patchrow = -halfpatchwidth; patchrow <= halfpatchwidth; patchrow++) - { - const double signed_row = patchrow * grid_rows_per_img_row; - const double row = signed_row + row_offset; - const int irow = int(floor(row)); - const double row_frac = row - irow; - - CV_DbgAssert(row >= -.5 && row <= GRIDHEIGHT - .5); // same applies to col below - - for (double patchcol = -halfpatchwidth; patchcol <= halfpatchwidth; patchcol++) - { - row_indices[ipix] = irow; - row_fracs[ipix] = row_frac; - - const double signed_col = patchcol * grid_cols_per_img_col; - const double col = signed_col + col_offset; - const int icol = int(floor(col)); - - col_indices[ipix] = icol; - col_fracs[ipix] = col - icol; - - pixelweights[ipix] = // TODO this weights col and row offsets equally - exp(weight * (SQ(signed_row) + SQ(signed_col))); - - ipix++; - } - } -} - -// Init the data that doesn't change unless the image, patch width, or -// GRIDHEIGHT or WIDTH changes (i.e. for Stasm this must be called -// once per pyramid lev). - -void Hat::Init_( - const Image& img, // in: image scaled to current pyramid level - const int patchwidth) // in: patch will be patchwidth x patchwidth pixels -{ - patchwidth_ = patchwidth; - - InitGradMagAndOrientMats(magmat_, orientmat_, img); - - InitIndices(row_indices_, row_fracs_, col_indices_, col_fracs_, pixelweights_, - patchwidth_); -} - -// Calculate the image patch gradient mags and orients. -// Note that the mag for a pixel out of the image boundaries is set -// to 0 and thus contributes nothing later in TrilinearAccumulate. - -static void GetMagsAndOrients_GeneralCase( - vec_double& mags, // out - vec_double& orients, // out - const int ix, // in: x coord of center of patch - const int iy, // in: y coord of center of patch - const int patchwidth, // in - const MAT& magmat, // in - const MAT& orientmat, // in - const vec_double& pixelweights) // in -{ - const int halfpatchwidth = (patchwidth-1) / 2; - int ipix = 0; - for (int x = iy - halfpatchwidth; x <= iy + halfpatchwidth; x++) - { - const double* const magbuf = Buf(magmat) + x * magmat.cols; - const double* const orientbuf = Buf(orientmat) + x * orientmat.cols; - - for (int y = ix - halfpatchwidth; y <= ix + halfpatchwidth; y++) - { - if (x < 0 || x >= magmat.rows || y < 0 || y >= magmat.cols) - { - mags[ipix] = 0; // off image - orients[ipix] = 0; - } - else // in image - { - mags[ipix] = pixelweights[ipix] * magbuf[y]; - orients[ipix] = orientbuf[y]; - } - ipix++; - } - } - CV_DbgAssert(ipix == NSIZE(mags)); -} - -// Calculate the image patch gradient mags and orients for -// an image patch that is entirely in the image boundaries. - -static inline void GetMagsAndOrients_AllInImg( - vec_double& mags, // out - vec_double& orients, // out - const int ix, // in: x coord of center of patch - const int iy, // in: y coord of center of patch - const int patchwidth, // in - const MAT& magmat, // in - const MAT& orientmat, // in - const vec_double& pixelweights) // in -{ - const int halfpatchwidth = (patchwidth-1) / 2; - int ipix = 0; - for (int x = iy - halfpatchwidth; x <= iy + halfpatchwidth; x++) - { - const double* const magbuf = Buf(magmat) + x * magmat.cols; - const double* const orientbuf = Buf(orientmat) + x * orientmat.cols; - - for (int y = ix - halfpatchwidth; y <= ix + halfpatchwidth; y++) - { - mags[ipix] = pixelweights[ipix] * magbuf[y]; - orients[ipix] = orientbuf[y]; - ipix++; - } - } - CV_DbgAssert(ipix == NSIZE(mags)); -} - -void GetMagsAndOrients( // get mags and orients for patch at ix,iy - vec_double& mags, // out - vec_double& orients, // out - const int ix, // in: x coord of center of patch (may be off image) - const int iy, // in: y coord of center of patch (may be off image) - const int patchwidth, // in: in pixels - const MAT& magmat, // in - const MAT& orientmat, // in - const vec_double& pixelweights) // in -{ - CV_Assert(patchwidth % 2 == 1); // patchwidth must be odd in this implementation - const int npix = SQ(patchwidth); // number of pixels in image patch - const int halfpatchwidth = (patchwidth-1) / 2; - - mags.resize(npix); - orients.resize(npix); - - if (ix - halfpatchwidth < 0 || ix + halfpatchwidth >= magmat.cols || - iy - halfpatchwidth < 0 || iy + halfpatchwidth >= magmat.rows) - { - // Part or all of the patch is out the image area. - - GetMagsAndOrients_GeneralCase(mags, orients, - ix, iy, patchwidth, magmat, orientmat, pixelweights); - } - else - { - // Patch is entirely in the image area. The following function returns - // results identical to GetMagsAndOrients_GeneralCase, but is faster - // because it doesn't have to worry about the edges of the image. - - GetMagsAndOrients_AllInImg(mags, orients, - ix, iy, patchwidth, magmat, orientmat, pixelweights); - } -} - -// Apportion the gradient magnitude of a pixel across 8 orientation bins. -// "Accumulate" is in the func name because we "+=" the interpolated values. -// This routine needs to be fast. - -static inline void TrilinearAccumulate( - double& b000, double& b001, // io: histogram bins - double& b010, double& b011, // io - double& b100, double& b101, // io - double& b110, double& b111, // io - const double mag, // in: the mag that gets apportioned - const double rowfrac, // in - const double colfrac, // in - const double orientfrac) // in -{ - const double - a1 = mag * rowfrac, a0 = mag - a1, - - a11 = a1 * colfrac, a10 = a1 - a11, - a01 = a0 * colfrac, a00 = a0 - a01, - - a111 = a11 * orientfrac, - a101 = a10 * orientfrac, - a011 = a01 * orientfrac, - a001 = a00 * orientfrac; - - b000 += a00 - a001; b001 += a001; - b010 += a01 - a011; b011 += a011; - b100 += a10 - a101; b101 += a101; - b110 += a11 - a111; b111 += a111; -} - -// The dimension of histbins is 1+GRIDHEIGHT+1 by 1+GRIDWIDTH+1 by BINS_PER_HIST+1. -// The extra bins are for fast trilinear accumulation (boundary checks unneeded). -// The final bin in each histogram is for degrees greater than 360, needed as -// degrees less than but near 360 get smeared out by trilinear interpolation. - -static inline int HistIndex(int row, int col, int iorient) // index into histbins -{ - return ((row+1) * (1+GRIDWIDTH+1) + (col+1)) * (BINS_PER_HIST+1) + iorient; -} - -void GetHistograms( // get all histogram bins - vec_double& histbins, // out - const int patchwidth, // in: in pixels - const vec_double& mags, // in - const vec_double& orients, // in - const vec_int& row_indices, // in - const vec_double& row_fracs, // in - const vec_int& col_indices, // in - const vec_double& col_fracs) // in -{ - const int npix = SQ(patchwidth); // number of pixels in image patch - - const int nhistbins = - (1 + GRIDHEIGHT + 1) * (1 + GRIDWIDTH + 1) * (BINS_PER_HIST + 1); - - // resize and clear (the fill is needed if the size of histbins - // doesn't change, because in that case resize does nothing) - histbins.resize(nhistbins); - fill(histbins.begin(), histbins.end(), 0.); - - for (int ipix = 0; ipix < npix; ipix++) - { - const double orient = orients[ipix]; - const int iorient = int(floor(orient)); - CV_DbgAssert(iorient >= 0 && iorient < BINS_PER_HIST); - - const int ibin = - HistIndex(row_indices[ipix], col_indices[ipix], iorient); - - double* const p = &histbins[ibin]; - - TrilinearAccumulate( // apportion grad mag across eight orientation bins - p[0], // ThisOrient - p[1], // NextOrient - p[BINS_PER_HIST + 1], // NextCol ThisOrient - p[BINS_PER_HIST + 2], // NextCol NextOrient - p[(GRIDWIDTH+2) * (BINS_PER_HIST+1)], // NextRow ThisOrient - p[(GRIDWIDTH+2) * (BINS_PER_HIST+1) + 1], // NextRow NextOrient - p[(GRIDWIDTH+3) * (BINS_PER_HIST+1)], // NextRow NextCol ThisOrient - p[(GRIDWIDTH+3) * (BINS_PER_HIST+1) + 1], // NextRow NextCol NextOrient - mags[ipix], // the mag that gets apportioned - row_fracs[ipix], // rowfrac - col_fracs[ipix], // colfrac - orient - iorient); // orientfrac - } -} - -static void WrapHistograms( - vec_double& histbins) -{ - for (int row = 0; row < GRIDHEIGHT; row++) - for (int col = 0; col < GRIDWIDTH; col++) - { - const int ibin = HistIndex(row, col, 0); - histbins[ibin] += histbins[ibin + BINS_PER_HIST]; // 360 wraps to 0 - } -} - -static void CopyHistsToDesc( // copy histograms to descriptor, skipping pad bins - VEC& desc, // out - const vec_double& histbins) // in -{ - for (int row = 0; row < GRIDHEIGHT; row++) - for (int col = 0; col < GRIDWIDTH; col++) - memcpy(Buf(desc) + - (row * GRIDWIDTH + col) * BINS_PER_HIST, - &histbins[HistIndex(row, col, 0)], - BINS_PER_HIST * sizeof(histbins[0])); -} - -static void NormalizeDesc( // take sqrt of elems and divide by L2 norm - VEC& desc) // io -{ - double* const data = Buf(desc); - for (int i = 0; i < NSIZE(desc); i++) - data[i] = sqrt(data[i]); // sqrt reduces effect of outliers - const double norm = cv::norm(desc); // L2 norm - if (!IsZero(norm)) - { - const double scale = FINAL_SCALE / norm; - for (int i = 0; i < NSIZE(desc); i++) - data[i] *= scale; - } -} - -// Hat::Init_ must be called before calling this function. -// -// A HAT descriptor is a vector of doubles of length -// GRIDHEIGHT * GRIDWIDTH * BINS_PER_HIST (currently 4 * 5 * 8 = 160). -// -// The descriptor is a vector of doubles (instead of say bytes) primarily -// so the HatFit function we apply later is fast (because byte-to-double -// type conversions are unneeded when applying the formula). -// -// Note also that a trial implementation that used floats instead of -// doubles (and with a float form of HatFit) was slower. - -VEC Hat::Desc_( // return HAT descriptor, Init_ must be called first - const double x, // in: x coord of center of patch (may be off image) - const double y) // in: y coord of center of patch (may be off image) - const -{ - CV_Assert(magmat_.rows); // verify that Hat::Init_ was called - -#if _OPENMP // can't be static because multiple instances - vec_double mags, orients; - vec_double histbins; -#else // static faster since size rarely changes - vec_double mags, orients; // the image patch grad mags and orientations - vec_double histbins; // the histograms -#endif - - GetMagsAndOrients(mags, orients, - cvRound(x), cvRound(y), patchwidth_, - magmat_, orientmat_, pixelweights_); - - GetHistograms(histbins, - patchwidth_, mags, orients, - row_indices_, row_fracs_, col_indices_, col_fracs_); - - WrapHistograms(histbins); // wrap 360 degrees back to 0 - - VEC desc(GRIDHEIGHT * GRIDWIDTH * BINS_PER_HIST, 1); // the HAT descriptor - - CopyHistsToDesc(desc, - histbins); - - NormalizeDesc(desc); - - return desc; -} - -} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/src/hatdesc.cpp b/3rdparty/stasm4.0.0/stasm/src/hatdesc.cpp deleted file mode 100755 index f232458..0000000 --- a/3rdparty/stasm4.0.0/stasm/src/hatdesc.cpp +++ /dev/null @@ -1,146 +0,0 @@ -// hatdesc.cpp: Model for HAT descriptors. -// This does a grid search using the descriptors defined hat.cpp. -// It also caches the descriptors for fast reuse. -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#include "hatdesc.h" - -#define CACHE 1 // define to 0 if your compiler doesn't support hash_map - // Stasm runs faster if 1 - -namespace stasm -{ -// hat_g is global because we initialize the HAT internal data -// (grads and orients etc.) once for the entire pyramid level. -// Initialized in InitHatLevData. - -//static const Hat &hat_g; - -//----------------------------------------------------------------------------- - -#if CACHE - -// For speed, we cache the HAT descriptors, so we have the descriptor at -// hand if we revisit an xy position in the image which is very common in ASMs. -// (Note: an implementation with cache_g as a vector> was slower.) - -//static hash_map cache_g; // cached descriptors -//static const bool TRACE_CACHE = 0; // for checking cache hit rate -//static int ncalls_g, nhits_g; // only used if TRACE_CACHE - -static unsigned Key(int x, int y) // pack x,y into 32 bits for cache key -{ - return ((y & 0xffff) << 16) | (x & 0xffff); -} - -static double GetHatFit( // args same as non CACHE version, see below - int x, // in - int y, // in - const HatFit hatfit, // in - const Hat &hat, - StasmHash &hash) -{ - const double* descbuf = NULL; // the HAT descriptor - - const unsigned key(Key(x, y)); - - QHash::const_iterator it = hash.find(key); - if (it != hash.end()) { - descbuf = Buf(it.value()); - } else { - const VEC desc(hat.Desc_(x, y)); - hash[key] = desc; // remember descriptor for possible re-use - descbuf = Buf(desc); - } - return hatfit(descbuf); -} - -#else // not CACHE - -// Get the HAT descriptor at the given ipoint and x,y coords, and return -// how well the descriptor matches the model. High fit means good match. - -static double GetHatFit( - int x, // in: image x coord (may be off image) - int y, // in: image y coord (may be off image) - const HatFit hatfit) // in: func to estimate descriptor match -{ - return hatfit(Buf(hat_g.Desc_(x, y))); -} - -#endif // not CACHE - -static int round2(double x) // return closest int to x that is divisible by 2 -{ - return 2 * cvRound(x / 2); -} - -static int PatchWidth( // patchwidth at the given pyramid level - int ilev) // in: pyramid level (0 is full size) -{ - return HAT_PATCH_WIDTH + round2(ilev * HAT_PATCH_WIDTH_ADJ); -} - -Hat InitHatLevData( // init the global HAT data needed for this pyr level - const Image& img, // in - int ilev) // in -{ - Hat hat; - - if (ilev <= HAT_START_LEV) // we use HATs only at upper pyr levs - { - hat.Init_(img, PatchWidth(ilev)); - } - - return hat; -} - -// Note 1: The image is not passed directly to this function. Instead this -// function accesses the image gradient magnitude and orientation stored in -// fields of the global variable hat_g and previously initialized by the -// call to InitHatLevData. -// -// Note 2: If OpenMP is enabled, multiple instances of this function will be -// called concurrently (each call will have a different value of x and y). Thus -// this function and its callees do not modify any data that is not on the stack. - -void HatDescSearch( // search in a grid around the current landmark - double& x, // io: (in: old position of landmark, out: new position) - double& y, // io: - const HatFit hatfit, // in: func to estimate descriptor match - const Hat &hat, - StasmHash &hash) -{ - // If HAT_SEARCH_RESOL is 2, force x,y positions to be divisible - // by 2 to increase cache hit rate. This increases the mean hit rate - // from about 67% to 88% and barely affects landmark accuracy. - int ix = HAT_SEARCH_RESOL == 2? round2(x): cvRound(x); - int iy = HAT_SEARCH_RESOL == 2? round2(y): cvRound(y); - - double fit_best = -FLT_MAX; - - int xoffset_best = 0, yoffset_best = 0; // in pixels - - for (int yoffset = -HAT_MAX_OFFSET; - yoffset <= HAT_MAX_OFFSET; - yoffset += HAT_SEARCH_RESOL) - { - for (int xoffset = -HAT_MAX_OFFSET; - xoffset <= HAT_MAX_OFFSET; - xoffset += HAT_SEARCH_RESOL) - { - const double fit = GetHatFit(ix + xoffset, iy + yoffset, hatfit, hat, hash); - if (fit > fit_best) - { - fit_best = fit; - xoffset_best = xoffset; - yoffset_best = yoffset; - } - } - } - x += xoffset_best; - y += yoffset_best; -} - -} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/src/initasm.cpp b/3rdparty/stasm4.0.0/stasm/src/initasm.cpp deleted file mode 100755 index be98c28..0000000 --- a/3rdparty/stasm4.0.0/stasm/src/initasm.cpp +++ /dev/null @@ -1,35 +0,0 @@ -// initasm.cpp: initialize the ASM model -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#include "initasm.h" -#include "yaw00.h" - -namespace stasm -{ -void InitMods( // initialize ASM model - vec_Mod& mods, // out: ASM model (only one model in this version of Stasm) - const char* datadir) // in: directory of face detector files -{ - if (mods.empty()) // models not yet initialized? - { - mods.resize(1); // 1 model - - static const Mod mod_yaw00( - EYAW00, - ESTART_EYES, // ignore detected mouth for best startshape on frontal faces - datadir, - yaw00_meanshape, - yaw00_eigvals, - yaw00_eigvecs, - 20, // neigs (value from empirical testing) - 1.5, // bmax (value from empirical testing) - SHAPEHACKS_DEFAULT | SHAPEHACKS_SHIFT_TEMPLE_OUT, - YAW00_DESCMODS, // defined in yaw00.h - NELEMS(YAW00_DESCMODS)); - - mods[0] = &mod_yaw00; - } -} - -} // namespace stasm \ No newline at end of file diff --git a/3rdparty/stasm4.0.0/stasm/src/landmarks.cpp b/3rdparty/stasm4.0.0/stasm/src/landmarks.cpp deleted file mode 100755 index e885cf2..0000000 --- a/3rdparty/stasm4.0.0/stasm/src/landmarks.cpp +++ /dev/null @@ -1,82 +0,0 @@ -// landmarks.cpp: code for manipulating landmarks -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#include "landmarks.h" - -namespace stasm -{ -double MeanPoint( - const Shape& shape, // in - int ipoint1, // in - int ipoint2, // in - int ix) // in: IX or IY -{ - return (shape(ipoint1, ix) + shape(ipoint2, ix)) / 2; -} - -void PrevAndNextLandmarks( - int& prev, // out - int& next, // out - int ipoint, // in - const Shape& shape) // in -{ - const int npoints = shape.rows; - - const LANDMARK_INFO* const info = LANDMARK_INFO_TAB; - - prev = info[ipoint].prev; - if (prev < 0) // not specified in table? - prev = (ipoint + npoints - 1) % npoints; - - next = info[ipoint].next; - if (next < 0) - next = (ipoint + 1) % npoints; - - CV_Assert(prev >= 0); - CV_Assert(next >= 0); - CV_Assert(prev != next); - CV_Assert(PointUsed(shape, prev)); - CV_Assert(PointUsed(shape, next)); -} - -static void FlipPoint( - Shape& shape, // io - const Shape& oldshape, // in - int inew, // in - int iold, // in - int imgwidth) // in -{ - if (!PointUsed(oldshape, iold)) - shape(inew, IX) = shape(inew, IY) = 0; - else - { - shape(inew, IX) = imgwidth - oldshape(iold, IX) - 1; - shape(inew, IY) = oldshape(iold, IY); - if (!PointUsed(shape, inew)) // falsely marked unused after conversion? - shape(inew, IX) = XJITTER; // adjust so not marked as unused - } -} - -// Flip shape horizontally. -// Needed so we can use right facing models for left facing faces. - -Shape FlipShape( - const Shape& shape, // in - int imgwidth) // in -{ - const LANDMARK_INFO* info = LANDMARK_INFO_TAB; - Shape outshape(shape.rows, 2); - for (int i = 0; i < shape.rows; i++) - { - int partner = info[i].partner; - - if (partner == -1) // e.g. tip of nose - partner = i; - - FlipPoint(outshape, shape, partner, i, imgwidth); - } - return outshape; -} - -} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/src/misc.cpp b/3rdparty/stasm4.0.0/stasm/src/misc.cpp deleted file mode 100755 index bc03fff..0000000 --- a/3rdparty/stasm4.0.0/stasm/src/misc.cpp +++ /dev/null @@ -1,838 +0,0 @@ -// misc.h: miscellaneous definitions for Stasm -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#include "misc.h" -#include "err.h" -#include "print.h" -#include "asm.h" -#include - -namespace stasm -{ -//----------------------------------------------------------------------------- - -// Like sprintf but returns the string and so doesn't require a buffer arg. - -const char* ssprintf(const char* format, ...) -{ - static char s[SBIG]; - va_list args; - va_start(args, format); - VSPRINTF(s, format, args); - va_end(args); - return s; -} - -// Like strncpy but always zero terminate, issue error if can't. - -void strncpy_( - char* dest, // out - const char* src, // in - int n) // in: sizeof(dest) -{ - const char* const start = src; // used only for possible error message - while ((*dest++ = *src++)) // assignment is intentional - if (--n <= 0) - Err("Error in strncpy_ %-80s", start); -} - -void ToLowerCase( - char* s) // io: convert to lower case -{ - for (; *s; s++) - *s = char(tolower(*s)); -} - -void ConvertBackslashesToForwardAndStripFinalSlash(char* s) -{ - int i; - - for (i = 0; s[i]; i++) // convert \ to / - if (s[i] == '\\') - s[i] = '/'; - - if (i > 0 && s[i-1] == '/') // remove final / if any - s[i-1] = 0; -} - -// Get basename and extension e.g. given "C:/bin/cat.exe" returns "cat.exe". - -const char* BaseExt(const char* path) -{ - static char s[SLEN]; - char base[SLEN], ext[SLEN]; - splitpath(path, NULL, NULL, base, ext); - sprintf(s, "%s%s", base, ext); - return s; -} - -// Get basename e.g. given "C:/bin/cat.exe" returns "cat". - -const char* Base(const char* path) -{ - static char s[SLEN]; - splitpath(path, NULL, NULL, s, NULL); - return s; -} - -// Our own version of splitpath so we don't need the WIN32 code under Unix. -// This has not been tested for every possible combination but seems to work. - -void splitpath( - const char* path, // in - char* drive, // out: can be NULL - char* dir, // out: can be NULL - char* base, // out: can be NULL - char* ext) // out: can be NULL, includes dot -{ - CV_Assert(path && STRNLEN(path, _MAX_PATH) < _MAX_PATH); - - if (drive) - { - *drive = 0; - if (*path && *(path+1) == ':') // has drive prefix? - { - *drive++ = *path++; // copy to drive - *drive++ = *path++; - *drive = 0; - } - } - const char* end; - for (end = path; *end; end++) // end of path - ; - - const char* start; - for (start = end; start != path; ) // start of extension - { - start--; - if (*start == '/' || *start == '\\') - break; - if (*start == '.') - { - end = start; - break; - } - } - for (start = end; start != path; ) // start of directory - { - start--; - if (*start == '/' || *start == '\\') - { - start++; - break; - } - } - const char* p; - if (dir) // copy directory to dir - { - for (p = path; p != start; ) - *dir++ = *p++; - // remove trailing / if any, but keep if just a single / or double // - if (p > path+1 && *(dir-2) != *(dir-1) && - (*(dir-1) == '/' || *(dir-1) == '\\')) - { - dir--; - } - *dir = 0; - } - if (base) // copy basename to base - { - for (p = start; p != end; ) - *base++ = *p++; - *base = 0; - } - if (ext) // copy extension to ext - { - for (p = end; *p; ) - *ext++ = *p++; - *ext = 0; - } - // Check for buffer overflow. TODO Do this properly (i.e. in loops above). - CV_Assert(drive == NULL || STRNLEN(drive, _MAX_DRIVE) < _MAX_DRIVE); - CV_Assert(dir == NULL || STRNLEN(dir, _MAX_DIR) < _MAX_DIR); - CV_Assert(base == NULL || STRNLEN(base, _MAX_FNAME) < _MAX_FNAME); - CV_Assert(ext == NULL || STRNLEN(ext, _MAX_EXT) < _MAX_EXT); -} - -// Our own version of makepath so we don't need the WIN32 code under Unix. -// This has not been tested for every possible combination but seems to work. - -void makepath( - char* path, // out - const char* drive, // in: can be NULL, will append ":" if necessary - const char* dir, // in: can be NULL, will append "/" if necessary - const char* base, // in: can be NULL, - const char* ext) // in: can be NULL, will prepend "." if necessary -{ - CV_Assert(path); - - char* p = path; - if (drive && *drive) - { - *p++ = *drive; - *p++ = ':'; - } - if (dir && *dir) - { - strncpy_(p, dir, _MAX_DIR); - p += STRNLEN(dir, _MAX_DIR); - if (*(p-1) != '/' && *(p-1) != '\\') - *p++ = '/'; - } - if (base && *base) - { - strncpy_(p, base, _MAX_FNAME); - p += STRNLEN(base, _MAX_FNAME); - } - if (ext && *ext) - { - if (*ext != '.') - *p++ = '.'; - strncpy_(p, ext, _MAX_EXT); - p += STRNLEN(ext, _MAX_EXT); - } - *p = 0; -} - -void LogShape( // print mat to log file, this is mostly for debugging and testing - const MAT& mat, // in - const char* matname) // in -{ - // print in shapefile format - logprintf("\n00000000 %s\n{ %d %d\n", Base(matname), mat.rows, mat.cols); - for (int row = 0; row < mat.rows; row++) - { - for (int col = 0; col < mat.cols; col++) - { - if (int(mat(row, col)) == mat(row, col)) - logprintf("%.0f", mat(row, col)); - else - logprintf("%.1f", mat(row, col)); - if (col < mat.cols-1) - logprintf(" "); - } - logprintf("\n"); - } - logprintf("}\n"); -} - -// This redimensions a matrix and preserves as much of the old data as possible. -// If new matrix is bigger than or same size as the old matrix then all the data -// will be preserved. Unused entries in the new matrix are cleared i.e. set to 0. -// The returned matrix may or may not use the same buffer as mat. - -MAT DimKeep(const MAT& mat, int nrows, int ncols) -{ - if (mat.rows == nrows && mat.cols == ncols) // no change needed? - return mat; - if (mat.rows * mat.cols == nrows * ncols) // same number of elements? - { - CV_Assert(mat.isContinuous()); - MAT newmat(mat); - newmat.rows = nrows; - newmat.cols = ncols; - newmat.step = ncols * sizeof(newmat(0)); - return newmat; - } - // copy as much of the data as will fit in the new matrix - MAT newmat(nrows, ncols, 0.); - int minrows = MIN(nrows, mat.rows); - for (int i = 0; i < minrows; i++) - { - const double* const rowbuf = mat.ptr(i); - double* const rowbuf1 = newmat.ptr(i); - for (int j = 0; j < ncols; j++) - rowbuf1[j] = rowbuf[j]; - } - return newmat; -} - -const MAT ArrayAsMat( // create a MAT from a C array of doubles - int nrows, // in - int ncols, // in - const double* data) // in: array of doubles -{ - // cast is necessary because OpenCV mat constructors - // don't know how to use (they should?) - - return cv::Mat(nrows, ncols, CV_64FC1, const_cast(data)); -} - -void RoundMat( // round mat entries to integers - MAT& mat) // io -{ - for (int i = 0; i < mat.rows; i++) - { - double* const rowbuf = mat.ptr(i); - for (int j = 0; j < mat.cols; j++) - rowbuf[j] = cvRound(rowbuf[j]); - } -} - -// Force pinned landmarks in shape to their pinned position. -// This also returns the mean distance from the output shape to pinnedshape. - -double ForcePinnedPoints( - Shape& shape, // io - const Shape pinnedshape) // in: points that are not pinned have coords 0,0 -{ - CV_Assert(pinnedshape.rows >= shape.rows); - double dist = 0; - int npinned = 0; - for (int i = 0; i < shape.rows; i++) - { - if (PointUsed(pinnedshape, i)) // pinned landmark? - { - npinned++; - dist += PointDist(shape, pinnedshape, i); - shape(i, IX) = pinnedshape(i, IX); - shape(i, IY) = pinnedshape(i, IY); - } - } - CV_Assert(npinned > 0); - return dist / npinned; -} - -void ShapeMinMax( - double& xmin, // out - double& xmax, // out - double& ymin, // out - double& ymax, // out - const Shape& shape) // in -{ - xmin = FLT_MAX, xmax = -FLT_MAX, ymin = FLT_MAX, ymax = -FLT_MAX; - for (int i = 0; i < shape.rows; i++) - { - double x = shape(i, IX), y = shape(i, IY); - if (PointUsed(x, y)) - { - if (x < xmin) xmin = x; - if (x > xmax) xmax = x; - if (y < ymin) ymin = y; - if (y > ymax) ymax = y; - } - } - CV_Assert(xmin < FLT_MAX); - CV_Assert(xmin < xmax); // need at least two discrete points in shape -} - -double ShapeWidth(const Shape& shape) // width of shape in pixels -{ - CV_Assert(shape.rows > 1); - double xmin, xmax, ymin, ymax; - ShapeMinMax(xmin, xmax, ymin, ymax, shape); - return ABS(xmax - xmin); -} - -double ShapeHeight(const Shape& shape) // height of shape in pixels -{ - double xmin, xmax, ymin, ymax; - ShapeMinMax(xmin, xmax, ymin, ymax, shape); - return ABS(ymax - ymin); -} - -// Jitter points at 0,0 if any. We do this because if both x and y coords -// of a point are zero, Stasm takes that to mean that the point is unused. -// So prevent that when we know all points in the shape are actually used. - -Shape JitterPointsAt00( - const Shape& shape) // in -{ - Shape outshape(shape.clone()); - - for (int i = 0; i < outshape.rows; i++) - if (!PointUsed(outshape, i)) - outshape(i, IX) = XJITTER; - - return outshape; -} - -// Multiply a two element xy vector by a 3 x 3 matrix. -// Used for homogeneous transforms. mat can be 3x2 or 2x2 (since the -// bottom row of a homogeneous mat is constant and is ignored here). - -static void Mat33TimesVec( - VEC& v, // io: two element vector - const MAT& mat) // in: three column matrix -{ - CV_DbgAssert(v.rows == 1 && v.cols == 2); - CV_DbgAssert(mat.rows >= 2 && mat.cols == 3); - CV_Assert(mat.isContinuous()); - - const double* const data = Buf(mat); - - const double x = v(0, 0); - const double y = v(0, 1); - - v(0, 0) = data[0] * x + data[1] * y + data[2]; - v(0, 1) = data[3] * x + data[4] * y + data[5]; -} - -// Transform shape by multiplying it by a homogeneous alignment_mat. -// alignment_mat can be 3x2 or 2x2 (since the bottom row of a homogeneous mat -// is constant and is ignored here). - -void AlignShapeInPlace( - Shape& shape, // io - const MAT& alignment_mat) // in -{ - CV_Assert(shape.cols == 2); - CV_Assert(alignment_mat.cols == 3 || alignment_mat.rows == 2); - - for (int i = 0; i < shape.rows; i++) - if (PointUsed(shape, i)) - { - VEC row(shape.row(i)); - Mat33TimesVec(row, alignment_mat); - // if transformed point happens to be at 0,0, jitter it - if (!PointUsed(shape, i)) - shape(i, IX) = XJITTER; - } -} - -void AlignShapeInPlace( - Shape& shape, // io - double x0, double y0, double z0, // in - double x1, double y1, double z1) // in -{ - double transform_data[] = - { - x0, y0, z0, - x1, y1, z1 - }; - AlignShapeInPlace(shape, MAT(2, 3, transform_data)); -} - -Shape AlignShape( // return transformed shape - const Shape& shape, // in - const MAT& alignment_mat) // in -{ - Shape outshape(shape.clone()); - AlignShapeInPlace(outshape, alignment_mat); - return outshape; -} - -Shape AlignShape( // return transformed shape - const Shape& shape, // in - double x0, double y0, double z0, // in - double x1, double y1, double z1) // in -{ - Shape outshape(shape.clone()); - AlignShapeInPlace(outshape, x0, y0, z0, x1, y1, z1); - return outshape; -} - -// Solves Ax=b by LU decomposition. Returns col vec x. -// The b argument must be a vector (row or column, it doesn't matter). -// If mat is singular this will fail. - -static const VEC Solve(MAT& mat, VEC& b) // note that mat and b get destroyed -{ - CV_Assert(mat.isContinuous() && b.isContinuous()); - - if (!cv::LU(Buf(mat), mat.cols * sizeof(mat(0)), mat.rows, - Buf(b), sizeof(mat(0)), 1)) - Err("Solve: LU failed"); - - return b; -} - -// Return the similarity transform to align shape to to anchorshape. -// This returns the transformation matrix i.e. the pose. -// -// This is a similarity transform (translation, scaling, and rotation -// but no shearing). The transform matrix has the form -// -// a -b tx -// b a ty -// 0 0 1 -// -// See algorithm C.3 in Appendix C of CootesTaylor 2004 -// www.isbe.man.ac.uk/~bim/Mods/app_models.pdf. - -const MAT AlignmentMat( - const Shape& shape, // in - const Shape& anchorshape, // in - const double* weights) // in: if NULL (default) all points equally weighted -{ - double W = 0; - double sx = 0, sy = 0, sx1 = 0, sy1 = 0; - double sxx_syy = 0, sxx1_syy1 = 0, sxy1_syx1 = 0; - - for (int i = 0; i < shape.rows; i++) - { - const double x = shape(i, IX); - const double y = shape(i, IY); - const double x1 = anchorshape(i, IX); - const double y1 = anchorshape(i, IY); - if (PointUsed(x, y) && PointUsed(x1, y1)) - { - const double w = (weights? weights[i]: 1.); - W += w; - sx += w * x; - sy += w * y; - sx1 += w * x1; - sy1 += w * y1; - sxy1_syx1 += w * (x * y1 - y * x1); - sxx1_syy1 += w * (x * x1 + y * y1); - sxx_syy += w * (x * x + y * y); - } - } - MAT soln_data = (MAT(4,4) << sxx_syy, 0, sx, sy, - 0, sxx_syy, -sy, sx, - sx, -sy, W, 0, - sy, sx, 0, W ); - - VEC vec_data = (MAT(4,1) << sxx1_syy1, - sxy1_syx1, - sx1, - sy1 ); - - const VEC soln(Solve(soln_data, vec_data)); - - return (MAT(3, 3) << soln(0), -soln(1), soln(2), // a -b tx - soln(1), soln(0), soln(3), // b a ty - 0, 0, 1 ); // 0 0 1 -} - -static CvScalar ToCvColor(unsigned color) -{ - CvScalar cvcolor; - cvcolor.val[0] = (color & 0xff); - cvcolor.val[1] = ((color >> 8) & 0xff); - cvcolor.val[2] = ((color >> 16) & 0xff); - cvcolor.val[3] = 0; - return cvcolor; -} - -void DrawShape( // draw a shape on an image - CImage& img, // io - const Shape& shape, // in - unsigned color, // in: rrggbb, default is 0xff0000 (red) - bool dots, // in: true for dots only, default is false - int linewidth) // in: default -1 means automatic -{ - const double width = ShapeWidth(shape); - if (linewidth <= 0) - linewidth = width > 700? 3: width > 300? 2: 1; - CvScalar cvcolor(ToCvColor(color)); - int i = 0, j=0; - do // use do and not for loop because some points may be unused - { - while (i < shape.rows && !PointUsed(shape, i)) // skip unused points - i++; - if (i < shape.rows) - { - if (dots) - { - const int ix = cvRound(shape(i, IX)), iy = cvRound(shape(i, IY)); - if (ix >= 0 && ix < img.cols && iy >= 0 && iy < img.rows) - { - img(iy, ix)[0] = (color >> 0) & 0xff; - img(iy, ix)[1] = (color >> 8) & 0xff; - img(iy, ix)[2] = (color >> 16) & 0xff; - } - } - else // lines - { - j = i+1; - while (j < shape.rows && !PointUsed(shape, j)) - j++; - if (j < shape.rows) - cv::line(img, - cv::Point(cvRound(shape(i, IX)), cvRound(shape(i, IY))), - cv::Point(cvRound(shape(j, IX)), cvRound(shape(j, IY))), - cvcolor, linewidth); - } - } - i++; - } - while (i != shape.rows && j != shape.rows); -} - -void ImgPrintf( // printf on image - CImage& img, // io - double x, // in - double y, // in - unsigned color, // in: rrggbb e.g. 0xff0000 is red - double size, // in: relative font size, 1 is standard size - const char* format, // in - ...) // in -{ - char s[SBIG]; // format format into s - va_list args; - va_start(args, format); - VSPRINTF(s, format, args); - va_end(args); - - CV_Assert(size > 0); - double fontsize = size * MIN(img.cols, img.rows) / 1000.; - if (fontsize < .3) // smaller than about .3 is not legible - fontsize = .3; - - // make the letters thick enough to be seen on high pixel images, - // but not too thick to be illegible. The code below sorta works. - - int thickness = MAX(1, cvRound(img.rows > 1000? 2 * fontsize: fontsize)); - - putText(img, s, cv::Point(cvRound(x), cvRound(y)), - CV_FONT_HERSHEY_SIMPLEX, fontsize, ToCvColor(color), thickness); -} - -static byte RgbToGray( // CIE conversion to gray using integer arithmetic - const RGBV rgb) -{ - return byte((2990 * rgb[2] + 5870 * rgb[1] + 1140 * rgb[0] + 5000) / 10000); -} - -void DesaturateImg( // for apps and debugging, unneeded for ASM - CImage& img) // io: convert to gray (but still an RGB image) -{ - for (int i = 0; i < img.rows; i++) - { - RGBV* const rowbuf = img.ptr(i); - for (int j = 0; j < img.cols; j++) - { - byte * const p = (byte *)(rowbuf + j); - p[0] = p[1] = p[2] = RgbToGray(rowbuf[j]); - } - } -} - -void ForceRectIntoImg( // force rectangle into image - int& ix, // io - int& iy, // io - int& ncols, // io - int& nrows, // io - const Image& img) // in -{ - ix = Clamp(ix, 0, img.cols-1); - - int ix1 = ix + ncols; - if (ix1 > img.cols) - ix1 = img.cols; - - ncols = ix1 - ix; - - CV_Assert(ix >= 0 && ix < img.cols); - CV_Assert(ix + ncols >= 0 && ix + ncols <= img.cols); - - iy = Clamp(iy, 0, img.rows-1); - - int iy1 = iy + nrows; - if (iy1 > img.rows) - iy1 = img.rows; - - nrows = iy1 - iy; - - CV_Assert(iy >= 0 && iy < img.rows); - CV_Assert(iy + nrows >= 0 && iy + nrows <= img.rows); -} - -void ForceRectIntoImg( // force rectangle into image - Rect& rect, // io - const Image& img) // in -{ - ForceRectIntoImg(rect.x, rect.y, rect.width, rect.height, img); -} - -Image FlipImg(const Image& img) // in: flip image horizontally (mirror image) -{ - Image workimg(img.isContinuous()? img: img.clone()); // need continuous image - const int width = workimg.cols; - const int height = workimg.rows; - Image outimg(height, width); - for (int iy = 0; iy < height; iy++) - { - int width1 = iy * width; - int ix1 = width; - for (int ix = 0; ix < width; ix++) - outimg.data[ix + width1] = workimg.data[--ix1 + width1]; - } - return outimg; -} - -void FlipImgInPlace(Image& img) // io: flip image horizontally (mirror image) -{ - img = FlipImg(img); -} - -void OpenDetector( // open face or feature detector from its XML file - cv::CascadeClassifier& cascade, // out - const char* filename, // in: basename.ext of cascade - const char* datadir) // in -{ - if (cascade.empty()) // not yet opened? - { - char dir[SLEN]; STRCPY(dir, datadir); - ConvertBackslashesToForwardAndStripFinalSlash(dir); - - char path[SLEN]; sprintf(path, "%s/%s", dir, filename); - - logprintf("Open %s\n", path); - - if (!cascade.load(path)) - Err("Cannot load %s", path); - } -} - -// convert the x and y coords in feats from the search ROI to the image frame - -static void DiscountSearchRegion( - vec_Rect& feats, // io - Rect& searchrect) // in -{ - for (int ifeat = 0; ifeat < NSIZE(feats); ifeat++) - { - feats[ifeat].x += searchrect.x; - feats[ifeat].y += searchrect.y; - } -} - -vec_Rect Detect( // detect faces or facial features - const Image& img, // in - cv::CascadeClassifier* cascade, // in - const Rect* searchrect, // in: search in this region, can be NULL - double scale_factor, // in - int min_neighbors, // in - int flags, // in - int minwidth_pixels) // in: reduces false positives -{ - CV_Assert(!cascade->empty()); - - Rect searchrect1; searchrect1.width = 0; - if (searchrect) - { - searchrect1 = *searchrect; - ForceRectIntoImg(searchrect1, img); - if (searchrect1.height == 0) - searchrect1.width = 0; - } - Image roi(img, - searchrect1.width? searchrect1: Rect(0, 0, img.cols, img.rows)); - - // TODO If we don't allocate feats now we get a crash on mem release later. - - const int MAX_NFACES_IN_IMG = int(1e4); // arb, but big - vec_Rect feats(MAX_NFACES_IN_IMG); - - // Note: This call to detectMultiScale causes the Peak Working Set - // to jump to 160 MBytes (multiface2.jpg) versus less than 50 MBytes - // for the rest of Stasm (Feb 2013). - - cascade->detectMultiScale(roi, feats, scale_factor, min_neighbors, flags, - cvSize(minwidth_pixels, minwidth_pixels)); - - if (!feats.empty() && searchrect1.width) - DiscountSearchRegion(feats, searchrect1); - - return feats; -} - -bool IsLeftFacing(EYAW eyaw) // true if eyaw is for a left facing face -{ - return int(eyaw) <= int(EYAW_22); -} - -int EyawAsModIndex( // note: returns a negative index for left facing yaws - EYAW eyaw, // in - const vec_Mod& mods) // in: a vector of models, one for each yaw range -{ - int imod = 0; - if (NSIZE(mods) > 1) - { - switch (eyaw) - { - case EYAW00: imod = 0; break; - case EYAW_45: imod = -2; break; - case EYAW_22: imod = -1; break; - case EYAW22: imod = 1; break; - case EYAW45: imod = 2; break; - default: Err("EyawAsModIndex: bad eyaw %d", eyaw); break; - } - } - CV_Assert(ABS(imod) < NSIZE(mods)); - return imod; -} - -EYAW DegreesAsEyaw( // this determines what model is best for a given yaw - double yaw, // in: yaw in degrees, negative if left facing - int nmods) // in -{ - (void) yaw; - - if (nmods == 1) - return EYAW00; - -#if MOD_3 || MOD_A || MOD_A_EMU // experimental versions - if (yaw < -EYAW_TO_USE_DET45) - return EYAW_45; - - else if (yaw < -EYAW_TO_USE_DET22) - return EYAW_22; - - else if (yaw <= EYAW_TO_USE_DET22) - return EYAW00; - - else if (yaw <= EYAW_TO_USE_DET45) - return EYAW22; - - return EYAW45; -#else - CV_Assert(0); - return EYAW00; // keep compiler quiet -#endif -} - -const char* EyawAsString(EYAW eyaw) // utility for debugging/tracing -{ - switch (int(eyaw)) - { - case EYAW00: return "YAW00"; - case EYAW_45: return "YAW_45"; - case EYAW_22: return "YAW_22"; - case EYAW22: return "YAW22"; - case EYAW45: return "YAW45"; - case INVALID: return "YAW_Inv"; - default: Err("YawAsString: Invalid eyaw %d", eyaw); break; - } - return NULL; // prevent compiler warning -} - -DetPar FlipDetPar( // mirror image of detpar - const DetPar& detpar, // in - int imgwidth) // in -{ - DetPar detpar_new(detpar); - - detpar_new.x = imgwidth - detpar.x; - detpar_new.y = detpar.y; - detpar_new.width = detpar.width; - detpar_new.height = detpar.height; - const bool valid_leye = Valid(detpar.lex); - const bool valid_reye = Valid(detpar.rex); - - detpar_new.lex = detpar_new.ley = - detpar_new.rex = detpar_new.rey = - detpar_new.mouthx = detpar_new.mouthy = INVALID; - - if (valid_leye) - { - detpar_new.rex = imgwidth - detpar.lex; - detpar_new.rey = detpar.ley; - } - if (valid_reye) - { - detpar_new.lex = imgwidth - detpar.rex; - detpar_new.ley = detpar.rey; - } - if (Valid(detpar.mouthx)) - { - detpar_new.mouthx = imgwidth - detpar.mouthx; - detpar_new.mouthy = detpar.mouthy; - } - return detpar_new; -} - -} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/src/pinstart.cpp b/3rdparty/stasm4.0.0/stasm/src/pinstart.cpp deleted file mode 100755 index b93c389..0000000 --- a/3rdparty/stasm4.0.0/stasm/src/pinstart.cpp +++ /dev/null @@ -1,307 +0,0 @@ -// pinstart.cpp: utilities for creating a start shape from manually pinned points -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#include "pinstart.h" -#include "stasm_landmarks.h" -#include "faceroi.h" -#include "err.h" -#include "landmarks.h" -#include "print.h" - -namespace stasm -{ -// The following model was machine generated by running -// 5pointpose.R on the training shapes and their reflections. - -static double EstYawFrom5PointShape(const double* x) // x has 10 elements -{ - return 34.342 - - 7.0267 * MAX(0, x[3] - -0.34708) - + 10.739 * MAX(0, -0.34708 - x[3]) - + 116.29 * MAX(0, x[4] - 0.21454) - - 159.56 * MAX(0, 0.21454 - x[4]) - + 12.513 * MAX(0, x[7] - 0.3384) - + 7.2764 * MAX(0, 0.3384 - x[7]) - + 260.14 * MAX(0, x[3] - -0.34708) * MAX(0, x[5] - -0.010838) - - 160.64 * MAX(0, x[3] - -0.34708) * MAX(0, -0.010838 - x[5]) - - 284.88 * MAX(0, -0.34708 - x[3]) * MAX(0, x[5] - -0.055581) - + 654.54 * MAX(0, -0.34708 - x[3]) * MAX(0, -0.055581 - x[5]) - ; -} - -static void RotShapeInPlace( - Shape& shape, // io - double rot, // in: in-plane rotation angle in degrees, pos is anticlock - double x, // in: rotation origin - double y) // in -{ - CV_Assert(rot >= -360 && rot <= 360); // sanity check, 360 is arb - - const MAT rotmat = - getRotationMatrix2D(cv::Point2f(float(x), float(y)), rot, 1.); - - AlignShapeInPlace(shape, rotmat); -} - -static double SumElems( // return the sum of the elemens in mat - const MAT& mat) // in -{ - return cv::sum(mat)[0]; -} - -// If shape does not have 5 points, return rot and yaw of 0. -// Else assume that the following five points are present, in this order: -// 0 LEyeOuter -// 1 REyeOuter -// 2 CNoseTip -// 3 LMouthCorner -// 4 RMouthCorner - -static void EstRotAndYawFrom5PointShape( - double& rot, // out - double& yaw, // out - const Shape shape) // in -{ - if (shape.rows != 5 || // basic sanity checks - shape(0, IX) > shape(1, IX) || // eye corners - shape(3, IX) > shape(4, IX)) // mouth corners - { - rot = yaw = 0; - return; - } - Shape workshape(shape.clone()); // local copy we can modify - - // Derotate shape using eye angle as estimate of in-plane rotation. - // We rotate about the shape centroid. - // TODO EstYawFrom5PointShape was trained on shapes without this - // derotation, so must retrain the model for best results. - - rot = RadsToDegrees(-atan2(workshape(1, IY) - workshape(0, IY), - workshape(1, IX) - workshape(0, IX))); - - PossiblySetRotToZero(rot); // treat small Rots as zero Rots - - if (rot) - RotShapeInPlace(workshape, - -rot, - SumElems(workshape.col(IX)) / 5, - SumElems(workshape.col(IY)) / 5); - - // mean-center x and y - MAT X(workshape.col(IX)); X -= SumElems(X) / 5; - MAT Y(workshape.col(IY)); Y -= SumElems(Y) / 5; - - // normalize so shape size is 1 - double norm = 0; - for (int i = 0; i < 5; i++) - norm += SQ(X(i)) + SQ(Y(i)); - workshape /= sqrt(norm); - - yaw = EstYawFrom5PointShape(Buf(workshape)); -} - -static Shape PinMeanShape( // align mean shape to the pinned points - const Shape& pinned, // in: at least two of these points must be set - const Shape& meanshape) // in -{ - CV_Assert(pinned.rows == meanshape.rows); - - int ipoint, nused = 0; // number of points used in pinned - for (ipoint = 0; ipoint < meanshape.rows; ipoint++) - if (PointUsed(pinned, ipoint)) - nused++; - - if (nused < 2) - Err("Need at least two pinned landmarks"); - - // Create an anchor shape (the pinned landmarks) and an alignment shape (the - // points in meanshape that correspond to those pinned landmarks). Do that by - // copying the used points in pinned to pinned_used, and the corresponding - // points in meanshape to meanused. - - Shape pinned_used(nused, 2), mean_used(nused, 2); - int i = 0; - for (ipoint = 0; ipoint < meanshape.rows; ipoint++) - if (PointUsed(pinned, ipoint)) - { - pinned_used(i, IX) = pinned(ipoint, IX); - pinned_used(i, IY) = pinned(ipoint, IY); - mean_used(i, IX) = meanshape(ipoint, IX); - mean_used(i, IY) = meanshape(ipoint, IY); - i++; - } - CV_Assert(i == nused); - - // transform meanshape to pose generated by aligning mean_used to pinned_used - Shape TransformedShape( - AlignShape(meanshape, AlignmentMat(mean_used, pinned_used))); - - return JitterPointsAt00(TransformedShape); -} - -static bool HaveCanonical5Points( - const Shape& pinned) // in: pinned landmarks -{ - return PointUsed(pinned, L_LEyeOuter) && - PointUsed(pinned, L_REyeOuter) && - PointUsed(pinned, L_CNoseTip) && - PointUsed(pinned, L_LMouthCorner) && - PointUsed(pinned, L_RMouthCorner); -} - -static Shape As5PointShape( // return a 5 point shape - const Shape& pinned, // in: pinned landmarks, canonical 5 points are best - const Shape& meanshape) // in: used only if pinned landmarks are not canonical -{ - CV_Assert(pinned.rows == stasm_NLANDMARKS); - CV_Assert(meanshape.rows == stasm_NLANDMARKS); - - Shape newpinned(pinned); - - if (!HaveCanonical5Points(pinned)) - { - // Not canonical 5 point pinned landmarks. Impute the missing points. - // This is not an optimal situation but will at least allow estimation - // of pose from an arb set of pinned landmarks. - - newpinned = PinMeanShape(pinned, meanshape); - } - - Shape outshape(5, 2); // 5 point shape - - outshape(0, IX) = newpinned(L_LEyeOuter, IX); - outshape(0, IY) = newpinned(L_LEyeOuter, IY); - - outshape(1, IX) = newpinned(L_REyeOuter, IX); - outshape(1, IY) = newpinned(L_REyeOuter, IY); - - outshape(2, IX) = newpinned(L_CNoseTip, IX); - outshape(2, IY) = newpinned(L_CNoseTip, IY); - - outshape(3, IX) = newpinned(L_LMouthCorner, IX); - outshape(3, IY) = newpinned(L_LMouthCorner, IY); - - outshape(4, IX) = newpinned(L_RMouthCorner, IX); - outshape(4, IY) = newpinned(L_RMouthCorner, IY); - - return outshape; -} - - -static void InitDetParEyeMouthFromShape( // fill in eye and mouth fields of detpar - DetPar& detpar, - Shape& shape) -{ - if (PointUsed(shape, L_LPupil)) - { - detpar.lex = shape(L_LPupil, IX); - detpar.ley = shape(L_LPupil, IY); - } - if (PointUsed(shape, L_RPupil)) - { - detpar.rex = shape(L_RPupil, IX); - detpar.rey = shape(L_RPupil, IY); - } - if (PointUsed(shape, L_CBotOfBotLip)) - { - detpar.mouthx = shape(L_CBotOfBotLip, IX); - detpar.mouthy = shape(L_CBotOfBotLip, IY); - } -} - -// We generated the startshape without using the face detector, now "back -// generate" the detpar (the position of this does not have to exactly -// match the detpar that would generate the startshape). This approach -// allows detpar to be handled uniformly in PinnedStartShapeAndRoi. - -static DetPar PseudoDetParFromStartShape( - const Shape& startshape, - double rot, - double yaw, - int nmods) -{ - const double lex = startshape(L_LPupil, IX); // left eye - const double ley = startshape(L_LPupil, IY); - const double rex = startshape(L_RPupil, IX); // right eye - const double rey = startshape(L_RPupil, IY); - const double mouthx = startshape(L_CBotOfBotLip, IX); // mouth - const double mouthy = startshape(L_CBotOfBotLip, IY); - - CV_Assert(PointUsed(lex, ley)); - CV_Assert(PointUsed(rex, rey)); - CV_Assert(PointUsed(mouthx, mouthy)); - - const double xeye = (lex + rex) / 2; // midpoint of eyes - const double yeye = (ley + rey) / 2; - const double eyemouth = PointDist(xeye, yeye, mouthx, mouthy); - - DetPar detpar; - - detpar.x = .7 * xeye + .3 * mouthx; - detpar.y = .7 * yeye + .3 * mouthy; - detpar.width = 2.0 * eyemouth; - detpar.height = 2.0 * eyemouth; - detpar.lex = lex; - detpar.ley = ley; - detpar.rex = rex; - detpar.rey = rey; - detpar.mouthx = mouthx; - detpar.mouthy = mouthy; - detpar.rot = rot; - detpar.eyaw = DegreesAsEyaw(yaw, nmods); // determines what ASM model to use - detpar.yaw = yaw; - - return detpar; -} - -// Use the given pinned face landmarks to init the start shape. The -// current implementation works best if the pinned landmarks are the five -// canonical pinned landmarks (viz. LEyeOuter, REyeOuter, CNoseTip, -// LMouthCorner, RMouthCorner). This is because it was trained on those -// points. But the routine also works if any two or more points are pinned. - -void PinnedStartShapeAndRoi( // use the pinned landmarks to init the start shape - Shape& startshape, // out: the start shape (in ROI frame) - Image& face_roi, // out: ROI around face, possibly rotated upright - DetPar& detpar_roi, // out: detpar wrt to face_roi - DetPar& detpar, // out: detpar wrt to img - Shape& pinned_roi, // out: pinned arg translated to ROI frame - const Image& img, // in: the image (grayscale) - const vec_Mod& mods, // in: a vector of models, one for each yaw range - const Shape& pinned) // in: manually pinned landmarks -{ - double rot, yaw; - EstRotAndYawFrom5PointShape(rot, yaw, As5PointShape(pinned, mods[0]->MeanShape_())); - - const EYAW eyaw = DegreesAsEyaw(yaw, NSIZE(mods)); - const int imod = EyawAsModIndex(eyaw, mods); // select ASM model based on yaw - if (trace_g) - lprintf("%-6.6s yaw %3.0f rot %3.0f ", EyawAsString(eyaw), yaw, rot); - pinned_roi = pinned; // use pinned_roi as a temp shape we can change - Image workimg(img); // possibly flipped image - if (IsLeftFacing(eyaw)) // left facing? (our models are for right facing faces) - { - pinned_roi = FlipShape(pinned_roi, workimg.cols); - FlipImgInPlace(workimg); - } - const Mod* mod = mods[ABS(imod)]; - startshape = PinMeanShape(pinned_roi, mod->MeanShape_()); - startshape = mod->ConformShapeToMod_Pinned_(startshape, pinned_roi); - detpar = PseudoDetParFromStartShape(startshape, rot, yaw, NSIZE(mods)); - if (IsLeftFacing(eyaw)) - detpar.rot *= -1; - FaceRoiAndDetPar(face_roi, detpar_roi, workimg, detpar, false); - startshape = ImgShapeToRoiFrame(startshape, detpar_roi, detpar); - pinned_roi = ImgShapeToRoiFrame(pinned_roi, detpar_roi, detpar); - // following line not strictly necessary because don't actually need eyes/mouth - InitDetParEyeMouthFromShape(detpar_roi, startshape); - if (IsLeftFacing(eyaw)) - { - detpar = FlipDetPar(detpar, img.cols); - detpar.rot = -detpar.rot; - detpar_roi.x += 2. * (face_roi.cols/2. - detpar_roi.x); - } -} - -} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/src/print.cpp b/3rdparty/stasm4.0.0/stasm/src/print.cpp deleted file mode 100755 index fcc9cd4..0000000 --- a/3rdparty/stasm4.0.0/stasm/src/print.cpp +++ /dev/null @@ -1,92 +0,0 @@ -// print.cpp: printing and logging utilities for the Stasm library -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#include "print.h" -#include "err.h" -#include "misc.h" - -#include - -namespace stasm -{ -bool print_g; // true to allow output to stdout (but error msgs always printed) - -bool trace_g; // true to trace Stasm internal operation - -static FILE* logfile_g; // lprintfs go to this log file as well as stdout - -//----------------------------------------------------------------------------- - -// Open the log file. After this, when you call lprintf, you print to the log -// file (as well as to stdout). This inits the global variable logfile_g. - -void OpenLogFile(void) // also inits the global variable logfile_g -{ - if (!logfile_g) - { - static const char* const path = "stasm.log"; - if (print_g) - printf("Opening %s\n", path); - logfile_g = fopen(path, "wt"); - if (!logfile_g) - Err("Cannot open \"%s\"", path); - // check that we can write to the log file - if (fputs("log file\n", logfile_g) < 0) - Err("Cannot write to \"%s\"", path); - rewind(logfile_g); // rewind so above test msg is not in the log file - } -} - -// Like printf but only prints if print_g flag is set, -// and also prints to the log file if it is open. - -void lprintf(const char* format, ...) // args like printf -{ - (void) format; - /* - if (print_g) - { - char s[SBIG]; - va_list args; - va_start(args, format); - VSPRINTF(s, format, args); - va_end(args); - lputs(s); - }*/ -} - -// Like printf but prints to the log file only (and not to stdout). -// Used for detailed stuff that we don't usually want to see. - -void logprintf(const char* format, ...) // args like printf -{ - (void) format; - /* - if (logfile_g) - { - char s[SBIG]; - va_list args; - va_start(args, format); - VSPRINTF(s, format, args); - va_end(args); - // we don't check fputs here, to prevent recursive calls and msgs - fputs(s, logfile_g); - fflush(logfile_g); - }*/ -} - -// Like puts but prints to the log file as well if it is open, -// and does not append a newline. - -void lputs(const char* s) -{ - (void) s; - /* - printf("%s", s); - fflush(stdout); // flush so if there is a crash we can see what happened - logprintf("%s", s);*/ -} - - -} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/src/shape17.cpp b/3rdparty/stasm4.0.0/stasm/src/shape17.cpp deleted file mode 100755 index 14302db..0000000 --- a/3rdparty/stasm4.0.0/stasm/src/shape17.cpp +++ /dev/null @@ -1,218 +0,0 @@ -// shape17.cp: convert a shape to a 17 point shape -// -// We can conveniently work with shapes with differing numbers of points -// (e.g. XM2VTS, BioID) by first converting them to a "Shape17" shape. -// That is, we use Shape17s as a lowest common denominator. A Shape17 -// consists of the 17 points defined by Cristinacce's "me17" measure. - -#include "shape17.h" -#include "err.h" - -namespace stasm -{ -static const double REF17[] = // mean frontal shape (data from mean MUCT shape) -{ - -44.2, 43.4, // 0 L17_LPupil - 39.0, 48.1, // 1 L17_RPupil - -32.7, -41.6, // 2 L17_LMouthCorner - 37.2, -37.7, // 3 L17_RMouthCorner - -74.6, 57.6, // 4 L17_LEyebrowOuter - -22.0, 63.3, // 5 L17_LEyebrowInner - 14.8, 65.3, // 6 L17_REyebrowInner - 67.6, 65.6, // 7 L17_REyebrowOuter - -59.2, 40.4, // 8 L17_LEyeOuter - -28.4, 42.0, // 9 L17_LEyeInner - 23.6, 44.9, // 10 L17_REyeInner - 54.3, 46.8, // 11 L17_REyeOuter - -0.2, 5.2, // 12 L17_CNoseTip - -13.8, -4.3, // 13 L17_LNostril - 14.4, -2.7, // 14 L17_RNostril - 1.6, -27.7, // 15 L17_CTopOTopLip - 3.3, -56.3 // 16 L17_CBotOfBotLip -}; - -const Shape MEANSHAPE17(17, 2, const_cast(REF17)); - -//----------------------------------------------------------------------------- - -static const int* Shape17Tab( // get appropriate tab to convert to a 17 point shape - const Shape& shape) // in -{ - static const int shape17_tab[17] = // identity transform - { - 0, // 0 L17_LPupil - 1, // 1 L17_RPupil - 2, // 2 L17_LMouthCorner - 3, // 3 L17_RMouthCorner - 4, // 4 L17_LEyebrowOuter - 5, // 5 L17_LEyebrowInner - 6, // 6 L17_REyebrowInner - 7, // 7 L17_REyebrowOuter - 8, // 8 L17_LEyeOuter - 9, // 9 L17_LEyeInner - 10, // 10 L17_REyeInner - 11, // 11 L17_REyeOuter - 12, // 12 L17_CNoseTip - 13, // 13 L17_LNostril - 14, // 14 L17_RNostril - 15, // 15 L17_CTopOfTopLip - 16 // 16 L17_CBotOfBotLip - }; - static const int bioid_tab[17] = // 20 points - { - 0, // 0 L17_LPupil - 1, // 1 L17_RPupil - 2, // 2 L17_LMouthCorner - 3, // 3 L17_RMouthCorner - 4, // 4 L17_LEyebrowOuter - 5, // 5 L17_LEyebrowInner - 6, // 6 L17_REyebrowInner - 7, // 7 L17_REyebrowOuter - 9, // 8 L17_LEyeOuter - 10, // 9 L17_LEyeInner - 11, // 10 L17_REyeInner - 12, // 11 L17_REyeOuter - 14, // 12 L17_CNoseTip - 15, // 13 L17_LNostril - 16, // 14 L17_RNostril - 17, // 15 L17_CTopOfTopLip - 18 // 16 L17_CBotOfBotLip - }; - static const int muct_tab[17] = // 68 (XM2VTS) or 76 (MUCT) points - { - 31, // 0 L17_LPupil - 36, // 1 L17_RPupil - 48, // 2 L17_LMouthCorner - 54, // 3 L17_RMouthCorner - 21, // 4 L17_LEyebrowOuter - 24, // 5 L17_LEyebrowInner - 18, // 6 L17_REyebrowInner - 15, // 7 L17_REyebrowOuter - 27, // 8 L17_LEyeOuter - 29, // 9 L17_LEyeInner - 34, // 10 L17_REyeInner - 32, // 11 L17_REyeOuter - 67, // 12 L17_CNoseTip - 46, // 13 L17_LNostril - 47, // 14 L17_RNostril - 51, // 15 L17_CTopOfTopLip - 57 // 16 L17_CBotOfBotLip - }; - static const int stasm77_tab[17] = // Stasm 77 points - { - 38, // 0 LPupil - 39, // 1 RPupil - 59, // 2 LMouthCorner - 65, // 3 RMouthCorner - 18, // 4 LEyebrowOuter - 21, // 5 LEyebrowInner - 22, // 6 REyebrowInner - 25, // 7 REyebrowOuter - 34, // 8 LEyeOuter - 30, // 9 LEyeInner - 40, // 10 REyeInner - 44, // 11 REyeOuter - 52, // 12 CNoseTip - 51, // 13 LNostril - 53, // 14 RNostril - 62, // 15 CTopOfTopLip - 74 // 16 CBotOfBotLip - }; - static const int helen_tab[17] = // 194 points (Helen) - { - 144, // 0 LPupil actually eye outer corner, will correct in TweakHelen - 124, // 1 RPupil actually eye outer corner, will correct in TweakHelen - 58, // 2 LMouthCorner - 71, // 3 RMouthCorner - 185, // 4 LEyebrowOuter - 174, // 5 LEyebrowInner - 154, // 6 REyebrowInner - 164, // 7 REyebrowOuter - 144, // 8 LEyeOuter - 134, // 9 LEyeInner - 114, // 10 REyeInner - 124, // 11 REyeOuter - 49, // 12 CNoseTip actually base of nose, will correct in TweakHelen - 47, // 13 LNostril actually base of nostril, will correct in TweakHelen - 51, // 14 RNostril actually base of nostril, will correct in TweakHelen - 64, // 15 CTopOfTopLip - 79 // 16 CBotOfBotLip - }; - static const int put199_tab[17] = // 199 points (extended PUT) - { - 195, // 0 LPupil - 194, // 1 RPupil - 58, // 2 LMouthCorner - 72, // 3 RMouthCorner - 184, // 4 LEyebrowOuter - 174, // 5 LEyebrowInner - 154, // 6 REyebrowInner - 164, // 7 REyebrowOuter - 144, // 8 LEyeOuter - 134, // 9 LEyeInner - 114, // 10 REyeInner - 124, // 11 REyeOuter - 196, // 12 CNoseTip - 197, // 13 LNostril - 198, // 14 RNostril - 65, // 15 CTopOfTopLip - 79 // 16 CBotOfBotLip - }; - const int *tab = NULL; - switch(shape.rows) - { - case 17: tab = shape17_tab; break; // identity transform - case 20: tab = bioid_tab; break; // BioID - case 22: tab = bioid_tab; break; // AR - case 68: tab = muct_tab; break; // XM2VTS, 68 point MUCT - case 76: tab = muct_tab; break; // Stasm version 3 (Stasm76 shape) - case 77: tab = stasm77_tab; break; // Stasm version 4 (Stasm77 shape) - case 194: tab = helen_tab; break; // Helen - case 199: tab = put199_tab; break; // PUT with me17 points - default: Err("Cannot convert %d point shape to 17 points", shape.rows); break; - } - return tab; -} - -static void TweakHelen( - Shape& shape17) // io -{ - // pupils not available in the helen set so use mean of eye corners - if (PointUsed(shape17, L17_LEyeOuter) && PointUsed(shape17, L17_LEyeInner)) - { - shape17(L17_LPupil, IX) = (shape17(L17_LEyeOuter, IX) + shape17(L17_LEyeInner, IX)) / 2; - shape17(L17_LPupil, IY) = (shape17(L17_LEyeOuter, IY) + shape17(L17_LEyeInner, IY)) / 2; - } - if (PointUsed(shape17, L17_REyeOuter) && PointUsed(shape17, L17_REyeInner)) - { - shape17(L17_RPupil, IX) = (shape17(L17_REyeOuter, IX) + shape17(L17_REyeInner, IX)) / 2; - shape17(L17_RPupil, IY) = (shape17(L17_REyeOuter, IY) + shape17(L17_REyeInner, IY)) / 2; - } - // nose tip and nostrils not available, fake it by shifting available points up - if (PointUsed(shape17, L17_LPupil) && PointUsed(shape17, L17_RPupil)) - { - const double shift = .08 * PointDist(shape17, L17_LPupil, L17_RPupil); - shape17(L17_CNoseTip, IY) -= 2 * shift; - shape17(L17_LNostril, IY) -= shift; - shape17(L17_RNostril, IY) -= shift; - } -} - -Shape Shape17( // convert an arb face shape to a 17 point shape - const Shape& shape) // in -{ - const int* const tab = Shape17Tab(shape); - Shape shape17(17, 2); - for (int i = 0; i < 17; i++) - { - int iold = tab[i]; - CV_Assert(iold >= 0 && iold < NSIZE(shape)); - shape17(i, IX) = shape(iold, IX); - shape17(i, IY) = shape(iold, IY); - } - if (shape.rows == 194) // helen set? www.ifp.illinois.edu/~vuongle2/helen - TweakHelen(shape17); - return shape17; -} - -} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/src/shapehacks.cpp b/3rdparty/stasm4.0.0/stasm/src/shapehacks.cpp deleted file mode 100755 index 7742e37..0000000 --- a/3rdparty/stasm4.0.0/stasm/src/shapehacks.cpp +++ /dev/null @@ -1,130 +0,0 @@ -// shapehacks.cpp: -// -// The shape model sometimes allows implausible point layouts. For -// example, the mouth on the nose, or the chin inside the mouth. The -// functions in this module fix the most egregious cases. These hacks -// don't necessarily make the overall fitness measure (FM29) better, -// but minimize the occurrence of ridiculous shapes, although also -// occasionally worsen a good shape. -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#include "shapehacks.h" -#include "print.h" -#include "stasm_lib.h" -#include "eyedist.h" -#include "stasm_landmarks.h" - -namespace stasm -{ -static double SHIFT_MOUTH_FROM_NOSE_FRAC = 0.06; // .06 from tuning on D1 set - -static double CHIN_DOWN_RATIO = 0.5; // chin must be this far from mouth -static double CHIN_DOWN_SHIFT = 0.2; - -static double CHIN_UP_RATIO = 2.4; // chin cannot be further than this from mouth -static double CHIN_UP_SHIFT = 0.1; - -static double TEMPLE_RATIO = .1; // temple must be this far from eye, 0 disables -static double TEMPLE_SHIFT = 3; - -//----------------------------------------------------------------------------- - -static void PossiblyPrint(const char* s) // debugging print -{ - if (trace_g) - lprintf("%s ", s); -} - -void ApplyShapeModelHacks( // adjust shape by applying various hacks - Shape& shape, // io: position of features possibly adjusted - unsigned hackbits) // in: which hacks to apply, see SHAPEHACKS defs -{ - CV_Assert(shape.rows == stasm_NLANDMARKS); // the hacks assume stasm77 points - CV_Assert(shape.rows == 77); - - const double eyemouth = EyeMouthDist(shape); - - if (hackbits & SHAPEHACKS_DEFAULT) - { - // Possibly shift the entire mouth down, if it is too close to the nose. - // Useful when the descriptor matchers think the nostrils are the mouth. - - const double nosemouth_gap = - shape(L_CTopOfTopLip, IY) - shape(L_CNoseBase, IY); - if (nosemouth_gap < .1 * eyemouth) - { - PossiblyPrint("ShiftMouthDown"); - for (int i = L_LMouthCorner; i <= L_LMouth76; i++) - shape(i, IY) += SHIFT_MOUTH_FROM_NOSE_FRAC * eyemouth; - } - // Shift the bottom of mouth down if it is above the top of mouth. - - const double gap = shape(L_CTopOfBotLip, IY) - shape(L_CTopOfTopLip, IY); - if (gap < 0) - { - PossiblyPrint("ShiftBottomOfMouthDown"); - for (int i = L_RMouthCorner; i <= L_LMouth76; i++) - shape(i, IY) -= gap; - } - // Possibly shift the chin down or up, if it too close to the mouth. - // Useful when the chin is on the mouth. - - const double y_mouth_center = - (shape(L_CTopOfTopLip, IY) + shape(L_CBotOfBotLip, IY)) / 2; - const double nosemouth_gap1 = - MAX(0, y_mouth_center - shape(L_CNoseBase, IY)); - const double mouthchin_gap = - shape(L_CTipOfChin, IY) - y_mouth_center; - if (mouthchin_gap < CHIN_DOWN_RATIO * nosemouth_gap1) - { - PossiblyPrint("ShiftChinDown"); - double yadjust = CHIN_DOWN_SHIFT * eyemouth; - shape(L_LJaw04, IY) += yadjust; - shape(L_LJaw05, IY) += yadjust; - shape(L_CTipOfChin, IY) += yadjust; - shape(L_RJaw07, IY) += yadjust; - shape(L_RJaw08, IY) += yadjust; - } - if (mouthchin_gap > CHIN_UP_RATIO * nosemouth_gap1) - { - PossiblyPrint("ShiftChinUp"); - double yadjust = CHIN_UP_SHIFT * eyemouth; - shape(L_LJaw04, IY) -= yadjust; - shape(L_LJaw05, IY) -= yadjust; - shape(L_CTipOfChin, IY) -= yadjust; - shape(L_RJaw07, IY) -= yadjust; - shape(L_RJaw08, IY) -= yadjust; - } - } - // Possibly shift the side of face away from eye. - // Useful when the side of face is on the eye. - - if (hackbits & SHAPEHACKS_SHIFT_TEMPLE_OUT) - { - if (shape(L_LTemple, IX) > - shape(L_LEyeOuter, IX) - TEMPLE_RATIO * eyemouth) - { - PossiblyPrint("LTempleOut"); - double xadjust = - TEMPLE_SHIFT * ABS(shape(L_LEyeOuter, IX) - shape(L_LTemple, IX)); - shape(L_LTemple, IX) -= xadjust; - shape(L_LJaw01, IX) -= xadjust; - shape(L_LJawNoseline, IX) -= xadjust; - shape(L_LJawMouthline, IX) -= .5 * xadjust; - } - if (shape(L_RTemple, IX) < - shape(L_REyeOuter, IX) + TEMPLE_RATIO * eyemouth) - { - PossiblyPrint("RTempleOut"); - double xadjust = - TEMPLE_SHIFT * ABS(shape(L_REyeOuter, IX) - shape(L_RTemple, IX)); - shape(L_RTemple, IX) += xadjust; - shape(L_RJaw11, IX) += xadjust; - shape(L_RJawNoseline, IX) += xadjust; - shape(L_RJawMouthline, IX) += .5 * xadjust; - } - } -} - -} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/src/shapemod.cpp b/3rdparty/stasm4.0.0/stasm/src/shapemod.cpp deleted file mode 100755 index df57179..0000000 --- a/3rdparty/stasm4.0.0/stasm/src/shapemod.cpp +++ /dev/null @@ -1,132 +0,0 @@ -// shapemod.cpp: the ASM shape model -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#include "shapemod.h" -#include "landmarks.h" -#include "asm.h" - -namespace stasm -{ -static const int SHAPEHACK_MINPYRLEV = 2; // allow hacks only at coarse pyr levs - -// Limit the values of b to make sure the generated shape is plausible. -// That is, clip each b[i] to bmax * sqrt(lambda_i). -// "b" is the name used for the eigenvector weights in Cootes' papers. - -static void LimitB( - VEC& b, // io: eigvec weights - const VEC& eigvals, // in - double bmax) // in -{ - for (int i = 0; i < NSIZE(eigvals); i++) - { - const double limit = bmax * sqrt(eigvals(i)); - b(i) = Clamp(b(i), -limit, limit); - } -} - -// This implements Section 4.8 of CootesTaylor 2004 -// www.isbe.man.ac.uk/~bim/Mods/app_models.pdf. -// Except that we don't implement tangent spaces. And we don't iterate the -// shape model until convergence. Instead we use the b from the previous -// iteration of the ASM, which gives as good landmark fit results, empirically. - -static Shape ConformShapeToMod( // Return a copy of inshape conformed to the model - VEC& b, // io: eigvec weights - const Shape& inshape, // in: the current position of the landmarks - const Shape& meanshape, // in: n x 2 - const VEC& eigvals, // in: neigs x 1 - const MAT& eigvecs, // in: 2n x neigs - const MAT& eigvecsi, // in: neigs x 2n, inverse of eigvecs - const double bmax, // in: for LimitB - const VEC& pointweights) // in: contribution of each point to the pose -{ - Shape shape(inshape.clone()); - - // estimate the pose which transforms the shape into the model space - // (use the b from previous iterations of the ASM) - - MAT modelshape(AsColVec(meanshape) + eigvecs * b); - modelshape = DimKeep(modelshape, shape.rows, 2); // redim back to 2 columns - const MAT pose(AlignmentMat(modelshape, shape, Buf(pointweights))); - - // transform the shape into the model space - - modelshape = AlignShape(shape, pose.inv(cv::DECOMP_LU)); - - // update shape model params b to match modelshape, then limit b - - b = eigvecsi * AsColVec(modelshape - meanshape); - LimitB(b, eigvals, bmax); - - // generate conformedshape from the model using the limited b - // (we generate as a column vec, then redim back to 2 columns) - - const Shape conformedshape(DimKeep(eigvecs * b, shape.rows, 2)); - - // back to image space - - return AlignShape(meanshape + conformedshape, pose); -} - -static VEC PointWeights(void) // return point weights from LANDMARK_INFO_TAB -{ - CV_DbgAssert(NELEMS(LANDMARK_INFO_TAB) == stasm_NLANDMARKS); - - VEC pointweights(stasm_NLANDMARKS, 1); - - for (int i = 0; i < stasm_NLANDMARKS; i++) - pointweights(i) = LANDMARK_INFO_TAB[i].weight; - - return pointweights; -} - -// wrapper around ConformShapeToMod above - -const Shape ShapeMod::ConformShapeToMod_( // return shape conformed to shape model - VEC& b, // io: eigvec weights from previous iters of ASM - const Shape& shape, // in: shape suggested by the descriptor models - int ilev) // in: pyramid level (0 is full size) -const -{ - // static for efficiency (init once) - static const VEC pointweights(PointWeights()); - - Shape newshape = ConformShapeToMod(b, - shape, meanshape_ * GetPyrScale(ilev), - eigvals_ / pow(SQ(PYR_RATIO), ilev), eigvecs_, eigvecsi_, - bmax_, pointweights); - - newshape = JitterPointsAt00(newshape); // jitter points at 0,0 if any - - if (ilev >= SHAPEHACK_MINPYRLEV) // allow shape hacks only at coarse pyr levs - ApplyShapeModelHacks(newshape, hackbits_); - - return newshape; -} - -// Like ConformShapeToMod_ but with pinned landmarks. Conform the given shape to -// the ASM model, but keeping points in pinnedshape at their original position. - -const Shape ShapeMod::ConformShapeToMod_Pinned_( - VEC& b, // io: eigvec weights from previous iters of ASM - const Shape& shape, // in: shape suggested by the descriptor models - int ilev, // in: pyramid level (0 is full size) - const Shape& pinnedshape) // in: pinned landmarks -const -{ - static const double MAX_DIST = 0.5; - static const int MAX_ITERS = 50; - - Shape outshape(shape.clone()); - double dist = FLT_MAX; - for (int iter = 0; dist > MAX_DIST && iter < MAX_ITERS; iter++) - { - outshape = ConformShapeToMod_(b, outshape, ilev); - dist = ForcePinnedPoints(outshape, pinnedshape); - } - return outshape; -} - -} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/src/startshape.cpp b/3rdparty/stasm4.0.0/stasm/src/startshape.cpp deleted file mode 100755 index 02707e2..0000000 --- a/3rdparty/stasm4.0.0/stasm/src/startshape.cpp +++ /dev/null @@ -1,469 +0,0 @@ -// startshape.cpp: routines for finding the start shape for an ASM search -// -// The model "estart" determines the method we use to create the start shape. -// (The InitMods function initializes estart during Stasm initialization.) -// The current open-source version of Stasm uses estart=ESTART_EYES. -// -// 1. With the model estart=ESTART_RECT_ONLY, the start shape is created by -// aligning the model mean face shape to the face rectangle. (The face -// rectangle is found by the face detector prior to calling routines in -// this file.) -// -// 2. With the model estart=ESTART_EYES (currently used for the frontal -// model), the start shape is created as follows. Using the face rectangle -// found by the face detector, Stasm searches for the eyes in the -// appropriate subregions within the rectangle. If both eyes are found the -// face is rotated so the eyes are horizontal. The start shape is then -// formed by aligning the mean training shape to the eyes. If either eye -// isn't found, the start shape is aligned to the face detector rectangle. -// -// Note however that if the eye angle is less than +-5 degrees, we treat it -// as 0 degrees (and don't rotate the face as described above). This -// minimizes preprocessing. -// -// 3. With the model estart=ESTART_EYE_AND_MOUTH (currently used for the -// three-quarter models), the start shape is generated as above, but we -// search for the mouth too and use it if is detected. -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#include "startshape.h" -#include "print.h" -#include "landmarks.h" -#include "stasm_landmarks.h" -#include "err.h" -#include "faceroi.h" -#include "eyedet.h" - -namespace stasm -{ -// The constant 200 is arbitrary, except that the value used by Stasm -// must match that used by Tasm when training the model. Using 200 instead -// of say, 1, means that the detector average face is displayable at a decent -// size which is useful for debugging. - -static const int DET_FACE_WIDTH = 200; - -// Following used if we did not detect eyes. We empirically get slighter better -// Stasm results if we slightly reduce the size of the detected face rectangle. - -static double FACERECT_SCALE_WHEN_NO_EYES = .95; - -//----------------------------------------------------------------------------- - -// Align meanshape to the face detector rectangle and return it as startshape -// This ignores the eye and mouth, if any. - -static Shape AlignMeanShapeToFaceDetRect( - const DetPar& detpar, // in - const Shape& meanshape, // in - double scale, // in: scale the face rectangle - const Image& img) // io: the image (grayscale) -{ - if (trace_g) - lprintf("AlignToFaceDetBox "); - - DetPar detpar1(detpar); - - if (IsLeftFacing(detpar.eyaw)) - detpar1 = FlipDetPar(detpar, img.cols); - - CV_Assert(meanshape.rows > 0 && meanshape.cols == 2); - - const double xscale = detpar1.width * scale / DET_FACE_WIDTH; - const double yscale = detpar1.height * scale / DET_FACE_WIDTH; - - Shape startshape = AlignShape(meanshape, - xscale, 0, detpar1.x, - 0, yscale, detpar1.y); - - return startshape; -} - -// Return the model meanshape aligned to both eyes and the mouth. -// -// The central idea is to form a triangular shape of the eyes and -// bottom-of-mouth from the face detector params, and align the same -// triangle in the meanshape to this triangle. - -static Shape AlignMeanShapeToBothEyesAndMouth( - const DetPar& detpar, // in - const Shape& meanshape) // in -{ - if (trace_g) - lprintf("AlignToBothEyesAndMouth "); - - CV_Assert(NSIZE(meanshape) > 0 && PointUsed(meanshape, 0)); - CV_Assert(Valid(detpar.mouthx)); - CV_Assert(Valid(detpar.lex)); - CV_Assert(Valid(detpar.rex)); - - Shape mean_tri(3, 2), det_tri(3, 2); // triangle of eyes and mouth - - const double x_meanmouth = - (meanshape(L_CTopOfTopLip, IX) + meanshape(L_CBotOfBotLip, IX)) / 2.; - - const double y_meanmouth = - (meanshape(L_CTopOfTopLip, IY) + meanshape(L_CBotOfBotLip, IY)) / 2.; - - mean_tri(0, IX) = meanshape(L_LPupil, IX); // left eye - mean_tri(0, IY) = meanshape(L_LPupil, IY); - mean_tri(1, IX) = meanshape(L_RPupil, IX); // right eye - mean_tri(1, IY) = meanshape(L_RPupil, IY); - mean_tri(2, IX) = x_meanmouth; // mouth - mean_tri(2, IY) = y_meanmouth; - - det_tri(0, IX) = detpar.lex; // left eye - det_tri(0, IY) = detpar.ley; - det_tri(1, IX) = detpar.rex; // right eye - det_tri(1, IY) = detpar.rey; - det_tri(2, IX) = detpar.mouthx; // mouth - det_tri(2, IY) = detpar.mouthy; - - return AlignShape(meanshape, AlignmentMat(mean_tri, det_tri)); -} - -// return the model meanshape aligned to both eyes (mouth is not avail) - -static Shape AlignMeanShapeToBothEyesNoMouth( - const DetPar& detpar, // in - const Shape& meanshape) // in -{ - if (trace_g) - lprintf("AlignToBothEyesNoMouth "); - - CV_Assert(NSIZE(meanshape) > 0 && PointUsed(meanshape, 0)); - CV_Assert(Valid(detpar.lex)); - CV_Assert(Valid(detpar.rex)); - - Shape meanline(2, 2), detline(2, 2); // line from eye to eye - - meanline(0, IX) = meanshape(L_LPupil, IX); // left eye - meanline(0, IY) = meanshape(L_LPupil, IY); - meanline(1, IX) = meanshape(L_RPupil, IX); // right eye - meanline(1, IY) = meanshape(L_RPupil, IY); - - detline(0, IX) = detpar.lex; // left eye - detline(0, IY) = detpar.ley; - detline(1, IX) = detpar.rex; // right eye - detline(1, IY) = detpar.rey; - - return AlignShape(meanshape, AlignmentMat(meanline, detline)); -} - -// return the model meanshape aligned to both eyes (mouth is not avail) - -static Shape AlignMeanShapeToBothEyesEstMouth( - const DetPar& detpar, // in - const Shape& meanshape) // in -{ - // .48 was tested to give slightly better worse case results than .50 - static double EYEMOUTH_TO_FACERECT_RATIO = .48; - - if (trace_g) - lprintf("AlignToBothEyesNoMouth(EstMouth) "); - - CV_Assert(NSIZE(meanshape) > 0 && PointUsed(meanshape, 0)); - CV_Assert(Valid(detpar.lex)); - CV_Assert(Valid(detpar.rex)); - - // estimate the mouth's position - - double x_eyemid = 0; - switch (detpar.eyaw) - { - case EYAW00: // mid point - x_eyemid = .50 * detpar.lex + .50 * detpar.rex; - break; - // TODO The constants below have not been empirically optimized. - case EYAW_45: // closer to left eye - x_eyemid = .30 * detpar.lex + .70 * detpar.rex; - break; - case EYAW_22: // closer to left eye - x_eyemid = .30 * detpar.lex + .70 * detpar.rex; - break; - case EYAW22: // closer to right eye - x_eyemid = .30 * detpar.lex + .70 * detpar.rex; - break; - case EYAW45: // closer to right eye - x_eyemid = .30 * detpar.lex + .70 * detpar.rex; - break; - default: - Err("AlignMeanShapeToBothEyesEstMouth: Invalid eyaw %d", detpar.eyaw); - break; - } - const double y_eyemid = (detpar.ley + detpar.rey) / 2; - - Shape mean_tri(3, 2), det_tri(3, 2); // triangle of eyes and mouth - - mean_tri(0, IX) = meanshape(L_LPupil, IX); // left eye - mean_tri(0, IY) = meanshape(L_LPupil, IY); - mean_tri(1, IX) = meanshape(L_RPupil, IX); // right eye - mean_tri(1, IY) = meanshape(L_RPupil, IY); - mean_tri(2, IX) = meanshape(L_CBotOfBotLip, IX); // mouth - mean_tri(2, IY) = meanshape(L_CBotOfBotLip, IY); - - det_tri(0, IX) = detpar.lex; // left eye - det_tri(0, IY) = detpar.ley; - det_tri(1, IX) = detpar.rex; // right eye - det_tri(1, IY) = detpar.rey; - det_tri(2, IX) = x_eyemid; // mouth - det_tri(2, IY) = y_eyemid + EYEMOUTH_TO_FACERECT_RATIO * detpar.width; - - return AlignShape(meanshape, AlignmentMat(mean_tri, det_tri)); -} - -static Shape AlignMeanShapeToLeftEyeAndMouth( - const DetPar& detpar, // in - const Shape& meanshape) // in -{ - if (trace_g) - lprintf("AlignToLeftEyeAndMouth "); - - CV_Assert(NSIZE(meanshape) > 0 && PointUsed(meanshape, 0)); - CV_Assert(Valid(detpar.lex)); // left eye valid? - CV_Assert(!Valid(detpar.rex)); // right eye invalid? (else why are we here?) - CV_Assert(Valid(detpar.mouthx)); // mouth valid? - - Shape meanline(2, 2), detline(2, 2); // line from eye to mouth - - const double x_meanmouth = - (meanshape(L_CTopOfTopLip, IX) + meanshape(L_CBotOfBotLip, IX)) / 2; - - const double y_meanmouth = - (meanshape(L_CTopOfTopLip, IY) + meanshape(L_CBotOfBotLip, IY)) / 2; - - meanline(0, IX) = meanshape(L_LPupil, IX); // left eye - meanline(0, IY) = meanshape(L_LPupil, IY); - meanline(1, IX) = x_meanmouth; // mouth - meanline(1, IY) = y_meanmouth; - - detline(0, IX) = detpar.lex; // left eye - detline(0, IY) = detpar.ley; - detline(1, IX) = detpar.mouthx; // mouth - detline(1, IY) = detpar.mouthy; - - return AlignShape(meanshape, AlignmentMat(meanline, detline)); -} - -static Shape AlignMeanShapeToRightEyeAndMouth( - const DetPar& detpar, // in - const Shape& meanshape) // in -{ - if (trace_g) - lprintf("AlignToRightEyeAndMouth "); - - CV_Assert(NSIZE(meanshape) > 0 && PointUsed(meanshape, 0)); - CV_Assert(!Valid(detpar.lex)); // left eye invalid? (else why are we here?) - CV_Assert(Valid(detpar.rex)); // right eye valid? - CV_Assert(Valid(detpar.mouthx)); // mouth valid? - - const double x_meanmouth = - (meanshape(L_CTopOfTopLip, IX) + meanshape(L_CBotOfBotLip, IX)) / 2; - - const double y_meanmouth = - (meanshape(L_CTopOfTopLip, IY) + meanshape(L_CBotOfBotLip, IY)) / 2; - - Shape meanline(2, 2), detline(2, 2); // line from eye to mouth - - meanline(0, IX) = meanshape(L_RPupil, IX); // right eye - meanline(0, IY) = meanshape(L_RPupil, IY); - meanline(1, IX) = x_meanmouth; // mouth - meanline(1, IY) = y_meanmouth; - - detline(0, IX) = detpar.rex; // right eye - detline(0, IY) = detpar.rey; - detline(1, IX) = detpar.mouthx; // mouth - detline(1, IY) = detpar.mouthy; - - return AlignShape(meanshape, AlignmentMat(meanline, detline)); -} - -static void FlipIfLeftFacing( - Shape& shape, // io - EYAW eyaw, // in - int ncols) // in -{ - if (IsLeftFacing(eyaw)) - shape = FlipShape(shape, ncols); -} - -// Align the model meanshape to the detpar from the face and feature dets. -// Complexity enters in because the detected eyes and mouth may be useful -// if available. The "left facing" code is needed because our three -// quarter models are for right facing faces (wrt the viewer). - -static Shape StartShapeFromDetPar( - const DetPar& detpar_roi, // in: detpar wrt the ROI - const Image& face_roi, // in - const Shape& meanshape, // in - ESTART estart) // in: use mouth etc. to posn start shape? -{ - CV_Assert(estart == ESTART_RECT_ONLY || - estart == ESTART_EYES || - estart == ESTART_EYE_AND_MOUTH); - - Shape startshape; - Shape meanshape1(meanshape); - - if (estart == ESTART_EYE_AND_MOUTH && // use both eyes and mouth? - Valid(detpar_roi.mouthx) && - Valid(detpar_roi.lex) && - Valid(detpar_roi.rex)) - { - FlipIfLeftFacing(meanshape1, detpar_roi.eyaw, face_roi.cols); - startshape = AlignMeanShapeToBothEyesAndMouth(detpar_roi, meanshape1); - FlipIfLeftFacing(startshape, detpar_roi.eyaw, face_roi.cols); - } - else if (Valid(detpar_roi.lex) && // use both eyes? - Valid(detpar_roi.rex)) - { - FlipIfLeftFacing(meanshape1, detpar_roi.eyaw, face_roi.cols); - // TODO Tune the following code, what approach is best? - if (detpar_roi.eyaw == EYAW00) - startshape = AlignMeanShapeToBothEyesEstMouth(detpar_roi, meanshape1); - else - startshape = AlignMeanShapeToBothEyesNoMouth(detpar_roi, meanshape1); - FlipIfLeftFacing(startshape, detpar_roi.eyaw, face_roi.cols); - } - else if (estart == ESTART_EYE_AND_MOUTH && // use left eye and mouth? - Valid(detpar_roi.mouthx) && - Valid(detpar_roi.lex)) - { - FlipIfLeftFacing(meanshape1, detpar_roi.eyaw, face_roi.cols); - startshape = AlignMeanShapeToLeftEyeAndMouth(detpar_roi, meanshape1); - FlipIfLeftFacing(startshape, detpar_roi.eyaw, face_roi.cols); - } - else if (estart == ESTART_EYE_AND_MOUTH && // use right eye and mouth? - Valid(detpar_roi.mouthx) && - Valid(detpar_roi.rex)) - { - FlipIfLeftFacing(meanshape1, detpar_roi.eyaw, face_roi.cols); - startshape = AlignMeanShapeToRightEyeAndMouth(detpar_roi, meanshape1); - FlipIfLeftFacing(startshape, detpar_roi.eyaw, face_roi.cols); - } - else // last resort: use the face det rectangle (can't use facial features) - { - startshape = - AlignMeanShapeToFaceDetRect(detpar_roi, meanshape1, - FACERECT_SCALE_WHEN_NO_EYES, face_roi); - } - return JitterPointsAt00(startshape); -} - -static double EstRotFromEyeAngle( // estimate face rotation from intereye angle - const DetPar& detpar) // in: detpar wrt the ROI -{ - double rot = 0; - - if (Valid(detpar.lex) && Valid(detpar.rey)) // both eyes detected? - rot = RadsToDegrees(-atan2(detpar.rey - detpar.ley, - detpar.rex - detpar.lex)); - - return rot; -} - -// Get the start shape and the ROI around it, given the face rectangle. -// Depending on the estart field in the model, we detect the eyes -// and mouth and use those to help fit the start shape. -// (Note also that the ROI is flipped if necessary because our three-quarter -// models are right facing and the face may be left facing.) - -static void StartShapeAndRoi( // we have the facerect, now get the rest - Shape& startshape, // out: the start shape we are looking for - Image& face_roi, // out: ROI around face, possibly rotated upright - DetPar& detpar_roi, // out: detpar wrt to face_roi - DetPar& detpar, // io: detpar wrt to img (has face rect on entry) - const Image& img, // in: the image (grayscale) - const vec_Mod& mods, // in: a vector of models, one for each yaw range - // (use only estart, and meanshape) - StasmCascadeClassifier cascade) -{ - PossiblySetRotToZero(detpar.rot); // treat small rots as zero rots - - FaceRoiAndDetPar(face_roi, detpar_roi, // get ROI around face - img, detpar, false); - - DetectEyesAndMouth(detpar_roi, // use OpenCV eye and mouth detectors - face_roi, cascade); - - // Some face detectors return the face rotation, some don't (in - // the call to NextFace_ just made via NextStartShapeAndRoi). - // If we don't have the rotation, then estimate it from the eye - // angle, if the eyes are available. - - if (!Valid(detpar.rot)) // don't have the face rotation? - { - detpar_roi.rot = EstRotFromEyeAngle(detpar_roi); - PossiblySetRotToZero(detpar_roi.rot); - detpar.rot = detpar_roi.rot; - if (detpar.rot != 0) - { - // face is rotated: rotate ROI and re-get the eyes and mouth - - // TODO: Prevent bogus OpenCV assert fail face_roi.data == img.data. - face_roi = Image(0,0); - - FaceRoiAndDetPar(face_roi, detpar_roi, - img, detpar, false); - - DetectEyesAndMouth(detpar_roi, // use OpenCV eye and mouth detectors - face_roi, cascade); - } - } - if (trace_g) - lprintf("%-6.6s yaw %3.0f rot %3.0f ", - EyawAsString(detpar_roi.eyaw), detpar_roi.yaw, detpar_roi.rot); - else - logprintf("%-6.6s yaw %3.0f rot %3.0f ", - EyawAsString(detpar_roi.eyaw), detpar_roi.yaw, detpar_roi.rot); - - // select an ASM model based on the face's yaw - const Mod* mod = mods[ABS(EyawAsModIndex(detpar_roi.eyaw, mods))]; - - const ESTART estart = mod->Estart_(); - CV_Assert(estart == ESTART_EYES || estart == ESTART_EYE_AND_MOUTH); - - startshape = StartShapeFromDetPar(detpar_roi, - face_roi, mod->MeanShape_(), estart); - - if (IsLeftFacing(detpar_roi.eyaw)) - FlipImgInPlace(face_roi); - - JitterPointsAt00(startshape); - -} - -// Get the start shape for the next face in the image, and the ROI around it. -// The returned shape is wrt the ROI frame. -// -// Note that we we previously called the face detector, and the face -// rectangle(s) were saved privately in facedet, and are now ready for -// immediate retrieval by NextFace_. -// -// The following comment applies for three-quarter models (not for frontal -// models): If the three-quarter face is left-facing, we flip the ROI so -// the returned face is right-facing. This is because our three-quarter -// ASM models are for right-facing faces. For frontal faces (the yaw00 -// model), faces are not flipped. - -bool NextStartShapeAndRoi( // use face detector results to estimate start shape - Shape& startshape, // out: the start shape - Image& face_roi, // out: ROI around face, possibly rotated upright - DetPar& detpar_roi, // out: detpar wrt to face_roi - DetPar& detpar, // out: detpar wrt to img - const Image& img, // in: the image (grayscale) - const vec_Mod& mods, // in: a vector of models, one for each yaw range - // (use only estart, and meanshape) - FaceDet& facedet, // io: the face detector (internal face index bumped) - StasmCascadeClassifier cascade) -{ - detpar = facedet.NextFace_(); // get next face's detpar from the face det - - if (Valid(detpar.x)) // NextFace_ returned a face? - StartShapeAndRoi(startshape, face_roi, detpar_roi, detpar, img, mods, cascade); - - return Valid(detpar.x); -} - -} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/src/stasm_lib.cpp b/3rdparty/stasm4.0.0/stasm/src/stasm_lib.cpp deleted file mode 100755 index 64d2191..0000000 --- a/3rdparty/stasm4.0.0/stasm/src/stasm_lib.cpp +++ /dev/null @@ -1,339 +0,0 @@ -// stasm_lib.cpp: interface to the Stasm library -// -// Copyright (C) 2005-2013, Stephen Milborrow - -#include "stasm_lib.h" -#include "err.h" -#include "misc.h" -#include "asm.h" -#include "print.h" -#include "initasm.h" -#include "faceroi.h" -#include "pinstart.h" -#include "convshape.h" -#include "facedet.h" -#include "startshape.h" - -using namespace stasm; - -const char* const stasm_VERSION = STASM_VERSION; - -static vec_Mod mods_g; // the ASM model(s) -//static FaceDet facedet_g; // the face detector -//static Image img_g; // the current image - -//----------------------------------------------------------------------------- - -namespace stasm -{ -static void CheckStasmInit(void) -{ - if (mods_g.empty()) - Err("Models not initialized (missing call to stasm_init?)"); -} - -static void ShapeToLandmarks( // convert Shape to landmarks (float *) - float* landmarks, // out - const Shape& shape) // in -{ - CV_Assert(shape.rows <= stasm_NLANDMARKS); - int i; - for (i = 0; i < MIN(shape.rows, stasm_NLANDMARKS); i++) - { - landmarks[i * 2] = float(shape(i, IX)); - landmarks[i * 2 + 1] = float(shape(i, IY)); - } - // set remaining unused landmarks if any to 0,0 - for (; i < stasm_NLANDMARKS; i++) - { - landmarks[i * 2] = 0; - landmarks[i * 2 + 1] = 0; - } -} - -static const Shape LandmarksAsShape( // return a Shape - const float* landmarks) // in -{ - Shape shape(stasm_NLANDMARKS, 2); - for (int i = 0; i < stasm_NLANDMARKS; i++) - { - shape(i, IX) = landmarks[i*2]; - shape(i, IY) = landmarks[i*2+1]; - } - return shape; -} - -} // namespace stasm - -//----------------------------------------------------------------------------- - -int stasm_init_ext( // extended version of stasm_init - const char* datadir, // in: directory of face detector files - int trace, // in: 0 normal use, 1 trace to stdout and stasm.log - void* detparams) // in: NULL or face detector parameters -{ - (void) detparams; - - int returnval = 1; // assume success - CatchOpenCvErrs(); - try - { - print_g = (trace != 0); - trace_g = (trace != 0); - if (mods_g.empty()) // not yet initialized? - { - if (trace) - { - // Open a log file in the current directory (if possible). - // After the log file is opened, lprintf and stasm_printf - // will print to stasm.log (as well as to stdout). - //OpenLogFile(); - } - lprintf("Stasm version %s%s\n", - stasm_VERSION, trace? " Logging to stasm.log": ""); - CV_Assert(datadir && datadir[0] && STRNLEN(datadir, SLEN) < SLEN); - InitMods(mods_g, datadir); // init ASM model(s) - //facedet_g.OpenFaceDetector_(datadir, detparams); - //OpenEyeMouthDetectors(mods_g, datadir); - } - CheckStasmInit(); - } - catch(...) - { - returnval = 0; // a call was made to Err or a CV_Assert failed - } - UncatchOpenCvErrs(); - return returnval; -} - -int stasm_init( // call once, at bootup (to read models from disk) - const char* datadir, // in: directory of face detector files - int trace) // in: 0 normal use, 1 trace to stdout and stasm.log -{ - return stasm_init_ext(datadir, trace, NULL); -} - -int stasm_open_image_ext( // extended version of stasm_open_image - const char* img, // in: gray image data, top left corner at 0,0 - int width, // in: image width - int height, // in: image height - const char* imgpath, // in: image path, used only for err msgs and debug - int multiface, // in: 0=return only one face, 1=allow multiple faces - int minwidth, // in: min face width as percentage of img width - void* user) // in: NULL or pointer to user abort func -{ - (void) img; - (void) width; - (void) height; - (void) imgpath; - (void) user; - - int returnval = 1; // assume success - CatchOpenCvErrs(); - try - { - //CV_Assert(imgpath && STRNLEN(imgpath, SLEN) < SLEN); - CV_Assert(multiface == 0 || multiface == 1); - CV_Assert(minwidth >= 1 && minwidth <= 100); - - CheckStasmInit(); - - //img_g = Image(height, width,(unsigned char*)img); - - // call the face detector to detect the face rectangle(s) - // facedet_g.DetectFaces_(img_g, imgpath, multiface == 1, minwidth, user); - } - catch(...) - { - returnval = 0; // a call was made to Err or a CV_Assert failed - } - UncatchOpenCvErrs(); - return returnval; -} - -int stasm_open_image( // call once per image, detect faces - const char* img, // in: gray image data, top left corner at 0,0 - int width, // in: image width - int height, // in: image height - const char* imgpath, // in: image path, used only for err msgs and debug - int multiface, // in: 0=return only one face, 1=allow multiple faces - int minwidth) // in: min face width as percentage of img width -{ - return stasm_open_image_ext(img, width, height, imgpath, - multiface, minwidth, NULL); -} - -int stasm_search_auto_ext( // extended version of stasm_search_auto - int* foundface, // out: 0=no more faces, 1=found face - float* landmarks, // out: x0, y0, x1, y1, ..., caller must allocate - float* estyaw, // out: NULL or pointer to estimated yaw - const char* data, - const int width, - const int height, - StasmCascadeClassifier cascade) -{ - int returnval = 1; // assume success - *foundface = 0; // but assume no face found - try - { - CheckStasmInit(); - - Shape shape; // the shape with landmarks - Image face_roi; // cropped to area around startshape and possibly rotated - DetPar detpar_roi; // detpar translated to ROI frame - DetPar detpar; // params returned by face det, in img frame - - // Allocate image - Image img = Image(height, width,(unsigned char*)data); - - FaceDet facedet; - - // call the face detector to detect the face rectangle(s) - facedet.DetectFaces_(img, NULL, false, 10, NULL, cascade.faceCascade); - - // Get the start shape for the next face in the image, and the ROI around it. - // The shape will be wrt the ROI frame. - if (NextStartShapeAndRoi(shape, face_roi, detpar_roi, detpar, - img, mods_g, facedet, cascade)) - { - // now working with maybe flipped ROI and start shape in ROI frame - *foundface = 1; - if (trace_g) // show start shape? - LogShape(RoiShapeToImgFrame(shape, face_roi, detpar_roi, detpar), - "auto_start"); - - // select an ASM model based on the face's yaw - const int imod = ABS(EyawAsModIndex(detpar.eyaw, mods_g)); - - // do the actual ASM search - shape = mods_g[imod]->ModSearch_(shape, face_roi); - - shape = RoiShapeToImgFrame(shape, face_roi, detpar_roi, detpar); - // now working with non flipped start shape in image frame - RoundMat(shape); - ShapeToLandmarks(landmarks, shape); - if (estyaw) - *estyaw = float(detpar.yaw); - } - } - catch(...) - { - returnval = 0; // a call was made to Err or a CV_Assert failed - } - return returnval; -} - -int stasm_search_auto(// call repeatedly to find all faces - int* foundface, // out: 0=no more faces, 1=found face - float* landmarks, // out: x0, y0, x1, y1, ..., caller must allocate - const char *data, - const int width, - const int height, - StasmCascadeClassifier cascade) -{ - return stasm_search_auto_ext(foundface, landmarks, NULL, data, width, height, cascade); -} - -int stasm_search_single( // wrapper for stasm_search_auto and friends - int* foundface, // out: 0=no face, 1=found face - float* landmarks, // out: x0, y0, x1, y1, ..., caller must allocate - const char* img, // in: gray image data, top left corner at 0,0 - int width, // in: image width - int height, // in: image height - StasmCascadeClassifier cascade, - const char* imgpath, // in: image path, used only for err msgs and debug - const char* datadir) // in: directory of face detector files -{ - (void) datadir; - (void) imgpath; - - return stasm_search_auto(foundface, landmarks, img, width, height, cascade); -} - -int stasm_search_pinned( // call after the user has pinned some points - float* landmarks, // out: x0, y0, x1, y1, ..., caller must allocate - const float* pinned, // in: pinned landmarks (0,0 points not pinned) - const char* data, // in: gray image data, top left corner at 0,0 - int width, // in: image width - int height, // in: image height - const char* imgpath) // in: image path, used only for err msgs and debug -{ - (void) width; - (void) height; - (void) imgpath; - - int returnval = 1; // assume success - try - { - CheckStasmInit(); - - Image img = Image(height, width,(unsigned char*)data); - - const Shape pinnedshape(LandmarksAsShape(pinned)); - - Shape shape; // the shape with landmarks - Image face_roi; // img cropped to startshape area and maybe rotated - Shape pinned_roi; // pinned translated to ROI frame - DetPar detpar_roi; // detpar translated to ROI frame - DetPar detpar; // params returned by pseudo face det, in img frame - - PinnedStartShapeAndRoi(shape, face_roi, detpar_roi, detpar, pinned_roi, img, mods_g, pinnedshape); - - // now working with maybe flipped ROI and start shape in ROI frame - const int imod = ABS(EyawAsModIndex(detpar.eyaw, mods_g)); - - shape = mods_g[imod]->ModSearch_(shape, face_roi, &pinned_roi); // ASM search - - shape = RoiShapeToImgFrame(shape, face_roi, detpar_roi, detpar); - // now working with non flipped start shape in image frame - RoundMat(shape); - ForcePinnedPoints(shape, pinnedshape); // undo above RoundMat on pinned points - ShapeToLandmarks(landmarks, shape); - } - catch(...) - { - returnval = 0; // a call was made to Err or a CV_Assert failed - } - return returnval; -} - -const char* stasm_lasterr(void) // same as LastErr but not in stasm namespace -{ - return LastErr(); // return the last error message (stashed in sgErr) -} - -void stasm_force_points_into_image( // force landmarks into image boundary - float* landmarks, // io - int ncols, // in - int nrows) // in -{ - for (int i = 0; i < stasm_NLANDMARKS; i++) - { - landmarks[i * 2] = Clamp(landmarks[i * 2], 0.f, float(ncols-1)); - landmarks[i * 2 + 1] = Clamp(landmarks[i * 2 + 1], 0.f, float(nrows-1)); - } -} - -void stasm_convert_shape( // convert stasm 77 points to given number of points - float* landmarks, // io: return all points zero if can't do conversion - int nlandmarks) // in: 77=nochange 76=stasm3 68=xm2vts 22=ar 20=bioid 17=me17 -{ - Shape newshape = ConvertShape(LandmarksAsShape(landmarks), nlandmarks); - if (newshape.rows) - ShapeToLandmarks(landmarks, newshape); - else // cannot convert, set all points to 0,0 - for (int i = 0; i < stasm_NLANDMARKS; i++) - landmarks[i * 2] = landmarks[i * 2 + 1] = 0; -} - -void stasm_printf( // print to stdout and to the stasm.log file if it is open - const char* format, // args like printf - ...) -{ - char s[SBIG]; - va_list args; - va_start(args, format); - VSPRINTF(s, format, args); - va_end(args); - lputs(s); -} diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/asm.h b/3rdparty/stasm4.0.0/stasm/stasm/include/asm.h new file mode 100755 index 0000000..48145ae --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/asm.h @@ -0,0 +1,156 @@ +// asm.h: Active Shape Model class +// +// Freeing memory: In the current implementation, explicit memory release +// on Mod destruction is unneeded (because the MAT buffer pointers in Mod, +// ShapeMod, and DescMod point to constant data). If you add a new descriptor +// model, you may need to add destructors. Although even if that new class +// fails to release memory it's probably not serious, because the ASM +// model(s) are only destructed once, at program termination. +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_ASM_H +#define STASM_ASM_H + +#include "misc.h" +#include "basedesc.h" +#include "shapemod.h" +#include "hat.h" +#include "stasmhash.h" + +namespace stasm +{ +static const int EYEMOUTH_DIST = 100; // scale image to this before ASM search starts + +static const double PYR_RATIO = 2; // scale image by 2 at each pyramid level + +static const int N_PYR_LEVS = 4; // number of levs in image pyramid + +static const int SHAPEMODEL_ITERS = 4; // shape model iterations per pyr level + +//----------------------------------------------------------------------------- + +class Mod // An ASM model for finding landmarks. +{ // If multiple model Stasm, will use a separate Mod for each yaw range. +public: + Shape ModSearch_( // returns coords of the facial landmarks + const Shape& startshape, // in: startshape roughly positioned on face + const Image& img, // in: grayscale image (typically just ROI) + const Shape* pinnedshape=NULL) // in: pinned landmarks, NULL if nothing pinned + const; + + const Shape ConformShapeToMod_Pinned_( // wrapper around the func in ShapeMod + const Shape& shape, // in + const Shape& pinnedshape) // in + const + { + VEC b(NSIZE(shapemod_.eigvals_), 1, 0.); // dummy variable for call below + return shapemod_.ConformShapeToMod_Pinned_(b, shape, 0, pinnedshape); + } + + // readonly access to some private vars + ESTART Estart_(void) const { return estart_; } + const char* DataDir_(void) const { return datadir_.c_str(); } + const Shape MeanShape_(void) const { return shapemod_.meanshape_; } + +private: + const vec_vec_BaseDescMod DescMods_( // utility for Mod constructor + const BaseDescMod** const descmods_arg, // in: descriptor models + int ndescmods) // in: sanity check + { + (void) ndescmods; + + vec_vec_BaseDescMod descmods(N_PYR_LEVS); + + for (int ilev = 0; ilev < N_PYR_LEVS; ilev++) + { + descmods[ilev].resize(stasm_NLANDMARKS); + for (int i = 0; i < stasm_NLANDMARKS; i++) + descmods[ilev][i] = + descmods_arg[ilev * stasm_NLANDMARKS + i]; + } + return descmods; + } + +public: + Mod(EYAW eyaw, // constructor + ESTART estart, + string datadir, + Shape meanshape, + VEC eigvals, + MAT eigvecs, + int neigs, + double bmax, + unsigned hackbits, + const BaseDescMod** descmods, + int ndescmods) + + : eyaw_(eyaw), + estart_(estart), + datadir_(datadir), + shapemod_(meanshape, eigvals, eigvecs, neigs, bmax, hackbits), + descmods_(DescMods_(descmods, ndescmods)) + { + CV_Assert(eyaw == EYAW_45 || eyaw == EYAW_22 || eyaw == EYAW00 || + eyaw == EYAW22 || eyaw == EYAW45); + + CV_Assert(estart == ESTART_RECT_ONLY || estart == ESTART_EYES || + estart == ESTART_EYE_AND_MOUTH); + } + + virtual ~Mod() {} // destructor + +private: // all data remains constant after Mod construction + + const EYAW eyaw_; // model is for this yaw range + // e.g. EYAW00 is frontal model + + const ESTART estart_; // use the mouth/eyes to position the start shape? + + const string datadir_; // directory of face detector files + + const ShapeMod shapemod_; // the shape model + + const vec_vec_BaseDescMod descmods_; + // descriptor mods, one for each point at each pyr lev + // index as [ilev][ipoint] + + void SuggestShape_( + Shape& shape, // io: points will be moved to give best desc matches + int ilev, // in: pyramid level (0 is full size) + const Image& img, // in: image scaled to this pyramid level + const Shape& pinned, // in: if no rows then no pinned landmarks, else + // points except those equal to 0,0 are pinned + const Hat &hat, + StasmHash &hash) + const; + + void LevSearch_( // do an ASM search at one level in the image pyr + Shape& shape, // io: the face shape for this pyramid level + int ilev, // in: pyramid level (0 is full size) + const Image& img, // in: image scaled to this pyramid level + const Shape& pinnedshape) // in: if no rows then no pinned landmarks, else + // points except those equal to 0,0 are pinned + const; + + DISALLOW_COPY_AND_ASSIGN(Mod); + +}; // end class Mod + +typedef vector vec_Mod; // vector of ASM models, one for each yaw range + +//----------------------------------------------------------------------------- + +static inline double GetPyrScale( // return 1 for pyr lev 0, .5 for pyr lev 1, etc. + int ilev) // in: pyramid level (0 is full size) +{ + return 1 / pow(PYR_RATIO, ilev); +} + +// TODO This definition doesn't belong here. +int EyawAsModIndex( // note: returns a negative index for left facing yaws + EYAW eyaw, // in + const vec_Mod& mods); // in: a vector of models, one for each yaw range + +} // namespace stasm +#endif // STASM_ASM_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/atface.h b/3rdparty/stasm4.0.0/stasm/stasm/include/atface.h new file mode 100755 index 0000000..733cc0a --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/atface.h @@ -0,0 +1,70 @@ +// atface.h: face point attributes +// +// These attributes are used when training new models (they appear in +// LANDMARK_INFO_TAB). They are also sometimes used when testing Stasm. +// They are not needed for doing landmark searches. +// +// Some of these bits apply to the entire image (AT_BadImg); other apply +// only to a specific points (AT_Glasses). +// +// In shape files, the bits appear in the in the "tag" preceding each shape. +// For example +// 0004 d0145 +// means that the face in image d0145.jpg is wearing glasses. + +#ifndef STASM_ATFACE_HPP +#define STASM_ATFACE_HPP + +static const char* const AT_NAMES[] = // used only for information during training +{ + "Male", // AT_Male 0x0001 + "Child", // AT_Child 0x0002 + "Glasses", // AT_Glasses 0x0004 + "Beard", // AT_Beard 0x0008 + "Mustache", // AT_Mustache 0x0010 + "MouthOpen", // AT_MouthOpen 0x0020 + "Expression", // AT_Expression 0x0040 + "Eye", // AT_Eye 0x0080 + "BadImg", // AT_BadImg 0x0100 + "Cropped", // AT_Cropped 0x0200 + "Obscured", // AT_Obscured 0x0400 + "BadEye", // AT_BadEye 0x0800 + "Hat", // AT_Hat 0x1000 + "Unused", // AT_Hat 0x2000 + "MultiFace", // AT_MultiFace 0x4000 + "BadTrain", // AT_BadTrain 0x8000 +}; + +static const unsigned AT_Male = 0x0001; // gender, 1=male +static const unsigned AT_Child = 0x0002; // child +static const unsigned AT_Glasses = 0x0004; // face is wearing specs +static const unsigned AT_Beard = 0x0008; // beard including possible mustache +static const unsigned AT_Mustache = 0x0010; // mustache +static const unsigned AT_MouthOpen = 0x0020; // mouth is open +static const unsigned AT_Expression = 0x0040; // non-neutral expression on face +static const unsigned AT_Eye = 0x0080; // is eye landmark, used only during training + +static const unsigned AT_BadImg = 0x0100; // image is "bad" in some way (blurred, duplicated, etc.) +static const unsigned AT_Cropped = 0x0200; // a landmark would be off the page +static const unsigned AT_Obscured = 0x0400; // face is obscured e.g. by subject's hand +static const unsigned AT_BadEye = 0x0800; // an eye is closed or obscured by hair etc. +static const unsigned AT_Hat = 0x1000; // HAT desciptor (ignored if pyr lev > HAT_START_LEV) + +// following are currently used only in aflw.shape +static const unsigned AT_MultiFace = 0x4000; // multiple faces in the image +static const unsigned AT_BadTrain = 0x8000; // face is not suitable for training face det + // (by manual inspection of train face rects) + +static const unsigned AT_Meta = 0xFF000000; // "meta bits" used for face and pose detectors + +static const unsigned AT_Pose = 0x80000000; // 4 elements: yaw, pitch, roll, estimated_err + +static const unsigned AT_EYAW00 = 0x81000000; // yaw00 face detector results, see DetPar +static const unsigned AT_EYAW22 = 0x82000000; +static const unsigned AT_EYAW45 = 0x83000000; +static const unsigned AT_EYAW_22 = 0x8A000000; // ms bit of nibble indicates negative yaw +static const unsigned AT_EYAW_45 = 0x8B000000; + +static const unsigned AT_Any = 0xFFFFFFFF; // special case, match any bit in Mask0 + +#endif // STASM_ATFACE_HPP diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/basedesc.h b/3rdparty/stasm4.0.0/stasm/stasm/include/basedesc.h new file mode 100755 index 0000000..9dfb545 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/basedesc.h @@ -0,0 +1,60 @@ +// basedesc.h: descriptor model base class +// +// A "descriptor model" tells you how to use the given +// descriptor to suggest the best position of a landscape. +// +// Stasm currently uses two types of descriptors, and thus two descriptor +// model classes: ClassicDescMod and HatDescMod. Each of these classes +// provide a descriptor matching function, DescSearch_, which searches around +// the current position of a landmark, looking for the best new position. +// +// About BaseDescMod: We need a vector of descriptor models to specify how +// to search by matching against a descriptor at each landmark. Some +// landmarks use ClassicDescMods; other use HatDescMods. We thus need a +// vector of heterogeneous objects. But C++ doesn't support vectors of +// heterogeneous objects. So instead we use a vector of pointers to +// BaseDescMod, with the actual descriptor model classes (ClassicDescMod +// and HatDescMod) deriving from BaseDescMod. +// +// Memory release: Explicit destructors unneeded, see note in header of asm.h. +// +// DescSearch_ and concurrency: If OpenMP is enabled, DescSearch_ will be +// called concurrently for multiple points. (Each call will have a +// different value of x and y.) Thus for the OpenMP code to work +// correctly, DescSearch_ and its callees must not modify any variables that +// are not on the stack unless the variable is protected by a critical region. +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_BASEDESC_H +#define STASM_BASEDESC_H + +#include "hat.h" +#include "stasmhash.h" + +namespace stasm +{ +class BaseDescMod // abstract base class for all descriptor models +{ +public: + virtual void DescSearch_( // search in area around the current point + double& x, // io: (in: old posn of landmark, out: new posn) + double& y, // io + const Image& img, // in: image scaled to this pyramid level + const Shape& shape, // in: current position of the landmarks + int ilev, // in: pyramid level (0 is full size) + int ipoint, // in: index of the current landmark + const Hat &hat, + StasmHash &hash) + const = 0; + + virtual ~BaseDescMod() {} // destructor +}; + +// vec_vec_BaseDescMod contains the descriptor models, one pointer +// for each landmark at each pyramid level, index as [ilev][ipoint] + +typedef vector > vec_vec_BaseDescMod; + +} // namespace stasm +#endif // STASM_BASEDESC_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p00.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p00.mh new file mode 100755 index 0000000..eb45bc1 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p00.mh @@ -0,0 +1,39 @@ +// classic_yaw00_lev0_p00: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV0_P00_MH +#define STASM_CLASSIC_YAW00_LEV0_P00_MH + +#include "classicdesc.h" + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev0_p00[9] = +{ + -0.11784, -0.01371, 0.16775, 0.53279, 0.96244, 1.17735, 1.04922, 0.79604, 0.55585 +}; + +static const double yaw00_cov_lev0_p00[9*9] = +{ + 7319, -3927, 639, 278, -155, 302, -164, -55, -177, + -3927, 8975, -3681, 456, 211, -373, 203, -224, 0, + 639, -3681, 7440, -3620, 680, 409, -364, 118, -87, + 278, 456, -3620, 7043, -3578, 594, 695, -162, -16, + -155, 211, 680, -3578, 6448, -3282, 173, 897, 105, + 302, -373, 409, 594, -3282, 7091, -3247, -356, 796, + -164, 203, -364, 695, 173, -3247, 8097, -3379, -577, + -55, -224, 118, -162, 897, -356, -3379, 10000, -4240, + -177, 0, -87, -16, 105, 796, -577, -4240, 9150 +}; + +static const ClassicDescMod classic_yaw00_lev0_p00(9, yaw00_prof_lev0_p00, yaw00_cov_lev0_p00); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV0_P00_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p01.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p01.mh new file mode 100755 index 0000000..429f66d --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p01.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev0_p01: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV0_P01_MH +#define STASM_CLASSIC_YAW00_LEV0_P01_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev0_p01[9] = +{ + -0.55709, -0.62218, -0.73901, -0.84811, -0.8212, -0.5362, -0.13273, 0.16447, 0.23618 +}; + +static const double yaw00_cov_lev0_p01[9*9] = +{ + 8503, -2928, -70, 335, -81, 334, -44, -88, -92, + -2928, 10000, -3225, -160, 806, -366, 152, 29, -53, + -70, -3225, 8327, -2963, -82, 624, -199, 23, 33, + 335, -160, -2963, 6442, -2635, 391, 220, -190, 66, + -81, 806, -82, -2635, 5063, -2681, 660, 87, -75, + 334, -366, 624, 391, -2681, 4486, -2556, 736, 16, + -44, 152, -199, 220, 660, -2556, 4401, -2449, 730, + -88, 29, 23, -190, 87, 736, -2449, 4409, -1928, + -92, -53, 33, 66, -75, 16, 730, -1928, 3209 +}; + +static const ClassicDescMod classic_yaw00_lev0_p01(9, yaw00_prof_lev0_p01, yaw00_cov_lev0_p01); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV0_P01_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p02.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p02.mh new file mode 100755 index 0000000..354831f --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p02.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev0_p02: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV0_P02_MH +#define STASM_CLASSIC_YAW00_LEV0_P02_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev0_p02[9] = +{ + -0.46758, -0.51589, -0.58473, -0.62932, -0.5476, -0.27196, 0.03831, 0.23125, 0.28348 +}; + +static const double yaw00_cov_lev0_p02[9*9] = +{ + 9884, -2937, 167, 113, -14, 145, 31, -36, -49, + -2937, 10000, -2672, -106, 236, 55, -15, -39, 52, + 167, -2672, 8025, -2601, -94, 347, -104, 42, 14, + 113, -106, -2601, 5803, -2304, 224, 164, -55, -50, + -14, 236, -94, -2304, 4194, -2082, 393, 22, 11, + 145, 55, 347, 224, -2082, 3700, -2037, 512, -12, + 31, -15, -104, 164, 393, -2037, 3883, -2032, 580, + -36, -39, 42, -55, 22, 512, -2032, 4033, -1698, + -49, 52, 14, -50, 11, -12, 580, -1698, 3178 +}; + +static const ClassicDescMod classic_yaw00_lev0_p02(9, yaw00_prof_lev0_p02, yaw00_cov_lev0_p02); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV0_P02_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p03.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p03.mh new file mode 100755 index 0000000..1460e68 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p03.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev0_p03: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV0_P03_MH +#define STASM_CLASSIC_YAW00_LEV0_P03_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev0_p03[9] = +{ + -0.36232, -0.44056, -0.5194, -0.58006, -0.55515, -0.30484, 0.02184, 0.13327, 0.10078 +}; + +static const double yaw00_cov_lev0_p03[9*9] = +{ + 10000, -1918, -358, -72, 0, 68, -2, -30, -2, + -1918, 9141, -1849, -333, 92, 99, 59, -2, -105, + -358, -1849, 7110, -1992, -183, 206, -21, -23, 28, + -72, -333, -1992, 4680, -1604, 15, 204, -85, -21, + 0, 92, -183, -1604, 3018, -1364, 146, 173, -39, + 68, 99, 206, 15, -1364, 2461, -1293, 138, 106, + -2, 59, -21, 204, 146, -1293, 2939, -1455, 252, + -30, -2, -23, -85, 173, 138, -1455, 3870, -1516, + -2, -105, 28, -21, -39, 106, 252, -1516, 3498 +}; + +static const ClassicDescMod classic_yaw00_lev0_p03(9, yaw00_prof_lev0_p03, yaw00_cov_lev0_p03); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV0_P03_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p04.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p04.mh new file mode 100755 index 0000000..1645d77 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p04.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev0_p04: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV0_P04_MH +#define STASM_CLASSIC_YAW00_LEV0_P04_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev0_p04[9] = +{ + -0.40612, -0.42722, -0.52165, -0.5951, -0.56834, -0.34196, 0.04945, 0.19288, 0.15374 +}; + +static const double yaw00_cov_lev0_p04[9*9] = +{ + 9849, -1340, -179, -85, 70, 194, -30, -93, 41, + -1340, 10000, -1698, 124, -111, 38, 31, 100, 20, + -179, -1698, 9275, -1556, -8, -22, 140, -72, 156, + -85, 124, -1556, 8003, -2018, 263, 9, -67, 35, + 70, -111, -8, -2018, 5659, -1909, 374, 10, 30, + 194, 38, -22, 263, -1909, 4107, -1664, 369, 11, + -30, 31, 140, 9, 374, -1664, 3887, -1671, 341, + -93, 100, -72, -67, 10, 369, -1671, 4884, -1844, + 41, 20, 156, 35, 30, 11, 341, -1844, 4505 +}; + +static const ClassicDescMod classic_yaw00_lev0_p04(9, yaw00_prof_lev0_p04, yaw00_cov_lev0_p04); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV0_P04_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p05.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p05.mh new file mode 100755 index 0000000..c9a5567 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p05.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev0_p05: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV0_P05_MH +#define STASM_CLASSIC_YAW00_LEV0_P05_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev0_p05[9] = +{ + -0.93464, -0.87412, -0.82745, -0.64282, -0.2781, 0.21829, 0.51325, 0.48599, 0.39543 +}; + +static const double yaw00_cov_lev0_p05[9*9] = +{ + 10000, -1565, 179, 570, -32, -36, -346, -420, -473, + -1565, 9934, -1654, 66, 437, -256, -29, -377, -178, + 179, -1654, 9503, -2093, 149, 239, -160, -177, -301, + 570, 66, -2093, 8615, -2874, 646, 154, -41, -151, + -32, 437, 149, -2874, 7816, -2967, 731, 325, 148, + -36, -256, 239, 646, -2967, 6917, -2534, 762, 306, + -346, -29, -160, 154, 731, -2534, 7206, -2695, 853, + -420, -377, -177, -41, 325, 762, -2695, 8588, -2778, + -473, -178, -301, -151, 148, 306, 853, -2778, 7749 +}; + +static const ClassicDescMod classic_yaw00_lev0_p05(9, yaw00_prof_lev0_p05, yaw00_cov_lev0_p05); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV0_P05_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p06.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p06.mh new file mode 100755 index 0000000..f9ee033 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p06.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev0_p06: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV0_P06_MH +#define STASM_CLASSIC_YAW00_LEV0_P06_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev0_p06[9] = +{ + -0.90116, -0.91007, -0.93894, -0.85435, -0.6009, -0.05043, 0.52768, 0.72951, 0.64498 +}; + +static const double yaw00_cov_lev0_p06[9*9] = +{ + 8943, -2317, -634, 998, 81, 89, -409, -212, -488, + -2317, 9389, -2148, -313, 877, -353, 284, -586, -17, + -634, -2148, 9587, -2393, -139, 621, -330, -267, -332, + 998, -313, -2393, 10000, -3197, 403, -44, -54, -379, + 81, 877, -139, -3197, 8997, -3703, 1076, -83, -146, + 89, -353, 621, 403, -3703, 7537, -3917, 1513, 230, + -409, 284, -330, -44, 1076, -3917, 7070, -3556, 1356, + -212, -586, -267, -54, -83, 1513, -3556, 7118, -2756, + -488, -17, -332, -379, -146, 230, 1356, -2756, 5847 +}; + +static const ClassicDescMod classic_yaw00_lev0_p06(9, yaw00_prof_lev0_p06, yaw00_cov_lev0_p06); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV0_P06_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p07.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p07.mh new file mode 100755 index 0000000..9106566 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p07.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev0_p07: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV0_P07_MH +#define STASM_CLASSIC_YAW00_LEV0_P07_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev0_p07[9] = +{ + -0.90984, -0.8783, -0.84623, -0.7259, -0.36567, 0.16721, 0.49, 0.50289, 0.42589 +}; + +static const double yaw00_cov_lev0_p07[9*9] = +{ + 10000, -1260, -189, 887, -67, -101, -128, -412, -516, + -1260, 9687, -1421, -261, 620, -210, -228, -163, -492, + -189, -1421, 9387, -1696, -138, 308, -190, -230, -245, + 887, -261, -1696, 9348, -2731, 419, 219, -144, -245, + -67, 620, -138, -2731, 7781, -2803, 688, 171, 50, + -101, -210, 308, 419, -2803, 6616, -2558, 836, 387, + -128, -228, -190, 219, 688, -2558, 6936, -2647, 917, + -412, -163, -230, -144, 171, 836, -2647, 7997, -2589, + -516, -492, -245, -245, 50, 387, 917, -2589, 7453 +}; + +static const ClassicDescMod classic_yaw00_lev0_p07(9, yaw00_prof_lev0_p07, yaw00_cov_lev0_p07); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV0_P07_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p08.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p08.mh new file mode 100755 index 0000000..686c53d --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p08.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev0_p08: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV0_P08_MH +#define STASM_CLASSIC_YAW00_LEV0_P08_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev0_p08[9] = +{ + -0.37596, -0.43371, -0.50515, -0.56638, -0.59835, -0.41746, -0.04217, 0.13387, 0.15238 +}; + +static const double yaw00_cov_lev0_p08[9*9] = +{ + 9356, -1473, 144, -257, -83, 210, 57, -126, 124, + -1473, 10000, -1588, 92, -13, -24, 155, -22, -29, + 144, -1588, 9468, -1491, 65, 43, -10, 169, 97, + -257, 92, -1491, 8644, -1667, 48, 85, -95, -46, + -83, -13, 65, -1667, 6571, -1911, 364, 6, 8, + 210, -24, 43, 48, -1911, 4162, -1716, 398, 10, + 57, 155, -10, 85, 364, -1716, 3833, -1690, 366, + -126, -22, 169, -95, 6, 398, -1690, 4575, -1728, + 124, -29, 97, -46, 8, 10, 366, -1728, 4216 +}; + +static const ClassicDescMod classic_yaw00_lev0_p08(9, yaw00_prof_lev0_p08, yaw00_cov_lev0_p08); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV0_P08_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p09.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p09.mh new file mode 100755 index 0000000..7aebbe1 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p09.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev0_p09: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV0_P09_MH +#define STASM_CLASSIC_YAW00_LEV0_P09_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev0_p09[9] = +{ + -0.337, -0.4048, -0.51864, -0.61179, -0.60885, -0.39567, -0.09897, 0.07234, 0.11089 +}; + +static const double yaw00_cov_lev0_p09[9*9] = +{ + 10000, -2010, -139, -158, -42, 82, 33, -16, 18, + -2010, 9516, -1712, -238, 113, -84, 139, 21, -29, + -139, -1712, 8376, -1583, -279, 168, 35, -15, 10, + -158, -238, -1583, 6121, -1710, -96, 286, -83, -31, + -42, 113, -279, -1710, 3284, -1432, 156, 109, -37, + 82, -84, 168, -96, -1432, 2365, -1238, 157, 82, + 33, 139, 35, 286, 156, -1238, 2658, -1311, 238, + -16, 21, -15, -83, 109, 157, -1311, 3337, -1404, + 18, -29, 10, -31, -37, 82, 238, -1404, 3105 +}; + +static const ClassicDescMod classic_yaw00_lev0_p09(9, yaw00_prof_lev0_p09, yaw00_cov_lev0_p09); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV0_P09_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p10.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p10.mh new file mode 100755 index 0000000..7b739eb --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p10.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev0_p10: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV0_P10_MH +#define STASM_CLASSIC_YAW00_LEV0_P10_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev0_p10[9] = +{ + -0.45226, -0.49094, -0.57295, -0.62894, -0.59532, -0.38842, -0.10524, 0.11116, 0.22676 +}; + +static const double yaw00_cov_lev0_p10[9*9] = +{ + 9433, -2529, 58, -75, 157, 48, 107, 8, -25, + -2529, 10000, -2579, 82, 55, 58, 71, -70, 38, + 58, -2579, 8961, -2244, 4, 146, 19, -18, 167, + -75, 82, -2244, 6772, -2470, 167, 236, -52, -49, + 157, 55, 4, -2470, 4640, -2209, 410, 66, -60, + 48, 58, 146, 167, -2209, 3660, -1920, 364, 51, + 107, 71, 19, 236, 410, -1920, 3397, -1796, 499, + 8, -70, -18, -52, 66, 364, -1796, 3691, -1564, + -25, 38, 167, -49, -60, 51, 499, -1564, 2853 +}; + +static const ClassicDescMod classic_yaw00_lev0_p10(9, yaw00_prof_lev0_p10, yaw00_cov_lev0_p10); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV0_P10_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p11.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p11.mh new file mode 100755 index 0000000..fc24625 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p11.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev0_p11: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV0_P11_MH +#define STASM_CLASSIC_YAW00_LEV0_P11_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev0_p11[9] = +{ + -0.51035, -0.5573, -0.65784, -0.80491, -0.86598, -0.68945, -0.34286, 0.03568, 0.18886 +}; + +static const double yaw00_cov_lev0_p11[9*9] = +{ + 8164, -2881, -105, 271, -68, 319, 58, 46, -37, + -2881, 10000, -2684, -95, 282, -111, 177, -133, 58, + -105, -2684, 8107, -2657, 194, 295, -177, 206, -42, + 271, -95, -2657, 6438, -2492, 229, 418, -264, 111, + -68, 282, 194, -2492, 4459, -2197, 472, 128, -105, + 319, -111, 295, 229, -2197, 3655, -1962, 542, 15, + 58, 177, -177, 418, 472, -1962, 3196, -1833, 583, + 46, -133, 206, -264, 128, 542, -1833, 3265, -1513, + -37, 58, -42, 111, -105, 15, 583, -1513, 2446 +}; + +static const ClassicDescMod classic_yaw00_lev0_p11(9, yaw00_prof_lev0_p11, yaw00_cov_lev0_p11); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV0_P11_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p12.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p12.mh new file mode 100755 index 0000000..f537b5f --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p12.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev0_p12: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV0_P12_MH +#define STASM_CLASSIC_YAW00_LEV0_P12_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev0_p12[9] = +{ + -0.32226, -0.45395, -0.64439, -0.91073, -1.15151, -1.18397, -0.78182, -0.3074, -0.00799 +}; + +static const double yaw00_cov_lev0_p12[9*9] = +{ + 8275, -3970, -416, 169, 151, 179, 114, -74, -45, + -3970, 10000, -3575, -128, 212, 33, 94, -75, -69, + -416, -3575, 9570, -3344, -146, 717, -165, 110, -17, + 169, -128, -3344, 6957, -2520, 178, 493, -225, 39, + 151, 212, -146, -2520, 5151, -2139, 251, 346, -146, + 179, 33, 717, 178, -2139, 3809, -1846, 274, 120, + 114, 94, -165, 493, 251, -1846, 3846, -2120, 522, + -74, -75, 110, -225, 346, 274, -2120, 4278, -2032, + -45, -69, -17, 39, -146, 120, 522, -2032, 3604 +}; + +static const ClassicDescMod classic_yaw00_lev0_p12(9, yaw00_prof_lev0_p12, yaw00_cov_lev0_p12); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV0_P12_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p13.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p13.mh new file mode 100755 index 0000000..c58a3b5 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p13.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev0_p13: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV0_P13_MH +#define STASM_CLASSIC_YAW00_LEV0_P13_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev0_p13[9] = +{ + -0.61604, -0.62305, -0.6267, -0.58765, -0.57605, -0.58816, -0.60888, -0.59273, -0.57288 +}; + +static const double yaw00_cov_lev0_p13[9*9] = +{ + 6679, -1528, -9, -159, -115, 125, 163, 154, 185, + -1528, 8633, -1689, 330, -176, -192, 29, -113, 60, + -9, -1689, 9471, -1514, 50, -120, -272, 11, -73, + -159, 330, -1514, 9332, -1739, 178, -33, -97, -250, + -115, -176, 50, -1739, 10000, -1708, 29, -393, -286, + 125, -192, -120, 178, -1708, 9432, -1832, 87, -481, + 163, 29, -272, -33, 29, -1832, 8180, -1763, -61, + 154, -113, 11, -97, -393, 87, -1763, 7842, -1939, + 185, 60, -73, -250, -286, -481, -61, -1939, 6442 +}; + +static const ClassicDescMod classic_yaw00_lev0_p13(9, yaw00_prof_lev0_p13, yaw00_cov_lev0_p13); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV0_P13_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p14.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p14.mh new file mode 100755 index 0000000..417c400 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p14.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev0_p14: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV0_P14_MH +#define STASM_CLASSIC_YAW00_LEV0_P14_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev0_p14[9] = +{ + -0.67506, -0.66369, -0.61873, -0.61629, -0.63249, -0.64093, -0.63732, -0.67448, -0.67292 +}; + +static const double yaw00_cov_lev0_p14[9*9] = +{ + 5728, -1713, 633, -245, -213, 170, 32, 159, 271, + -1713, 7913, -2491, 934, -187, -231, 0, 334, -49, + 633, -2491, 9048, -2710, 934, -245, -113, -234, 88, + -245, 934, -2710, 10000, -2717, 1015, -252, -128, -100, + -213, -187, 934, -2717, 9830, -2667, 964, -69, -365, + 170, -231, -245, 1015, -2667, 9078, -2816, 793, -321, + 32, 0, -113, -252, 964, -2816, 8810, -2643, 264, + 159, 334, -234, -128, -69, 793, -2643, 8133, -2160, + 271, -49, 88, -100, -365, -321, 264, -2160, 6145 +}; + +static const ClassicDescMod classic_yaw00_lev0_p14(9, yaw00_prof_lev0_p14, yaw00_cov_lev0_p14); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV0_P14_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p15.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p15.mh new file mode 100755 index 0000000..329d748 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev0_p15.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev0_p15: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV0_P15_MH +#define STASM_CLASSIC_YAW00_LEV0_P15_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev0_p15[9] = +{ + -0.60196, -0.61116, -0.56915, -0.56914, -0.56312, -0.57481, -0.55917, -0.56422, -0.55659 +}; + +static const double yaw00_cov_lev0_p15[9*9] = +{ + 6565, -1154, 27, -374, 48, -55, -47, 73, 127, + -1154, 8112, -1277, 244, -283, -77, -276, -2, 104, + 27, -1277, 8803, -1468, 107, -253, -27, -255, -40, + -374, 244, -1468, 9433, -1534, 174, -433, -127, -112, + 48, -283, 107, -1534, 10000, -1651, 146, -480, -244, + -55, -77, -253, 174, -1651, 9115, -1914, 40, -514, + -47, -276, -27, -433, 146, -1914, 8340, -1943, 22, + 73, -2, -255, -127, -480, 40, -1943, 8177, -1707, + 127, 104, -40, -112, -244, -514, 22, -1707, 6245 +}; + +static const ClassicDescMod classic_yaw00_lev0_p15(9, yaw00_prof_lev0_p15, yaw00_cov_lev0_p15); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV0_P15_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p00.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p00.mh new file mode 100755 index 0000000..23a0b54 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p00.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev1_p00: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV1_P00_MH +#define STASM_CLASSIC_YAW00_LEV1_P00_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev1_p00[9] = +{ + -0.26552, -0.25836, -0.14524, 0.30515, 1.31126, 1.48416, 0.82177, 0.41147, 0.23978 +}; + +static const double yaw00_cov_lev1_p00[9*9] = +{ + 4045, -1362, 689, -10, 151, 13, -53, -167, -109, + -1362, 4666, -1690, 587, -202, 37, -248, -146, -12, + 689, -1690, 4109, -1547, 674, -453, 115, -154, -167, + -10, 587, -1547, 2861, -1290, 842, -516, 161, -55, + 151, -202, 674, -1290, 2243, -1341, 1064, -279, 148, + 13, 37, -453, 842, -1341, 3629, -2663, 1002, 50, + -53, -248, 115, -516, 1064, -2663, 7484, -4277, 417, + -167, -146, -154, 161, -279, 1002, -4277, 10000, -3097, + -109, -12, -167, -55, 148, 50, 417, -3097, 6236 +}; + +static const ClassicDescMod classic_yaw00_lev1_p00(9, yaw00_prof_lev1_p00, yaw00_cov_lev1_p00); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV1_P00_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p01.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p01.mh new file mode 100755 index 0000000..6c4230e --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p01.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev1_p01: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV1_P01_MH +#define STASM_CLASSIC_YAW00_LEV1_P01_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev1_p01[9] = +{ + -0.58928, -0.59011, -0.66712, -0.87982, -1.14676, -0.64987, 0.1479, 0.26249, 0.15874 +}; + +static const double yaw00_cov_lev1_p01[9*9] = +{ + 8018, -3475, 50, 203, 324, 99, 10, -139, 22, + -3475, 10000, -3190, 618, 102, 147, -90, 7, -116, + 50, -3190, 8961, -2913, 795, -57, 65, -111, 22, + 203, 618, -2913, 5508, -1731, 715, -298, 104, -38, + 324, 102, 795, -1731, 2195, -848, 439, -222, 93, + 99, 147, -57, 715, -848, 1202, -603, 331, -26, + 10, -90, 65, -298, 439, -603, 1307, -568, 307, + -139, 7, -111, 104, -222, 331, -568, 1566, -465, + 22, -116, 22, -38, 93, -26, 307, -465, 1412 +}; + +static const ClassicDescMod classic_yaw00_lev1_p01(9, yaw00_prof_lev1_p01, yaw00_cov_lev1_p01); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV1_P01_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p02.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p02.mh new file mode 100755 index 0000000..f862757 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p02.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev1_p02: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV1_P02_MH +#define STASM_CLASSIC_YAW00_LEV1_P02_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev1_p02[9] = +{ + -0.53443, -0.53225, -0.59414, -0.73731, -0.84331, -0.3396, 0.27334, 0.28559, 0.14275 +}; + +static const double yaw00_cov_lev1_p02[9*9] = +{ + 8299, -2665, 149, 190, 132, 154, 15, -83, 35, + -2665, 10000, -2781, 528, 36, 165, -43, -26, -34, + 149, -2781, 8973, -2314, 463, 4, 54, 14, 72, + 190, 528, -2314, 6097, -1581, 562, -214, 0, -24, + 132, 36, 463, -1581, 2105, -895, 452, -168, 83, + 154, 165, 4, 562, -895, 1283, -699, 328, -39, + 15, -43, 54, -214, 452, -699, 1647, -670, 343, + -83, -26, 14, 0, -168, 328, -670, 1994, -531, + 35, -34, 72, -24, 83, -39, 343, -531, 1931 +}; + +static const ClassicDescMod classic_yaw00_lev1_p02(9, yaw00_prof_lev1_p02, yaw00_cov_lev1_p02); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV1_P02_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p03.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p03.mh new file mode 100755 index 0000000..3494879 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p03.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev1_p03: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV1_P03_MH +#define STASM_CLASSIC_YAW00_LEV1_P03_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev1_p03[9] = +{ + -0.3615, -0.39704, -0.48617, -0.68868, -0.84047, -0.37107, 0.13433, 0.09121, 0.0192 +}; + +static const double yaw00_cov_lev1_p03[9*9] = +{ + 7761, -2345, 127, 76, 15, 60, 24, 33, -35, + -2345, 10000, -2305, 91, 41, 31, 119, 29, -56, + 127, -2305, 9790, -1898, 281, -37, 14, 8, 32, + 76, 91, -1898, 6152, -1444, 492, -195, 56, -49, + 15, 41, 281, -1444, 1902, -800, 370, -144, 33, + 60, 31, -37, 492, -800, 1151, -649, 281, 27, + 24, 119, 14, -195, 370, -649, 1981, -736, 299, + 33, 29, 8, 56, -144, 281, -736, 2814, -699, + -35, -56, 32, -49, 33, 27, 299, -699, 2552 +}; + +static const ClassicDescMod classic_yaw00_lev1_p03(9, yaw00_prof_lev1_p03, yaw00_cov_lev1_p03); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV1_P03_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p04.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p04.mh new file mode 100755 index 0000000..d6db143 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p04.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev1_p04: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV1_P04_MH +#define STASM_CLASSIC_YAW00_LEV1_P04_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev1_p04[9] = +{ + -0.45089, -0.47263, -0.52036, -0.66078, -0.78934, -0.1695, 0.2894, 0.19754, 0.08816 +}; + +static const double yaw00_cov_lev1_p04[9*9] = +{ + 8271, -1478, 405, 579, 155, 147, 56, 34, -95, + -1478, 9629, -1877, 268, 237, 93, 65, 23, 91, + 405, -1877, 10000, -1842, 237, 80, -46, 110, -31, + 579, 268, -1842, 9238, -1344, 367, 29, 25, 54, + 155, 237, 237, -1344, 4208, -977, 369, -83, -48, + 147, 93, 80, 367, -977, 1993, -741, 296, 105, + 56, 65, -46, 29, 369, -741, 3132, -1240, 273, + 34, 23, 110, 25, -83, 296, -1240, 4193, -1353, + -95, 91, -31, 54, -48, 105, 273, -1353, 3681 +}; + +static const ClassicDescMod classic_yaw00_lev1_p04(9, yaw00_prof_lev1_p04, yaw00_cov_lev1_p04); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV1_P04_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p05.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p05.mh new file mode 100755 index 0000000..c203485 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p05.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev1_p05: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV1_P05_MH +#define STASM_CLASSIC_YAW00_LEV1_P05_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev1_p05[9] = +{ + -1.00461, -1.0575, -1.11365, -1.03891, -0.45576, 0.53418, 0.57367, 0.3517, 0.3299 +}; + +static const double yaw00_cov_lev1_p05[9*9] = +{ + 9114, -1237, 238, 743, 478, -327, -339, -216, -219, + -1237, 10000, -678, 384, 478, -325, -362, -226, -523, + 238, -678, 9750, -1062, 472, -271, -492, -386, -548, + 743, 384, -1062, 7625, -1258, 414, -412, -455, -449, + 478, 478, 472, -1258, 4800, -1172, 787, -91, 95, + -327, -325, -271, 414, -1172, 4147, -906, 648, 464, + -339, -362, -492, -412, 787, -906, 5721, -1820, 603, + -216, -226, -386, -455, -91, 648, -1820, 7781, -2200, + -219, -523, -548, -449, 95, 464, 603, -2200, 7275 +}; + +static const ClassicDescMod classic_yaw00_lev1_p05(9, yaw00_prof_lev1_p05, yaw00_cov_lev1_p05); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV1_P05_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p06.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p06.mh new file mode 100755 index 0000000..56c0f41 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p06.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev1_p06: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV1_P06_MH +#define STASM_CLASSIC_YAW00_LEV1_P06_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev1_p06[9] = +{ + -0.98512, -1.03662, -1.08184, -1.10739, -0.63843, 0.57674, 0.79166, 0.47566, 0.37753 +}; + +static const double yaw00_cov_lev1_p06[9*9] = +{ + 8652, -2610, 939, 383, 604, -654, -644, -399, -463, + -2610, 10000, -3008, 1392, 196, -126, -561, -428, -153, + 939, -3008, 9542, -3147, 1036, -516, -276, -283, -342, + 383, 1392, -3147, 8596, -2150, 893, -918, -183, -558, + 604, 196, 1036, -2150, 4810, -1719, 1000, -599, 179, + -654, -126, -516, 893, -1719, 3317, -1042, 1262, 168, + -644, -561, -276, -918, 1000, -1042, 4417, -1879, 1183, + -399, -428, -283, -183, -599, 1262, -1879, 6322, -2197, + -463, -153, -342, -558, 179, 168, 1183, -2197, 5447 +}; + +static const ClassicDescMod classic_yaw00_lev1_p06(9, yaw00_prof_lev1_p06, yaw00_cov_lev1_p06); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV1_P06_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p07.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p07.mh new file mode 100755 index 0000000..e7cc815 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p07.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev1_p07: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV1_P07_MH +#define STASM_CLASSIC_YAW00_LEV1_P07_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev1_p07[9] = +{ + -1.01903, -1.07501, -1.11749, -1.02256, -0.33681, 0.5963, 0.53541, 0.33205, 0.32692 +}; + +static const double yaw00_cov_lev1_p07[9*9] = +{ + 9204, -936, 196, 867, 286, -377, -355, -278, -348, + -936, 10000, -859, 487, 368, -330, -500, -73, -568, + 196, -859, 9751, -1239, 428, -237, -485, -446, -415, + 867, 487, -1239, 8051, -1354, 432, -607, -349, -583, + 286, 368, 428, -1354, 4601, -1124, 791, 52, 142, + -377, -330, -237, 432, -1124, 4351, -1034, 649, 475, + -355, -500, -485, -607, 791, -1034, 6303, -1961, 590, + -278, -73, -446, -349, 52, 649, -1961, 7981, -2305, + -348, -568, -415, -583, 142, 475, 590, -2305, 7563 +}; + +static const ClassicDescMod classic_yaw00_lev1_p07(9, yaw00_prof_lev1_p07, yaw00_cov_lev1_p07); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV1_P07_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p08.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p08.mh new file mode 100755 index 0000000..cd2b952 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p08.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev1_p08: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV1_P08_MH +#define STASM_CLASSIC_YAW00_LEV1_P08_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev1_p08[9] = +{ + -0.44963, -0.47823, -0.51418, -0.6935, -0.73093, -0.06534, 0.24482, 0.17755, 0.0798 +}; + +static const double yaw00_cov_lev1_p08[9*9] = +{ + 8403, -1654, 342, 516, 155, 175, -51, 69, -81, + -1654, 9650, -1746, 296, 105, 98, 42, 51, 27, + 342, -1746, 10000, -1690, 161, 108, 89, 32, -13, + 516, 296, -1690, 8635, -1271, 476, -137, 76, 30, + 155, 105, 161, -1271, 3651, -1001, 365, -63, -25, + 175, 98, 108, 476, -1001, 2070, -780, 284, 114, + -51, 42, 89, -137, 365, -780, 3308, -1338, 346, + 69, 51, 32, 76, -63, 284, -1338, 4332, -1485, + -81, 27, -13, 30, -25, 114, 346, -1485, 3900 +}; + +static const ClassicDescMod classic_yaw00_lev1_p08(9, yaw00_prof_lev1_p08, yaw00_cov_lev1_p08); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV1_P08_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p09.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p09.mh new file mode 100755 index 0000000..0dd5192 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p09.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev1_p09: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV1_P09_MH +#define STASM_CLASSIC_YAW00_LEV1_P09_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev1_p09[9] = +{ + -0.36622, -0.40702, -0.51347, -0.77441, -0.77069, -0.17068, 0.11131, 0.05223, 0.01393 +}; + +static const double yaw00_cov_lev1_p09[9*9] = +{ + 7987, -2168, -2, 88, -8, 80, 60, 27, -32, + -2168, 10000, -2151, -12, 11, 46, 91, 9, 18, + -2, -2151, 9792, -1775, 219, 13, -8, -4, 6, + 88, -12, -1775, 5448, -1238, 493, -187, 69, -81, + -8, 11, 219, -1238, 1411, -732, 328, -104, 43, + 80, 46, 13, 493, -732, 1294, -667, 290, 44, + 60, 91, -8, -187, 328, -667, 2347, -842, 331, + 27, 9, -4, 69, -104, 290, -842, 2942, -768, + -32, 18, 6, -81, 43, 44, 331, -768, 2694 +}; + +static const ClassicDescMod classic_yaw00_lev1_p09(9, yaw00_prof_lev1_p09, yaw00_cov_lev1_p09); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV1_P09_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p10.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p10.mh new file mode 100755 index 0000000..0d4caa0 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p10.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev1_p10: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV1_P10_MH +#define STASM_CLASSIC_YAW00_LEV1_P10_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev1_p10[9] = +{ + -0.53793, -0.5388, -0.61332, -0.78656, -0.73707, -0.13772, 0.26423, 0.2313, 0.11337 +}; + +static const double yaw00_cov_lev1_p10[9*9] = +{ + 8397, -2856, 157, 158, 140, 121, -19, -77, 16, + -2856, 10000, -2610, 314, 74, 151, -76, 85, -107, + 157, -2610, 9132, -2319, 563, -78, 76, -2, 105, + 158, 314, -2319, 5317, -1519, 617, -248, 46, -55, + 140, 74, 563, -1519, 1717, -810, 400, -141, 84, + 121, 151, -78, 617, -810, 1293, -672, 331, -22, + -19, -76, 76, -248, 400, -672, 1941, -787, 405, + -77, 85, -2, 46, -141, 331, -787, 2343, -662, + 16, -107, 105, -55, 84, -22, 405, -662, 2147 +}; + +static const ClassicDescMod classic_yaw00_lev1_p10(9, yaw00_prof_lev1_p10, yaw00_cov_lev1_p10); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV1_P10_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p11.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p11.mh new file mode 100755 index 0000000..579d484 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p11.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev1_p11: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV1_P11_MH +#define STASM_CLASSIC_YAW00_LEV1_P11_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev1_p11[9] = +{ + -0.58075, -0.59995, -0.68687, -0.9197, -1.06371, -0.44371, 0.17664, 0.22854, 0.13256 +}; + +static const double yaw00_cov_lev1_p11[9*9] = +{ + 7589, -3828, 338, 43, 209, 37, 19, -168, -38, + -3828, 10000, -3263, 686, 77, 155, -69, 4, 88, + 338, -3263, 8181, -2396, 611, -90, 20, -87, -138, + 43, 686, -2396, 4361, -1331, 646, -259, 94, 59, + 209, 77, 611, -1331, 1577, -722, 400, -156, 57, + 37, 155, -90, 646, -722, 1091, -566, 284, -11, + 19, -69, 20, -259, 400, -566, 1371, -571, 332, + -168, 4, -87, 94, -156, 284, -571, 1540, -490, + -38, 88, -138, 59, 57, -11, 332, -490, 1428 +}; + +static const ClassicDescMod classic_yaw00_lev1_p11(9, yaw00_prof_lev1_p11, yaw00_cov_lev1_p11); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV1_P11_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p12.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p12.mh new file mode 100755 index 0000000..4edd03c --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p12.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev1_p12: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV1_P12_MH +#define STASM_CLASSIC_YAW00_LEV1_P12_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev1_p12[9] = +{ + -0.1611, -0.25254, -0.48201, -0.98315, -1.60019, -1.12709, -0.13159, 0.17559, 0.26522 +}; + +static const double yaw00_cov_lev1_p12[9*9] = +{ + 6477, -3251, 185, -73, 158, 51, -64, -110, -33, + -3251, 10000, -4062, 478, -6, 72, -4, -7, -63, + 185, -4062, 9818, -3606, 811, -197, 23, -134, -177, + -73, 478, -3606, 5933, -1935, 997, -463, 92, -164, + 158, -6, 811, -1935, 2826, -1217, 709, -331, 149, + 51, 72, -197, 997, -1217, 2011, -1194, 537, -103, + -64, -4, 23, -463, 709, -1194, 2810, -1473, 488, + -110, -7, -134, 92, -331, 537, -1473, 3861, -1195, + -33, -63, -177, -164, 149, -103, 488, -1195, 3459 +}; + +static const ClassicDescMod classic_yaw00_lev1_p12(9, yaw00_prof_lev1_p12, yaw00_cov_lev1_p12); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV1_P12_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p13.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p13.mh new file mode 100755 index 0000000..916d3dd --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p13.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev1_p13: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV1_P13_MH +#define STASM_CLASSIC_YAW00_LEV1_P13_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev1_p13[9] = +{ + -0.63606, -0.63499, -0.67446, -0.70764, -0.69469, -0.70577, -0.67686, -0.66618, -0.65743 +}; + +static const double yaw00_cov_lev1_p13[9*9] = +{ + 7239, -1774, 74, -53, 334, 334, 262, 362, 203, + -1774, 9627, -1889, 74, -221, 230, 364, 180, 202, + 74, -1889, 9320, -1868, 5, 5, 182, 269, 73, + -53, 74, -1868, 9950, -1964, -202, -188, 15, 240, + 334, -221, 5, -1964, 10000, -1950, -71, -220, 82, + 334, 230, 5, -202, -1950, 9308, -1943, -2, -233, + 262, 364, 182, -188, -71, -1943, 8113, -1882, -315, + 362, 180, 269, 15, -220, -2, -1882, 7392, -1913, + 203, 202, 73, 240, 82, -233, -315, -1913, 5540 +}; + +static const ClassicDescMod classic_yaw00_lev1_p13(9, yaw00_prof_lev1_p13, yaw00_cov_lev1_p13); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV1_P13_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p14.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p14.mh new file mode 100755 index 0000000..503e01f --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p14.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev1_p14: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV1_P14_MH +#define STASM_CLASSIC_YAW00_LEV1_P14_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev1_p14[9] = +{ + -0.70693, -0.69133, -0.72813, -0.73088, -0.73791, -0.74673, -0.77342, -0.80721, -0.84348 +}; + +static const double yaw00_cov_lev1_p14[9*9] = +{ + 6805, -2176, 266, -47, 567, 354, 527, 388, 457, + -2176, 9974, -2321, 194, -195, 370, 276, 160, 470, + 266, -2321, 9328, -2152, 224, -161, 119, 532, 251, + -47, 194, -2152, 9302, -2499, 147, -350, 197, 268, + 567, -195, 224, -2499, 10000, -2499, 488, -438, -9, + 354, 370, -161, 147, -2499, 9567, -2619, 284, -338, + 527, 276, 119, -350, 488, -2619, 8637, -2204, -257, + 388, 160, 532, 197, -438, 284, -2204, 7853, -2144, + 457, 470, 251, 268, -9, -338, -257, -2144, 5140 +}; + +static const ClassicDescMod classic_yaw00_lev1_p14(9, yaw00_prof_lev1_p14, yaw00_cov_lev1_p14); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV1_P14_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p15.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p15.mh new file mode 100755 index 0000000..8ded96d --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev1_p15.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev1_p15: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV1_P15_MH +#define STASM_CLASSIC_YAW00_LEV1_P15_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev1_p15[9] = +{ + -0.58183, -0.61339, -0.64935, -0.66865, -0.67214, -0.68748, -0.65711, -0.64961, -0.65152 +}; + +static const double yaw00_cov_lev1_p15[9*9] = +{ + 7167, -1412, -233, -193, 292, 382, 265, 217, 289, + -1412, 8588, -1537, -100, -383, 229, 173, 40, 148, + -233, -1537, 9585, -1451, -83, -344, 95, 314, 140, + -193, -100, -1451, 10000, -1611, -301, -358, 85, 27, + 292, -383, -83, -1611, 9843, -1660, -315, -287, 176, + 382, 229, -344, -301, -1660, 9605, -1720, -74, -492, + 265, 173, 95, -358, -315, -1720, 7978, -1644, -288, + 217, 40, 314, 85, -287, -74, -1644, 7475, -1816, + 289, 148, 140, 27, 176, -492, -288, -1816, 5830 +}; + +static const ClassicDescMod classic_yaw00_lev1_p15(9, yaw00_prof_lev1_p15, yaw00_cov_lev1_p15); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV1_P15_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p00.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p00.mh new file mode 100755 index 0000000..c354852 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p00.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev2_p00: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV2_P00_MH +#define STASM_CLASSIC_YAW00_LEV2_P00_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev2_p00[9] = +{ + -0.24484, -0.31522, -0.36846, -0.14047, 1.56065, 1.28274, 0.38984, 0.13367, 0.0543 +}; + +static const double yaw00_cov_lev2_p00[9*9] = +{ + 6489, -193, 783, 513, 321, 50, -176, -259, -153, + -193, 5648, -110, 563, 160, -199, -414, -257, -91, + 783, -110, 4910, -92, 291, -262, -225, -324, -305, + 513, 563, -92, 3042, -373, 101, -388, -170, -376, + 321, 160, 291, -373, 1910, -121, 360, 62, 159, + 50, -199, -262, 101, -121, 4243, -1776, 90, -3, + -176, -414, -225, -388, 360, -1776, 10000, -2409, 210, + -259, -257, -324, -170, 62, 90, -2409, 9607, -1425, + -153, -91, -305, -376, 159, -3, 210, -1425, 8356 +}; + +static const ClassicDescMod classic_yaw00_lev2_p00(9, yaw00_prof_lev2_p00, yaw00_cov_lev2_p00); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV2_P00_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p01.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p01.mh new file mode 100755 index 0000000..209dfa9 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p01.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev2_p01: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV2_P01_MH +#define STASM_CLASSIC_YAW00_LEV2_P01_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev2_p01[9] = +{ + -0.61006, -0.72105, -0.75849, -0.81226, -1.21814, -0.76544, 0.27518, 0.16726, 0.09666 +}; + +static const double yaw00_cov_lev2_p01[9*9] = +{ + 9168, -3454, 139, 825, 254, 325, -3, 102, 11, + -3454, 10000, -3058, -173, 575, 126, -43, -54, -119, + 139, -3058, 9270, -2471, 273, 130, -70, -56, -5, + 825, -173, -2471, 7299, -543, 306, -185, -1, -112, + 254, 575, 273, -543, 1916, -92, 98, 9, 41, + 325, 126, 130, 306, -92, 653, -24, 157, 92, + -3, -43, -70, -185, 98, -24, 1090, 41, 257, + 102, -54, -56, -1, 9, 157, 41, 1348, 53, + 11, -119, -5, -112, 41, 92, 257, 53, 1544 +}; + +static const ClassicDescMod classic_yaw00_lev2_p01(9, yaw00_prof_lev2_p01, yaw00_cov_lev2_p01); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV2_P01_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p02.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p02.mh new file mode 100755 index 0000000..4d6fb61 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p02.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev2_p02: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV2_P02_MH +#define STASM_CLASSIC_YAW00_LEV2_P02_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev2_p02[9] = +{ + -0.63169, -0.65689, -0.67154, -0.73992, -1.02767, -0.40486, 0.33089, 0.10841, 0.01497 +}; + +static const double yaw00_cov_lev2_p02[9*9] = +{ + 7561, -2349, -106, 166, 171, 135, 18, -16, 60, + -2349, 10000, -2423, 7, 168, 232, -53, 62, 87, + -106, -2423, 9194, -1551, 311, 105, -58, -80, 21, + 166, 7, -1551, 7598, -387, 331, -10, 35, 73, + 171, 168, 311, -387, 2080, -220, 85, 8, 55, + 135, 232, 105, 331, -220, 703, -49, 159, 117, + 18, -53, -58, -10, 85, -49, 1423, 7, 278, + -16, 62, -80, 35, 8, 159, 7, 2009, 50, + 60, 87, 21, 73, 55, 117, 278, 50, 2301 +}; + +static const ClassicDescMod classic_yaw00_lev2_p02(9, yaw00_prof_lev2_p02, yaw00_cov_lev2_p02); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV2_P02_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p03.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p03.mh new file mode 100755 index 0000000..bde30cf --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p03.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev2_p03: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV2_P03_MH +#define STASM_CLASSIC_YAW00_LEV2_P03_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev2_p03[9] = +{ + -0.1954, -0.32708, -0.4418, -0.58564, -1.00529, -0.41429, 0.09369, 0.0148, 0.04192 +}; + +static const double yaw00_cov_lev2_p03[9*9] = +{ + 4553, -1009, 811, -234, -106, 14, 89, -11, -22, + -1009, 6513, -1245, 718, -101, 94, 33, 13, -27, + 811, -1245, 8740, -1048, 6, 28, -8, -85, -88, + -234, 718, -1048, 10000, -520, 193, 16, -50, -11, + -106, -101, 6, -520, 2184, -333, 81, 66, 105, + 14, 94, 28, 193, -333, 845, -60, 165, 182, + 89, 33, -8, 16, 81, -60, 2324, -41, 358, + -11, 13, -85, -50, 66, 165, -41, 3030, -14, + -22, -27, -88, -11, 105, 182, 358, -14, 4018 +}; + +static const ClassicDescMod classic_yaw00_lev2_p03(9, yaw00_prof_lev2_p03, yaw00_cov_lev2_p03); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV2_P03_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p04.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p04.mh new file mode 100755 index 0000000..4d808b2 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p04.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev2_p04: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV2_P04_MH +#define STASM_CLASSIC_YAW00_LEV2_P04_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev2_p04[9] = +{ + -0.25192, -0.4374, -0.55404, -0.67336, -0.88419, 0.01506, 0.24966, -0.00294, -0.08817 +}; + +static const double yaw00_cov_lev2_p04[9*9] = +{ + 6499, -651, 1221, 956, 106, 160, 361, 253, 191, + -651, 7810, -572, 1542, 363, 224, 123, 171, 13, + 1221, -572, 9523, -262, 653, 226, 122, 141, 47, + 956, 1542, -262, 10000, -323, 445, 3, 241, 33, + 106, 363, 653, -323, 4641, -402, 205, -54, -67, + 160, 224, 226, 445, -402, 1827, -219, 263, 186, + 361, 123, 122, 3, 205, -219, 3031, -579, 258, + 253, 171, 141, 241, -54, 263, -579, 3574, -366, + 191, 13, 47, 33, -67, 186, 258, -366, 3094 +}; + +static const ClassicDescMod classic_yaw00_lev2_p04(9, yaw00_prof_lev2_p04, yaw00_cov_lev2_p04); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV2_P04_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p05.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p05.mh new file mode 100755 index 0000000..4f0ec49 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p05.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev2_p05: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV2_P05_MH +#define STASM_CLASSIC_YAW00_LEV2_P05_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev2_p05[9] = +{ + -0.52692, -0.93794, -1.19994, -1.37713, -0.71518, 0.7072, 0.44331, 0.36323, 0.29919 +}; + +static const double yaw00_cov_lev2_p05[9*9] = +{ + 6556, -1762, 292, 1814, 988, -222, 195, 19, 370, + -1762, 8351, -337, 497, 1056, -101, 147, -211, 205, + 292, -337, 10000, -11, 892, -92, -300, -235, -111, + 1814, 497, -11, 9238, 297, -242, -358, -730, -609, + 988, 1056, 892, 297, 4719, -162, 366, -75, -55, + -222, -101, -92, -242, -162, 4808, -22, 875, 773, + 195, 147, -300, -358, 366, -22, 7007, -1183, 644, + 19, -211, -235, -730, -75, 875, -1183, 8031, -1342, + 370, 205, -111, -609, -55, 773, 644, -1342, 7917 +}; + +static const ClassicDescMod classic_yaw00_lev2_p05(9, yaw00_prof_lev2_p05, yaw00_cov_lev2_p05); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV2_P05_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p06.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p06.mh new file mode 100755 index 0000000..73f1ba5 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p06.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev2_p06: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV2_P06_MH +#define STASM_CLASSIC_YAW00_LEV2_P06_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev2_p06[9] = +{ + -0.7492, -1.02465, -1.21457, -1.36678, -0.53414, 0.86115, 0.50492, 0.37753, 0.33932 +}; + +static const double yaw00_cov_lev2_p06[9*9] = +{ + 6047, -1447, 364, 1014, 442, -481, 36, -225, -87, + -1447, 9337, -1270, 951, 329, -713, -433, -580, -228, + 364, -1270, 10000, -1021, 497, -819, -507, -593, -716, + 1014, 951, -1021, 6867, -13, -443, -634, -510, -653, + 442, 329, 497, -13, 2491, 40, 343, 52, 136, + -481, -713, -819, -443, 40, 3570, 335, 1107, 906, + 36, -433, -507, -634, 343, 335, 4612, -896, 1216, + -225, -580, -593, -510, 52, 1107, -896, 5905, -1267, + -87, -228, -716, -653, 136, 906, 1216, -1267, 5983 +}; + +static const ClassicDescMod classic_yaw00_lev2_p06(9, yaw00_prof_lev2_p06, yaw00_cov_lev2_p06); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV2_P06_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p07.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p07.mh new file mode 100755 index 0000000..6c0315d --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p07.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev2_p07: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV2_P07_MH +#define STASM_CLASSIC_YAW00_LEV2_P07_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev2_p07[9] = +{ + -0.60437, -0.99157, -1.25118, -1.39861, -0.23545, 0.64767, 0.39954, 0.36006, 0.27114 +}; + +static const double yaw00_cov_lev2_p07[9*9] = +{ + 6885, -1447, 565, 2092, 547, -29, 209, 2, 550, + -1447, 9100, -54, 887, 746, -162, 207, -47, 127, + 565, -54, 10000, 104, 614, -155, -233, -348, -164, + 2092, 887, 104, 9159, -85, -203, -583, -693, -587, + 547, 746, 614, -85, 4248, 201, 555, 313, 316, + -29, -162, -155, -203, 201, 5637, -456, 841, 821, + 209, 207, -233, -583, 555, -456, 7590, -1399, 584, + 2, -47, -348, -693, 313, 841, -1399, 8472, -1266, + 550, 127, -164, -587, 316, 821, 584, -1266, 8078 +}; + +static const ClassicDescMod classic_yaw00_lev2_p07(9, yaw00_prof_lev2_p07, yaw00_cov_lev2_p07); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV2_P07_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p08.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p08.mh new file mode 100755 index 0000000..034d3d1 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p08.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev2_p08: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV2_P08_MH +#define STASM_CLASSIC_YAW00_LEV2_P08_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev2_p08[9] = +{ + -0.33333, -0.47816, -0.57357, -0.71576, -0.75634, 0.23606, 0.12512, -0.04428, -0.07596 +}; + +static const double yaw00_cov_lev2_p08[9*9] = +{ + 6779, -688, 1413, 630, 153, 190, 192, 261, -4, + -688, 8232, -489, 1008, 247, 101, 137, 16, 47, + 1413, -489, 10000, -271, 380, 231, 130, 122, -29, + 630, 1008, -271, 9293, -214, 331, -67, 55, -1, + 153, 247, 380, -214, 2474, -408, 231, 63, 42, + 190, 101, 231, 331, -408, 2237, -323, 238, 200, + 192, 137, 130, -67, 231, -323, 3192, -549, 208, + 261, 16, 122, 55, 63, 238, -549, 3578, -296, + -4, 47, -29, -1, 42, 200, 208, -296, 3051 +}; + +static const ClassicDescMod classic_yaw00_lev2_p08(9, yaw00_prof_lev2_p08, yaw00_cov_lev2_p08); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV2_P08_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p09.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p09.mh new file mode 100755 index 0000000..e029ece --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p09.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev2_p09: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV2_P09_MH +#define STASM_CLASSIC_YAW00_LEV2_P09_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev2_p09[9] = +{ + -0.27769, -0.40452, -0.5127, -0.79907, -0.88018, 0.04108, 0.04948, 0.00551, 0.054 +}; + +static const double yaw00_cov_lev2_p09[9*9] = +{ + 5177, -928, 693, -389, 2, 64, 66, -2, 13, + -928, 7361, -1031, 201, 47, 57, 20, -18, -69, + 693, -1031, 10000, -974, 84, 108, -41, -144, -82, + -389, 201, -974, 7262, -448, 180, -143, 67, -38, + 2, 47, 84, -448, 883, -211, 155, 140, 167, + 64, 57, 108, 180, -211, 1676, 10, 287, 325, + 66, 20, -41, -143, 155, 10, 3154, -61, 439, + -2, -18, -144, 67, 140, 287, -61, 4180, 32, + 13, -69, -82, -38, 167, 325, 439, 32, 4833 +}; + +static const ClassicDescMod classic_yaw00_lev2_p09(9, yaw00_prof_lev2_p09, yaw00_cov_lev2_p09); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV2_P09_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p10.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p10.mh new file mode 100755 index 0000000..d644cf8 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p10.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev2_p10: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV2_P10_MH +#define STASM_CLASSIC_YAW00_LEV2_P10_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev2_p10[9] = +{ + -0.66769, -0.68309, -0.70727, -0.88606, -0.84839, 0.20347, 0.17984, 0.0683, -0.01306 +}; + +static const double yaw00_cov_lev2_p10[9*9] = +{ + 8546, -2789, -48, 7, 237, 81, 53, 51, 214, + -2789, 10000, -2342, 311, 191, 41, -41, -45, 38, + -48, -2342, 9033, -1367, 317, 45, -77, 11, 9, + 7, 311, -1367, 5135, -263, 204, -35, -3, 93, + 237, 191, 317, -263, 802, -139, 119, 66, 112, + 81, 41, 45, 204, -139, 1146, 58, 241, 201, + 53, -41, -77, -35, 119, 58, 1930, 34, 334, + 51, -45, 11, -3, 66, 241, 34, 2418, 60, + 214, 38, 9, 93, 112, 201, 334, 60, 2665 +}; + +static const ClassicDescMod classic_yaw00_lev2_p10(9, yaw00_prof_lev2_p10, yaw00_cov_lev2_p10); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV2_P10_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p11.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p11.mh new file mode 100755 index 0000000..86e3758 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p11.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev2_p11: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV2_P11_MH +#define STASM_CLASSIC_YAW00_LEV2_P11_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev2_p11[9] = +{ + -0.69194, -0.75766, -0.76707, -0.99901, -1.18411, 0.07366, 0.19872, 0.12294, 0.07259 +}; + +static const double yaw00_cov_lev2_p11[9*9] = +{ + 8481, -3758, 587, 283, 369, 58, 53, 3, 40, + -3758, 10000, -3468, 258, 243, -27, -1, -80, -102, + 587, -3468, 8639, -1575, 330, -69, -93, -39, -46, + 283, 258, -1575, 4073, -148, 123, -70, -5, -3, + 369, 243, 330, -148, 806, -82, 155, 64, 105, + 58, -27, -69, 123, -82, 813, 67, 192, 142, + 53, -1, -93, -70, 155, 67, 1335, 65, 328, + 3, -80, -39, -5, 64, 192, 65, 1546, 19, + 40, -102, -46, -3, 105, 142, 328, 19, 1846 +}; + +static const ClassicDescMod classic_yaw00_lev2_p11(9, yaw00_prof_lev2_p11, yaw00_cov_lev2_p11); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV2_P11_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p12.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p12.mh new file mode 100755 index 0000000..a1e884d --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p12.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev2_p12: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV2_P12_MH +#define STASM_CLASSIC_YAW00_LEV2_P12_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev2_p12[9] = +{ + -0.07459, -0.14196, -0.27518, -0.79186, -1.85697, -0.42701, 0.37728, 0.317, 0.26966 +}; + +static const double yaw00_cov_lev2_p12[9*9] = +{ + 8083, -970, 496, -191, 317, -150, -258, -32, -155, + -970, 9146, -1904, -59, 96, -138, -305, -306, -210, + 496, -1904, 10000, -2339, 340, 40, -313, -250, -262, + -191, -59, -2339, 6664, -603, 248, -446, -152, -306, + 317, 96, 340, -603, 2201, -300, 180, 38, 176, + -150, -138, 40, 248, -300, 1895, -181, 324, 357, + -258, -305, -313, -446, 180, -181, 3877, -58, 636, + -32, -306, -250, -152, 38, 324, -58, 4755, -98, + -155, -210, -262, -306, 176, 357, 636, -98, 5559 +}; + +static const ClassicDescMod classic_yaw00_lev2_p12(9, yaw00_prof_lev2_p12, yaw00_cov_lev2_p12); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV2_P12_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p13.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p13.mh new file mode 100755 index 0000000..f0dab08 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p13.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev2_p13: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV2_P13_MH +#define STASM_CLASSIC_YAW00_LEV2_P13_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev2_p13[9] = +{ + -0.42751, -0.50809, -0.64939, -0.75938, -0.87218, -0.83949, -0.72138, -0.54002, -0.40679 +}; + +static const double yaw00_cov_lev2_p13[9*9] = +{ + 9657, -823, 23, 549, 567, 879, 533, 421, 532, + -823, 10000, -868, 123, 446, 501, 409, 280, 480, + 23, -868, 8127, -825, 59, 362, 448, 188, 262, + 549, 123, -825, 7534, -1122, 351, 263, 194, 186, + 567, 446, 59, -1122, 7084, -1177, 86, 315, 261, + 879, 501, 362, 351, -1177, 5879, -873, -86, 234, + 533, 409, 448, 263, 86, -873, 4975, -1046, -95, + 421, 280, 188, 194, 315, -86, -1046, 4806, -1204, + 532, 480, 262, 186, 261, 234, -95, -1204, 4123 +}; + +static const ClassicDescMod classic_yaw00_lev2_p13(9, yaw00_prof_lev2_p13, yaw00_cov_lev2_p13); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV2_P13_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p14.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p14.mh new file mode 100755 index 0000000..20dfabe --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p14.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev2_p14: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV2_P14_MH +#define STASM_CLASSIC_YAW00_LEV2_P14_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev2_p14[9] = +{ + -0.54008, -0.5841, -0.69519, -0.81007, -0.89572, -0.90188, -0.9261, -0.8735, -0.76153 +}; + +static const double yaw00_cov_lev2_p14[9*9] = +{ + 6362, -866, -51, 687, 429, 559, 564, 498, 466, + -866, 8483, -1707, 225, 666, 434, 545, 327, 467, + -51, -1707, 10000, -1747, 431, 332, 662, 350, 540, + 687, 225, -1747, 8762, -1842, 287, 497, 706, 382, + 429, 666, 431, -1842, 7689, -1675, 242, 343, 567, + 559, 434, 332, 287, -1675, 6532, -1561, -60, 292, + 564, 545, 662, 497, 242, -1561, 6263, -1593, 106, + 498, 327, 350, 706, 343, -60, -1593, 5434, -1443, + 466, 467, 540, 382, 567, 292, 106, -1443, 3981 +}; + +static const ClassicDescMod classic_yaw00_lev2_p14(9, yaw00_prof_lev2_p14, yaw00_cov_lev2_p14); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV2_P14_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p15.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p15.mh new file mode 100755 index 0000000..cf3498a --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev2_p15.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev2_p15: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV2_P15_MH +#define STASM_CLASSIC_YAW00_LEV2_P15_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev2_p15[9] = +{ + -0.37558, -0.45171, -0.57135, -0.73327, -0.82562, -0.84468, -0.75971, -0.61729, -0.47736 +}; + +static const double yaw00_cov_lev2_p15[9*9] = +{ + 9685, -428, 88, 87, 433, 648, 510, 413, 359, + -428, 10000, -939, 117, 253, 421, 446, 439, 402, + 88, -939, 9684, -1165, 154, 140, 410, 245, 351, + 87, 117, -1165, 8657, -930, 155, 260, 243, 231, + 433, 253, 154, -930, 7564, -1157, 68, 138, 231, + 648, 421, 140, 155, -1157, 6586, -966, 57, 42, + 510, 446, 410, 260, 68, -966, 5614, -983, -183, + 413, 439, 245, 243, 138, 57, -983, 5187, -1085, + 359, 402, 351, 231, 231, 42, -183, -1085, 4297 +}; + +static const ClassicDescMod classic_yaw00_lev2_p15(9, yaw00_prof_lev2_p15, yaw00_cov_lev2_p15); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV2_P15_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p00.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p00.mh new file mode 100755 index 0000000..c741d7f --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p00.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p00: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P00_MH +#define STASM_CLASSIC_YAW00_LEV3_P00_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p00[9] = +{ + -0.26934, -0.27514, -0.36838, -0.54867, 1.5687, 0.86451, 0.21825, 0.24086, 0.32685 +}; + +static const double yaw00_cov_lev3_p00[9*9] = +{ + 10000, 466, 1152, 1230, 828, 225, 82, 159, 161, + 466, 6699, 628, 964, 709, 148, -82, 204, 236, + 1152, 628, 4538, 879, 643, -190, -102, 72, -31, + 1230, 964, 879, 3032, 419, -158, -335, -127, -40, + 828, 709, 643, 419, 1778, 344, 171, 307, 281, + 225, 148, -190, -158, 344, 4130, -19, 720, 588, + 82, -82, -102, -335, 171, -19, 5841, 759, 805, + 159, 204, 72, -127, 307, 720, 759, 5270, 634, + 161, 236, -31, -40, 281, 588, 805, 634, 5024 +}; + +static const ClassicDescMod classic_yaw00_lev3_p00(9, yaw00_prof_lev3_p00, yaw00_cov_lev3_p00); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P00_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p01.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p01.mh new file mode 100755 index 0000000..1a5cbaf --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p01.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p01: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P01_MH +#define STASM_CLASSIC_YAW00_LEV3_P01_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p01[9] = +{ + 0.12656, -0.24389, -0.75834, -1.09498, -1.42353, -0.81966, 0.24523, 0.06951, 0.04629 +}; + +static const double yaw00_cov_lev3_p01[9*9] = +{ + 5531, -1227, 3, 502, 232, -15, 48, 62, -13, + -1227, 7965, -2675, 1359, 503, 350, 206, 326, 35, + 3, -2675, 10000, -2058, 977, 724, 151, 90, 293, + 502, 1359, -2058, 9558, -558, 465, -153, -211, -10, + 232, 503, 977, -558, 4895, 448, 30, 181, 403, + -15, 350, 724, 465, 448, 1431, 500, 437, 510, + 48, 206, 151, -153, 30, 500, 2347, 647, 511, + 62, 326, 90, -211, 181, 437, 647, 3039, 565, + -13, 35, 293, -10, 403, 510, 511, 565, 4431 +}; + +static const ClassicDescMod classic_yaw00_lev3_p01(9, yaw00_prof_lev3_p01, yaw00_cov_lev3_p01); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P01_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p02.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p02.mh new file mode 100755 index 0000000..54b7d76 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p02.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p02: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P02_MH +#define STASM_CLASSIC_YAW00_LEV3_P02_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p02[9] = +{ + 0.14175, -0.2853, -0.67941, -0.85287, -1.09157, -0.47914, 0.1908, -0.04506, -0.02606 +}; + +static const double yaw00_cov_lev3_p02[9*9] = +{ + 3025, -469, 521, 541, 187, 80, 56, -57, -49, + -469, 4050, -1074, 754, 84, 78, 80, -26, -86, + 521, -1074, 6542, -1167, 197, 205, 53, 96, 97, + 541, 754, -1167, 10000, 70, 533, 117, 275, 406, + 187, 84, 197, 70, 4758, 169, 173, 417, 534, + 80, 78, 205, 533, 169, 1212, 397, 446, 513, + 56, 80, 53, 117, 173, 397, 2862, 680, 555, + -57, -26, 96, 275, 417, 446, 680, 3611, 672, + -49, -86, 97, 406, 534, 513, 555, 672, 4994 +}; + +static const ClassicDescMod classic_yaw00_lev3_p02(9, yaw00_prof_lev3_p02, yaw00_cov_lev3_p02); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P02_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p03.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p03.mh new file mode 100755 index 0000000..6f8bc49 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p03.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p03: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P03_MH +#define STASM_CLASSIC_YAW00_LEV3_P03_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p03[9] = +{ + -0.0658, 0.00439, -0.06344, -0.47728, -0.98616, -0.49928, 0.05374, 0.09604, 0.11466 +}; + +static const double yaw00_cov_lev3_p03[9*9] = +{ + 4118, 245, 1141, 683, 3, 1, -7, 67, 29, + 245, 4247, 348, 1128, -116, -16, -100, -89, -64, + 1141, 348, 5574, 831, -249, -6, -111, -43, 19, + 683, 1128, 831, 10000, -245, 53, -161, -251, -197, + 3, -116, -249, -245, 4935, -183, 131, 172, 260, + 1, -16, -6, 53, -183, 1632, 495, 644, 732, + -7, -100, -111, -161, 131, 495, 4308, 928, 872, + 67, -89, -43, -251, 172, 644, 928, 6463, 842, + 29, -64, 19, -197, 260, 732, 872, 842, 9420 +}; + +static const ClassicDescMod classic_yaw00_lev3_p03(9, yaw00_prof_lev3_p03, yaw00_cov_lev3_p03); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P03_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p04.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p04.mh new file mode 100755 index 0000000..4002bd0 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p04.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p04: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P04_MH +#define STASM_CLASSIC_YAW00_LEV3_P04_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p04[9] = +{ + 0.17978, 0.17887, -0.20733, -0.57937, -0.84249, 0.10412, 0.0001, 0.03937, 0.13884 +}; + +static const double yaw00_cov_lev3_p04[9*9] = +{ + 2108, 718, 837, 413, 38, 152, 151, 191, 117, + 718, 3953, 804, 883, 82, 375, 342, 181, 154, + 837, 804, 7041, 1248, 596, 538, 544, 195, 69, + 413, 883, 1248, 10000, 1149, 514, 339, 39, -224, + 38, 82, 596, 1149, 6086, -135, 45, -183, -252, + 152, 375, 538, 514, -135, 2541, 220, 401, 335, + 151, 342, 544, 339, 45, 220, 3585, 394, 504, + 191, 181, 195, 39, -183, 401, 394, 3152, 355, + 117, 154, 69, -224, -252, 335, 504, 355, 3244 +}; + +static const ClassicDescMod classic_yaw00_lev3_p04(9, yaw00_prof_lev3_p04, yaw00_cov_lev3_p04); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P04_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p05.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p05.mh new file mode 100755 index 0000000..583aa14 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p05.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p05: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P05_MH +#define STASM_CLASSIC_YAW00_LEV3_P05_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p05[9] = +{ + 0.33661, 0.21192, -0.59383, -1.46726, -0.99156, 0.69795, 0.43083, 0.33122, 0.24603 +}; + +static const double yaw00_cov_lev3_p05[9*9] = +{ + 4241, 1048, 945, 935, 810, 338, 297, 205, 164, + 1048, 5539, -19, 1382, 1297, 556, 816, 656, 517, + 945, -19, 6432, -57, 2059, 763, 1063, 1018, 777, + 935, 1382, -57, 10000, 2144, 466, 262, 122, -143, + 810, 1297, 2059, 2144, 6731, 926, 639, 358, 27, + 338, 556, 763, 466, 926, 7765, 1302, 1607, 1002, + 297, 816, 1063, 262, 639, 1302, 9080, 308, 1305, + 205, 656, 1018, 122, 358, 1607, 308, 8937, 214, + 164, 517, 777, -143, 27, 1002, 1305, 214, 7235 +}; + +static const ClassicDescMod classic_yaw00_lev3_p05(9, yaw00_prof_lev3_p05, yaw00_cov_lev3_p05); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P05_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p06.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p06.mh new file mode 100755 index 0000000..1bfe23a --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p06.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p06: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P06_MH +#define STASM_CLASSIC_YAW00_LEV3_P06_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p06[9] = +{ + 0.46231, -0.00789, -0.96477, -1.65208, -0.50703, 0.77427, 0.46185, 0.4029, 0.30458 +}; + +static const double yaw00_cov_lev3_p06[9*9] = +{ + 3598, 431, 1017, 660, 570, 379, 314, 441, 596, + 431, 4796, -1131, 1016, 854, 519, 748, 1002, 887, + 1017, -1131, 8747, -397, 1601, 633, 748, 876, 989, + 660, 1016, -397, 10000, 1067, -671, -547, -662, -471, + 570, 854, 1601, 1067, 4268, 1554, 1110, 952, 719, + 379, 519, 633, -671, 1554, 7298, 1806, 2633, 1913, + 314, 748, 748, -547, 1110, 1806, 8032, 568, 2197, + 441, 1002, 876, -662, 952, 2633, 568, 9869, 219, + 596, 887, 989, -471, 719, 1913, 2197, 219, 9671 +}; + +static const ClassicDescMod classic_yaw00_lev3_p06(9, yaw00_prof_lev3_p06, yaw00_cov_lev3_p06); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P06_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p07.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p07.mh new file mode 100755 index 0000000..becb761 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p07.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p07: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P07_MH +#define STASM_CLASSIC_YAW00_LEV3_P07_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p07[9] = +{ + 0.25983, 0.04132, -0.799, -1.6218, -0.27162, 0.57408, 0.38317, 0.29786, 0.25716 +}; + +static const double yaw00_cov_lev3_p07[9*9] = +{ + 4820, 1110, 1075, 1151, 761, 305, 297, 227, 299, + 1110, 6285, 66, 1915, 1143, 665, 841, 679, 443, + 1075, 66, 7124, 1139, 1883, 899, 1020, 821, 443, + 1151, 1915, 1139, 10000, 1795, 624, 231, -65, -430, + 761, 1143, 1883, 1795, 6319, 1148, 1103, 643, 219, + 305, 665, 899, 624, 1148, 7832, 629, 1352, 974, + 297, 841, 1020, 231, 1103, 629, 8682, 126, 968, + 227, 679, 821, -65, 643, 1352, 126, 7613, 308, + 299, 443, 443, -430, 219, 974, 968, 308, 6725 +}; + +static const ClassicDescMod classic_yaw00_lev3_p07(9, yaw00_prof_lev3_p07, yaw00_cov_lev3_p07); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P07_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p08.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p08.mh new file mode 100755 index 0000000..27ba4fc --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p08.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p08: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P08_MH +#define STASM_CLASSIC_YAW00_LEV3_P08_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p08[9] = +{ + 0.25962, 0.1765, -0.37723, -0.69447, -0.59296, 0.14671, -0.02193, 0.11451, 0.22283 +}; + +static const double yaw00_cov_lev3_p08[9*9] = +{ + 2079, 721, 823, 92, 152, 215, 182, 143, 36, + 721, 3988, 715, 518, 189, 432, 217, 79, -27, + 823, 715, 7489, 1252, 417, 498, 135, -80, -198, + 92, 518, 1252, 10000, 362, 88, 10, -315, -417, + 152, 189, 417, 362, 2329, 47, 213, 91, 62, + 215, 432, 498, 88, 47, 2692, 338, 452, 324, + 182, 217, 135, 10, 213, 338, 3325, 290, 504, + 143, 79, -80, -315, 91, 452, 290, 3310, 322, + 36, -27, -198, -417, 62, 324, 504, 322, 3560 +}; + +static const ClassicDescMod classic_yaw00_lev3_p08(9, yaw00_prof_lev3_p08, yaw00_cov_lev3_p08); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P08_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p09.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p09.mh new file mode 100755 index 0000000..9c0ac8b --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p09.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p09: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P09_MH +#define STASM_CLASSIC_YAW00_LEV3_P09_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p09[9] = +{ + -0.06217, -0.12681, -0.38565, -0.82728, -0.87599, 0.05379, 0.081, 0.10606, 0.11478 +}; + +static const double yaw00_cov_lev3_p09[9*9] = +{ + 3158, 51, 759, 53, -6, -49, -30, -60, -7, + 51, 3642, 266, 4, 9, 19, -39, 101, 78, + 759, 266, 5688, 130, 11, -27, -43, -71, -125, + 53, 4, 130, 7373, -75, 53, -136, -162, -96, + -6, 9, 11, -75, 1163, 222, 442, 473, 532, + -49, 19, -27, 53, 222, 2880, 725, 796, 591, + -30, -39, -43, -136, 442, 725, 4860, 776, 700, + -60, 101, -71, -162, 473, 796, 776, 7177, 613, + -7, 78, -125, -96, 532, 591, 700, 613, 10000 +}; + +static const ClassicDescMod classic_yaw00_lev3_p09(9, yaw00_prof_lev3_p09, yaw00_cov_lev3_p09); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P09_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p10.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p10.mh new file mode 100755 index 0000000..fe09e5d --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p10.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p10: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P10_MH +#define STASM_CLASSIC_YAW00_LEV3_P10_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p10[9] = +{ + -0.17788, -0.65681, -0.90497, -1.07007, -0.7872, 0.21817, -0.00847, -0.04494, 0.05718 +}; + +static const double yaw00_cov_lev3_p10[9*9] = +{ + 4088, -1161, 961, 364, 181, 153, -28, -31, -73, + -1161, 6286, -1435, 539, 179, 68, 57, 59, 146, + 961, -1435, 10000, -933, 681, 81, 306, 405, 265, + 364, 539, -933, 8758, 540, 247, 427, 585, 537, + 181, 179, 681, 540, 1538, 359, 564, 594, 718, + 153, 68, 81, 247, 359, 2957, 841, 784, 819, + -28, 57, 306, 427, 564, 841, 4395, 843, 895, + -31, 59, 405, 585, 594, 784, 843, 5869, 630, + -73, 146, 265, 537, 718, 819, 895, 630, 9623 +}; + +static const ClassicDescMod classic_yaw00_lev3_p10(9, yaw00_prof_lev3_p10, yaw00_cov_lev3_p10); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P10_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p11.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p11.mh new file mode 100755 index 0000000..ed20430 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p11.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p11: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P11_MH +#define STASM_CLASSIC_YAW00_LEV3_P11_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p11[9] = +{ + -0.15438, -0.66019, -1.08854, -1.32905, -1.16432, 0.23162, 0.09544, 0.02005, 0.09313 +}; + +static const double yaw00_cov_lev3_p11[9*9] = +{ + 6977, -2356, 1249, 704, 332, 190, 285, 72, 51, + -2356, 9332, -2407, 1326, 720, 323, 217, 130, 168, + 1249, -2407, 10000, -1897, 835, 125, -70, 151, 206, + 704, 1326, -1897, 7259, 481, 32, -24, 196, 341, + 332, 720, 835, 481, 1710, 485, 528, 566, 799, + 190, 323, 125, 32, 485, 2217, 708, 567, 646, + 285, 217, -70, -24, 528, 708, 3327, 650, 796, + 72, 130, 151, 196, 566, 567, 650, 4497, 665, + 51, 168, 206, 341, 799, 646, 796, 665, 7274 +}; + +static const ClassicDescMod classic_yaw00_lev3_p11(9, yaw00_prof_lev3_p11, yaw00_cov_lev3_p11); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P11_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p12.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p12.mh new file mode 100755 index 0000000..3158073 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p12.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p12: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P12_MH +#define STASM_CLASSIC_YAW00_LEV3_P12_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p12[9] = +{ + -0.32851, -0.31747, -0.29189, -0.66703, -1.81602, 0.31131, 0.38936, 0.26688, 0.27026 +}; + +static const double yaw00_cov_lev3_p12[9*9] = +{ + 6345, 839, 930, 425, 463, 74, 180, 196, 92, + 839, 6296, 626, 932, 366, -55, -144, 50, 114, + 930, 626, 6769, 149, 349, -186, -98, -66, 71, + 425, 932, 149, 6440, 241, -181, -513, -272, 10, + 463, 366, 349, 241, 2164, 415, 565, 623, 885, + 74, -55, -186, -181, 415, 2705, 918, 1056, 1222, + 180, -144, -98, -513, 565, 918, 4578, 777, 1199, + 196, 50, -66, -272, 623, 1056, 777, 6749, 468, + 92, 114, 71, 10, 885, 1222, 1199, 468, 10000 +}; + +static const ClassicDescMod classic_yaw00_lev3_p12(9, yaw00_prof_lev3_p12, yaw00_cov_lev3_p12); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P12_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p13.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p13.mh new file mode 100755 index 0000000..e1f8f5a --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p13.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p13: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P13_MH +#define STASM_CLASSIC_YAW00_LEV3_P13_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p13[9] = +{ + -0.1982, -0.37183, -0.49019, -0.7714, -1.11668, -0.99757, -0.51194, -0.06444, 0.23618 +}; + +static const double yaw00_cov_lev3_p13[9*9] = +{ + 9222, -563, 498, 147, 341, 448, 529, 310, 339, + -563, 9881, -1134, 522, 648, 453, 344, 225, 158, + 498, -1134, 10000, 109, 916, 896, 604, 492, 390, + 147, 522, 109, 6179, 26, 627, 474, 344, 305, + 341, 648, 916, 26, 3870, 70, 420, 209, 239, + 448, 453, 896, 627, 70, 2885, -227, 241, 194, + 529, 344, 604, 474, 420, -227, 2567, -394, 95, + 310, 225, 492, 344, 209, 241, -394, 2956, -434, + 339, 158, 390, 305, 239, 194, 95, -434, 3185 +}; + +static const ClassicDescMod classic_yaw00_lev3_p13(9, yaw00_prof_lev3_p13, yaw00_cov_lev3_p13); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P13_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p14.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p14.mh new file mode 100755 index 0000000..faa82d8 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p14.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p14: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P14_MH +#define STASM_CLASSIC_YAW00_LEV3_P14_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p14[9] = +{ + -0.26673, -0.32334, -0.55261, -0.77583, -1.11214, -1.30199, -1.09769, -0.63115, -0.15321 +}; + +static const double yaw00_cov_lev3_p14[9*9] = +{ + 7963, -1138, 513, 414, 754, 605, 443, 365, 171, + -1138, 10000, -2073, 631, 686, 731, 518, 410, 199, + 513, -2073, 8682, -1050, 700, 647, 634, 545, 225, + 414, 631, -1050, 6663, -906, 572, 446, 466, 206, + 754, 686, 700, -906, 4970, -376, 745, 419, 270, + 605, 731, 647, 572, -376, 3194, -447, 522, 154, + 443, 518, 634, 446, 745, -447, 2831, -647, 200, + 365, 410, 545, 466, 419, 522, -647, 3114, -798, + 171, 199, 225, 206, 270, 154, 200, -798, 2964 +}; + +static const ClassicDescMod classic_yaw00_lev3_p14(9, yaw00_prof_lev3_p14, yaw00_cov_lev3_p14); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P14_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p15.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p15.mh new file mode 100755 index 0000000..d6dc26f --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p15.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p15: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P15_MH +#define STASM_CLASSIC_YAW00_LEV3_P15_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p15[9] = +{ + -0.17557, -0.29382, -0.40847, -0.64044, -0.97483, -1.14679, -0.79171, -0.27868, 0.10409 +}; + +static const double yaw00_cov_lev3_p15[9*9] = +{ + 9632, 99, 187, 677, 588, 657, 435, 240, 238, + 99, 10000, -81, 222, 678, 610, 526, 336, 231, + 187, -81, 9171, 27, 537, 665, 616, 457, 322, + 677, 222, 27, 6570, 62, 646, 488, 460, 333, + 588, 678, 537, 62, 4023, 26, 354, 289, 276, + 657, 610, 665, 646, 26, 2834, -20, 179, 162, + 435, 526, 616, 488, 354, -20, 2278, -280, 106, + 240, 336, 457, 460, 289, 179, -280, 2417, -326, + 238, 231, 322, 333, 276, 162, 106, -326, 2522 +}; + +static const ClassicDescMod classic_yaw00_lev3_p15(9, yaw00_prof_lev3_p15, yaw00_cov_lev3_p15); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P15_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p16.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p16.mh new file mode 100755 index 0000000..29b4837 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p16.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p16: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P16_MH +#define STASM_CLASSIC_YAW00_LEV3_P16_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p16[9] = +{ + 0.40966, -0.54886, -0.97142, -0.75671, -0.03735, 1.81206, -0.03249, -0.57674, -0.73251 +}; + +static const double yaw00_cov_lev3_p16[9*9] = +{ + 5537, -339, 2420, 1330, 877, 913, 480, -494, -19, + -339, 4898, 2582, 3084, 2025, 1440, 848, 266, 278, + 2420, 2582, 9871, 4900, 3554, 2490, 1895, 929, 900, + 1330, 3084, 4900, 9814, 4133, 2534, 1965, 746, 727, + 877, 2025, 3554, 4133, 5867, 3935, 1776, 42, 160, + 913, 1440, 2490, 2534, 3935, 5847, 1896, -804, -230, + 480, 848, 1895, 1965, 1776, 1896, 6420, -676, 345, + -494, 266, 929, 746, 42, -804, -676, 10000, 425, + -19, 278, 900, 727, 160, -230, 345, 425, 5473 +}; + +static const ClassicDescMod classic_yaw00_lev3_p16(9, yaw00_prof_lev3_p16, yaw00_cov_lev3_p16); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P16_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p17.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p17.mh new file mode 100755 index 0000000..a4515f9 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p17.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p17: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P17_MH +#define STASM_CLASSIC_YAW00_LEV3_P17_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p17[9] = +{ + -0.95777, -0.85597, 0.80833, 0.36533, -0.60616, 1.26426, -0.14624, -0.34013, -0.32671 +}; + +static const double yaw00_cov_lev3_p17[9*9] = +{ + 6278, 3027, 2526, 2270, 1740, 1122, 677, 706, 224, + 3027, 4009, 2562, 3001, 1982, 1488, 762, 569, 443, + 2526, 2562, 3867, 3439, 2381, 2066, 833, 367, 545, + 2270, 3001, 3439, 5015, 3216, 2381, 565, 296, 621, + 1740, 1982, 2381, 3216, 4437, 2429, 916, 240, 512, + 1122, 1488, 2066, 2381, 2429, 6204, -53, -46, 345, + 677, 762, 833, 565, 916, -53, 10000, -168, 634, + 706, 569, 367, 296, 240, -46, -168, 9504, 196, + 224, 443, 545, 621, 512, 345, 634, 196, 6264 +}; + +static const ClassicDescMod classic_yaw00_lev3_p17(9, yaw00_prof_lev3_p17, yaw00_cov_lev3_p17); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P17_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p18.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p18.mh new file mode 100755 index 0000000..6322405 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p18.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p18: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P18_MH +#define STASM_CLASSIC_YAW00_LEV3_P18_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p18[9] = +{ + -0.16881, -0.02518, 0.26775, 0.40132, 0.22951, -0.26116, -0.34458, 0.98319, 0.89904 +}; + +static const double yaw00_cov_lev3_p18[9*9] = +{ + 9201, -506, 719, 1593, 1110, 290, -497, -745, -585, + -506, 6838, -89, 1332, 777, 103, -421, -796, -406, + 719, -89, 5129, 1011, 932, 161, -395, -668, -347, + 1593, 1332, 1011, 6806, 1605, 772, 184, -628, -295, + 1110, 777, 932, 1605, 9064, 2912, 1724, 1068, 676, + 290, 103, 161, 772, 2912, 10000, 4091, 2576, 1497, + -497, -421, -395, 184, 1724, 4091, 5453, 2428, 2229, + -745, -796, -668, -628, 1068, 2576, 2428, 6957, 3758, + -585, -406, -347, -295, 676, 1497, 2229, 3758, 9817 +}; + +static const ClassicDescMod classic_yaw00_lev3_p18(9, yaw00_prof_lev3_p18, yaw00_cov_lev3_p18); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P18_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p19.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p19.mh new file mode 100755 index 0000000..e389192 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p19.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p19: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P19_MH +#define STASM_CLASSIC_YAW00_LEV3_P19_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p19[9] = +{ + 0.25694, 0.20027, -0.34396, -1.19645, 1.08254, -0.89305, -0.48712, 0.9684, 0.9766 +}; + +static const double yaw00_cov_lev3_p19[9*9] = +{ + 7518, -667, -19, -78, 145, 24, 297, 409, 359, + -667, 10000, -855, -63, 392, 169, 270, 652, 569, + -19, -855, 4845, 2219, 1648, 1621, 1550, 955, 319, + -78, -63, 2219, 3751, 1634, 1700, 1223, 812, 405, + 145, 392, 1648, 1634, 3355, 1963, 1570, 1345, 1177, + 24, 169, 1621, 1700, 1963, 3698, 2138, 1795, 1240, + 297, 270, 1550, 1223, 1570, 2138, 2240, 1465, 1547, + 409, 652, 955, 812, 1345, 1795, 1465, 2914, 2091, + 359, 569, 319, 405, 1177, 1240, 1547, 2091, 4954 +}; + +static const ClassicDescMod classic_yaw00_lev3_p19(9, yaw00_prof_lev3_p19, yaw00_cov_lev3_p19); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P19_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p20.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p20.mh new file mode 100755 index 0000000..241166e --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p20.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p20: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P20_MH +#define STASM_CLASSIC_YAW00_LEV3_P20_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p20[9] = +{ + 0.15026, 0.14935, -0.57526, -2.09163, 0.67556, -0.33445, -0.1121, 0.82629, 0.77837 +}; + +static const double yaw00_cov_lev3_p20[9*9] = +{ + 9040, -1203, 301, -256, -173, -490, -157, 159, 257, + -1203, 10000, -1081, -62, -36, 3, -134, 178, 558, + 301, -1081, 3489, 1732, 1467, 1359, 1315, 979, 775, + -256, -62, 1732, 2435, 1174, 1304, 1073, 828, 714, + -173, -36, 1467, 1174, 2157, 1622, 1202, 1079, 1131, + -490, 3, 1359, 1304, 1622, 3073, 1738, 1626, 1287, + -157, -134, 1315, 1073, 1202, 1738, 1947, 1347, 1309, + 159, 178, 979, 828, 1079, 1626, 1347, 2561, 1751, + 257, 558, 775, 714, 1131, 1287, 1309, 1751, 3893 +}; + +static const ClassicDescMod classic_yaw00_lev3_p20(9, yaw00_prof_lev3_p20, yaw00_cov_lev3_p20); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P20_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p21.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p21.mh new file mode 100755 index 0000000..c939b6b --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p21.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p21: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P21_MH +#define STASM_CLASSIC_YAW00_LEV3_P21_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p21[9] = +{ + 0.29962, 0.34398, -0.17873, -1.85505, -1.20107, -0.30789, 0.01002, 0.52659, 0.5726 +}; + +static const double yaw00_cov_lev3_p21[9*9] = +{ + 9753, -939, 227, -860, -702, -447, -111, 199, 655, + -939, 10000, -1065, -68, -290, 95, 62, 209, 295, + 227, -1065, 6233, 14, 1261, 858, 1207, 948, 630, + -860, -68, 14, 4301, 1522, 1159, 1117, 874, 359, + -702, -290, 1261, 1522, 3204, 711, 737, 621, 537, + -447, 95, 858, 1159, 711, 3547, 608, 926, 889, + -111, 62, 1207, 1117, 737, 608, 4067, 500, 766, + 199, 209, 948, 874, 621, 926, 500, 5668, 901, + 655, 295, 630, 359, 537, 889, 766, 901, 7089 +}; + +static const ClassicDescMod classic_yaw00_lev3_p21(9, yaw00_prof_lev3_p21, yaw00_cov_lev3_p21); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P21_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p22.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p22.mh new file mode 100755 index 0000000..f7604ea --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p22.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p22: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P22_MH +#define STASM_CLASSIC_YAW00_LEV3_P22_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p22[9] = +{ + 0.25904, 0.27477, -0.41948, -2.52664, -0.42588, 0.09501, 0.16598, 0.50912, 0.67741 +}; + +static const double yaw00_cov_lev3_p22[9*9] = +{ + 9319, -1145, 117, -748, -397, -338, -297, 171, 473, + -1145, 10000, -869, 94, 60, 407, 312, 383, 489, + 117, -869, 4185, 1149, 1438, 1082, 1306, 985, 556, + -748, 94, 1149, 3179, 1561, 1076, 1042, 736, 287, + -397, 60, 1438, 1561, 2235, 1229, 957, 752, 573, + -338, 407, 1082, 1076, 1229, 3982, 1622, 1243, 1247, + -297, 312, 1306, 1042, 957, 1622, 3605, 1285, 1099, + 171, 383, 985, 736, 752, 1243, 1285, 3496, 1271, + 473, 489, 556, 287, 573, 1247, 1099, 1271, 4955 +}; + +static const ClassicDescMod classic_yaw00_lev3_p22(9, yaw00_prof_lev3_p22, yaw00_cov_lev3_p22); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P22_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p23.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p23.mh new file mode 100755 index 0000000..d1805d4 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p23.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p23: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P23_MH +#define STASM_CLASSIC_YAW00_LEV3_P23_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p23[9] = +{ + 0.16156, 0.05849, 0.10182, -0.20769, -2.14022, 0.52674, -0.20587, -0.71853, 0.7093 +}; + +static const double yaw00_cov_lev3_p23[9*9] = +{ + 8862, -712, 93, -653, -511, -185, -317, -68, 107, + -712, 9837, -494, 244, -457, -86, -240, -202, -88, + 93, -494, 10000, -475, -320, -66, -245, -280, -108, + -653, 244, -475, 5373, 231, 647, 374, 496, 263, + -511, -457, -320, 231, 2678, 943, 725, 459, 282, + -185, -86, -66, 647, 943, 1716, 1178, 605, 357, + -317, -240, -245, 374, 725, 1178, 1935, 931, 739, + -68, -202, -280, 496, 459, 605, 931, 1031, 388, + 107, -88, -108, 263, 282, 357, 739, 388, 1041 +}; + +static const ClassicDescMod classic_yaw00_lev3_p23(9, yaw00_prof_lev3_p23, yaw00_cov_lev3_p23); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P23_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p24.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p24.mh new file mode 100755 index 0000000..e6ae4e0 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p24.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p24: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P24_MH +#define STASM_CLASSIC_YAW00_LEV3_P24_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p24[9] = +{ + 0.22056, 0.30398, 0.40184, 0.29338, -0.93734, 0.45303, -0.18698, -1.04266, 0.80476 +}; + +static const double yaw00_cov_lev3_p24[9*9] = +{ + 5829, -346, 664, 1109, 1094, 818, 872, 512, 255, + -346, 6418, 99, 582, 879, 513, 631, 446, 384, + 664, 99, 7233, 430, 464, 638, 640, 554, 361, + 1109, 582, 430, 10000, 8, 767, 742, 699, 617, + 1094, 879, 464, 8, 6907, 2708, 2224, 1777, 948, + 818, 513, 638, 767, 2708, 5068, 2970, 1687, 933, + 872, 631, 640, 742, 2224, 2970, 4977, 2602, 1835, + 512, 446, 554, 699, 1777, 1687, 2602, 3072, 1164, + 255, 384, 361, 617, 948, 933, 1835, 1164, 2682 +}; + +static const ClassicDescMod classic_yaw00_lev3_p24(9, yaw00_prof_lev3_p24, yaw00_cov_lev3_p24); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P24_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p25.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p25.mh new file mode 100755 index 0000000..207f897 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p25.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p25: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P25_MH +#define STASM_CLASSIC_YAW00_LEV3_P25_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p25[9] = +{ + -0.63685, -0.9396, -0.86617, 0.48067, -0.30844, -0.41788, -0.42389, -0.11839, 0.11356 +}; + +static const double yaw00_cov_lev3_p25[9*9] = +{ + 10000, 3135, 2430, 1485, 822, 413, 32, -261, -546, + 3135, 8367, 2486, 1528, 1005, -22, -223, -306, -623, + 2430, 2486, 5515, 1631, 1665, -181, -545, -531, -774, + 1485, 1528, 1631, 5251, 1904, 138, -366, -525, -582, + 822, 1005, 1665, 1904, 8639, 801, 216, 143, 210, + 413, -22, -181, 138, 801, 5266, 789, 793, 903, + 32, -223, -545, -366, 216, 789, 3607, 43, 615, + -261, -306, -531, -525, 143, 793, 43, 3949, -239, + -546, -623, -774, -582, 210, 903, 615, -239, 5711 +}; + +static const ClassicDescMod classic_yaw00_lev3_p25(9, yaw00_prof_lev3_p25, yaw00_cov_lev3_p25); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P25_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p26.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p26.mh new file mode 100755 index 0000000..05a9d55 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p26.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p26: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P26_MH +#define STASM_CLASSIC_YAW00_LEV3_P26_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p26[9] = +{ + -0.57663, -1.02601, -0.98918, 0.54231, 0.52009, -0.88916, 1.09953, 0.16008, -0.25594 +}; + +static const double yaw00_cov_lev3_p26[9*9] = +{ + 10000, 2945, 2806, 2567, 1728, 1452, 0, -321, 379, + 2945, 7551, 3152, 2545, 1858, 1468, 285, -113, 713, + 2806, 3152, 3944, 2309, 2384, 1610, 1037, 794, 715, + 2567, 2545, 2309, 3382, 2826, 1889, 1494, 1395, 527, + 1728, 1858, 2384, 2826, 4622, 2367, 1995, 1315, 147, + 1452, 1468, 1610, 1889, 2367, 4306, 2124, 1681, 493, + 0, 285, 1037, 1494, 1995, 2124, 4686, 1703, -44, + -321, -113, 794, 1395, 1315, 1681, 1703, 5483, -676, + 379, 713, 715, 527, 147, 493, -44, -676, 9102 +}; + +static const ClassicDescMod classic_yaw00_lev3_p26(9, yaw00_prof_lev3_p26, yaw00_cov_lev3_p26); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P26_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p27.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p27.mh new file mode 100755 index 0000000..377a23b --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p27.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p27: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P27_MH +#define STASM_CLASSIC_YAW00_LEV3_P27_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p27[9] = +{ + 0.07089, -0.30701, -0.25342, 0.41966, 0.05051, -0.9909, 1.04406, 1.40174, 0.55463 +}; + +static const double yaw00_cov_lev3_p27[9*9] = +{ + 7028, -40, 951, 642, 278, 318, 291, 357, 438, + -40, 7110, 1309, 1093, 996, 1172, 302, 33, -211, + 951, 1309, 6309, 2773, 2725, 2446, 1198, 437, 651, + 642, 1093, 2773, 6397, 3871, 3083, 1778, 1492, 2029, + 278, 996, 2725, 3871, 8001, 3719, 2388, 2000, 2255, + 318, 1172, 2446, 3083, 3719, 7899, 2942, 2431, 1502, + 291, 302, 1198, 1778, 2388, 2942, 7715, 4990, 4885, + 357, 33, 437, 1492, 2000, 2431, 4990, 8106, 3226, + 438, -211, 651, 2029, 2255, 1502, 4885, 3226, 10000 +}; + +static const ClassicDescMod classic_yaw00_lev3_p27(9, yaw00_prof_lev3_p27, yaw00_cov_lev3_p27); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P27_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p28.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p28.mh new file mode 100755 index 0000000..6d38e7c --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p28.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p28: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P28_MH +#define STASM_CLASSIC_YAW00_LEV3_P28_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p28[9] = +{ + 0.35091, -0.12035, -0.87507, -0.71931, 0.40304, 0.70711, 0.08712, 0.69226, 1.00729 +}; + +static const double yaw00_cov_lev3_p28[9*9] = +{ + 8079, 113, 880, 764, 679, 843, 428, 586, 617, + 113, 9360, 324, 1328, 971, 793, 425, 175, 564, + 880, 324, 9643, 4087, 2237, 1494, 1398, 1119, 485, + 764, 1328, 4087, 7944, 3965, 2883, 2465, 1928, 254, + 679, 971, 2237, 3965, 7679, 5679, 3830, 2856, 1445, + 843, 793, 1494, 2883, 5679, 8922, 5105, 3998, 2675, + 428, 425, 1398, 2465, 3830, 5105, 8506, 3869, 4246, + 586, 175, 1119, 1928, 2856, 3998, 3869, 6877, 3595, + 617, 564, 485, 254, 1445, 2675, 4246, 3595, 10000 +}; + +static const ClassicDescMod classic_yaw00_lev3_p28(9, yaw00_prof_lev3_p28, yaw00_cov_lev3_p28); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P28_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p29.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p29.mh new file mode 100755 index 0000000..31b59e6 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p29.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p29: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P29_MH +#define STASM_CLASSIC_YAW00_LEV3_P29_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p29[9] = +{ + -0.1541, -1.17497, -0.73208, -0.59891, -0.2699, 0.67665, 0.41527, -0.02719, -0.22124 +}; + +static const double yaw00_cov_lev3_p29[9*9] = +{ + 5295, 832, 3099, 2207, 1720, 979, 760, 591, 420, + 832, 7114, 3022, 3128, 2204, 487, 687, 933, 561, + 3099, 3022, 9091, 4987, 3768, 2065, 2234, 2247, 1744, + 2207, 3128, 4987, 10000, 5211, 3444, 3235, 2968, 2144, + 1720, 2204, 3768, 5211, 7514, 3847, 3380, 2968, 1896, + 979, 487, 2065, 3444, 3847, 6154, 3237, 2689, 1516, + 760, 687, 2234, 3235, 3380, 3237, 5938, 2334, 1920, + 591, 933, 2247, 2968, 2968, 2689, 2334, 5993, 1448, + 420, 561, 1744, 2144, 1896, 1516, 1920, 1448, 5292 +}; + +static const ClassicDescMod classic_yaw00_lev3_p29(9, yaw00_prof_lev3_p29, yaw00_cov_lev3_p29); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P29_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p30.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p30.mh new file mode 100755 index 0000000..27c643b --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p30.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p30: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P30_MH +#define STASM_CLASSIC_YAW00_LEV3_P30_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p30[9] = +{ + 0.52697, 0.88612, -0.29274, -1.16989, -0.52299, -0.24833, -1.14656, -0.1616, 0.2344 +}; + +static const double yaw00_cov_lev3_p30[9*9] = +{ + 9358, 1432, 3292, -49, 604, -36, -811, -531, -313, + 1432, 8111, -483, 2384, -417, -45, -1126, -883, -585, + 3292, -483, 7086, 1524, 2384, 968, 81, 187, -350, + -49, 2384, 1524, 10000, 2789, 2094, 1131, 373, -36, + 604, -417, 2384, 2789, 7345, 2363, 2436, 1559, 931, + -36, -45, 968, 2094, 2363, 6692, 2792, 1912, 1208, + -811, -1126, 81, 1131, 2436, 2792, 6218, 2691, 1537, + -531, -883, 187, 373, 1559, 1912, 2691, 4399, 1604, + -313, -585, -350, -36, 931, 1208, 1537, 1604, 4431 +}; + +static const ClassicDescMod classic_yaw00_lev3_p30(9, yaw00_prof_lev3_p30, yaw00_cov_lev3_p30); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P30_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p31.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p31.mh new file mode 100755 index 0000000..1c57454 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p31.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p31: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P31_MH +#define STASM_CLASSIC_YAW00_LEV3_P31_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p31[9] = +{ + 0.02957, -0.46443, -0.82016, -0.97621, -1.12365, 0.66605, 0.35463, 1.18231, 1.06023 +}; + +static const double yaw00_cov_lev3_p31[9*9] = +{ + 7712, -1348, 680, 665, 620, 840, 257, -21, 202, + -1348, 10000, 1284, 1673, 1548, 1110, 960, 463, 444, + 680, 1284, 5950, 2647, 1965, 1227, 1169, 429, 542, + 665, 1673, 2647, 5400, 3222, 1958, 1501, 551, 514, + 620, 1548, 1965, 3222, 3887, 2166, 1635, 708, 820, + 840, 1110, 1227, 1958, 2166, 3122, 1959, 1149, 1423, + 257, 960, 1169, 1501, 1635, 1959, 3176, 1464, 1672, + -21, 463, 429, 551, 708, 1149, 1464, 2095, 1582, + 202, 444, 542, 514, 820, 1423, 1672, 1582, 2899 +}; + +static const ClassicDescMod classic_yaw00_lev3_p31(9, yaw00_prof_lev3_p31, yaw00_cov_lev3_p31); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P31_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p32.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p32.mh new file mode 100755 index 0000000..d4846a2 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p32.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p32: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P32_MH +#define STASM_CLASSIC_YAW00_LEV3_P32_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p32[9] = +{ + 0.03076, -0.42151, -0.61554, -1.14196, -0.95133, 1.37202, -0.10194, 0.30233, 0.93868 +}; + +static const double yaw00_cov_lev3_p32[9*9] = +{ + 7182, -696, 1159, 424, 1375, 1205, 1078, 717, 398, + -696, 10000, 1941, 2126, 2475, 1256, 1618, 1087, 773, + 1159, 1941, 8106, 4333, 3725, 2056, 2546, 1513, 1020, + 424, 2126, 4333, 7161, 5119, 3340, 3317, 1933, 1246, + 1375, 2475, 3725, 5119, 5792, 3336, 3357, 1835, 1311, + 1205, 1256, 2056, 3340, 3336, 4753, 3360, 1926, 1607, + 1078, 1618, 2546, 3317, 3357, 3360, 4416, 2306, 1862, + 717, 1087, 1513, 1933, 1835, 1926, 2306, 1974, 1374, + 398, 773, 1020, 1246, 1311, 1607, 1862, 1374, 2301 +}; + +static const ClassicDescMod classic_yaw00_lev3_p32(9, yaw00_prof_lev3_p32, yaw00_cov_lev3_p32); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P32_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p33.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p33.mh new file mode 100755 index 0000000..e70df0a --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p33.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p33: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P33_MH +#define STASM_CLASSIC_YAW00_LEV3_P33_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p33[9] = +{ + 0.50329, 0.0823, -0.53741, -1.0276, -1.39374, 1.33168, 0.46261, -0.34625, 0.33574 +}; + +static const double yaw00_cov_lev3_p33[9*9] = +{ + 4320, 1820, 703, 216, 544, 771, 243, 82, 178, + 1820, 7031, 1157, 747, 1849, 1654, 989, 695, 547, + 703, 1157, 9709, 4631, 4586, 2290, 2188, 1529, 730, + 216, 747, 4631, 10000, 7187, 3924, 3066, 2096, 784, + 544, 1849, 4586, 7187, 8379, 4080, 3435, 2215, 1000, + 771, 1654, 2290, 3924, 4080, 5446, 3933, 1829, 1400, + 243, 989, 2188, 3066, 3435, 3933, 5535, 2963, 2036, + 82, 695, 1529, 2096, 2215, 1829, 2963, 3860, 1901, + 178, 547, 730, 784, 1000, 1400, 2036, 1901, 3739 +}; + +static const ClassicDescMod classic_yaw00_lev3_p33(9, yaw00_prof_lev3_p33, yaw00_cov_lev3_p33); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P33_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p34.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p34.mh new file mode 100755 index 0000000..0da96fc --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p34.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p34: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P34_MH +#define STASM_CLASSIC_YAW00_LEV3_P34_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p34[9] = +{ + -0.84271, -0.36265, -0.62488, -0.2277, 0.66681, 0.40182, 0.66767, 0.06157, -0.50681 +}; + +static const double yaw00_cov_lev3_p34[9*9] = +{ + 7508, 3109, 3635, 1823, 1941, 1596, 955, 456, 772, + 3109, 8979, 5810, 3803, 4012, 3291, 2125, 376, 625, + 3635, 5810, 9921, 5028, 5129, 4458, 2899, 472, 582, + 1823, 3803, 5028, 6946, 4490, 3378, 2568, 636, 641, + 1941, 4012, 5129, 4490, 9171, 4383, 3130, 132, 458, + 1596, 3291, 4458, 3378, 4383, 9319, 3622, 1481, 792, + 955, 2125, 2899, 2568, 3130, 3622, 10000, 653, 1173, + 456, 376, 472, 636, 132, 1481, 653, 7798, 352, + 772, 625, 582, 641, 458, 792, 1173, 352, 6265 +}; + +static const ClassicDescMod classic_yaw00_lev3_p34(9, yaw00_prof_lev3_p34, yaw00_cov_lev3_p34); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P34_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p35.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p35.mh new file mode 100755 index 0000000..38d10d2 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p35.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p35: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P35_MH +#define STASM_CLASSIC_YAW00_LEV3_P35_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p35[9] = +{ + -0.88846, -0.08785, -0.73655, -0.74954, 1.65208, 0.91599, 0.57784, 0.2018, -0.12183 +}; + +static const double yaw00_cov_lev3_p35[9*9] = +{ + 992, 665, 877, 485, 323, 308, 77, -171, -257, + 665, 1328, 1444, 910, 883, 863, 431, 51, -289, + 877, 1444, 2859, 1951, 1636, 1352, 615, 325, 58, + 485, 910, 1951, 2187, 1364, 1218, 501, 338, 222, + 323, 883, 1636, 1364, 3084, 2544, 1497, 768, 246, + 308, 863, 1352, 1218, 2544, 4475, 1687, 563, 695, + 77, 431, 615, 501, 1497, 1687, 6430, 407, 783, + -171, 51, 325, 338, 768, 563, 407, 10000, -2016, + -257, -289, 58, 222, 246, 695, 783, -2016, 8552 +}; + +static const ClassicDescMod classic_yaw00_lev3_p35(9, yaw00_prof_lev3_p35, yaw00_cov_lev3_p35); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P35_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p36.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p36.mh new file mode 100755 index 0000000..bbda4ea --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p36.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p36: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P36_MH +#define STASM_CLASSIC_YAW00_LEV3_P36_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p36[9] = +{ + -0.70362, 0.12835, -1.00524, -0.1152, 1.65218, 0.65242, 0.56675, 0.19671, -0.26938 +}; + +static const double yaw00_cov_lev3_p36[9*9] = +{ + 1203, 882, 1139, 567, 475, 239, 12, 245, 175, + 882, 2031, 2033, 1349, 1416, 868, 407, 461, 398, + 1139, 2033, 3842, 2465, 2171, 1027, 391, 311, 671, + 567, 1349, 2465, 2926, 2206, 1121, 606, 724, 475, + 475, 1416, 2171, 2206, 4557, 2391, 1291, 450, 170, + 239, 868, 1027, 1121, 2391, 6057, 1688, 963, 490, + 12, 407, 391, 606, 1291, 1688, 8894, -93, 1485, + 245, 461, 311, 724, 450, 963, -93, 10000, -1564, + 175, 398, 671, 475, 170, 490, 1485, -1564, 6907 +}; + +static const ClassicDescMod classic_yaw00_lev3_p36(9, yaw00_prof_lev3_p36, yaw00_cov_lev3_p36); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P36_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p37.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p37.mh new file mode 100755 index 0000000..ebfa044 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p37.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p37: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P37_MH +#define STASM_CLASSIC_YAW00_LEV3_P37_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p37[9] = +{ + 0.30132, 0.28238, 0.2925, -0.36964, -0.55929, -1.35118, 0.12932, 0.68802, -0.15491 +}; + +static const double yaw00_cov_lev3_p37[9*9] = +{ + 3574, 2493, 1549, 1249, 681, 436, 534, 445, 457, + 2493, 6095, 3769, 2153, 1214, 707, 930, 352, 431, + 1549, 3769, 9314, 2795, 1948, 1053, 1472, 543, 542, + 1249, 2153, 2795, 10000, 2034, 899, 1252, 485, 633, + 681, 1214, 1948, 2034, 7828, 2146, 1330, 1012, 593, + 436, 707, 1053, 899, 2146, 6314, 3252, 1993, 1179, + 534, 930, 1472, 1252, 1330, 3252, 4264, 2646, 1216, + 445, 352, 543, 485, 1012, 1993, 2646, 3664, 1432, + 457, 431, 542, 633, 593, 1179, 1216, 1432, 1783 +}; + +static const ClassicDescMod classic_yaw00_lev3_p37(9, yaw00_prof_lev3_p37, yaw00_cov_lev3_p37); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P37_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p38.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p38.mh new file mode 100755 index 0000000..83274f6 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p38.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p38: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P38_MH +#define STASM_CLASSIC_YAW00_LEV3_P38_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p38[9] = +{ + 0.25106, -0.22807, -1.2205, -0.54882, 0.60947, 1.50668, 0.31759, 0.50429, 0.80396 +}; + +static const double yaw00_cov_lev3_p38[9*9] = +{ + 4905, 943, 899, 690, 1064, 1035, 795, 881, 578, + 943, 5853, 2472, 2543, 2542, 2269, 2223, 1176, 562, + 899, 2472, 7017, 4549, 3406, 3164, 2841, 928, -445, + 690, 2543, 4549, 7675, 4580, 4592, 3780, 1612, -209, + 1064, 2542, 3406, 4580, 8131, 7015, 5363, 3024, 1142, + 1035, 2269, 3164, 4592, 7015, 10000, 6494, 4509, 1685, + 795, 2223, 2841, 3780, 5363, 6494, 9639, 3839, 2469, + 881, 1176, 928, 1612, 3024, 4509, 3839, 8919, 2797, + 578, 562, -445, -209, 1142, 1685, 2469, 2797, 9210 +}; + +static const ClassicDescMod classic_yaw00_lev3_p38(9, yaw00_prof_lev3_p38, yaw00_cov_lev3_p38); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P38_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p39.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p39.mh new file mode 100755 index 0000000..04f8c8e --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p39.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p39: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P39_MH +#define STASM_CLASSIC_YAW00_LEV3_P39_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p39[9] = +{ + 0.30135, -0.18199, -0.85464, -0.37208, -0.52201, 0.6877, 0.91984, 0.3106, 0.66777 +}; + +static const double yaw00_cov_lev3_p39[9*9] = +{ + 4269, 98, 1079, 641, 419, 560, 346, 528, 228, + 98, 5881, 822, 1564, 807, 1240, 957, 1051, 566, + 1079, 822, 7382, 3406, 2764, 2581, 2674, 2479, 1150, + 641, 1564, 3406, 6980, 4003, 2932, 3800, 2946, 1340, + 419, 807, 2764, 4003, 7661, 3971, 4475, 3824, 1895, + 560, 1240, 2581, 2932, 3971, 7971, 6013, 4319, 2499, + 346, 957, 2674, 3800, 4475, 6013, 10000, 5705, 3711, + 528, 1051, 2479, 2946, 3824, 4319, 5705, 8766, 2855, + 228, 566, 1150, 1340, 1895, 2499, 3711, 2855, 7107 +}; + +static const ClassicDescMod classic_yaw00_lev3_p39(9, yaw00_prof_lev3_p39, yaw00_cov_lev3_p39); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P39_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p40.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p40.mh new file mode 100755 index 0000000..0a794ae --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p40.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p40: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P40_MH +#define STASM_CLASSIC_YAW00_LEV3_P40_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p40[9] = +{ + -0.73484, -0.42707, -0.30117, 0.48054, 0.89764, 0.21019, 0.57516, 1.16636, 0.02197 +}; + +static const double yaw00_cov_lev3_p40[9*9] = +{ + 7110, 3169, 2394, 2182, 2263, 2192, 1117, 27, 16, + 3169, 6870, 3659, 2393, 3263, 2613, 1601, 332, -119, + 2394, 3659, 7143, 3687, 4558, 3680, 2293, 911, -593, + 2182, 2393, 3687, 6827, 5467, 4031, 2974, 1600, 152, + 2263, 3263, 4558, 5467, 10000, 5122, 3888, 1912, -656, + 2192, 2613, 3680, 4031, 5122, 9922, 3742, 2896, 816, + 1117, 1601, 2293, 2974, 3888, 3742, 9937, 3545, 2721, + 27, 332, 911, 1600, 1912, 2896, 3545, 9137, 789, + 16, -119, -593, 152, -656, 816, 2721, 789, 6674 +}; + +static const ClassicDescMod classic_yaw00_lev3_p40(9, yaw00_prof_lev3_p40, yaw00_cov_lev3_p40); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P40_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p41.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p41.mh new file mode 100755 index 0000000..fb5f717 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p41.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p41: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P41_MH +#define STASM_CLASSIC_YAW00_LEV3_P41_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p41[9] = +{ + -0.23444, -1.18062, -0.66432, -0.27269, -0.95921, 1.24075, 1.1159, 0.662, 0.26795 +}; + +static const double yaw00_cov_lev3_p41[9*9] = +{ + 4424, 1788, 2059, 1374, 1430, 917, 1004, 1329, 674, + 1788, 2951, 2128, 2150, 1922, 1450, 1518, 1510, 755, + 2059, 2128, 2778, 2505, 2084, 1805, 2031, 1857, 712, + 1374, 2150, 2505, 4308, 3136, 2829, 2818, 2263, 1157, + 1430, 1922, 2084, 3136, 3795, 2953, 3031, 2139, 1258, + 917, 1450, 1805, 2829, 2953, 4579, 4160, 3010, 1695, + 1004, 1518, 2031, 2818, 3031, 4160, 6044, 3400, 1268, + 1329, 1510, 1857, 2263, 2139, 3010, 3400, 7512, 1088, + 674, 755, 712, 1157, 1258, 1695, 1268, 1088, 10000 +}; + +static const ClassicDescMod classic_yaw00_lev3_p41(9, yaw00_prof_lev3_p41, yaw00_cov_lev3_p41); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P41_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p42.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p42.mh new file mode 100755 index 0000000..326e9d0 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p42.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p42: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P42_MH +#define STASM_CLASSIC_YAW00_LEV3_P42_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p42[9] = +{ + -0.15385, -0.8136, -0.01407, 0.08933, -1.59383, 0.88949, 1.25323, 0.63057, 0.41361 +}; + +static const double yaw00_cov_lev3_p42[9*9] = +{ + 4218, 1519, 1395, 667, 929, 370, 163, 245, 263, + 1519, 2471, 1697, 1701, 1437, 1184, 1205, 1063, 896, + 1395, 1697, 2260, 2164, 1676, 1631, 1817, 1578, 1223, + 667, 1701, 2164, 3477, 2510, 2505, 2640, 2114, 1745, + 929, 1437, 1676, 2510, 3551, 2382, 2440, 1653, 1331, + 370, 1184, 1631, 2505, 2382, 4158, 3957, 3081, 2561, + 163, 1205, 1817, 2640, 2440, 3957, 5638, 3758, 2515, + 245, 1063, 1578, 2114, 1653, 3081, 3758, 6428, 2100, + 263, 896, 1223, 1745, 1331, 2561, 2515, 2100, 10000 +}; + +static const ClassicDescMod classic_yaw00_lev3_p42(9, yaw00_prof_lev3_p42, yaw00_cov_lev3_p42); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P42_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p43.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p43.mh new file mode 100755 index 0000000..5d66f49 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p43.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p43: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P43_MH +#define STASM_CLASSIC_YAW00_LEV3_P43_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p43[9] = +{ + 0.30204, -0.10495, 0.15015, -0.06969, -1.40525, 1.42774, 1.11815, 0.6605, 0.19948 +}; + +static const double yaw00_cov_lev3_p43[9*9] = +{ + 4462, 781, 845, 600, 492, 303, 65, 175, 36, + 781, 4531, 2127, 1702, 1167, 782, 165, 295, 561, + 845, 2127, 4676, 3206, 1459, 1391, 937, 927, 586, + 600, 1702, 3206, 6072, 3117, 2362, 1570, 1579, 1039, + 492, 1167, 1459, 3117, 4911, 2430, 1761, 832, 1131, + 303, 782, 1391, 2362, 2430, 7038, 5295, 3118, 1423, + 65, 165, 937, 1570, 1761, 5295, 8949, 3875, 733, + 175, 295, 927, 1579, 832, 3118, 3875, 10000, 817, + 36, 561, 586, 1039, 1131, 1423, 733, 817, 8059 +}; + +static const ClassicDescMod classic_yaw00_lev3_p43(9, yaw00_prof_lev3_p43, yaw00_cov_lev3_p43); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P43_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p44.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p44.mh new file mode 100755 index 0000000..d75da7f --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p44.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p44: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P44_MH +#define STASM_CLASSIC_YAW00_LEV3_P44_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p44[9] = +{ + 0.21558, 0.4672, 0.40921, -0.22744, -0.75243, -0.36792, -0.71019, 0.57578, 0.47084 +}; + +static const double yaw00_cov_lev3_p44[9*9] = +{ + 5300, 570, 1328, 1727, 505, 208, 605, 430, 227, + 570, 5402, 827, 1559, 444, 402, 365, 555, 309, + 1328, 827, 6863, 629, 851, 455, 102, 530, 27, + 1727, 1559, 629, 9496, 1555, 1490, 590, 702, 341, + 505, 444, 851, 1555, 10000, 3361, 2404, 1716, 1666, + 208, 402, 455, 1490, 3361, 8363, 3152, 2305, 2270, + 605, 365, 102, 590, 2404, 3152, 7926, 2843, 2516, + 430, 555, 530, 702, 1716, 2305, 2843, 6463, 3165, + 227, 309, 27, 341, 1666, 2270, 2516, 3165, 7012 +}; + +static const ClassicDescMod classic_yaw00_lev3_p44(9, yaw00_prof_lev3_p44, yaw00_cov_lev3_p44); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P44_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p45.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p45.mh new file mode 100755 index 0000000..a2df063 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p45.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p45: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P45_MH +#define STASM_CLASSIC_YAW00_LEV3_P45_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p45[9] = +{ + 0.39757, 0.25329, -0.05001, -0.5672, -1.00273, -1.69463, 0.68152, 0.88865, -0.27854 +}; + +static const double yaw00_cov_lev3_p45[9*9] = +{ + 9853, 413, -899, 809, 714, 324, 549, 489, 154, + 413, 10000, -1730, -279, 785, 203, 544, 474, 95, + -899, -1730, 9871, -371, 820, 667, 446, 280, 46, + 809, -279, -371, 9737, 1560, 1388, 535, 290, 118, + 714, 785, 820, 1560, 6594, 3099, 1240, 998, 477, + 324, 203, 667, 1388, 3099, 4279, 1633, 1357, 674, + 549, 544, 446, 535, 1240, 1633, 2330, 1775, 727, + 489, 474, 280, 290, 998, 1357, 1775, 2414, 970, + 154, 95, 46, 118, 477, 674, 727, 970, 1138 +}; + +static const ClassicDescMod classic_yaw00_lev3_p45(9, yaw00_prof_lev3_p45, yaw00_cov_lev3_p45); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P45_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p46.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p46.mh new file mode 100755 index 0000000..c867573 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p46.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p46: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P46_MH +#define STASM_CLASSIC_YAW00_LEV3_P46_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p46[9] = +{ + 0.35003, 0.09059, -0.31508, -0.59295, -0.85508, -1.96547, 0.32381, 1.32897, -0.30082 +}; + +static const double yaw00_cov_lev3_p46[9*9] = +{ + 7926, -2030, 1373, 1339, -7, 54, 281, 333, 52, + -2030, 7812, -2501, 765, 343, 97, 395, 292, 173, + 1373, -2501, 10000, 260, 440, 654, 375, 68, 67, + 1339, 765, 260, 5253, 968, 954, 389, 240, 246, + -7, 343, 440, 968, 3388, 1494, 500, 328, 296, + 54, 97, 654, 954, 1494, 2328, 895, 739, 496, + 281, 395, 375, 389, 500, 895, 1453, 1091, 515, + 333, 292, 68, 240, 328, 739, 1091, 1449, 589, + 52, 173, 67, 246, 296, 496, 515, 589, 740 +}; + +static const ClassicDescMod classic_yaw00_lev3_p46(9, yaw00_prof_lev3_p46, yaw00_cov_lev3_p46); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P46_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p47.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p47.mh new file mode 100755 index 0000000..ea0e0c3 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p47.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p47: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P47_MH +#define STASM_CLASSIC_YAW00_LEV3_P47_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p47[9] = +{ + -0.46752, 0.23382, -0.86771, -0.6443, 1.60984, 0.67148, 0.51306, -0.15841, -0.51084 +}; + +static const double yaw00_cov_lev3_p47[9*9] = +{ + 2273, 1603, 2022, 1346, 1343, 1079, 798, 869, 346, + 1603, 3045, 3033, 2356, 2633, 2084, 1386, 943, 308, + 2022, 3033, 5510, 4211, 3969, 2769, 1695, 1179, 569, + 1346, 2356, 4211, 4803, 3946, 2977, 1764, 1491, 765, + 1343, 2633, 3969, 3946, 7221, 5302, 3182, 1279, 476, + 1079, 2084, 2769, 2977, 5302, 8955, 3268, 1127, 352, + 798, 1386, 1695, 1764, 3182, 3268, 10000, 1554, 1456, + 869, 943, 1179, 1491, 1279, 1127, 1554, 6946, 2229, + 346, 308, 569, 765, 476, 352, 1456, 2229, 5020 +}; + +static const ClassicDescMod classic_yaw00_lev3_p47(9, yaw00_prof_lev3_p47, yaw00_cov_lev3_p47); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P47_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p48.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p48.mh new file mode 100755 index 0000000..d77f050 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p48.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p48: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P48_MH +#define STASM_CLASSIC_YAW00_LEV3_P48_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p48[9] = +{ + -0.2493, 0.20568, 0.58283, 0.43022, -0.17321, 0.34444, -0.82229, -0.47331, 0.65296 +}; + +static const double yaw00_cov_lev3_p48[9*9] = +{ + 2321, 295, 43, 836, 899, 659, 560, 298, 197, + 295, 3478, 500, 945, 1352, 1025, 590, 343, 236, + 43, 500, 5019, 1154, 1477, 994, 309, 247, 364, + 836, 945, 1154, 9197, 1759, 1800, 193, 536, 430, + 899, 1352, 1477, 1759, 10000, 4366, 2114, 1454, 834, + 659, 1025, 994, 1800, 4366, 6862, 2735, 1547, 1157, + 560, 590, 309, 193, 2114, 2735, 3173, 1865, 990, + 298, 343, 247, 536, 1454, 1547, 1865, 2025, 1114, + 197, 236, 364, 430, 834, 1157, 990, 1114, 2024 +}; + +static const ClassicDescMod classic_yaw00_lev3_p48(9, yaw00_prof_lev3_p48, yaw00_cov_lev3_p48); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P48_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p49.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p49.mh new file mode 100755 index 0000000..66d8af9 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p49.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p49: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P49_MH +#define STASM_CLASSIC_YAW00_LEV3_P49_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p49[9] = +{ + -0.2803, -0.66976, 1.57125, 1.36859, -0.34169, -0.33645, -0.09491, 0.03183, 0.0312 +}; + +static const double yaw00_cov_lev3_p49[9*9] = +{ + 2044, 896, 853, 642, 518, 225, 190, 120, 188, + 896, 1934, 1207, 1357, 881, 494, 581, 372, 432, + 853, 1207, 2449, 1980, 1433, 469, 745, 344, 575, + 642, 1357, 1980, 3104, 1115, 1274, 949, 374, 516, + 518, 881, 1433, 1115, 4608, 1279, 1617, 949, 708, + 225, 494, 469, 1274, 1279, 9209, 1570, 804, 997, + 190, 581, 745, 949, 1617, 1570, 10000, -87, 1232, + 120, 372, 344, 374, 949, 804, -87, 7024, 373, + 188, 432, 575, 516, 708, 997, 1232, 373, 4816 +}; + +static const ClassicDescMod classic_yaw00_lev3_p49(9, yaw00_prof_lev3_p49, yaw00_cov_lev3_p49); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P49_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p50.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p50.mh new file mode 100755 index 0000000..adbe24f --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p50.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p50: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P50_MH +#define STASM_CLASSIC_YAW00_LEV3_P50_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p50[9] = +{ + -0.25251, -0.07798, 0.14096, 0.05969, 0.19841, 0.39933, -1.42783, -0.79251, 0.79265 +}; + +static const double yaw00_cov_lev3_p50[9*9] = +{ + 4320, 564, 1234, 1565, 1490, 1534, 1411, 943, 533, + 564, 5238, 226, 1182, 1453, 1351, 1111, 750, 434, + 1234, 226, 7002, 487, 1296, 1175, 874, 613, 482, + 1565, 1182, 487, 10000, 1315, 2219, 1267, 1091, 540, + 1490, 1453, 1296, 1315, 8923, 2710, 2405, 1528, 973, + 1534, 1351, 1175, 2219, 2710, 6030, 2329, 1861, 1067, + 1411, 1111, 874, 1267, 2405, 2329, 3599, 2196, 1098, + 943, 750, 613, 1091, 1528, 1861, 2196, 2111, 993, + 533, 434, 482, 540, 973, 1067, 1098, 993, 1957 +}; + +static const ClassicDescMod classic_yaw00_lev3_p50(9, yaw00_prof_lev3_p50, yaw00_cov_lev3_p50); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P50_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p51.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p51.mh new file mode 100755 index 0000000..063872c --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p51.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p51: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P51_MH +#define STASM_CLASSIC_YAW00_LEV3_P51_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p51[9] = +{ + 0.12667, 0.15815, 0.29186, -1.06013, -0.94991, 0.88277, 0.18795, -0.68633, -0.4939 +}; + +static const double yaw00_cov_lev3_p51[9*9] = +{ + 7512, 605, 1406, 376, 365, 229, -121, -49, 73, + 605, 10000, 1984, 2216, 1353, 937, 300, 44, 202, + 1406, 1984, 9264, 2487, 2565, 2021, 1580, 695, 419, + 376, 2216, 2487, 5644, 4009, 2196, 1830, 1103, 573, + 365, 1353, 2565, 4009, 4568, 2783, 2295, 1434, 620, + 229, 937, 2021, 2196, 2783, 4583, 2551, 1273, 711, + -121, 300, 1580, 1830, 2295, 2551, 6179, 2000, 997, + -49, 44, 695, 1103, 1434, 1273, 2000, 3160, 1219, + 73, 202, 419, 573, 620, 711, 997, 1219, 1676 +}; + +static const ClassicDescMod classic_yaw00_lev3_p51(9, yaw00_prof_lev3_p51, yaw00_cov_lev3_p51); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P51_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p52.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p52.mh new file mode 100755 index 0000000..40073fd --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p52.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p52: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P52_MH +#define STASM_CLASSIC_YAW00_LEV3_P52_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p52[9] = +{ + 0.0284, 0.13483, 0.26775, 0.53227, -0.95089, -1.86625, 0.54629, 0.35119, -0.48689 +}; + +static const double yaw00_cov_lev3_p52[9*9] = +{ + 3607, 381, 618, 838, 428, 127, 96, -30, -10, + 381, 6989, 666, 1515, 559, 177, 240, 99, 6, + 618, 666, 10000, 799, 948, 302, 348, 187, -32, + 838, 1515, 799, 6908, 545, 664, 580, 356, 44, + 428, 559, 948, 545, 3119, 2099, 1249, 631, 293, + 127, 177, 302, 664, 2099, 3347, 1567, 1333, 685, + 96, 240, 348, 580, 1249, 1567, 2511, 1431, 777, + -30, 99, 187, 356, 631, 1333, 1431, 2486, 752, + -10, 6, -32, 44, 293, 685, 777, 752, 1239 +}; + +static const ClassicDescMod classic_yaw00_lev3_p52(9, yaw00_prof_lev3_p52, yaw00_cov_lev3_p52); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P52_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p53.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p53.mh new file mode 100755 index 0000000..4d96b5f --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p53.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p53: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P53_MH +#define STASM_CLASSIC_YAW00_LEV3_P53_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p53[9] = +{ + 0.36746, 0.02863, 0.22101, -0.63735, -0.6158, 0.81716, -0.06536, -0.60666, -0.45974 +}; + +static const double yaw00_cov_lev3_p53[9*9] = +{ + 6268, 1242, 1551, 295, 488, 494, 234, 274, 286, + 1242, 8350, 3481, 1598, 1204, 730, 15, -113, 249, + 1551, 3481, 10000, 4076, 2851, 2450, 1555, 760, 454, + 295, 1598, 4076, 6520, 5325, 3654, 3155, 2079, 1094, + 488, 1204, 2851, 5325, 6329, 4501, 3673, 2524, 1242, + 494, 730, 2450, 3654, 4501, 5929, 3216, 2153, 1435, + 234, 15, 1555, 3155, 3673, 3216, 6938, 2909, 1492, + 274, -113, 760, 2079, 2524, 2153, 2909, 4122, 1735, + 286, 249, 454, 1094, 1242, 1435, 1492, 1735, 2091 +}; + +static const ClassicDescMod classic_yaw00_lev3_p53(9, yaw00_prof_lev3_p53, yaw00_cov_lev3_p53); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P53_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p54.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p54.mh new file mode 100755 index 0000000..638543a --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p54.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p54: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P54_MH +#define STASM_CLASSIC_YAW00_LEV3_P54_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p54[9] = +{ + 0.86575, 0.92074, 0.50462, -0.41003, -0.57302, 0.35435, 0.06578, -0.64544, -0.73402 +}; + +static const double yaw00_cov_lev3_p54[9*9] = +{ + 5102, 1957, 1059, 828, 789, 691, 256, 205, 197, + 1957, 8889, 2016, 1270, 1495, 1484, 348, -12, 303, + 1059, 2016, 7808, 1579, 2492, 2277, 491, 311, 516, + 828, 1270, 1579, 6668, 3660, 3813, 1437, 1060, 715, + 789, 1495, 2492, 3660, 8457, 4763, 3478, 2098, 1135, + 691, 1484, 2277, 3813, 4763, 10000, 3343, 2544, 1624, + 256, 348, 491, 1437, 3478, 3343, 7974, 833, 1632, + 205, -12, 311, 1060, 2098, 2544, 833, 8598, 1918, + 197, 303, 516, 715, 1135, 1624, 1632, 1918, 5472 +}; + +static const ClassicDescMod classic_yaw00_lev3_p54(9, yaw00_prof_lev3_p54, yaw00_cov_lev3_p54); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P54_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p55.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p55.mh new file mode 100755 index 0000000..6c7f8c7 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p55.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p55: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P55_MH +#define STASM_CLASSIC_YAW00_LEV3_P55_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p55[9] = +{ + 0.64847, 0.33652, -0.46453, -1.24459, -0.06485, -0.3087, 0.4817, -0.48653, -1.04308 +}; + +static const double yaw00_cov_lev3_p55[9*9] = +{ + 7761, 385, -184, 305, 678, -145, -77, -197, -331, + 385, 10000, -540, 1440, 1213, 221, -216, -214, -338, + -184, -540, 6880, 3538, 3039, 2346, 798, 922, 575, + 305, 1440, 3538, 6809, 4030, 2273, 855, 797, 527, + 678, 1213, 3039, 4030, 6693, 2030, 1457, 1013, 561, + -145, 221, 2346, 2273, 2030, 5928, 1649, 1415, 702, + -77, -216, 798, 855, 1457, 1649, 4937, 822, 318, + -197, -214, 922, 797, 1013, 1415, 822, 2596, 737, + -331, -338, 575, 527, 561, 702, 318, 737, 1973 +}; + +static const ClassicDescMod classic_yaw00_lev3_p55(9, yaw00_prof_lev3_p55, yaw00_cov_lev3_p55); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P55_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p56.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p56.mh new file mode 100755 index 0000000..71114d1 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p56.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p56: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P56_MH +#define STASM_CLASSIC_YAW00_LEV3_P56_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p56[9] = +{ + -0.14047, -0.46902, 0.39341, 0.57001, -0.20218, -0.58574, 1.2064, 0.6802, -0.23103 +}; + +static const double yaw00_cov_lev3_p56[9*9] = +{ + 4113, 3785, 3285, 2394, 1955, 1152, 501, 406, 269, + 3785, 6345, 5425, 4327, 3398, 2382, 1445, 1314, 712, + 3285, 5425, 6545, 5244, 4155, 2998, 1968, 1746, 849, + 2394, 4327, 5244, 6762, 5247, 3859, 2439, 1914, 969, + 1955, 3398, 4155, 5247, 10000, 5336, 3413, 2864, 1976, + 1152, 2382, 2998, 3859, 5336, 6711, 3799, 3955, 2354, + 501, 1445, 1968, 2439, 3413, 3799, 6582, 4651, 3795, + 406, 1314, 1746, 1914, 2864, 3955, 4651, 6728, 2325, + 269, 712, 849, 969, 1976, 2354, 3795, 2325, 9763 +}; + +static const ClassicDescMod classic_yaw00_lev3_p56(9, yaw00_prof_lev3_p56, yaw00_cov_lev3_p56); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P56_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p57.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p57.mh new file mode 100755 index 0000000..e802fa0 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p57.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p57: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P57_MH +#define STASM_CLASSIC_YAW00_LEV3_P57_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p57[9] = +{ + -0.12031, 0.06291, -0.24273, -0.59397, 0.32394, 0.58122, -0.00831, -0.09718, -0.00943 +}; + +static const double yaw00_cov_lev3_p57[9*9] = +{ + 2895, 1056, 939, 980, 507, 324, 598, 497, -38, + 1056, 2665, 1250, 965, 705, 272, 404, 311, -73, + 939, 1250, 2595, 876, 928, 296, 45, 164, -44, + 980, 965, 876, 2643, 929, 380, -97, 229, 233, + 507, 705, 928, 929, 3736, 1620, 860, 1156, 1104, + 324, 272, 296, 380, 1620, 7907, 1478, 1513, 1620, + 598, 404, 45, -97, 860, 1478, 10000, 2890, 1745, + 497, 311, 164, 229, 1156, 1513, 2890, 8918, 2528, + -38, -73, -44, 233, 1104, 1620, 1745, 2528, 7807 +}; + +static const ClassicDescMod classic_yaw00_lev3_p57(9, yaw00_prof_lev3_p57, yaw00_cov_lev3_p57); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P57_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p58.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p58.mh new file mode 100755 index 0000000..a3362fe --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p58.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p58: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P58_MH +#define STASM_CLASSIC_YAW00_LEV3_P58_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p58[9] = +{ + 0.61353, 0.67574, 0.10865, -0.29798, -0.17995, 0.21487, 0.14873, -0.52362, -0.9158 +}; + +static const double yaw00_cov_lev3_p58[9*9] = +{ + 5765, 1736, 1817, 1582, 1306, 667, 305, 189, 129, + 1736, 8038, 1823, 2263, 1451, 943, -258, -451, -265, + 1817, 1823, 8940, 4135, 2481, 1939, 434, -440, -330, + 1582, 2263, 4135, 9223, 5742, 3601, 2134, 890, 166, + 1306, 1451, 2481, 5742, 10000, 5822, 3082, 1986, 914, + 667, 943, 1939, 3601, 5822, 8556, 4368, 3024, 1791, + 305, -258, 434, 2134, 3082, 4368, 6681, 2669, 1383, + 189, -451, -440, 890, 1986, 3024, 2669, 7586, 2223, + 129, -265, -330, 166, 914, 1791, 1383, 2223, 3999 +}; + +static const ClassicDescMod classic_yaw00_lev3_p58(9, yaw00_prof_lev3_p58, yaw00_cov_lev3_p58); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P58_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p59.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p59.mh new file mode 100755 index 0000000..2770496 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p59.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p59: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P59_MH +#define STASM_CLASSIC_YAW00_LEV3_P59_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p59[9] = +{ + 0.18141, 0.03358, -0.3606, -0.46832, 0.15204, 0.79701, 0.68443, -0.03277, -0.43359 +}; + +static const double yaw00_cov_lev3_p59[9*9] = +{ + 3891, 611, 565, 435, 435, 299, 137, -257, -119, + 611, 4331, 472, 652, 464, 435, 14, -235, -154, + 565, 472, 3722, 471, 704, 528, 7, -226, 73, + 435, 652, 471, 3622, 773, 971, 300, 0, 183, + 435, 464, 704, 773, 4131, 1785, 1382, 1166, 540, + 299, 435, 528, 971, 1785, 4943, 1898, 1675, 707, + 137, 14, 7, 300, 1382, 1898, 7199, 1504, 993, + -257, -235, -226, 0, 1166, 1675, 1504, 8344, 586, + -119, -154, 73, 183, 540, 707, 993, 586, 10000 +}; + +static const ClassicDescMod classic_yaw00_lev3_p59(9, yaw00_prof_lev3_p59, yaw00_cov_lev3_p59); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P59_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p60.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p60.mh new file mode 100755 index 0000000..e701a74 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p60.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p60: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P60_MH +#define STASM_CLASSIC_YAW00_LEV3_P60_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p60[9] = +{ + -0.37662, -0.12607, -0.1661, -0.30489, -1.09886, 0.28659, 0.84327, 0.04401, 0.25194 +}; + +static const double yaw00_cov_lev3_p60[9*9] = +{ + 5663, 2773, 2318, 1661, 927, 459, 169, -350, -145, + 2773, 6681, 3252, 2074, 1965, 889, 709, 39, -315, + 2318, 3252, 8524, 3224, 3615, 2593, 2029, 843, 401, + 1661, 2074, 3224, 10000, 4518, 2528, 2443, 1564, 559, + 927, 1965, 3615, 4518, 8744, 5968, 4789, 3190, 2231, + 459, 889, 2593, 2528, 5968, 7964, 6322, 3727, 1340, + 169, 709, 2029, 2443, 4789, 6322, 8036, 4685, 1827, + -350, 39, 843, 1564, 3190, 3727, 4685, 6580, 2592, + -145, -315, 401, 559, 2231, 1340, 1827, 2592, 5017 +}; + +static const ClassicDescMod classic_yaw00_lev3_p60(9, yaw00_prof_lev3_p60, yaw00_cov_lev3_p60); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P60_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p61.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p61.mh new file mode 100755 index 0000000..9f76940 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p61.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p61: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P61_MH +#define STASM_CLASSIC_YAW00_LEV3_P61_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p61[9] = +{ + -0.371, -0.6769, 0.11224, 0.32272, -0.53338, -0.42476, 0.5314, 0.14022, 0.03804 +}; + +static const double yaw00_cov_lev3_p61[9*9] = +{ + 5051, 2673, 2573, 1712, 792, 629, 536, 182, -1, + 2673, 3758, 2614, 2553, 1930, 928, 608, 323, 171, + 2573, 2614, 4792, 3975, 3549, 2196, 1603, 1002, 589, + 1712, 2553, 3975, 9992, 5786, 4333, 3689, 2702, 1656, + 792, 1930, 3549, 5786, 9146, 7111, 6197, 4846, 3112, + 629, 928, 2196, 4333, 7111, 9498, 8370, 6517, 2956, + 536, 608, 1603, 3689, 6197, 8370, 10000, 7617, 3380, + 182, 323, 1002, 2702, 4846, 6517, 7617, 8509, 3838, + -1, 171, 589, 1656, 3112, 2956, 3380, 3838, 4959 +}; + +static const ClassicDescMod classic_yaw00_lev3_p61(9, yaw00_prof_lev3_p61, yaw00_cov_lev3_p61); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P61_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p62.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p62.mh new file mode 100755 index 0000000..330856a --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p62.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p62: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P62_MH +#define STASM_CLASSIC_YAW00_LEV3_P62_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p62[9] = +{ + -0.52524, -0.74276, 0.16123, 0.28198, -0.78566, -0.12919, 0.4525, 0.09494, 0.1109 +}; + +static const double yaw00_cov_lev3_p62[9*9] = +{ + 5149, 2614, 3221, 2311, 1284, 869, 732, 267, 81, + 2614, 3806, 3008, 3004, 2274, 1026, 779, 411, 206, + 3221, 3008, 5838, 4987, 4257, 2604, 2022, 1270, 762, + 2311, 3004, 4987, 10000, 6042, 4399, 3835, 2859, 1723, + 1284, 2274, 4257, 6042, 8959, 6852, 5965, 4518, 2957, + 869, 1026, 2604, 4399, 6852, 8534, 7506, 5681, 2691, + 732, 779, 2022, 3835, 5965, 7506, 8620, 6373, 2955, + 267, 411, 1270, 2859, 4518, 5681, 6373, 7005, 3218, + 81, 206, 762, 1723, 2957, 2691, 2955, 3218, 4220 +}; + +static const ClassicDescMod classic_yaw00_lev3_p62(9, yaw00_prof_lev3_p62, yaw00_cov_lev3_p62); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P62_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p63.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p63.mh new file mode 100755 index 0000000..ff24a00 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p63.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p63: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P63_MH +#define STASM_CLASSIC_YAW00_LEV3_P63_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p63[9] = +{ + -0.38185, -0.54392, 0.2913, 0.29329, -0.57748, -0.4354, 0.59802, 0.23987, 0.09918 +}; + +static const double yaw00_cov_lev3_p63[9*9] = +{ + 4508, 2843, 2135, 1718, 985, 710, 465, 56, 0, + 2843, 3879, 2732, 2548, 1999, 964, 590, 237, 112, + 2135, 2732, 4609, 3902, 3186, 2010, 1451, 847, 525, + 1718, 2548, 3902, 10000, 4934, 3628, 3115, 2417, 1431, + 985, 1999, 3186, 4934, 7443, 5687, 4940, 3765, 2533, + 710, 964, 2010, 3628, 5687, 7723, 6666, 5150, 2339, + 465, 590, 1451, 3115, 4940, 6666, 8276, 6212, 2776, + 56, 237, 847, 2417, 3765, 5150, 6212, 7436, 3238, + 0, 112, 525, 1431, 2533, 2339, 2776, 3238, 4946 +}; + +static const ClassicDescMod classic_yaw00_lev3_p63(9, yaw00_prof_lev3_p63, yaw00_cov_lev3_p63); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P63_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p64.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p64.mh new file mode 100755 index 0000000..0d212db --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p64.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p64: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P64_MH +#define STASM_CLASSIC_YAW00_LEV3_P64_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p64[9] = +{ + -0.34019, -0.19718, -0.26923, -0.62919, -1.12854, -0.00036, 1.04245, 0.23561, 0.24472 +}; + +static const double yaw00_cov_lev3_p64[9*9] = +{ + 5933, 1969, 2826, 2141, 1546, 1289, 694, 307, 763, + 1969, 6204, 2487, 2081, 1590, 664, 566, 230, 344, + 2826, 2487, 9095, 3051, 3809, 2837, 2192, 1345, 945, + 2141, 2081, 3051, 10000, 5153, 2933, 2168, 1392, 1143, + 1546, 1590, 3809, 5153, 9878, 6099, 4770, 3583, 2583, + 1289, 664, 2837, 2933, 6099, 7402, 6345, 4011, 1626, + 694, 566, 2192, 2168, 4770, 6345, 9621, 5445, 2405, + 307, 230, 1345, 1392, 3583, 4011, 5445, 7765, 2975, + 763, 344, 945, 1143, 2583, 1626, 2405, 2975, 5514 +}; + +static const ClassicDescMod classic_yaw00_lev3_p64(9, yaw00_prof_lev3_p64, yaw00_cov_lev3_p64); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P64_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p65.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p65.mh new file mode 100755 index 0000000..f159ed6 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p65.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p65: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P65_MH +#define STASM_CLASSIC_YAW00_LEV3_P65_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p65[9] = +{ + 0.39768, 0.38616, 0.40858, -0.20025, -0.78601, -0.57595, 0.15249, 0.626, 0.39444 +}; + +static const double yaw00_cov_lev3_p65[9*9] = +{ + 5411, 239, 399, 220, 545, 667, 579, 372, 241, + 239, 7299, 93, 386, 255, 510, 392, 270, 129, + 399, 93, 10000, 493, 1189, 1055, 707, 200, 128, + 220, 386, 493, 7400, 1925, 1797, 1045, -112, -570, + 545, 255, 1189, 1925, 6253, 1992, 1242, 76, -65, + 667, 510, 1055, 1797, 1992, 4774, 1524, 596, 320, + 579, 392, 707, 1045, 1242, 1524, 3993, 507, 637, + 372, 270, 200, -112, 76, 596, 507, 3820, 461, + 241, 129, 128, -570, -65, 320, 637, 461, 4487 +}; + +static const ClassicDescMod classic_yaw00_lev3_p65(9, yaw00_prof_lev3_p65, yaw00_cov_lev3_p65); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P65_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p66.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p66.mh new file mode 100755 index 0000000..67e66af --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p66.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p66: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P66_MH +#define STASM_CLASSIC_YAW00_LEV3_P66_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p66[9] = +{ + 0.15776, -0.36912, -0.31738, -0.32714, -1.12643, 0.79925, 0.78636, 0.0936, -0.20441 +}; + +static const double yaw00_cov_lev3_p66[9*9] = +{ + 7881, 44, 2544, 477, 1377, 1779, 1031, 547, 25, + 44, 8366, 3064, 2863, 2274, 2776, 2308, 1658, 217, + 2544, 3064, 9123, 4482, 3987, 3792, 3603, 1654, 513, + 477, 2863, 4482, 9659, 7159, 6505, 4862, 2904, 1056, + 1377, 2274, 3987, 7159, 10000, 8038, 5832, 3257, 1572, + 1779, 2776, 3792, 6505, 8038, 9581, 7167, 3780, 2097, + 1031, 2308, 3603, 4862, 5832, 7167, 8845, 4400, 2419, + 547, 1658, 1654, 2904, 3257, 3780, 4400, 9090, 2301, + 25, 217, 513, 1056, 1572, 2097, 2419, 2301, 4339 +}; + +static const ClassicDescMod classic_yaw00_lev3_p66(9, yaw00_prof_lev3_p66, yaw00_cov_lev3_p66); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P66_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p67.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p67.mh new file mode 100755 index 0000000..d70a274 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p67.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p67: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P67_MH +#define STASM_CLASSIC_YAW00_LEV3_P67_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p67[9] = +{ + 0.02556, -0.50428, -0.12886, 0.08893, -0.69572, 0.26072, 0.85667, -0.32984, -0.2539 +}; + +static const double yaw00_cov_lev3_p67[9*9] = +{ + 6731, 1548, 2592, 523, 762, 895, 458, 152, -267, + 1548, 6971, 4117, 3111, 2819, 3038, 2788, 1117, 179, + 2592, 4117, 7277, 5410, 4942, 5022, 4820, 2226, 608, + 523, 3111, 5410, 8900, 7919, 7505, 6001, 2932, 898, + 762, 2819, 4942, 7919, 10000, 9015, 6952, 3424, 1114, + 895, 3038, 5022, 7505, 9015, 9892, 7694, 3760, 1441, + 458, 2788, 4820, 6001, 6952, 7694, 9269, 4243, 2462, + 152, 1117, 2226, 2932, 3424, 3760, 4243, 6919, 2096, + -267, 179, 608, 898, 1114, 1441, 2462, 2096, 3183 +}; + +static const ClassicDescMod classic_yaw00_lev3_p67(9, yaw00_prof_lev3_p67, yaw00_cov_lev3_p67); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P67_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p68.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p68.mh new file mode 100755 index 0000000..9e3f59e --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p68.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p68: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P68_MH +#define STASM_CLASSIC_YAW00_LEV3_P68_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p68[9] = +{ + -0.26339, 0.18014, 0.26401, -0.77565, -0.4069, 0.83558, 0.08825, 0.18948, 0.42155 +}; + +static const double yaw00_cov_lev3_p68[9*9] = +{ + 2554, 1683, 1360, 1337, 83, -91, 12, -165, -342, + 1683, 5230, 3197, 3404, 1650, 1122, 848, 363, -70, + 1360, 3197, 9490, 4943, 3665, 3154, 2934, 1747, 902, + 1337, 3404, 4943, 10000, 7165, 6000, 5084, 3923, 2200, + 83, 1650, 3665, 7165, 9424, 8164, 6654, 3758, 2381, + -91, 1122, 3154, 6000, 8164, 9746, 7365, 4038, 2184, + 12, 848, 2934, 5084, 6654, 7365, 9098, 4865, 2653, + -165, 363, 1747, 3923, 3758, 4038, 4865, 7464, 3764, + -342, -70, 902, 2200, 2381, 2184, 2653, 3764, 8203 +}; + +static const ClassicDescMod classic_yaw00_lev3_p68(9, yaw00_prof_lev3_p68, yaw00_cov_lev3_p68); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P68_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p69.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p69.mh new file mode 100755 index 0000000..e1f796c --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p69.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p69: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P69_MH +#define STASM_CLASSIC_YAW00_LEV3_P69_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p69[9] = +{ + 0.11325, 0.23692, -0.35341, -0.98213, 0.82074, 0.20673, 0.04078, 0.54858, -0.13068 +}; + +static const double yaw00_cov_lev3_p69[9*9] = +{ + 2278, 1235, 1291, 788, 411, 479, 111, -113, -796, + 1235, 5387, 2958, 2750, 2258, 1984, 1386, 386, -566, + 1291, 2958, 6673, 5244, 4686, 3668, 2971, 1373, 157, + 788, 2750, 5244, 7421, 6129, 5026, 3214, 1470, 222, + 411, 2258, 4686, 6129, 7393, 5772, 3291, 1670, -240, + 479, 1984, 3668, 5026, 5772, 8514, 4108, 2316, -968, + 111, 1386, 2971, 3214, 3291, 4108, 8318, 4165, 1890, + -113, 386, 1373, 1470, 1670, 2316, 4165, 10000, 382, + -796, -566, 157, 222, -240, -968, 1890, 382, 9428 +}; + +static const ClassicDescMod classic_yaw00_lev3_p69(9, yaw00_prof_lev3_p69, yaw00_cov_lev3_p69); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P69_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p70.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p70.mh new file mode 100755 index 0000000..2998a9c --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p70.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p70: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P70_MH +#define STASM_CLASSIC_YAW00_LEV3_P70_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p70[9] = +{ + 0.18151, 0.18845, -0.48246, -0.71825, 1.06182, -0.28739, 0.09622, 0.70938, -0.10028 +}; + +static const double yaw00_cov_lev3_p70[9*9] = +{ + 2708, 1890, 2081, 1596, 1371, 1182, 599, 339, -363, + 1890, 6100, 4801, 4654, 4359, 3429, 2566, 1451, 259, + 2081, 4801, 8534, 7696, 7336, 5674, 4101, 2495, 824, + 1596, 4654, 7696, 9471, 8719, 6665, 4308, 2614, 844, + 1371, 4359, 7336, 8719, 10000, 7103, 4440, 3128, 614, + 1182, 3429, 5674, 6665, 7103, 8752, 4820, 3107, -12, + 599, 2566, 4101, 4308, 4440, 4820, 6634, 4287, 2358, + 339, 1451, 2495, 2614, 3128, 3107, 4287, 8452, 694, + -363, 259, 824, 844, 614, -12, 2358, 694, 8428 +}; + +static const ClassicDescMod classic_yaw00_lev3_p70(9, yaw00_prof_lev3_p70, yaw00_cov_lev3_p70); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P70_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p71.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p71.mh new file mode 100755 index 0000000..2baa63c --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p71.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p71: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P71_MH +#define STASM_CLASSIC_YAW00_LEV3_P71_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p71[9] = +{ + 0.54847, 0.26183, -0.30129, -0.27061, -0.43948, -1.06291, 1.39264, 0.40615, -0.17231 +}; + +static const double yaw00_cov_lev3_p71[9*9] = +{ + 6673, 33, 2230, 1370, 483, 817, 963, 766, 504, + 33, 7451, -411, 1723, -403, 437, 992, 781, 207, + 2230, -411, 9590, 2931, 1322, 1345, 1200, 897, 284, + 1370, 1723, 2931, 10000, 2978, 2958, 2521, 2321, 1021, + 483, -403, 1322, 2978, 7706, 4861, 3761, 2491, 1382, + 817, 437, 1345, 2958, 4861, 6616, 4900, 3559, 1890, + 963, 992, 1200, 2521, 3761, 4900, 6136, 3799, 1972, + 766, 781, 897, 2321, 2491, 3559, 3799, 5096, 1954, + 504, 207, 284, 1021, 1382, 1890, 1972, 1954, 4308 +}; + +static const ClassicDescMod classic_yaw00_lev3_p71(9, yaw00_prof_lev3_p71, yaw00_cov_lev3_p71); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P71_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p72.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p72.mh new file mode 100755 index 0000000..28fa123 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p72.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p72: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P72_MH +#define STASM_CLASSIC_YAW00_LEV3_P72_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p72[9] = +{ + 0.11958, 0.27902, 0.40483, 0.42027, -0.11631, -1.03305, -0.18954, 1.19732, 0.36391 +}; + +static const double yaw00_cov_lev3_p72[9*9] = +{ + 3808, 204, 612, 638, 1003, 581, 225, 52, -20, + 204, 4773, 343, 1053, 1484, 519, 317, 166, 34, + 612, 343, 5237, 528, 1521, 272, 254, 162, 110, + 638, 1053, 528, 7293, 839, -220, 166, 387, 268, + 1003, 1484, 1521, 839, 10000, 810, 1095, 699, 599, + 581, 519, 272, -220, 810, 5035, 2570, 1565, 804, + 225, 317, 254, 166, 1095, 2570, 3390, 2066, 1411, + 52, 166, 162, 387, 699, 1565, 2066, 3154, 1478, + -20, 34, 110, 268, 599, 804, 1411, 1478, 2851 +}; + +static const ClassicDescMod classic_yaw00_lev3_p72(9, yaw00_prof_lev3_p72, yaw00_cov_lev3_p72); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P72_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p73.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p73.mh new file mode 100755 index 0000000..6e7af05 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p73.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p73: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P73_MH +#define STASM_CLASSIC_YAW00_LEV3_P73_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p73[9] = +{ + 0.36138, 0.51182, 0.43528, -0.05718, -0.52693, -0.01706, -0.83755, 0.5526, 0.73267 +}; + +static const double yaw00_cov_lev3_p73[9*9] = +{ + 5333, 394, 2311, 2211, 1331, 865, 723, 579, 363, + 394, 5538, 579, 2615, 1614, 489, 359, 512, 386, + 2311, 579, 6965, 1081, 2434, 301, 167, 508, 381, + 2211, 2615, 1081, 8863, 2532, 838, 181, 734, 548, + 1331, 1614, 2434, 2532, 10000, 2880, 1553, 936, 794, + 865, 489, 301, 838, 2880, 5276, 2876, 2296, 1456, + 723, 359, 167, 181, 1553, 2876, 4919, 3218, 2148, + 579, 512, 508, 734, 936, 2296, 3218, 3667, 2305, + 363, 386, 381, 548, 794, 1456, 2148, 2305, 3128 +}; + +static const ClassicDescMod classic_yaw00_lev3_p73(9, yaw00_prof_lev3_p73, yaw00_cov_lev3_p73); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P73_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p74.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p74.mh new file mode 100755 index 0000000..a7952be --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p74.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p74: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P74_MH +#define STASM_CLASSIC_YAW00_LEV3_P74_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p74[9] = +{ + 0.53813, 0.60696, 0.29725, -0.35539, -0.67843, 0.44854, -0.71813, 0.26197, 0.54632 +}; + +static const double yaw00_cov_lev3_p74[9*9] = +{ + 6214, 475, 3189, 2908, 1863, 1053, 743, 607, 475, + 475, 8096, -300, 3098, 2244, 455, 324, 467, 519, + 3189, -300, 10000, 350, 3131, 463, 114, 693, 648, + 2908, 3098, 350, 9965, 4280, 2640, 1513, 1724, 1327, + 1863, 2244, 3131, 4280, 8422, 3626, 2078, 1564, 1418, + 1053, 455, 463, 2640, 3626, 5580, 3711, 3105, 2180, + 743, 324, 114, 1513, 2078, 3711, 6357, 4596, 3142, + 607, 467, 693, 1724, 1564, 3105, 4596, 4963, 3193, + 475, 519, 648, 1327, 1418, 2180, 3142, 3193, 3765 +}; + +static const ClassicDescMod classic_yaw00_lev3_p74(9, yaw00_prof_lev3_p74, yaw00_cov_lev3_p74); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P74_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p75.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p75.mh new file mode 100755 index 0000000..f97b34c --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p75.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p75: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P75_MH +#define STASM_CLASSIC_YAW00_LEV3_P75_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p75[9] = +{ + 0.44402, 0.57292, 0.36433, -0.26926, -0.58094, 0.33974, -0.80873, 0.44575, 0.5498 +}; + +static const double yaw00_cov_lev3_p75[9*9] = +{ + 5655, 688, 2746, 2473, 1373, 913, 635, 564, 342, + 688, 6113, 577, 2840, 1682, 470, 210, 418, 338, + 2746, 577, 8681, 823, 2375, -149, -193, 301, 337, + 2473, 2840, 823, 10000, 3894, 1533, 873, 1098, 767, + 1373, 1682, 2375, 3894, 8414, 3040, 1667, 1092, 950, + 913, 470, -149, 1533, 3040, 5309, 3432, 2817, 1850, + 635, 210, -193, 873, 1667, 3432, 5472, 3904, 2666, + 564, 418, 301, 1098, 1092, 2817, 3904, 4402, 2801, + 342, 338, 337, 767, 950, 1850, 2666, 2801, 3546 +}; + +static const ClassicDescMod classic_yaw00_lev3_p75(9, yaw00_prof_lev3_p75, yaw00_cov_lev3_p75); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P75_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p76.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p76.mh new file mode 100755 index 0000000..63be16b --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/classic_yaw00_lev3_p76.mh @@ -0,0 +1,37 @@ +// classic_yaw00_lev3_p76: machine generated classical descriptor model + +#ifndef STASM_CLASSIC_YAW00_LEV3_P76_MH +#define STASM_CLASSIC_YAW00_LEV3_P76_MH + +namespace stasm { + +// Generated from muct77_w09.asm +// static const int EYAW = 1; +// static const int NORMALIZEDEYEMOUTHDIST = 100; +// static const double PYR_RATIO = 2; +// static const int FACE_SCALE_METHOD = 1; +// static const int PYR_SCALE_METHOD = 1; +// static const double SIGMOID_SCALE = 0; + +static const double yaw00_prof_lev3_p76[9] = +{ + 0.23139, -0.26664, -0.9059, 0.17825, 0.48608, 0.3785, -0.18926, -0.49198, -0.36116 +}; + +static const double yaw00_cov_lev3_p76[9*9] = +{ + 2640, 797, 784, 581, 274, 384, 122, 55, 87, + 797, 2781, 1555, 1462, 904, 863, 406, 239, 36, + 784, 1555, 2958, 2073, 1585, 994, 367, 284, 98, + 581, 1462, 2073, 3048, 2141, 1269, -82, 75, 156, + 274, 904, 1585, 2141, 3719, 1396, -525, -148, 241, + 384, 863, 994, 1269, 1396, 10000, 1038, 1219, 814, + 122, 406, 367, -82, -525, 1038, 8781, 695, 1483, + 55, 239, 284, 75, -148, 1219, 695, 5379, 559, + 87, 36, 98, 156, 241, 814, 1483, 559, 4258 +}; + +static const ClassicDescMod classic_yaw00_lev3_p76(9, yaw00_prof_lev3_p76, yaw00_cov_lev3_p76); + +} // namespace stasm +#endif // STASM_CLASSIC_YAW00_LEV3_P76_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classic/yaw00_shapemodel.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/yaw00_shapemodel.mh new file mode 100755 index 0000000..ef16f43 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classic/yaw00_shapemodel.mh @@ -0,0 +1,414 @@ +// /b/trainres/classic/yaw00_shapemodel.mh: machine generated shape model + +#ifndef STASM_YAW00_SHAPEMODEL_MH +#define STASM_YAW00_SHAPEMODEL_MH + +namespace stasm { + +// Generated from muct77_w09.asm + +static const double yaw00_meanshapedata[77*2] = +{ + -80.9, -20.1, + -81.6, 6.4, + -79.1, 30.9, + -73.7, 56.8, + -54.7, 89.3, + -25, 110.2, + -0.1, 114.8, + 24.8, 110.3, + 54.5, 89.3, + 73.6, 56.8, + 78.9, 30.9, + 81.4, 6.4, + 80.8, -20.1, + 37.5, -97.1, + -0.1, -104.7, + -37.7, -97.1, + -32.7, -48.2, + -50.1, -48.3, + -64.5, -36.1, + -49.2, -39.1, + -33.5, -38.8, + -16.5, -38.5, + 16.3, -38.5, + 32.4, -48.2, + 49.9, -48.3, + 64.3, -36.1, + 49, -39.1, + 33.3, -38.8, + 37.5, -31.5, + -37.7, -31.5, + -23.6, -19.6, + -30.8, -24.9, + -38, -27.2, + -44.7, -25, + -51.4, -19.8, + -44.6, -16.6, + -37.9, -15.2, + -30.8, -16.5, + -37.7, -21.7, + 37.5, -21.7, + 23.4, -19.6, + 30.6, -24.9, + 37.8, -27.2, + 44.5, -25, + 51.2, -19.8, + 44.4, -16.6, + 37.7, -15.2, + 30.6, -16.5, + 11.9, 1.7, + -0.1, 1.7, + -12.1, 1.7, + -13, 23.3, + -0.1, 15.5, + 12.7, 23.3, + 24.8, 17.2, + 19, 27.4, + -0.1, 31, + -19.2, 27.4, + -25, 17.2, + -31.8, 56.1, + -19.6, 47.4, + -7.4, 44.3, + -0.1, 45.5, + 7.2, 44.3, + 19.4, 47.4, + 31.6, 56.1, + 14.4, 53.2, + -0.1, 53.3, + -14.6, 53.2, + -14.7, 59.6, + -0.1, 61.5, + 14.5, 59.6, + 23.8, 65.4, + 12.8, 70.2, + -0.1, 71.5, + -13, 70.2, + -24, 65.4 +}; + +static const cv::Mat yaw00_meanshape(77, 2, CV_64FC1, (double *)yaw00_meanshapedata); + +static const double yaw00_eigvalsdata[154*1] = +{ + 1000, + 714.9, + 245.236, + 189.634, + 129.081, + 113.867, + 85.7019, + 60.9867, + 46.6191, + 45.1304, + 41.652, + 37.3664, + 29.7153, + 26.0987, + 24.8578, + 24.2809, + 20.9517, + 18.5109, + 15.1495, + 14.6563, + 13.071, + 12.7726, + 11.6411, + 10.3051, + 9.97965, + 9.16276, + 8.69054, + 8.69036, + 7.98141, + 7.36461, + 6.80137, + 6.34376, + 6.33394, + 6.01227, + 5.9643, + 5.76276, + 5.61941, + 5.10058, + 4.84399, + 4.65382, + 4.54713, + 4.4257, + 4.19059, + 4.07979, + 3.99258, + 3.83784, + 3.79472, + 3.64141, + 3.53894, + 3.52489, + 3.46172, + 3.3489, + 3.19113, + 3.09963, + 3.07535, + 2.94504, + 2.87905, + 2.87463, + 2.74812, + 2.73753, + 2.55646, + 2.52934, + 2.46176, + 2.37718, + 2.37548, + 2.23063, + 2.19822, + 2.15901, + 2.12316, + 1.98395, + 1.95188, + 1.93959, + 1.90859, + 1.87275, + 1.84054, + 1.76616, + 1.74496, + 1.69017, + 1.64003, + 1.60994, + 1.60524, + 1.53577, + 1.53576, + 1.48986, + 1.4104, + 1.40123, + 1.34331, + 1.31217, + 1.30807, + 1.29491, + 1.23054, + 1.21346, + 1.18526, + 1.17967, + 1.15052, + 1.081, + 1.07841, + 1.06555, + 1.05799, + 1.01081, + 1.00342, + 0.96439, + 0.95236, + 0.89533, + 0.85989, + 0.83393, + 0.80442, + 0.78156, + 0.75351, + 0.70657, + 0.70172, + 0.687, + 0.67108, + 0.66752, + 0.65824, + 0.64129, + 0.62805, + 0.60092, + 0.59339, + 0.58605, + 0.58495, + 0.54269, + 0.52538, + 0.47947, + 0.4227, + 0.32159, + 0.23733, + 0.18979, + 0.18206, + 0.15848, + 0.02612, + 0.0205, + 0.00616, + 0.00159, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 +}; + +static const cv::Mat yaw00_eigvals(154, 1, CV_64FC1, (double *)yaw00_eigvalsdata); + +static const double yaw00_eigvecsdata[154*154] = +{ + 0.28709, 0.02282, 0.14358, 0.08174, 0.00086, -0.07906, -0.00778, 0.15452, -0.04602, 0.0489, -0.21043, -0.09275, -0.06432, -0.20069, -0.09634, -0.20012, -0.11366, 0.03668, -0.13092, -0.24132, 0.1135, 0.03092, 0.05914, -0.10547, -0.04055, -0.12517, 0.19546, 0.0566, 0.24765, -0.13997, -0.00844, -0.06089, -0.04313, 0.08732, -0.00611, 0.29732, 0.03314, -0.05671, -0.10525, -0.02534, -0.03654, 0.06376, 0.10114, -0.11199, 0.21548, -0.06533, 0.00928, 0.05258, 0.1376, -0.11728, 0.03426, 0.08903, 0.01192, 0.24354, 0.0025, 0.08534, -0.09387, 0.05051, -0.09019, -0.0345, -0.04147, 0.18259, -0.02299, -0.08948, -0.07509, 0.02933, 0.03127, 0.05657, 0.05724, -0.03444, 0.00953, 0.03866, -0.02974, 0.0562, 0.03177, 0.04834, -0.03044, -0.05899, -0.0096, -0.01727, 0.03099, 0.06243, -0.01307, -0.06967, -0.05788, 0.04991, -0.03007, -0.08583, -0.0364, 0.00757, 0.05555, 0.02316, -0.03682, 0.00099, 0.01301, -0.01994, 0.01253, 0.00888, 0.00226, -0.00748, 0.0149, -0.02367, -0.01872, 0.0171, -0.01408, 0.00556, -0.01463, 7e-005, -0.00546, 0.00121, -0.01607, -0.00146, -0.00262, 0.01218, -0.00966, -0.01243, 0.00188, -0.00145, -0.00149, 0.01451, -0.0069, 0.00806, 0.00563, 0.00097, 0.00286, 0.01337, -0.00681, -0.00331, 0.00023, 0.00846, 0.00051, -0.00061, 0.00084, 0.0001, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.01804, -0.14083, -0.01611, 0.08458, 0.021, -0.07527, 0.01107, 0.02932, 0.13146, -0.0474, -0.04376, -0.00513, -0.04821, -0.02394, -0.05299, 0.00341, -0.00905, 0.04529, 0.01625, 0.11095, 0.04915, 0.02365, -0.11308, 0.04131, 0.02177, -0.12014, -0.00633, 0.27587, -0.04394, 0.11686, 0.28712, 0.16612, -0.24419, 0.28314, -0.22863, -0.14932, 0.04494, -0.01843, -0.12125, 0.15074, -0.20961, 0.04158, -0.1241, 0.1076, 0.03122, 0.08706, -0.09294, 0.142, 0.08073, -0.07549, 0.03578, -0.21243, 0.07119, 0.08692, -0.03781, 0.07063, 0.08586, -0.25275, 0.0917, -0.03205, 0.03997, 0.02061, -0.02802, -0.21155, 0.10278, 0.04435, -0.069, -0.0425, 0.01801, 0.05386, -0.0012, -0.09454, 0.02864, 0.00338, -0.00959, -0.02962, 0.0139, -0.08704, 0.02986, -0.03778, -0.03056, -0.00745, 0.05056, -0.0363, -0.00089, 0.0781, -0.04884, -0.00497, -0.12661, 0.02461, -0.01493, 0.00151, 0.00762, 0.04136, 0.01544, -0.00417, -0.02574, 0.01648, -0.01305, -0.01939, -0.02319, -0.00018, -0.00739, -0.01362, 0.02382, -0.00257, 0.00545, 0.00961, -0.02682, -0.01061, -0.0266, 0.00498, -0.00568, -3e-005, 0.00737, -0.00022, 0.0071, -0.0054, -0.00443, -0.00715, -0.05356, 0.00698, -0.02796, -0.00337, 0.00426, 0.00241, 0.00795, 0.00078, -0.00357, -0.00231, -0.00282, -0.04747, 0.00192, 0.00079, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.28357, 0.07093, 0.09749, 0.10314, 0.02766, -0.07378, -0.0432, 0.17904, -0.03379, 0.06969, -0.14377, -0.0497, -0.08321, 0.00501, -0.04093, -0.06653, -0.06703, 0.08507, -0.10318, -0.1155, 0.09431, -0.05064, -0.0159, -0.03336, -0.00429, 0.0578, 0.02014, 0.05889, 0.04453, 0.13668, -0.0231, -0.00831, -0.0729, -0.00643, -0.08167, 0.11392, -0.07539, 0.10065, 0.20269, -0.02547, 0.01738, 0.0659, 0.04466, -0.04894, -0.20019, -0.00133, -0.06899, -0.13335, 0.08988, 0.03282, 0.06501, -0.16145, -0.02426, -0.19628, -0.0386, -0.12676, 0.05069, -0.0894, -0.03337, 0.0792, 0.00617, -0.26458, 0.02088, 0.0609, 0.03916, 0.0023, -0.07114, 0.01119, -0.08035, 0.00194, 0.03432, 0.00184, 0.11653, -0.01474, -0.11957, -0.03596, 0.06822, 0.03677, 0.12884, 0.10985, -0.09309, -0.18468, 0.08286, 0.28894, 0.19303, -0.04219, 0.01331, 0.18447, 0.04078, -0.07583, -0.21424, -0.06997, 0.13093, -0.00078, -0.05385, -0.07492, -0.03094, -0.01383, 0.007, -0.00713, -0.00785, 0.00666, 0.0459, -0.04406, 0.03413, 0.01693, 0.00403, -0.00883, 0.01058, -0.00682, 0.02147, 0.02565, 0.01199, 0.00972, 0.03659, 0.02142, 0.00613, 0.0047, -0.0017, -0.00706, -0.00404, 0.01256, -0.01285, -0.00242, -0.00865, -0.00379, 0.00662, 0.0105, 0.00464, -0.01859, -0.00166, -0.00506, -0.00151, 0.00069, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00133, -0.08819, 0.00078, 0.06056, -0.00426, -0.08219, 0.00417, 0.11476, 0.14964, -0.07137, 0.00726, 0.07852, -0.18893, 0.03044, 0.15691, 0.1209, 0.19385, -0.19061, -0.02652, -0.02554, 0.09016, -0.21117, -0.20652, -0.26042, 0.07068, -0.15257, -0.00542, 0.15232, -0.11664, 0.13221, 0.006, 0.08984, -0.06986, 0.0347, -0.06538, -0.06816, 0.05699, 0.13691, -0.03667, -0.10558, -0.20873, -0.02627, 0.10868, -0.13263, -0.02412, -0.16995, -0.03632, -0.13283, -0.01549, -0.00576, -0.05524, 0.21339, 0.03333, -0.10043, 0.26247, -0.1125, -0.15079, 0.31235, -0.13483, 0.01327, -0.09545, 0.03462, -0.02757, 0.07622, -0.03917, -0.07238, 0.0833, 0.04353, 0.01587, -0.03823, 0.00577, 0.02068, 0.00477, -0.01655, -0.02539, -0.00164, 0.0154, -0.01994, 0.00276, -0.01976, -0.0178, 0.02318, 0.03682, -0.0086, 0.00045, 0.02222, -0.01681, -0.02983, 0.00588, -0.0079, 0.00773, 0.0177, -0.02565, -0.00636, 0.01165, -0.00538, -0.00538, 0.01743, 0.01321, -0.00027, 0.00353, -0.00503, 0.00704, 0.00117, 0.00902, -2e-005, 0.00186, 0.01314, -0.00473, -0.0034, -0.00645, 0.00396, 0.01337, 0.01493, 0.00043, 0.00467, 0.00043, 0.00263, 0.0045, 0.00317, 0.00435, 0.00113, 0.00719, -0.00406, -0.0062, 0.00425, -0.00111, -0.00192, -0.00014, 0.0048, -0.008, -0.05187, -0.00184, 0.00086, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.28824, 0.13275, 0.08346, 0.12596, 0.03432, -0.07412, -0.08117, 0.17207, -0.04621, 0.06309, -0.16489, -0.02933, -0.07248, -0.00373, 0.00832, 0.04963, 0.00745, 0.04815, -0.08284, -0.05983, 0.00191, -0.08405, -0.04669, -0.09047, -0.01817, 0.12011, -0.12761, -0.0084, -0.01792, 0.13354, -0.01635, 0.05044, 0.03297, -0.11705, -0.03963, -0.05273, -0.12136, 0.04874, 0.07346, 0.07847, 0.04704, -0.06467, -0.09465, 0.10116, -0.1284, 0.04881, 0.00505, -0.02203, -0.0836, 0.13334, -0.0032, -0.03863, -0.01675, -0.19355, -0.0094, -0.08116, 0.0716, -0.08804, 0.06231, -0.02276, 0.02908, -0.12322, -0.00459, 0.03762, 0.03588, 0.10609, 0.035, -0.13243, -0.03211, 0.04955, -0.07322, -0.04283, -0.11001, -0.0466, 0.13186, -0.03883, -0.01138, 0.01276, -0.16067, -0.08133, 0.08358, 0.1027, -0.07358, -0.38483, -0.1886, -0.01578, -0.00575, -0.14964, -0.0167, 0.10613, 0.27151, 0.03832, -0.16963, -0.00588, 0.07905, 0.14474, 0.03738, -0.04777, -0.00725, -0.00176, -0.02867, 0.01905, -0.03792, 0.03483, -0.02697, -0.04555, 0.00788, 0.02781, -0.01816, 0.02091, 0.01072, -0.01866, 0.01124, -0.00929, -0.04042, -0.01316, -0.00436, -0.00018, -0.00526, -0.00493, 0.0162, 0.00364, 0.02267, -0.01703, -0.00745, -0.00607, -0.00406, 0.00121, -0.00831, -0.00471, 0.00123, -0.0028, -0.00165, -0.00053, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.01091, -0.01012, 0.02936, 0.02984, -0.0901, -0.04326, 0.00646, 0.05766, 0.16742, -0.03754, -0.00178, 0.12365, -0.16771, 0.00748, 0.24542, 0.14409, 0.24059, -0.30045, -0.0548, -0.14996, 0.04078, -0.27099, -0.06049, -0.29202, -0.06493, 0.00299, 0.0095, -0.05487, 0.02384, -0.1038, -0.14099, -0.09111, 0.11621, -0.11576, 0.17179, 0.041, 0.01891, -0.06502, 0.01299, 0.06306, 0.13158, 0.04404, -0.05062, 0.01221, 0.09526, 0.12561, 0.02985, 0.1034, -0.0326, 0.02071, -0.00576, -0.11656, -0.05274, 0.17299, -0.29348, 0.1347, 0.13542, -0.26883, 0.0747, -0.00661, 0.04066, 0.03232, 0.021, -0.06068, 0.01385, 0.02353, -0.08477, -0.01712, -0.022, 0.01275, 0.00539, 0.01308, 0.01103, 0.03542, -0.01044, 0.01111, -0.03556, 0.01416, 0.03621, 0.00049, -0.00845, -0.03632, -0.02449, 0.05227, 0.02688, -0.02009, 0.0202, 0.02918, -0.01571, -0.03132, -0.0411, -0.02121, 0.06808, 0.0173, -0.03644, -0.02402, -0.01157, -0.00187, -0.00575, -0.00105, 0.02, -0.00039, -0.00141, -0.00778, 0.01206, 0.01772, -0.00236, -0.00681, 0.01532, -0.00804, 0.00473, -0.00687, -0.01119, -0.00911, 0.00571, -0.00913, -0.00047, 0.00784, 0.00171, -0.00647, -0.00984, -0.0036, 0.00026, 0.00718, 0.00733, -0.0072, -0.00133, -0.00299, -0.003, -0.00358, -0.00697, -0.05017, -0.00078, 0.00057, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.2961, 0.24316, 0.02723, 0.179, -0.02094, -0.02073, -0.12564, 0.07267, -0.03396, 0.02849, -0.17075, -0.04238, 0.02447, 0.10665, -0.00926, 0.16726, 0.06106, 0.07899, -0.03839, 0.05769, -0.11453, -0.04527, -0.0393, 0.06746, -0.04489, 0.18641, -0.13929, -0.14631, -0.10329, -0.03747, 0.12837, -0.03563, 0.00791, -0.0183, -0.04479, -0.24322, -0.03339, -0.15927, -0.20274, -0.0242, 0.05401, -0.06327, -0.02656, 0.18017, 0.07664, 0.00667, 0.12839, 0.16734, -0.08502, 0.0253, -0.10425, 0.09417, 0.01046, -0.02905, 0.10112, 0.13136, -0.08229, 0.14959, 0.09151, 0.0374, 0.01155, 0.3124, -0.00888, 0.01496, -0.0292, -0.06923, -0.02247, 0.06359, 0.10677, 0.0169, 0.02011, -0.00566, -0.00049, 0.01063, -0.01669, 0.09178, -0.03149, -0.05887, 0.04998, 0.04627, -0.05246, 0.01636, 0.02344, 0.20946, 0.01628, 0.027, 0.04817, 0.06368, -0.01256, -0.05221, -0.12968, 0.00137, 0.08518, 0.02621, -0.06802, -0.07361, -0.01611, 0.07227, 0.00787, 0.01621, 0.00261, -0.02925, 0.00798, -0.01532, 0.03089, 0.05105, -0.0077, -0.02774, 0.01111, -0.02439, -0.01401, 0.00293, -0.02496, 0.00477, 0.01512, 0.00497, 0.00531, 0.00774, 0.00327, 0.00373, -0.00237, -0.00756, -0.01635, 0.00744, 0.00829, -0.00237, 0.005, -0.00136, 0.00844, -0.00809, 0.00068, -0.00242, -0.00062, 0.00035, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.01019, 0.06498, 0.05684, 0.01627, -0.24129, -0.03184, -0.06677, -0.03819, 0.11089, -0.02611, 0.06991, 0.09852, -0.02938, 0.06489, 0.11292, 0.04693, 0.10011, -0.06832, -0.03855, -0.00296, -0.02461, -0.05287, 0.13079, 0.15201, -0.14905, 0.16773, 0.10609, -0.21951, 0.13476, -0.24752, 0.12698, -0.17733, -0.05762, 0.22336, 0.02228, 0.00429, 0.13645, -0.23502, 0.00731, -0.07653, -0.03288, 0.22617, -0.04628, 0.06731, -0.13557, -0.01586, 0.00196, -0.0052, 0.23166, -0.04472, 0.09641, -0.13463, 0.03017, -0.07905, 0.14067, -0.16802, -0.12786, 0.13695, -0.05224, 0.02787, 0.07055, -0.14764, 0.00049, 0.03151, 0.00111, 0.03087, 0.03997, -0.01272, -0.02368, 0.04489, -0.0224, -0.13938, 0.00602, 0.03936, 0.02777, -0.05429, 0.05495, -0.04597, -0.02949, -0.0539, 0.01012, -0.03268, -0.00051, -0.11499, 0.06948, -0.02083, -0.18053, 0.06578, 0.03029, 0.07254, 0.04724, -0.01794, -0.08361, 0.029, 0.11945, 0.02402, 0.00695, -0.00389, -0.02939, -0.01637, -0.00427, 0.01318, -0.00731, -0.00947, -0.03772, 0.0124, -0.01118, 0.01725, -0.03213, 0.01683, -0.0184, 0.00601, 0.00512, 0.0053, -0.01471, 0.00013, -0.00349, -0.00116, 0.00301, 0.00129, -0.04131, -0.01282, -0.04153, -0.02245, -0.00967, 0.02403, -0.00012, 0.00936, 0.00304, 0.00473, -0.0094, -0.05522, -6e-005, 0.00039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.16428, 0.22393, 0.00729, 0.14357, -0.06804, 0.0309, -0.08071, 0.01652, -0.10306, 0.03039, -0.12181, -0.01821, 0.11889, 0.13006, 0.07539, 0.14891, 0.12155, 0.01157, 0.1979, 0.21287, -0.09088, 0.165, 0.1295, -0.00191, 0.14537, -0.24934, 0.14517, -0.2488, -0.264, -0.07005, -0.07235, 0.06874, 0.01001, 0.08019, -0.02725, -0.02841, 0.03184, 0.07137, 0.0647, -0.10881, -0.11382, -0.03826, 0.06387, -0.11157, 0.11967, -0.08579, -0.18712, -0.08707, -0.06521, 0.00489, 0.12495, 0.0055, 0.08117, 0.29447, -0.14404, -0.05288, 0.07909, -0.09144, -0.08857, -0.00584, -0.06751, -0.11131, -0.00332, -0.03135, -0.00027, -0.00791, 0.03015, 0.02726, -0.05808, -0.05201, -0.01083, 0.04985, 0.03352, -0.05397, -0.05872, -0.09899, 0.01634, 0.0624, 0.01914, 0.04268, 0.04491, -0.04352, 0.00728, -0.07808, 0.06067, -0.00154, -0.0423, -0.03608, 0.03008, 0.01904, 0.01331, 0.00102, -0.005, -0.00193, 0.06788, 0.03208, 0.01134, -0.0301, -0.01174, -0.01039, 0.00598, 0.01658, -0.00422, 0.00502, -0.02327, -0.0208, 0.01801, 0.01906, 0.00842, 0.02673, -0.00374, 0.00316, 0.00519, -0.01234, 0.00674, 0.00584, 0.00896, -0.00796, 0.00848, 0.0088, -0.01042, 0.01188, 0.0023, 0.00413, -0.00553, -0.0051, 0.00025, 0.00287, -0.00444, -0.01461, 0.00109, -0.00371, -0.00174, 0.00081, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.05813, -0.1472, 0.16657, -0.08424, -0.12133, -0.08121, -0.04858, 0.15649, 0.06799, 0.07252, 0.12075, 0.07679, 0.01656, 0.06116, 0.10863, 0.05195, 0.03001, -0.00356, 0.18096, 0.05173, -0.06166, 0.07085, 0.32891, -0.00086, -0.09146, 0.08913, 0.24602, -0.16181, 0.10608, 0.29407, 0.11673, -0.05155, -0.15085, -0.08142, -0.2031, 0.33525, -0.09739, 0.10259, -0.01749, -0.06251, -0.111, -0.16453, 0.00385, 0.05307, 0.11311, 0.07371, 0.0147, 0.02791, -0.1969, 0.16284, -0.0108, 0.03678, 0.02259, -0.04477, -0.00431, -0.01269, 0.03714, 0.05298, 0.08516, 0.00718, 0.05322, 0.04287, -0.02585, 0.04797, 0.01929, 0.08115, -0.01134, -0.02818, 0.00217, 0.09248, 0.02026, -0.00943, -0.01483, 0.04603, 0.04943, 0.09533, -0.04572, -0.0844, -0.03463, -0.07433, -0.02261, 0.06749, 0.0059, 0.04825, -0.07038, 0.01071, 0.07906, 0.06687, -0.02749, -0.05188, -0.03655, 0.03967, 0.01362, 0.01494, -0.11146, -0.0289, 0.00626, 0.01706, 0.01623, 0.00373, -0.01593, -0.00428, 0.01726, -0.00679, 0.03781, 0.00301, -0.00198, -0.00834, 9e-005, -0.01394, -0.00639, 0.00749, -0.00674, 0.0049, -0.00483, 0.00271, -0.01328, 0.01896, -0.0038, -0.00606, 0.00995, -0.00574, 0.00804, -0.00539, 0.00468, -0.00555, -0.00054, -0.00652, 0.00412, -0.00361, -0.0059, -0.05017, -0.00219, -0.00064, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00392, 0.06242, 0.0208, 0.03002, -0.03215, 0.01698, -0.00524, -0.02797, -0.13179, 0.02376, -0.08969, -0.01995, 0.04908, -0.01775, 0.07687, 0.01792, 0.04682, -0.09346, 0.27539, 0.08119, -0.05749, 0.23388, 0.16143, -0.17559, 0.01393, -0.2471, 0.16436, 0.1059, -0.02437, 0.04312, -0.13674, 0.06005, 0.08449, -0.01145, 0.06952, 0.03301, 0.00058, -0.02643, 0.04222, 0.31295, 0.08884, 0.11686, 0.01909, -0.0316, -0.23892, -0.03384, 0.24133, 0.04628, 0.14446, -0.19109, -0.15016, -0.0685, -0.20658, -0.22837, 0.13473, 0.07876, -0.09776, -0.02107, -0.03128, -0.01092, 0.15935, 0.03613, 0.00728, -0.07998, -0.00448, -0.09364, 0.00736, -0.05762, 0.1204, 0.06278, 0.02954, -0.06775, -0.04877, 0.0275, 0.09179, 0.00124, -0.02419, -0.03701, -0.04809, -0.04597, -0.02366, 0.00049, 0.00903, 0.08833, -0.03895, -0.01215, 0.03692, -0.01137, -0.04361, -0.00514, -0.00072, 0.01064, 0.00088, -0.00375, -0.03992, -0.01166, -0.01793, -0.01343, 0.01177, 0.0058, 0.01022, 0.01677, 0.00015, -0.01322, 0.00139, 0.01478, -0.002, -0.0117, -0.00206, -0.01633, 0.00376, -0.00941, -0.01817, 0.00578, -0.00593, -0.00269, -0.018, -0.00248, -0.00846, -0.01284, 0.01229, -0.01889, 0.00049, -0.0055, -0.00723, 0.00537, 0.00175, 0.00485, 0.00257, 0.00708, 0.00058, -0.00206, -0.00309, 0.00039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.0272, -0.12056, 0.22384, -0.0737, -0.0421, 0.03486, 0.0077, 0.22605, 0.04276, 0.16391, 0.07071, 0.05461, 0.28986, -0.00233, 0.01641, 0.01449, 0.0097, -0.00133, 0.06415, 0.00328, -0.04911, 0.03724, -0.07516, -0.04192, 0.06753, -0.05663, -0.0971, 0.02297, 0.12628, -0.05695, -0.01011, -0.00635, -0.03928, -0.03045, -0.08892, 0.0989, -0.08, 0.01821, -0.02337, 0.0579, 0.0051, 0.04236, -0.04208, 0.06237, -0.06732, 0.11077, 0.04995, 0.04763, -0.06523, 0.04836, -0.08466, 0.00289, -0.01933, -0.09501, 0.00393, 0.0752, -0.06113, -0.02987, 0.10913, 0.05867, -0.00438, 0.21318, 0.04846, 0.03959, -0.05407, -0.23388, -0.02174, 0.11403, 0.02885, -0.22054, -0.02519, 0.02469, 0.08444, -0.08936, -0.23528, -0.11355, 0.09348, 0.16284, 0.16214, 0.21651, 0.06473, -0.1001, 0.00081, -0.18155, 0.19641, -0.02848, -0.15062, -0.11193, 0.09379, 0.05021, 0.06904, -0.09263, -0.03801, 0.01648, 0.22891, 0.04805, 0.00526, 0.00412, -0.0657, 0.01603, 0.00372, 0.00985, -0.03546, 0.02171, -0.04026, -0.005, 0.01519, 0.00219, -0.03109, 0.0136, 0.00545, -0.00046, 0.00954, -0.01256, 0.01894, -0.00643, 0.04325, 0.00262, 0.00248, 0.00808, -0.00714, 0.00785, -0.00403, -0.00751, -0.01517, 0.00337, 0.00895, 0.00662, 0.00139, 0.00444, -0.00821, -0.04883, 0.00084, 0.00057, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.05195, -0.00525, 0.01272, -0.00307, 0.0125, 0.00373, 0.00157, 0.01287, -0.12597, 0.00905, 0.00414, 0.00276, 0.01975, 0.00061, 0.01267, 0.00216, -0.00067, -0.0021, 0.17285, -0.00094, -0.00131, 0.24915, -0.01244, -0.23428, 0.00754, -0.00149, -0.00792, 0.32745, 0.29836, -0.01262, -0.00385, 0.00048, 0.10353, 0.00399, 0.04102, -0.17165, -0.05555, -0.15703, 0.00064, -0.00411, 0.15993, 0.00173, 0.00198, 0.18946, 0.00053, 0.0047, -0.00283, -0.00381, -0.04465, 0.14767, 0.00995, -0.00164, 0.30537, 0.18972, 0.00189, -0.00324, 0.00353, 0.1939, 0.12726, -0.00333, -0.20491, -0.15399, -0.00352, 0.22647, 0.00463, 0.17133, 0.00183, -0.01069, -0.22295, -0.06348, 0.00016, 0.01516, -0.00849, 0.031, 0.02131, 0.0745, -0.00751, -0.03529, -0.01389, -0.00988, -0.00492, -0.00857, 0.00067, 0.01801, 0.02989, 0.0022, -0.1324, 0.10411, -0.00805, -0.00345, -0.03984, 0.00813, 0.0222, 0.016, 0.01506, -0.01689, -0.00119, 0.04186, 0.00453, -0.00214, 0.03466, -0.02984, 0.00261, -0.00158, -0.00101, -0.00899, -0.00143, 0.00991, 0.00812, -0.00524, -0.01611, -0.00011, 0.01482, 0.00084, -0.01325, 0.00047, -0.01471, -0.01666, -5e-005, -0.01209, 0.00109, 0.01299, -8e-005, -0.01529, 0.0199, 0.00887, 0.00299, -0.00912, -0.00029, -0.00386, -0.00025, -0.00304, 0.00166, 0.00082, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00287, -0.09509, 0.23055, -0.05562, -0.00069, 0.06765, 0.02839, 0.23317, 0.00695, 0.16398, 0.07507, 0.05005, 0.35796, 0.01097, -0.0007, 0.03914, -0.01212, -0.03808, -0.00954, -0.01711, -0.02368, -0.01375, -0.22537, 0.01293, 0.13662, -0.02698, -0.14383, -0.01806, -0.01646, -0.22874, -0.06977, 0.00871, -0.00571, 0.07235, -0.00226, 0.00947, 0.00307, 0.00867, 0.01159, -0.0744, -0.00883, 0.03126, 0.03588, -0.01046, 0.00952, -0.00026, -0.05124, -0.06902, 0.00246, -0.00815, 0.18033, -0.02968, -0.01685, -0.01047, 0.03429, -0.05862, 0.06391, -0.0107, -0.00702, -0.0603, 0.01131, 0.0085, -0.06375, -0.0125, 0.08399, -0.00945, 0.03324, -0.19379, 0.0123, 0.0035, 0.00287, -0.00084, -0.1539, -0.00171, 0.38608, -0.00411, -0.1361, 0.00195, -0.25173, 0.00055, -0.08913, 0.00047, 0.01218, 0.32645, -0.00165, 0.03983, 0.00731, -0.00575, -0.14587, 0.00019, 0.0022, 0.14741, -0.00122, -0.00088, -0.00083, 0.00093, -0.02162, -0.00231, 0.08217, -0.03886, -0.00191, 0.00165, 0.04723, -0.02869, 6e-005, 0.0005, -0.02583, -0.00055, -0.00045, 0.00029, 0.00089, -0.00198, -0.00082, 0.01524, 0.00073, 0.00849, 0.00081, 0.00092, -0.00086, 0.00067, 0.01984, -0.00072, -0.00137, 0.00084, -0.0011, -0.00049, -0.00016, 0.0005, -0.00521, 0.00021, -0.00455, -0.05517, -9e-005, -5e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.0009, -0.0753, 0.00395, -0.03794, -0.02732, -0.01304, 0.00606, 0.05267, -0.13569, -0.00558, 0.09692, 0.02584, -0.01689, 0.01738, 0.0746, -0.01622, -0.04546, 0.09274, 0.26666, -0.08033, 0.05174, 0.22836, -0.16872, -0.16991, -0.00642, 0.23937, -0.17404, 0.10275, -0.03812, -0.04913, 0.1348, -0.06038, 0.0883, 0.00803, 0.07888, 0.02192, 0.00938, -0.02828, -0.04454, -0.30468, 0.08774, -0.11149, -0.02361, -0.03827, 0.23007, -0.04582, -0.23436, -0.04075, 0.15075, -0.19525, 0.13994, 0.0684, -0.2032, -0.21653, -0.13348, -0.07001, 0.09044, -0.01765, -0.0431, 0.01731, 0.15886, 0.01246, -0.0019, -0.08385, -0.00149, -0.06734, -0.00971, 0.06982, 0.11649, 0.08667, -0.03213, -0.07006, 0.05777, 0.03716, -0.11713, 0.01373, 0.03433, -0.05471, 0.06563, -0.06952, 0.03064, 0.0115, -0.00888, -0.10777, -0.06032, 0.00895, 0.05327, 0.00101, 0.05366, -0.01063, -0.00831, -0.02077, 0.00505, -0.00554, -0.06487, -0.01687, 0.0184, -0.0138, -0.01893, -0.004, 0.00975, 0.01559, -0.00405, 0.01553, 0.00581, 0.01524, 0.00366, -0.01187, 0.00137, -0.01773, 0.00314, 0.00931, -0.01911, -0.00713, -0.00797, 0.00196, -0.02265, -0.00275, 0.00868, -0.01365, -0.013, -0.01964, -0.00093, -0.00464, -0.00552, 0.00497, 0.00076, 0.00409, -0.0024, 0.00655, -0.00148, -0.00333, -0.00316, 0.00033, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.02747, -0.11296, 0.22477, -0.06995, 0.04538, 0.03652, 0.00708, 0.2216, -0.02799, 0.16553, 0.06041, 0.05208, 0.2935, -0.00426, -0.02477, 0.01637, 0.0148, -0.01161, -0.09406, 0.01219, -0.05513, -0.06275, -0.05694, 0.06099, 0.06865, -0.08348, -0.07843, -0.03448, -0.12283, -0.05186, -0.02509, 0.0003, 0.02974, -0.03153, 0.08074, -0.10194, 0.07945, -0.01519, -0.01858, 0.09198, -0.01485, 0.05496, -0.03972, -0.05851, -0.0932, -0.10637, 0.0762, 0.05243, 0.04893, -0.02704, -0.10067, -0.00467, 0.04194, 0.11956, 0.01873, 0.08341, -0.07151, 0.03201, -0.10503, 0.05712, -0.01318, -0.21586, 0.04896, -0.03055, -0.05423, 0.24276, -0.02079, 0.107, -0.04192, 0.2123, -0.02178, -0.01709, 0.07856, 0.0858, -0.22375, 0.11272, 0.09025, -0.15778, 0.15586, -0.21014, 0.06174, 0.09944, 0.0018, -0.17073, -0.19093, -0.02964, 0.14564, 0.1125, 0.08842, -0.04934, -0.06854, -0.0909, 0.03769, -0.01597, -0.22313, -0.04647, 0.00325, -0.00261, -0.064, 0.01657, -0.00482, -0.01164, -0.03523, 0.02013, 0.03986, 0.00334, 0.01488, -0.00088, 0.03113, -0.01172, -0.00583, -0.00149, -0.00749, -0.01185, -0.01817, -0.00669, -0.04101, -0.00233, 0.00153, -0.00662, -0.00574, -0.00572, -0.00396, 0.00807, 0.01588, -0.00394, -0.00909, -0.00711, 0.00167, -0.0052, -0.0081, -0.04876, -0.0005, -0.00061, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.16968, -0.23877, 0.01108, -0.15197, -0.05428, -0.03965, 0.07488, 0.0008, -0.10992, -0.02223, 0.13436, 0.02655, -0.11634, -0.12254, 0.06298, -0.14229, -0.11751, -0.01189, 0.17679, -0.20589, 0.08354, 0.1562, -0.09253, -0.00181, -0.15455, 0.25763, -0.11724, -0.22947, -0.27407, 0.10198, 0.08476, -0.074, 0.02655, -0.08866, -0.00473, -0.06513, 0.04236, 0.05965, -0.06624, 0.10127, -0.10091, 0.01993, -0.06306, -0.11673, -0.10649, -0.09338, 0.18761, 0.08961, -0.04315, -0.01305, -0.12538, -0.00142, 0.07819, 0.29761, 0.14269, 0.05116, -0.07452, -0.09672, -0.0974, 0.0066, -0.07296, -0.11535, 0.00045, -0.03644, 0.00239, -0.01679, -0.03122, -0.03019, -0.05797, -0.06187, 0.01299, 0.05059, -0.03495, -0.05871, 0.0638, -0.10888, -0.02127, 0.07131, -0.02284, 0.0506, -0.04713, -0.05069, -0.00659, 0.08291, 0.06804, 0.00271, -0.05074, -0.04321, -0.03292, 0.02464, 0.01725, 0.00336, -0.00647, -0.00356, 0.07973, 0.03506, -0.01059, -0.03179, 0.01346, 0.01074, 0.0077, 0.01695, 0.00609, -0.00574, -0.02729, -0.02101, -0.01812, 0.01986, 0.00836, 0.0281, -0.00302, -0.00232, 0.0059, 0.0128, 0.00723, -0.00551, 0.01037, -0.01, -0.00884, 0.00941, 0.01146, 0.01244, -0.0014, 0.0047, -0.00601, -0.00446, 0.00031, 0.00357, 0.00486, -0.01413, -0.00173, -0.00183, -0.00149, 0.00087, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.0397, -0.12167, 0.16636, -0.06793, 0.12809, -0.07731, -0.05716, 0.15736, -0.05624, 0.07542, 0.10662, 0.07432, 0.02954, 0.0751, -0.11626, 0.06802, 0.04321, -0.00227, -0.20164, 0.07483, -0.07128, -0.08858, 0.34116, 0.00107, -0.07491, 0.06115, 0.26051, 0.18818, -0.07639, 0.28458, 0.10806, -0.04367, 0.14883, -0.0721, 0.20487, -0.33009, 0.0933, -0.10982, -0.01027, -0.0741, 0.12285, -0.16774, 0.01086, -0.04047, 0.12559, -0.06382, -0.00598, 0.01816, 0.20288, -0.16239, 0.00302, 0.03716, -0.03139, 0.0121, -0.02013, -0.01843, 0.04562, -0.0426, -0.0749, 0.00649, -0.04547, -0.03036, -0.02605, -0.04423, 0.01914, -0.07979, -0.00795, -0.02501, 0.00423, -0.0862, 0.01894, 0.00389, -0.01105, -0.03981, 0.04267, -0.08386, -0.04365, 0.07702, -0.03231, 0.06919, -0.01753, -0.06229, 0.00667, 0.03937, 0.06328, 0.01047, -0.07393, -0.0625, -0.02402, 0.04947, 0.03486, 0.03954, -0.01298, -0.01464, 0.10332, 0.02519, 0.00747, -0.01364, 0.01484, 0.00256, 0.01518, 0.00243, 0.01669, -0.0062, -0.03502, -0.00071, 2e-005, 0.00619, -0.00102, 0.01091, 0.00677, 0.0078, 0.00613, 0.00351, 0.00406, 0.00334, 0.01221, -0.01797, -0.00284, 0.00505, 0.00874, 0.0044, 0.00825, 0.0049, -0.00404, 0.00608, 0.00051, 0.00616, 0.00361, 0.0052, -0.00574, -0.05028, 0.00237, 0.00055, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.29318, -0.23453, -0.02081, -0.17613, 0.00574, 0.0171, 0.11753, -0.07643, -0.04595, -0.03119, 0.1774, 0.05296, -0.02756, -0.09887, -0.02163, -0.16108, -0.04968, -0.08603, -0.03391, -0.05767, 0.11112, -0.03918, 0.05345, 0.05032, 0.02822, -0.16683, 0.15011, -0.12128, -0.1175, 0.01001, -0.11362, 0.01591, 0.01421, 0.04277, -0.04697, -0.24222, -0.04821, -0.13244, 0.20231, 0.01564, 0.0573, 0.08777, 0.0213, 0.17167, -0.0911, 0.00838, -0.1274, -0.16689, -0.11, 0.03007, 0.11423, -0.10841, 0.00707, -0.02017, -0.08503, -0.14905, 0.06773, 0.13362, 0.09671, -0.03411, 0.00372, 0.32675, 0.00888, 0.0114, 0.02914, -0.07221, 0.02673, -0.06461, 0.10872, 0.01186, -0.02245, 0.00971, 0.00115, 0.00623, 0.01964, 0.0972, 0.03734, -0.05345, -0.05292, 0.05192, 0.05326, 0.01985, -0.02335, -0.22084, 0.00854, -0.02913, 0.06774, 0.05606, 0.01581, -0.05987, -0.13409, -0.00334, 0.09386, 0.02286, -0.08075, -0.0758, 0.01677, 0.07226, -0.01105, -0.01792, 0.00307, -0.03052, -0.00873, 0.01419, 0.03486, 0.04937, 0.00643, -0.02947, 0.01458, -0.02609, -0.0119, -0.00225, -0.02538, -0.00416, 0.01665, -0.00492, 0.00567, 0.00782, -0.00292, 0.00356, -0.00219, -0.0061, 0.01168, 0.00987, 0.00931, -0.005, 0.00499, -0.00238, -0.00805, -0.00857, -0.00171, -0.00367, -0.00061, 0.0003, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.04271, 0.09134, 0.05949, 0.03587, 0.24213, -0.03392, -0.08019, -0.02996, -0.10648, -0.02281, 0.0507, 0.09325, -0.02651, 0.07623, -0.11122, 0.06505, 0.10622, -0.05921, 0.04254, 0.0034, -0.03706, 0.05753, 0.12567, -0.15851, -0.15308, 0.18722, 0.09014, 0.23427, -0.12258, -0.25014, 0.14033, -0.18017, 0.0564, 0.21999, -0.01721, 0.0225, -0.13195, 0.25112, -0.01504, -0.07873, 0.02674, 0.21784, -0.04892, -0.08672, -0.12632, 0.01503, 0.01608, 0.01325, -0.22089, 0.04166, 0.08435, -0.12345, -0.03113, 0.08177, 0.15094, -0.15255, -0.13613, -0.15258, 0.04185, 0.03182, -0.07139, 0.11237, -0.00049, -0.03297, -0.00211, -0.02306, 0.03725, -0.00565, 0.01178, -0.04648, -0.02005, 0.13916, 0.00593, -0.04029, 0.02576, 0.04386, 0.05115, 0.05217, -0.02382, 0.04848, 0.00429, 0.03068, 0.00207, -0.09124, -0.07085, -0.01773, 0.17413, -0.07238, 0.02872, -0.06635, -0.03268, -0.01768, 0.07373, -0.03171, -0.11124, -0.01577, 0.00514, -0.00408, -0.02834, -0.01448, 0.00395, -0.00988, -0.00639, -0.0111, 0.03409, -0.01794, -0.01196, -0.01409, 0.03071, -0.01404, 0.01983, 0.0063, -0.00234, 0.00579, 0.01295, 0.00068, 0.00288, 0.0003, 0.00335, -0.0017, -0.04132, 0.01357, -0.04308, 0.02149, 0.0087, -0.02362, -0.00043, -0.00915, 0.00395, -0.00381, -0.00926, -0.05515, 0.00013, -0.00043, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.28769, -0.13306, -0.07973, -0.12192, 0.04402, 0.06891, 0.08139, -0.16468, -0.06435, -0.06684, 0.1637, 0.04276, 0.05359, 0.00453, -0.01874, -0.03347, 0.01907, -0.08091, -0.07631, 0.04297, 0.00259, -0.05372, 0.03975, -0.05779, 0.01092, -0.11905, 0.12788, -0.00232, -0.02043, -0.14415, 0.00074, -0.06016, 0.01998, 0.1036, -0.05829, -0.05692, -0.12271, 0.0556, -0.07158, -0.07106, 0.03228, 0.06913, 0.08851, 0.0992, 0.1381, 0.03469, -0.00174, 0.03327, -0.0795, 0.13025, 0.00254, 0.02557, -0.01085, -0.21141, -0.02295, 0.09549, -0.05627, -0.05792, 0.05371, 0.0219, 0.02443, -0.12603, 0.00687, 0.04407, -0.03413, 0.10285, -0.04412, 0.12975, -0.02949, 0.04784, 0.07337, -0.04401, 0.11056, -0.05022, -0.13221, -0.03982, 0.0074, 0.01113, 0.16368, -0.08089, -0.084, 0.10608, 0.07044, 0.38825, -0.19041, 0.01347, -0.00794, -0.15194, 0.01487, 0.10893, 0.27438, -0.04042, -0.17609, -0.00775, 0.08258, 0.14651, -0.03843, -0.04727, 0.00657, 0.00164, -0.0307, 0.01897, 0.03754, -0.03548, -0.02813, -0.04722, -0.00809, 0.02839, -0.01973, 0.02167, 0.01014, 0.01779, 0.0124, 0.00823, -0.04081, 0.01207, -0.00428, -0.00104, 0.00541, -0.00418, -0.01719, 0.00401, -0.0225, -0.01771, -0.00821, -0.00525, -0.00389, 0.00153, 0.00793, -0.00429, -0.00199, -0.00274, -0.00155, -0.00059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.02087, 0.00455, 0.03837, 0.04352, 0.08577, -0.05116, -0.00251, 0.07624, -0.16132, -0.03037, -0.01992, 0.11967, -0.17467, 0.00703, -0.24485, 0.14868, 0.23995, -0.29333, 0.06358, -0.15563, 0.04074, 0.27859, -0.06526, 0.3002, -0.06654, 0.01618, -0.0046, 0.05546, -0.02172, -0.08847, -0.14193, -0.08501, -0.11913, -0.12794, -0.16638, -0.03495, -0.00544, 0.05926, 0.02099, 0.07132, -0.13596, 0.03666, -0.06073, -0.02326, 0.08055, -0.13022, 0.03022, 0.10035, 0.0416, -0.03526, -0.00607, -0.12011, 0.05426, -0.15064, -0.29273, 0.12495, 0.14247, 0.27688, -0.0811, -0.00908, -0.04361, -0.01856, 0.02037, 0.05618, 0.01772, -0.03506, -0.08041, -0.03158, 0.0254, -0.01812, -0.0027, -0.00829, -0.00114, -0.03008, 0.00414, -0.00677, -0.0366, -0.01548, 0.01831, 0.00847, 0.0008, 0.0248, -0.03244, 0.00961, -0.00597, -0.02171, -0.01945, -0.01253, -0.01746, 0.01946, 0.01097, -0.01687, -0.049, -0.01654, 0.02752, 0.00795, -0.00739, 0.00712, -0.00652, -0.00124, -0.01672, -0.00171, -0.00557, -0.0039, -0.00901, -0.0126, -0.00148, 0.00371, -0.01323, 0.00569, -0.00588, -0.00888, 0.00989, -0.01008, -0.00123, -0.01052, 0.00095, -0.00778, 0.00113, 0.00698, -0.008, 0.00318, 0.00275, -0.00526, -0.00647, 0.00783, 0.00177, 0.00284, -0.00389, 0.00407, -0.00679, -0.05017, 0.00096, -0.00051, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.2817, -0.0802, -0.09681, -0.09585, 0.02796, 0.06429, 0.0434, -0.16533, -0.05005, -0.07712, 0.14369, 0.05804, 0.06192, -0.00163, -0.05794, 0.07943, 0.08795, -0.10553, -0.09963, 0.11199, -0.08381, -0.0271, -0.00692, -0.0045, 0.01204, -0.07423, -0.02061, 0.04177, 0.0571, -0.12131, 0.02362, 0.01815, -0.06477, 0.01021, -0.07398, 0.12073, -0.0812, 0.08498, -0.20549, 0.0137, 0.04024, -0.06839, -0.03243, -0.03405, 0.19632, 0.01738, 0.06458, 0.11793, 0.09104, 0.03326, -0.0707, 0.18395, -0.02778, -0.18404, 0.06725, 0.11361, -0.06698, -0.12322, -0.01833, -0.07726, 0.01664, -0.26678, -0.02379, 0.05214, -0.04323, 0.01025, 0.07987, -0.00633, -0.0816, 0.00614, -0.03348, -0.00045, -0.1153, -0.01283, 0.11605, -0.03556, -0.06611, 0.03874, -0.12775, 0.11136, 0.09057, -0.18611, -0.07831, -0.28813, 0.19181, 0.04438, 0.01508, 0.18663, -0.03989, -0.0745, -0.21379, 0.07149, 0.13296, -8e-005, -0.05481, -0.07387, 0.03016, -0.01567, -0.0055, 0.00706, -0.00819, 0.00718, -0.04485, 0.04392, 0.03293, 0.01683, -0.0038, -0.01023, 0.01103, -0.0064, 0.02205, -0.02506, 0.01045, -0.00801, 0.03632, -0.02078, 0.00605, 0.00438, 0.00219, -0.00736, 0.00449, 0.01236, 0.01356, -0.00196, -0.00791, -0.00423, 0.0067, 0.01064, -0.00462, -0.01901, 0.00077, -0.00068, -0.0013, 0.0006, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.03252, -0.07985, 0.0115, 0.07154, 0.00119, -0.08981, -0.0006, 0.13377, -0.14501, -0.06327, -0.0086, 0.07258, -0.19694, 0.0308, -0.15146, 0.11285, 0.1853, -0.1801, 0.03772, -0.0381, 0.09999, 0.21546, -0.20702, 0.26251, 0.06977, -0.14528, -0.00318, -0.15788, 0.11103, 0.14644, 0.00342, 0.08838, 0.07746, 0.03378, 0.07397, 0.05521, -0.04835, -0.14716, -0.01414, -0.10774, 0.20555, -0.01886, 0.11294, 0.13721, -0.046, 0.16907, -0.04369, -0.1467, 0.00551, 0.00212, -0.04775, 0.19433, -0.03046, 0.12142, 0.25663, -0.12577, -0.1443, -0.30062, 0.13768, 0.02191, 0.09419, -0.0053, -0.02511, -0.08246, -0.03462, 0.07169, 0.07496, 0.04449, -0.00694, 0.03779, 0.00952, -0.02076, 0.01756, 0.01807, -0.03839, 0.00558, 0.02281, 0.01577, 0.01692, 0.00756, -0.02794, -0.00272, 0.04572, 0.02325, -0.02169, 0.01744, 0.01525, 0.00935, 0.01033, 0.01619, 0.01589, 0.00989, 0.01109, 0.0064, -0.00566, 0.0136, -0.00875, -0.0158, 0.0139, -0.00105, -0.00264, 0.00426, 0.01205, -0.00369, -0.01273, -0.00185, 0.00229, -0.01209, 0.00353, 0.00412, 0.00405, 0.00675, -0.01461, 0.01591, -0.00445, 0.00699, -0.0011, -0.00313, 0.00429, -0.00238, 0.00388, -0.00251, 0.00573, 0.0043, 0.00712, -0.00381, 0.00038, 0.00075, 0.00037, -0.00272, -0.00813, -0.05211, 0.00199, -0.00093, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.28336, -0.03818, -0.14448, -0.07193, -0.00146, 0.0703, 0.00895, -0.15036, -0.0602, -0.05382, 0.20434, 0.09162, 0.05862, 0.19684, -0.08993, 0.19928, 0.11198, -0.03147, -0.13191, 0.25206, -0.1074, 0.02813, -0.07122, -0.10938, 0.0427, 0.11119, -0.19496, 0.02592, 0.25098, 0.15198, 0.03998, 0.0788, -0.016, -0.05564, 0.01908, 0.31195, 0.02799, -0.05434, 0.09127, 0.04177, -0.01326, -0.0588, -0.11418, -0.12315, -0.21074, -0.07451, -0.01945, -0.03664, 0.12788, -0.10826, -0.03011, -0.11186, 0.00402, 0.23249, -0.00664, -0.07706, 0.10274, 0.07801, -0.09974, 0.03077, -0.04562, 0.17922, 0.01977, -0.06566, 0.08594, 0.02427, -0.03867, -0.0609, 0.05491, -0.04015, -0.0096, 0.04883, 0.03271, 0.05548, -0.03264, 0.05131, 0.03179, -0.04906, 0.01283, -0.01301, -0.03416, 0.06287, 0.01855, 0.06525, -0.05743, -0.04102, -0.02451, -0.08476, 0.02224, 0.00481, 0.05686, -0.02285, -0.03743, -0.00356, 0.01123, -0.01936, -0.01528, 0.00701, -0.00368, 0.0053, 0.01736, -0.0235, 0.01779, -0.01849, -0.01662, 0.00581, 0.01514, -0.00099, -0.00248, 0.00237, -0.01304, 0.002, -0.00198, -0.01211, -0.01041, 0.01233, 0.00108, -0.00084, 0.00099, 0.01521, 0.00096, 0.00725, -0.00868, 0.00133, 0.00237, 0.01303, -0.00764, -0.00337, -0.00062, 0.00866, -0.00081, -0.00461, 0.00062, 1e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.04953, -0.13747, -0.00022, 0.09306, -0.02097, -0.08351, 0.01014, 0.04615, -0.12559, -0.04173, -0.06665, -0.01531, -0.055, -0.04587, 0.06327, -0.01863, -0.0215, 0.04905, -0.00175, 0.08373, 0.06134, -0.02691, -0.10588, -0.02945, 0.01718, -0.13318, 0.01519, -0.28042, 0.01642, 0.10075, 0.28445, 0.15841, 0.24745, 0.29103, 0.22791, 0.11569, -0.04831, 0.02456, -0.1321, 0.14704, 0.21236, 0.04834, -0.11222, -0.09463, 0.05474, -0.07934, -0.09135, 0.14693, -0.09538, 0.08793, 0.03933, -0.20134, -0.07207, -0.11319, -0.0373, 0.07959, 0.07501, 0.24566, -0.08122, -0.03566, -0.03517, -0.04057, -0.03038, 0.22011, 0.0939, -0.04731, -0.06514, -0.03602, -0.0242, -0.04974, -0.00014, 0.08971, 0.02519, -0.00954, -0.00604, 0.02412, 0.01047, 0.093, 0.02862, 0.03945, -0.02696, 0.00054, 0.04881, -0.04375, 0.00726, 0.08312, 0.05185, 0.01438, -0.12984, -0.0253, 0.00872, 0.00405, -0.00352, -0.04122, -0.01678, 0.00633, -0.0242, -0.01736, -0.01272, -0.0201, 0.02141, 0.00278, -0.0094, -0.01166, -0.02213, 0.00194, 0.0038, -0.00956, 0.02726, 0.01041, 0.02821, 0.00479, 0.00593, 0.00131, -0.00626, -0.00158, -0.00726, 0.00553, -0.00457, 0.00551, -0.05399, -0.00783, -0.02717, 0.00325, -0.00455, -0.00387, -0.00715, -0.00041, -0.00352, 0.00137, -0.00275, -0.04725, -0.002, -0.0008, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.0206, -0.01883, -0.0716, 0.0442, 0.3829, -0.02106, -0.05828, 0.0554, -0.00798, -0.06219, -0.00228, 0.02814, 0.05486, -0.01901, 0.16085, -0.04896, -0.00902, -0.02648, 0.10223, 0.03234, 0.01757, -0.02731, 0.01416, -0.10159, -0.02682, 0.00486, -0.03408, -0.12294, 0.02138, 0.02459, -0.04651, -0.06793, -0.05827, 0.04501, -0.03974, -0.00012, 0.05376, -0.08713, -0.02017, 0.01865, -0.07437, -0.01235, -0.0099, 0.03843, -0.01586, 0.01032, 0.02481, -0.01308, 0.04441, 0.00713, 0.01904, 0.01645, 0.0067, 0.00932, -0.03611, 0.00706, -0.01621, 0.01221, 0.03969, 0.00839, 0.04473, -0.00389, -0.02963, 0.00509, 0.02684, -0.00255, 0.00985, -0.03563, -0.00063, 0.01737, 0.01073, -0.06205, 0.04309, 0.02163, -0.0456, -0.01488, 0.05249, -0.03102, 0.00727, -0.03552, 0.05404, -0.03609, -0.00957, 0.01209, 0.03881, 0.03072, -0.07548, 0.03484, 0.04556, 0.01537, -0.00102, 0.20226, -0.01145, 0.03507, 0.02538, 0.01837, -0.0451, 0.02224, 0.03837, 0.03222, 0.0049, 5e-005, -0.02177, -0.00336, -0.00617, 0.01141, 0.0213, -0.00868, -0.00154, -0.00028, -0.02802, 0.00694, -0.01184, 0.03104, -0.00096, 0.00342, -0.01259, 0.00836, -0.00303, 0.0026, 0.02315, -0.00667, 0.0414, -0.00793, -0.00258, -0.00222, -0.00095, -0.00211, 0.005, -0.00984, -0.356, 0.04731, -0.42022, 0.0965, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.0104, -0.04514, 0.1245, -0.01727, -0.08695, 0.00714, 0.20873, -0.17041, -0.09145, 0.10805, -0.08557, -0.08665, -0.06985, 0.05322, 0.05361, 0.11628, -0.00773, 0.06964, -0.0143, -0.06023, -0.03261, -0.0192, -0.00164, -0.00426, 0.05284, 0.03923, 0.06228, 0.02425, -0.04003, -0.08744, 0.11613, 0.1561, 0.03134, -0.16458, -0.01435, 0.01858, -0.02361, 0.01991, 0.07393, -0.02511, 0.01696, 0.04944, 0.05907, -0.04546, 0.02324, -0.01982, 0.01202, -0.02952, 0.05668, 0.03948, -0.0612, 0.00061, 0.08315, -0.04414, 0.00986, -0.00216, 0.01806, -0.00643, 0.04383, 0.00377, -0.03277, 0.03711, -0.00011, -0.09667, -0.0221, 0.00501, 0.01982, -0.01639, 0.01431, 0.01706, -0.01551, 0.01574, 0.01804, -0.0385, 0.01346, -9e-005, -0.01872, -0.00657, -0.00403, -0.01116, -0.01692, 0.01091, -0.01216, -0.01513, 0.10753, 0.01786, -0.12602, 0.00148, 0.01417, 0.03592, 0.03882, 0.0203, -0.01573, 0.12668, -0.23342, 0.17654, -0.00302, 0.16204, 0.0127, -0.00648, -0.04119, -0.01687, 0.00593, -0.00408, -0.06231, -0.06097, -0.00562, -0.10923, 0.06529, 0.02925, -0.01194, -0.07726, 0.01751, -0.03599, 0.05032, 0.02789, -0.03623, 0.00976, 0.02526, 0.00919, -0.23935, 0.00271, -0.27389, 0.01307, -0.00608, -0.01039, 0.0021, 0.00554, -0.01072, -0.01006, -0.29542, -0.01774, 0.02429, -0.00583, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.02312, -0.00242, 0.00742, -0.00095, 0.4281, 0.0001, 0.0116, -0.00995, -0.01271, 0.00663, -0.00418, -0.00573, -0.00528, 0.00309, 0.14992, 0.00838, 0.00055, 0.0037, 0.11238, -0.00283, -0.00283, -0.0396, -0.0002, -0.11646, 0.00125, 0.00239, 0.0049, -0.13841, 0.01806, -0.00823, 0.01104, 0.00902, -0.05737, -0.00826, -0.04297, 0.00555, 0.05028, -0.08422, 0.00219, -0.00046, -0.07166, 0.008, 3e-005, 0.03439, 0.00058, 0.00547, -0.00118, -0.00228, 0.02029, 0.00539, -0.00027, -0.00113, -0.00992, 0.01735, 0.00204, 9e-005, 0.00211, 0.01814, 0.03764, 0.00122, 0.05957, -0.00532, 0.00015, 0.01009, -0.0003, 0, -0.00211, 0.00036, 0.00736, 0.02924, 0.0009, -0.08506, 0.00031, 0.03207, -0.00354, -0.01712, 0.00309, -0.04743, 0.00101, -0.0551, 0.00238, -0.04755, 0.00068, 8e-005, 0.04917, -0.00014, -0.09588, 0.05241, -0.0035, 0.02595, -0.00464, 0.00777, -0.01153, 0.04273, 0.05557, 0.0068, -0.00346, 0.01888, 0.00121, 0.00342, 0.01346, -0.00172, -0.00102, 0, -0.00752, 0.02131, 0.00194, 0.003, -0.01518, -0.00611, -0.03355, 0.0072, -0.00679, 0.0042, -0.00502, -0.00354, -0.00746, 0.00926, -0.00283, -0.00696, 0.02762, -0.00669, 0.03176, -0.00971, 0.00523, 0.01446, 0.00219, 0.007, 0.00155, -0.0096, -0.00323, -0.00176, 0.78209, -0.09162, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00128, -0.04384, 0.13449, -0.01729, -0.02362, 0.00177, 0.21023, -0.18037, 0.0007, 0.12022, -0.07583, -0.10392, -0.09576, 0.05608, -0.00827, 0.15189, 0.00989, 0.06702, -0.0062, -0.05133, -0.05128, 0.00219, -0.00355, 0.00643, 0.02264, 0.04336, 0.08885, 0.00763, -0.001, -0.14919, 0.20014, 0.16337, 0.00317, -0.14974, 0.00237, -0.00031, -0.00277, 0.00465, 0.03975, -0.00828, 0.00395, 0.145, 0.00061, -0.0019, 0.01053, -0.0003, -0.02141, -0.04134, -0.00112, -0.0003, -0.00491, -0.02042, 0.00055, -0.00096, 0.03698, 0.0016, 0.03817, -0.001, -0.00208, 0.02204, -0.00329, 0.00029, 0.00269, -0.00056, -0.0055, 0, -0.03822, 0.00648, -0.00041, -0.00161, 0.01624, 0.00469, 0.00555, -0.00177, -0.06423, 0.00094, 0.05595, 0.00262, 0.01829, 0.00304, 0.04305, 0.00262, 0.01225, 0.00144, -0.00271, -0.0026, 0.00529, -0.00289, -0.06336, -0.00143, 0.00026, 0.14087, 0.00064, -0.00236, -0.00307, -0.00038, -0.06273, -0.00104, 0.02201, 0.06206, -0.00074, 0.0001, -0.01856, -5e-005, 0.00041, -0.00118, 0.03518, -0.00017, 0.00084, 0.00034, 0.00185, 0.1304, 0.00037, 0.07605, 0.00028, -0.0641, 0.00041, -0.00051, -0.05133, 0.00038, 0.50053, 0.00037, 0.5755, 0.00054, -0.00029, -0.0008, -0.00012, -0.00039, 0.02806, 0.00053, -0.05853, -0.0319, -0.04316, 0.00506, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.01933, 0.01375, 0.08487, -0.04584, 0.39014, 0.02171, 0.08089, -0.07382, 0.00213, 0.07371, -0.00715, -0.0375, -0.06222, 0.02475, 0.15397, 0.06145, 0.00812, 0.03398, 0.10319, -0.03877, -0.02105, -0.02503, -0.01425, -0.10051, 0.03247, -0.00052, 0.04071, -0.12486, 0.02565, -0.03407, 0.05901, 0.0847, -0.06136, -0.06285, -0.03792, -0.00216, 0.05603, -0.08879, 0.02818, -0.0213, -0.07579, 0.01772, 0.01634, 0.0432, 0.01832, 0.01244, -0.02334, 0.00975, 0.0379, 0.00274, -0.02566, -0.01628, -0.00249, 0.01412, 0.03697, -0.00726, 0.0181, 0.01284, 0.03463, -0.00793, 0.04806, -0.00795, 0.02944, 0.0157, -0.02911, -0.00309, -0.00761, 0.03361, -0.0022, 0.01539, -0.01237, -0.06341, -0.04084, 0.02573, 0.04681, -0.01478, -0.05423, -0.03011, -0.00767, -0.03408, -0.05558, -0.03707, 0.00817, -0.01368, 0.02674, -0.02856, -0.06116, 0.03447, -0.04372, 0.01133, -0.00528, -0.1988, -0.00965, 0.02092, 0.05091, -0.00117, 0.0445, 0.00427, -0.03674, -0.03274, 0.0094, 0.00191, 0.02229, 0.00289, 0.00073, 0.01805, -0.02179, 0.0034, -0.00872, -0.00349, -0.02653, -0.0154, -0.01369, -0.03481, -0.0065, -0.00033, -0.00853, 0.00723, 0.00579, 0.00158, -0.04935, -0.00693, -0.07129, -0.00932, -0.0019, -0.00106, -0.00117, -0.0027, -0.00615, -0.00867, 0.32133, -0.04897, -0.42034, 0.09656, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.0126, -0.04694, 0.11587, -0.0123, 0.04429, 0.00478, 0.20105, -0.16327, 0.09177, 0.10055, -0.0853, -0.08303, -0.06339, 0.05081, -0.07098, 0.11018, -0.00868, 0.0663, 0.00297, -0.0563, -0.03048, 0.02208, -7e-005, 0.01542, 0.04956, 0.03952, 0.05815, -0.01058, 0.03743, -0.0842, 0.11031, 0.14768, -0.02474, -0.15862, 0.01864, -0.01846, 0.01755, -0.0102, 0.07126, -0.02291, -0.00868, 0.04778, 0.05762, 0.04095, 0.02135, 0.01856, 0.01468, -0.03077, -0.06122, -0.04002, -0.05873, 0.00242, -0.08339, 0.04285, 0.00583, -0.00137, 0.01617, 0.00504, -0.04794, 0.00467, 0.02765, -0.03645, -0.00337, 0.09552, -0.01901, -0.0047, 0.02078, -0.02021, -0.01415, -0.01887, -0.01423, -0.00881, 0.02267, 0.03588, 0.00836, 0.00173, -0.01283, 0.00994, -0.00321, 0.015, -0.01087, -0.00687, -0.01314, -0.01371, -0.11114, 0.02113, 0.13356, -0.0053, 0.0191, -0.03739, -0.03847, 0.04243, 0.0169, -0.12977, 0.22921, -0.17749, -0.00797, -0.1635, 0.01685, -0.0029, 0.0404, 0.01677, 0.0035, -0.00442, 0.06261, 0.05935, -0.00324, 0.10952, -0.06473, -0.02904, 0.01495, -0.07602, -0.0161, -0.03236, -0.04991, 0.0281, 0.03739, -0.01062, 0.02478, -0.00942, -0.23535, -0.00196, -0.26768, -0.01212, 0.00633, 0.01058, -0.00198, -0.00527, -0.01011, 0.01108, -0.3328, -0.01243, 0.0221, -0.00483, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.0321, 0.01976, 0.06976, -0.11374, -0.07898, 0.07921, 0.03204, 0.0258, 0.0948, -0.21997, -0.08345, -0.00289, 0.05789, -0.13454, -0.14009, 0.08215, 0.09584, 0.09309, 0.12881, 0.03221, 0.09055, -0.10121, 0.00635, -0.0526, -0.00781, 0.01869, -0.00691, -0.05386, -0.00715, -0.00335, -0.00573, 0.01244, 0.18274, -0.01233, -0.08968, -0.02263, -0.11616, -0.03438, -0.01062, -0.05512, -0.12921, -0.06822, -0.00693, 0.09676, -0.02809, 0.01822, 0.03237, -0.02805, 0.05272, -0.04866, -0.01001, -0.15321, -0.06408, -0.02772, -0.01451, -0.02601, -0.05073, -0.01, 4e-005, 0.00226, -0.04646, -0.08741, -0.18123, -0.04725, -0.2146, -0.02212, 0.05138, -0.0826, -0.00424, -0.13618, 0.03409, 0.13934, 0.03266, 0.24145, -0.11372, -0.0575, -0.21397, -0.05729, 0.00349, 0.01354, -0.01819, 0.12462, 0.04086, -0.02662, -0.04043, -0.01688, -0.02162, 0.03898, -0.03899, 0.017, 0.001, 0.02828, 0.08123, -0.0222, -0.00618, 0.00603, -0.02168, 0.05249, 0.01168, 0.05635, -0.02316, 0.00435, 0.00165, 0.00645, -0.00549, -0.00723, -0.08587, -0.03057, -0.08112, 0.00731, -0.05328, 0.10882, 0.13744, -0.19403, 0.11624, 0.12014, 0.0305, -0.32279, -0.30302, 0.11617, 0.04431, 0.0493, -0.0352, -0.06169, -0.03869, 0.01709, 0.00524, -0.00358, 0.00457, -0.00641, -0.00176, -0.002, 0.00184, 0.00082, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.01154, -0.01065, -0.09918, -0.10737, 0.0791, 0.13419, -0.15084, 0.02803, 0.08378, -0.02072, -0.02638, -0.09139, -0.03695, 0.06378, -0.04353, 0.12157, -0.16429, -0.06012, 0.03128, -0.12572, -0.10363, 0.02045, -0.02275, 0.01906, 0.03629, -0.02582, -0.0003, -0.01133, -0.06003, 0.01081, 0.03416, -0.01174, 0.064, 0.08178, 0.00549, 0.07775, 0.07739, 0.04565, 0.02083, 0.0191, 0.10285, -0.08983, 0.14049, 0.04233, 0.03786, 0.04344, 0.08879, -0.06341, 0.0285, 0.06746, 0.06229, -0.08832, 0.03172, -0.08089, 0.03472, 0.04939, 0.02623, 0.02635, -0.09012, 0.04914, -0.11751, 0.05005, 0.03502, -0.14108, -0.00529, 0.05768, -0.02049, 0.03127, -0.02765, 0.04372, -0.05033, 0.03949, -0.00265, 0.07644, -0.00166, 0.02721, -0.01682, -0.01246, 0.09271, -0.00728, -0.0735, -0.03328, 0.01727, -0.08947, 0.01364, -0.2848, 0.02737, 0.07109, -0.07375, 0.03421, -0.01152, 0.11451, 0.03024, -0.04632, 0.10718, 0.0819, -0.0611, 0.17755, 0.03901, -0.0022, 0.09604, 0.024, 0.03062, 0.04048, 0.02954, -0.11652, -0.28638, 0.0725, -0.28847, 0.18321, -0.00952, -0.07161, -0.09109, 0.14974, 0.01056, -0.12731, -0.00478, 0.02983, -0.0622, -0.04734, -0.02613, 0.07011, -0.00772, 0.38118, 0.01251, 0.01839, -0.00732, 0.0127, 0.00426, -0.00432, 0.00194, -0.04989, -0.00568, -0.00074, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00642, 0.02421, 0.0924, -0.11008, -0.07449, 0.0625, 0.05871, 0.08223, 0.08939, -0.27846, -0.07538, -0.0376, 0.00187, 0.06082, -0.17175, 0.00435, -0.04746, -0.03166, 0.1999, -0.00251, -0.07118, -0.11183, -0.00102, -0.05448, -0.00544, -0.00686, 0.00618, -0.00228, -0.01028, -0.00423, 0.02532, 0.01224, -0.05022, -0.04171, 0.06959, 0.01801, 0.12872, 0.00799, 0.01819, 0.09069, 0.06444, -0.01557, -0.00886, 0.03125, 0.01454, -0.02601, -0.02788, 0.02141, -0.0038, 0.06236, 0.03815, 0.02235, -0.03864, 0.0186, -0.00336, -0.07971, 0.00651, 0.11097, 0.08425, -0.0272, -0.09014, -0.04716, -0.12148, -0.16204, 0.00313, 0.17612, -0.1093, 0.18555, 0.12824, -0.00554, -0.07885, -0.05923, -0.11362, -0.16677, 0.16424, 0.05823, 0.22859, 0.10299, 0.10955, 0.02247, 0.04379, -0.13867, -0.08831, 0.01599, -0.0065, 0.00875, 0.06298, -0.02903, 0.01257, 8e-005, -0.02704, 0.01413, -0.08941, 0.00386, 0.00076, -0.00837, -0.06171, -0.01329, -0.02217, 0.00923, -0.03343, 0.05013, -0.01963, -0.05631, 0.00359, -0.01099, -0.11743, -0.09637, -0.09781, -0.07759, 0.00558, 0.10137, 0.08801, -0.1039, 0.11285, 0.24261, 0.19872, 0.01966, 0.2199, -0.20428, 0.09543, -0.14254, -0.06795, -0.10177, 0.00886, 0.01066, 0.01219, 0.00167, -0.00982, -0.0131, -0.00235, -0.00885, -0.00344, -0.00076, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00292, -0.06047, -0.06221, -0.09111, 0.10461, 0.08957, -0.15233, 0.04965, 0.12565, 0.04226, -0.02988, -0.07317, -0.15092, 0.08318, -0.01946, -0.0482, -0.0814, -0.03125, -0.0122, 0.06205, -0.18222, 0.06131, -0.09872, 0.05608, 0.01977, 0.02402, 0.00768, -0.01039, -0.08022, -0.02232, 0.01681, -0.08416, 0.09413, -0.00129, -0.02168, 0.08728, 0.07776, 0.07874, -0.00213, 0.07694, 0.14172, -0.03339, 0.19562, -0.04251, 0.0856, 0.01368, 0.13602, -0.16669, 0.05664, 0.08849, 0.0983, -0.15482, 0.12543, -0.06845, 0.05657, 0.09651, 0.05567, -0.01876, -0.06192, 0.05954, -0.03517, 0.02622, 0.00971, -0.07885, -0.06546, -0.01168, 0.06583, -0.03471, -0.04531, 0.09737, -0.0241, 0.00518, 0.01384, 0.12492, -0.01016, 0.04014, -0.01712, -0.06566, -0.02028, 0.05781, 0.02904, -0.04526, -0.05013, -0.02305, -0.06013, 0.21413, 0.02986, -0.0524, 0.04664, 0.02321, -0.03067, -0.09027, 0.04955, -0.03513, 0.21418, 0.0626, 0.03759, 0.29292, 0.0064, -0.02384, -0.01517, -0.14828, -5e-005, -0.03119, -0.00652, 0.06821, 0.28788, 0.02782, 0.19029, -0.10072, 0.03753, 0.06258, 0.03444, -0.11899, -0.00855, 0.07417, 0.02252, 0.00055, -0.00387, 0.00896, 0.04228, -0.08411, -0.00821, -0.28854, -0.03409, -0.01148, 0.00402, -0.0107, 0.00096, 0.00211, -0.01321, -0.05084, -0.00259, 0.00144, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.0482, 0.00203, 0.11688, -0.07808, -0.0597, 0.02621, 0.04983, 0.10313, 0.05855, -0.24647, -0.08614, -0.04273, -0.06472, 0.1942, -0.13233, -0.17759, -0.08162, -0.06024, 0.13673, 0.0547, -0.13489, -0.0724, -0.04804, 0.00932, 0.01665, -0.0251, 0.04089, 0.0708, -0.06166, -0.04484, 0.03691, -0.00104, -0.15571, 0.0319, 0.12808, 0.01888, 0.2238, 0.07654, 0.0579, -0.13549, 0.12928, 0.05295, -0.06074, -0.07513, -0.0695, -0.02362, -0.00104, 0.08716, 0.03032, 0.10365, -0.1003, 0.12721, 0.17091, 0.00304, -0.05421, 0.06379, 0.02174, -0.10498, 0.01707, 0.00279, 0.22805, 0.0857, 0.28415, 0.254, 0.09748, -0.15445, 0.07095, -0.15216, -0.07974, -0.00729, 0.06827, -0.01288, 0.09531, 0.01124, -0.09076, -0.10711, -0.15352, -0.09901, -0.11226, -0.04793, -0.05803, 0.20725, 0.06238, -0.02999, 0.02972, -0.08929, -0.01413, 0.04549, -0.02795, 0.03233, 0.01956, 0.02476, 0.03663, -0.04779, -0.04894, -0.00879, -0.00673, 0.01402, -0.03417, 0.04416, 0.00352, 0.00311, -0.01136, -0.0014, -0.02044, -0.02904, 0.00531, -0.00273, -0.08707, 0.04259, -0.00172, 0.02929, -0.00056, -0.04044, 0.03956, 0.05224, 0.03337, -0.02431, 0.06107, -0.02037, 0.03561, -0.03088, -0.01407, -0.00604, -6e-005, -0.00354, 0.0079, -0.00661, 0.00177, 0.00961, -0.00133, -0.00386, -0.00029, 0.00044, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00091, -0.11772, -0.02129, -0.03976, 0.12378, 0.06879, -0.18285, -0.02032, 0.15742, 0.15351, -0.06837, -0.01678, -0.16719, -0.12514, -0.0003, -0.20925, 0.19971, 0.12681, -0.14057, 0.23284, 0.01727, 0.10232, -0.08638, 0.04698, 0.01911, -0.01016, 0.07691, -0.00188, -0.02501, -0.16107, -0.01921, -0.00582, 0.27699, -0.06339, -0.11924, 0.07183, 0.03666, -0.02977, 0.12857, -0.13135, -0.04328, -0.19078, -0.07368, -0.13054, -0.11569, -0.14428, 0.01584, 0.13509, 0.08417, 0.0357, -0.03029, -0.0015, 0.05476, 0.0535, -0.00041, 0.00466, -0.03179, 0.05301, 0.35364, -0.01928, 0.18912, -0.08914, 0.00376, 0.02898, -0.01844, 0.00851, -0.06377, 0.08262, 0.1325, -0.10842, -0.01921, -0.00324, -0.04963, -0.12314, 0.06259, -0.02266, 0.03416, 0.05938, 0.05902, -0.0091, -0.02293, 0.08809, -0.03243, 0.01401, 0.00203, -0.10266, 0.04942, 0.03225, -0.06644, -0.01296, -0.04146, 0.0851, -0.03784, -0.07481, -0.04808, 0.00211, -0.04315, 0.01898, -0.01635, 0.00824, -0.02106, -0.00293, -0.0161, 0.01449, 0.01607, -0.03602, -0.00399, -0.00542, -0.0792, 0.03796, -0.01119, 0.00761, -0.03774, 0.01137, 0.035, 0.01837, 0.02251, 0.00354, 0.0313, -0.00398, 0.01194, -0.00249, -0.02094, 0.00137, 0.0042, 0.00157, -0.00438, 0.00584, -0.00436, 0.00035, -0.007, -0.05444, 0.00133, -0.00012, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00473, 0.00745, 0.09886, -0.09415, -0.07679, 0.04784, 0.043, 0.07752, 0.10075, -0.23355, -0.06794, -0.03072, -0.02668, 0.08452, -0.14886, -0.06183, 0.01026, 0.01321, 0.15606, 0.05658, -0.05497, -0.08951, -0.0181, -0.02751, 0.0111, 0.00505, 0.01815, 0.01074, -0.00614, -0.03231, 0.01141, -0.01631, -0.02852, -0.06681, 0.03056, 0.0052, 0.10098, 0.02522, 0.04507, 0.03358, 0.0421, 0.00232, -0.03026, -0.00646, -0.0251, -0.02886, -0.03931, 0.04791, 0.01972, 0.05651, 0.01485, 0.04967, 0.00197, 0.0009, -0.0051, -0.03561, -0.00702, 0.06016, 0.12082, -0.03952, 0.01608, -0.04333, -0.06116, -0.07199, 0.04891, 0.04862, -0.05782, 0.11208, 0.07621, -0.00808, -0.0214, -0.0429, -0.03643, -0.09536, 0.0856, 0.03885, 0.13671, 0.06523, 0.02888, 0.00571, 0.04614, -0.09091, -0.02572, 0.04917, -0.02034, 0.09584, 0.01057, -0.03248, 0.02653, -0.0446, -0.01769, -0.03318, -0.03249, 0.00694, 0.04717, 0.00878, 0.06853, -0.01041, 0.03166, -0.06939, 0.01519, -0.06076, 0.01976, 0.03599, 0.0289, 0.05983, 0.13363, 0.08332, 0.2487, 0.01463, 6e-005, -0.11977, -0.10864, 0.12248, -0.14054, -0.31167, -0.25906, -0.04255, -0.34923, 0.29688, -0.14634, 0.20525, 0.07194, 0.12942, -0.02543, -0.00571, -0.01275, 0.00789, 0.00349, -0.00885, 0.00191, 8e-005, 0.00458, -0.00047, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00957, -0.05256, -0.05873, -0.11065, 0.09999, 0.13104, -0.17913, 0.0035, 0.12864, 0.10025, -0.0882, -0.0564, -0.04831, 0.05399, -0.04501, -0.10814, 0.08467, 0.02997, -0.03397, 0.06755, -0.01355, 0.07947, 0.02058, 0.03667, -0.01925, 0.04253, -0.04059, -0.0193, -0.03635, 0.04388, -0.02917, -0.00635, 0.11566, -0.1131, -0.01962, 0.05541, 0.10347, 0.0208, -0.11423, 0.10709, 0.05804, 0.25835, -0.01511, -0.00562, 0.04855, 0.01288, -0.13137, -0.05758, 0.01048, 0.09208, -0.0571, 0.11338, 0.08819, -0.04905, -0.07104, -0.0701, -0.00217, 0.00895, -0.04329, -0.05368, -0.01035, 0.0683, -0.07471, -0.00355, 0.06376, -0.05971, 0.05403, -0.06645, -0.09392, 0.00532, 0.03462, -0.04039, 0.06828, 0.10279, -0.0451, -0.04242, 0.00942, -0.09028, -0.0771, 0.01694, 0.03061, -0.16775, 0.04147, 0.0244, -0.06178, 0.18941, -0.06666, -0.108, 0.03767, 0.00105, 0.04651, -0.0937, -0.04975, 0.14487, -0.13026, -0.06447, 0.02211, -0.24882, 0.04342, 0.02193, -0.12554, 0.05546, -0.01535, -0.01478, -0.00923, 0.10697, -0.34651, -0.07733, 0.13735, -0.16922, -0.00934, 0.0098, 0.13472, 0.02532, 0.06441, 0.0152, 0.0637, -0.12605, -0.03488, -0.08074, -0.00768, 0.04735, 0.0096, 0.26172, 0.01024, 0.00115, 0.02277, 0.00563, 0.00438, 0.00551, -0.001, -0.04506, -0.00182, -0.0008, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.02799, 0.0098, 0.07364, -0.10527, -0.07375, 0.06659, 0.02057, 0.03383, 0.1062, -0.18454, -0.06709, -0.00752, 0.02727, -0.08081, -0.13711, 0.03208, 0.1069, 0.1146, 0.09782, 0.09564, 0.07811, -0.06733, -0.00785, -0.02287, -0.01834, 0.03684, -0.01474, -0.01939, -0.01977, 0.0169, -0.01026, -0.02351, 0.14973, -0.04945, -0.09995, -0.02744, -0.08006, -0.04141, -0.02279, 0.00806, -0.09828, 0.02557, 0.04615, 0.03241, 0.0267, -0.018, 0.02439, -0.06416, 0.07198, -0.0367, 0.01369, -0.10585, -0.01573, -0.00466, -0.00096, 0.01277, -0.02528, -0.03515, 0.00749, 0.01386, -0.001, -0.04091, -0.1211, 0.05727, -0.12296, -0.04246, 0.01901, -0.07856, -0.03815, -0.07, 0.02613, 0.11668, 0.03182, 0.16953, -0.07245, -0.01408, -0.10453, -0.0629, -0.02735, 0.01365, -0.02648, 0.01234, 0.03641, -0.01347, -0.00424, 0.00379, -0.03543, -0.04502, -0.03034, 0.00402, 0.00378, -0.05212, 0.00628, 0.06779, -0.02848, 0.00307, 0.03967, -0.02311, 0.01244, -0.03422, 0.00099, -0.02995, 0.00448, 0.01607, -0.01361, -0.02222, 0.07128, 0.05263, 0.11889, -0.02146, 0.08946, -0.15559, -0.13509, 0.26331, -0.12823, -0.1465, 0.00302, 0.42839, 0.41672, -0.19863, -0.03317, -0.0837, 0.0725, 0.06419, 0.04714, -0.02884, -0.01046, 0.01846, -0.0017, -0.00412, -0.00204, 0.00041, 0.00138, -0.00082, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.01468, -0.01935, -0.08877, -0.11563, 0.0792, 0.14904, -0.15597, -0.01142, 0.0968, 0.0337, -0.08061, -0.07101, 0.03825, -0.00383, -0.05973, 0.06375, -0.01538, -0.00188, 0.01344, -0.11623, 0.04398, 0.0272, 0.06534, 0.0287, -0.00838, -0.00311, -0.03189, -0.00775, -0.04653, 0.07505, 0.00517, 0.03224, 0.07541, 0.0038, -0.00361, 0.05242, 0.08695, 0.00213, -0.10555, 0.03802, 0.06302, 0.18257, -0.07008, 0.04484, 0.01154, 0.03338, -0.12182, 0.01714, 0.00843, 0.06345, -0.06561, 0.12703, 0.03878, -0.07018, -0.06295, -0.11693, -0.01958, 0.0182, -0.05864, -0.11244, -0.11242, 0.08666, -0.06928, -0.0873, -0.00915, 0.00323, -0.04133, 0.00338, -0.03795, -0.01739, -0.00128, 0.0391, -0.062, 0.03936, -0.00675, -0.03438, -0.03366, 0.01578, 0.00789, -0.05534, -0.03737, -0.08485, 0.03646, 0.03823, 0.05428, -0.28305, -0.04307, -0.00307, -0.03365, -0.01226, 0.06018, 0.06249, 0.03202, 0.09737, -0.18118, -0.06996, -0.00397, -0.25674, -0.09207, -0.00922, 0.04177, 0.06273, 0.00461, 0.01033, -0.01476, -0.13159, 0.36944, 0.05892, -0.16338, 0.16456, -0.09005, 0.00557, -0.0921, -0.0868, -0.09561, 0.02863, -0.08848, 0.07035, 0.00987, 0.14308, -0.02218, 0.0115, -0.01513, -0.35695, 0.01271, -0.01672, -0.01311, -0.00098, -0.0063, 0.01987, -0.00947, -0.05587, 0.00102, -7e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.05653, 0.01125, 0.04587, -0.09051, -0.06463, 0.06949, -0.01838, -0.00895, 0.10338, -0.09189, -0.06142, 0.00804, 0.05922, -0.18868, -0.079, 0.1248, 0.17581, 0.15987, 0.02608, 0.05891, 0.2161, -0.02636, 0.03927, -0.03687, -0.06459, 0.02761, -0.02382, 0.00085, -0.01568, 0.0155, 0.01122, -0.03716, 0.19935, 0.00064, -0.10527, 0.01434, -0.18288, -0.08619, -0.03175, 0.03504, -0.08379, 0.04968, 0.1241, -0.05955, 0.07887, 0.01363, 0.04738, -0.12849, 0.04333, -0.10027, 0.02347, 0.03484, 0.10293, 0.03419, 0.09229, 0.12503, 0.112, -0.05192, -0.10866, 0.05969, 0.02009, 0.1138, 0.3109, 0.13686, 0.27526, -0.08532, 0.04165, 0.00542, -0.18086, 0.30896, -0.00787, -0.17513, 0.02072, -0.25638, 0.05316, 0.09832, 0.13422, 0.02297, -0.0166, 0.03084, -0.01278, -0.11688, -0.06731, -0.00828, -0.02243, -0.05337, 0.04986, -0.03168, 0.01645, -0.00942, 0.00632, -0.00368, -0.0104, -0.00153, 0.02159, 0.00485, -0.03016, 0.02802, -0.02862, -0.01342, 0.00377, 0.01799, 0.02277, -0.01338, 0.01342, -0.02968, 0.0148, -0.02388, -0.09199, 0.04498, -0.02734, 0.03357, 0.01694, -0.04688, 0.01574, 0.01591, -0.02187, -0.04597, -0.05683, 0.01688, 0.01597, 0.02255, -0.0344, -0.02004, -0.00187, -0.01069, 0.0007, -0.00725, 0.00229, -0.00534, 0.00458, -0.00537, -0.00066, -0.00057, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.01489, 0.00079, -0.11372, -0.11435, 0.05979, 0.14552, -0.12136, 0.0016, 0.06247, -0.03349, -0.0439, -0.06351, 0.04222, -0.08209, -0.06, 0.23474, -0.09647, 0.00366, 0.01884, -0.21239, 0.08355, 0.01563, 0.05178, -0.01544, 0.04349, -0.05647, 0.06516, -0.00677, 0.00978, -0.01014, -0.0075, 0.08414, 0.10685, 0.07542, -0.02119, 0.06206, -0.0024, -0.04778, 0.09654, -0.16913, -0.00842, -0.12934, -0.20111, 0.08092, -0.13165, 0.05027, 0.03693, 0.11862, -0.01466, 0.00626, -0.00252, 0.01897, 0.02042, -0.0635, -0.02804, 0.00953, -0.06337, -0.02814, -0.14562, 0.01792, -0.15563, 0.07396, 0.11126, -0.09636, 0.00886, 0.0395, -0.01262, 0.00366, -0.02804, 0.01199, 0.0506, -0.07351, 0.02738, -0.15232, 0.01919, -0.20741, 0.02719, 0.1468, -0.06493, -0.21061, 0.06139, 0.33865, -0.00443, 0.0373, 0.22807, 0.29776, 0.03529, 0.13305, 0.0819, -0.03039, -0.03983, -0.05554, -0.0615, -0.08857, 0.0002, -0.03431, 0.04404, -0.03483, 0.02173, 0.00181, 0.02257, 0.01938, -0.02502, -0.01494, 0.02116, 0.10871, 0.00011, 0.00571, 0.15009, -0.10398, 0.02906, -0.01414, 0.01967, 0.01998, -0.00078, 0.00239, -0.01664, 0.02056, 0.06781, -0.03634, -0.00131, -0.01747, 0.0367, 0.03098, -0.01215, -0.00295, -0.00093, -0.01639, 0.00135, -0.01012, -0.01051, -0.04991, -0.00118, 0.00118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.05782, -0.01109, -0.05811, 0.07738, -0.07082, -0.05306, 0.00491, 0.00907, 0.09588, 0.08764, 0.05622, -0.01498, -0.05421, 0.1785, -0.07192, -0.09822, -0.18536, -0.15849, 0.02385, -0.08192, -0.20559, -0.02792, -0.03334, -0.03495, 0.06898, -0.03366, 0.03085, 0.00159, -0.01666, -0.01652, -0.01198, 0.04619, 0.18638, 0.00766, -0.10229, 0.00743, -0.1815, -0.08041, 0.04218, -0.05344, -0.08235, -0.06361, -0.14548, -0.0681, -0.09288, 0.00802, -0.04303, 0.14076, 0.04468, -0.10035, -0.02361, -0.03254, 0.10006, 0.04097, -0.09481, -0.12322, -0.11829, -0.04851, -0.09198, -0.05735, 0.0371, 0.10497, -0.29677, 0.14663, -0.27262, -0.08915, -0.04279, -0.00498, -0.17668, 0.30577, 0.01339, -0.16598, -0.01758, -0.23806, -0.05072, 0.12054, -0.13041, 0.00668, 0.00935, 0.05383, 0.01946, -0.15343, 0.06641, 0.01233, -0.04739, 0.08581, 0.04567, -0.04613, -0.00734, -0.00601, 0.01066, -0.00245, -0.00357, 0.00822, 0.02143, 0.00859, 0.03482, 0.03168, 0.03084, 0.01353, 0.00126, 0.01574, -0.02538, 0.01166, 0.01101, -0.04147, -0.0147, -0.02436, -0.10794, 0.05615, -0.03037, -0.03493, 0.01467, 0.0488, 0.01573, -0.01555, -0.01991, -0.04795, 0.06395, 0.02078, -0.01602, 0.02433, 0.03823, -0.02332, -0.00052, -0.0103, 0.00079, -0.0054, -0.00213, -0.00419, -0.00571, -0.00015, -0.00053, -0.0007, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00858, 0.00202, -0.10798, -0.12362, -0.05231, 0.15228, -0.12264, 0.00061, -0.07346, -0.0434, -0.05039, -0.06224, 0.04848, -0.10235, 0.06832, 0.24705, -0.07654, 0.02123, -0.0216, -0.20462, 0.10682, -0.01263, 0.05579, 0.0194, 0.03612, -0.05309, 0.06215, 0.00663, -0.00799, -0.00837, -0.00622, 0.07954, -0.12814, 0.07503, 0.03265, -0.06326, 0.02251, 0.05697, 0.09246, -0.16425, 0.01759, -0.12308, -0.18623, -0.07387, -0.12217, -0.05147, 0.04192, 0.10376, 0.00981, 0.00482, 8e-005, 0.02269, -0.03162, 0.05935, -0.01771, 0.02323, -0.05066, 0.03369, 0.15669, 0.02438, 0.15248, -0.08603, 0.14479, 0.08071, 0.03909, -0.02988, -0.00797, 0.00424, 0.04777, -0.04591, 0.04943, 0.09234, 0.0295, 0.17961, 0.02492, 0.19533, 0.04179, -0.14844, -0.06636, 0.20593, 0.05961, -0.32373, -0.01181, 0.03616, -0.22421, 0.29007, -0.04056, -0.12875, 0.08321, 0.03124, 0.03889, -0.05561, 0.06227, 0.0882, -0.00258, 0.03357, 0.04045, 0.03154, 0.01845, 0.00033, -0.02285, -0.02124, -0.02236, -0.01632, -0.02251, -0.10479, 0.00174, -0.00304, -0.13906, 0.09839, -0.02588, -0.01036, -0.02142, 0.0147, -0.00096, 0.00412, 0.01895, -0.01538, 0.06115, 0.03426, 0.00045, 0.01488, 0.03269, -0.02859, 0.01229, 0.00411, 0.00085, 0.01708, 0.0016, 0.01064, -0.00994, -0.05019, 0.00125, -0.00111, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.03318, -0.02082, -0.08025, 0.10124, -0.0872, -0.06396, -0.04845, -0.02256, 0.08501, 0.21635, 0.08004, -0.00718, -0.06161, 0.14074, -0.13445, -0.06828, -0.11333, -0.09914, 0.12458, -0.04585, -0.10141, -0.10285, -0.00881, -0.05438, 0.01176, -0.02142, 0.00683, -0.05229, -0.0005, 0.00452, 0.00946, -0.01365, 0.17459, 0.02125, -0.08974, -0.03105, -0.12397, -0.03919, 0.01284, 0.05689, -0.13975, 0.05793, 0.02234, 0.09152, 0.03209, 0.01333, -0.0224, 0.02091, 0.04927, -0.05579, 0.0168, 0.14256, -0.06718, -0.01865, 0.01824, 0.03129, 0.05331, -0.01284, 0.00996, 0.00316, -0.03325, -0.09239, 0.18398, -0.03144, 0.21271, -0.02833, -0.05332, 0.08554, -0.00117, -0.14016, -0.03942, 0.13415, -0.03276, 0.23157, 0.11285, -0.06014, 0.21082, -0.05557, 0.00673, 0.01426, 0.00999, 0.12753, -0.03871, 0.01661, -0.04168, -0.01456, -0.0245, 0.03092, 0.03064, 0.01313, 0.00226, -0.01551, 0.07741, -0.01696, -0.01794, -0.00302, 0.01483, 0.03263, -0.00731, -0.05625, -0.03358, 0.00169, 0.00173, -0.00196, -0.00871, 0.00564, 0.05383, -0.03837, -0.04888, -0.01289, -0.05191, -0.11604, 0.14663, 0.20932, 0.11437, -0.13342, 0.03084, -0.32411, 0.29433, 0.12067, -0.04692, 0.04128, 0.03414, -0.10326, -0.03983, 0.01496, 0.00602, -0.00495, -0.00407, -0.0059, 0.00196, -0.00351, 0.00246, 0.00089, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00793, -0.00841, -0.0909, -0.11923, -0.06993, 0.14209, -0.1464, 0.0307, -0.0937, -0.0448, -0.0354, -0.09116, -0.03036, 0.04859, 0.05868, 0.12987, -0.15275, -0.04951, -0.04526, -0.12142, -0.09304, -0.00919, -0.02191, -0.01316, 0.03521, -0.0236, -0.00106, 0.01719, 0.06046, 0.01037, 0.03332, -0.0103, -0.08372, 0.07992, 0.00441, -0.07479, -0.06414, -0.04159, 0.01954, 0.01292, -0.08801, -0.09679, 0.13888, -0.05272, 0.03454, -0.04518, 0.09182, -0.06611, -0.03413, -0.0617, 0.06081, -0.10464, -0.02448, 0.08345, 0.03291, 0.04623, 0.02049, -0.02509, 0.08956, 0.04909, 0.12191, -0.04013, 0.01486, 0.14543, -0.02887, -0.0549, -0.01472, 0.02199, 0.02795, -0.02847, -0.04627, -0.05458, 0.00096, -0.10254, -0.01416, -0.02072, -0.04026, 0.01868, 0.09253, 0.00575, -0.07506, 0.01937, 0.02166, -0.09186, -0.00911, -0.28493, -0.02482, -0.07494, -0.07759, -0.03587, 0.01134, 0.11692, -0.03899, 0.04848, -0.10584, -0.08207, -0.06311, -0.18225, 0.04006, 0.00401, -0.0929, -0.02433, 0.03061, 0.04094, -0.02875, 0.11661, -0.29409, -0.06869, 0.29564, -0.1829, 0.01532, -0.0592, 0.07541, 0.12748, -0.02329, -0.11332, 0.0014, 0.00586, -0.09517, 0.03427, -0.0211, -0.07511, -0.01154, -0.37208, -0.00818, -0.02016, 0.0067, -0.01223, 0.00473, 0.005, 0.00173, -0.0498, 0.00545, 0.00065, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00606, -0.03071, -0.09868, 0.09939, -0.08555, -0.05227, -0.07512, -0.07627, 0.07502, 0.28142, 0.07164, 0.02932, -0.01847, -0.0513, -0.16856, -0.00962, 0.03821, 0.02803, 0.20003, 0.00932, 0.0507, -0.1179, -0.00985, -0.06032, 0.00759, 0.00946, -0.0053, -0.00112, -0.00139, 0.00175, -0.02331, -0.02142, -0.06028, 0.04132, 0.07156, 0.0083, 0.11939, -0.00073, -0.01831, -0.08167, 0.04845, 0.0118, 0.03033, 0.03574, -0.00503, -0.02736, 0.04267, -0.03962, -0.01001, 0.05224, -0.02711, -0.03925, -0.05221, 0.02602, 0.00956, 0.08984, -0.00035, 0.11236, 0.09055, 0.03359, -0.08572, -0.04976, 0.12181, -0.15238, -0.01031, 0.17634, 0.11588, -0.18825, 0.13244, -0.01622, 0.07572, -0.05944, 0.11445, -0.1795, -0.16436, 0.05346, -0.22908, 0.10959, -0.11112, 0.01597, -0.04033, -0.13285, 0.08226, -0.01843, 0.00015, 0.01486, 0.05931, -0.02309, -0.00736, -0.00247, -0.0235, -0.02397, -0.09432, 0.0077, -0.02281, -0.01521, 0.06547, -0.04544, 0.02274, -0.0118, -0.03156, 0.06614, 0.0195, 0.05254, 0.00428, -0.01843, 0.1484, -0.09885, -0.11816, -0.06604, 0.00142, -0.09387, 0.08368, 0.09018, 0.11311, -0.23298, 0.19504, 0.01948, -0.21899, -0.20403, -0.0902, -0.13242, 0.06664, -0.0694, 0.01256, 0.01186, 0.01168, 0.00284, 0.00987, -0.01325, 0.00089, 0.00321, -0.00314, -0.00092, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00361, -0.05744, -0.05167, -0.10267, -0.09578, 0.09591, -0.14494, 0.0584, -0.13472, 0.01136, -0.03799, -0.07686, -0.14979, 0.08936, 0.03824, -0.04743, -0.08613, -0.03454, -0.00987, 0.06139, -0.18894, -0.04863, -0.09823, -0.04974, 0.01905, 0.02312, 0.00832, 0.01058, 0.08087, -0.02265, 0.01949, -0.0823, -0.08803, -0.00588, 0.01389, -0.08873, -0.09145, -0.07914, -0.00012, 0.08645, -0.14795, -0.0349, 0.19345, 0.03881, 0.08669, -0.01074, 0.13213, -0.16333, -0.05588, -0.09481, 0.1019, -0.15142, -0.12042, 0.06599, 0.05586, 0.08716, 0.05605, 0.00644, 0.05227, 0.05619, 0.04488, -0.02087, -0.00372, 0.0962, -0.06471, -0.00777, 0.0534, -0.01409, 0.03093, -0.09616, -0.03263, 0.00137, 0.00125, -0.10582, 0.00797, -0.0463, 0.00814, 0.05393, -0.00811, -0.05993, 0.03369, 0.06025, -0.05955, -0.02115, 0.06048, 0.21379, -0.03661, 0.05528, 0.04774, -0.02308, 0.03345, -0.08816, -0.03941, 0.0345, -0.21297, -0.0613, 0.03057, -0.28968, 0.00393, -0.02268, 0.01876, 0.14186, -0.00221, -0.03719, 0.00609, -0.06659, 0.27321, -0.01704, -0.17838, 0.10864, -0.03791, 0.07335, -0.04391, -0.1297, -0.00392, 0.10042, -0.04424, -0.00271, 0.02035, 0.01357, 0.05253, 0.09928, -0.01564, 0.29799, 0.03291, 0.01024, -0.00534, 0.01045, -0.00013, -0.00065, -0.01339, -0.05151, 0.00295, -0.00135, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.0478, -0.01497, -0.11851, 0.07323, -0.07295, -0.01848, -0.06965, -0.10474, 0.04087, 0.26187, 0.07809, 0.04062, 0.04593, -0.20679, -0.1315, 0.15348, 0.10309, 0.07383, 0.15137, -0.02875, 0.13597, -0.08322, 0.03825, 0.0041, -0.01445, 0.02383, -0.03217, 0.07058, -0.05853, 0.02685, -0.0388, 0.00039, -0.18525, -0.03868, 0.14043, 0.01086, 0.21841, 0.07935, -0.0434, 0.12021, 0.13326, -0.07362, 0.05227, -0.06031, 0.05635, -0.0076, 0.00278, -0.07176, 0.02087, 0.0991, 0.09635, -0.1266, 0.16385, -0.00286, 0.05383, -0.06289, -0.02511, -0.11018, -0.02195, -0.00489, 0.20586, 0.09499, -0.28201, 0.24926, -0.09892, -0.15445, -0.07754, 0.16033, -0.09384, 0.00468, -0.06997, -0.01244, -0.10019, 0.02472, 0.0971, -0.10397, 0.15634, -0.10494, 0.11807, -0.04664, 0.05516, 0.1963, -0.06557, 0.03135, 0.02931, 0.07745, -0.01948, 0.04166, 0.02047, 0.03355, 0.02401, -0.01524, 0.04057, -0.03927, -0.04335, -0.00897, 0.00194, 0.01185, 0.03216, -0.04298, 0.00582, 0.00341, 0.00952, 0.00298, -0.02208, -0.0249, -0.00572, -0.00211, -0.07783, 0.03815, -0.00048, -0.02828, 0.0036, 0.04145, 0.03546, -0.0499, 0.03069, -0.02455, -0.05725, -0.01981, -0.03408, -0.03042, 0.01168, -0.00616, -0.00053, -0.00369, 0.00833, -0.00721, -0.00224, 0.00952, 0.00055, -0.00216, -0.00044, 0.00045, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00621, -0.11678, -0.0083, -0.04811, -0.11646, 0.07125, -0.17626, -0.00885, -0.1629, 0.12545, -0.07744, -0.02138, -0.1733, -0.10301, 0.01486, -0.22752, 0.18952, 0.11941, 0.12467, 0.23745, 0.00233, -0.09374, -0.09114, -0.04772, 0.02082, -0.01287, 0.08094, -0.00593, 0.03165, -0.16502, -0.01504, -0.0059, -0.25817, -0.05949, 0.10442, -0.07347, -0.06107, 0.02116, 0.13416, -0.14546, 0.0288, -0.18379, -0.07992, 0.13801, -0.12263, 0.146, 0.01563, 0.14386, -0.087, -0.04689, -0.04114, 0.0125, -0.07324, -0.05351, -0.00637, 0.01165, -0.0292, -0.04114, -0.35338, -0.01886, -0.21307, 0.07917, 0.035, -0.05675, -0.00761, 0.00853, -0.05558, 0.06537, -0.12292, 0.10856, -0.01158, 0.00463, -0.03884, 0.12116, 0.05222, 0.03431, 0.01706, -0.04812, 0.04631, 0.01432, -0.02918, -0.11036, -0.02537, 0.01063, -0.00528, -0.11186, -0.04757, -0.03706, -0.06911, 0.00932, 0.03906, 0.08731, 0.03358, 0.07962, 0.05317, -0.00113, -0.04363, -0.02041, -0.02001, 0.01305, 0.02055, 0.00257, -0.01725, 0.01425, -0.01372, 0.039, -0.00338, 0.00568, 0.0883, -0.04241, 0.01132, 0.01078, 0.03757, 0.00685, -0.03914, 0.024, -0.02605, -0.00085, 0.03783, 0.0062, 0.01579, 0.00588, -0.02236, -0.0007, -0.00417, -0.00117, 0.00349, -0.00508, -0.00414, -0.0014, -0.0071, -0.05453, -0.00129, 7e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00365, -0.01319, -0.10473, 0.0814, -0.08732, -0.03313, -0.06245, -0.07667, 0.08598, 0.24316, 0.05782, 0.02433, 0.0212, -0.07807, -0.143, 0.04955, -0.00088, -0.00983, 0.15885, -0.0488, 0.05315, -0.09772, 0.02026, -0.03138, -0.01316, -0.00034, -0.0225, 0.0128, -0.0021, 0.03694, -0.01455, 0.01551, -0.04107, 0.05396, 0.03253, -0.00093, 0.08898, 0.02277, -0.05736, -0.02159, 0.03546, 0.02612, 0.02841, -0.00581, 0.03029, -0.03011, 0.02461, -0.05396, 0.01845, 0.04604, -0.02104, -0.03689, -0.00775, 0.0063, -0.00274, 0.02768, 0.00674, 0.05881, 0.12485, 0.03337, 0.01712, -0.05058, 0.05257, -0.07116, -0.0416, 0.0549, 0.06341, -0.11871, 0.08609, -0.00862, 0.02508, -0.0382, 0.04372, -0.10609, -0.09004, 0.04328, -0.13484, 0.07476, -0.03718, 0.00381, -0.04249, -0.0719, 0.03012, -0.04619, -0.01342, -0.07442, 0.01784, -0.02039, -0.02222, -0.04444, -0.0227, 0.02267, -0.02682, -0.00904, 0.06122, 0.01582, -0.06568, 0.01703, -0.02669, 0.07138, 0.02891, -0.0665, -0.02133, -0.03739, 0.02974, 0.0477, -0.17094, 0.09132, 0.23207, 0.03316, 0.00109, 0.12012, -0.1228, -0.11895, -0.14678, 0.31145, -0.26449, -0.02842, 0.34327, 0.30397, 0.14461, 0.1988, -0.07045, 0.09984, -0.0264, -0.0058, -0.01517, 0.00722, -0.00299, -0.0094, -0.00201, -0.00503, 0.00475, -0.00038, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.01003, -0.05142, -0.0475, -0.12034, -0.09093, 0.13551, -0.17331, 0.01201, -0.13894, 0.07395, -0.09514, -0.05944, -0.05095, 0.06296, 0.06112, -0.11428, 0.08529, 0.03125, 0.01659, 0.07337, -0.01952, -0.06914, 0.01847, -0.03342, -0.01791, 0.04283, -0.03834, 0.018, 0.0368, 0.04006, -0.02774, -0.00811, -0.11182, -0.11976, 0.01614, -0.05565, -0.11395, -0.02345, -0.10858, 0.11013, -0.06232, 0.25704, -0.01835, 0.00629, 0.04549, -0.00962, -0.1349, -0.05196, -0.01258, -0.09774, -0.05511, 0.11816, -0.08787, 0.04865, -0.07117, -0.0736, -0.00293, -0.01551, 0.02973, -0.0577, 0.00852, -0.06312, -0.08099, 0.01145, 0.06876, 0.05399, 0.04734, -0.05371, 0.08496, -0.0044, 0.03205, 0.04487, 0.06386, -0.09167, -0.03541, 0.03789, 0.0244, 0.08255, -0.07345, -0.01746, 0.0355, 0.17674, 0.03839, 0.02967, 0.06364, 0.1988, 0.06509, 0.11092, 0.04036, 0.00386, -0.04428, -0.09678, 0.05302, -0.14476, 0.12428, 0.06312, 0.02952, 0.24846, 0.04664, 0.01416, 0.12311, -0.04843, -0.01308, -0.01073, 0.006, -0.11291, -0.3297, 0.06769, -0.16388, 0.16658, 0.00928, -0.00344, -0.12194, 0.03864, -0.04856, -0.01919, -0.03481, 0.12997, -0.0731, 0.04758, -0.02373, -0.06965, 0.01746, -0.27437, -0.00738, -0.00051, -0.02123, -0.00647, 0.00474, -0.00451, -0.00078, -0.04478, 0.0013, 0.00084, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.02943, -0.01187, -0.08296, 0.09191, -0.08201, -0.04978, -0.0376, -0.03488, 0.0949, 0.18713, 0.05782, -0.00034, -0.0229, 0.0799, -0.1297, -0.02487, -0.10795, -0.11411, 0.09574, -0.10785, -0.0728, -0.06991, 0.01499, -0.02589, 0.01731, -0.03695, 0.01114, -0.01842, -0.01453, -0.00854, 0.01077, 0.02691, 0.14052, 0.04957, -0.09894, -0.03304, -0.08914, -0.04139, 0.01104, -0.00383, -0.10461, -0.00532, -0.05358, 0.02728, -0.02527, -0.02156, -0.03764, 0.06566, 0.07061, -0.04345, -0.02083, 0.11919, -0.0199, 0.00309, -0.00597, -0.02556, 0.02298, -0.03694, 0.0139, -0.02614, 0.01138, -0.05019, 0.11274, 0.06653, 0.12121, -0.04256, -0.02344, 0.07845, -0.03375, -0.06766, -0.02611, 0.11167, -0.03845, 0.16417, 0.07127, -0.01021, 0.10019, -0.06425, 0.02805, 0.01965, 0.02221, 0.0216, -0.03218, 0.0176, -0.01018, -0.03491, -0.03047, -0.04441, 0.02646, 0.00535, -0.00287, 0.05868, 0.00272, 0.05666, -0.00837, 0.01075, -0.03986, 0.00528, -0.0225, 0.033, -0.00361, -0.03667, -0.00395, -0.01484, -0.01191, -0.00761, -0.0302, 0.04583, 0.13614, -0.03943, 0.09883, 0.15525, -0.12414, -0.27127, -0.11694, 0.14876, 0.01273, 0.41805, -0.41311, -0.21317, 0.03053, -0.08446, -0.07372, 0.10308, 0.04545, -0.02682, -0.00895, 0.01845, 0.001, -0.00629, 0.00098, -0.00656, 0.00126, -0.00081, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.01151, -0.01816, -0.08013, -0.12651, -0.0706, 0.15546, -0.15276, -0.00763, -0.1079, 0.01319, -0.0875, -0.07141, 0.04102, -0.0127, 0.07446, 0.0669, -0.00352, 0.01074, -0.02412, -0.105, 0.05231, -0.01963, 0.06408, -0.02601, -0.01034, 0.00096, -0.03332, 0.00984, 0.04842, 0.07645, 0.00401, 0.02945, -0.09143, -0.00166, 0.01458, -0.04908, -0.07762, 0.00244, -0.10742, 0.03867, -0.05182, 0.18427, -0.06458, -0.04813, 0.01441, -0.0312, -0.1184, 0.00998, -0.0163, -0.05902, -0.0637, 0.11462, -0.03682, 0.07027, -0.06267, -0.11482, -0.02224, -0.01422, 0.05746, -0.11023, 0.11184, -0.08163, -0.08219, 0.08047, -0.02263, 0.00146, -0.03898, -0.00529, 0.04192, 0.02499, 0.0016, -0.0517, -0.05812, -0.05778, -0.01468, 0.03572, -0.04496, -0.00877, 0.00484, 0.0535, -0.04006, 0.08297, 0.04024, 0.03651, -0.05349, -0.28092, 0.0467, 0.00801, -0.03678, 0.01175, -0.06023, 0.05638, -0.03252, -0.10424, 0.18322, 0.0692, 0.00042, 0.25772, -0.09014, -0.01293, -0.04162, -0.05905, 0.00507, 0.01204, 0.01617, 0.13323, 0.37504, -0.06435, 0.14931, -0.1612, 0.07966, -0.01158, 0.10641, -0.0573, 0.10914, 0.01233, 0.08761, -0.11706, 0.05566, -0.12036, -0.02569, -0.00223, -0.00706, 0.34772, -0.01782, 0.01979, 0.01418, -0.00106, -0.00645, -0.0193, -0.00963, -0.05549, -0.00116, 0.00016, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00874, -0.026, -0.08844, 0.05918, -0.01957, -0.03661, -0.06757, 0.05248, 0.07537, -0.04883, 0.0191, 0.03655, 0.0621, -0.00285, 0.10114, -0.00041, -0.03584, -0.02534, -0.02474, 0.01594, 0.03055, 0.05045, 0.00918, 0.04124, -0.01191, 0.00833, 0.00226, 0.05269, 0.01257, -0.0147, 0.08464, 0.05869, 0.0267, -0.09168, 0.01925, -0.02371, -0.01563, 0.03411, 0.05348, -0.01807, 0.03729, 0.08834, 0.02718, -0.02386, -0.00732, -0.04496, -0.02569, -0.02433, -0.09254, 0.00356, -0.03549, -0.02505, 0.00373, 0.03681, 0.00635, -0.01213, 0.02379, 0.04584, -0.0048, 0.01746, 0.00033, -0.03176, 0.0612, -0.10777, -0.10003, 0.00942, -0.06179, 0.15167, 0.06227, 0.09593, 0.066, -0.2027, 0.06223, 0.09173, -0.05401, 0.03242, -0.05611, -0.04427, -0.16192, 0.2879, 0.28983, 0.18249, -0.14957, 0.06013, 0.09914, -0.02551, -0.0092, 0.02443, -0.21086, -0.00406, -0.00401, -0.02265, -0.03016, 0.09758, -0.04293, 0.04192, -0.00754, -0.13229, 0.01224, -0.0452, 0.08448, -0.06873, 0.0037, -0.05127, 0.03703, -0.11379, 0.0225, 0.18466, -0.01951, 0.02414, 0.3259, 0.07334, 0.13689, 0.14393, -0.0618, -0.1015, 0.07262, -0.03372, -0.03603, 0.05178, 0.2413, -0.03066, -0.30762, 0.01155, -0.02784, 0.00752, -0.01951, 0.01054, 0.00388, 0.00148, 0.00366, -0.00735, -0.00067, -0.00108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00622, -0.0674, -0.04863, 0.04041, -0.06611, 0.03048, 0.01506, -0.05799, -0.10122, -0.01597, -0.12229, -0.012, 0.09379, 0.17703, 0.05587, -0.06664, -0.02669, -0.07769, 0.00376, -0.02698, 0.19858, -0.0286, 0.10537, -0.03445, -0.0272, -0.00046, -0.11155, 0.00045, 0.00854, -0.05056, -0.08393, -0.08434, 0.02086, -0.05326, -0.00248, -0.01483, -0.04576, 0.01245, 0.16066, 0.1075, -0.02354, -0.11902, 0.0584, -0.02427, 0.1426, 0.00444, -0.22838, 0.24304, 0.03671, 0.04291, -0.06705, -0.10414, 0.12572, -0.04025, 0.29717, -0.01808, 0.09133, -0.00182, 0.05367, 0.10725, -0.00078, 0.05556, -0.01182, -0.08382, -0.01689, -0.03895, 0.06859, -0.02621, 0.02588, 0.02877, 0.02128, 0.00373, 0.02714, 0.03808, -0.01716, -0.06561, -0.02461, 0.05056, -0.01662, -0.15469, 0.00155, -0.0674, 0.01243, -0.01033, -0.00989, -0.00475, 0.0897, 0.02105, 0.03078, 0.08955, -0.15925, -0.01715, -0.03157, -0.05039, 0.07249, -0.06402, -0.00029, -0.16197, -0.0005, -0.00122, -0.13978, -0.43068, 0.00924, -0.03334, -0.24142, -0.15907, 0.01535, 0.08986, -0.06569, -0.02938, -0.05788, 0.0051, 0.07075, -0.01289, -0.03818, 0.01126, -0.00209, -0.01376, 0.01028, -0.02638, 0.00373, -0.0272, 0.03667, 0.05375, -0.02336, 0.01492, -0.01226, -0.00124, -0.00208, 0.02146, -0.00401, -0.04815, -0.00197, -0.00172, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.008, 0.01842, 0.08255, -0.05437, -0.01217, 0.03974, 0.06882, -0.05854, 0.08605, 0.04678, -0.03244, -0.03765, -0.05141, 0.02232, 0.09438, -0.00693, 0.03268, 0.01664, -0.02501, -0.01882, -0.00852, 0.05329, 0.00247, 0.04478, 0.00885, -0.00833, -0.01452, 0.05232, 0.01156, 0.00905, -0.09336, -0.06762, 0.02424, 0.08527, 0.01941, -0.02194, -0.0105, 0.03253, -0.03548, 0.02979, 0.03965, -0.1009, -0.02059, -0.02105, 0.02296, -0.04518, 0.0004, 0.05093, -0.09602, -0.00119, 0.02789, 0.01344, -0.01012, 0.04102, 0.02639, 0.01007, -0.0136, 0.04576, -0.01068, -0.00555, 0.00041, -0.03768, -0.06213, -0.09789, 0.09757, 0.01364, 0.06896, -0.15363, 0.05904, 0.09218, -0.06326, -0.20188, -0.05887, 0.08698, 0.0518, 0.03944, 0.05307, -0.04957, 0.15911, 0.30317, -0.28789, 0.1888, 0.15003, -0.0609, 0.09963, 0.02483, -0.01901, 0.02197, 0.21297, -0.01389, 0.01354, 0.02062, -0.0265, 0.10253, -0.05065, 0.04871, 0.00746, -0.11366, -0.01222, 0.04479, 0.09935, -0.02093, -0.00267, 0.04729, 0.06337, -0.0956, -0.02067, 0.17365, -0.01216, 0.02723, 0.33029, -0.07233, 0.12827, -0.14448, -0.05722, 0.10213, 0.07241, -0.032, 0.03694, 0.05437, -0.23943, -0.02748, 0.30979, 0.00556, -0.0251, 0.00583, -0.01804, 0.01061, -0.00409, -0.00089, -0.00408, 0.002, -0.00045, -0.00089, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00714, -0.06986, -0.05806, 0.04667, 0.06786, 0.02626, 0.00753, -0.05186, 0.09231, -0.02125, -0.11944, -0.0079, 0.10005, 0.17564, -0.06666, -0.06628, -0.03047, -0.08001, -0.00102, -0.02506, 0.20074, 0.02287, 0.10574, 0.02971, -0.02834, 0.00046, -0.11062, -0.00624, -0.00987, -0.05187, -0.07411, -0.07737, -0.02367, -0.06302, 0.00035, 0.01735, 0.0472, -0.01613, 0.16557, 0.10486, 0.01929, -0.10857, 0.06103, 0.02675, 0.14093, 0.00054, -0.22981, 0.23888, -0.0263, -0.04304, -0.07055, -0.10626, -0.12537, 0.03596, 0.29606, -0.01931, 0.09339, -0.00324, -0.05282, 0.10852, 0.00074, -0.05173, -0.00501, 0.09517, -0.02779, 0.03768, 0.06138, -0.00936, -0.03257, -0.03915, 0.02841, 0.01859, 0.03382, -0.04794, -0.023, 0.06165, -0.03064, -0.04538, -0.03434, 0.12207, 0.03343, 0.04691, -0.0041, -0.00365, -0.00108, -0.00753, -0.08814, -0.02361, 0.00739, -0.08856, 0.15872, -0.01954, 0.0347, 0.03934, -0.06733, 0.05902, -0.00112, 0.17555, 0.00085, -0.00619, 0.12964, 0.43563, 0.00959, -0.03878, 0.23587, 0.17063, 0.01773, -0.10963, 0.06744, 0.02655, 0.02167, 0.01314, -0.08538, 0.00303, 0.04475, 2e-005, -0.00591, 0.01739, 0.00626, 0.02052, 0.03026, 0.03041, 0.0026, -0.0547, 0.02628, -0.01565, 0.01433, 7e-005, -0.00164, -0.0215, -0.00358, -0.04867, 0.00204, 0.00182, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00186, 0.01449, 0.05829, -0.03693, -0.0316, 0.01679, 0.0551, -0.03301, 0.07658, 0.0421, 0.02396, -0.04151, -0.04677, -0.0613, 0.07783, 0.09082, 0.02926, 0.06896, -0.02824, -0.00093, -0.07423, 0.04921, -0.06648, 0.07656, 0.00087, 0.04262, -0.01152, 0.04964, 0.00657, 0.06784, -0.02775, -0.14176, 0.01972, 0.18025, 0.01953, -0.00086, -0.04916, 0.01887, 0.12359, 0.09979, 0.04682, -0.0264, 0.16757, -0.00591, -0.02599, 0.00613, -0.01651, 0.14208, -0.04904, 0.01659, -0.02929, 0.12605, 0.04959, 0.0283, -0.07699, -0.09149, 0.00107, -0.08531, -0.06825, -0.00216, -0.12743, -0.04176, -0.00828, 0.10711, -0.01845, -0.10337, 0.02157, -0.00513, 0.28914, -0.02288, 0.01231, -0.01943, 0.08138, 0.01595, -0.05001, 0.04141, 0.01145, -0.00293, -0.05116, -0.21601, 0.16631, -0.09113, -0.04426, 0.03922, -0.00787, 0.00159, -0.09485, -0.00756, -0.15804, 0.02057, -0.01809, -0.00652, 0.02616, -0.05046, 0.00366, 0.00205, -0.02908, 0.05319, -0.00541, -0.0311, -0.12777, 0.09713, -0.00891, -0.06116, 0.08221, -0.04609, -0.02802, 0.05695, -0.09613, -0.14411, 0.0872, -0.20046, 0.06548, -0.1576, 0.01689, -0.00109, -0.04206, 0.06202, 0.02047, 0.08762, -0.00339, 0.01295, 0.06645, 0.00228, 0.02405, 0.00282, -0.00518, -0.00082, -0.00353, -0.00508, -0.08022, 0.0046, 0.0106, 0.06249, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00225, -0.07545, -0.05046, 0.08272, 0.05139, -0.04411, 0.05854, -0.0089, 0.06583, -0.04812, -0.04652, -0.03494, 0.0132, -0.023, -0.02285, 0.00912, -0.03004, 0.03128, 0.01078, -0.03014, -0.05761, 0.01006, 0.00277, -0.01088, 0.02715, -0.01251, 0.04846, -0.00566, 0.03913, -0.05672, -0.04131, -0.0145, -0.02236, -0.0237, 0.02945, 0.01127, -0.00139, -0.03649, -0.05517, -0.02272, 0.00671, -0.11385, -0.109, 0.05611, 0.00548, -0.00213, 0.09572, -0.00813, -0.06252, -0.04187, 0.07312, 0.04639, -0.03409, 0.00862, 0.01937, 0.00238, -0.01426, 0.00268, -0.05038, -0.04739, -0.03819, -0.02275, -0.16844, 0.02286, 0.13494, -0.00031, 0.19082, -0.22372, 0.03172, 0.0179, -0.02291, -0.00603, 0.08006, -0.0329, -0.08788, -0.01073, 0.14389, -0.06199, -0.00777, 0.01082, 0.12043, 0.00459, -0.19109, 0.10019, 0.01171, -0.1807, 0.00029, -0.06738, -0.04612, 0.05801, -0.08753, -0.22074, 0.0019, -0.11954, -0.02014, -0.0766, 0.02913, 0.04439, -0.0633, -0.0617, -0.34925, 0.11476, 0.02686, -0.00165, -0.15419, -0.11398, -0.01785, -0.05949, 0.17636, 0.32716, 0.15666, 0.0999, -0.10203, 0.04925, -0.02841, 0.02219, 0.08579, -0.07984, -0.00692, -0.00027, -0.03393, -0.0463, 0.0347, 0.01218, -0.00772, 0.00343, -0.00917, -0.02035, 0.00455, -0.01482, -0.00243, -0.05301, 0.03098, 0.1475, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00184, 0.01697, 0.06903, -0.04333, -0.02692, 0.0262, 0.06266, -0.05009, 0.08164, 0.04668, -0.00663, -0.03951, -0.04474, -0.0219, 0.0888, 0.04774, 0.03109, 0.03429, -0.02665, -0.00948, -0.03871, 0.04887, -0.02781, 0.06681, 0.00289, 0.01291, -0.0226, 0.04866, 0.02404, 0.05007, -0.05037, -0.10525, 0.02422, 0.13442, 0.03318, -0.0131, -0.03711, 0.04804, 0.04109, 0.05921, 0.0327, -0.04609, 0.06555, -0.00025, -0.01491, -0.00187, -0.00837, 0.09032, -0.06531, 0.01395, 0.00353, 0.0832, 0.01498, 0.02536, -0.04729, -0.05397, -0.00057, -0.02448, -0.05613, -0.01714, -0.0697, -0.0536, -0.03456, 0.017, 0.0172, -0.04856, 0.02706, -0.05295, 0.15781, -0.00604, -0.00241, -0.0811, 0.03665, 0.02403, -0.01794, -0.01853, 0.0286, -0.03101, 0.02171, -0.00691, 0.003, 0.00934, 0.02691, -0.00462, -0.0043, 0.02974, -0.02263, -0.00805, -0.02841, 0.02005, 0.00116, -0.00018, 0.03177, -0.0333, 0.01184, -0.02388, 0.00392, 0.02028, 0.00062, 0.00118, -0.07155, 0.03152, -0.0243, -0.01758, -0.01332, 0.00515, 0.01277, -0.04696, -0.04679, -0.06538, -0.1263, -0.06155, -0.02664, -0.01015, 0.01604, -0.05339, -0.05736, 0.05807, -0.00552, 0.00269, 0.14932, 0.03354, -0.10484, 0.00014, 0.02515, 0.00661, 0.00667, -0.00145, 0.00207, -0.00795, 0.0786, -0.00505, -0.04513, -0.22812, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00694, -0.07083, -0.04816, 0.07838, 0.0741, -0.01947, 0.05738, -0.04714, 0.07752, -0.01945, -0.08391, -0.01297, 0.06926, 0.06859, -0.05602, -0.01508, -0.02977, -0.01077, 0.01393, 0.02885, 0.0777, 0.01124, 0.04604, 0.00136, -0.02256, -0.00298, -0.05162, -0.01187, 0.02628, 0.00152, 0.00061, -0.06733, -0.02189, -0.00927, 0.00923, 0.00611, 0.03551, -0.03217, 0.00773, -0.04053, 0.00821, -0.03656, 0.011, 0.05175, -0.04283, 0.00113, 0.11487, -0.05927, -0.07631, -0.05084, 0.05286, 0.07689, -0.12028, 0.03353, -0.08399, -0.00129, -0.04011, -0.00673, -0.0804, -0.02931, 0.02206, -0.03946, -0.02994, 0.07108, 0.02865, 0.0135, 0.01575, -0.01173, -0.00357, -0.01384, -0.01784, 0.01726, -0.00618, -0.0555, 0.00983, 0.04815, 0.01184, -0.00386, 0.03829, 0.03765, -0.0246, 0.00746, 0.00722, -0.02432, 0.05485, 0.00806, -0.03143, -0.03585, -0.13722, 0.03026, -0.01843, -0.1086, -0.02573, -0.01166, -0.10705, 0.06162, -0.00128, 0.06459, -0.03093, -0.02931, -0.1446, -0.09045, -0.01155, 0.01156, -0.05822, -0.01251, -0.00212, 0.11335, 0.00729, 0.02656, -0.04892, 0.0402, -0.00912, 0.00834, -0.02722, 0.00982, 0.01769, -0.03467, -0.0062, -0.0189, -0.01382, -0.00793, 0.02305, 0.00529, -0.00959, 0.00042, -0.00492, -0.00523, 0.00191, -0.00132, -0.04728, -0.04064, -0.04468, -0.23245, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00116, 0.0193, 0.07946, -0.04966, -0.03883, 0.03491, 0.07002, -0.0656, 0.08983, 0.05077, -0.03659, -0.03827, -0.04423, 0.01473, 0.10471, 0.00565, 0.03286, 0.00157, -0.02703, -0.01994, -0.00662, 0.05259, 0.01023, 0.06483, 0.0075, -0.01738, -0.03117, 0.05237, 0.0417, 0.03065, -0.07364, -0.0658, 0.0274, 0.08691, 0.04959, -0.02487, -0.02594, 0.07771, -0.04387, 0.01999, 0.02091, -0.06854, -0.03799, 0.00606, -0.00146, -0.00633, -0.00163, 0.04045, -0.07189, 0.01152, 0.03533, 0.03911, -0.01123, 0.01638, -0.01527, -0.01618, 0.00015, 0.03417, -0.04629, -0.03191, -0.01985, -0.06503, -0.06502, -0.07432, 0.05765, 0.00714, 0.03903, -0.10506, 0.02642, 0.00744, -0.01724, -0.13294, -0.00448, 0.02866, 0.01186, -0.07467, 0.04925, -0.05313, 0.09182, 0.20671, -0.15491, 0.11254, 0.09265, -0.04492, -0.00871, 0.05123, 0.06335, -0.01534, 0.10355, 0.01675, 0.02062, 0.00372, 0.03719, -0.02263, 0.01757, -0.05185, 0.03711, -0.0154, 0.00704, 0.03145, -0.02533, -0.02797, -0.03998, 0.02613, -0.11023, 0.05026, 0.04965, -0.15263, 0.00663, 0.02181, -0.32679, 0.07641, -0.12139, 0.13844, 0.01744, -0.10475, -0.06779, 0.05059, -0.03289, -0.08208, 0.29402, 0.05783, -0.28386, -0.00056, 0.02536, 0.0093, 0.01831, -0.00495, 0.00949, -0.01333, 0.00382, -0.01188, 0.04705, 0.16851, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00996, -0.06887, -0.0474, 0.07678, 0.06406, -0.00917, 0.05671, -0.06322, 0.08687, -0.00731, -0.09878, -0.00353, 0.0932, 0.10672, -0.06562, -0.02407, -0.02961, -0.02809, 0.01149, 0.05458, 0.13457, 0.01664, 0.06334, 0.01651, -0.04494, 0.00215, -0.09405, -0.0094, 0.01986, 0.02702, 0.01914, -0.09213, -0.02315, -0.0009, 0.00275, 0.00404, 0.05215, -0.03041, 0.03771, -0.04664, 0.01092, -0.00236, 0.06437, 0.05184, -0.06456, 0.00644, 0.12239, -0.07947, -0.07003, -0.05484, 0.04408, 0.09153, -0.15075, 0.03896, -0.12905, -0.00454, -0.05147, -0.01492, -0.09779, -0.02185, 0.03946, -0.04542, 0.03031, 0.09541, -0.01896, 0.01866, -0.06122, 0.08027, -0.01788, -0.03175, -0.01482, 0.04322, -0.04212, -0.0714, 0.05071, 0.07844, -0.04485, 0.03122, 0.0565, 0.05137, -0.08184, 0.0099, 0.0899, -0.07633, 0.0656, 0.08894, -0.03113, -0.03013, -0.18069, 0.01386, 0.01234, -0.0595, -0.03825, 0.02828, -0.15281, 0.12379, -0.01519, 0.07206, -0.01803, -0.01576, -0.06119, -0.17679, -0.02615, 0.01662, -0.01289, 0.02593, 0.00481, 0.19176, -0.0678, -0.10752, -0.12648, 0.01175, 0.03651, -0.01477, -0.02646, 0.00517, -0.01119, -0.01433, -0.00454, -0.02463, -0.00449, 0.00894, 0.02945, 0.00413, -0.00924, -0.0002, -0.00409, 0.00015, -0.00081, 0.00722, 0.04145, -0.05921, 0.0029, -0.02838, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00828, 0.01695, 0.09009, -0.0508, -0.02934, 0.03624, 0.06386, -0.06781, 0.08004, 0.05979, -0.05162, -0.03657, -0.05354, 0.07138, 0.08811, -0.02941, 0.01944, -0.01745, -0.03022, -0.00963, 0.02495, 0.05374, 0.02738, 0.06916, 0.00033, -0.03563, -0.04938, 0.05612, 0.02267, 0.05421, -0.08887, -0.05101, 0.02113, 0.05931, 0.04766, -0.0214, -0.00206, 0.05129, -0.1106, -0.04072, 0.00618, -0.05288, -0.10696, -0.00094, -0.01005, -0.02835, -0.00384, -0.05134, -0.09359, -0.01352, 0.04995, -0.04332, -0.08908, 0.01093, 0.02804, 0.03291, -0.02345, 0.05329, -0.00203, -0.00693, 0.05685, 0.01686, -0.02143, -0.08305, 0.03624, 0.05151, -0.00657, -0.00193, -0.12474, -0.01706, 0.01194, -0.0068, 0.01223, -0.01415, 4e-005, -0.06708, 0.02022, -0.04806, 0.0171, 0.03382, -0.00461, 0.02035, 0.00141, -0.00315, 0.00723, 0.00537, -0.00279, 0.00376, 0.01827, 0.02666, -0.01211, 0.02011, 0.02389, -0.01888, 0.03736, -0.03005, -0.00205, 0.01701, 0.0034, 0.01926, -0.0546, 0.00218, -0.01859, -0.01061, -0.03029, -0.02237, 0.00903, -0.0903, -0.01707, -0.03732, -0.10621, -0.0712, -0.00964, -0.00231, 0.01895, -0.05752, -0.05573, 0.06255, -0.00781, 0.0077, 0.13993, 0.0285, -0.12441, -0.00483, 0.01446, 0.00605, 0.00534, -0.00553, 0.00342, -0.00877, -0.08551, 0.00811, -0.04137, -0.10789, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.01075, -0.08048, -0.04184, 0.07898, 0.05753, -0.02401, 0.04762, -0.04781, 0.09545, -0.01651, -0.08787, -0.00543, 0.0694, 0.06441, -0.06409, -0.01551, -0.02532, -0.01117, 0.00659, 0.0607, 0.09776, 0.02038, 0.03451, 0.02173, -0.03502, -0.00386, -0.06962, -0.00351, 0.01662, 0.0271, 0.0399, -0.0615, -0.03101, 0.02052, 0.00228, 0.00397, 0.04166, -0.03293, 0.03107, -0.02501, 0.00801, 0.00296, 0.05961, 0.04734, -0.04309, 0.0087, 0.09929, -0.04361, -0.05341, -0.04662, 0.03791, 0.06482, -0.11574, 0.03287, -0.11692, -0.00799, -0.03452, -0.02025, -0.09046, -0.02479, 0.01763, -0.0448, 0.03559, 0.09966, -0.04609, 0.00539, -0.04328, 0.06244, 0.01364, -0.02016, -0.00922, 0.03966, -0.06191, -0.04535, 0.0501, 0.07669, -0.04667, 0.04697, 0.00135, 0.03716, -0.04307, 0.01549, 0.03904, -0.02625, 0.03027, 0.01443, 0.00588, -0.00562, 0.01059, 0.00537, 0.01322, -0.06349, -0.02003, 0.03655, -0.08997, 0.10272, 0.02534, 0.02909, -0.00665, 0.00181, 0.01682, -0.14614, 0.00232, 0.01608, -0.0719, -0.03903, -0.01746, 0.01814, -0.02732, -0.07251, -0.04915, -0.02232, 0.0466, -0.02827, 0.01588, -0.01277, -0.0362, 0.01032, -0.0038, 0.00691, 0.0334, 0.00779, 0.01802, 0.01209, -0.00596, 0.0045, -0.00161, 0.00178, 0.00099, 0.00592, -0.0398, -0.05599, 0.03347, 0.27831, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.01849, 0.01376, 0.10148, -0.05167, -0.03224, 0.03624, 0.0571, -0.06926, 0.0729, 0.0677, -0.06524, -0.03497, -0.06466, 0.12521, 0.07482, -0.06396, 0.0057, -0.0358, -0.03559, 0.00114, 0.05302, 0.05854, 0.04134, 0.07973, -0.00777, -0.05415, -0.06526, 0.06299, 0.00351, 0.07802, -0.10376, -0.03534, 0.01326, 0.03387, 0.04775, -0.01648, 0.02205, 0.02533, -0.17765, -0.10109, -0.0077, -0.03634, -0.17923, -0.00772, -0.01759, -0.04785, -0.00727, -0.1415, -0.10472, -0.038, 0.06501, -0.12832, -0.16129, 0.00062, 0.07273, 0.08186, -0.04795, 0.07013, 0.03923, 0.01645, 0.12877, 0.09597, 0.02304, -0.09163, 0.00969, 0.09857, -0.05169, 0.10034, -0.27816, -0.04381, 0.04132, 0.12744, 0.02624, -0.05795, -0.01386, -0.0569, -0.00815, -0.03729, -0.06079, -0.13681, 0.14982, -0.0674, -0.09565, 0.04285, 0.01431, -0.04579, -0.05817, 0.01993, -0.05327, 0.03342, -0.04129, 0.03533, 0.00834, -0.01752, 0.06073, -0.00815, -0.03768, 0.04415, -0.00025, 0.00865, -0.08026, 0.03739, 0.00642, -0.04692, 0.04643, -0.10177, -0.03097, -0.03745, -0.04069, -0.09472, 0.12562, -0.21643, 0.10556, -0.1466, 0.02605, -0.01042, -0.04432, 0.07707, 0.01786, 0.10043, -0.00507, 0.0016, 0.04498, -0.00857, 0.00243, 0.00456, -0.00566, -0.00704, -0.00476, -0.00417, 0.08477, -0.01002, 0.01181, -0.04606, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.01079, -0.10761, -0.02788, 0.08395, 0.08866, -0.05856, 0.02628, -0.01238, 0.10434, -0.0371, -0.06348, -0.0097, 0.01367, -0.0304, -0.07258, 0.00098, -0.01618, 0.02625, 0.00285, 0.07521, 0.01387, 0.01708, -0.03185, 0.01153, -0.01407, -0.019, -0.01368, -0.00526, 0.00826, 0.03005, 0.08451, 0.01, -0.04584, 0.06928, -0.00456, 0.00641, 0.01811, -0.04279, 0.01232, 0.02158, -0.00526, 0.01566, 0.04197, 0.03092, 0.00644, 0.00261, 0.04564, 0.03364, -0.04147, -0.02857, 0.02488, -0.00263, -0.05421, 0.02918, -0.08648, -0.0135, 0.00174, -0.0261, -0.06355, -0.02983, -0.00988, -0.04017, 0.05061, 0.10614, -0.11251, -0.02294, -0.00616, 0.02548, 0.08328, 0.01358, 0.00508, 0.00657, -0.10747, 0.02668, 0.05014, 0.06122, -0.0535, 0.06099, -0.13071, -0.02779, 0.05659, 0.00925, -0.08567, 0.09287, -0.03365, -0.16087, 0.04958, 0.07037, 0.44958, -0.00133, 0.01069, -0.07237, 0.02043, 0.0685, 0.07673, 0.05354, 0.11663, -0.06324, 0.01767, 0.04126, 0.20359, -0.07491, 0.07287, 0.01115, -0.2044, -0.18752, -0.07052, -0.38378, 0.0639, 0.01019, 0.1357, -0.11462, 0.07456, -0.07246, 0.11481, -0.05032, -0.09498, 0.06807, 0.00236, 0.08702, 0.10752, -0.00075, 0.00193, 0.02278, 0.0007, 0.01826, 0.00214, 0.00701, 0.00607, -0.00375, -0.00911, -0.0492, -0.02122, -0.15588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.01105, 0.01308, 0.09084, -0.05071, -0.03383, 0.03158, 0.05703, -0.06431, 0.07915, 0.05994, -0.0455, -0.03539, -0.05329, 0.07474, 0.08235, -0.02213, 0.01516, -0.0114, -0.02684, 0.00816, 0.02383, 0.04798, 0.01179, 0.0926, -0.00934, -0.03084, -0.06037, 0.06792, -0.00297, 0.08114, -0.07774, -0.04396, 0.00219, 0.06619, 0.02635, -0.01149, -0.00728, 0.02922, -0.09092, -0.04208, -0.00128, -0.02032, -0.07819, -0.01378, -0.01187, -0.02782, -0.01419, -0.05804, -0.05373, -0.02467, 0.03028, -0.06942, -0.09444, -0.001, 0.01935, 0.04527, -0.03346, 0.02454, 0.02428, 0.00949, 0.05445, 0.06471, 0.03921, -0.02781, -0.02227, 0.04806, -0.04678, 0.08287, -0.13089, -0.03417, 0.03132, 0.09913, -0.0142, -0.03178, -0.00464, -0.0074, -0.02883, 0.01114, -0.067, -0.12034, 0.1014, -0.06403, -0.06163, 0.02404, -0.0028, -0.03111, -0.02545, 0.04426, 0.00837, -0.00033, -0.00565, 0.0317, -0.02005, 0.03489, 0.02057, 0.01655, -0.0014, 0.0006, 0.00613, -0.00583, 0.07107, -0.02722, 0.0131, 0.00903, -0.00611, 0.02172, -0.00882, 0.01249, 0.05018, 0.06569, 0.03763, 0.08735, -0.00282, 0.06019, -0.00296, 0.03563, 0.0453, -0.05505, -0.00272, -0.02646, -0.08724, -0.0287, 0.03542, -0.00379, -0.01861, -0.01471, -0.00207, 0.00424, -8e-005, -0.00781, -0.08668, 0.00299, 0.01861, 0.21155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00655, -0.08191, -0.041, 0.0835, 0.06243, -0.06894, 0.03776, -0.02147, 0.09811, -0.05911, -0.02907, -0.02609, 0.03797, -0.08263, -0.06235, 0.04252, -0.02629, 0.06371, 0.01931, 0.02947, -0.12819, 0.01985, -0.04847, 0.03442, -0.02117, 0.05673, 0.05287, -0.02505, -0.00647, 0.04068, -0.13923, -0.02816, -0.08836, 0.01121, 0.21377, 0.01356, -0.18829, -0.00988, -0.02864, -0.00546, -0.06766, 0.04328, -0.01777, -0.00941, 0.00533, -0.03933, -0.08229, -0.00919, 0.04355, 0.00841, -0.02123, -0.0305, 0.04872, -0.01559, 0.02174, -0.00172, -0.00104, 0.00019, 0.02347, 0.00617, -0.00281, 0.00409, 0.07614, -0.00968, -0.03751, -0.01078, -0.04445, 0.07327, 0.00839, -0.00509, 0.00747, 0.00804, -0.04139, 0.01182, 0.0365, 0.00912, -0.05066, 0.02232, -0.01981, -0.00267, -0.0353, 0.00355, 0.02375, -0.00725, -0.01007, -0.00886, 0.0105, 0.01482, 0.0812, -0.01479, 0.01328, -0.00721, 0.00273, 0.03074, -0.00421, 0.02901, 0.02772, -0.01251, 0.0059, 0.01604, 0.07442, -0.02927, 0.0103, 0.00199, -0.0242, -0.03244, -0.01637, -0.06598, -0.00176, -0.02998, 0.01555, -0.02855, 0.02932, -0.01638, 0.02965, -0.01672, -0.03156, 0.02435, -0.0034, 0.01349, 0.03639, 0.00031, -0.00177, 0.00867, -0.00179, 0.0043, 0.00242, 0.00117, 0.00045, 0.00248, 0.01278, -0.06095, 0.03124, 0.24811, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00322, 0.01161, 0.08096, -0.04967, -0.02478, 0.02712, 0.05679, -0.0595, 0.08293, 0.05258, -0.02646, -0.03534, -0.04288, 0.02628, 0.08736, 0.01808, 0.02444, 0.01108, -0.0172, 0.01631, -0.00094, 0.03486, -0.01793, 0.09909, -0.01175, -0.01022, -0.05732, 0.0701, -0.00859, 0.08379, -0.04462, -0.05308, -0.00612, 0.10136, -0.00513, -0.00601, -0.02756, 0.0315, -0.00188, 0.01656, 0.00576, -0.00572, 0.02283, -0.01815, -0.00718, -0.00808, -0.01502, 0.02648, -0.00966, -0.01333, -0.00153, -0.00865, -0.03602, 0.00134, -0.03814, 0.00791, -0.02062, -0.02108, 0.00567, -0.00021, -0.01619, 0.02733, 0.05353, 0.04016, -0.05912, -0.00111, -0.04019, 0.06119, 0.01797, -0.02183, 0.0208, 0.06333, -0.0575, -0.00245, 0.00333, 0.04029, -0.048, 0.05457, -0.07516, -0.10826, 0.05665, -0.06026, -0.03402, 0.00968, -0.01829, -0.02072, -0.00142, 0.07364, 0.08333, -0.03048, 0.03009, 0.02507, -0.05012, 0.09085, -0.00836, 0.04078, 0.03881, -0.04366, 0.01163, -0.01919, 0.22787, -0.09017, 0.02354, 0.06506, -0.06599, 0.14245, 0.01449, 0.05203, 0.14012, 0.2263, -0.04919, 0.38987, -0.10958, 0.26088, -0.02839, 0.08195, 0.13181, -0.18308, -0.02183, -0.1491, -0.16474, -0.06165, 0.03227, -0.00145, -0.03791, -0.02814, 0.00633, 0.01831, 0.00386, -0.00946, -0.00046, -0.00029, -0.01606, -0.15389, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00393, -0.07084, -0.04634, 0.08319, 0.07004, -0.07326, 0.04273, -0.02544, 0.09098, -0.06815, -0.01516, -0.03307, 0.04839, -0.10358, -0.06289, 0.05885, -0.03097, 0.0794, 0.02965, 0.00947, -0.18828, 0.01632, -0.05455, 0.03445, -0.02381, 0.08857, 0.08103, -0.0397, -0.01242, 0.04557, -0.23707, -0.04391, -0.10474, -0.01515, 0.30625, 0.01735, -0.27729, 0.00312, -0.04894, -0.01896, -0.09677, 0.05412, -0.04562, -0.02887, 0.00537, -0.06222, -0.13731, -0.03018, 0.06768, 0.02387, -0.04092, -0.04445, 0.08543, -0.03005, 0.06943, 0.00492, -0.00236, 0.01509, 0.06469, 0.02284, 0.00927, 0.02362, 0.08724, -0.06242, -0.00397, -0.00427, -0.06018, 0.09464, -0.02537, -0.01031, 0.00863, -0.00389, -0.01194, 0.01032, 0.0318, -0.01874, -0.04957, -0.00462, 0.02777, -0.00102, -0.07459, -0.00457, 0.0702, -0.05021, 0.00796, 0.05609, -0.02283, -0.00227, -0.07913, -0.01467, 0.01186, 0.02019, -0.00402, 0.01893, -0.03036, 0.01711, -0.01199, 0.01233, 0.0007, 0.00468, 0.017, -0.00965, -0.01702, -0.00383, 0.05457, 0.03379, 0.0049, 0.06941, -0.03305, -0.04963, -0.03796, -0.00279, 0.0112, 0.00116, -0.00677, -0.00261, -0.00716, 0.00863, -0.00464, -0.01493, 0.00131, -2e-005, -0.0092, -0.0002, -0.0028, 0.00029, 0.00269, -0.00146, -0.00053, 0.00192, -0.03296, -0.04625, 0.00786, 0.0062, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00092, 0.0131, 0.06979, -0.04324, -0.03141, 0.02155, 0.05582, -0.04659, 0.08075, 0.04683, -0.0005, -0.03833, -0.0445, -0.01853, 0.08304, 0.05502, 0.0268, 0.04033, -0.02327, 0.00831, -0.03983, 0.04312, -0.0434, 0.09026, -0.00678, 0.01771, -0.03359, 0.06046, -0.0016, 0.077, -0.03925, -0.0982, 0.00528, 0.1413, 0.01187, -0.00319, -0.04233, 0.02597, 0.06078, 0.05785, 0.02525, -0.01352, 0.09433, -0.0131, -0.01673, -0.00134, -0.01872, 0.08362, -0.02545, 0.00279, -0.01615, 0.05709, 0.00963, 0.01343, -0.05599, -0.04161, -0.01058, -0.05323, -0.02982, -0.00073, -0.0721, -0.00576, 0.02608, 0.07224, -0.04131, -0.05201, -0.01315, 0.03185, 0.15166, -0.02315, 0.01697, 0.02484, 0.01023, 0.0064, -0.02263, 0.04114, -0.02045, 0.02819, -0.06239, -0.16108, 0.10901, -0.07504, -0.03613, 0.02257, -0.01432, -0.00674, -0.04529, 0.03244, -0.0383, -0.00694, 0.00762, 0.01141, -0.01216, 0.02047, -0.00495, 0.02272, 0.00456, 0.00387, 0.00335, -0.02391, 0.05412, 0.00212, 0.00739, 0.00207, 0.01085, 0.04924, -0.00508, 0.05584, 0.02046, 0.03763, 0.01754, 0.09699, -0.01983, 0.05235, -0.00586, 0.03975, 0.04367, -0.05953, -0.00043, -0.03147, -0.07785, -0.02367, 0.05499, 0.00117, -0.00792, -0.01415, -0.00074, 0.00832, -0.00143, -0.00699, 0.07743, -0.01016, 0.01485, 0.09131, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00274, -0.07227, -0.04732, 0.08291, 0.07899, -0.0644, 0.04752, -0.0208, 0.08018, -0.06205, -0.02511, -0.03363, 0.03783, -0.07845, -0.05428, 0.04295, -0.03074, 0.0641, 0.02664, -0.00238, -0.14824, 0.01071, -0.03694, 0.01405, -0.00871, 0.05761, 0.07087, -0.03341, 0.00319, 0.0151, -0.17851, -0.034, -0.07925, -0.01858, 0.22072, 0.01571, -0.19445, -0.00912, -0.05198, -0.02097, -0.06746, 0.00376, -0.06637, -0.00501, 0.0056, -0.04689, -0.06671, -0.02485, 0.02065, 0.00419, -0.00629, -0.01843, 0.04418, -0.01492, 0.05467, 0.00497, -0.00664, 0.01372, 0.03354, 0.00165, 0.00162, 0.00943, 0.01062, -0.03826, 0.03723, -0.00267, 0.01458, -0.0009, -0.00883, 0.00123, -0.00115, -0.01436, 0.01434, 0.00167, -0.00376, -0.01942, 0.00784, -0.02851, 0.01712, -0.00218, -0.01682, -0.00448, -0.00807, -0.00532, 0.01451, -0.01522, -0.02681, -0.01541, -0.06661, 0.0101, -0.01837, -0.05232, -0.00298, -0.01748, -0.02129, -0.01209, 0.0011, 0.02299, -0.01837, -0.01508, -0.087, 0.02642, -0.00357, -0.00253, -0.01052, -0.00591, -0.00103, 0.02923, 0.03285, 0.06909, 0.01578, 0.03397, -0.0264, 0.02023, -0.01345, 0.00587, 0.02234, -0.02064, -0.0058, -0.01232, -0.01083, -0.01541, 0.00326, 0.00188, -0.00543, 0.00022, -0.0009, -0.00585, 0.00137, -0.00476, 0.0053, -0.04559, -0.04691, -0.26265, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00073, 0.01194, 0.07632, -0.04084, 0.00653, 0.01927, 0.07326, -0.06677, 0.0892, 0.06611, -0.00663, -0.03392, -0.05589, 0.02229, 0.24703, 0.05546, 0.00716, 0.03059, 0.03224, -0.03475, -0.01921, 0.07129, -0.01306, 0.08445, 0.02879, -0.00014, 0.03686, -0.00294, 0.02098, -0.03086, 0.05308, 0.07595, -0.09701, -0.05656, 0.01111, -0.0173, 0.06847, -0.06887, 0.0257, -0.01931, -0.03411, 0.01641, 0.01417, 0.09546, 0.01642, 0.0882, -0.02058, 0.00841, 0.27227, -0.00466, -0.0227, -0.01449, 0.11899, -0.07729, 0.03309, -0.00648, 0.01563, -0.03674, -0.03952, -0.00733, -0.09098, 0.00745, 0.02624, 0.03658, -0.02667, 0.00834, -0.00712, 0.0294, -0.06453, -0.06829, -0.01117, 0.22415, -0.03634, -0.09217, 0.04117, 0.05672, -0.04804, 0.15463, -0.00652, 0.14104, -0.04926, 0.07544, 0.00696, -0.01203, -0.108, -0.0251, 0.2512, -0.13329, -0.0388, -0.07723, 0.01298, -0.17692, -0.00115, -0.09729, -0.1021, 0.00545, 0.03964, -0.02598, -0.03288, -0.02892, -0.04769, 0.01555, 0.02027, 0.00264, 0.03021, -0.04226, -0.01851, -0.00144, 0.00198, -0.04111, 0.06722, -0.01288, 0.02295, -0.03113, 0.00623, -0.00025, -0.00852, 0.00495, 0.00537, 0.02076, -0.0422, 0.02838, -0.06104, 0.01902, -0.00695, -0.00213, -0.00221, 0.00284, -0.00606, -0.00182, 0.35721, -0.05355, 0.02935, -0.05081, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.0115, -0.07972, -0.03914, 0.07828, 0.06546, -0.03954, 0.0628, -0.03564, 0.08697, -0.03705, -0.07581, -0.01816, 0.05134, 0.0062, -0.07612, 0.00159, -0.02608, 0.00486, 0.00688, 0.01652, 0.00301, 0.01677, 0.02161, 0.00521, -0.01712, 0.04626, -0.01185, -0.01731, 0.03769, -0.02604, 0.00292, -0.01078, -0.02277, -0.04473, 0.01593, -0.01762, 0.01686, -0.0113, 0.0262, 0.01313, -0.01098, 0.02419, 0.01822, 0.03807, -0.01309, 0.01438, 0.06462, -0.05504, -0.07415, -0.03961, -0.00506, 0.03486, -0.09009, 0.04789, -0.0646, 0.01278, -0.02849, 0.00778, -0.04384, 0.01555, 0.03532, -0.0373, -0.0613, 0.09437, 0.02519, -0.00533, 0.02966, -0.09644, -0.01071, -0.01425, 0.0076, -0.02468, 0.10419, 0.04239, -0.0938, -0.00222, 0.09924, -0.00025, 0.01764, 0.00534, 0.10355, -0.01308, -0.03513, 0.01622, -0.10371, 0.08396, 0.11632, 0.00395, 0.10827, -0.0325, -0.03948, 0.43899, 0.01643, -0.12324, 0.23765, -0.17786, -0.09588, -0.16184, 0.08681, 0.06628, 0.04355, 0.01601, -0.03306, -0.00891, 0.06099, 0.06267, 0.05612, 0.10979, -0.06532, -0.02697, 0.00978, -0.03036, -0.01812, 0.03438, -0.05061, 0.02957, 0.03739, -0.01049, 0.01709, -0.01047, -0.10576, -0.00391, -0.08192, -0.01368, 0.00661, 0.01063, -0.00192, -0.00558, -0.00845, 0.0107, 0.31735, -0.09537, -0.00272, 0.0033, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00053, -0.02064, -0.08016, 0.0492, -0.00071, -0.0235, -0.0659, 0.06245, 0.07909, -0.06979, -0.00175, 0.03172, 0.0612, -0.02148, 0.25391, -0.05495, -0.00998, -0.02987, 0.03129, 0.03636, 0.01942, 0.06901, 0.01536, 0.08336, -0.0305, 0.00523, -0.03794, -0.00102, 0.01671, 0.0278, -0.05244, -0.07668, -0.09392, 0.05129, 0.00929, -0.01526, 0.0662, -0.0672, -0.02266, 0.02063, -0.03269, -0.01365, -0.01208, 0.09069, -0.01776, 0.08608, 0.02757, -0.01442, 0.27877, -0.00027, 0.022, 0.01824, 0.12818, -0.08209, -0.03999, 0.00784, -0.01867, -0.03738, -0.03445, 0.00899, -0.09431, 0.01151, -0.03283, 0.02597, 0.02928, 0.00888, 0.01034, -0.03983, -0.06296, -0.0663, 0.01194, 0.22551, 0.04759, -0.09628, -0.05124, 0.05662, 0.05867, 0.15372, 0.00842, 0.13959, 0.06036, 0.07642, -0.01078, 0.01374, -0.09594, 0.03418, 0.23687, -0.13291, 0.05048, -0.07319, 0.01725, 0.22415, -0.00295, -0.08314, -0.12763, 0.02499, -0.04995, -0.00801, 0.04223, 0.03604, -0.05219, 0.0137, -0.02378, -0.0036, 0.02331, -0.0489, 0.02457, -0.01351, 0.00916, -0.0379, 0.06573, 0.00946, 0.02481, 0.03472, 0.01176, 0.0035, -0.01258, 0.00608, -0.00346, 0.02179, 0.0303, 0.02864, 0.05165, 0.02041, -0.00764, -0.00329, -0.00199, 0.00344, 0.00509, -0.00298, -0.32012, 0.04273, 0.02947, -0.05086, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.01151, -0.07792, -0.03051, 0.07331, -0.06578, -0.03718, 0.07048, -0.04277, -0.09625, -0.02955, -0.07608, -0.02178, 0.04488, 0.00862, 0.04847, 0.00768, -0.02513, 0.0082, -0.01039, 0.01259, 0.00087, -0.02451, 0.02005, -0.01447, -0.01385, 0.04596, -0.00772, 0.01753, -0.03977, -0.02928, 0.00874, -0.00235, 0.03331, -0.05068, -0.01706, 0.01942, -0.02429, 0.01881, 0.02887, 0.01092, 0.01466, 0.02585, 0.01967, -0.04834, -0.01121, -0.024, 0.06197, -0.05378, 0.04374, 0.03988, -0.00753, 0.03306, 0.07645, -0.0391, -0.06056, 0.01199, -0.0266, -0.00369, 0.04793, 0.01465, -0.0251, 0.03626, -0.05804, -0.09782, 0.0221, 0.00438, 0.0287, -0.09262, 0.01775, 0.02168, 0.00633, -0.00013, 0.09956, -0.03199, -0.08871, -0.00404, 0.09335, -0.01676, 0.01682, -0.02083, 0.0975, 0.0047, -0.03415, 0.0148, 0.11496, 0.08069, -0.14326, 0.01074, 0.10334, 0.04081, 0.03781, 0.41685, -0.0162, 0.1332, -0.22497, 0.17618, -0.09094, 0.16371, 0.08267, 0.0627, -0.03803, -0.01763, -0.03063, -0.00857, -0.06394, -0.05764, 0.05374, -0.10896, 0.0647, 0.03133, -0.01712, -0.03159, 0.01549, 0.03074, 0.04962, 0.02937, -0.03623, 0.00988, 0.01758, 0.00813, -0.10976, 0.00076, -0.08814, 0.01151, -0.0058, -0.01034, 0.00216, 0.00523, -0.00907, -0.01044, 0.35473, -0.10068, -0.00053, 0.00231, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00209, -0.02271, -0.06348, 0.04581, -0.03706, -0.02154, -0.04832, 0.03183, 0.06887, -0.04714, -0.02893, 0.03741, 0.04793, 0.0584, 0.07987, -0.08926, -0.03239, -0.0651, -0.02925, -0.00239, 0.06744, 0.04781, 0.06638, 0.07729, 0.00212, -0.04374, 0.01679, 0.04996, 0.00222, -0.07367, 0.02303, 0.1393, 0.02206, -0.18176, 0.01617, -0.0021, -0.04871, 0.02277, -0.12891, -0.10168, 0.0458, 0.01371, -0.17855, -0.01205, 0.02643, 0.00632, 0.02695, -0.14211, -0.04187, 0.0211, 0.03715, -0.12018, 0.05304, 0.02717, 0.07865, 0.0912, -0.00263, -0.08508, -0.06229, -0.00307, -0.12246, -0.039, -0.01031, 0.10395, 0.03318, -0.10271, -0.00045, -0.01951, 0.2839, -0.02471, -0.01476, -0.01864, -0.07207, 0.01948, 0.04004, 0.04234, 0.00446, 0.00391, 0.05, -0.21589, -0.15205, -0.09108, 0.02296, -0.02796, -0.00911, -0.02147, -0.09431, -0.0001, 0.152, 0.01407, -0.00835, -0.01781, 0.02579, -0.037, 0.00585, 0.01046, 0.03211, 0.04799, -0.00158, 0.02412, -0.08857, 0.08392, 0.01182, 0.06061, 0.09868, -0.03326, 0.02588, 0.06315, -0.11495, -0.17924, 0.06943, 0.21023, 0.07631, 0.16206, 0.01992, 0.00352, -0.05125, 0.07042, -0.02111, 0.08711, -0.00037, 0.01797, -0.06222, 0.00092, 0.02475, 0.00243, -0.00414, 0.00143, 0.00401, -0.00342, 0.07947, -0.0104, 0.00712, 0.04588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00204, -0.0734, -0.04374, 0.07815, -0.0476, -0.042, 0.06424, -0.01248, -0.07386, -0.0432, -0.0436, -0.03929, 0.00798, -0.0296, 0.01415, 0.01906, -0.02664, 0.03868, -0.0076, -0.03006, -0.06543, -0.01541, -0.00456, 0.00239, 0.02708, -0.00774, 0.0469, 0.00016, -0.03962, -0.04891, -0.04412, -0.03001, 0.02006, -0.00372, -0.03142, -0.01111, 0.00679, 0.0342, -0.04123, -0.0116, -0.01182, -0.11607, -0.0899, -0.05512, 0.00259, 0.00144, 0.09332, 0.00756, 0.06754, 0.03979, 0.06945, 0.05998, 0.02843, -0.01169, 0.01078, -0.00771, -0.01405, 0.00672, 0.05758, -0.04734, 0.05198, 0.0272, -0.16833, -0.03451, 0.13209, 0.01168, 0.19203, -0.22293, -0.06334, -0.01527, -0.02141, 0.00813, 0.08853, 0.03094, -0.09285, 0.0061, 0.14428, 0.06193, -0.01335, 0.01302, 0.138, 0.00547, -0.1948, 0.10389, -0.01078, -0.17943, 0.01015, 0.0678, -0.06323, -0.05992, 0.08899, -0.22012, -0.00476, 0.12436, 0.01962, 0.07591, 0.02576, -0.04998, -0.06351, -0.06475, 0.36119, -0.12475, 0.02572, -0.00837, 0.14421, 0.11836, -0.02083, 0.05286, -0.16471, -0.30932, -0.1653, 0.07723, 0.0942, 0.03161, 0.02638, 0.02193, -0.08064, 0.07253, -0.00462, -0.00937, -0.0341, 0.0446, 0.0418, -0.01235, 0.00503, -0.00372, 0.00968, 0.02031, 0.00413, 0.01529, -0.01124, -0.05219, -0.03196, -0.15348, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.0026, -0.02466, -0.07391, 0.05169, -0.03491, -0.02818, -0.05596, 0.0446, 0.07262, -0.04854, -0.00265, 0.03784, 0.05209, 0.02931, 0.09443, -0.04911, -0.03417, -0.03527, -0.02802, 0.0126, 0.04702, 0.04734, 0.03271, 0.06626, -0.00536, -0.01316, 0.01679, 0.04967, 0.021, -0.04959, 0.05013, 0.0972, 0.02648, -0.13463, 0.03196, -0.01369, -0.0408, 0.05129, -0.03999, -0.06331, 0.0316, 0.04179, -0.06394, -0.00595, 0.01011, -0.00198, 0.02096, -0.09629, -0.05652, 0.01945, 0.00231, -0.07423, 0.02812, 0.02152, 0.03776, 0.0535, -0.00384, -0.02359, -0.04694, 0.01382, -0.0717, -0.04894, 0.03105, 0.00908, -0.01394, -0.04975, -0.02517, 0.05134, 0.15724, -0.00448, 0.00043, -0.0825, -0.03711, 0.02999, 0.01892, -0.02371, -0.02712, -0.0304, -0.01736, -0.01101, -0.00569, 0.00847, -0.02595, 0.00191, -0.01031, -0.02868, -0.01904, -0.00405, 0.01314, 0.0166, 0.00318, -0.01177, 0.03441, -0.03181, 0.02355, -0.03052, -0.00403, 0.01305, -0.00402, -0.0044, -0.0552, 0.04128, 0.02288, 0.01874, -0.00683, 0.0065, -0.01293, -0.05915, -0.04731, -0.06791, -0.12015, 0.0656, -0.02548, 0.01101, 0.01893, 0.05415, -0.05896, 0.06153, 0.00481, 0.00475, -0.14994, 0.03421, 0.10674, -0.00044, 0.02605, 0.00652, 0.00717, -0.00086, -0.00185, -0.00776, -0.08332, 0.00054, -0.03994, -0.20116, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.0067, -0.06853, -0.04027, 0.07314, -0.07069, -0.01647, 0.06392, -0.05236, -0.08604, -0.0142, -0.08413, -0.01724, 0.06392, 0.06576, 0.04591, -0.00974, -0.02617, -0.00693, -0.01091, 0.02764, 0.07297, -0.01655, 0.0427, -0.0087, -0.02211, -0.00154, -0.0538, 0.00645, -0.02877, 0.00702, -0.00494, -0.0785, 0.0191, 0.00558, -0.01283, -0.00464, -0.03121, 0.02669, 0.01221, -0.03376, -0.01176, -0.04141, 0.01815, -0.05141, -0.04421, -0.00092, 0.11325, -0.04897, 0.08304, 0.049, 0.05293, 0.08558, 0.1179, -0.03612, -0.08869, -0.00722, -0.03993, 0.00938, 0.08609, -0.03101, -0.01426, 0.04511, -0.03356, -0.07251, 0.03037, -0.00807, 0.01863, -0.01748, -0.01382, 0.01442, -0.01799, -0.00823, -0.00211, 0.05252, 0.0078, -0.04582, 0.01491, 0.00724, 0.04044, -0.03666, -0.02412, -0.00844, 0.01014, -0.02468, -0.05404, 0.01129, 0.03373, 0.03652, -0.13952, -0.03228, 0.01819, -0.10796, 0.02208, 0.01526, 0.1051, -0.05862, -0.00084, -0.06643, -0.03067, -0.029, 0.15159, 0.08644, -0.01415, 0.00956, 0.05933, 0.01186, -0.0007, -0.10749, -0.00209, -0.0192, 0.06252, 0.03318, 0.012, 0.00717, 0.02529, 0.00389, -0.01128, 0.02807, -0.00677, 0.01849, 0.00269, 0.00419, 0.01138, -0.00528, 0.00677, -0.00114, 0.00416, 0.00536, 0.00212, 0.00218, -0.03835, -0.04095, 0.04937, 0.25613, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00224, -0.02676, -0.0842, 0.05781, -0.04565, -0.03571, -0.06336, 0.05824, 0.07972, -0.05127, 0.0255, 0.03765, 0.05422, -0.0029, 0.1113, -0.00826, -0.03592, -0.00465, -0.02813, 0.02583, 0.02139, 0.05044, -0.0032, 0.06261, -0.0124, 0.01751, 0.02064, 0.05308, 0.03926, -0.02749, 0.0753, 0.05527, 0.02979, -0.08649, 0.04898, -0.02516, -0.03152, 0.08058, 0.04776, -0.025, 0.01958, 0.06786, 0.04484, 0.00032, -0.00566, -0.007, 0.01509, -0.04895, -0.06375, 0.01749, -0.03027, -0.0288, 0.00543, 0.01199, 0.00097, 0.01559, -0.00581, 0.0356, -0.03525, 0.02931, -0.02407, -0.05964, 0.06796, -0.08436, -0.05939, 0.00505, -0.04553, 0.11326, 0.02823, 0.01089, 0.01551, -0.13688, -0.00018, 0.03634, -0.00621, -0.08285, -0.05389, -0.05624, -0.08505, 0.1998, 0.14497, 0.11077, -0.0822, 0.03625, -0.01587, -0.04113, 0.06639, -0.01193, -0.1228, 0.01512, 0.01914, -0.01024, 0.04118, -0.02561, 0.03428, -0.06515, -0.03856, -0.02324, -0.00898, -0.033, -0.01845, -0.00835, 0.03686, -0.02414, -0.10814, 0.0471, -0.04882, -0.17281, 0.01405, 0.03351, -0.31089, -0.07466, -0.12467, -0.13923, 0.02025, 0.10468, -0.06615, 0.05186, 0.03219, -0.07887, -0.29272, 0.0565, 0.28537, -0.00101, 0.02623, 0.00926, 0.01865, -0.00494, -0.00953, -0.01404, 0.00077, 0.0053, 0.04645, 0.17061, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00977, -0.06633, -0.03837, 0.07085, -0.0594, -0.00527, 0.06408, -0.07006, -0.09623, -0.00168, -0.10221, -0.00772, 0.08777, 0.1077, 0.0537, -0.02331, -0.02582, -0.02775, -0.00845, 0.05205, 0.13302, -0.02232, 0.06408, -0.02355, -0.04384, 0.00023, -0.09691, 0.00359, -0.02433, 0.03022, 0.01092, -0.09881, 0.02, 0.00867, -0.00819, -0.00128, -0.04897, 0.02168, 0.03265, -0.04415, -0.01316, -0.00988, 0.0598, -0.05219, -0.06433, -0.00571, 0.12147, -0.07454, 0.07751, 0.05324, 0.0477, 0.09528, 0.15107, -0.04053, -0.12995, -0.00629, -0.05114, 0.01107, 0.10229, -0.02523, -0.03703, 0.0523, 0.02297, -0.08665, -0.0125, -0.01933, -0.05655, 0.06822, 0.01486, 0.03074, -0.01663, -0.02833, -0.04236, 0.06781, 0.05171, -0.06974, -0.03916, -0.02518, 0.06626, -0.0738, -0.09839, -0.02222, 0.09955, -0.0808, -0.06424, 0.09404, 0.02397, 0.03164, -0.1682, -0.01562, -0.01454, -0.05873, 0.03392, -0.02562, 0.14995, -0.11733, -0.01101, -0.06993, -0.01715, -0.0122, 0.06361, 0.17879, -0.03039, 0.01939, 0.02494, -0.0313, 0.01025, -0.17381, 0.06666, 0.10447, 0.16167, 0.02009, -0.02293, 0.00056, 0.02438, -0.00639, 0.01858, 0.00868, -0.00814, 0.03351, 0.02789, -0.01525, -0.00196, -0.00405, 0.00639, -0.00083, 0.00205, 0.0004, 0.00024, -0.00571, 0.04162, -0.06016, -0.00806, 0.00966, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00705, -0.0257, -0.09414, 0.05918, -0.0355, -0.03866, -0.05823, 0.06214, 0.06905, -0.06124, 0.04164, 0.03575, 0.06085, -0.06385, 0.09462, 0.02753, -0.02211, 0.01611, -0.03076, 0.01626, -0.01405, 0.05117, -0.02341, 0.06635, -0.00418, 0.03499, 0.04143, 0.05616, 0.0207, -0.0509, 0.09272, 0.04394, 0.02441, -0.05669, 0.04712, -0.0217, -0.00663, 0.0546, 0.11335, 0.03772, 0.00526, 0.05289, 0.11287, -0.00614, 0.00525, -0.02914, 0.01474, 0.04623, -0.08715, -0.0083, -0.04548, 0.05019, -0.07581, 0.00725, -0.04073, -0.03359, 0.01951, 0.0552, 0.00793, 0.00416, 0.05457, 0.02169, 0.02522, -0.09351, -0.04109, 0.0506, 0.00177, 0.00879, -0.12548, -0.01474, -0.01288, -0.01113, -0.01897, -0.00907, 0.00547, -0.07511, -0.02523, -0.05294, -0.01684, 0.02953, -0.00016, 0.01852, 0.00289, 0.00024, 0.00385, -0.00375, -0.00342, 0.00436, -0.01699, 0.0259, -0.01349, -0.02697, 0.02595, -0.02278, 0.04703, -0.04117, 0.00483, 0.0137, -0.00411, -0.01895, -0.05612, 0.01825, 0.01873, 0.01232, -0.02219, -0.01794, -0.0109, -0.09175, -0.01396, -0.02911, -0.10016, 0.06831, -0.01471, -0.00081, 0.01708, 0.05576, -0.05141, 0.06104, 0.00734, 0.00689, -0.13541, 0.02747, 0.12564, -0.00613, 0.01503, 0.00551, 0.00549, -0.00569, -0.00329, -0.00937, 0.08061, -0.01422, -0.0448, -0.13786, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.01159, -0.07812, -0.03168, 0.07291, -0.05396, -0.01988, 0.05435, -0.05498, -0.10368, -0.00983, -0.09302, -0.00942, 0.06309, 0.07188, 0.05401, -0.01865, -0.02303, -0.01302, -0.00323, 0.05927, 0.09991, -0.02617, 0.03731, -0.02921, -0.03477, -0.00776, -0.07463, -0.00268, -0.01902, 0.0329, 0.02988, -0.06674, 0.0285, 0.02692, -0.00751, -0.00159, -0.04118, 0.02709, 0.01871, -0.02934, -0.00864, -0.00287, 0.04747, -0.04695, -0.04394, -0.00552, 0.09826, -0.04899, 0.06338, 0.04783, 0.04318, 0.05966, 0.12484, -0.03387, -0.11313, -0.00432, -0.03689, 0.01427, 0.09014, -0.0254, -0.02378, 0.04267, 0.03301, -0.08992, -0.04182, -0.01102, -0.04374, 0.06185, 0.00016, 0.02191, -0.00785, -0.03867, -0.06019, 0.04663, 0.0498, -0.06885, -0.04416, -0.0414, 0.00322, -0.04065, -0.04332, -0.01763, 0.03896, -0.02644, -0.03088, 0.01493, -0.00554, 0.00518, 0.01254, -0.00827, -0.0118, -0.06089, 0.01728, -0.03425, 0.08531, -0.09879, 0.02496, -0.03079, -0.00624, 0.00392, -0.01071, 0.14501, 0.00026, 0.01481, 0.0748, 0.04126, -0.01636, -0.00809, 0.02903, 0.07618, 0.06054, -0.03002, -0.04526, -0.02835, -0.01787, -0.01902, 0.04211, -0.01714, -0.00464, -0.00771, 0.0486, -0.01088, 0.00423, -0.01148, 0.00433, -0.00513, 0.00101, -0.00116, 0.00136, -0.00492, -0.04897, -0.05476, -0.02871, -0.26475, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.01719, -0.02552, -0.10394, 0.06059, -0.0418, -0.04246, -0.05386, 0.06748, 0.06097, -0.07137, 0.05785, 0.03369, 0.06578, -0.12779, 0.08235, 0.06368, -0.00744, 0.03847, -0.03569, 0.00714, -0.05118, 0.0563, -0.04459, 0.07798, 0.00617, 0.05173, 0.06337, 0.06318, 0.00258, -0.07424, 0.11243, 0.03622, 0.01823, -0.02604, 0.04796, -0.01709, 0.01992, 0.02988, 0.17793, 0.10285, -0.00707, 0.03785, 0.18276, -0.01108, 0.01819, -0.04785, 0.01224, 0.14434, -0.09953, -0.03463, -0.06188, 0.12725, -0.15435, -0.00259, -0.08181, -0.08285, 0.04785, 0.07258, 0.04599, -0.01963, 0.12907, 0.09981, -0.01733, -0.10275, -0.02201, 0.10049, 0.0507, -0.09693, -0.28563, -0.04504, -0.04051, 0.12594, -0.03791, -0.06053, 0.0193, -0.06329, 0.00221, -0.04378, 0.04603, -0.13293, -0.14268, -0.06801, 0.08564, -0.03237, 0.01793, 0.02781, -0.06327, 0.01206, 0.10242, 0.03336, -0.04222, -0.04308, 0.00604, -0.02495, 0.05192, -0.01399, 0.05028, 0.05084, 0.0022, -0.00406, -0.10218, 0.04541, 0.00164, 0.04786, 0.06864, -0.08052, 0.02303, 0.00501, -0.04747, -0.09526, 0.10993, 0.20251, 0.09672, 0.13773, 0.01326, 0.00482, -0.0336, 0.06911, -0.01749, 0.09025, 0.01686, 0.00167, -0.0445, -0.01103, 0.00234, 0.00252, -0.00586, -0.00777, 0.0054, -0.00374, -0.08526, 0.00455, 0.01408, -0.02863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.01276, -0.10545, -0.01655, 0.07775, -0.08457, -0.05421, 0.0324, -0.01993, -0.11173, -0.02942, -0.07027, -0.01349, 0.00647, -0.01643, 0.06391, -0.00606, -0.01546, 0.02215, 0.00109, 0.07488, 0.01962, -0.02342, -0.02711, -0.02023, -0.01484, -0.02484, -0.02077, -0.0017, -0.00859, 0.03846, 0.07258, 0.00606, 0.04411, 0.07259, -0.00072, -0.00456, -0.02043, 0.03975, -0.0073, 0.01032, 0.00608, 0.01157, 0.022, -0.02989, 0.00446, 0.00267, 0.04456, 0.01787, 0.05274, 0.03258, 0.03188, -0.01673, 0.07163, -0.02907, -0.07796, -0.00441, -0.00355, 0.01822, 0.05885, -0.02783, -0.00435, 0.02937, 0.05284, -0.09541, -0.11076, 0.01196, -0.01181, 0.03637, -0.05217, -0.00868, 0.00959, -0.02055, -0.10393, -0.02014, 0.04831, -0.05459, -0.05407, -0.05652, -0.1366, 0.04267, 0.07273, -0.00177, -0.09568, 0.09702, 0.03188, -0.16493, -0.04288, -0.07213, 0.44099, -0.00236, -0.00608, -0.06804, -0.02122, -0.06616, -0.08295, -0.05232, 0.11178, 0.058, 0.01753, 0.04196, -0.19352, 0.07034, 0.07313, 0.00592, 0.19805, 0.19758, -0.0735, 0.38557, -0.05904, 0.0003, -0.1487, -0.13774, -0.08572, -0.08815, -0.11698, -0.05116, 0.09928, -0.07613, 0.00431, -0.09754, 0.10631, 0.00057, 0.00687, -0.02169, -0.00097, -0.01865, -0.0015, -0.0062, 0.00551, 0.00419, 0.00027, -0.05, 0.01979, 0.16001, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.01026, -0.02201, -0.0948, 0.05959, -0.0405, -0.03898, -0.05253, 0.06156, 0.06787, -0.06608, 0.04202, 0.03231, 0.05715, -0.08338, 0.08871, 0.02668, -0.01796, 0.01835, -0.0288, -0.00487, -0.03779, 0.04551, -0.01705, 0.08826, 0.00696, 0.03689, 0.06582, 0.07026, -0.00224, -0.07617, 0.06195, 0.0406, 0.0119, -0.06455, 0.00267, -0.01291, 0.01348, 0.03013, 0.08722, 0.04123, 0.00617, 0.02495, 0.07576, -0.01266, 0.01238, -0.02332, 0.00505, 0.05668, -0.05819, -0.02545, -0.03243, 0.06565, -0.09923, 0.00072, -0.01684, -0.04519, 0.03315, 0.02437, 0.02155, -0.00876, 0.05442, 0.06386, -0.03059, -0.02658, 0.01801, 0.04896, 0.04161, -0.07431, -0.13102, -0.03341, -0.03031, 0.09765, 0.00955, -0.03289, 0.00863, -0.00836, 0.02309, 0.00861, 0.06441, -0.11932, -0.10467, -0.06404, 0.06387, -0.02469, -0.00167, 0.02995, -0.02645, 0.04236, 0.00061, 0.0013, -0.00707, -0.0323, -0.02022, 0.0313, 0.0209, 0.01326, 0.00445, 0.00197, -0.00544, 0.00756, 0.06245, -0.02383, -0.01189, -0.00876, -0.00341, 0.02516, 0.00696, 0.01968, 0.05007, 0.06859, 0.03569, -0.08996, -0.00603, -0.06162, -0.0062, -0.03725, 0.0485, -0.05739, 0.00233, -0.02778, 0.09072, -0.02856, -0.0354, -0.00473, -0.0183, -0.0151, -0.00232, 0.00409, 0.00012, -0.00803, 0.08756, -0.00968, 0.01506, 0.18296, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00772, -0.07998, -0.03076, 0.07742, -0.05832, -0.06505, 0.04381, -0.02841, -0.10622, -0.05216, -0.0339, -0.02983, 0.03188, -0.07391, 0.05291, 0.03983, -0.02446, 0.06207, -0.01624, 0.03019, -0.12478, -0.02501, -0.04688, -0.0444, -0.02207, 0.053, 0.04591, 0.01742, 0.00676, 0.04936, -0.14694, -0.03283, 0.08759, 0.01843, -0.21537, -0.01222, 0.18795, 0.0066, -0.03847, -0.01006, 0.06739, 0.04078, -0.02626, 0.01087, 0.00399, 0.04215, -0.08335, -0.01552, -0.03738, -0.00564, -0.01777, -0.03795, -0.03803, 0.0156, 0.02374, 0.00327, -0.00472, -0.00289, -0.026, 0.00717, -0.0032, -0.01118, 0.08, 0.01268, -0.03973, 0.00543, -0.04933, 0.08194, 0.00607, 0.00882, 0.01087, -0.0189, -0.0427, -0.00825, 0.03577, -0.00825, -0.05353, -0.02341, -0.02707, 0.0159, -0.02393, 0.00352, 0.01683, -0.00457, 0.01032, -0.01223, -0.00764, -0.0196, 0.08163, 0.01474, -0.01258, -0.00367, -0.0005, -0.03439, 0.00192, -0.03066, 0.0274, 0.01237, 0.00654, 0.0153, -0.08179, 0.03208, 0.01168, 0.00297, 0.02473, 0.02985, -0.01724, 0.06421, -0.00377, 0.02257, -0.0196, -0.01877, -0.02884, -0.00966, -0.02914, -0.0127, 0.02638, -0.01815, -0.00368, -0.01049, 0.02657, 0.00285, 0.00213, -0.0082, 0.00383, -0.00265, -0.00217, -0.00163, 0.00044, -0.0016, 0.00317, -0.06025, -0.0331, -0.26988, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00277, -0.01933, -0.08557, 0.05852, -0.03233, -0.03502, -0.05175, 0.05633, 0.07242, -0.05976, 0.02463, 0.03149, 0.04794, -0.03751, 0.09375, -0.01149, -0.0277, -0.00227, -0.02036, -0.01517, -0.01978, 0.03285, 0.01182, 0.0947, 0.00906, 0.01991, 0.0659, 0.07404, -0.00717, -0.07827, 0.01827, 0.04793, 0.00545, -0.10241, -0.0388, -0.00789, 0.00312, 0.03097, -0.00352, -0.01855, 0.01638, 0.01164, -0.02771, -0.01487, 0.00773, -0.00119, -0.00018, -0.02964, -0.01705, -0.01588, -0.00298, 0.00371, -0.0452, 0.00464, 0.04555, -0.00732, 0.02023, -0.02262, -0.00148, 0.00272, -0.01711, 0.02456, -0.0436, 0.04678, 0.05833, -0.00063, 0.03332, -0.0504, 0.02066, -0.02057, -0.01972, 0.06337, 0.05584, -0.00358, 0.00019, 0.04211, 0.04226, 0.05475, 0.07776, -0.10749, -0.06452, -0.05939, 0.04154, -0.01514, -0.01905, 0.02677, 0.0011, 0.07344, -0.09153, -0.02868, 0.0286, -0.02269, -0.04938, 0.08821, -0.00496, 0.03865, -0.03989, -0.04475, -0.01148, 0.01958, 0.22462, -0.08856, -0.02526, -0.06508, -0.0716, 0.13786, -0.01386, 0.04408, 0.14291, 0.23038, -0.04472, -0.38781, -0.11015, -0.25916, -0.02748, -0.08174, 0.1318, -0.18291, 0.02118, -0.14655, 0.16388, -0.06128, -0.03308, -0.00142, -0.03737, -0.028, 0.006, 0.01836, -0.00389, -0.00962, -0.00317, -0.0048, -0.01683, -0.15364, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00426, -0.06913, -0.03715, 0.07722, -0.06689, -0.06983, 0.04872, -0.03184, -0.09955, -0.06195, -0.01798, -0.03676, 0.04338, -0.10006, 0.0529, 0.06048, -0.02809, 0.08014, -0.02758, 0.01121, -0.18724, -0.02006, -0.05619, -0.04514, -0.02496, 0.0869, 0.07424, 0.03174, 0.01329, 0.05452, -0.24054, -0.04949, 0.10478, -0.0039, -0.30383, -0.01659, 0.27864, -0.00657, -0.04885, -0.01702, 0.09555, 0.05316, -0.04284, 0.0307, 0.00454, 0.06273, -0.13813, -0.02709, -0.0662, -0.02226, -0.04084, -0.04513, -0.08095, 0.02972, 0.06481, 0.00576, -0.00462, -0.01268, -0.06492, 0.02268, -0.00744, -0.02649, 0.0926, 0.05762, -0.01045, 0.00437, -0.06423, 0.1008, 0.02324, 0.01265, 0.01086, -0.0031, -0.01819, -0.00999, 0.03198, 0.01419, -0.05455, -0.00141, 0.01933, 0.01293, -0.0679, 0.01118, 0.06603, -0.04885, -0.0059, 0.05347, 0.02285, -0.00584, -0.06948, 0.01793, -0.0151, 0.02283, 0.00951, -0.02881, 0.03109, -0.02149, -0.00765, -0.00745, 0.00198, 0.00254, -0.04197, 0.01951, -0.01432, 0.00335, -0.04698, -0.04926, 0.00647, -0.07472, 0.01743, 0.02443, 0.04314, 0.04013, 0.00092, 0.02986, 0.00985, 0.00642, -0.00739, 0.01157, -0.00701, 0.03124, -0.01683, 0.00681, -0.00559, 0.00035, 0.00696, 0.0028, -0.00337, -0.00056, -0.00011, -0.00087, -0.03281, -0.046, -0.00604, 0.01077, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00061, -0.02097, -0.07457, 0.0521, -0.03991, -0.0285, -0.05026, 0.04402, 0.07144, -0.05337, -0.00227, 0.0344, 0.04839, 0.00979, 0.08851, -0.04996, -0.03002, -0.03303, -0.02606, -0.00853, 0.02328, 0.04168, 0.03907, 0.08816, 0.00578, -0.01127, 0.04119, 0.06377, -0.00194, -0.07487, 0.01937, 0.09386, 0.01397, -0.14249, -0.01249, -0.0049, -0.02068, 0.02681, -0.06613, -0.05981, 0.03252, 0.01385, -0.10106, -0.01247, 0.01725, 0.00383, 0.01127, -0.08584, -0.02757, 0.00231, 0.01536, -0.05877, 0.00471, 0.01499, 0.06166, 0.0419, 0.00979, -0.05442, -0.03333, 0.0009, -0.07184, -0.00676, -0.02476, 0.07601, 0.04516, -0.0514, 0.01467, -0.03175, 0.15171, -0.02315, -0.01699, 0.02627, -0.00859, 0.00618, 0.02208, 0.04303, 0.02119, 0.03115, 0.06389, -0.15986, -0.1102, -0.07409, 0.03502, -0.02302, -0.01583, 0.00502, -0.04206, 0.03394, 0.03074, -0.00801, 0.0096, -0.0171, -0.01176, 0.02227, -0.00258, 0.02391, -0.00442, 0.00132, -0.00535, 0.02211, 0.06337, -0.0008, -0.00774, -0.00234, 0.01194, 0.04959, 0.00493, 0.05228, 0.01672, 0.0298, 0.0157, -0.09267, -0.0168, -0.0498, -0.00435, -0.03887, 0.04095, -0.0569, -0.00021, -0.02992, 0.07619, -0.02183, -0.05429, 0.00096, -0.00728, -0.01409, -0.00064, 0.00892, 0.00157, -0.00643, -0.07638, 0.00509, 0.01992, 0.11966, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00282, -0.07039, -0.03935, 0.07764, -0.07506, -0.06164, 0.05338, -0.0258, -0.08858, -0.05652, -0.02501, -0.03765, 0.03271, -0.08002, 0.04481, 0.04874, -0.0276, 0.06815, -0.02392, -0.00145, -0.15173, -0.01539, -0.04149, -0.02389, -0.00941, 0.05921, 0.06675, 0.02655, -0.00299, 0.02348, -0.18175, -0.0446, 0.07819, -0.00292, -0.22068, -0.01526, 0.19793, 0.00621, -0.04498, -0.01448, 0.06427, 0.00225, -0.05559, 0.00642, 0.00372, 0.04675, -0.06836, -0.0155, -0.01773, -0.00447, -0.00803, -0.01203, -0.04497, 0.01336, 0.04818, 0.00037, -0.00776, -0.00778, -0.03005, 0.00156, 0.00632, -0.00874, 0.01342, 0.03008, 0.03246, 0.00838, 0.01304, 0.00261, -0.00791, 0.00132, 0.00072, 0.01154, 0.01538, -0.00236, -0.00623, 0.01478, 0.00554, 0.02523, 0.01015, 0.01989, -0.00473, 0.01271, -0.01199, -0.0028, -0.01284, -0.01587, 0.03164, 0.01175, -0.07042, -0.00927, 0.01742, -0.05075, 0.0043, 0.01512, 0.02171, 0.00952, 0.0016, -0.02327, -0.01789, -0.01762, 0.08051, -0.02649, -0.00273, -0.00228, 0.00926, 0.00045, -0.00158, -0.03519, -0.0349, -0.07281, -0.01761, 0.04444, 0.02842, 0.02587, 0.01401, 0.01021, -0.02701, 0.02706, -0.00582, 0.01571, -0.01933, 0.01792, 0.00929, -0.002, 0.00626, 0.00134, 0.00097, 0.0049, 0.0012, 0.0055, 0.01378, -0.04644, 0.04499, 0.25101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.08884, 0.00492, -0.02727, 0.00717, -0.0491, 0.00562, 0.01781, 0.02295, 0.0356, -0.01386, 0.02203, 0.02075, 0.00319, 0.03825, -0.09665, -0.02725, 0.0586, -0.00649, -0.15401, -0.03936, 0.00457, 0.15623, 0.06829, -0.1698, 0.14473, 0.12152, -0.04084, -0.135, 0.08756, 0.07782, -0.0192, 0.07265, -0.07643, -0.06844, 0.03025, -0.08496, 0.12327, -0.08125, -0.03043, -0.00428, -0.06619, -0.01527, 0.16726, -0.10546, -0.03897, -0.06507, -0.1309, 0.10946, -0.14803, -0.03315, 0.10886, -0.17599, 0.08098, -0.16017, -0.05483, 0.11998, -0.29405, -0.10294, 0.04209, -0.3511, -0.05148, -0.00878, 0.18758, -0.06783, -0.10274, -0.04379, 0.14393, -0.03512, -0.00643, 0.06162, -0.05006, 0.1079, 0.00537, 0.01229, 0.00012, 0.06859, 0.15765, 0.01344, -0.0094, 0.01037, -0.03073, 0.02589, -0.01197, 0.02492, 0.00649, 0.00299, -0.00725, 0.00486, -0.04539, 0.04586, -0.00326, 0.01796, -0.0059, -0.01506, -0.00139, -0.02336, -0.00953, -0.0011, -0.01123, 0.02054, 0.02243, 0.00948, 0.00772, -0.00179, -0.01328, 0.03049, -0.00578, 0.0064, -0.02153, -0.01324, -0.02299, 0.00016, -0.00013, -0.00717, -0.015, -0.00391, 0.0055, -0.00246, 0.00163, 0.00378, 0.02013, -0.00355, 0.00625, -0.00579, -0.00846, -0.03512, -0.03065, 0.12117, 0.00168, -0.4372, -0.00678, -0.03264, 0.00154, 0.00095, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.02072, 0.11349, -0.09743, -0.02254, -0.03065, -0.0165, 0.13384, 0.08297, -0.00952, -0.00157, 0.0511, -0.17228, -0.00764, -0.14135, -0.02943, -0.11071, 0.08592, -0.14446, -0.03629, 0.02065, 0.00403, 0.05784, 0.14997, -0.04358, 0.31984, 0.13899, -0.04681, -0.02362, 0.11191, 0.00184, 0.05067, -0.02097, 0.02066, 0.0584, 0.05533, -0.02887, 0.09428, -0.09004, -0.04006, -0.01885, -0.11177, 0.00704, 0.00686, 0.02616, -0.02578, -0.00437, 0.01602, -0.01629, -0.09658, 0.03765, -0.05398, 0.01179, 0.00091, -0.00265, 0.02064, 0.005, 0.07672, 0.00369, 0.0004, 0.09428, -0.04176, -0.05545, -0.03078, -0.05291, 0.03333, -0.17088, -0.06345, 0.01808, -0.01714, -0.12228, 0.00446, -0.1294, -0.00237, -0.04704, 0.01029, -0.2056, -0.03748, -0.16957, -0.00217, -0.07364, 0.01253, -0.15844, -0.005, -0.00973, 0.00056, 0.00513, 0.29643, 0.05657, 0.01089, -0.25125, 0.2023, -0.01386, 0.04829, 0.04344, -0.03937, 0.09153, 0.00639, 0.12815, -0.00449, -0.00242, -0.00651, -0.06138, -0.00474, 0.00176, 0.02447, -0.0574, -0.00293, 0.03802, 0.02219, 0.0627, 0.04943, 0.00059, 0.07363, 0.00534, -0.01749, -0.00373, 0.01596, 0.01267, 0.00087, -0.04761, -0.0017, 0.0557, 0.01568, -0.02585, 0.04599, 0.01918, -0.01784, -0.00703, -0.00556, 0.05333, -0.05064, -0.40832, 0.00363, -0.00192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.08528, 0.00627, -0.00548, -0.00123, -0.04683, -0.00092, 0.00744, 0.00466, 0.03883, -0.00021, 0.00288, -0.0093, -0.00037, -0.00745, -0.09269, -0.006, 0.00499, -0.00797, -0.15656, 0.00101, 0.00032, 0.15118, 0.00845, -0.15789, 0.01785, 0.00813, -0.00271, -0.16097, 0.08606, 0.00029, 0.00279, -0.00099, -0.07771, 0.00284, 0.02509, -0.10337, 0.13204, -0.07116, -0.00186, -0.00137, -0.08571, 0.00049, 0.00108, -0.13025, -0.00192, -0.07789, 0.00041, -0.00062, -0.17823, -0.03517, -0.00197, 8e-005, 0.07562, -0.19286, 0.00086, 0.00047, 0.00281, -0.13734, 0.0837, 0.00316, -0.08834, -0.04608, -0.00056, -0.09632, 0.00144, -0.04255, -0.00253, 0.00124, -0.02036, 0.11048, -0.0004, 0.14398, -0.00091, 0.01105, 0.00044, 0.16017, -0.00142, 0.05484, -0.00031, 0.01354, 0.00017, 0.0566, -0.00046, -0.00015, 0.05, 1e-005, -0.08192, -0.02007, 0.00055, 0.04615, -0.01952, -0.00078, 0.01444, -0.051, 0.00118, -0.03318, 0.00033, -0.00053, -0.00017, -0.00015, 0.03703, 0.02786, -0.0004, 0.00032, 2e-005, 0.04639, 0.00039, -0.02775, 0.01276, 0.00107, -0.03805, -0.00015, -0.01904, 2e-005, -0.01022, 0.00056, 0.0121, -0.00689, 0.0002, -0.0014, -2e-005, -0.03352, -0.00053, 0.02748, 0.03511, 0.11117, 0.04013, -0.1945, 0.0004, 0.71202, 0.00503, 0.03708, 0.00108, -0.00248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00471, 0.11368, -0.09922, -0.02227, 0.00258, -0.01666, 0.13485, 0.08438, -0.00214, -0.00385, 0.05227, -0.16861, -0.0067, -0.13506, 0.00512, -0.10875, 0.09048, -0.14441, 0.00864, 0.01823, 0.00574, -0.00834, 0.15311, 0.00871, 0.32339, 0.1473, -0.04893, 0.00889, -0.00475, 0.00519, 0.05053, -0.01785, 0.00429, 0.05145, -0.00138, 0.0057, -0.00729, 0.00393, -0.03367, -0.02491, 0.00473, 0.0088, 0.01965, 0.00719, -0.03485, 0.0043, 0.00737, -0.01132, 0.00984, 0.00194, -0.03578, 0.00146, -0.00417, 0.01064, 0.01567, 0.00851, 0.05091, 0.00758, -0.00462, 0.05731, 0.00487, 0.00254, -0.01006, 0.00532, 0.02606, 0.00235, -0.04591, 0.02254, 0.00112, -0.0061, -0.00724, -0.00795, -0.01644, -0.00061, 0.00795, -0.00884, -0.02571, -0.00303, -0.0056, -0.00075, 0.00309, -0.00312, -0.00828, -0.00276, -0.00276, 0.00014, 0.00452, 0.00111, 0.00995, -0.00255, 0.00108, -0.01417, -0.0008, 0.00281, -7e-005, 0.00183, 0.00592, 3e-005, -0.00308, -0.00275, -0.00204, -0.00154, -0.00722, 0.00584, 0, -0.00256, 0.00704, 0.00153, -0.0007, -6e-005, 0.0021, -0.00274, 0.00105, 0.00029, 0.00056, 0.01007, -0.00067, 0.00038, 0.00364, 8e-005, -0.00038, 0.00185, -0.00963, -0.00152, -0.00194, -0.00613, -0.00221, 0.01073, 0.00734, -0.03929, 0.09115, 0.67186, -6e-005, 0.00014, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.09058, 0.0076, 0.01638, -0.0096, -0.04543, -0.00741, -0.00298, -0.01369, 0.03643, 0.01361, -0.01627, -0.03958, -0.00402, -0.05357, -0.09283, 0.0149, -0.04879, -0.00944, -0.14908, 0.04139, -0.0041, 0.14892, -0.05137, -0.16398, -0.10866, -0.10549, 0.03543, -0.13158, 0.07472, -0.07715, 0.02466, -0.07452, -0.07824, 0.07445, 0.02398, -0.08127, 0.11215, -0.07085, 0.02584, 0.00218, -0.05349, 0.01595, -0.16549, -0.1077, 0.03589, -0.06419, 0.13187, -0.11059, -0.1365, -0.03709, -0.11414, 0.17622, 0.08038, -0.1589, 0.05677, -0.1187, 0.30071, -0.10272, 0.04179, 0.35934, -0.04657, -0.00262, -0.18983, -0.0616, 0.10578, -0.02473, -0.15003, 0.0369, -0.0045, 0.0747, 0.05025, 0.12148, -0.0056, 0.01739, 0.00101, 0.09079, -0.16082, 0.03201, 0.0091, 0.01841, 0.03192, 0.04317, 0.01135, -0.02584, 0.00639, -0.00241, -0.03982, -0.0014, 0.04631, 0.07323, -0.0255, -0.01937, -0.01118, -0.01975, 0.00295, -0.03329, 0.01018, -0.0152, 0.01067, -0.02068, 0.02301, 0.01618, -0.0082, 0.00197, -0.01589, 0.03662, 0.00543, 0.00217, -0.02384, -0.02006, -0.02829, -9e-005, -0.00823, 0.00772, -0.01298, 0.00348, 0.00371, -0.00384, -0.00153, 0.009, -0.0202, -0.00966, -0.00449, -0.00291, -0.01346, -0.03701, -0.0285, 0.12121, -0.00228, -0.44041, 0.00116, -0.01249, 0.00113, 0.00115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.01082, 0.11334, -0.09984, -0.02162, 0.03586, -0.01578, 0.13499, 0.08499, 0.00555, -0.00308, 0.05321, -0.16895, -0.00724, -0.13629, 0.03989, -0.11304, 0.09184, -0.1443, 0.05301, 0.0162, 0.00451, -0.07468, 0.15657, 0.062, 0.33382, 0.15152, -0.05101, 0.03834, -0.12086, 0.01039, 0.04825, -0.01285, -0.01212, 0.05052, -0.05832, 0.03804, -0.10727, 0.09843, -0.04316, -0.01921, 0.11837, 0.00531, 0.02522, -0.01439, -0.02991, 0.0115, 0.00152, -0.00414, 0.11228, -0.03378, -0.04168, -0.00765, -0.00981, 0.02025, 0.01448, 0.01817, 0.0439, 0.00766, -0.00503, 0.05507, 0.04717, 0.05608, -0.00995, 0.06005, 0.02182, 0.17466, -0.04723, 0.0141, 0.01775, 0.11475, -0.00108, 0.11674, -0.00177, 0.0454, 0.01024, 0.19681, -0.0199, 0.16706, -0.00319, 0.07205, 0.00907, 0.15463, -0.00629, -0.00693, -0.00127, 0.00543, -0.29383, -0.05676, 0.00583, 0.24468, -0.20071, -0.0118, -0.04735, -0.04152, 0.03928, -0.08841, 0.00531, -0.12725, -0.0057, -0.00015, 0.004, 0.05996, -0.00386, 0.00155, -0.02286, 0.05369, -0.00354, -0.03849, -0.01968, -0.06086, -0.0466, 0.00061, -0.07317, 0.00452, 0.01904, -0.00414, -0.01647, -0.01232, 0.00104, 0.04691, 0.00053, -0.05497, 0.01627, 0.02633, -0.04478, -0.0152, 0.02111, -0.00634, -0.00534, -0.0049, -0.05108, -0.40944, -0.00377, 0.0018, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.12702, -0.001, 0.04484, -0.01212, -0.01078, -0.0613, -0.0165, -0.00668, 0.00814, -0.00632, 0.01439, -0.06353, -0.04922, -0.10781, -0.04795, 0.06948, -0.07817, -0.05943, -0.10315, 0.07011, -0.00664, 0.03763, 0.04096, -0.06903, -0.00538, -0.07837, -0.07003, -0.06388, -0.08544, -0.05915, 0.01955, -0.07792, -0.07176, -0.08459, -0.07717, -0.01634, -0.07316, 0.03434, 0.01429, 0.04227, 0.06036, -0.05395, -0.05623, -0.0004, 0.02666, 0.0532, 0.02984, 0.01219, 0.09084, 0.01767, 0.07642, 0.00825, -0.02447, 0.01987, 0.02668, -0.00288, -0.00943, 0.05146, -0.01519, -0.04903, 0.02436, 0.08227, -0.05522, 0.03866, 0.00834, 0.20323, -0.08285, 0.14697, 0.07023, -0.00253, -0.21103, -0.02273, 0.19144, -0.02831, -0.1456, -0.11305, 0.14844, -0.0743, -0.41682, 0.04563, -0.18366, -0.10849, 0.17736, 0.01041, 0.06455, -0.05449, -0.11091, 0.00493, -0.01699, -0.05548, 0.25002, 0.00015, 0.22714, -0.33887, -0.09725, -0.00187, 0.0425, -0.05278, 0.06274, -0.0052, 0.05382, -0.11751, -0.02767, 0.0092, -0.02939, 0.01991, 0.01076, -0.03547, 0.01729, -0.02658, 0.0523, 0.01163, 0.00249, -0.02693, -0.05654, 0.0346, -0.01612, -0.03452, -0.00203, 0.01754, -0.00954, -0.14166, -0.00414, 0.05265, 0.01799, 0.00925, -0.01353, -0.00014, 8e-005, -0.0075, 0.00109, -0.0045, -0.0006, 0.00055, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.01106, 0.15458, -0.10627, -0.05041, 0.02341, 0.02047, 0.13149, 0.07461, 0.01613, 0.04524, 0.05824, -0.08693, 0.06845, 0.00272, -0.00155, -0.09367, 0.09681, -0.00026, 0.02461, -0.03389, -0.02484, -0.02669, -0.03343, 0.02557, -0.23942, -0.06884, 0.00371, 0.00273, 0.01248, 0.00641, 0.02573, 0.09883, -0.0097, -0.02469, -0.01986, -0.00202, -0.00253, 0.01387, -0.06575, 0.0876, 0.03666, -0.08296, -0.00778, -0.01838, -0.01972, -0.01658, -0.00407, 0.01509, 0.01073, -0.00939, 0.10472, 0.04004, 0.0005, 0.02128, 0.02042, -0.13828, 0.00921, -0.00957, 0.01482, -0.07063, 0.00909, 0.00666, 0.09874, -0.00688, -0.07111, -0.03576, -0.04467, 0.02848, 0.04487, 0.01879, -0.11496, 0.06875, 0.34235, -0.02698, 0.11688, -0.02364, -0.14987, 0.04778, 0.06949, 0.03254, -0.11492, 0.01095, -0.2246, -0.00185, -0.04872, 0.02565, -0.02579, 0.09045, 0.03321, 0.01925, -0.02277, 0.0186, 0.00548, 0.00247, 0.00309, -0.02213, 0.00474, 0.05995, -0.00772, -0.00368, -0.01104, 0.07796, -0.02046, -0.00481, 0.02156, -0.00085, 0.01261, -0.13129, -0.02352, 0.08251, -0.08526, 0.00165, 0.36957, 0.02077, -0.50742, -0.0042, -0.08996, -0.03557, -0.00121, -0.14177, 0.00109, -0.00734, 0.03077, 0.01179, -0.02469, -0.01709, -0.0079, -0.00034, 0.00364, 0.00357, -0.00897, -0.05081, -0.00264, 0.00034, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.18648, 0.01232, -0.00913, -0.00379, -0.02577, 0.00531, 0.0096, 0.00533, 0.01258, 0.00505, 0.0024, -0.00672, 0.00815, 0.00211, -0.05732, -0.00693, 0.00666, -0.00348, -0.14419, 0.00151, -0.00031, 0.09262, -0.00923, -0.16003, -0.01793, 0.00411, 0.00583, -0.08922, -0.08108, 0.00867, -0.00063, 0.00629, -0.06856, 0.00925, -0.06393, -0.02833, -0.11864, -0.01485, 0.0192, -0.0075, 0.11627, 0.00432, -0.00552, -0.04594, 0.01383, 0.02647, 0.0007, -0.00694, 0.1013, 0.01547, -0.00959, -0.00122, 0.04703, -0.0297, 0.00133, 0.01481, -0.00798, -0.0789, -0.1912, 0.00081, 0.04981, 0.13636, -0.0052, 0.13275, -0.00421, 0.29775, -0.00671, -0.00851, 0.18361, -0.17821, -0.00569, 0.12384, -0.01003, -0.18088, -0.00385, -0.23161, 0.01355, -0.24953, -0.0066, 0.14481, 0.00058, -0.00612, 0.00461, 0.00047, -0.1143, -0.00168, 0.13326, 0.26095, -0.00281, 0.0783, -0.13789, -0.00182, -0.23615, 0.37922, 0.14179, 0.03378, 0.00181, -0.01138, -0.00123, 0.00136, -0.10644, 0.01049, 0.00243, 0.00023, 0.12175, -0.06343, -0.00081, 0.025, 0.01849, 0.01372, -0.05784, -0.00135, -0.0374, -0.00084, 0.00856, 0.00013, 0.00424, -0.00455, -0.00198, 0.10533, 0.00115, -0.06141, -0.00136, -0.00252, -0.0049, 0.02544, 0.01127, -0.05021, 0.00044, 0.05678, -0.0008, -0.00272, -0.00312, 0.00045, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.01029, 0.22322, -0.16539, -0.06868, 0.00142, 0.09626, 0.1739, 0.09666, -0.00069, 0.09157, 0.04353, -0.12185, 0.14765, 0.03823, 0.00316, -0.12561, 0.12073, -0.06303, 0.00796, 0.02737, -0.0056, -0.00511, -0.16726, 0.00883, -0.32495, 0.0744, 0.10567, 0.00492, 0.00447, 0.15714, -0.01138, 0.11405, 0.00378, 0.16754, 0.00353, 0.00156, 0.00655, 0.00082, 0.34801, -0.13595, -0.00642, 0.07821, -0.10011, 0.00254, 0.25061, -0.00146, 0.01264, -0.12583, -0.00559, -0.00085, -0.17373, -0.02219, -0.0026, 0.00164, 0.02403, 0.26841, -0.14468, 0.00435, 0.01055, 0.01466, -0.00275, -0.00753, -0.09415, -0.00733, -0.07631, -0.01643, -0.12167, -0.15417, -0.01013, 0.00983, -0.10311, -0.00683, -0.18173, 0.00998, -0.06983, 0.01278, 0.24558, 0.01377, -0.11953, -0.00799, 0.01043, 0.00034, 0.08355, 0.00848, 0.00631, -0.03039, -0.00735, -0.0144, -0.05099, -0.00432, 0.00761, -0.03296, 0.01303, -0.02093, -0.00782, -0.00186, 0.03276, 0.00063, -0.02223, 0.02456, 0.00587, -0.00058, 0.04403, 0.00412, -0.00672, 0.0035, -0.01463, -0.00138, -0.00102, -0.00076, 0.00319, -0.02453, 0.00206, -0.01523, -0.00047, 0.00233, -0.00023, 0.00025, -0.03581, -0.00581, 0.02087, 0.00339, -0.02468, 0.00014, 0.00027, -0.0014, -0.00062, 0.00277, 0.00792, -0.00313, -0.01453, -0.04927, 0.00017, -2e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.12746, 0.018, -0.05626, 0.0065, -0.01329, 0.06318, 0.03087, 0.01484, 0.00631, 0.01126, -0.00789, 0.05358, 0.05646, 0.10745, -0.04748, -0.07936, 0.08834, 0.05904, -0.10523, -0.07341, 0.00386, 0.04034, -0.04439, -0.07143, -0.021, 0.07032, 0.07001, -0.0638, -0.08629, 0.0595, -0.0166, 0.08832, -0.07026, 0.08136, -0.07452, -0.01602, -0.07243, 0.03261, -0.02144, -0.03237, 0.05596, 0.04449, 0.05503, 0.00163, -0.02867, 0.0547, -0.03011, -0.01045, 0.08911, 0.01859, -0.06443, -0.00379, -0.02438, 0.01741, -0.02427, -0.01235, 0.01039, 0.05221, -0.01673, 0.04096, 0.02321, 0.08103, 0.06575, 0.03919, -0.01612, 0.20593, 0.07743, -0.14295, 0.06486, -0.00458, 0.1971, -0.03016, -0.15261, -0.02517, 0.15758, -0.10976, -0.16402, -0.07911, 0.42193, 0.04177, 0.1699, -0.10903, -0.201, -0.01055, 0.06952, 0.05698, -0.1074, -0.00505, 0.02054, -0.05726, 0.25101, 0.0019, 0.22516, -0.33708, -0.097, 0.00057, -0.04172, -0.05906, -0.06321, 0.00477, 0.05471, -0.12538, 0.02525, -0.00968, -0.03159, 0.01988, -0.0093, -0.02081, 0.01977, -0.0355, 0.06136, -0.01138, -0.03819, 0.02905, -0.00036, -0.03485, -0.00612, -0.0304, 0.00188, 0.03303, 0.0096, -0.13999, 0.0075, 0.05103, 0.02059, 0.01107, -0.01258, -0.00011, 0.00032, -0.00784, -0.00207, -0.00112, -0.00031, 0.00051, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00298, 0.15353, -0.10069, -0.05144, -0.02208, 0.0136, 0.12888, 0.07342, -0.01693, 0.04427, 0.05947, -0.09339, 0.06262, -0.00916, 0.00682, -0.08546, 0.08762, -0.0068, -0.01311, -0.02597, -0.02542, 0.02239, -0.02872, -0.01782, -0.23856, -0.07705, -0.00402, 0.00431, -0.003, -0.00014, 0.02772, 0.08965, 0.01754, -0.03385, 0.02823, 0.0038, 0.01056, -0.01756, -0.06378, 0.09172, -0.04308, -0.08839, -0.01392, 0.01831, -0.01667, 0.01062, -0.00076, 0.01634, -0.02066, 0.00739, 0.11249, 0.0407, 0.0022, -0.02334, 0.02324, -0.13775, 0.00811, 0.00385, -0.01306, -0.0756, -0.01172, -0.01568, 0.09207, 0.00258, -0.06976, 0.01318, -0.05351, 0.04448, -0.05232, -0.0184, -0.13748, -0.06583, 0.36134, 0.02993, 0.10015, 0.03594, -0.13263, -0.03931, 0.0232, -0.03736, -0.13443, 0.00106, -0.20372, -0.00069, 0.04132, 0.0195, 0.03783, -0.09045, 0.03114, -0.01303, -0.00488, 0.0185, -0.03044, 0.03483, 0.00763, 0.0222, 0.00939, -0.05378, -0.00077, -0.00423, 0.00505, -0.06455, -0.02338, -0.00377, -0.0182, -0.00135, 0.01372, 0.1344, 0.02147, -0.07908, 0.07899, 0.00292, -0.3676, 0.01768, 0.51056, -0.00037, 0.09119, 0.03915, -0.00143, 0.13898, 3e-005, 0.02288, 0.03012, -0.01751, 0.02256, 0.01597, 0.00934, 0.00035, 0.00362, -0.00272, -0.0088, -0.051, 0.00269, -0.00039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.06232, -0.02937, -0.07216, 0.05087, -0.01809, 0.04935, 0.00634, 0.02953, 0.00669, -0.03782, 0.07985, 0.08888, 0.0123, 0.25566, -0.06501, -0.04054, 0.09339, 0.25589, -0.11552, -0.16639, 0.09302, 0.05998, -0.04505, -0.07059, 0.12441, 0.03344, 0.15046, 0.04191, -0.11289, -0.01471, -0.09236, 0.02063, -0.12184, 0.05933, -0.04189, 0.01319, -0.03759, -0.115, -0.11033, -0.04558, 0.04203, 0.00133, 0.17262, -0.0806, -0.10535, 0.13201, 0.01951, 0.04888, -0.02101, 0.02828, -0.13288, -0.02868, -0.03274, 0.08905, -0.06031, 0.10665, -0.02391, 0.13827, -0.00411, 0.08844, 0.09472, -0.00305, -0.16905, 0.02371, 0.10755, -0.01134, -0.1661, 0.03528, -0.04113, 0.06606, -0.0786, -0.10983, 0.10416, 0.28149, 0.03559, -0.1362, 0.00341, 0.41315, -0.16603, -0.03474, -0.0759, -0.02759, -0.07136, -0.08275, -0.05092, -0.01199, 0.09044, 0.02096, 0.04473, -0.01969, 0.00735, 0.00263, -0.02699, 0.09171, -0.04886, 0.04118, 0.02001, 0.08622, 0.0052, -0.02324, -0.12649, 0.04986, 0.03747, -0.02445, 0.0242, 0.03057, 0.01622, 0.00487, -0.02155, 0.03341, -0.00735, 0.019, -0.02194, -0.01072, 0.00655, 0.02501, -0.01063, 0.01233, -0.00593, 0.01774, 0.04039, -0.02366, 0.00665, -0.00319, 0.02514, 0.00458, -0.00613, -0.00104, -0.00453, 0.0132, 0.00248, 0.00016, 0.00057, -0.00059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -5e-005, 0.07516, -0.07366, -0.02867, -0.01881, -0.13213, 0.04498, 0.16855, -0.02367, -0.01988, 0.26481, -0.14272, -0.16273, 0.15525, 0.03221, 0.09214, -0.05197, 0.27864, 0.00036, 0.05517, 0.15393, -0.02709, 0.01789, 0.02483, 0.0779, -0.1357, -0.04309, 0.1816, -0.28783, -0.07019, -0.08267, -0.12071, -0.07029, -0.05299, -0.00551, 0.23722, -0.04308, -0.46193, 0.03943, 0.06917, 0.04002, 0.0916, -0.1532, -0.07317, 0.1304, 0.00458, 0.11235, 0.01998, -0.12717, 0.08418, -0.00901, -0.01412, -0.02423, -0.04235, 0.0084, -0.07186, -0.00891, 0.02438, 0.01674, -0.06924, -0.06713, -0.10234, 0.0841, -0.04046, -0.08393, -0.06466, 0.05559, -0.0208, -0.00796, -0.02504, 0.01885, 0.07576, -0.08136, -0.07177, 0.00461, -0.00496, -0.00194, -0.13518, 0.05482, 0.05306, 0.03017, 0.02305, 0.05343, 0.0166, -0.02825, -0.00408, -0.02492, -0.01926, -0.01611, 0.04651, -0.00369, 0.04115, 0.02351, -0.04738, 0.033, -0.01771, -0.02937, -0.04253, 0.01144, -0.00145, 0.03568, -0.02444, 0.01567, -0.00395, -0.00878, 0.01724, -0.01611, -0.00176, 0.00016, -0.02712, -0.01978, 0.0081, -0.00692, -0.01008, -0.01989, 0.00387, -0.00845, -0.01136, -0.00587, -0.00649, 0.00149, -0.00648, -0.02113, 0.01183, -0.01916, -0.00335, 0.00836, 0.00342, -0.00138, 0.00066, -0.00892, -0.05247, 0.0005, -0.00022, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.08186, -0.01067, -0.05717, 0.02559, -0.0071, 0.09332, 0.04832, -0.02596, -0.00453, -0.01395, -0.06871, 0.13247, 0.07073, 0.07861, -0.05711, -0.14145, 0.17964, 0.07302, -0.12076, -0.1631, -0.04276, 0.05813, -0.03688, -0.05379, 0.06869, 0.08916, 0.11951, -0.09289, -0.09411, 0.00097, -0.01415, 0.09609, -0.09338, 0.03718, -0.02272, -0.03146, -0.04812, 0.10023, -0.09807, 0.15556, 0.09131, -0.10897, -0.09334, -0.06495, 0.05975, 0.23943, 0.15532, -0.01184, 0.17162, 0.06693, 0.14939, 0.04117, -0.18566, 0.07435, 0.02419, -0.18499, 0.15171, 0.08844, 0.1243, 0.05803, -0.1505, -0.08275, 0.16773, 0.00698, -0.1748, -0.15044, 0.03745, 0.0149, -0.10682, -0.06049, 0.00437, -0.09278, -0.07486, -0.04541, -0.08172, 0.11359, 0.11243, -0.1826, -0.07834, -0.12349, 0.07361, 0.10927, 0.22865, 0.0442, 0.10187, -0.02004, 0.0108, -0.18796, -0.04692, -0.07329, -0.12604, 0.00449, -0.11376, 0.03425, 0.01835, -0.04508, 0.00756, 0.01528, 0.02429, 0.02095, 0.05317, -0.01271, -0.03903, 0.02876, -0.00919, -0.05043, -0.00583, -0.03345, -0.02264, 0.01795, -0.0251, -0.0022, 0.03653, -0.00234, -0.04024, -0.00275, -0.00045, -0.01613, 0.00377, -0.00997, -0.02646, 0.00943, -0.00869, -0.00301, 0.00914, -0.00824, -0.00545, -0.00873, 0.00245, -0.01847, 0.0009, -0.00341, -0.0011, 0.00081, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00091, 0.08683, -0.043, -0.04584, -0.02959, -0.0696, 0.04515, 0.01298, -0.02271, -0.01751, 0.08716, -0.08273, -0.00142, -0.03833, 0.02055, -0.0384, 0.0151, 0.03192, -0.01322, -0.0517, -0.06606, 0.0152, 0.05249, -0.00256, -0.21049, -0.20495, -0.0937, 0.03569, -0.05461, -0.05344, 0.05717, -0.01923, 0.055, -0.10976, 0.02796, 0.01536, -0.00167, -0.06894, -0.23786, -0.10658, -0.07146, -0.08819, 0.2144, 0.04446, -0.22713, -0.06077, -0.1422, 0.05621, -0.08303, 0.01099, -0.03649, -0.04742, 0.11624, -0.08587, -0.04826, -0.00559, 0.09364, -0.09253, -0.11809, 0.12362, 0.15969, 0.03423, 0.03034, 0.07331, -0.03569, 0.23349, -0.01441, -0.11848, 0.04123, -0.12849, 0.00549, -0.09131, -0.19896, 0.14959, -0.06569, 0.04781, 0.1253, -0.00642, -0.03343, -0.04597, 0.07692, -0.06208, 0.10115, 0.0391, 0.22545, 0.01624, 0.05017, -0.3139, -0.03287, -0.15441, -0.11964, -0.00515, -0.1853, -0.06118, -0.00699, -0.08521, 0.03114, 0.08208, -0.00099, 0.0024, 0.11881, 0.00589, -0.03093, 0.02311, 0.03004, -0.04494, -0.00513, -0.06516, -0.0148, 0.04918, -0.05399, -0.01314, 0.06173, -0.00647, -0.0567, -0.00176, -0.01595, -0.02814, 0.00186, 0.02199, -0.01639, -0.0184, -0.01445, 0.00855, 0.00749, 0.00517, -0.01235, -0.00992, -0.00307, -0.00594, -0.00339, -0.05198, 0.00109, 0.00068, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.13268, 0.0083, -0.00585, -0.00328, 0.00542, 0.00096, 0.00664, 0.00423, -0.03185, 0.00214, 0.0039, -0.00179, 0.00148, 3e-005, -0.03636, -0.00179, 0.00218, 0.00079, -0.09144, -0.00152, -0.00126, -0.00649, -0.00554, -0.05959, -0.00758, 0.00228, 0.00381, -0.04928, -0.0466, 0.0006, 0.00154, 0.00394, -0.07799, -0.00562, -0.05574, 0.01021, -0.06026, -0.02088, 0.00401, 0.00553, 0.0954, -0.00337, 0.00219, 0.05953, -0.0046, -0.06617, 0.00073, 0.0049, 0.02468, 0.01629, 0.0161, -0.00018, 0.03189, 0.01378, -0.0012, 0.00654, -0.00567, 0.02915, -0.06698, -0.00295, 0.12438, 0.05202, -0.01129, -0.02835, 0.02068, 0.09176, 0.01422, 0.01988, 0.0725, -0.0048, 0.02365, 0.02747, -0.00302, -0.01755, -0.00297, -0.00874, -0.0099, -0.00754, -0.00413, -0.03881, 0.00373, -0.00164, 0.0131, -0.00557, -0.0117, -0.00427, -0.04173, -0.0268, 0.00466, 0.01152, -0.0638, 0.00014, 0.08369, -0.09416, 0.01407, 0.04769, -0.00261, -0.03363, 0.00427, 0.00018, 0.05443, 0.08947, 0.00172, -0.00468, -0.15781, -0.00744, 0.00182, 0.13745, 0.05805, 0.06461, 0.07714, 0.00232, 0.17365, -0.00244, 0.15987, -0.00056, 0.0386, 0.10966, 0.00267, -0.31645, -0.0004, 0.7302, -0.00107, -0.16919, -0.11079, -0.17509, 0.05046, 0.03331, -0.00077, 0.05876, -2e-005, -0.00288, -0.00515, -0.0007, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00732, 0.15046, -0.10602, -0.05946, -0.0003, 0.01733, 0.12035, 0.0767, 0.00176, 0.03883, 0.07065, -0.03243, 0.02675, 0.0005, 0.00201, -0.03241, 0.0395, 0.01425, 0.00505, -0.02746, -0.02285, 0.00036, -0.10031, 0.00329, -0.13732, 0.04134, 0.06914, 0.00272, 0.00257, 0.01095, 0.02783, 0.07144, 0.0043, -0.10182, 0.00308, -0.00056, 0.00333, 0.00115, 0.07261, 0.1002, -0.00526, -0.06098, 0.03965, -0.00329, -0.08344, 0.00365, 0.0133, 0.08886, -0.00136, -0.0009, 0.29169, -0.00329, -0.00176, -0.00076, -0.02167, 0.11856, -0.10284, -0.00161, 0.0037, -0.05342, -0.00686, -0.00287, -0.20461, 0.00156, 0.37477, -0.00506, 0.25766, 0.36032, -0.004, 0.00026, 0.4286, -0.00152, -0.05466, 0.00097, -0.05383, 0.00048, -0.17947, 0.00042, -0.07481, 0.00214, 0.06758, 9e-005, 0.23742, -0.10091, 0.00065, -0.07734, 0.0023, 0.00148, 0.08449, -0.00064, 0.00352, 0.00259, -0.00462, 0.0052, -0.00078, -0.00263, -0.04729, 0.00186, 0.07744, 0.00321, -0.003, -0.00494, 0.03113, -0.08479, 0.00871, 0.00041, 0.03291, -0.00758, -0.0032, -0.00357, -0.00426, 0.04196, -0.00958, -0.04414, -0.00882, -0.0102, -0.00213, -0.00605, 0.04838, 0.01746, -0.00728, -0.0403, -0.0194, 0.00934, 0.00611, 0.00966, -0.00278, -0.00184, -0.01387, -0.00324, -0.00035, -0.05216, 0.00028, 4e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.08146, 0.02016, 0.05209, -0.03047, -0.0038, -0.10041, -0.04306, 0.02723, -0.002, 0.01194, 0.07788, -0.14077, -0.07045, -0.08235, -0.05902, 0.13637, -0.17688, -0.06906, -0.11858, 0.15643, 0.03524, 0.0561, 0.04243, -0.05318, -0.09143, -0.11117, -0.12911, -0.09625, -0.08753, -0.00684, 0.02036, -0.09763, -0.09886, -0.04903, -0.02566, -0.03296, -0.04765, 0.1072, 0.0713, -0.16635, 0.09862, 0.0986, 0.11637, -0.06945, -0.08438, 0.24467, -0.17002, 0.01796, 0.17972, 0.06532, -0.1525, -0.04614, -0.19732, 0.08334, -0.02936, 0.18325, -0.14048, 0.09809, 0.13654, -0.04407, -0.16716, -0.08601, -0.16338, -0.00113, 0.16981, -0.17522, -0.03881, -0.02785, -0.11071, -0.04599, -0.00373, -0.08217, 0.05252, -0.0616, 0.074, 0.10764, -0.09796, -0.18079, 0.07418, -0.11768, -0.0647, 0.11543, -0.21613, -0.03963, 0.07645, 0.0217, 0.00522, -0.15228, 0.04301, -0.05586, -0.11211, -0.00503, -0.09268, 0.04078, 0.01901, -0.03543, -0.00409, 0.00616, -0.02425, -0.02056, 0.03978, -0.01329, 0.03539, -0.02604, -0.01244, -0.04518, 0.00523, -0.02608, -0.02087, 0.01243, -0.01901, 0.00074, 0.02951, 0.00161, -0.03375, 0.00254, 0.00131, -0.01294, -0.00355, -0.01233, 0.0245, 0.0114, 0.00705, -0.00394, 0.00826, -0.00876, -0.00406, -0.00759, -0.00278, -0.0177, -0.00126, -0.00233, -0.00121, 0.00073, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.0081, 0.08513, -0.04903, -0.04275, 0.03019, -0.05891, 0.05019, 0.01004, 0.02307, -0.01894, 0.07907, -0.06765, 0.00638, -0.02945, -0.01414, -0.05373, 0.03477, 0.03976, 0.02643, -0.06933, -0.07037, -0.0215, 0.04811, 0.00846, -0.20165, -0.1939, -0.07999, -0.02524, 0.06464, -0.05301, 0.05526, -0.00854, -0.04439, -0.105, -0.02529, -0.0118, 0.00696, 0.05749, -0.2472, -0.08882, 0.06098, -0.09964, 0.20283, -0.03705, -0.21917, 0.03406, -0.12425, 0.05457, 0.06364, -0.01829, -0.01983, -0.0426, -0.0951, 0.07717, -0.04531, -0.02591, 0.10976, 0.08224, 0.1037, 0.12925, -0.14216, -0.02492, 0.04861, -0.07364, -0.05471, -0.21551, -0.0102, -0.11612, -0.02923, 0.13437, 0.00593, 0.10097, -0.20599, -0.14368, -0.07429, -0.06002, 0.13691, 0.02647, -0.04185, 0.05928, 0.08455, 0.04968, 0.1257, 0.04373, -0.23529, 0.01394, -0.05105, 0.33267, -0.03783, 0.16153, 0.13279, -0.00463, 0.1967, 0.05704, 0.00493, 0.08966, 0.03178, -0.08326, 0.00169, 0.00469, -0.12394, -0.00446, -0.03504, 0.02613, -0.02884, 0.05022, -0.00574, 0.06844, 0.0172, -0.05085, 0.05642, -0.01331, -0.06538, -0.00669, 0.06078, -0.00205, 0.0159, 0.02974, 0.00227, -0.02076, -0.0192, 0.01726, -0.01532, -0.00816, -0.00845, -0.00423, 0.01288, 0.01083, -0.00278, 0.00794, -0.00327, -0.05204, -0.00096, -0.00076, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.06193, 0.03746, 0.06361, -0.05372, -0.01591, -0.06359, -0.00135, -0.01081, 0.00925, 0.03541, -0.05023, -0.10405, -0.03013, -0.23702, -0.06816, 0.05044, -0.09855, -0.22368, -0.11486, 0.17145, -0.07552, 0.06259, 0.04675, -0.07289, -0.11509, -0.04817, -0.15429, 0.02168, -0.08053, 0.0069, 0.0827, -0.03379, -0.11337, -0.0648, -0.04103, -0.01299, -0.03262, -0.06347, 0.114, 0.05291, 0.03737, 0.00876, -0.18843, -0.07206, 0.11906, 0.1307, -0.00703, -0.04638, -0.00689, 0.01884, 0.13108, 0.02695, -0.02987, 0.09317, 0.06087, -0.11391, 0.02278, 0.13474, -0.00593, -0.09553, 0.10153, 0.00823, 0.17728, 0.02802, -0.11613, -0.00415, 0.17121, -0.03735, -0.04, 0.06841, 0.0802, -0.11749, -0.11248, 0.28768, -0.03486, -0.13483, -0.0036, 0.42551, 0.17105, -0.04036, 0.07876, -0.02996, 0.0768, 0.08407, -0.04751, 0.01147, 0.09264, 0.02295, -0.04623, -0.02469, 0.00771, 0.00192, -0.02941, 0.09636, -0.05219, 0.04288, -0.02312, 0.09037, -0.00391, 0.02294, -0.12965, 0.05224, -0.03552, 0.02387, 0.02502, 0.02849, -0.0179, 0.00504, -0.02143, 0.03619, -0.00512, -0.01799, -0.02105, 0.00955, 0.0087, -0.02444, -0.00964, 0.0135, 0.00525, 0.01835, -0.03998, -0.0228, -0.00893, -0.00447, 0.0271, 0.00492, -0.00701, -0.00141, 0.00435, 0.01305, -0.00345, -0.00593, 0.00052, -0.00056, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00691, 0.07147, -0.08116, -0.0229, 0.02069, -0.1259, 0.04541, 0.17078, 0.02279, -0.02392, 0.27199, -0.13207, -0.16039, 0.18244, -0.02486, 0.08712, -0.04138, 0.3051, 0.01236, 0.03652, 0.16323, 0.02032, 0.01282, -0.01691, 0.09111, -0.1312, -0.02629, -0.18511, 0.29851, -0.07138, -0.09233, -0.11771, 0.08327, -0.04614, 0.01008, -0.23723, 0.04696, 0.47178, 0.02705, 0.06374, -0.04441, 0.09119, -0.13328, 0.08159, 0.11801, -0.01907, 0.11382, 0.02524, 0.1287, -0.08678, -0.02358, -0.01719, 0.02769, 0.0323, 0.00171, -0.05969, -0.01149, -0.03944, -0.01618, -0.05909, 0.0563, 0.10206, 0.06498, 0.0376, -0.07159, 0.06552, 0.03698, -0.01679, 0.01244, 0.01762, 0.01008, -0.06321, -0.06941, 0.04037, 0.0085, 0.01992, -0.00156, 0.0889, 0.03622, -0.04891, 0.02164, -0.01987, 0.04525, 0.0074, 0.03368, -0.00538, 0.01481, 0.01683, -0.01109, -0.04406, 0.00286, 0.04119, -0.0204, 0.037, -0.02743, 0.01307, -0.02699, 0.03278, 0.01195, -0.00399, -0.02155, 0.01881, 0.0197, -0.00662, 0.00607, -0.0205, -0.01423, 0.00121, 0.00221, 0.02328, 0.02047, 0.01014, 0.00929, -0.0112, 0.01905, 0.0066, 0.00957, 0.00993, -0.00649, 0.0045, 0.00593, 0.00904, -0.02027, -0.0114, 0.01628, 0.00283, -0.00764, -0.00329, -0.00187, -0.00211, -0.00859, -0.05213, -0.00056, 0.00028, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.0082, 0.02374, 0.1254, -0.0066, 0.05481, -0.13036, -0.17119, -0.16424, -0.08456, -0.06317, 0.07537, -0.24635, 0.13291, 0.02957, -0.02026, -0.06673, 0.05445, -0.09414, 0.00934, -0.01166, 0.06388, -0.10888, -0.12276, 0.08739, 0.00195, 0.02667, 0.06141, 0.03579, -0.00955, 0.06463, -0.05566, 0.0889, 0.07382, -0.05477, 0.05735, 0.01322, 0.02083, 0.0386, -0.0402, -0.04647, -0.07021, -0.00549, 0.05333, -0.1155, 0.11635, 0.36456, 0.12668, 0.09693, -0.0984, -0.16617, -0.04164, -0.1391, 0.17685, -0.01282, -0.06881, -0.21142, -0.13979, 0.11468, -0.01481, 0.06802, 0.13259, -0.04731, 0.04446, -0.0659, 0.17871, 0.00341, 0.00822, 0.00791, 0.05385, -0.03698, -0.12727, 0.10357, -0.01833, -0.01176, -0.03307, 0.13246, -0.05812, -0.05059, 0.03598, 0.02972, 0.09545, -0.0274, 0.05324, 0.00678, 0.09306, 0.01506, 0.04832, 0.13788, 0.00722, 0.0057, 0.14111, -0.00316, -0.108, -0.02641, 0.01675, -0.0925, 0.0139, 0.01476, 0.08233, -0.11725, 0.00345, 0.11747, 0.0519, 0.13859, -0.12352, -0.07018, 0.02315, 0.11277, 0.07499, -0.04174, -0.03261, -0.04462, 0.05028, 0.01591, 0.05648, 0.07956, -0.08109, 0.00045, -0.00872, -0.03201, 0.04959, -0.04464, 0.00022, 0.00597, 0.01372, -0.00459, 0.00629, 0.01585, 0.00412, -0.00339, -0.00121, -0.00429, -0.00443, -0.00017, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00259, -0.00148, 0.10647, -0.02683, 0.05051, -0.13993, -0.12852, -0.07585, 0.03203, -0.07861, 0.07302, 0.05477, -0.05621, -0.00979, 0.01384, -0.08602, 0.05725, 0.0843, 0.0854, -0.08525, -0.10257, -0.08279, 0.1854, 0.07182, -0.02803, 0.00293, -0.24945, -0.03477, 0.12063, -0.04409, -0.09978, 0.27959, -0.05148, 0.12668, -0.1014, -0.07148, -0.08096, -0.05368, 0.10534, 0.05512, 0.16096, -0.00222, -0.00716, -0.17327, 0.06673, -0.02443, 0.00372, -0.0435, -0.0435, -0.08122, 0.02784, 0.07283, 0.04323, -0.02323, -0.07517, 0.04757, -0.07542, 0.04673, 0.00875, 0.16289, 0.01933, -0.07816, -0.01834, -0.01192, -0.05935, 0.08734, 0.04986, 0.03001, 0.04966, 0.08284, 0.12569, 0.11122, -0.03307, -0.07401, -0.03132, -0.122, 0.04184, 0.00823, -0.05379, -0.09093, -0.1594, 0.07948, -0.12679, 0.01053, 0.10377, 0.00411, 0.06756, -0.25422, -0.01754, -0.03512, 0.08493, -0.0102, 0.27773, 0.276, 0.05138, -0.15095, -0.08489, 0.05951, 0.04946, -0.14458, 0.0054, -0.00767, -0.06532, 0.00579, -0.04977, -0.02631, 0.00971, 0.02599, -0.05068, -0.04623, 0.01731, 0.00375, -0.03953, -0.0346, -0.0303, -0.03177, 0.04904, -0.05383, -0.00067, -0.0026, 0.01461, 0.00478, 0.0086, 0.04682, -0.02029, 0.00379, -0.00255, 0.01753, 0.01995, 0.00051, -0.00564, -0.05048, -0.00422, 0.00115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.08318, 0.03061, 0.04586, -0.02354, 0.03815, -0.08199, -0.07334, -0.08536, -0.07797, -0.00851, 0.02515, -0.10263, 0.08371, 0.01919, -0.01831, -0.01578, 0.00365, -0.03937, -0.04332, -6e-005, 0.07155, -0.07982, -0.10676, 0.03165, 0.02585, 0.01374, 0.08847, -0.02995, -0.00622, 0.04253, 0.05896, -0.06476, 0.01968, 0.00479, 0.01999, 0.06633, 0.01057, 0.0531, -0.04558, -0.00551, 0.01177, -0.03541, -0.04981, 0.11269, -0.02666, 0.05012, -0.03761, -0.06419, -0.08097, -0.10013, -0.15605, -0.02972, 0.11592, -0.01443, -0.12041, 0.04172, 0.03049, 0.01124, -0.09268, 0.08137, 0.05411, -0.10131, 0.00878, -0.09663, -0.13638, -0.08735, 0.23547, 0.05083, -0.02216, -0.11823, -0.01254, -0.02915, 0.07789, -0.10615, 0.17878, -0.04859, 0.08568, 0.04279, -0.01154, 0.01686, -0.03273, 0.01484, 0.0578, -0.01745, -0.17704, -0.07988, -0.15809, -0.03205, 0.03607, -0.03384, -0.01024, -0.02997, -0.07633, 0.04768, -0.10488, -0.20195, -0.06827, 0.0983, 0.06333, -0.02991, 0.00121, -0.23363, -0.22042, -0.39026, 0.09912, 0.17541, 0.01214, -0.16272, -0.151, 0.05072, 0.18645, 0.06559, -0.08843, 0.01779, -0.03648, -0.08255, 0.02383, 0.0286, -0.01142, 0.00974, -0.03402, 0.07086, 0.03083, -0.0164, -0.05548, 0.03367, -0.03506, -0.03698, -0.02779, -0.00989, 0.00327, 0.00042, -0.00082, 0.00112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00406, 0.12062, 0.0091, -0.13483, 0.02814, -0.14487, -0.03945, -0.06821, 0.02585, 0.00569, -0.03923, 0.17712, -0.01819, -0.04128, 0.00094, -0.01026, -0.10643, 0.00964, 0.04673, 0.06508, 0.02062, -0.0479, -0.02393, 0.03245, 0.06012, 0.00461, -0.02613, 0.00173, 0.11814, 0.00237, -0.03856, 0.04758, -0.02092, -0.03609, -0.05802, -0.07078, -0.05034, -0.00972, -0.02498, -0.00832, 0.06604, 0.00712, 0.03063, -0.06309, 0.04435, 0.00319, -0.00387, 0.0348, -0.04289, 0.00301, 0.05802, 0.05007, -0.00881, 0.05881, 0.00482, 0.04768, -0.0885, 0.03271, 0.02628, 0.07065, -0.02966, -0.01263, 0.00046, -0.01537, -0.05659, -0.05377, -0.18809, -0.15426, 0.0244, 0.15774, 0.11589, 0.13039, 0.23191, 0.05451, 0.22965, -0.25986, 0.08872, -0.1135, 0.05682, 0.05098, 0.16894, -0.10655, 0.19724, -0.06477, 0.00444, -0.09198, 0.08323, -0.05376, 0.00967, 0.03301, -0.14286, -0.1065, -0.25408, -0.15122, -0.13607, 0.1031, -0.01374, 0.03186, 0.14446, 0.11411, 0.13033, 0.10779, 0.12588, 0.02489, -0.20719, 0.17742, 0.04631, -0.00625, -0.12394, -0.0872, 0.09719, 0.01268, -0.06656, 0.00377, -0.03549, 0.04492, -0.032, 0.00143, -0.0158, 0.07284, -0.00207, -0.01622, 0.00284, -0.01904, -0.09734, -0.00683, -0.00145, -0.00617, -0.00694, 0.02279, -0.00771, -0.04405, 0.00052, 0.00036, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.11232, 0.01074, 0.0088, -0.00302, 0.01673, -0.01792, -0.01409, -0.00937, -0.07588, 0.00306, 0.01468, -0.04112, 0.01937, 0.02271, -0.02783, 0.00299, -0.00343, -0.01666, -0.08862, -0.00654, 0.03185, -0.07132, -0.03248, -0.0101, -0.00729, 0.01961, 0.04222, -0.02409, 0.04939, 0.00814, 0.04156, -0.05374, -0.02674, 0.03329, -0.04665, 0.04816, -0.02723, 0.01416, -0.01398, 0.04132, 0.05499, -0.00496, -0.06925, 0.19596, -0.07887, -0.15203, -0.07887, -0.05046, -0.01584, 0.04404, -0.11112, -0.00114, 0.07581, 0.04574, -0.09596, 0.0818, 0.08648, 0.03315, -0.11096, 0.10936, 0.13416, -0.07451, -0.03232, -0.1519, -0.12597, -0.14826, 0.31133, 0.13772, -0.02338, -0.07138, 0.03902, -0.02384, 0.10825, -0.0688, 0.13616, 0.02691, 0.11113, 0.02622, -0.03853, -0.03081, -0.05483, 0.00593, -0.00877, 0.01958, -0.06855, 0.02678, 0.03146, -0.05873, -0.05924, -0.00885, -0.09822, 0.03064, 0.08902, 0.00316, 0.00612, 0.0921, -0.02671, -0.02849, -0.07999, 0.05752, 0.07691, 0.12688, 0.27304, 0.36928, -0.0611, -0.0844, 0.01451, 0.07525, 0.03929, -0.04872, -0.07275, -0.05351, -0.00918, 0.01047, -0.0099, 0.05601, -0.01222, -0.03366, 0.00819, 0.06756, 0.04079, -0.22232, -0.00936, 0.06061, 0.02271, -0.33126, 0.13014, -0.01976, -0.00045, 0.02271, 0.00037, -0.00294, 0.00414, -0.00046, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00422, 0.16692, -0.03489, -0.17061, 0.0095, -0.11567, 0.02054, -0.03807, 0.00657, 0.0361, -0.05888, 0.2114, -0.00535, 0.00679, 0.00925, 0.00541, -0.16179, -0.00597, 0.02745, 0.10083, 0.10118, -0.02358, -0.10683, 0.01838, 0.06855, 0.04875, 0.10399, -0.00111, 0.0044, 0.08248, -0.04672, 0.02076, -0.01204, -0.03271, -0.01101, 0.00325, -0.01732, -0.00338, -0.01839, -0.01679, 0.02193, 0.07551, 0.03529, -0.02185, -0.0064, -0.01221, 0.0095, 0.08399, 0.00566, -0.0134, 0.08013, -0.00353, -0.01066, -0.01052, 0.00389, 0.02126, 0.01603, 0.00146, 0.00155, 0.09459, -0.00355, -0.00194, -0.02372, -0.0054, 0.00947, 0.00219, 0.0699, 0.03255, 0.01052, 0.04672, -0.08553, 0.05864, -0.05128, 0.00118, -0.03946, -0.03835, -0.02387, -0.00133, -0.0276, 0.02218, -0.02536, 0.00303, -0.0805, 0.09138, 0.02405, 0.00822, -0.01478, 0.00599, 0.00346, 0.03638, -0.01043, 0.05459, -0.07993, -0.01847, -0.00108, -0.0152, 0.03551, 0.01764, -0.20785, -0.04184, 0.01699, -0.0661, -0.35349, 0.18648, 0.0046, 0.01675, -0.03718, -0.02154, -0.01017, -0.00951, 0.06834, -0.01221, -0.01882, -0.01854, -0.02845, -0.02193, 0.00652, -0.09364, -0.00802, -0.01634, 0.0055, 0.09268, 0.00054, -0.04077, 0.65741, -0.09867, 0.07482, 0.00281, 0.00463, -0.01459, -0.00545, -0.0544, -0.00385, 0.0002, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.12139, 0.00952, -0.0014, -0.00969, 0.02451, -0.00508, 0.0017, -0.00365, -0.07394, 0.00291, -0.00576, 0.01232, 0.00122, -0.00247, -0.0153, -0.00243, -0.00683, -0.00167, -0.05989, 0.00413, 0.00312, -0.09766, -0.00395, 0.01827, 0.00367, 0.00035, 0.00419, 0.0037, -0.00108, 0.0034, -0.00187, -0.00048, -0.03402, -0.00222, -0.08015, 0.04175, -0.08109, 0.02669, -0.00426, -0.00045, 0.10517, 0.00339, -0.00328, 0.16453, -0.00288, -0.16858, 0.00087, 0.00678, 0.01567, 0.07806, 0.00432, 0.00422, 0.05907, 0.06327, -0.00193, -0.00231, 0.00208, 0.01036, -0.09737, 0.00464, 0.14929, -0.0322, 0.00225, -0.12308, -0.00188, -0.13318, 0.00578, 0.00112, -0.02408, -0.01851, -0.01082, 0.05011, -0.01091, -0.04871, -0.0125, 0.07267, -0.00085, 0.00917, 0.00126, -0.0432, -0.00936, -0.00153, -0.00967, -0.00389, 0.01711, 0.00451, 0.05866, -0.02947, -0.00351, 0.01806, -0.06314, 0.0053, 0.04623, -0.01087, 0.01144, 0.1211, 0.00126, -0.06339, 0.00639, -0.00823, 0.05535, 0.1423, 0.03187, -0.02065, -0.07353, -0.00649, -1e-005, 0.07134, 0.08352, -0.02656, -0.06359, 8e-005, 0.01483, 0.00125, -0.00718, -0.00024, 0.03606, -0.00988, -0.00032, -0.01562, 0.0013, -0.00574, -2e-005, -0.02285, 0.18032, 0.67248, -0.44075, 0.09711, 0.00083, -0.0427, -0.00062, -0.00288, -0.0115, 0.0027, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.0067, 0.1726, -0.0253, -0.17551, -0.00135, -0.09212, 0.03073, -0.06615, 0.00408, 0.05278, -0.10432, 0.22327, 0.02208, -0.04485, 0.00084, -0.04404, -0.1237, -0.03023, 0.0033, 0.07486, 0.05645, 0.00539, -0.07165, -0.00101, 0.06643, 0.00643, 0.07596, -0.00021, 6e-005, 0.06156, -0.03391, -0.00871, 0.00188, -0.04029, 0.00442, -0.0023, 0.00447, -0.00147, -0.07725, -0.00821, -0.0058, 0.06149, -0.05938, -0.00908, -0.05218, 0.0093, 0.01578, 0.12279, -0.00086, -0.00431, 0.07822, 0.07652, -0.00326, -0.00349, -0.03504, -0.04194, 0.03765, -0.00057, 0.00537, 0.08416, -0.00824, 0.00178, 0.0408, 0.00679, -0.03412, 0.00735, 0.10471, 0.02026, 0.00133, 0.00102, -0.19614, -0.00277, -0.1977, 0.00269, -0.22656, -0.00401, -0.01549, -0.00051, 0.02285, 0.00238, -0.16966, 8e-005, -0.17521, -0.07054, -0.00094, 0.08177, -0.00324, 0.00163, -0.06365, -0.001, 0.00348, 0.09603, -0.00255, 0.0006, -0.00063, -0.00668, 0.0228, 0.0035, 0.11581, -0.14907, -0.00305, -0.00785, 0.5776, -0.37422, 0.00406, 0.00036, -0.00026, -0.00394, -0.00461, 0.00147, 0.00351, 0.00143, -0.00082, 0.02273, 0.0004, -0.00437, -0.00199, 0.00055, -0.00587, 0.00086, 0.02349, 0.00032, -0.00036, 0.00126, -0.00995, -0.03711, 0.02432, -0.00536, 0.01512, 0.00236, -0.01131, -0.0521, 0.00063, -0.00015, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.1121, 0.00769, -0.01259, -0.01577, 0.01558, 0.00509, 0.01627, 0.00513, -0.07615, 0.00094, -0.02106, 0.06413, -0.01984, -0.02182, -0.02868, -0.00237, -0.0144, 0.01591, -0.0911, 0.01759, -0.02052, -0.06829, 0.02053, -0.01206, 0.01479, -0.01413, -0.03052, -0.02382, 0.0486, 0.00099, -0.04645, 0.0557, -0.02525, -0.03668, -0.04515, 0.04751, -0.02516, 0.01444, 0.01187, -0.04292, 0.05225, 0.01324, 0.07271, 0.19718, 0.07769, -0.14976, 0.07944, 0.0594, -0.01636, 0.04524, 0.11927, 0.00075, 0.07652, 0.04662, 0.09581, -0.07897, -0.08419, 0.03279, -0.11045, -0.09829, 0.13374, -0.07385, 0.02951, -0.15038, 0.12625, -0.1476, -0.30175, -0.1333, -0.0244, -0.07609, -0.04819, -0.03015, -0.11323, -0.06851, -0.13968, 0.03096, -0.11308, 0.02621, 0.03526, -0.03306, 0.05171, 0.00556, -0.00014, -0.00941, -0.07077, -0.02571, 0.03289, -0.05904, 0.05926, -0.0128, -0.09647, -0.02444, 0.09727, 0.00518, 0.0062, 0.09321, 0.03046, -0.03026, 0.05663, -0.06178, 0.07457, 0.13338, -0.31028, -0.34651, -0.06123, -0.08573, -0.01851, 0.07716, 0.04017, -0.04738, -0.07983, 0.05185, -0.00705, -0.01244, -0.00671, -0.05808, -0.01287, -0.02315, -0.00902, 0.06895, -0.03993, -0.23117, 0.00937, 0.06473, -0.04977, -0.31839, 0.12111, -0.01995, 0.00095, 0.02417, -0.00097, -0.00306, 0.00453, -0.00048, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00817, 0.16709, -0.03371, -0.16991, -0.01129, -0.11694, 0.01887, -0.03887, 0.00182, 0.03622, -0.05691, 0.20559, -0.00318, 0.00925, -0.00613, 0.00571, -0.16119, -0.00776, -0.01753, 0.0995, 0.10407, 0.03128, -0.10976, -0.01716, 0.06733, 0.05061, 0.108, 0.00374, -0.00981, 0.08287, -0.04186, 0.01472, 0.01491, -0.02885, 0.01608, -0.00853, 0.02021, 0.0018, -0.01982, -0.01214, -0.02785, 0.07451, 0.02746, 0.00015, -0.01504, 0.02886, 0.00076, 0.07793, -0.00388, 0.00847, 0.06741, -0.00363, 0.00225, 0.00542, -0.00669, 0.03013, 0.02545, -0.0051, 0.01067, 0.10604, -0.01123, 0.01013, -0.02713, 0.02208, -0.00445, 0.01414, 0.10373, 0.0475, -0.00788, -0.03858, -0.08072, -0.05566, -0.03906, 0.0064, -0.02424, 0.03516, -0.0115, -0.00156, -0.03167, -0.01866, -0.03124, -0.00366, -0.08098, 0.09298, -0.01636, 0.01112, 0.01123, 0.00051, -0.00308, -0.03519, 0.02117, 0.05763, 0.06965, 0.01801, 0.0004, 0.00498, 0.03235, -0.0144, -0.21539, -0.03526, -0.02535, 0.05173, -0.3213, 0.22598, 0.00215, -0.00736, -0.03536, 0.01313, 0.00578, 0.01482, -0.05992, -0.01803, 0.01972, -0.01727, 0.02937, -0.01564, -0.00513, 0.09678, -0.00708, 0.0088, 0.00996, -0.06765, -0.0005, 0.03385, -0.65592, 0.13452, -0.08869, -0.00062, 0.00455, 0.01201, -0.00537, -0.0544, 0.00337, -0.00014, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.08312, -0.01715, -0.04458, 0.00856, 0.03482, 0.06555, 0.06856, 0.07734, -0.08035, 0.00909, -0.02931, 0.1215, -0.0852, -0.02361, -0.0183, 0.01456, -0.01533, 0.04019, -0.0482, 0.00723, -0.06885, -0.07407, 0.10348, 0.02789, -0.01908, -0.01315, -0.09081, -0.02995, -0.01918, -0.04201, -0.06285, 0.0696, 0.02186, -0.00873, 0.02625, 0.07372, 0.01605, 0.05385, 0.04256, 0.00456, 0.00443, 0.03598, 0.05287, 0.11895, 0.03138, 0.04946, 0.03696, 0.06763, -0.07576, -0.09986, 0.16148, 0.03505, 0.11618, -0.02081, 0.12021, -0.03622, -0.04004, 0.00757, -0.09501, -0.0731, 0.05704, -0.0993, -0.00868, -0.09435, 0.12933, -0.0809, -0.25474, -0.06749, -0.02471, -0.13486, 0.02521, -0.04332, -0.0519, -0.1115, -0.15243, -0.01971, -0.0754, 0.05502, 0.01772, 0.01115, 0.05112, 0.02648, -0.03575, 0.01022, -0.17646, 0.06928, -0.16629, -0.02594, -0.03479, -0.03727, 0.00554, 0.01807, -0.04791, 0.06403, -0.08928, -0.21206, 0.06634, 0.09419, -0.04705, 0.04228, -0.01313, -0.24407, 0.23293, 0.39063, 0.12132, 0.15482, -0.00697, -0.16104, -0.13644, 0.06001, 0.17462, -0.06379, -0.08057, -0.01727, -0.03235, 0.08699, 0.0272, 0.02827, 0.00961, 0.00166, 0.03358, 0.07222, -0.03033, -0.01421, -0.04444, 0.03421, -0.03469, -0.03608, 0.02685, -0.01234, -0.0041, -0.00526, -0.00088, 0.00108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00512, 0.12326, 0.01409, -0.13661, -0.03217, -0.15301, -0.04728, -0.07719, -0.01712, 0.00471, -0.03622, 0.16475, -0.00887, -0.03892, 0.00108, -0.01194, -0.10538, 0.00525, -0.04168, 0.06468, 0.02836, 0.0564, -0.03553, -0.03573, 0.06259, 0.00609, -0.01623, 0.00157, -0.11674, 0.00704, -0.03184, 0.04016, 0.01862, -0.03534, 0.05547, 0.06305, 0.04887, 0.00382, -0.02984, -0.00887, -0.06694, 0.00318, 0.02496, 0.05031, 0.04115, -0.00868, -0.00798, 0.02752, 0.05154, 0.00803, 0.04049, 0.04649, -0.004, -0.05687, -0.00846, 0.05198, -0.08461, -0.03375, -0.01592, 0.07917, 0.02353, 0.0237, 0.00143, 0.02591, -0.07125, 0.06306, -0.16103, -0.14773, -0.02181, -0.14378, 0.11381, -0.12639, 0.23908, -0.0425, 0.24793, 0.26363, 0.09761, 0.1081, 0.0552, -0.05252, 0.16431, 0.10427, 0.2024, -0.0663, 0.01507, -0.10021, -0.06533, 0.05696, 0.01358, -0.02909, 0.14312, -0.10915, 0.26094, 0.14506, 0.14678, -0.08026, -0.02117, -0.04248, 0.15056, 0.11013, -0.12968, -0.08142, 0.10086, -0.01821, 0.19502, -0.19564, 0.04737, 0.02411, 0.1398, 0.08109, -0.11712, 0.01982, 0.07589, 0.00571, 0.03929, 0.03556, 0.02918, -0.00457, -0.01696, -0.07347, -0.0058, 0.00832, 0.00621, 0.02073, 0.10285, 0.00308, 0.0053, 0.0102, -0.00995, -0.02157, -0.0073, -0.04373, -0.00042, -0.00048, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00787, -0.02376, -0.11293, 0.00361, 0.04892, 0.11417, 0.15601, 0.1549, -0.08757, 0.05414, -0.06688, 0.25088, -0.13829, -0.03047, -0.02166, 0.05686, -0.04782, 0.10285, -0.00011, 0.00221, -0.07478, -0.09911, 0.14241, 0.07895, -0.00502, -0.02618, -0.08848, 0.0394, -0.02276, -0.06909, 0.04434, -0.0576, 0.07904, 0.06838, 0.06816, 0.021, 0.02962, 0.04428, 0.05154, 0.05226, -0.0875, 0.00521, -0.05379, -0.09573, -0.1083, 0.36503, -0.1255, -0.10113, -0.09301, -0.15622, 0.04445, 0.14626, 0.17102, -0.01018, 0.06012, 0.21537, 0.13064, 0.10884, -0.01569, -0.04968, 0.12965, -0.03842, -0.04621, -0.06419, -0.18416, -0.00622, -0.00268, -0.00456, 0.04806, -0.04587, 0.14032, 0.0907, 0.01458, -0.00355, 0.02943, 0.14508, 0.06237, -0.05118, -0.04168, 0.03955, -0.11241, -0.03598, -0.06687, -0.00558, 0.08108, -0.01451, 0.04059, 0.16502, -0.0091, 0.00953, 0.13091, 0.00202, -0.13791, -0.05662, 0.01099, -0.07533, -0.02315, 0.00812, -0.07639, 0.10063, 0.00283, 0.1176, -0.05877, -0.13711, -0.1173, -0.06686, -0.02194, 0.10922, 0.08011, -0.0364, -0.03432, 0.04476, 0.05432, -0.01962, 0.05947, -0.08257, -0.08599, 0.00637, 0.00859, -0.03153, -0.04768, -0.0449, 0.00073, 0.00078, 0.01587, -0.00498, 0.00653, 0.01383, -0.0019, -0.00343, 0.00058, -0.00129, -0.00394, -0.00029, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00347, 0.00115, 0.11962, -0.0274, -0.05623, -0.15343, -0.14657, -0.09346, -0.02254, -0.08508, 0.08087, 0.02733, -0.04125, -0.00647, -0.01152, -0.09284, 0.06289, 0.07343, -0.08591, -0.08602, -0.09492, 0.09427, 0.17077, -0.081, -0.02764, 0.00585, -0.24118, 0.03064, -0.11885, -0.03671, -0.10529, 0.28768, 0.04304, 0.11988, 0.09447, 0.06959, 0.07817, 0.04911, 0.10027, 0.04967, -0.15226, -0.00281, -0.00125, 0.18493, 0.07912, -0.01583, 0.01763, -0.03257, 0.05407, 0.09901, 0.02309, 0.05708, -0.06243, 0.0245, -0.08228, 0.02402, -0.09034, -0.05906, -0.00707, 0.16939, -0.03381, 0.08289, -0.01334, 0.0191, -0.03933, -0.08718, 0.05047, 0.0307, -0.05528, -0.07827, 0.11093, -0.12194, -0.03489, 0.07485, -0.03477, 0.10669, 0.03519, -0.00262, -0.0495, 0.08711, -0.14793, -0.07599, -0.12017, 0.01121, -0.11338, 0.00574, -0.07246, 0.23751, -0.01664, 0.03428, -0.09994, -0.01049, -0.26416, -0.27142, -0.05291, 0.16021, -0.08285, -0.06078, 0.05822, -0.1566, -0.00575, -0.0053, -0.05921, 0.021, 0.06306, 0.03388, 0.0122, -0.03824, 0.04212, 0.05054, -0.01361, -0.00119, 0.03375, -0.03264, 0.0239, -0.02282, -0.03982, 0.05345, -0.00162, 0.0061, 0.01998, 0.00016, 0.00857, -0.04719, 0.01865, -0.00327, 0.00184, -0.01917, 0.02028, -0.00014, -0.00574, -0.05064, 0.00468, -0.00113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.07639, -0.00677, -0.04059, -0.00254, 0.02523, 0.0617, 0.07674, 0.05286, -0.09185, 0.03154, -0.05596, 0.11113, -0.04088, -0.04397, -0.00062, -0.02019, -0.02221, 0.02102, -0.03677, 0.01428, -0.07419, -0.09746, 0.06743, 0.0699, -0.03579, -0.04827, -0.1134, -0.0081, -0.05988, 0.04567, -0.05964, 0.06581, -0.01049, 0.03346, 0.03222, 0.12106, 0.05786, 0.0408, -0.01011, -0.18027, -0.00365, 0.08423, 0.05534, 0.0699, 0.08154, -0.09097, 0.14963, 0.08709, -0.03719, -0.20748, -0.12218, -0.12086, 0.00816, -0.04264, -0.00436, -0.12241, 0.07681, -0.05897, 0.15459, -0.04849, -0.18298, 0.0598, -0.02372, 0.11296, 0.04129, 0.06978, 0.10626, 0.07399, -0.05697, -0.00144, -0.02812, -0.0833, 0.05293, 0.03306, 0.05162, -0.06835, 0.03869, -0.00303, -0.01114, 0.01678, 0.01499, 0.01001, 0.04891, -0.00321, -0.03694, 0.00859, 0.01816, -0.01142, 0.02114, -0.04457, -0.03187, -0.01193, -0.00412, 0.0247, 0.00951, 0.02045, -0.07238, 0.02612, -0.02181, -0.01284, -0.02124, 0.024, 0.0163, -0.0175, -0.05323, -0.01792, 0.0067, 0.03128, -0.00148, -0.02641, -0.01588, 0.00142, 0.0094, 0.03011, -0.02016, -0.01267, -0.01101, -0.00314, -0.01486, 0.02163, 0.02281, -0.01735, 0.0265, -0.00375, 0.00071, 0.08531, 0.19504, 0.44668, -0.50507, 0.09431, -0.00245, 0.00322, -0.00637, 0.00239, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00389, 0.11235, 0.01552, -0.05211, -0.02991, -0.1222, -0.05949, -0.12502, -0.00833, -0.03692, -0.02522, 0.13911, 0.06026, -0.03201, -0.0005, -0.08605, 0.05371, 0.06557, -0.02806, -0.15154, -0.10786, 0.04594, -0.01687, -0.03205, 0.06497, -0.10672, -0.06812, 0.01374, -0.07641, -0.01425, 0.12902, -0.14073, 0.03102, -0.01651, 0.04053, 0.03712, 0.01774, 0.02408, 0.08103, 0.03968, -0.09145, -0.12395, -0.0245, 0.02087, 0.04788, 0.00699, 0.0017, -0.16687, 0.03807, 0.02031, -0.1935, -0.0651, 0.01568, -0.0241, 0.03328, -0.01081, 0.01519, -0.02026, -0.00021, -0.22347, -0.00015, 0.03159, -0.00807, 0.02785, 0.0744, 0.08946, -0.04954, 0.02307, -0.05062, -0.18351, 0.05184, -0.13677, 0.04744, -0.01069, 0.00854, 0.16237, -0.04926, -0.01866, 0.00659, -0.03879, 0.04615, -0.0028, 0.09194, 0.02334, 0.07553, 0.04857, 0.16323, 0.04072, 0.0415, 0.18749, 0.035, 0.09668, 0.14752, 0.10464, 0.01939, 0.05186, 0.11291, 0.01808, -0.2513, -0.17456, -0.04917, 0.09082, 0.06847, -0.02922, -0.29617, 0.27362, -0.05282, -0.02578, -0.15355, -0.0923, 0.14594, 0.01185, -0.06755, -0.00579, -0.16622, -0.00514, 0.03863, -0.01512, 0.01771, 0.06914, 0.02278, 0.03305, 0.01589, -0.01118, 0.02872, -0.03333, -0.02563, -0.04168, 0.02949, 0.01109, -0.00691, -0.04869, -0.00165, -0.00052, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.10175, 0.00737, -0.00029, -0.0035, 0.02379, -0.00451, -0.00143, -0.00492, -0.0919, -0.00092, -0.00184, 0.00906, 0.00465, -0.00051, -0.0098, -0.00382, 0.00147, 0.00359, -0.0334, -0.00679, -0.00305, -0.09587, -0.00273, 0.05425, 0.004, -0.00521, 0.00112, 0.02897, 0.00092, 0.00103, 0.00756, -0.01039, -0.01001, 0.00154, -0.0325, 0.02059, -0.02888, 0.01092, 0.00329, 0.00134, 0.03754, -0.0031, -0.00201, 0.0755, 0.00086, -0.17412, -0.00303, -0.00534, 0.03311, 0.07399, -0.00974, -0.00224, -0.02476, 0.0772, 0.00119, -0.00306, 0.00283, -0.01581, -0.00293, -0.011, 0.04174, -0.0032, 0.00082, -0.03485, 0.00591, -0.072, 0.00111, 0.0037, 0.00982, 0.0973, -0.00217, 0.13022, -0.00858, 0.08464, -0.00731, 0.13157, -0.00327, -0.02477, -0.00102, -0.03077, -0.00476, -0.01799, -0.01241, 0.00122, 0.26132, 0.00042, 0.15598, 0.04009, -0.00176, -0.01176, 0.16827, -0.01052, -0.09038, 0.01188, 0.08117, 0.06486, -0.01427, -0.09856, 0.02943, 0.02022, -0.14436, -0.05386, -0.008, 0.00985, 0.12319, 0.04056, 0.00464, -0.09338, -0.05707, -0.00724, 0.07477, -0.00267, -0.10555, 0.00224, -0.05884, 0.00167, -0.0928, -0.05101, 0.00057, -0.08529, -0.00091, 0.05463, 0.00024, -0.03859, -0.09201, 0.29304, 0.62062, -0.27878, -0.00121, -0.16112, -0.00034, -0.00317, -0.00591, 0.00133, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00561, 0.13356, -0.00517, -0.06339, -0.00131, -0.08165, -0.02595, -0.08923, 0.00507, -0.01661, -0.03334, 0.16415, 0.08421, -0.00924, 0.00054, -0.06916, 0.02662, 0.06512, 0.00184, -0.12312, -0.05521, 0.00529, -0.04941, -0.00299, 0.07257, -0.09442, 0.02019, -0.0016, -5e-005, 0.0186, 0.13703, -0.18836, 0.00055, 0.02795, 0.00179, -0.00114, 0.00159, -0.0006, 0.05958, 0.02424, -0.00207, -0.05622, -0.0365, -0.00417, 0.01557, 0.00961, -0.05485, -0.09684, -0.00183, -0.00408, -0.17649, -0.04057, 0.00137, -0.00426, 0.02158, -0.05553, 0.05132, 0.00087, 0.00016, -0.19928, -0.0023, 0.00018, 0.01481, 0.00192, 0.10717, 0.00397, 0.02008, 0.06709, -0.00054, -0.00537, -0.03923, -0.00719, -0.15547, -0.00467, -0.13239, -0.00726, -0.05918, 0.00137, -0.01853, 0.0017, -0.08632, 0.00099, -0.22494, 0.02205, -0.01442, 0.0076, -0.00861, -0.00221, -0.03189, 0.00065, -0.00929, -0.19056, 0.00499, -0.00066, -0.00448, -0.00358, -0.25867, 0.00544, 0.53324, 0.36642, 0.00797, 0.00297, -0.14501, 0.17851, -0.0068, -0.00224, 0.08412, 0.00515, 0.00315, 0.0004, -0.00413, -0.04838, 0.00582, 0.04057, 0.00325, 0.03026, 0.00512, 0.00282, 0.01041, 0.00471, -0.01645, -0.00301, 0.00435, 0.00213, 0.00508, -0.01617, -0.03425, 0.01538, -0.02187, 0.00889, -0.00621, -0.05743, 0.00033, -7e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.07635, 0.01909, 0.04205, -0.00321, 0.02837, -0.07477, -0.08282, -0.0663, -0.09037, -0.03541, 0.05284, -0.09515, 0.04727, 0.04018, -0.00056, 0.0106, 0.02799, -0.01368, -0.03346, -0.03086, 0.06187, -0.10192, -0.06888, 0.073, 0.04273, 0.03624, 0.10521, -0.00957, -0.05111, -0.04696, 0.07348, -0.08089, -0.01384, -0.03507, 0.02757, 0.11624, 0.05556, 0.0379, 0.01896, 0.18354, 0.00643, -0.09736, -0.0577, 0.06718, -0.07578, -0.09118, -0.14854, -0.10492, -0.04115, -0.20846, 0.10015, 0.11297, 0.00638, -0.03973, 0.00799, 0.12048, -0.07467, -0.05638, 0.15367, 0.02361, -0.18185, 0.05596, 0.02269, 0.10921, -0.03286, 0.05952, -0.11106, -0.071, -0.05105, 0.01876, 0.03365, -0.06774, -0.04739, 0.03404, -0.05037, -0.0858, -0.04388, -0.00095, 0.01179, 0.02094, -0.00982, 0.01026, -0.03849, 0.00576, -0.04503, -0.00319, 9e-005, -0.01583, -0.01645, -0.06493, -0.03553, 0.02249, -0.02033, 0.01304, 0.00732, 0.01462, 0.08437, 0.02398, -0.00597, -0.00644, -0.0157, 0.01386, -0.00867, 0.01418, -0.02031, -0.04792, -0.01247, 0.03392, 0.01543, -0.01609, -0.03185, -0.0001, 0.01678, -0.03057, -0.00175, 0.01203, -0.01519, -0.00145, 0.01672, 0.01389, -0.02017, -0.02088, -0.02459, -0.00249, -0.00246, 0.08846, 0.19668, 0.44856, 0.50524, 0.09251, 0.00167, -0.00856, -0.00615, 0.00243, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00454, 0.11093, 0.01096, -0.05207, 0.02695, -0.11467, -0.05068, -0.11844, 0.01839, -0.03323, -0.03122, 0.1505, 0.05539, -0.03666, 0.00056, -0.08775, 0.05094, 0.06748, 0.03193, -0.14905, -0.11537, -0.03494, -0.00935, 0.02416, 0.06064, -0.11138, -0.08018, -0.01276, 0.08253, -0.00914, 0.12167, -0.13263, -0.02968, -0.01273, -0.04383, -0.05021, -0.024, -0.02842, 0.07942, 0.01961, 0.09129, -0.11393, -0.01826, -0.02843, 0.05656, 0.00307, 0.01815, -0.15627, -0.03374, 0.00264, -0.20577, -0.07801, -0.01649, 0.02864, 0.0326, -0.02422, 0.02355, 0.02662, -0.0168, -0.22745, 0.02028, -0.03797, -0.01063, -0.04011, 0.07849, -0.09659, -0.03754, 0.03107, 0.05658, 0.18256, 0.04843, 0.14511, 0.05298, 0.00699, 0.01417, -0.15386, -0.04471, 0.01888, 0.00532, 0.03671, 0.04752, 0.00168, 0.09676, 0.02285, -0.071, 0.04922, -0.16424, -0.03922, 0.04358, -0.18145, -0.03128, 0.09478, -0.14617, -0.10672, -0.02032, -0.0538, 0.10426, -0.02084, -0.25217, -0.17491, 0.0512, -0.09291, 0.06985, -0.03097, 0.30022, -0.26999, -0.05176, 0.02218, 0.15278, 0.09464, -0.14331, 0.01193, 0.06611, -0.00244, 0.16743, -0.0065, -0.03718, 0.01538, 0.01597, -0.0711, 0.02516, -0.03094, 0.01871, 0.01153, -0.02862, 0.02374, 0.00402, -0.00772, -0.02627, -0.0214, -0.00713, -0.04804, 0.00234, 0.00025, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.0707, 0.01297, 0.0487, -0.00082, 0.02657, -0.07051, -0.08437, -0.05961, -0.09074, -0.03608, 0.05751, -0.09944, 0.03555, 0.04151, 0.00426, 0.01544, 0.02068, -0.01589, -0.01859, -0.01897, 0.0648, -0.11377, -0.05029, 0.09639, 0.02582, 0.05817, 0.10446, -0.00153, -0.04451, -0.05584, 0.05877, -0.05193, -0.02256, -0.0211, 0.01677, 0.11334, 0.06257, 0.02424, 0.01475, 0.19514, 0.01401, -0.09553, -0.05702, 0.04308, -0.07706, -0.10517, -0.1456, -0.1025, -0.02839, -0.22279, 0.12474, 0.13206, 0.00321, -0.05226, 0.01302, 0.12973, -0.08931, -0.05266, 0.18185, 0.04055, -0.18599, 0.05243, 0.03224, 0.11315, -0.03938, 0.05216, -0.11801, -0.08353, -0.03927, 0.02733, 0.01108, -0.05757, -0.05832, 0.06559, -0.07954, -0.07102, -0.05555, 0.00459, 0.01073, 0.02855, -0.01443, -0.01559, -0.04215, 0.0226, -0.01081, 0.00654, 0.0284, -0.00543, -0.00747, -0.01883, 0.00048, 0.01037, -0.00462, 0.02128, 0.01493, 0.03533, 0.05471, -0.00229, -0.02417, -0.0113, 0.01123, 0.02206, 0.00868, 0.02889, -0.02173, -0.04963, -0.01649, 0.04414, 0.02564, -0.02261, -0.05375, -0.00398, 0.03711, -0.00226, 0.02284, 0.0152, 0.00812, 0.01068, -0.00829, -0.00103, 0.01263, 0.01708, -0.01166, 0.01662, 0.01482, -0.07237, -0.19967, -0.42289, -0.48872, -0.10443, -0.0069, 0.00166, 0.00235, -0.00192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00167, 0.07539, 0.10359, 0.0834, 0.01644, 0.12456, 0.0053, 0.02246, 0.03198, -0.01489, 0.09383, 0.05884, -0.08454, -0.02596, 0.00769, 0.00154, -0.17516, -0.05591, 0.03387, 0.10601, 0.12421, -0.03047, 0.02391, 0.01415, -0.07475, 0.13527, 0.05595, -0.04772, 0.05838, -0.12912, -0.09738, 0.15026, -0.04622, 0.08158, -0.06423, -0.02545, -0.04573, -0.02039, -0.08235, 0.1126, 0.08588, -0.17267, 0.04413, -0.05492, -0.01957, -0.0199, -0.05442, -0.11525, -0.0307, -0.09006, -0.14886, 0.03169, 0.03193, 0.00766, -0.04441, -0.03859, 0.00657, 0.00797, -0.00074, -0.11295, -0.03727, -0.01103, 0.01442, -0.0055, 0.03835, -0.03853, -0.01334, -0.00044, -0.05216, -0.14824, -0.11464, -0.12022, -0.03536, 0.03138, -0.04499, -0.00664, -0.0713, -0.01059, -0.03723, -0.03656, 0.09645, -0.08095, 0.09793, 0.02938, 0.04562, 0.04133, 0.19702, -0.03192, 0.07648, 0.49195, 0.01931, -0.07341, 0.00018, -0.08806, -0.14253, -0.05999, -0.31213, 0.02819, -0.11179, -0.00523, 0.12276, -0.03996, 0.05698, -0.00941, 0.22818, -0.05241, 0.01027, -0.01649, 0.10094, 0.04995, -0.01278, 0.01395, 0.04392, 0.02222, 0.04443, -0.06384, -0.02874, 0.01247, 0.00344, -0.01536, 0.00024, 0.00947, 0.00201, -0.00148, -0.02126, 0.0064, 0.02106, 0.02789, 0.03284, 0.0174, -0.00593, -0.04973, -8e-005, 0.0007, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.09328, 0.00537, 0.00574, 0.00582, 0.03337, 0.00917, 0.00079, 0.00107, -0.09668, 0.00038, 0.00504, 0.00288, -0.00249, -0.00096, -0.00888, 0.00058, -0.01071, -0.00492, -0.00847, 0.00762, 0.00853, -0.0908, -0.0022, 0.0693, -0.00254, 0.00663, 0.0036, 0.04546, 0.01712, -0.00526, -0.0048, 0.00572, -0.01356, 0.00379, -0.00082, 0.00645, -0.01148, 0.00036, -0.00583, 0.0026, 0.00511, -0.00614, 0.00323, 0.04812, 0.00148, -0.15727, 0.00204, -0.00432, 0.03675, 0.10046, -0.01272, -0.00339, -0.05667, 0.07528, -0.00222, -0.008, 0.00391, -0.02884, 0.00625, -0.00753, -0.00057, 0.00426, 0.00209, -0.0068, 0.00022, -0.04954, -0.00098, 0.00172, 0.02213, 0.14682, 0.0193, 0.14919, 0.00122, 0.10168, -0.004, 0.12587, 0.00957, -0.05328, 0.00203, 0.00953, -0.00748, -0.00374, -0.00654, -0.00136, 0.31315, -0.0028, 0.16194, 0.07527, -0.00696, 0.0156, 0.20455, 0.005, -0.15076, 0.01061, 0.1223, 0.00908, 0.03178, -0.08932, 0.01325, -0.00173, -0.2182, -0.10231, -0.004, 0.00056, 0.20554, 0.06932, -0.00082, -0.20791, -0.07863, -0.02254, 0.03158, -0.00054, -0.11591, -0.00224, -0.00206, 0.00426, -0.05462, -0.08051, 0.00056, -0.04734, 0.00064, 0.03704, 0.00139, -0.0183, -0.0868, -0.36015, -0.43823, 0.26196, -0.00163, 0.12766, -0.00032, -0.00271, 0.00082, -0.00021, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00515, 0.09726, 0.10399, 0.10551, -0.00184, 0.16617, 0.01426, 0.01934, 0.00534, 0.00681, 0.09137, 0.05212, -0.04514, -0.01741, 0.00049, 0.01045, -0.19415, -0.08917, 0.00047, 0.13803, 0.1545, 0.00501, -0.03996, -0.00382, -0.046, 0.12009, 0.06523, -0.00251, -0.00094, -0.09523, -0.08694, 0.10366, 0.00075, 0.06876, 5e-005, -0.00036, 0.00063, -2e-005, -0.10574, 0.04719, -0.00028, -0.11133, 0.05847, -0.00266, 0.02673, 0.00868, 0.03694, -0.07837, -0.00203, -0.00554, -0.23053, -0.06138, 0.00313, -0.00415, -0.04017, -0.14494, 0.07093, 0.00159, -0.00034, -0.13645, 3e-005, -0.00024, 0.03785, 0.00038, 0.00403, 0.00273, -0.01777, 0.03111, -0.00122, -0.0081, 0.34965, -0.00823, 0.02215, -0.00561, -0.07249, -0.00695, 0.17344, 0.00294, 0.03677, -0.00053, -0.13554, 0.00021, -0.11859, -0.02469, -0.01728, -0.0507, -0.00894, -0.00415, -0.12615, -0.00086, -0.01129, 0.09066, 0.00832, -0.00059, -0.00675, -0.0005, 0.57586, 0.00493, 0.24018, -0.03141, 0.01204, 0.00565, -0.07255, 0.01023, -0.01134, -0.00383, -0.01477, 0.01147, 0.00434, 0.00124, -0.00174, -0.00977, 0.0064, -0.04063, 0.00011, 0.07718, 0.00301, 0.00444, 0.01013, 0.00261, 0.01152, -0.00204, 0.02513, 0.00101, 0.00479, 0.01987, 0.02418, -0.01446, -0.02962, -0.00705, -0.00586, -0.04918, -5e-005, 1e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.07046, -0.0046, -0.037, 0.00999, 0.0246, 0.08379, 0.08444, 0.06172, -0.09371, 0.03422, -0.04684, 0.10531, -0.04463, -0.04411, 0.00339, -0.01518, -0.03983, 0.00964, -0.02221, 0.03052, -0.05074, -0.10972, 0.05262, 0.09425, -0.03389, -0.04293, -0.09767, 0.00374, -0.05066, 0.04129, -0.06913, 0.06815, -0.01734, 0.02995, 0.02373, 0.11546, 0.06722, 0.02634, -0.02372, -0.18156, 0.00448, 0.07595, 0.06153, 0.04887, 0.07444, -0.10234, 0.13873, 0.08919, -0.02483, -0.21153, -0.14036, -0.12777, -0.00033, -0.05278, -0.01783, -0.13319, 0.08949, -0.05322, 0.18082, -0.05274, -0.18076, 0.05332, -0.03045, 0.11307, 0.04336, 0.05608, 0.11583, 0.08298, -0.0333, 0.04348, -0.02363, -0.04399, 0.05408, 0.06173, 0.07411, -0.06986, 0.04737, 0.00573, -0.01476, 0.0324, 0.02495, -0.00658, 0.05267, -0.01923, -0.01576, -0.00196, 0.00655, -0.00188, 0.01584, -0.07285, -0.00165, -0.01838, -0.00461, 0.03084, 0.03052, 0.04172, -0.08873, -0.00538, 0.01172, 0.01066, -0.00234, 0.02633, -0.00236, -0.02975, -0.0467, -0.04356, 0.01752, 0.04569, 0.01438, -0.02797, -0.05201, 0.00549, 0.03205, 0.00469, 0.01781, -0.02214, 0.01123, 0.00925, 0.00862, 0.00066, -0.01252, 0.01593, 0.01181, 0.01668, 0.01707, -0.07264, -0.20077, -0.42339, 0.48937, -0.10571, 0.00621, -0.00713, 0.00234, -0.00198, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00612, 0.07636, 0.10832, 0.08281, -0.01927, 0.11605, -0.00402, 0.01577, -0.0218, -0.01877, 0.09959, 0.04754, -0.08012, -0.02123, -0.00811, 0.00323, -0.17182, -0.05732, -0.03162, 0.10327, 0.13058, 0.04281, 0.01824, -0.02467, -0.07146, 0.14085, 0.0671, 0.0476, -0.05313, -0.13448, -0.09032, 0.14363, 0.04842, 0.07877, 0.06199, 0.01283, 0.03857, 0.0176, -0.08023, 0.13339, -0.0869, -0.18213, 0.03759, 0.04985, -0.02793, 0.03135, -0.07011, -0.12583, 0.03364, 0.11403, -0.13423, 0.04603, -0.03209, -0.00186, -0.04271, -0.02408, -0.0033, -0.00212, -0.01927, -0.1078, 0.05751, 0.00519, 0.01788, -0.00698, 0.03379, 0.03256, -0.02625, -0.00963, 0.05616, 0.14433, -0.11273, 0.12582, -0.04157, -0.03841, -0.05347, 0.01441, -0.07698, 0.01002, -0.03582, 0.0332, 0.09428, 0.08217, 0.09269, 0.03168, -0.04415, 0.0418, -0.19894, 0.03233, 0.0752, -0.48689, -0.01924, -0.07183, 0.00033, 0.08518, 0.14002, 0.05574, -0.30421, -0.02776, -0.11378, -0.00644, -0.12325, 0.03729, 0.05759, -0.00618, -0.22441, 0.05755, 0.0084, 0.01154, -0.10315, -0.04715, 0.01862, 0.01343, -0.04773, 0.02184, -0.04667, -0.06178, 0.02767, -0.01357, 0.00251, 0.01539, 0.00163, -0.01129, 0.00071, -0.00036, 0.0195, 0.0016, 0.00104, 0.01881, -0.02113, -0.00581, -0.00665, -0.04925, -0.00018, -0.00049, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.03685, -0.0067, -0.05435, 0.06544, 0.03365, 0.17163, 0.11694, 0.07463, -0.10827, 0.01804, -0.01957, 0.14562, -0.07734, -0.03953, -0.02851, 0.00368, -0.01969, 0.04835, 0.00042, -0.00142, -0.04063, -0.06767, 0.05595, 0.08399, 0.00453, -0.03746, -0.02568, 0.03547, 0.09171, -0.01237, 0.08461, -0.06514, 0.09115, -0.03586, 0.10336, 0.00071, 0.08629, -0.02315, 0.01349, 0.07168, -0.18861, -0.02217, -0.08148, -0.09235, 0.0067, 0.20281, -0.1172, -0.05318, -0.041, 0.06834, -0.04834, -0.00643, -0.00329, -0.02199, -0.07008, 0.04991, -0.18036, 0.04828, -0.0408, 0.15343, 0.02916, 0.01727, 0.05586, 0.02898, 0.04635, 0.0491, 0.08888, -0.00147, 0.06335, 0.0514, -0.17216, 0.0121, 0.00188, -0.01824, 0.05721, -0.06478, -0.09097, -0.02748, 0.06182, -0.01139, 0.07635, 0.01158, 0.09231, 0.03578, -0.00968, -0.05517, -4e-005, -0.10252, 0.02215, 0.07008, -0.18405, 0.00138, 0.17049, -0.0247, 0.02729, 0.30643, 0.05873, -0.12428, 0.21363, -0.3211, 0.00367, -0.04312, -0.08522, 0.04643, 0.17523, 0.00342, 0.02868, -0.11059, 0.02134, 0.01653, -0.03367, -0.09279, -0.04666, 0.07776, -0.09996, 0.18949, 0.20531, 0.02369, -0.04883, 0.06611, 0.06612, 0.07117, 0.0013, -0.01078, 0.00502, 0.00643, 0.01739, 0.00338, 0.00575, -0.01387, 0.00137, -0.00636, 0.00026, 8e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00607, 0.04274, 0.11918, 0.10372, -0.03874, 0.06272, -0.08668, -0.08031, -0.01743, -0.07849, 0.13482, 0.03417, -0.04276, -0.02694, -0.01345, -0.06473, 0.00494, 0.04892, -0.10448, -0.05818, -0.00623, 0.09154, 0.05915, -0.07342, -0.00811, -0.01187, -0.07734, 0.03515, -0.08437, 0.03648, -0.03461, 0.09054, 0.04878, 0.03046, 0.12005, 0.09099, 0.0787, 0.06951, 0.07487, -0.0112, -0.16033, 0.05701, 0.00023, 0.25415, -0.03378, 0.03633, 0.00965, 0.00263, 0.03598, 0.05605, 0.07116, 0.0554, -0.05092, 0.05352, 0.02775, 0.12813, 0.0794, 0.05949, 0.04172, 0.00173, 0.03462, -0.03978, -0.04961, 0.07218, 0.04122, -0.03391, 0.11559, 0.07951, 0.08058, 0.19488, -0.25661, 0.09387, 0.00104, -0.03308, 0.02228, -0.12964, -0.10493, 0.01297, 0.07853, 0.02273, 0.11489, -0.04973, 0.06928, 0.05703, 0.05976, 0.0008, 0.01251, -0.03273, -0.05657, 0.1692, 0.03831, 0.01694, 0.0111, 0.07916, -0.03723, -0.19884, 0.24873, 0.12678, -0.05697, 0.31784, 0.12924, 0.03517, -0.00645, -0.11379, -0.01195, -0.19054, 0.01834, 0.01923, 0.05467, -0.16027, 0.00232, -0.06799, -0.11946, 0.11159, -0.11156, 0.10527, 0.10281, -0.09872, -0.03421, -0.0278, -0.0054, 0.06613, 0.00932, -0.00243, -0.03919, 0.02093, -0.00534, -0.00747, 0.00559, 0.00787, -0.00647, -0.05247, -0.00013, 0.00086, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.06929, 0.00788, -0.02174, 0.05083, 0.03152, 0.10857, 0.05545, 0.01871, -0.11826, 0.00618, -0.0013, 0.06815, -0.03285, -0.04773, -0.01837, -0.01026, -0.02201, 0.01507, 0.01225, -0.00557, -0.04382, -0.07936, -0.00662, 0.10791, 0.04233, -0.06795, -0.03248, 0.01872, 0.1087, -0.00171, 0.06487, -0.05545, 0.05454, -0.07027, 0.02294, -0.04594, 0.05684, -0.06158, -0.00373, 0.09304, -0.16225, -0.07442, -0.0258, -0.14627, 0.12464, -0.02869, -0.03983, -0.03557, 0.04157, 0.29348, -0.05246, -0.09546, -0.15832, -0.0238, -0.12945, -0.1727, -0.30804, -0.10412, -0.05666, 0.26886, -0.05813, 0.09179, 0.05448, 0.02353, 0.10841, 0.04666, 0.00397, -0.013, -0.00131, -0.05055, 0.00546, -0.07483, -0.02788, -0.02123, 0.03096, -0.02371, 0.0007, 0.04367, -0.05634, 0.05924, -0.04297, 0.00275, -0.05638, 0.02844, -0.09973, 0.00643, -0.0412, -0.0276, -0.0597, 0.05054, -0.04694, 0.02162, 0.03167, 0.03131, -0.03281, -0.1253, 0.06066, 0.07778, -0.13938, 0.27063, 0.03257, 0.03213, 0.04759, -0.0395, -0.04987, -0.0561, -0.00384, 0.08086, -0.00982, -0.02266, 0.09752, 0.10807, -0.03768, -0.09556, 0.06234, -0.19373, -0.28657, -0.11328, 0.05316, -0.18357, -0.03077, -0.06623, -0.00786, -0.02634, -0.00109, 0.0231, -0.02222, -0.00792, -0.00828, -0.01007, -0.0006, 0.00152, -0.00109, 0.0002, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.0054, 0.09221, 0.12176, 0.20324, -0.02109, 0.22181, -0.04332, -0.10739, -0.00726, -0.06399, 0.14581, 0.02452, -0.00138, -0.06236, -0.00619, -0.07228, -0.02472, 0.00633, -0.05591, -0.03107, 0.00599, 0.05587, -0.04274, -0.04412, 0.03444, -0.05886, 0.01008, 0.02746, -0.04335, 0.14786, 0.03704, -0.07739, 0.03273, -0.08389, 0.07271, 0.06181, 0.05775, 0.05018, 0.02692, -0.07382, -0.07581, 0.10181, -0.02677, 0.16416, -0.02445, 0.04883, 0.0173, 0.07082, 0.00657, -0.01532, 0.08077, 0.0345, 0.00581, 0.03023, 0.06736, 0.08048, 0.07357, 0.06493, 0.0534, -0.01355, 0.01901, -0.04691, -0.02422, 0.0414, -0.05861, 0.01073, -0.0117, -0.03756, 0.08455, 0.13458, -0.03508, 0.10087, 0.04304, -0.0427, 0.02023, -0.08089, 0.00815, -0.04311, 0.03628, -0.00525, 0.02004, -0.00201, 0.0019, -0.00704, 0.05972, 4e-005, 0.0443, -0.13982, 0.01484, 0.09508, -0.0449, 0.03517, 0.09799, 0.08913, 0.04692, 0.02061, -0.04339, -0.0464, 0.11944, -0.14791, -0.00709, -0.03935, 0.01814, 0.10918, 0.03489, 0.26025, -0.04068, 0.06262, -0.03326, 0.23925, 0.02418, 0.18852, 0.23, -0.23688, 0.1963, -0.25176, -0.25583, 0.09764, 0.1125, -0.02096, -0.02044, -0.13042, -0.00939, 0.00847, 0.04797, 0.00582, -0.00289, 4e-005, -0.01511, -0.00031, -0.00988, -0.04824, -0.00063, 0.00114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.09497, 0.00613, 0.00661, 0.01295, 0.04232, 0.0143, -0.00151, -0.0062, -0.1146, -0.00312, 0.00876, 0.00097, 0.00054, -0.00481, 0.00382, -0.0038, -0.0029, -0.0007, 0.02974, -0.0003, -0.00032, -0.08285, -0.00577, 0.0988, 0.00393, -0.00539, 0.00137, 0.05378, 0.05468, 0.00849, 0.00466, -0.00742, 0.03266, -0.00856, -0.00275, -0.02906, -0.01067, -0.03891, -0.00025, -0.0021, -0.06808, 0.00322, 1e-005, -0.05403, 0.00427, -0.09659, 0.00249, 0.00511, 0.09329, 0.26973, 0.00626, -0.00062, -0.15466, 0.01446, 0.00013, -0.00359, -0.00135, -0.09765, -0.03841, 0.00338, -0.03228, 0.02641, 0.00114, 0.00321, -0.00434, -0.01091, -0.00538, -0.00407, 0.0167, 0.08602, 0.01661, 0.02768, -0.00107, -0.00239, 0.00019, 0.04213, 0.00613, 0.03084, -0.00669, 0.0325, -0.00955, 0.0055, -0.00651, -0.0044, 0.01707, 0.00131, 0.03333, 0.06312, 0.00253, 0.04193, 0.16392, -0.00308, -0.08738, -0.00321, -0.05258, -0.29592, -0.01323, 0.12828, -0.01294, 0.00044, 0.03534, -0.02429, -0.00118, -0.00525, -0.1234, 0.1307, 0.00242, 0.07281, 0.06344, 0.16072, -0.16327, -0.01438, 0.28913, 0.01696, 0.07485, 0.01889, 0.40197, 0.30946, -0.01035, 0.40683, 0.00164, 0.03811, 0.00055, 0.08638, 0.03347, -0.01377, 0.07352, 0.00504, 0.0007, -0.01721, -0.00039, -0.00288, -0.00331, 0.00131, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00524, 0.11115, 0.11979, 0.23462, -0.00234, 0.25918, -0.02737, -0.11243, 0.00632, -0.05659, 0.15872, 0.01749, 0.00975, -0.08717, -0.00021, -0.06886, -0.05262, -0.01274, -0.00164, -0.00546, -0.00573, 0.00457, -0.10451, -0.00545, 0.07115, -0.09766, 0.02469, -0.00297, -0.00302, 0.1539, 0.08453, -0.13451, -0.0018, -0.15516, 0.00015, 0.0016, 0.00059, 0.00215, -0.00446, -0.03812, 0.00376, 0.05832, 0.00025, 0.00298, 0.07737, 0.00533, 0.0451, 0.09265, -0.00515, -0.01488, 0.11343, -0.01116, 0.00853, -0.0008, 0.00242, -0.0651, -0.02453, 0.00539, 0.00212, 0.06118, 0.00178, -0.00146, 0.02073, -0.00018, -0.07865, 0.0006, -0.09753, -0.07384, -0.00092, -0.00475, 0.30104, -0.00153, -0.01943, 0.00013, 0.00341, -0.00233, 0.11111, -0.0017, -0.12127, -0.00179, -0.173, -0.0003, -0.11793, -0.07967, -0.00094, 0.02366, -0.00184, -0.00348, 0.0459, -0.00231, -0.00905, -0.0559, 0.00482, 0.00018, 0.0029, 0.01633, -0.23968, -0.00708, -0.23447, 0.0079, -0.00195, 0.00134, -0.02146, -0.09507, 0.00681, -0.00721, 0.04394, -0.00402, -0.0035, -0.00887, 0.00901, -0.26051, -0.01596, 0.30728, -0.00413, 0.34224, -0.02218, -0.01708, -0.18755, -0.02245, 0.02967, -0.0021, 0.00993, -0.00477, -0.00185, 0.00076, -0.00406, -0.00028, 0.01268, 0.00095, -0.007, -0.05211, 0.00018, -7e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.06946, 0.00231, 0.035, -0.02816, 0.03365, -0.08351, -0.05988, -0.03042, -0.11674, -0.01318, 0.01734, -0.06504, 0.0325, 0.04058, -0.01758, 0.00224, 0.01916, -0.01428, 0.01833, 0.00212, 0.04421, -0.08502, 0.00188, 0.11211, -0.03828, 0.06106, 0.03339, 0.01558, 0.11281, 0.01797, -0.0604, 0.0466, 0.05061, 0.06062, 0.0148, -0.05247, 0.05014, -0.06673, 0.00667, -0.1006, -0.15292, 0.08517, 0.0227, -0.16344, -0.12658, -0.03389, 0.0415, 0.04314, 0.04059, 0.29338, 0.06103, 0.09868, -0.158, -0.02698, 0.13607, 0.18051, 0.31427, -0.11063, -0.06219, -0.26872, -0.05987, 0.0964, -0.05682, 0.01883, -0.1142, 0.04519, -0.00523, 0.00879, -0.01061, -0.06506, -0.00929, -0.08548, 0.03245, -0.01641, -0.02854, -0.01467, 0.0002, 0.04815, 0.05999, 0.05946, 0.04492, 0.00296, 0.05625, -0.02904, -0.10569, -0.00639, -0.04582, -0.01205, 0.06098, 0.03978, -0.04172, -0.01762, 0.02069, 0.02131, -0.03777, -0.1268, -0.06506, 0.08241, 0.15167, -0.28526, 0.03315, 0.03626, -0.0453, 0.05128, -0.05341, -0.0844, -0.00066, 0.07348, -0.0061, -0.04885, 0.09427, -0.08667, -0.06275, 0.06892, 0.04037, 0.16486, -0.25668, -0.12333, -0.04046, -0.18015, 0.02833, -0.05147, 0.00678, -0.02711, -0.00636, 0.02232, -0.02177, -0.00788, 0.00656, -0.00997, -0.00049, -0.00682, -0.00101, 8e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0.00226, 0.09252, 0.11863, 0.2076, 0.01749, 0.23241, -0.03695, -0.10468, 0.02023, -0.06292, 0.14479, 0.03187, -0.00498, -0.06724, 0.00817, -0.07297, -0.02699, 0.00795, 0.05422, -0.0315, 0.00114, -0.0468, -0.04321, 0.03198, 0.03889, -0.06598, 0.00644, -0.02935, 0.03113, 0.14678, 0.04395, -0.08303, -0.03853, -0.09111, -0.0748, -0.05638, -0.06366, -0.0431, 0.02634, -0.06314, 0.0932, 0.093, -0.02944, -0.14707, -0.01059, -0.04537, 0.01281, 0.06648, -0.01111, -0.01706, 0.07451, 0.02378, 0.01164, -0.02742, 0.05271, 0.06099, 0.03923, -0.05308, -0.04684, 0.01611, -0.0125, 0.03652, -0.01808, -0.04374, -0.04633, -0.0158, -0.01119, -0.03876, -0.0839, -0.1282, -0.03426, -0.09202, 0.03971, 0.04477, 0.02352, 0.083, 0.00818, 0.03804, 0.02986, -0.0013, 0.01519, 0.00169, -0.00431, -0.00387, -0.04838, 0.00075, -0.0395, 0.14201, 0.00819, -0.10007, 0.04979, 0.03733, -0.10088, -0.09204, -0.04303, -0.00669, -0.03645, 0.03756, 0.10338, -0.11723, 0.00346, 0.03557, 0.02327, 0.10418, -0.02919, -0.2525, -0.04085, -0.07114, 0.03414, -0.23531, -0.03477, 0.19926, -0.22445, -0.24596, -0.20197, -0.27155, 0.28581, -0.08458, 0.11767, 0.04103, -0.0237, 0.13691, -0.0102, -0.00552, -0.04756, -0.00833, 0.00531, 0.00083, -0.01593, 0.00142, -0.00989, -0.04778, 0.00075, -0.00116, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.0373, 0.01136, 0.06714, -0.05363, 0.03771, -0.16369, -0.12576, -0.08302, -0.10569, -0.02657, 0.03429, -0.14098, 0.07217, 0.03633, -0.02685, -0.01078, 0.02011, -0.04267, 0.01191, -0.00499, 0.03969, -0.07733, -0.0491, 0.09156, -0.0054, 0.03593, 0.01702, 0.03139, 0.10044, 0.0163, -0.08791, 0.07471, 0.08523, 0.03899, 0.08952, -0.00931, 0.0771, -0.03066, -0.00517, -0.07248, -0.16983, 0.02831, 0.08101, -0.11976, -0.01038, 0.19758, 0.11755, 0.05315, -0.04471, 0.06175, 0.05588, 0.01248, 0.00233, -0.02775, 0.07271, -0.03551, 0.188, 0.04144, -0.04514, -0.15231, 0.02518, 0.02154, -0.06098, 0.02086, -0.04154, 0.05253, -0.07562, 0.01021, 0.0541, 0.02965, 0.14288, 0.0017, -0.00175, -0.01448, -0.05441, -0.05012, 0.07887, -0.02874, -0.05281, -0.01382, -0.06324, 0.01698, -0.08413, -0.02929, -0.0162, 0.05492, -0.00141, -0.0983, -0.02824, 0.05104, -0.18715, 0.00049, 0.16823, -0.03326, 0.03122, 0.32645, -0.03101, -0.13748, -0.2186, 0.35413, -0.01057, -0.04673, 0.08399, -0.05867, 0.17548, 0.02437, -0.02649, -0.11203, 0.0152, 0.03406, -0.03372, 0.08474, -0.03323, -0.06501, -0.08708, -0.17675, 0.19275, 0.03441, 0.04477, 0.06876, -0.06632, 0.06346, -0.00027, -0.01045, 0.0093, 0.00408, 0.01787, 0.00418, -0.0051, -0.01465, -0.00208, 0.00055, 0.00027, -2e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -0.00197, 0.04174, 0.11247, 0.1103, 0.0348, 0.08123, -0.07329, -0.07161, 0.02924, -0.07603, 0.13185, 0.04999, -0.05101, -0.03113, 0.0165, -0.06393, 0.00274, 0.05395, 0.1038, -0.05798, -0.01066, -0.08354, 0.06494, 0.06373, -0.00756, -0.01592, -0.0797, -0.03884, 0.07377, 0.0349, -0.02509, 0.08282, -0.05851, 0.02633, -0.1307, -0.09052, -0.08772, -0.06654, 0.0759, -0.00325, 0.18011, 0.05422, -0.00874, -0.24245, -0.03284, -0.05842, -0.0033, -0.00324, -0.03125, -0.06323, 0.06541, 0.05435, 0.05097, -0.05077, 0.01987, 0.13285, 0.05908, -0.06444, -0.03698, 0.0186, -0.03762, 0.03763, -0.04316, -0.07493, 0.04607, 0.0283, 0.12467, 0.07887, -0.08706, -0.19935, -0.27399, -0.09463, 0.00124, 0.03489, 0.02844, 0.13598, -0.1143, -0.00987, 0.08485, -0.02134, 0.1226, 0.04815, 0.07902, 0.06062, -0.05833, -0.00528, -0.01243, 0.04381, -0.05379, -0.17588, -0.01783, 0.01699, -0.02979, -0.07596, 0.034, 0.16392, 0.25368, -0.11234, -0.03312, 0.28057, -0.12886, -0.03021, -0.01579, -0.10799, -0.0074, 0.18901, 0.02138, -0.00694, -0.05669, 0.15748, 0.0014, -0.07778, 0.12387, 0.11947, 0.12189, 0.12548, -0.12477, 0.09552, -0.03937, 0.02036, 0.00191, -0.07356, 0.00941, 0.0036, 0.0384, -0.02151, 0.00339, 0.00705, 0.00619, -0.00629, -0.00628, -0.05285, 0.0001, -0.00087, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 +}; + +static const cv::Mat yaw00_eigvecs(154, 154, CV_64FC1, (double *)yaw00_eigvecsdata); + +} // namespace stasm +#endif // STASM_YAW00_SHAPEMODEL_MH diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/classicdesc.h b/3rdparty/stasm4.0.0/stasm/stasm/include/classicdesc.h new file mode 100755 index 0000000..d0335b7 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/classicdesc.h @@ -0,0 +1,66 @@ +// classicdesc.h: model for classic ASM descriptors +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_CLASSICDESC_H +#define STASM_CLASSICDESC_H + +#include "misc.h" +#include "basedesc.h" +#include "stasmhash.h" + +namespace stasm +{ +static const int CLASSIC_MAX_OFFSET = 2; // search +-2 pixels along the whisker +static const int CLASSIC_SEARCH_RESOL = 2; // search resolution, every 2nd pix + +void ClassicDescSearch( // search along whisker for best profile match + double& x, // io: (in: current posn of the point, out: new posn) + double& y, // io: + const Image& img, // in: the image scaled to this pyramid level + const Shape& inshape, // in: current posn of landmarks (for whisker directions) + int ipoint, // in: index of the current landmark + const MAT& meanprof, // in: mean of the training profiles for this point + const MAT& covi); // in: inverse of the covar of the training profiles + +VEC ClassicProf( // used only during training a new model + const Image& img, // in: the image scaled to this pyramid level + const Shape& inshape, // in: current posn of landmarks (for whisker directions) + int ipoint, // in: index of the current landmark + int proflen); // in + +class ClassicDescMod: public BaseDescMod +{ +public: + virtual void DescSearch_(double& x, double& y, // io + const Image& img, const Shape& shape, // in + int, int ipoint, const Hat &hat, StasmHash &hash) const // in + { + (void) hat; + (void) hash; + + ClassicDescSearch(x, y, + img, shape, ipoint, meanprof_, covi_); + } + + ClassicDescMod( // constructor + int profwidth, + const double* const meanprof_data, + const double* const covi_data) + + : meanprof_(ArrayAsMat(1, profwidth, meanprof_data)), + covi_(ArrayAsMat(profwidth, profwidth, covi_data)) + { + } + +private: + const MAT meanprof_; // mean of the training profiles for this point + const MAT covi_; // inverse of the covariance of the training profiles + + DISALLOW_COPY_AND_ASSIGN(ClassicDescMod); + +}; // end class ClassicDescMod + + +} // namespace stasm +#endif // STASM_CLASSICDESC_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/convshape.h b/3rdparty/stasm4.0.0/stasm/stasm/include/convshape.h new file mode 100755 index 0000000..411a377 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/convshape.h @@ -0,0 +1,18 @@ +// convshape.cpp: convert a stasm 77 point shape to other formats +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_CONVSHAPE_H +#define STASM_CONVSHAPE_H + +#include "misc.h" + +namespace stasm +{ +Shape ConvertShape( // return shape with nlandmarks, return no rows if can't + const Shape& shape, // in + int nlandmarks); // in: shape.rows=no change, 17=shape17, anything else return no rows + // if shape.rows=77, treat specially: + // 77=nochange, 76=muct76, 68=xm2vts, 22=ar, 20=bioid, 17=shape17 +} // namespace stasm +#endif // STASM_CONVSHAPE_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/err.h b/3rdparty/stasm4.0.0/stasm/stasm/include/err.h new file mode 100755 index 0000000..13fc703 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/err.h @@ -0,0 +1,17 @@ +// err.h: error handling for Stasm +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_ERR_H +#define STASM_ERR_H + +namespace stasm +{ +void CatchOpenCvErrs(void); +void UncatchOpenCvErrs(void); +void Err(const char* format, ...); +void ClearLastErr(void); +const char* LastErr(void); // return the last error message + +} // namespace stasm +#endif // STASM_ERR_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/eyedet.h b/3rdparty/stasm4.0.0/stasm/stasm/include/eyedet.h new file mode 100755 index 0000000..11c4c1a --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/eyedet.h @@ -0,0 +1,35 @@ +// eyedet.h: interface to OpenCV eye and mouth detectors +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_EYEDET_H +#define STASM_EYEDET_H + +#include "misc.h" +#include "asm.h" +#include "stasmcascadeclassifier.h" + +namespace stasm +{ +bool NeedEyes( // true if we need the eye detectors for the given mods + const vec_Mod& mods); // in: the ASM model(s) + +bool NeedMouth( // true if we need the mouth detector for the given mods + const vec_Mod& mods); // in: the ASM model(s) + +void OpenEyeMouthDetectors( // open eye and mouth detectors, if necessary + bool need_eyes, // in: true if we need the eye detectors + bool need_mouth, // in: true if we need the mouth detector + const char* datadir); // in + +void OpenEyeMouthDetectors( // possibly open OpenCV eye detectors and mouth detector + const vec_Mod& mods, // in: the ASM models (used to see if we need eyes or mouth) + const char* datadir); // in + +void DetectEyesAndMouth( // use OpenCV detectors to find the eyes and mouth + DetPar& detpar, // io: eye and mouth fields updated, other fields untouched + const Image& img, // in: ROI around face (already rotated if necessary) + StasmCascadeClassifier cascade); + +} // namespace stasm +#endif // STASM_EYEDET_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/eyedist.h b/3rdparty/stasm4.0.0/stasm/stasm/include/eyedist.h new file mode 100755 index 0000000..0546563 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/eyedist.h @@ -0,0 +1,19 @@ +// eyedist.h: calculate eye-mouth and inter-eye dist +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_EYEDIST_H +#define STASM_EYEDIST_H + +#include "misc.h" + +namespace stasm +{ +double EyeMouthDist( // eye-mouth distance of a face shape + const Shape& shape); // in + +double InterEyeDist( // inter-pupil distance of a face shape + const Shape& shape); // in: + +} // namespace stasm +#endif // STASM_EYEDIST_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/facedet.h b/3rdparty/stasm4.0.0/stasm/stasm/include/facedet.h new file mode 100755 index 0000000..6c5eea4 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/facedet.h @@ -0,0 +1,53 @@ +// facedet.h: find faces in images (frontal model version) +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_FACEDET_H +#define STASM_FACEDET_H + +#include "misc.h" +#include "print.h" + +namespace stasm +{ +class FaceDet +{ +public: + void OpenFaceDetector_( // called by stasm_init, init face det from XML file + const char* datadir, // in: directory of face detector files + void* detparams); // in: unused (func signature compatibility) + + // Call DetectFaces_ once per image. Then call NextFace_ repeatedly to get + // all the faces in the image, one by one. When there are no more faces in + // the image, NextFace_ will return detpar.x set to INVALID. + // + // Note: This version of NextFace_ always sets detpar.rot to INVALID. + // Thus the calling routine (StartShapeAndRoi1) must estimate the + // rotation from the intereye angle. However, if an alternative + // implementation were to initialize detpar.rot, StartShapeAndRoi1 would + // use it (instead of estimating it from the eye angle). + + void DetectFaces_( // call once per image to find all the faces + const Image& img, // in: the image (grayscale) + const char* imgpath, // in: used only for debugging + bool multiface, // in: if false, want only the best face + int minwidth, // in: min face width as percent of img width + void* user, + cv::CascadeClassifier cascade); + + const DetPar NextFace_(void); // get next face from faces found by DetectFaces_ + + FaceDet() {} // constructor + +private: + vector detpars_; // all the valid faces in the current image + + int iface_; // index of current face for NextFace_ + // indexes into detpars_ + + DISALLOW_COPY_AND_ASSIGN(FaceDet); + +}; // end class FaceDet + +} // namespace stasm +#endif // STASM_FACEDET.H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/faceroi.h b/3rdparty/stasm4.0.0/stasm/stasm/include/faceroi.h new file mode 100755 index 0000000..3b4fb42 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/faceroi.h @@ -0,0 +1,45 @@ +// faceroi.h: face ROI, and translation from image frame to the ROI +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_FACEROI_H +#define STASM_FACEROI_H + +#include "misc.h" + +namespace stasm +{ +// RoiFrac controls the size of the ROI area around the face. So for +// example leftfrac is the distance from the center to the left margin in +// units of the original detector rect width. So ROI_FRAC=.5, say, would +// return the original face detector rectangle. + +static const double ROI_FRAC = 1.0; // ROI is double the face detector width + +Shape ImgShapeToRoiFrame( // return shape in ROI frame + const Shape& shape, // in: shape in image frame + const DetPar& detpar_roi, // in: detpar wrt the ROI + const DetPar& detpar); // in + +Shape RoiShapeToImgFrame( // return shape in image frame + const Shape& shape, // in: shape in roi frame + const Image& face_roi, // in + const DetPar& detpar_roi, // in: detpar wrt the ROI + const DetPar& detpar); // in: detpar wrt the image + +void PossiblySetRotToZero( // avoid rotating the image unnecessarily + double& rot); // io + +void FaceRoiAndDetPar( // extract ROI around the face, rotate if necessary + Image& face_roi, // out + DetPar& detpar_roi, // out: detpar wrt the ROI + const Image& img, // in: original image + const DetPar& detpar, // in: wrt img frame, only x,y,w,h,rot used + bool flip, // in: mirror the ROI + double botfrac = ROI_FRAC, // in: distance from center to bottom marg + double leftfrac = ROI_FRAC, // in: dist from center to left marg + double topfrac = ROI_FRAC, // in + double rightfrac = ROI_FRAC); // in + +} // namespace stasm +#endif // STASM_FACEROI_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat.h b/3rdparty/stasm4.0.0/stasm/stasm/include/hat.h new file mode 100755 index 0000000..0cabb0e --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat.h @@ -0,0 +1,50 @@ +// hat.h: Histogram Array Transform descriptors +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_HAT_H +#define STASM_HAT_H + +#include "misc.h" + +namespace stasm +{ +class Hat +{ +public: + void Init_( // init the HAT internal grad mat and indices + const Image& img, // in: image ROI scaled to the current pyr lev + const int patchwidth); // in: patch will be patchwidth x patchwidth pixs + + VEC Desc_( // return HAT descriptor, Init_ must be called first + const double x, // in: x coord of center of patch (may be off image) + const double y) // in: y coord of center of patch (may be off image) + const; + + Hat() {} // constructor + +private: + // All these private variables are initialized by Hat::Init_. They must + // be initialized if the image changes or if the patch width changes. + // (In a Stasm context, that means they must be initialized once per + // pyramid level. Also, for safe use of OpenMP in SuggestShape_, + // they must not change unless the pyramid level changes.) + + int patchwidth_; // image patch is patchwidth x patchwidth pixels + + MAT magmat_; // grad mag of the current image (face ROI) + MAT orientmat_; // grad orient of the current image (face ROI) + + vec_int row_indices_; // histogram indices: these map a patch row,col + vec_double row_fracs_; // to the corresponding histogram grid row,col + vec_int col_indices_; + vec_double col_fracs_; + + vec_double pixelweights_; // weight pixel by closeness to center of patch + + //DISALLOW_COPY_AND_ASSIGN(Hat); + +}; // end class Hat + +} // namespace stasm +#endif // STASM_HAT_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p16.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p16.mh new file mode 100755 index 0000000..edef39c --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p16.mh @@ -0,0 +1,84 @@ +// hat_yaw00_lev0_p16.mh: + +#ifndef stasm_hat_yaw00_lev0_p16_mh +#define stasm_hat_yaw00_lev0_p16_mh + +#include "hatdesc.h" + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double linmod( + const double* const x, + const double intercept, + const double* const coef, + const int n) +{ +#if 0 // unoptimized + double yhat = intercept; + for (int i = 0; i < n; i++) + yhat += coef[i] * x[i]; +#else // optimized + double yhat = intercept; + const int n4 = n - 4; + int i = 0; + if(n4 > 0) + { + for(; i < n4; i += 4) + yhat += coef[i] * x[i] + + coef[i+1] * x[i+1] + + coef[i+2] * x[i+2] + + coef[i+3] * x[i+3]; + } + for(; i < n; i++) + yhat += coef[i] * x[i]; +#endif + return yhat; +} + +static double hatfit_yaw00_lev0_p16(const double* const d) // d has 160 elements +{ + const double intercept = -0.453369; + const double coef[160] = + { + 0.00372542, 0.0408172, 0.000737811, -0.000469039, 0.0199883, 0.104104, -0.072967, -0.0275536, + 0.0476482, 0.0336855, -0.0625293, 0.0792134, 0.00844284, 0.0468283, 0.0281004, 0.0429594, + 0.0212684, 0.0140295, 0.0240473, -0.0444501, -0.049152, -0.0138905, -0.0490636, 0.0464706, + 0.0380844, 0.0840699, -0.0444403, -0.00255277, 0.0189272, -0.0150143, 0.00990336, 0.140653, + -0.0174406, 0.00474267, 0.0852838, -0.05192, 0.0539234, -0.0022161, -0.081763, 0.0722966, + -0.00548851, -0.0938881, 0.0814419, -0.0662686, -0.034123, -0.0718359, 0.0380273, 0.0507774, + -0.00923894, -0.0135537, -0.0292176, 0.0644432, -0.0330563, -0.0387574, 0.0603047, 0.0415176, + -0.00796904, -0.0389034, 0.0408463, 0.0205151, 0.0021938, -0.0184184, 0.037596, -0.0300464, + -0.0635431, -0.0548118, 0.0293951, -0.0222044, 0.0166339, 0.025922, 0.010845, -0.11305, + 0.0452315, 0.0574284, -0.00512447, 0.0343274, 0.000738636, 0.0617322, -0.00445308, -0.0830076, + -0.0238772, 0.0369547, -0.0520601, 0.00859127, -0.030047, 0.0840427, 0.0609438, -0.0344356, + 0.0696376, -0.0160002, 0.0450477, 0.0209688, 0.013092, 0.0779064, 0.0238193, 0.0204056, + -0.0355255, 0.0530715, 0.0188183, -0.0320216, -0.020793, 0.000797391, -0.00462265, -0.00987595, + 0.0478896, 0.0397222, 0.0361005, 0.0190977, 0.0395541, -0.00440083, -0.0321619, 0.0214029, + -0.114959, -0.0563459, 0.0130055, -0.0112418, 0.0355367, -0.0397584, 0.135856, 0.145345, + -0.0185943, -0.0725598, 0.0794152, 0.015131, 0.0323186, 0.0151301, -0.0107669, 0.0614654, + 0.0280355, -0.0114101, -0.00805179, -0.00991979, 0.0205382, -0.056034, -0.0430887, -0.0824119, + -0.0260952, -0.0149136, -0.0502353, -0.00269792, 0.014834, 0.0114513, 0.0327027, 0.0182124, + -0.0395778, 0.00702357, -0.0422405, 0.0382446, -0.0188065, 0.0273028, -0.055736, 0.0248173, + 0.0623721, 0.0660628, 0.0572871, -0.0611501, -0.0541477, 0.0390754, -0.0566607, -0.00659149 + }; + return linmod(d, intercept, coef, NELEMS(coef)); +} + +static const HatDescMod hat_yaw00_lev0_p16(hatfit_yaw00_lev0_p16); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p16_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p17.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p17.mh new file mode 100755 index 0000000..0f71e4b --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p17.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p17.mh: + +#ifndef stasm_hat_yaw00_lev0_p17_mh +#define stasm_hat_yaw00_lev0_p17_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p17(const double* const d) // d has 160 elements +{ + const double intercept = -0.218036; + const double coef[160] = + { + 0.0683249, -0.0203007, 0.0437479, -0.028014, 0.0396198, 0.07016, -0.0468982, -0.0259897, + -0.0622189, -0.0324751, -0.061037, 0.0104632, 0.0236188, 0.0370506, 0.00178595, -0.069793, + -0.0262223, -0.0176854, -0.0360734, 0.00220166, 0.00282252, 0.0230145, -0.0555133, -0.0038649, + 0.0499822, 0.00946226, -0.00238031, -0.0487058, 0.105226, 0.0349072, -0.0302182, -0.0275999, + -0.0118505, 0.0442187, 0.00298641, 0.0273259, -0.0301957, 0.0258648, -0.0449226, 0.00234286, + -0.0232926, 0.0514649, 0.0400287, 0.0257169, -0.0117925, -0.0964899, -0.0453559, -0.00469365, + 0.0470646, 0.0145707, 0.042109, 0.0278525, -0.0539993, -0.0522365, 0.0524767, 0.0456086, + 0.0164593, 0.00268727, 0.0112625, -0.00506042, -0.011258, -0.0240507, 0.0436929, 0.0601421, + -0.039606, -0.0346194, 0.00646708, 0.0229158, -0.0318843, -0.0404174, 0.0817063, -0.010425, + 0.0745994, -0.032075, 0.0289402, -0.0337813, -0.071726, -0.00583817, 0.0326242, -0.0501133, + -0.0131024, 0.0061786, 0.00968947, -0.0255766, 0.00189238, 0.0985391, 0.0785375, -0.00249855, + 0.0398805, -0.0438232, -0.0327165, -0.0576398, 0.00629697, 0.129408, -0.0423841, -0.000809985, + -0.0326506, 0.0193708, 0.0359597, 0.00228456, 0.0168887, 0.0272311, -0.0330574, 0.0310251, + 0.0296366, 0.0245575, -0.0220943, -0.00788083, 0.0502952, 0.0487056, 0.00866824, 0.0643618, + -0.0827267, -0.00464663, 0.00968494, -0.00527354, -0.0241566, 0.0223436, -0.0177934, 0.0882853, + -0.00681881, 0.0363687, -0.0555716, -0.00305075, -0.0901926, 0.00361665, -0.00991696, 0.0680083, + 0.0124782, 0.0261691, 0.0408441, 0.032473, 0.0658858, -0.021588, -0.00784608, 0.0391355, + 0.0140649, -0.0152375, 0.00161421, -0.0106747, 0.023684, -0.0630555, -0.0165086, -0.0059009, + 0.0356548, -0.0079108, 0.0113296, 0.0240113, 0.0150257, -0.023987, 0.0218905, -0.0916508, + -0.035231, 0.00245323, 0.0197736, 0.00212028, 0.0302151, 0.0156463, -0.0163954, -0.0216011 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p17(hatfit_yaw00_lev0_p17); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p17_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p18.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p18.mh new file mode 100755 index 0000000..fe1c662 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p18.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p18.mh: + +#ifndef stasm_hat_yaw00_lev0_p18_mh +#define stasm_hat_yaw00_lev0_p18_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p18(const double* const d) // d has 160 elements +{ + const double intercept = -0.346979; + const double coef[160] = + { + 0.0279532, -0.00609398, -0.012312, -0.00494513, 0.0378928, -0.00655823, 0.0462203, -0.0347771, + 0.0015831, 0.00535257, 0.0719783, -0.0375053, 0.00281042, -0.00157322, -0.0205927, 0.00629932, + 0.0519524, 0.0258327, -0.0472468, -0.0891186, 0.00603156, 0.0143309, -0.0234561, 0.0408229, + 0.0407427, -0.0314612, -0.0106707, -0.0412636, -0.0483126, 0.0524159, 0.0622703, -0.0065942, + 0.0135314, 0.0206874, 0.0250781, 0.0601108, -0.0175944, -0.0143739, -0.0189961, 0.0333546, + -0.0134624, -0.0120986, 0.0562662, 0.0118215, 0.0290007, 0.0311979, -0.0552341, 0.0451829, + -0.00138903, 0.0264013, -0.0932642, 0.0397548, 0.0655217, -0.0989104, 0.0446394, -0.0702257, + -0.0818234, -0.0323151, -0.0265924, 0.00359564, 0.135021, 0.0855873, -0.0117275, 0.0896797, + -0.0246237, 0.0604119, 0.0185726, 0.043299, -0.000698394, 0.0199644, 0.0876209, 0.0203925, + -0.0521624, 0.0272489, -0.0134243, -0.0419231, 0.0316835, -0.0520323, -0.037041, -0.0567536, + -0.0104151, 0.0225628, -0.00257791, 0.0205395, -0.0635785, -0.0707263, 0.0282968, 0.00510694, + 0.055994, -0.0133663, -0.0496851, 0.00689356, -0.013058, 0.0345494, 0.0336366, 0.0365501, + 0.0559076, 0.116704, 0.059131, 0.0857358, -0.0259943, -0.0947445, -0.00130131, -0.00968489, + 0.0170973, 0.00882214, -0.019839, -0.0121337, -0.0706856, 0.0208661, -0.000796458, -0.0332526, + 0.048445, 0.0245023, 0.0330112, 0.0555513, 0.0117985, -0.00190937, -0.0147076, 0.0266679, + 0.0114275, 0.00474427, -0.00714072, -0.0207511, 0.0183546, -0.00457808, 0.0389253, -0.0324772, + 0.0391394, -0.0915276, -0.00201296, 0.0936573, -0.0356517, 0.0278646, -0.0167872, -0.0570991, + -0.0312248, -0.0472778, -0.0131381, -0.04727, -0.00623392, 0.0609824, 0.033506, -0.00103341, + -0.0107256, -0.00662675, 0.0404214, -0.00269178, 0.0703617, -0.0677402, -0.0146087, 0.028654, + 0.0266917, -0.00757196, -0.0186592, -0.0290862, -0.0407427, 0.0995922, -0.0159115, 0.0419094 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p18(hatfit_yaw00_lev0_p18); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p18_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p19.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p19.mh new file mode 100755 index 0000000..8e3ad42 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p19.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p19.mh: + +#ifndef stasm_hat_yaw00_lev0_p19_mh +#define stasm_hat_yaw00_lev0_p19_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p19(const double* const d) // d has 160 elements +{ + const double intercept = -0.208389; + const double coef[160] = + { + -0.00183766, 0.0107511, -0.0411311, -0.069132, -0.0247103, 0.11925, 0.0537726, 0.0710876, + -0.000622952, 0.0154106, -0.0752117, -0.0342188, -0.0298825, -0.0378929, -0.10657, -0.0431747, + 0.0124295, 0.0146126, 0.00375325, 0.00842015, 0.0563219, -0.0183824, 0.00888441, -0.0291838, + 0.072871, -0.0170712, 0.00995424, 0.0253749, 0.0228285, 0.0543796, 0.0056957, 0.0112109, + 0.0225286, 0.0380625, -0.10313, 0.00479916, 0.0316051, 0.0421267, 0.058587, 0.0372101, + -0.0191445, -0.0203896, 0.0154654, 0.0471993, 0.00517509, -0.00268149, 0.0529576, -0.0143109, + 0.00752285, -0.00704421, 0.107428, 0.043463, 0.102785, -0.00722921, -0.00216775, 0.0641935, + -0.0579854, -0.00697146, -0.0111541, 0.0420899, 0.0749652, -0.0134849, 0.0375334, 0.0206827, + -0.0560198, 0.022214, 0.0558911, 0.0142093, -0.0555831, -0.0274554, -0.0626592, -0.0368935, + -0.0665352, -0.0714393, 0.0294576, -0.0460599, 0.0160245, -0.00671722, 0.0451949, -0.0347614, + 0.000967578, 0.0374, -0.0206688, 0.0101224, -0.0918418, -0.0136, -0.0529591, 0.0166251, + -0.00747454, 0.0565966, 0.0483812, -0.0384652, -0.0183018, -0.00405736, -0.0287864, -0.0136777, + 0.0289734, 0.0477801, -0.0329041, -0.00266396, -0.0532572, 0.011926, 0.05369, -0.0539863, + 0.0649387, 0.0397214, 0.0397163, 0.0420561, 0.0629613, 0.0361158, -0.00679125, 0.0371072, + -0.0412087, -0.0227813, -0.0844829, 0.0291781, -0.0579978, -0.00143226, 0.0394032, 0.0107211, + -0.0273922, -0.0176209, -0.038932, 0.0271722, 0.0018003, 0.0251344, -0.0398722, 0.0207583, + 0.0152829, -0.000512818, 0.00218805, 0.00722604, -0.0124995, 0.0153049, -0.00655756, -0.00220635, + 0.055623, -0.0407522, -0.0198396, -0.00981851, -0.00818717, 0.00632632, 0.0182355, 0.0171908, + -0.0211489, 0.0371114, 0.0201203, -0.0139588, 0.0256957, -0.0265248, -0.00914639, 0.048062, + 0.0512009, -0.0320212, -0.00366201, -0.0570103, 0.0256294, -0.0194269, 0.0519483, -0.0666447 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p19(hatfit_yaw00_lev0_p19); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p19_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p20.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p20.mh new file mode 100755 index 0000000..3bc8e61 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p20.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p20.mh: + +#ifndef stasm_hat_yaw00_lev0_p20_mh +#define stasm_hat_yaw00_lev0_p20_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p20(const double* const d) // d has 160 elements +{ + const double intercept = -0.346412; + const double coef[160] = + { + -0.0286608, 0.0951036, -0.0327747, -0.0271802, 0.102846, 0.039376, 0.0353439, -0.0426993, + 0.0391377, -0.0328533, -0.0410657, 0.0300066, 0.0247419, 0.0569735, 0.0533487, 0.0452141, + -0.0231817, 0.0502113, 0.0299987, -0.00641472, -0.0140579, 0.00708176, -0.0387248, -0.0147432, + -0.0177277, 0.038825, -0.111956, 0.0589898, 0.0588439, 0.0406529, 0.0310129, 0.0208808, + -0.0560495, -0.0709817, -0.0205542, 0.0534646, -0.0107228, -0.0398226, 0.00469786, 0.071798, + 0.0515842, -0.0627954, 0.108556, 0.103465, -0.0148225, -0.0351119, 0.0162062, 0.0511674, + 0.0118936, 0.023535, -0.0777513, -0.0295178, -0.00825485, -0.0535634, -0.0185874, -0.0287938, + 0.0506453, 0.0605264, -0.031215, 0.00321995, -0.0919029, -0.0122494, 0.0571264, 0.0581768, + 0.0280823, 0.0299377, 0.0286797, -0.0551839, -0.0552998, -0.0570511, -0.062882, -0.00878156, + 0.024091, 0.155557, 0.130379, -0.00454334, 0.0509226, 0.0608662, 0.00100265, -0.0100532, + -0.0259997, 0.0104091, -0.0116434, -0.0956454, -0.0569437, 0.043192, -0.00818788, -0.0371528, + -0.0949212, -0.0514707, 0.012307, -0.0121952, 0.05877, -0.0115497, 0.0333092, 0.0435442, + 0.00254519, -0.0426229, -0.0223494, 0.0642868, 0.042703, 0.070624, 0.0307296, -0.0207046, + -0.0695558, 0.00618685, 0.00445891, 0.0730341, 0.0549234, -0.0169157, 0.0221027, -0.0296842, + -0.0515455, -0.107785, 0.107671, -0.0431493, -0.0508154, -0.0902502, -0.0481087, 0.0340644, + 0.0554758, -0.0339273, -0.0365555, 0.0281108, 0.0620176, -0.0459229, 0.031228, -0.0152928, + 0.0430206, 0.00508139, 0.0286267, -0.0327993, -0.0639462, 0.0235737, -0.0127588, -0.0567247, + -0.0682092, 0.0397133, -0.0240483, 0.00414567, 0.0158482, 0.0947935, 0.000938787, 0.00180105, + 0.0683938, -0.0324453, 0.0695978, 0.0287013, -0.0173739, -0.0416173, 0.0970442, -0.0297747, + -0.0231911, 0.179173, -0.178513, 0.12144, 0.0264204, -0.0207417, -0.078799, 0.0657955 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p20(hatfit_yaw00_lev0_p20); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p20_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p21.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p21.mh new file mode 100755 index 0000000..c5bfddc --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p21.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p21.mh: + +#ifndef stasm_hat_yaw00_lev0_p21_mh +#define stasm_hat_yaw00_lev0_p21_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p21(const double* const d) // d has 160 elements +{ + const double intercept = -0.34824; + const double coef[160] = + { + -0.0195837, -0.0594427, 0.0457297, -0.0413416, 0.101627, 0.0217043, -0.029393, 0.00546025, + -0.0540456, -0.0397525, -0.01759, 0.0399782, -0.0627363, -0.00551, 0.0579196, -0.0233754, + -0.0618483, -0.0533419, 0.0931547, -0.0217088, -0.00445169, 0.0941263, -0.0172428, 0.0791302, + -0.0432993, 0.0106155, -0.0346444, 0.0223171, -0.0984627, 0.00918708, -0.0503243, 0.00080812, + 0.0299071, 0.00854695, -8.61801e-05, -0.034618, 0.0524551, 0.0592769, 0.0332315, -0.0175941, + 0.0704596, 0.0118745, -0.070569, -0.0608147, 0.0118855, -0.0524116, 0.00211147, 0.124916, + 0.12147, 0.140212, 0.0475706, 0.0479433, 0.0163665, 0.0381531, -0.0668795, 0.023937, + 0.0540888, 0.00455889, -0.0194539, -0.00652279, 0.0051461, 0.0645376, -0.015857, 0.0389891, + 0.0516941, -0.0488854, 0.0378676, 0.0101942, 0.0745091, -0.054975, 0.0337688, 0.0644061, + 0.0451348, 0.0417211, -0.0399779, 0.0579709, -0.067052, -0.0125574, -0.0226409, 0.00421459, + -0.0995039, 0.017169, -0.0155152, -0.00951508, -0.0337954, -0.00524042, 0.115079, 0.00692938, + -0.129372, -0.012522, 0.0807145, 0.0604363, 0.00431702, -0.0916494, -0.0258139, -0.079287, + -0.0536237, 0.0852263, 0.0361908, 0.0372607, -0.00782468, -0.0495553, -0.0255199, -0.0968385, + -0.0536882, -0.0107084, -0.173729, -0.00902773, 0.0532978, 0.0271752, 0.0834321, -0.0317612, + -0.0898749, -0.0115822, 0.0109603, 0.0122497, -0.0838939, 0.00349276, 0.0359618, 0.00210141, + 0.0164206, -0.00459711, -0.0565242, 0.0478835, 0.022732, 0.0276373, -0.0111648, 0.022311, + 0.0084677, -0.0174473, -0.0012797, -0.041379, 0.0185713, -0.0206573, -0.0175031, -0.0437209, + 0.0616481, 0.0803273, 0.0246928, -0.00771595, -0.0120789, 0.0229895, 0.00328345, 0.086165, + 0.0591702, -0.00227974, -0.0174336, -0.027642, -0.00513335, -0.031001, 0.0534461, 0.100458, + 0.0877585, 0.00683638, 0.0161599, 0.0050948, -0.00925309, 0.00351326, -0.0695949, 0.0209707 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p21(hatfit_yaw00_lev0_p21); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p21_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p22.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p22.mh new file mode 100755 index 0000000..8e3eb64 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p22.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p22.mh: + +#ifndef stasm_hat_yaw00_lev0_p22_mh +#define stasm_hat_yaw00_lev0_p22_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p22(const double* const d) // d has 160 elements +{ + const double intercept = -0.340623; + const double coef[160] = + { + 0.077366, -0.0179264, 0.0221829, 0.00795535, 0.0345754, 0.0202614, 0.00176053, 0.0884274, + -0.102187, 0.00262938, -0.0444367, 0.0313732, -0.00135842, -0.0432315, -0.0364142, -0.0230328, + 0.00162904, -0.0075949, 0.0197524, -0.0679611, -0.0785347, 0.0847102, -0.0231708, 0.0662738, + -0.0178015, 0.0290901, 0.0148009, 0.00471732, -0.0579362, 0.018517, 0.0640303, 0.0346783, + 0.0490363, 0.00071375, 0.0232078, -0.076379, -0.0428451, -0.0259892, -0.0229649, 0.00462463, + -0.0633472, -0.00580997, 0.0242909, 0.056505, 0.0794106, -0.0435104, -0.00520999, -0.0784562, + 0.04692, 0.00275828, 0.0129567, -0.0845916, 0.0223295, 0.0776586, 0.00153567, -0.0198989, + 0.021552, 0.0318699, -0.0453227, 0.0258261, 0.0751738, 0.0360315, 0.0598211, 0.0891124, + 0.022844, 0.0258083, 0.0695306, 0.0783963, 0.1172, 0.0623024, -0.0838097, 0.0312752, + -0.00789437, -0.0489868, -0.0635873, 0.0519728, 0.0607013, 0.0984664, -0.0198633, -0.057964, + -0.0577819, -0.0191734, 0.0375784, -0.00779198, -0.149572, -0.0123264, 0.00389833, -0.0147415, + 0.0849692, -0.0544888, -0.155994, -0.00718992, 0.00879691, -0.0125904, 0.0995839, 0.103228, + -0.0280681, 0.0575173, 0.052586, 0.0534184, -0.0749574, -0.0494579, -0.0313825, -0.0894231, + -0.0325988, 0.066594, 0.0642883, 0.0182996, -0.0952706, -0.140608, -0.0557586, -0.0693731, + -0.00956899, -0.0320961, 0.0208987, -0.0123999, -0.0594117, -0.0166503, 0.174191, -0.0272156, + 0.0448788, -0.0226324, -0.0409136, 0.0389657, 0.0945082, -0.0128085, -0.0492372, 0.00180416, + -0.067069, -0.00987033, -0.00412323, -0.0029367, -0.00692239, 0.113989, 0.0468229, -0.0678667, + 0.029338, -0.0176171, 0.0169183, 0.0849822, 0.0779419, 0.0754246, 0.0375554, 0.00663478, + 0.0696616, -0.0225491, -0.0146464, -0.0150308, -0.0153187, -0.0498013, -0.00913153, -0.0185004, + -0.0202772, 0.0384967, -0.0704312, 0.0196789, -0.00501694, 0.0645764, -0.0611823, 0.0045614 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p22(hatfit_yaw00_lev0_p22); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p22_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p23.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p23.mh new file mode 100755 index 0000000..5d27d2a --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p23.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p23.mh: + +#ifndef stasm_hat_yaw00_lev0_p23_mh +#define stasm_hat_yaw00_lev0_p23_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p23(const double* const d) // d has 160 elements +{ + const double intercept = -0.461965; + const double coef[160] = + { + 0.0523032, -0.0518732, 0.0517111, 0.0438062, -0.0492018, 0.0540363, -0.036406, -0.042006, + 0.0482903, -0.0110723, -0.0854577, 0.110137, 0.0538408, 0.104875, -0.0112382, -0.00981319, + -0.0338787, -0.021962, 0.00473665, 0.0136433, 0.0188633, 0.0574213, -0.00446236, -0.00347816, + 0.0397319, 0.0115102, -0.0654115, 0.00327298, 0.0164438, 0.0379518, 0.0107427, 0.0427834, + 0.0693981, 0.0219157, 0.0814064, 0.0190653, -0.019162, -0.0253361, -0.0917516, 0.0730196, + 0.0327019, 0.0591464, 0.0156071, -5.73272e-05, 0.0343546, -0.0674331, -0.0304423, 0.0630831, + -0.014306, -0.0365847, 0.0570239, -0.0392864, -0.0332792, -0.0943494, 0.00424624, 0.0329673, + -0.0230502, 0.0445252, 0.0181068, -0.0151588, -0.0122217, -0.0428739, -0.015673, -0.0510802, + -0.0684689, -0.0242118, 0.00765104, -0.0158768, 0.061253, 0.106371, 0.131653, 0.00416125, + -0.0598883, -0.0489942, 0.0206371, -0.0381438, -0.0167632, 0.0395252, 0.037255, -0.048284, + -0.0277097, -0.0167262, -0.0223447, 0.0325511, -0.0854205, 0.111921, 0.165679, -0.034467, + 0.0554764, 0.0135595, 0.0224363, 0.00479271, 0.0146494, 0.0101634, -0.0558644, -0.0328749, + 0.0442127, -0.00273552, 0.0165471, -0.00360412, -0.018433, -0.0416512, 0.0287861, 0.00318617, + 0.0314232, 0.0429421, 0.0519481, 0.0191596, 0.0546515, -0.0237693, 0.0484497, 0.0714868, + 0.00971903, 0.00104851, -0.0357625, 0.00674301, -0.0185765, -0.0387338, 0.0530144, 0.0569744, + 0.0064157, -0.0353754, 0.070479, 0.00567205, 0.018648, 0.062755, -0.0856883, 0.0708912, + -0.00950189, 0.011787, -0.022207, 0.0423289, -0.04681, -0.0152456, -0.009021, 0.00556968, + -0.0318435, 0.0123402, -0.0612146, 0.0175134, 0.00205179, 0.00468405, 0.000830396, 0.0130946, + -0.00908286, -0.0301551, -0.0419029, -0.036379, 0.00736859, -0.00606914, -0.0373683, -0.0303132, + 0.0139267, 0.0335559, 0.0879257, -0.0344147, -0.0520043, 0.0371138, -0.0385617, -0.00274444 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p23(hatfit_yaw00_lev0_p23); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p23_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p24.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p24.mh new file mode 100755 index 0000000..e963cea --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p24.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p24.mh: + +#ifndef stasm_hat_yaw00_lev0_p24_mh +#define stasm_hat_yaw00_lev0_p24_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p24(const double* const d) // d has 160 elements +{ + const double intercept = -0.223203; + const double coef[160] = + { + 0.00759021, -0.0055056, -0.0073713, 0.0308273, 0.0282134, -0.0260361, -0.0277129, 0.00573773, + 0.0817834, 0.0219989, -0.00406632, 0.0079682, -0.00533502, 0.0398129, -0.0125726, 0.067068, + 0.0430261, -0.000803057, -0.0327945, -0.0401474, -0.0305578, -0.049006, -0.0455141, 0.0511743, + 0.110885, 0.015022, -0.000883857, -0.0546561, -0.0288469, -0.0699016, -0.041525, 0.0407154, + -0.0271235, 0.0281858, -0.0102839, 0.00891484, 0.0130595, -0.0404419, -0.0477642, 0.0340345, + -0.0703068, -0.00218726, 0.0721903, -0.0116724, 0.0232438, -0.0327372, -0.00850997, -0.0188064, + -0.0278776, -0.0724395, 0.0112654, -0.0449049, 0.0268846, -0.0316681, 0.107946, -0.0437976, + -0.0353805, -0.0417873, -0.0413422, 0.0472778, -0.00234817, 0.0908644, 0.0775997, -0.0671011, + -0.11615, -0.000416996, 0.0555368, 0.00165362, 0.0280228, 0.0478133, 0.0735583, -0.0172228, + 0.0748491, -0.00716301, 0.0843619, 0.0730381, -0.010274, 0.0231678, -0.0825943, -0.111871, + 0.0532919, -0.0341804, 0.00389104, 0.00279808, -0.0362955, 0.0272775, 0.0229373, 0.0285774, + 0.0365465, 0.0339026, 0.00135799, -0.025427, -0.0162267, 0.0816967, 0.0150375, 0.0566388, + 0.0573805, -0.0114436, 0.0750253, 0.0053048, 0.00919129, 0.0111901, -0.0795198, 0.0262549, + -0.00984538, -0.0491219, -0.0391553, -0.0428717, 0.0213788, 0.0396437, -0.0485408, 0.0972563, + -0.0234263, 0.0033701, -0.0535601, 0.0187169, -0.0381269, -0.030668, 0.0900217, 0.110461, + 0.0321928, 0.0192795, 0.000646099, 0.0260936, -0.0167218, -0.0160385, 0.0145091, 0.0285376, + 0.0043183, 0.019777, -0.00737701, 0.0133084, -0.00860853, -0.0372363, -0.00639275, -0.0545576, + -0.0190646, -0.0113897, 0.0350557, -0.0242949, 0.0131131, -0.00398441, -0.0495583, -0.0134147, + 0.0309709, 0.0794429, -0.0103008, -0.00174767, 0.0358666, 0.00396927, 0.0125943, -0.0393979, + -0.0359715, -0.0571847, -0.00181492, 0.0563965, -0.00415715, 0.0621519, 0.0164125, 0.0054211 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p24(hatfit_yaw00_lev0_p24); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p24_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p25.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p25.mh new file mode 100755 index 0000000..2e06bdb --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p25.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p25.mh: + +#ifndef stasm_hat_yaw00_lev0_p25_mh +#define stasm_hat_yaw00_lev0_p25_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p25(const double* const d) // d has 160 elements +{ + const double intercept = -0.280421; + const double coef[160] = + { + -0.0400535, 0.0414172, -0.0241318, -0.0221016, -0.0163008, 0.0337893, -0.0186697, 0.0139877, + 0.00792495, -0.0650722, 0.0227684, 0.0483292, 0.0115117, -0.0121308, 0.0522657, 0.0072798, + -0.022599, -0.0733589, -0.0308909, -0.011057, 0.0383328, 0.136396, -0.0186217, 0.0545581, + 0.0555103, -0.034618, 0.04978, 0.0161402, -0.0315483, -0.00648121, -0.0228139, -0.0235081, + -0.00131138, 0.00807124, 0.0124839, -0.00602452, 0.0248727, -0.0346749, 0.045509, 0.016746, + 0.019974, -0.0492493, -0.0070519, 0.00304546, -0.0263074, -0.00301399, -0.0025644, -0.0575298, + 0.0247922, 0.0432854, 0.0345857, 0.0908686, -0.0574232, 0.00459185, 0.0501338, 0.0261785, + 0.168224, 0.0369258, -0.0494622, -0.00965397, -0.0712378, 0.070011, 0.0265275, 0.0331183, + 0.0244553, -0.00493331, -0.0676968, 0.031072, -0.0122692, -0.0423819, -0.0156902, -0.0334871, + -0.00155561, 0.041822, 0.00367972, -0.0159047, 0.0354222, 0.00763884, -0.0411545, 0.011563, + 0.033271, 0.0480907, 0.0102995, 0.0443927, 0.0240106, -0.00505156, -0.0354106, -0.0181828, + -0.105491, -0.0360062, -0.0485821, -0.00924608, 0.0389187, 0.00524319, 0.0470903, -0.00738215, + -0.0549213, 0.0902653, 0.099428, 0.075157, 0.0702933, -0.00971282, -0.0614313, -0.0112334, + -0.0261455, 0.0159345, -0.0863346, -0.0304713, 0.0530032, 0.00489781, 0.0793146, -0.0354918, + -0.0246215, -0.0212455, 0.0114848, 0.036059, -0.0678203, -0.0339122, 0.00533783, -0.0502067, + -0.0160177, -0.0405702, 0.00298591, -0.00448153, 0.0453489, 0.0517875, -0.0109091, 0.115212, + 0.0633411, 0.000774394, 0.0593845, -0.0609595, 0.00421489, -0.0136462, -0.0159747, -0.0693348, + -0.028278, 0.026844, -0.0370133, -0.00667643, -0.0355803, 0.0144561, 0.0162701, 0.0441711, + -0.0210169, 0.0118692, -0.00526951, -0.0665957, 0.0448446, -0.0244224, 0.0147369, 0.0711315, + 0.0432563, -0.0190787, 0.020547, -0.000324577, 0.0311602, -0.0167044, -0.00268172, -0.0444903 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p25(hatfit_yaw00_lev0_p25); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p25_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p26.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p26.mh new file mode 100755 index 0000000..d67798e --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p26.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p26.mh: + +#ifndef stasm_hat_yaw00_lev0_p26_mh +#define stasm_hat_yaw00_lev0_p26_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p26(const double* const d) // d has 160 elements +{ + const double intercept = -0.255743; + const double coef[160] = + { + 0.00692737, 0.0194334, -0.113714, 0.0623229, 0.0714794, -0.00731698, 0.125544, 0.0384238, + 0.0818136, 0.0307813, 0.0356599, -0.0246677, 0.0299467, 0.0388785, -0.0624853, 0.0229773, + -0.0463268, 0.0221149, -0.0255056, 0.00177395, 0.0385248, -0.0569312, 0.0209152, 0.0170254, + -0.00345174, -0.0501504, -0.0445291, 0.0239741, 0.0083556, -0.0139281, -0.0833677, -0.0126101, + 0.0224749, -0.029708, -0.0834227, 0.0442514, -0.0540719, 0.0521406, 0.0311537, 0.115903, + 0.02201, -0.0388192, 0.0160826, -0.047066, -0.0809173, -0.0440246, 0.023151, -0.018014, + 0.00476726, 0.00487958, 0.00409056, 0.0276067, -0.096975, -0.0161165, 0.00478189, -0.015588, + 0.0679909, 0.0760158, 0.0215658, 0.00751135, -0.122779, -0.0179322, 0.0327519, -0.0333638, + 0.0946621, 0.0738181, 0.0954494, 0.00240209, 0.057808, 0.0226989, -0.0185668, -0.0741197, + -0.0719186, 0.0473879, 0.0143023, -0.00413896, -0.0507206, 0.0621448, 0.0824867, -0.00205496, + -0.0333383, 0.0513143, -0.0456868, -0.0137666, -0.0486989, 0.0140241, 0.0662594, -0.00522068, + 0.028143, 0.0154175, 0.0227702, 0.0557067, 0.123815, 0.0298751, -0.0118384, 0.0186131, + -0.0712891, -0.0269031, -0.0459169, 0.045181, 0.0368457, 0.0379993, 0.00212305, 0.0453545, + 0.00467711, -0.0350907, 0.0737455, 0.0592875, -0.0168856, -0.056106, -0.0311644, -0.0199809, + -0.0650892, -0.0354531, -0.0410075, 0.0412784, 0.0481653, 0.0165638, -0.0483525, 0.0321069, + 0.00812633, -0.0542742, -0.0390645, -0.00167167, 0.0148346, -0.0286401, 0.0606945, -0.0224465, + 0.0330649, -0.0160857, 0.0464291, -0.00303156, -0.0143526, 0.0352431, -0.0748096, -0.025033, + -0.0225852, 0.0119234, -0.017597, -0.022176, 0.02036, 0.00632215, 0.068705, 0.024569, + -0.00117043, 0.0166959, 0.0220684, -0.026049, 0.0131724, -0.00232683, -0.0176743, 0.00842005, + 0.013519, 0.0259861, -0.0479116, -0.0197429, -0.021785, 0.0131843, -0.0254269, 0.0350713 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p26(hatfit_yaw00_lev0_p26); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p26_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p27.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p27.mh new file mode 100755 index 0000000..c14733d --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p27.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p27.mh: + +#ifndef stasm_hat_yaw00_lev0_p27_mh +#define stasm_hat_yaw00_lev0_p27_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p27(const double* const d) // d has 160 elements +{ + const double intercept = -0.463915; + const double coef[160] = + { + 0.0479375, -0.00319255, -0.0105924, -0.0756268, -0.0683371, 0.057243, 0.0568696, -0.064015, + 0.00387484, 0.0805585, -0.083481, 0.0617519, -0.0449808, -0.0214523, 0.0412005, 0.0239077, + 0.0708083, 0.0169029, -0.0110843, -0.0260801, 0.0339025, -0.0180517, -0.0363968, 0.0479424, + 0.0397678, 0.0344227, 0.0478986, -0.0148963, 0.0665821, -0.00602551, 0.0965074, 0.0200938, + 0.0827836, -0.0187764, -0.0686998, 0.0796047, -0.0121056, -0.049961, -0.0249006, 0.0523253, + 0.00216455, -0.0113274, 0.0634767, 0.128889, 0.0345853, 0.0428524, 0.00892465, 0.095211, + -0.00682563, -0.0429812, 0.0400419, 0.0557009, 0.00783205, 0.00444436, -0.0552572, -0.101339, + -0.0627508, -0.0568393, 0.00185677, 0.0480606, 0.0310887, 0.0706333, 0.0544758, -0.0602711, + -0.0873755, 0.023527, -0.0815973, 0.0345373, -0.0102817, 0.00507487, -0.053758, -0.0190882, + -0.0149365, 0.0397156, 0.138915, -0.0755282, 0.0396669, 0.0916266, 0.0208462, -0.0352263, + -0.0531042, -0.030225, 0.122263, -0.0769584, -0.0659675, 0.00616166, -0.00051444, -0.0606639, + 0.0670286, 0.0479938, -0.0187469, -0.0266876, -0.0288548, -0.0262532, -0.00848751, 0.0336486, + 0.0185754, 0.145478, -0.00103702, 0.0238192, -0.0614049, -0.0351352, 0.00145927, 0.0499618, + 0.0133165, -0.0764638, 0.0684049, -0.0877338, 0.00479691, 0.00326349, 0.052983, 0.0412907, + 0.0170189, -0.0578109, -0.0874416, 0.0568815, -0.0736229, -0.0291404, -0.00333928, 0.0241065, + -0.0649401, 0.130563, -0.17803, 0.05174, 0.0249613, 0.0593809, -0.106167, -0.0445619, + 0.020445, -0.00494927, 0.0362654, 0.0508476, 0.0160082, 0.0184673, 0.10164, -0.00951897, + 0.00794775, -0.0289175, 0.040868, -0.0470455, 0.0615087, -0.0590574, -0.0177495, 0.0604152, + 0.00361195, 0.0291409, -0.0118572, 0.0431013, 0.0029963, -0.0334427, 0.0520479, 0.0119778, + 0.0444027, 0.00467433, -0.000246422, -0.0209563, 0.0285789, 0.0182698, -0.00113396, -0.0492845 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p27(hatfit_yaw00_lev0_p27); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p27_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p28.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p28.mh new file mode 100755 index 0000000..66c51e8 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p28.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p28.mh: + +#ifndef stasm_hat_yaw00_lev0_p28_mh +#define stasm_hat_yaw00_lev0_p28_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p28(const double* const d) // d has 160 elements +{ + const double intercept = -0.506874; + const double coef[160] = + { + -0.0784613, 0.0121844, 0.00489221, 0.0395063, -0.0689672, 0.0752561, -0.0684628, -0.107224, + -0.0378404, -0.0188187, 0.0324368, -0.0166145, -0.069967, 0.0922398, -0.0966497, -0.0571723, + -0.00510059, -0.0172265, 0.0217243, -0.0487023, -0.027193, 0.0648868, 0.0346994, 0.00259343, + -0.0106185, 0.0097881, 0.015559, 0.0198533, -0.0253231, 0.032561, -0.0655483, 0.0443912, + 0.0367692, -0.0539447, -0.0147958, 0.0110131, 0.0265013, -0.0363564, -0.00160317, 0.084128, + 0.0616485, -0.0250155, -0.0407165, 0.0293272, -0.0347668, -0.10248, 0.0141058, 0.0823233, + 0.0635444, 0.0557117, 0.0207586, -0.0293784, 0.131631, -0.083441, 0.186915, 0.112217, + 0.104805, -0.0197265, 0.0439378, -0.011575, 0.00842989, -0.0584026, -0.0270734, 0.00479067, + 0.0570783, 0.0386787, 0.0211264, -0.067437, 0.0519423, 0.0132203, 0.0916372, -0.0218509, + 0.0505351, 0.0241844, 0.00904032, -0.116443, -0.039052, 0.0128594, -0.0699651, -0.0752647, + -0.0169601, 0.00585748, 0.0312534, -0.105584, -0.0108465, 0.130622, 0.105934, -0.0250018, + -0.0869647, 0.0408854, 0.0528488, 0.0140731, -0.0288625, 0.0121546, -0.0570119, 0.0187228, + -0.0703364, -0.0378628, -0.00574874, -0.033603, 0.0239437, -0.0279945, -0.0440856, -0.0296373, + -0.0691181, 0.000218943, 0.0733263, 0.117589, 0.0124093, 0.0551839, -0.0645384, 0.00381715, + -0.0531849, -0.0940519, -0.00290378, 0.0673449, 0.0529989, 0.0382406, 0.144874, 0.0581044, + -0.127729, 0.0672169, -0.0250649, 0.151382, 0.00148457, 0.0684749, -0.137647, -0.0229951, + 0.0917255, -0.136388, 0.0238971, 0.0351211, 0.059189, 0.013338, 0.166916, -0.103794, + 0.128341, -0.0906327, 0.0286383, -0.0602337, 0.00497176, -0.037041, 0.0618543, 0.0603425, + 0.0501083, -0.0272609, 0.0630509, -0.081441, -0.0222425, -0.0802907, -0.106979, -0.0589488, + -0.0345976, 0.137928, -0.0525908, -0.00430701, -0.0581273, 0.0318156, 0.101198, 0.0646515 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p28(hatfit_yaw00_lev0_p28); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p28_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p29.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p29.mh new file mode 100755 index 0000000..16460bb --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p29.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p29.mh: + +#ifndef stasm_hat_yaw00_lev0_p29_mh +#define stasm_hat_yaw00_lev0_p29_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p29(const double* const d) // d has 160 elements +{ + const double intercept = -0.48562; + const double coef[160] = + { + -0.00512158, 0.0586746, -0.0798093, 0.0180009, -0.0280963, 0.116762, -0.0189166, -0.0481293, + -0.0479871, 0.0112611, 0.0859658, 0.0221476, -0.0269003, 0.0576303, -0.0401595, 0.0470311, + -0.00250212, -0.0777604, -0.0399438, -0.0882451, -0.00553859, -0.00287363, 0.0171962, 0.0554015, + 0.0321909, 0.0066967, 0.0459881, 0.0175653, -0.0640833, -0.0459287, -0.0642564, 0.0555527, + -0.0775696, 0.0428062, 0.0120147, 0.0190259, -0.0498569, -0.102132, -0.116272, 0.0976456, + 0.00906292, -0.185513, 0.0638659, 0.0303079, 0.127411, -0.143208, -0.0743038, 0.0323266, + 0.0288056, -0.0206706, -0.00574707, 0.0564532, -0.000503975, 0.0125794, 0.0908472, 0.0331637, + 0.104306, -0.0109944, -0.0214472, -0.0206695, 0.0837613, 0.0374264, 0.0359718, -0.113151, + 0.0553828, 0.0106066, 0.0562636, 0.0613964, 0.0658492, 0.0957213, 0.125038, -0.103323, + -0.0418038, -0.055549, -0.0164352, -0.0441974, 0.0560263, 0.0611424, 0.0423445, -0.0384684, + -0.00502453, 0.144959, 0.000351633, -0.116383, -0.0419107, 0.058302, 0.0633299, 0.0926945, + 0.0443739, 0.0575564, 0.0941396, -0.0240567, -0.0363212, 0.00444002, -0.0345955, -0.00689339, + -0.0665449, -0.0573972, -0.0133429, -0.025529, -0.0605529, 0.0012417, -0.031918, 0.00740497, + -0.0640573, -0.0155675, 0.0532986, 0.0356676, -0.0643784, -0.0439708, -0.0276125, -0.0372154, + 0.0359257, -0.0506532, 0.00448912, 0.0380476, -0.0116334, 0.0274073, 0.0843044, 0.120536, + -0.0820354, -0.0527027, -0.0712199, 0.16005, -0.0312234, 0.0236113, 0.0842056, 0.0403934, + 0.0375245, -0.00135152, 0.0748432, -0.0409444, 0.0816635, -0.0354786, -0.0469224, -0.13919, + 0.134422, -0.093118, 0.0372906, -0.0373891, 0.0217897, 0.0116476, 0.0548633, -0.00559319, + 0.0727434, 0.0312082, 0.0135856, -0.15973, -0.00897797, -0.0242633, 0.082357, 0.0150905, + -0.0299137, 0.109233, -0.0348521, 0.103843, -0.0969788, -0.0672276, -0.0715875, 0.101708 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p29(hatfit_yaw00_lev0_p29); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p29_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p30.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p30.mh new file mode 100755 index 0000000..d311e9b --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p30.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p30.mh: + +#ifndef stasm_hat_yaw00_lev0_p30_mh +#define stasm_hat_yaw00_lev0_p30_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p30(const double* const d) // d has 160 elements +{ + const double intercept = -0.307384; + const double coef[160] = + { + -0.0976915, -0.0157513, 0.0542291, -0.0275726, -0.0106452, -0.0433831, 0.0663134, 0.00960375, + 0.0678916, -0.0147168, -0.0624697, -0.0487353, -0.0296701, 0.0741982, 0.0102149, 0.0473877, + 0.00224397, 0.0390406, 0.0723501, 0.0334601, -0.0215762, -0.0234384, -0.0840566, -0.0478522, + 0.0190583, 0.00199417, -0.070565, -0.0287624, -0.0383371, 0.0307747, 0.0716929, 0.0257987, + 0.0223133, -0.000109589, 0.0138733, -0.00511998, 0.0319277, 0.0323793, -0.074089, 0.0544371, + 0.0825056, 0.0555438, -0.00505813, 0.0296174, -0.0669804, -0.00644871, -0.0249807, -0.0584444, + -0.0932023, -0.0178599, -0.0157678, 0.164961, 0.170676, -0.0162209, -0.0138016, 0.0167344, + -0.00686432, 0.0238387, -0.0423569, -0.058961, 0.0198049, 0.0441957, 0.0403968, 0.0928207, + -0.0016404, -0.0763977, -0.0105645, 0.000383256, -0.0100389, -0.0499875, 0.0501346, 0.0641137, + -0.0380489, 0.000522693, 0.065543, 0.0135046, -0.00255715, 0.0253511, -0.0634106, -0.100232, + -0.052102, 0.0790686, -0.0192697, -0.0670417, 0.0123938, -0.01176, 0.108684, -0.00515379, + 0.0175374, -0.049222, 0.0998104, -0.00692515, -0.0347418, -0.0105605, -0.0665368, 0.0601234, + 0.0133305, 0.0175988, 0.0336347, -0.028041, -0.0233755, 0.0621518, 0.000346735, -0.059242, + 0.124917, 0.103455, 0.138688, 0.0536303, 0.0327499, 0.031424, 0.0395041, 0.0209048, + 0.0351397, 0.00189515, -0.0520196, 0.012187, 0.02107, -0.0487657, 0.0293231, -0.0243275, + 0.00723984, 0.00655859, -0.00276809, 0.0305861, -0.00417185, 0.0375758, 0.0356237, 0.0295638, + 0.019522, -0.0444034, -0.000982982, 0.00359501, -0.0394528, -0.0106282, -0.0416023, -0.0892154, + -0.0476342, -0.0379193, -0.0678138, -0.0268524, -0.0121183, -0.0165821, -0.030781, 0.107548, + -0.0880742, -0.00713778, -0.0481077, -0.0408392, 0.0209118, 0.03522, 0.0262854, 0.0552789, + -0.106939, 0.0767143, -0.0487099, 0.00395575, -0.0177101, 0.0222295, -0.0722513, -0.0186226 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p30(hatfit_yaw00_lev0_p30); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p30_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p31.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p31.mh new file mode 100755 index 0000000..3862162 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p31.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p31.mh: + +#ifndef stasm_hat_yaw00_lev0_p31_mh +#define stasm_hat_yaw00_lev0_p31_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p31(const double* const d) // d has 160 elements +{ + const double intercept = -0.149653; + const double coef[160] = + { + 0.102792, -0.00789202, 0.0598279, 0.0383932, 0.0314396, 0.0354225, -0.137671, -0.0226661, + 0.0365126, -0.00786857, 0.0354617, -0.00611145, -0.00306365, 0.064468, 0.0597814, -0.0701481, + -0.0301681, 0.00693912, -0.0514889, 0.00274277, 0.0249402, 0.0113394, 0.0457705, -0.102015, + -0.025926, 0.0353191, -0.0138407, 0.00618827, 0.00649906, -0.0438448, 0.124918, 0.15508, + -0.0417982, -0.0421211, 0.00988954, -0.00689037, -0.0428412, 0.0550954, -0.149107, 0.0209882, + -0.0257726, -0.0637484, -0.00533911, -0.0627934, -0.0983968, -0.0630774, 0.117817, -0.0324073, + -0.0170204, 0.0162665, 0.00691796, 0.00749674, 0.00446238, -0.123501, 0.0375666, 0.0270828, + -0.0215574, -0.00569241, 0.0160521, -0.046765, -0.017903, 0.00972946, 0.0154102, 0.149299, + 0.0326936, -0.0630218, -0.0276987, -0.0452982, 0.032711, 0.0991898, -0.0314943, -0.0155756, + -0.0230624, 0.0624657, 0.0320531, 0.027173, -0.0123942, -0.0614351, -0.0313367, -0.0203405, + 0.0194565, 0.00454225, -0.0454752, 0.0204334, 0.107248, 0.0678514, -0.0702336, 0.0731753, + 0.0912235, -0.00324371, 0.0373891, -0.0321271, -0.0408679, 0.110325, -0.0185016, -0.00133724, + -0.0198913, 0.0159996, 0.0282584, -0.00418692, -0.0746972, -0.0115976, -0.0744241, -0.0964105, + -0.0560263, -0.0196536, 0.0668696, 0.231179, 0.0606925, -0.0166885, -0.0478474, 0.0258359, + 0.00595591, -0.0800362, -0.0944175, -0.145004, 0.00150118, 0.0929244, 0.0665964, 0.00132968, + 0.00751783, -0.0668613, 0.0573544, 0.0113606, -0.0271173, -0.0344456, 0.0535079, -0.0549112, + -0.0506515, 0.0959064, -0.00804938, -0.0111781, 0.0300032, -0.00559824, 0.0070531, 0.00563192, + 0.0230664, 0.0734045, -0.0273737, -0.0310137, -0.0158516, -0.0151536, 0.103164, -0.0171585, + 0.00812267, -0.0433804, 0.00373189, -0.0478893, 0.0121958, -0.057604, -0.0326567, -0.094755, + 0.00210226, -0.00575499, 0.0848674, -0.00954786, 0.0399587, 0.0370163, -0.0332987, 0.162617 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p31(hatfit_yaw00_lev0_p31); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p31_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p32.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p32.mh new file mode 100755 index 0000000..f0267da --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p32.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p32.mh: + +#ifndef stasm_hat_yaw00_lev0_p32_mh +#define stasm_hat_yaw00_lev0_p32_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p32(const double* const d) // d has 160 elements +{ + const double intercept = -0.316197; + const double coef[160] = + { + -0.0553975, -0.0326231, 0.0140244, 0.0141833, 0.0542154, -0.00586302, -0.0695314, -0.0634706, + 0.0302362, -0.0131185, -0.0135585, 0.00285338, 0.0229264, 0.0221361, 0.109436, 0.0257932, + -0.0186387, -0.0466385, 0.0343189, -0.0271132, 0.0171234, -0.02604, -0.101529, -0.0572375, + 0.0702282, 0.064434, 0.00577874, -0.0298826, 0.00248206, 0.0346005, 0.0835609, -0.0624642, + -0.0259741, -0.0299555, -0.00310985, -0.00402477, 0.0373708, 0.0449609, 0.0137161, 0.0854487, + -0.00306658, 0.0416231, 0.0045002, -0.05457, -0.0251188, -0.0692618, 0.0147755, 0.124021, + 0.0232371, 0.0217226, 0.0514906, 0.0491317, -0.0162214, -0.00294008, -0.0791864, 0.0404659, + -0.0269759, -0.00465718, -0.0599927, -0.0541856, -0.0497073, 0.0892615, 0.061549, -0.0370637, + -0.0743379, -0.0102547, 0.00372573, 0.035167, 0.0212416, -0.0196718, 0.0713135, 0.0811415, + 0.00818322, -0.10258, -0.0238922, 0.0742356, 0.00109783, 0.0330836, -0.0228264, -0.0412167, + -0.0826987, -0.0116883, 0.0371461, 0.0373019, -0.0460285, 0.0745708, 0.123836, 0.0013614, + 0.053146, 0.0317554, 0.0669758, -0.0435545, 0.0311821, -0.043015, -0.0195011, -0.122941, + 0.0892976, -0.0969214, -0.0189759, 0.00807919, 0.0233355, -0.0372141, 0.0139117, 0.0219588, + 0.0549437, -0.00348644, -0.0127576, -0.0449112, -0.0499871, -0.00569642, 0.00211788, -0.0666201, + -0.0891527, 0.0910754, 0.107107, 0.00926749, -0.0648211, -0.0619068, 0.0141276, 0.189321, + 0.00974862, 0.0971979, -0.0539598, 0.120189, 0.112664, -0.148255, -0.0893447, 0.00793033, + -0.0382829, -0.104793, -0.00629037, -0.0668676, -0.0453596, 0.11252, -0.0678271, 0.0204766, + -0.0146969, 0.05302, 0.0309586, 0.0178427, 0.034914, 0.0407754, 0.0986471, 0.0311328, + 0.00863516, 0.00982672, -0.0138149, -0.090387, 0.0100125, 0.0535338, 0.0212296, 0.122067, + 0.105075, 0.0512898, -0.0406747, 0.073454, -0.0944377, 0.0343392, -0.0528356, -0.276148 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p32(hatfit_yaw00_lev0_p32); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p32_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p33.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p33.mh new file mode 100755 index 0000000..9ba0094 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p33.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p33.mh: + +#ifndef stasm_hat_yaw00_lev0_p33_mh +#define stasm_hat_yaw00_lev0_p33_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p33(const double* const d) // d has 160 elements +{ + const double intercept = 0.0987009; + const double coef[160] = + { + -0.0349938, -0.0726993, 0.00430352, -0.018835, 0.00862682, -0.0186267, -0.084952, 0.0101559, + -0.0558756, 0.0166949, -0.00014456, -0.012426, -0.0166169, 0.0839871, 0.113426, 0.0441275, + 0.0253636, -0.0303579, 0.01306, -0.0683307, -0.0027652, -0.0999608, -0.00183832, -0.0346063, + -0.00773266, 0.0612238, 0.062272, 0.0726653, 0.0820535, -0.037873, -0.0258476, -0.00541454, + 0.155962, 0.00800801, -0.019387, -0.0329701, 0.00694451, 0.0503662, 0.00499894, 0.0146567, + 0.0309123, 0.0956013, -0.0475971, 0.0462764, -0.0581348, -0.0399035, 0.034484, -0.0640663, + 0.0320945, -0.0742514, -0.0224246, 0.0107777, -0.00125174, -0.00299325, -0.0220781, 0.0271539, + -0.125384, 0.0245321, -0.0295677, -0.0251354, 0.0247743, 0.0735112, 0.00307819, 0.134836, + 0.0528494, -0.028394, 0.0657703, 0.00195505, -0.0635555, 0.000164117, -0.0507556, -0.0923626, + -0.112354, -0.0893438, -0.023866, -0.0498498, -0.105725, -0.0590232, 0.150473, 0.00609421, + -0.00914028, -0.108223, -0.00870758, -0.127048, 0.0558024, 0.0672957, 0.121867, 0.0377956, + -0.00706981, 0.140737, 0.0786787, -0.044068, -0.0202695, -0.0105375, -0.0573831, 0.00348953, + 0.0525494, -0.0689881, -0.0486301, -0.00355304, -0.046227, -0.03198, 0.00381899, -0.0391048, + 0.0171082, 0.083586, 0.0225981, -0.0212721, 0.0495224, 0.0298259, -0.106468, 0.00165893, + 0.125742, -0.0174689, 0.0245751, 0.00450798, 0.014657, 0.086278, -0.0625576, -0.0359416, + 0.0965469, -0.0282645, 0.13594, 0.0282853, -0.0077748, 0.102333, -0.107924, -0.0181288, + -0.0210137, -0.00825588, -0.145298, -0.00338699, -0.0753779, -0.0804827, 0.00278271, 0.0447177, + -0.039915, 0.0356498, -0.0452307, 0.158011, 0.110962, -0.0473837, 0.090604, -0.06284, + -0.0301958, -0.105687, 0.0573676, -0.021037, -0.000382299, -0.000412782, -0.0151293, 0.00442089, + -0.0849335, 0.0498234, 0.0468375, -0.0852527, 0.0406751, -0.0667538, 0.0757357, 0.0156054 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p33(hatfit_yaw00_lev0_p33); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p33_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p34.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p34.mh new file mode 100755 index 0000000..32d9ea7 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p34.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p34.mh: + +#ifndef stasm_hat_yaw00_lev0_p34_mh +#define stasm_hat_yaw00_lev0_p34_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p34(const double* const d) // d has 160 elements +{ + const double intercept = 0.103899; + const double coef[160] = + { + 0.0116532, -0.0960441, -0.0731859, -0.0580997, -0.0718075, -0.0497457, 0.0296645, 0.0704266, + 0.055171, 0.090107, 0.091435, -0.0248551, -0.0306247, 0.0322747, 0.00993825, -0.0205045, + -0.039048, 0.00227338, -0.0394511, 0.0620608, -0.0490692, -0.0930054, -0.0734326, 0.024631, + 0.0243695, -0.0417843, -0.013439, -0.0517189, 0.00157675, 0.0455944, -0.0346441, 0.0285537, + -0.0525393, -0.0636621, 0.0474901, -0.0660078, -0.0547137, 0.000957947, 0.027339, 0.043659, + -0.0412331, 0.0544558, -0.0138967, -0.0219317, 0.0529582, 0.0914145, -0.0474106, -0.0364707, + 0.035702, -0.0868278, 0.0431895, 0.100693, 0.128837, 0.0498026, 0.00668135, -0.0479242, + 0.0559766, -0.0267265, -0.00823433, -0.0727571, 0.029276, 0.0775935, 0.113228, -0.0642839, + -0.00823594, 0.146986, -0.0384164, 0.0418531, -0.0764214, -0.0394064, -0.0433749, -0.0243147, + 0.0636892, -0.0382199, -0.0740321, 0.0357386, 0.0272187, 0.0101528, -0.0325056, -0.111363, + 0.0496952, -0.0847683, 0.00116613, 0.0363979, -0.0112087, -0.0940083, -0.0548512, 0.131099, + 0.012491, 0.0714083, 0.0502695, -0.00608685, 0.0945865, -0.0208773, 0.0388364, 0.0258849, + 0.00333449, -0.0386422, 0.213543, -0.0235397, -0.0417724, -0.0412771, -0.102747, 0.0463958, + -0.027136, -0.0984879, -0.0415551, -0.0302189, 0.0406024, 0.00469946, -0.0202009, 0.120658, + -0.039418, -0.0694798, -0.014969, 0.0832812, 0.0655985, -0.0599477, 0.119247, 0.0083502, + -0.065653, 0.048549, 0.0154887, -0.0313582, -0.0521992, 0.0328655, 0.04705, -0.0688214, + -0.0618626, -0.0165657, -0.0609692, 0.0133931, -0.00907179, 0.0390636, 0.0220942, -0.00449588, + 0.0387907, 0.0635731, -0.11444, 0.00553919, -0.0394504, 0.01926, -0.0141318, -0.0146186, + -0.00956546, 0.0980052, 0.0796294, 0.0171925, -0.0455367, 0.000389098, -0.0105671, -0.07556, + 0.0171995, 0.0119002, -0.088144, 0.0262509, -0.110645, 0.0379231, 0.0189027, 0.0442737 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p34(hatfit_yaw00_lev0_p34); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p34_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p35.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p35.mh new file mode 100755 index 0000000..cda3afa --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p35.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p35.mh: + +#ifndef stasm_hat_yaw00_lev0_p35_mh +#define stasm_hat_yaw00_lev0_p35_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p35(const double* const d) // d has 160 elements +{ + const double intercept = 0.0911783; + const double coef[160] = + { + 0.072946, -0.0803196, -0.148736, -0.0919549, -0.0579766, 0.00977487, 0.128006, -0.108242, + -0.003049, 0.119124, 0.0806486, -0.0526401, -0.0874254, -0.0147282, -0.0236752, 0.0179507, + -0.0108248, -0.0549988, -0.00562408, -0.111443, -0.0406327, -0.0100502, -0.0262271, -0.0250988, + 0.0459581, 0.0743667, 0.0228281, -0.055606, 0.014854, 0.0539807, 0.0120234, 0.00406083, + 0.143164, 0.0292026, 0.0319131, 0.0756062, -0.00377357, -0.0066216, -0.0193189, -0.0420019, + 0.0320485, -0.0183536, 0.217555, 0.0330694, 0.0797881, 0.0869132, -0.0779956, 0.0267643, + 0.00351436, -0.0663817, -0.12945, 0.0296081, -0.0684649, -0.0435509, -0.0236667, 0.121083, + -0.00338945, -0.0361458, -0.110001, 0.160606, 0.128875, -0.0937141, 0.128652, -0.0303316, + -0.0262289, -0.074895, 0.0158825, -0.0526749, 0.0348863, 0.0116732, -0.111386, -0.00203911, + -0.0856487, 0.0203703, 0.116734, -0.0773655, -0.0270685, -0.0410227, -0.01313, -0.0520797, + -0.026407, 0.0607511, -0.164786, -0.0474516, -0.0437693, -0.0550207, 0.0423482, 0.0196394, + -0.0261854, 0.067582, 0.0726053, -0.0691834, -0.0269777, 0.0659595, -0.0236981, -0.0402841, + -0.0174893, 0.0751519, 0.02007, 0.0410119, -0.0789935, 0.0217221, -0.0132749, 0.0613622, + 0.00312103, -0.0134453, -0.0384284, -0.000348083, -0.00745864, 0.022218, 0.0772291, 0.0318349, + 0.0256692, 0.0775988, 0.214678, 0.0361494, 0.0725331, -0.0518311, -0.0696995, 0.0626753, + 0.012046, -0.092102, -0.00926082, 0.0680354, 0.0184702, 0.0352264, -0.0156098, -0.0166752, + 0.0248438, -0.0881514, -0.0663464, 0.0526814, -0.038702, -0.035639, 0.032505, -0.0104396, + -0.0230753, -0.0268185, -0.00123079, 0.0100087, 0.0429343, -0.0477408, -0.0288445, -0.0101994, + 0.0172355, -0.049626, 0.00173479, -0.0324835, 0.0249573, -0.00325783, 0.0214775, -0.0985561, + -0.0513064, 0.0252211, -0.0357383, 0.00138656, -0.0330023, 0.00106741, 0.0637259, -0.0861695 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p35(hatfit_yaw00_lev0_p35); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p35_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p36.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p36.mh new file mode 100755 index 0000000..cba5363 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p36.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p36.mh: + +#ifndef stasm_hat_yaw00_lev0_p36_mh +#define stasm_hat_yaw00_lev0_p36_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p36(const double* const d) // d has 160 elements +{ + const double intercept = 0.280546; + const double coef[160] = + { + -0.0581745, 0.0699183, -0.0333035, -0.0210688, 0.0271952, -0.0631361, 0.0684442, -0.104763, + 0.0180111, -0.00807323, -0.113466, -0.0939689, -0.053943, 0.0802201, -0.0195094, 0.0271342, + 0.113279, 0.108664, 0.0248165, 0.077442, 0.0283378, 0.0104888, -0.0197281, 0.0149863, + 0.0508221, -0.0349772, -0.0114309, -0.057592, -0.0477465, -0.00128831, -0.0331741, 0.024733, + 0.00713591, 0.0565007, -0.0789623, 0.123772, -0.104138, -0.0224268, 0.0130236, -0.0781584, + -0.0139592, -0.0280563, -0.0419102, 0.079595, 0.061647, -0.0488712, 0.089435, 0.114871, + 0.0577733, -0.14974, -0.0089122, 0.0274392, 0.0630212, 0.025585, 0.00524827, 0.0258316, + -0.0808737, -0.0974968, 0.149485, -0.0909861, -0.0252672, -0.0798785, -0.0850874, -0.0834924, + -0.0835056, 0.109213, 0.0228007, -0.0291643, 0.0572602, 0.0596024, -0.0271664, -0.019972, + 0.0640991, -0.00990889, 0.0592807, -0.0798839, -0.00273697, 0.074781, 0.0957268, 0.0125306, + -0.0054178, 0.00268026, -0.0101321, -0.0231462, -0.0388675, 0.0435692, -0.068056, -0.0959819, + -0.0788979, 0.0694287, -0.00537744, 0.0143399, 0.0086474, -0.0149666, 0.0685543, 0.0343267, + 0.00488427, 0.0948243, -0.0426739, 0.0562995, 0.0160068, 0.0617151, -0.0190014, 0.0210443, + 0.00831013, 0.0142092, 0.0664962, 0.00335949, 0.0195147, -0.0331472, -0.00268034, 0.0283125, + -0.0890688, -0.109309, -0.107191, -0.0130691, -0.0542881, -0.0745105, -0.00737389, 0.0515692, + 0.00930899, -0.0353333, 0.0496578, 0.0588347, -0.0267559, -0.0498763, 0.0141803, 0.0617549, + 0.0787918, -0.0859495, -0.0585285, -0.0632163, 0.0168112, -0.00393692, 0.0485385, -0.0636872, + -0.028588, -0.0942548, 0.0469378, -0.0932128, -0.026104, 0.0109808, 0.00255327, 0.0376435, + 0.0388294, 0.052282, 0.030413, 0.0221093, -0.034825, -0.0207677, 0.0201572, -0.0692499, + 0.000311311, -0.0380567, -0.00900435, -0.0257094, -0.0287797, 0.0309502, -0.054992, -0.116031 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p36(hatfit_yaw00_lev0_p36); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p36_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p37.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p37.mh new file mode 100755 index 0000000..059d97a --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p37.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p37.mh: + +#ifndef stasm_hat_yaw00_lev0_p37_mh +#define stasm_hat_yaw00_lev0_p37_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p37(const double* const d) // d has 160 elements +{ + const double intercept = -0.303677; + const double coef[160] = + { + 0.0706291, 0.0256233, -0.021169, 0.0726549, 0.106903, 0.016, 0.0457468, 0.00109793, + 0.0799033, -0.0305675, 0.0143763, -0.0350326, -0.0243856, 0.0192013, -0.00232405, 0.0487732, + -0.0230588, -0.0103424, 0.0721184, 0.0142125, -0.0769642, -0.0556642, -0.0421801, -0.00265729, + -0.030098, -0.0360621, 0.0251856, 0.141043, 0.0616018, -0.0332981, -0.00115691, -0.0336463, + -0.0376205, -0.0673052, -0.156891, -0.0652591, -0.0424114, -0.0041078, 0.0594929, 0.0495411, + -0.0607347, -0.114512, 0.0617291, -0.0287998, -0.0330698, -0.0261143, -0.0328967, -0.00900466, + -0.0115063, 0.071502, -0.0411456, -0.020872, -0.000536687, 0.067583, -0.0224365, -0.0326662, + 0.0729091, 0.0762454, -0.00446716, -0.0806294, -0.0592757, 0.0137622, 0.0902155, -0.0570413, + -0.0299335, -0.0264325, 0.00554022, 0.0203571, 0.0441139, -0.00377323, -0.0481923, 0.00883599, + 0.0138013, 0.105794, 0.149712, -0.0315718, 0.137982, 0.102671, -0.0437983, 0.0969226, + 0.0719147, 0.0865947, 0.107822, 0.0292804, 0.0342975, 0.020403, -0.0399132, 0.00472514, + -0.0241746, 0.00350706, -0.0368602, -0.0546159, 0.0343461, 0.0101666, 0.0651253, 0.0921604, + -0.0985254, 0.0263634, 0.0426699, 0.0344139, 0.0308005, -0.0379941, -0.0207972, 0.161392, + 0.0601695, -0.06631, 0.0616976, 0.0310606, -0.109, -0.0233544, -0.0519515, -0.132664, + -0.00408487, -0.0954923, -0.0729799, 0.0274431, -0.17811, -0.0587163, 0.0794439, 0.032856, + -0.00988991, -0.052296, -0.0403133, -0.0194977, -0.0612137, -0.00780234, 0.058056, -0.0277586, + 0.0389498, -0.0182139, -0.0312061, -0.0340493, 0.0265404, -0.0145565, 0.0514806, -0.102267, + 0.052377, 0.0136297, 0.0738003, 0.0553161, -0.0029244, 0.0202582, 0.00782223, -0.0944213, + -0.032578, 0.0135417, -0.0696944, -0.0957596, 0.0217285, -0.0375797, 0.000618574, 0.0527561, + -0.0209759, 0.0870326, 0.0509161, 0.00125393, 0.106862, 0.0609506, -0.108618, 0.00250289 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p37(hatfit_yaw00_lev0_p37); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p37_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p38.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p38.mh new file mode 100755 index 0000000..3dae6f9 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p38.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p38.mh: + +#ifndef stasm_hat_yaw00_lev0_p38_mh +#define stasm_hat_yaw00_lev0_p38_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p38(const double* const d) // d has 160 elements +{ + const double intercept = -0.068544; + const double coef[160] = + { + -0.0536626, -0.013359, -0.0294917, 0.0395418, 0.00602065, 0.0581479, -0.100305, 0.0984087, + -0.0265183, 0.0847183, 0.0881656, 0.0169484, -0.00537723, 0.00269831, -0.00777248, -0.0278024, + -0.114074, -0.0948015, -0.0947185, -0.0769229, -0.0876845, 0.0235384, 0.0826941, -0.0131893, + -0.0575983, 0.0354715, 0.00118615, 0.0387025, -0.067056, 0.0148072, 0.0394679, 0.00413559, + 0.00476013, -0.0143279, -0.0250807, 0.0560243, 0.0589762, 0.0124739, -0.077785, 0.0520474, + -0.000390957, -0.0558784, 0.00362459, -0.0645851, -0.0297658, -0.026952, 0.0783003, -0.0223294, + 7.13877e-05, 0.0394748, 0.069973, -0.0165605, 0.0168488, -0.0808365, -0.0571607, -0.0853212, + 0.158733, -0.0365206, -0.0414263, 0.037078, 0.0662872, 0.0932588, 0.0497674, 0.102722, + 0.0121497, -0.0443202, 0.0220478, -0.0286955, 0.00694251, -0.0239921, -0.0127487, -0.0313543, + -0.0408829, -0.0172101, 0.119929, -0.0229096, -0.0304701, -0.0691108, 0.00443885, 0.0468623, + -0.00797044, 0.0440466, -0.010895, 0.197432, 0.18775, -0.088284, 0.0324301, 0.0141221, + 0.0125759, -0.156198, -0.0999336, -0.143878, -0.129746, 0.126574, -0.06568, 0.020802, + -0.0779806, 0.124472, 0.172654, 0.0831697, 0.0414342, -0.0773946, 0.0238996, -0.0308337, + -0.0564015, -0.0310999, -0.0600586, -0.13068, -0.0243602, 0.122957, -0.0284857, 0.0385191, + 0.17181, 0.139347, -0.0926458, 0.0322527, -0.0163722, -0.0514824, 0.0795052, -0.159504, + -0.0368738, 0.0621942, -0.0230232, 0.00236451, -0.123108, -0.0157973, 0.0517587, -0.0372987, + 0.0357527, -0.00284768, -0.0118862, 0.0333667, 0.082229, 0.0399555, 0.0370592, 0.105621, + -0.0253431, -0.0930053, 0.128704, -0.114259, -0.0809802, -0.0904584, -0.108152, -0.0809041, + -0.00628502, 0.0643499, -0.0200468, -0.0217784, 0.11022, 0.078414, 0.0540143, 0.0464796, + -0.141757, -0.0644505, 0.0300048, 0.0217521, -0.0439924, 0.0209827, -0.0362896, 0.124412 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p38(hatfit_yaw00_lev0_p38); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p38_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p39.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p39.mh new file mode 100755 index 0000000..f69aac3 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p39.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p39.mh: + +#ifndef stasm_hat_yaw00_lev0_p39_mh +#define stasm_hat_yaw00_lev0_p39_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p39(const double* const d) // d has 160 elements +{ + const double intercept = -0.151495; + const double coef[160] = + { + 0.05233, 0.0326952, -0.030743, -0.0747819, 0.0186847, 0.045901, -0.0789242, -0.0147117, + -0.0799741, 0.0480072, 0.0166566, 0.00759646, -0.0267397, -0.0114817, 0.0226446, 0.0172932, + -0.159158, -0.0423043, -0.0662936, -0.125164, -0.0486524, 0.0103393, 0.0633117, 0.0150984, + -0.0217734, 0.0789994, 0.0400544, 0.0244158, 0.019321, 0.000839682, 0.0356539, -0.00869088, + 0.0235972, -0.0057533, -0.0292413, 0.0438017, -0.0295794, 0.0307274, -0.0967119, 0.0430093, + -0.0942798, -0.00805416, 0.0489834, 0.00625914, -0.0404481, -0.0232292, 0.0633833, 0.0290491, + 0.0810178, 0.0250059, 0.113535, 0.00817501, 0.0507761, -0.031991, -0.0264698, -0.0835676, + 0.139131, -0.0566477, -0.0738287, 0.0639994, 0.0623956, 0.0696207, 0.0624551, 0.133946, + 0.00899642, -0.113214, 0.0366509, 0.0112528, -0.0664127, -0.0287526, -0.0855645, -0.0795175, + -0.0549311, 0.000138963, 0.0520412, -0.0511284, 0.0460914, -0.0293583, 0.0711697, 0.0547108, + 0.00131661, 0.00448629, -0.097527, 0.119325, 0.232548, -0.0784401, 0.0602338, -0.0436834, + -0.0230952, -0.112253, -0.0273693, -0.0489677, -0.112829, 0.0183623, -0.0492548, 0.069834, + 0.00247715, 0.153261, 0.18243, 0.0437835, 0.0141501, -0.0394721, 0.0169508, -0.0864296, + -0.0700037, -0.0984214, -0.100169, -0.126076, -0.0459887, 0.091595, -0.022361, 0.0849226, + 0.0986229, 0.18109, -0.0560676, 0.0833901, -0.00862341, 0.00326809, 0.0467629, -0.138509, + -0.0433134, 0.0601509, -0.0520382, -0.0151971, -0.153161, 0.078533, -0.0247407, -0.0060332, + 0.0549943, -0.0336008, 0.00376496, 0.0504749, 0.00647682, 0.0487571, 0.0748477, 0.0666459, + 0.00843305, -0.153977, 0.125587, -0.0821822, -0.0665281, -0.158249, -0.0777738, -0.0526751, + 0.0473934, 0.0394597, 0.0161365, 0.0142061, 0.0911971, 0.084828, -0.00496388, 0.00194326, + -0.0880339, -0.0143288, -0.00077513, 0.0103907, -0.0271255, -0.0129896, 0.0493004, 0.0699623 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p39(hatfit_yaw00_lev0_p39); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p39_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p40.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p40.mh new file mode 100755 index 0000000..22a28ce --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p40.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p40.mh: + +#ifndef stasm_hat_yaw00_lev0_p40_mh +#define stasm_hat_yaw00_lev0_p40_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p40(const double* const d) // d has 160 elements +{ + const double intercept = -0.294291; + const double coef[160] = + { + 0.026259, 0.00304231, 0.00471007, 0.0380693, 0.00169751, 0.0371624, -0.0325803, 0.0714946, + 0.038756, -0.0706592, -0.050556, -0.044473, 0.00847687, 0.0480757, 0.0251681, -0.00868673, + -0.0377852, 0.0725141, 0.0600166, 0.023805, 0.0198476, -0.0637376, -0.0291391, -0.00595925, + -0.0330728, -0.0470453, -0.0187225, -0.0402267, 0.030628, 0.0378158, -0.0681032, 0.0106109, + -0.0214861, -0.0443033, 0.04399, -0.0231529, -0.0596881, 0.0142875, 0.111937, -0.0125412, + 0.0584175, 0.0117751, 0.0847862, -0.0422083, -0.0228718, -0.106864, 0.000999244, -0.0151749, + -0.105051, -0.0073098, -0.0365, 0.00529735, 0.0203811, -0.00912108, 0.0328744, -0.0607686, + 0.0836886, -0.0848693, -0.0176966, -0.00737156, -0.012806, 0.126028, 0.0423842, -0.00318309, + 0.0293672, 0.182807, -0.0271086, 0.0277633, -0.061486, -0.0354926, -0.010041, 0.0286645, + 0.0276864, -0.0243306, -0.0165582, 0.0404657, 0.0917005, -0.0418445, -0.0159969, -0.0183133, + -0.0319363, 0.0720016, -0.0714358, -0.00818226, 0.0873738, 0.0055193, 0.0586962, -0.00883776, + 0.0404256, 0.0576895, 0.158382, 0.0138438, 0.140703, -0.0273241, 0.00108341, 0.0635048, + 0.0276563, -0.00684674, 0.0721205, 0.0407795, -0.00636522, 0.0174957, 0.00155901, 0.00708828, + -0.0363742, -0.0160143, 0.0608168, -0.0544775, -0.0138877, 0.0276545, -0.0496702, 0.00801456, + -0.0232002, -0.0268588, 0.00609065, 0.0497592, 0.00208893, -0.00925113, 0.101835, 0.0133899, + 0.0497545, -0.0352433, -0.0997082, 0.111765, -0.122685, -0.0352003, -0.065832, -0.0308568, + -0.0282716, -0.0327506, -0.0303215, 0.035174, -0.120091, 0.0711583, -0.00861694, 7.10477e-05, + -0.00997348, -0.0244965, -0.0696368, -0.0243425, -0.0127085, 0.0151471, 0.0267519, -0.00403202, + -0.00495083, 0.0127707, 0.00724922, -0.0609489, 0.023576, -0.0555012, -0.0413765, -0.00434404, + 0.0126848, 0.0212278, -0.0329424, 0.0628527, -0.0623354, 0.0609688, 0.0101004, 0.014555 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p40(hatfit_yaw00_lev0_p40); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p40_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p41.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p41.mh new file mode 100755 index 0000000..d79e934 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p41.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p41.mh: + +#ifndef stasm_hat_yaw00_lev0_p41_mh +#define stasm_hat_yaw00_lev0_p41_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p41(const double* const d) // d has 160 elements +{ + const double intercept = -0.0377927; + const double coef[160] = + { + -0.0353348, -0.0589037, -0.00696798, -0.0153339, -0.0612999, -0.0360455, -0.162366, -0.00665881, + 0.0515615, 0.0251373, -0.016375, 0.016357, -0.0237196, 0.164118, 0.170332, -0.00381493, + 0.0365486, -0.0180069, -0.0473673, -0.00997962, -0.00629532, -0.124845, 0.00492644, 0.0330787, + 0.0128129, 0.0332008, 0.0422321, 0.0337041, 0.0774169, -0.0376993, 0.0263085, 0.0102676, + 0.0982231, 0.0127803, 0.0447597, 0.0112626, 0.039863, -0.0389654, -0.0829581, -0.0023913, + 0.0101263, 0.0630145, -0.00576953, -0.0471453, 0.011157, 0.00201119, 0.0300573, 0.00427715, + 0.00709766, -0.0197107, 0.0443243, 0.016412, -0.0125729, -0.0256797, -0.0988021, -0.0156427, + -0.0838289, -0.0358549, -0.0160809, -0.0676698, 0.00148966, 0.137653, 0.0541938, 0.00704553, + -0.026506, -0.0196888, 0.00263147, 0.00425232, 0.00130561, 0.00793335, 0.013356, -0.06753, + -0.124288, -0.0679816, 0.0187102, -0.0822505, -0.0156034, -0.0450377, 0.112686, -0.0414395, + -0.00771921, -0.148716, -0.0727516, -0.0327033, -0.000638185, 0.00963065, 0.0690835, -0.0416446, + -0.0756999, 0.213618, 0.0471655, -0.00315193, -0.0328858, 0.033096, -0.0824536, 0.122668, + 0.0419695, -0.0435438, 0.037645, 0.00861611, 0.0261346, -0.108489, -0.00987123, 0.0426558, + 0.0453392, 0.0382433, 0.0416339, 0.0447657, 0.0160877, 0.0725138, -0.119668, 0.0174806, + 0.139842, -0.0356199, -0.064772, 0.00813559, -0.0110396, 0.0340191, 0.00161844, 0.050326, + 0.10322, -0.0527045, 0.130425, -0.0248541, -0.0393123, 0.169389, -0.0495269, -0.0232829, + 0.0502757, 0.011799, -0.0442746, -0.00160266, -0.0114573, -0.0953306, 0.0132344, -0.0126185, + -0.0374817, -0.0546197, -0.0724885, 0.0126805, 0.0358073, -0.00478162, 0.0485347, -0.0636602, + -0.0487329, -0.00968574, 0.0464354, 0.0693049, -0.0143031, -0.0501061, 0.0335302, 0.00823605, + -0.0358175, 0.0265328, 0.0585218, -0.101333, 0.0400299, -0.0530801, 0.0523206, 0.00244195 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p41(hatfit_yaw00_lev0_p41); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p41_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p42.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p42.mh new file mode 100755 index 0000000..56501b7 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p42.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p42.mh: + +#ifndef stasm_hat_yaw00_lev0_p42_mh +#define stasm_hat_yaw00_lev0_p42_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p42(const double* const d) // d has 160 elements +{ + const double intercept = -0.255298; + const double coef[160] = + { + 0.0597054, -0.00639148, -0.0456597, 0.0742434, -0.0562403, 0.0468028, 0.0377836, 0.0261335, + 0.00668371, -0.00902325, 0.0102382, 0.0100169, 0.0745819, -0.0537504, 0.0570082, 0.0368723, + 0.0484989, -0.0122116, 0.054596, -0.024768, -0.0315189, -0.0708437, -0.0333413, -0.0525817, + 0.0530365, -0.0407074, -0.0185259, -0.0162354, -0.0673266, 0.0513573, 0.0222835, 0.0532301, + 0.0613899, 0.0505127, 0.0189354, -0.0406134, 0.0398369, -0.103857, -0.0276078, -0.0543191, + -0.0200936, 0.0326864, -0.0013231, -0.150375, 0.0262759, -0.0131941, -0.0383912, 0.00911761, + -0.0439418, 0.00131122, -0.0191709, -0.00675025, -0.0262729, 0.0538494, 0.0292808, 0.0204634, + -0.0758943, -0.0173521, -0.0234844, -0.0451664, 0.0344729, -0.00648703, 0.0372558, 0.044342, + -0.0623031, 0.0403734, 0.0141495, 0.0593253, 0.0385324, 0.077214, -0.00102277, -0.0161325, + -0.0268917, -0.0324921, -0.00732068, 0.0527798, -0.0309908, 0.107858, -0.0120938, -0.0499633, + -0.0542807, 0.0137124, 0.0733047, 0.109104, -0.0568691, 0.0979743, 0.00934294, -0.0662614, + 0.0381731, -0.0145372, 0.029335, -0.0198334, 0.0546906, -0.0276154, 0.0881988, -0.0322546, + 0.0751632, -0.0545224, 0.00349012, -0.0119639, -0.0116645, -0.0102112, -0.0282462, 0.0141178, + 0.0421056, -0.048577, 0.00676882, -0.040176, -0.0139058, -0.0723972, -0.0345437, -0.0520439, + -0.0550706, 0.0580846, 0.0662147, 0.00628797, -0.0432318, -0.0594546, 0.10154, 0.133251, + -0.0401073, 0.0144057, 0.01171, 0.0590425, 0.131444, -0.233853, -0.0506951, 0.0941215, + -0.0195994, -0.0857348, -0.0501328, 0.0372188, -0.0261387, 0.152688, -0.00874902, -0.0280669, + 0.0179512, 0.00127576, 0.0583033, 0.00306917, 0.023595, -0.0271535, 0.0926715, 0.0931256, + -0.00154915, -0.0546748, -0.043226, -0.0741834, -0.0663505, 0.116402, -0.0477188, 0.0670778, + 0.055369, 0.118064, -0.0272165, 0.100247, 0.0218371, -0.0305705, -0.0815681, -0.177642 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p42(hatfit_yaw00_lev0_p42); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p42_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p43.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p43.mh new file mode 100755 index 0000000..70dfc65 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p43.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p43.mh: + +#ifndef stasm_hat_yaw00_lev0_p43_mh +#define stasm_hat_yaw00_lev0_p43_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p43(const double* const d) // d has 160 elements +{ + const double intercept = 0.0682211; + const double coef[160] = + { + 0.133376, -0.0789378, 0.000363532, 0.0225045, 0.100677, 0.00512715, 0.034183, 0.0496652, + 0.0548152, 0.0102925, 0.0493077, 0.0667808, -0.0766423, 0.0350932, -0.0731524, -0.0201994, + -0.0792298, -0.0271338, -0.00685527, -0.0171653, -0.0160225, -0.0604475, 0.00351632, -0.108575, + 0.0324652, -0.00718609, -0.00533842, 0.0112263, -0.0618574, 0.0269659, 0.07854, 0.0863507, + -0.0302787, 0.0440785, -0.0174922, -0.0153434, -0.0571613, 0.0198642, -0.0448435, -0.0099439, + -0.121844, -0.0336577, -0.0163584, -0.0891238, -0.100695, -0.00669991, 0.141418, -0.0472936, + -0.0638395, 0.0067909, 0.0436656, -0.0442091, 0.0714521, -0.0902805, -0.0250223, 0.0367939, + 0.0268197, 0.0105633, -0.0204468, 0.0139929, -0.015485, 0.0859556, -0.00583686, 0.0479621, + -0.0526115, -0.00362009, -0.0274417, -0.110492, 0.00513976, 0.112853, -0.00111366, 0.00971831, + -0.020734, 0.0410006, 0.00506766, 0.0624033, 0.0564057, -0.0589353, 0.00101823, -0.00592113, + 0.0851656, 0.00722495, -0.00424113, 0.00791603, 0.137866, -0.0245269, -0.0393229, 0.123174, + 0.0810191, -0.0616335, 0.0467275, 0.0567535, -0.080989, 0.0918569, -0.134174, -0.0378361, + -0.0698077, 0.0251603, -0.0438065, -0.0845675, 0.0460268, -0.0747646, 0.0162698, 0.00630683, + -0.0112993, -0.0972859, 0.0621056, 0.187876, -0.012687, -0.0132837, -0.0988615, -0.0356376, + 0.0586386, -0.0521599, -0.017251, -0.104356, 0.0607113, 0.0482701, 0.14475, 0.0524129, + -0.022624, -0.0939393, 0.0598817, 0.0123851, -0.0845741, -0.0108795, 0.0748062, -0.0464025, + -0.0181628, 0.035901, 0.0230537, -0.096114, 0.0146146, -0.0234154, -0.0114559, -0.00910231, + 0.0569254, 0.157533, -0.0468979, 0.030716, -0.00900666, -0.0111136, 0.0834827, 0.00452342, + -0.108675, 0.00637435, -0.0723042, -0.0216719, 0.0125364, -0.0489838, 0.000672839, -0.0736326, + 0.0478355, -0.0106105, 0.0995251, -0.0189767, 0.00835041, 0.0635956, -0.103348, 0.0945145 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p43(hatfit_yaw00_lev0_p43); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p43_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p44.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p44.mh new file mode 100755 index 0000000..0f55a9b --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p44.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p44.mh: + +#ifndef stasm_hat_yaw00_lev0_p44_mh +#define stasm_hat_yaw00_lev0_p44_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p44(const double* const d) // d has 160 elements +{ + const double intercept = 0.0675791; + const double coef[160] = + { + -0.0767459, -0.0505188, 0.0575309, -0.0127404, -0.0220971, -0.00855632, 0.0188006, -0.0236023, + -0.0153973, -0.0149178, -0.0669407, -0.0520925, 0.020552, 0.0910471, -0.0435567, 0.066523, + -0.0440462, 0.0313665, -0.0217713, -0.0450519, -0.0192308, 0.0392672, -0.0379214, -0.0996695, + -0.027504, 0.0408019, 0.0939949, 0.116543, 0.0281901, -0.0470754, 0.0210486, -0.00561229, + -0.0869454, -0.076342, -0.0329686, -0.110867, 0.0214506, 0.0906042, 0.0267681, 0.00727575, + 0.0330856, 0.0472371, -0.0419293, -0.0554813, -0.00357445, -0.0449862, -0.0586204, 0.0603275, + -0.0472877, -0.0297275, -0.0328023, 0.16965, 0.0669265, -0.113541, -0.00395383, -0.0445593, + 0.0579616, -0.021522, -0.00834614, 0.0168392, 0.0730019, -0.0250998, 0.0551798, 0.0705395, + 0.0895496, 0.0277268, 0.028524, -0.136276, 0.0384447, 0.00776869, -0.00332092, 0.127278, + 0.0902896, 0.0314906, -0.0613173, 0.148177, -0.0544486, -0.0797823, 0.00201272, 0.0105111, + 0.025563, 0.130037, -0.0357178, -0.067914, -0.0654748, 0.0236465, 0.0934572, -0.0777674, + -0.040622, -0.0151037, -0.0265058, -0.069618, -0.0659292, 0.0783444, -0.0151342, -0.0151016, + 0.0247497, -0.0588109, 0.173313, -0.0490279, -0.0420719, 0.0246328, -0.0539151, -0.0277428, + 0.0857048, 0.0495073, 0.082829, 0.0551606, 0.00698982, 0.00724737, 0.0265228, -0.105501, + -0.0303618, -0.0176391, -0.0124724, -0.0838398, 0.0426059, 0.0759692, -0.0457718, -0.0695582, + -0.147492, 0.0132308, -0.0922444, -0.0129238, 0.0740357, 0.0330313, -0.000807307, 0.126891, + 0.0352588, -0.0201192, 0.110957, 0.0983945, 0.00943707, -0.0466551, 0.0049609, -0.029582, + -0.0249453, 0.0129157, -0.0737427, 0.00908893, 0.0203268, 0.0299702, -0.0275647, 0.00235915, + -0.0266059, -0.00973917, -0.077732, -0.0247806, -0.048671, -0.0531935, 0.0329534, 0.069377, + -0.0549999, -0.0114778, 0.00163595, 0.0616913, -0.0273367, -0.0745549, 0.0285486, 0.0775952 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p44(hatfit_yaw00_lev0_p44); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p44_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p45.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p45.mh new file mode 100755 index 0000000..ec6ca2b --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p45.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p45.mh: + +#ifndef stasm_hat_yaw00_lev0_p45_mh +#define stasm_hat_yaw00_lev0_p45_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p45(const double* const d) // d has 160 elements +{ + const double intercept = 0.05526; + const double coef[160] = + { + 0.0630783, 0.0292596, 0.0318406, 0.0594866, 0.162379, -0.042481, -0.00574075, 0.0589157, + 0.0187495, -0.0845319, 0.0315902, 0.0586162, -0.00321549, 0.0424385, -0.0290492, 0.019273, + -0.0223471, -0.0925394, 0.0362161, -0.0493067, 0.0268499, -0.0652301, 0.0389793, 0.0232175, + -0.0856172, -0.123304, -0.0188575, 0.124631, -0.0229594, 0.0158323, -0.0698713, -0.0231933, + -0.00669872, -0.0155227, -0.0940264, -0.0507954, 0.0647246, -0.015021, 0.103123, 0.0434247, + -0.0454387, -0.0435106, 0.123729, 0.00425597, -0.117273, -0.0111372, -0.063966, -0.0870706, + -0.0145139, 0.00407427, -0.0493748, -0.102654, 0.0166099, -0.00490995, -0.0126985, 0.00883373, + 0.0724928, 0.194173, -0.0893296, -0.0535559, -0.0638593, 0.0124788, 0.0445199, -0.0546627, + -0.10875, 0.0229394, -0.0506729, -0.0494596, 0.0284053, 0.0332425, -0.00923559, -0.0446426, + 0.109393, -0.0111995, 0.176488, -0.010905, 0.0328859, 0.0782291, -0.0488318, 0.0486531, + 0.0662113, 0.00930658, 0.190805, 0.0246649, 0.0245184, -0.0199926, -0.0610693, -0.0182101, + 0.0195637, -0.0023639, -0.0381936, 0.0264845, -0.0101421, 0.0917089, 0.0477623, 0.0464948, + -0.110147, 0.0142015, -0.0189586, 0.026932, 0.0512207, 0.0101997, 0.0562209, 0.0693221, + 0.0843972, -0.0558798, 0.12107, 0.0796528, -0.0384577, -0.0286284, -0.0825829, 0.0214344, + -0.0545154, -0.00894612, -0.139344, -0.00303873, -0.0003585, -0.0585329, 0.0546727, -0.0467421, + -0.0205365, -0.00297735, -0.0124068, 0.0131846, -0.0326048, -0.0589612, 0.0353162, -0.0378347, + 0.0160492, -0.0169027, -0.0618055, -0.0317513, -0.0123924, -0.0599679, 0.0765982, -0.0172758, + 0.0192227, -0.00164206, 0.03529, -0.00517779, -0.0197369, -0.0373382, -0.0525962, -0.0805979, + -0.0586913, 0.0327283, -0.0892486, -0.0491158, 0.028206, 0.00940369, 0.077999, 0.0624194, + -0.0221663, 0.0538342, 0.0140521, -0.0422031, -0.0334, -0.00316129, -0.0506521, 0.000787958 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p45(hatfit_yaw00_lev0_p45); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p45_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p46.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p46.mh new file mode 100755 index 0000000..f483477 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p46.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p46.mh: + +#ifndef stasm_hat_yaw00_lev0_p46_mh +#define stasm_hat_yaw00_lev0_p46_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p46(const double* const d) // d has 160 elements +{ + const double intercept = -0.100001; + const double coef[160] = + { + -0.0363415, 0.061142, -0.0180638, 0.0568104, 0.104338, -0.120442, 0.061189, -0.00934222, + 0.00585114, -0.0464362, -0.0525658, 0.00421259, -0.0302597, 0.124178, -0.0826488, -0.0377968, + 0.0847981, 0.0753743, 0.0452314, 0.111429, 0.0832982, -0.00317018, 0.0403802, 0.0433036, + 0.01293, -0.137277, -0.0958766, -0.0119499, -0.0341439, 0.0316035, -0.0180029, 0.000412558, + 0.010628, -0.0140923, -0.0372117, 0.0917931, -0.0325026, -0.0879887, 0.0284812, 0.0136098, + -0.0356775, -0.0148322, 0.00788642, 0.0261894, 0.0427855, 0.0487527, 0.064022, 0.0247199, + 0.0288025, -0.0800394, 0.0531466, -0.00520828, 0.0296685, -0.0443449, 0.0600888, 0.102966, + 0.0146727, -0.0733825, 0.167325, -0.0809933, -0.101347, -0.0855228, -0.119846, -0.0775401, + -0.059299, 0.106091, -0.0402652, -0.0764802, 0.0331985, 0.0732219, -0.0282939, 0.00358138, + -0.0297542, 0.0874255, 0.000458612, -0.071269, 0.0534737, 0.0733833, 0.134504, -0.0362897, + -0.0248235, -0.0377705, -0.102102, -0.0309831, -0.0885582, -0.0307088, -0.0261442, 0.00980097, + 0.021434, 0.0436111, 0.0199542, 0.0459498, -0.0794241, 0.0736978, -0.00438782, -0.112225, + 0.0130927, 0.032076, -0.057176, 0.064283, 0.0359534, -0.0105165, 0.0427164, 0.0449105, + 0.112998, 0.0121523, 0.0653882, 0.0681327, -0.0242019, -0.00868283, 0.0527934, 0.0273989, + -0.0170296, -0.0469701, -0.020071, 0.0254223, -0.0248253, -0.0755956, -0.091591, 0.0652433, + -0.0414259, 0.00346575, -0.000205791, -0.054021, 0.0277814, -0.0355947, -0.0545383, 0.00350014, + -0.0263599, -0.0313802, 0.06669, -0.0353331, 0.0390806, -0.046337, 0.0276272, 0.0202997, + 0.0160021, -0.0467744, 0.0404315, -0.0164396, 0.0041414, 0.0170388, 0.0115586, 0.000401085, + -0.0425657, -0.0635073, -0.0340973, -0.0870644, 0.0349884, -0.0538531, 0.0510425, -0.0116188, + 0.00410929, 0.0500994, 0.0317176, -0.0300254, 0.0144076, 0.0604306, 0.0304722, -0.0486339 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p46(hatfit_yaw00_lev0_p46); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p46_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p47.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p47.mh new file mode 100755 index 0000000..b8f259a --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p47.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p47.mh: + +#ifndef stasm_hat_yaw00_lev0_p47_mh +#define stasm_hat_yaw00_lev0_p47_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p47(const double* const d) // d has 160 elements +{ + const double intercept = -0.288196; + const double coef[160] = + { + 0.0145772, -0.108212, -0.153255, -0.0959192, -0.0721609, 0.0482885, 0.0403409, -0.0763717, + -0.0240454, 0.178506, 0.0222825, 0.0499365, -0.0852489, 0.0213988, -0.0263927, 0.0147085, + 0.00565223, -0.0744593, 0.0766843, -0.0228721, 0.0209161, -0.0722632, -0.00590033, -0.0457106, + 0.0427698, 0.00304226, 0.0197483, 0.0300394, 0.0163251, 0.080772, -0.014475, -0.0360101, + 0.108441, -0.0135569, -0.0534398, 0.0371536, 0.0187779, -0.0138314, 0.0289164, 0.0438568, + 0.157381, -0.00633324, 0.153222, 0.114277, 0.0358875, 0.131352, -0.04012, -0.00182078, + -0.0443723, 0.0116973, 0.0276334, -0.0372375, -0.00223712, -0.0488363, -0.0250479, 0.0856026, + -0.0361814, -0.0313648, -0.0685539, 0.0479745, 0.0846673, -0.0121397, 0.0673389, 0.0463722, + -0.00283039, 0.0135717, 0.0429072, -0.00477862, 0.0291462, -0.0492575, -0.031119, 0.0168562, + -0.0568322, -0.00621676, 0.0338157, -0.104502, -0.0583815, 0.0412986, -0.0105419, -0.0429375, + -0.138418, -0.0270539, -0.0327738, -0.0970789, -0.0210804, -0.00923647, 0.0959681, -0.032649, + -0.0236632, 0.0205498, 0.00886108, -0.102493, 0.020029, -0.052447, -0.0788612, 0.0104641, + -0.0147946, 0.0278878, 0.0185803, 0.110861, -0.155255, 0.109212, 0.00441767, -0.0751712, + 0.0275521, -0.0596232, -0.0016217, 0.0301175, 0.00103745, 0.040789, 0.0678089, -0.0409453, + 0.036869, 0.0388775, 0.0929971, 0.105175, 0.0840349, -0.0215368, -0.0262974, 0.0979085, + 0.070227, 0.0379082, 0.0185362, 0.0930556, -0.00158945, 0.0407175, -0.0977794, 0.0358011, + -0.000864424, -0.0667904, -0.0417295, -0.000917683, 0.00583103, -0.00156479, 0.00926208, -0.0396698, + 0.00124758, 0.00648707, 0.0930743, -0.0384007, 0.0777273, -0.0514579, -0.0512981, 0.0585609, + -0.00036948, -0.00166287, 0.0256804, -0.00335939, 0.034693, -0.031642, 0.00565138, 0.0348895, + -0.0600963, -0.0407735, -0.106788, -0.0648633, -0.0307585, -0.00818235, 0.0451896, -0.00231565 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p47(hatfit_yaw00_lev0_p47); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p47_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p48.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p48.mh new file mode 100755 index 0000000..376b350 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p48.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p48.mh: + +#ifndef stasm_hat_yaw00_lev0_p48_mh +#define stasm_hat_yaw00_lev0_p48_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p48(const double* const d) // d has 160 elements +{ + const double intercept = -0.507211; + const double coef[160] = + { + -0.0614859, -0.0133936, -0.0429112, 0.00347771, 0.0487988, 0.0409153, -0.00429469, 0.0333295, + -0.00353205, 0.0171557, -0.00358719, -0.00380664, 0.063417, -0.0322571, 0.0448478, -0.0446385, + 0.00943581, -0.0403418, 0.0121319, 0.0351145, -0.0280968, -0.0131799, 0.0853901, 0.0375559, + 0.019734, 0.01007, 0.00669748, 0.0209879, 0.0692215, 0.0280948, 0.0254157, -0.0489721, + -0.00730337, -0.0127367, -0.0175461, -0.0106468, -0.0258536, 0.0137095, -0.054114, 0.00718197, + 0.0904448, -0.0401979, -0.0188511, 0.0104029, 0.0247849, 0.036541, 0.0167439, -0.0208021, + -0.0481446, -0.0136743, 0.0213653, 0.0268987, -0.0246408, 0.011438, -0.0502383, -0.0155063, + 0.029009, 0.10384, 0.00905245, 0.0524439, 0.00617108, -0.0200539, 0.0640796, -0.015994, + 0.007478, -0.0828052, 0.00644952, 0.00143945, -0.0562191, -0.0129642, 0.0179319, -0.00779265, + 0.0526817, 0.0228503, 0.0205606, -0.0136539, 0.0419818, -0.0497491, 0.0472136, -0.040681, + -0.0422641, 0.0134192, 0.0672202, 0.00381033, -0.0193291, 0.0175511, -0.0676679, 0.0378319, + 0.00997459, -0.0300587, -0.0551166, -0.0701947, 0.0373253, 0.0412041, 0.0438401, 0.0482775, + 0.0573613, 0.0613145, 0.0233865, 0.0973354, -0.0527661, -0.0387705, -0.0584262, -0.0129388, + 0.0660021, -0.0258971, -0.0815685, -0.115245, -0.0571867, 0.0677006, 0.0568456, 0.0438055, + -0.0131482, 0.0623761, 0.00405923, -0.0256485, 0.0287947, -0.027904, -0.0194221, -0.0266816, + 0.0517444, -0.0402605, 0.0182291, 0.00754605, -0.0182993, -0.0129928, 0.0355485, -0.00620289, + -0.0740793, -0.0119688, -0.0251986, 0.0410938, 0.0725084, -0.037937, -0.00898504, -0.0269353, + -0.00804159, 2.64874e-05, -0.0601373, 0.00649737, 0.0211966, 0.043171, 0.0394513, -0.0192821, + -0.081348, 0.0668955, 0.0817024, 0.0742745, 0.0639106, 0.00608219, -0.0127592, -0.0117291, + 0.0509639, -0.0885544, 0.084111, 0.115728, 0.00760755, 0.0589895, 0.055708, 0.0153924 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p48(hatfit_yaw00_lev0_p48); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p48_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p49.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p49.mh new file mode 100755 index 0000000..1c3e974 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p49.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p49.mh: + +#ifndef stasm_hat_yaw00_lev0_p49_mh +#define stasm_hat_yaw00_lev0_p49_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p49(const double* const d) // d has 160 elements +{ + const double intercept = -0.0776868; + const double coef[160] = + { + 0.0275848, -0.0284982, -0.0968786, 0.012601, 0.00316084, 0.0129449, 0.00235839, -0.0141913, + 0.0206723, -0.00190589, 0.00567599, -0.0649961, 0.0194063, -0.0218695, 0.0634073, 0.0830597, + -0.0303819, 0.044056, 0.109794, 0.0617282, -0.0587369, -0.0542978, -0.0373921, -0.0732725, + -0.0147875, -0.0559105, 0.0163286, -0.0135929, 0.0674894, 0.0751465, 0.00251262, -0.0182581, + 0.0741013, -0.0315891, -0.0603236, 0.00391363, 0.0408398, 0.023747, 0.118085, 0.0204529, + 0.0414591, 0.0412417, -0.0112869, 0.0261514, -0.055332, -0.0595552, -0.0397185, 0.00854414, + -0.000802313, -0.0363838, -0.0351976, -0.0156216, 0.0280306, 0.022729, 0.0339936, 0.0497414, + -0.00145967, 0.0484619, 0.0370571, 0.00932597, -0.0485191, 0.00736717, -0.0249638, -0.0268212, + 0.0469585, 0.0134989, 0.0087385, -0.0147704, 0.00580803, 0.0174812, -0.0159565, 0.0225577, + -0.086172, -0.0310139, -0.0435962, 0.0280613, 0.0303126, 0.0265348, -0.0459229, 0.00047702, + -0.00715624, 0.00728544, -0.0219822, 0.00398975, -0.00324255, 0.0189119, -0.046743, -0.00666247, + -0.0614471, -0.0207601, 0.0347472, -0.0269526, 0.0483011, 0.0129612, 0.033087, 0.0388187, + -0.00866783, -0.00879537, 0.0230041, 0.0188381, 0.00877423, -0.0108385, -0.023338, 0.011419, + 0.0151843, -0.0137601, 0.0365838, 0.0223036, -0.051489, 0.0424979, -0.0235289, 0.012765, + 0.0276007, 0.0202292, -0.00444591, -0.0218069, -0.0249463, 0.000393313, -0.0282154, -0.00764509, + 0.0679322, 0.0528856, -0.0034956, -0.00897923, -0.00621089, 0.00144049, -0.0004081, -0.0103731, + -0.00409102, -0.0275965, 0.055735, -0.011152, 0.0426197, -0.0233885, -0.024384, -0.0417632, + -0.00398724, -0.0208572, -0.0691497, -0.0154694, -0.00203742, 0.0474544, -0.0047922, 0.0394473, + 0.0499002, 0.00908049, 0.0428506, -0.0681492, -0.01479, -0.0484233, 0.00477276, -0.043034, + -0.0248895, -0.0168202, -0.0215518, 0.0550794, 0.0846115, -0.0264975, -0.00498056, 0.00626701 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p49(hatfit_yaw00_lev0_p49); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p49_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p50.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p50.mh new file mode 100755 index 0000000..0726e51 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p50.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p50.mh: + +#ifndef stasm_hat_yaw00_lev0_p50_mh +#define stasm_hat_yaw00_lev0_p50_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p50(const double* const d) // d has 160 elements +{ + const double intercept = -0.525298; + const double coef[160] = + { + -0.0608053, -0.017018, 0.0172086, -0.0532416, 0.0390494, -0.0315759, -0.0297668, 0.0473924, + 0.0586826, 0.00214756, -0.0129219, 0.0233852, -0.0546724, -0.00103882, -0.0289265, 0.030282, + 0.00588202, 0.0339987, 0.00612827, -0.0651488, 0.0365117, 0.0403052, 0.130052, -0.0547454, + 0.097231, 0.000362915, -0.0078282, 0.0087969, -0.0498595, -0.0528878, -0.00105175, -0.00900912, + 0.0194784, 0.050525, -0.0536473, 0.035498, -0.0304879, -0.0226244, -0.00355129, 0.0236915, + 0.0405772, 0.0418261, 0.011954, 0.0386399, 0.013586, 0.00375961, 0.0124255, -0.0264252, + -0.0673523, -0.0095416, -0.010273, -0.0466698, 0.0614134, -0.0413079, 0.005035, -0.00569076, + -0.0464577, 0.0131308, -0.0188681, 0.044243, 0.00477695, 0.103728, 0.017562, 0.0191207, + 0.0216523, 0.0303241, -0.00501208, 0.0651616, -0.0233342, -0.0485777, -0.00566667, -0.00804836, + -0.0110316, 0.0147137, 0.0109402, -0.0090745, 0.0313347, 0.0280601, -0.0329287, 0.0522614, + 0.0286707, -0.0140181, 0.0296315, 0.0747046, 0.0366504, -0.0681547, 0.025309, 0.000756275, + -0.0365015, -0.0828379, -0.0784041, -0.0216135, 0.0121855, 0.0576653, 0.0493504, 0.0327576, + -0.00447507, 0.0577139, 0.00984755, 0.021943, 0.0361952, -0.0192, 0.00460819, -0.00644308, + 0.0188758, -0.0303764, -0.0338884, -0.0107617, 0.0330361, 0.0286103, -0.00846447, -0.0121782, + -0.018174, -0.00604028, 0.059398, -0.0356322, 0.0184641, -0.0245576, -0.00695992, 0.0335402, + -0.00774446, 0.117024, 0.0552646, -0.0359862, -0.0119143, 0.0304411, 0.068866, 0.0682674, + 0.0555782, 0.0561491, 0.0561352, 0.00693271, 0.00115513, -0.0412321, -0.00218374, -0.0215376, + 0.0325355, 0.0286749, -0.0199706, 0.0677057, -0.032095, 0.0106421, 0.0338819, 0.0287217, + 0.0272375, 0.00545888, -0.0377829, -0.0680026, -0.0291841, -0.0199699, -0.00718858, -0.00224984, + -0.0131023, 0.0289813, 0.0128839, 0.0291955, -0.0326476, 0.0272142, -0.029973, -0.00616648 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p50(hatfit_yaw00_lev0_p50); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p50_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p51.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p51.mh new file mode 100755 index 0000000..034e7e1 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p51.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p51.mh: + +#ifndef stasm_hat_yaw00_lev0_p51_mh +#define stasm_hat_yaw00_lev0_p51_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p51(const double* const d) // d has 160 elements +{ + const double intercept = -0.0735283; + const double coef[160] = + { + 0.0771966, -0.0475953, 0.0141114, -0.0871626, -0.0297567, 0.0117006, 0.0543476, 0.100454, + -0.00160654, -0.00873661, 0.0558398, 0.0730243, -0.0876975, -0.0458926, -0.0748371, -0.0747857, + 0.043074, -0.0128038, 0.0230369, -0.0388383, 0.0207021, 0.0916334, -0.0459258, -0.0075095, + 0.0329335, -0.00683457, 0.0313122, 0.0053226, 0.00410068, -0.097334, -0.0380394, -0.0852712, + -0.043189, 0.04136, -0.0634401, 0.0336217, 0.0444248, 0.0201442, 0.115962, 0.0263664, + -0.165626, 0.0262665, -0.0616932, -0.0423803, 0.123605, 0.0371823, -0.0987946, 0.124207, + -0.0128535, 0.0327572, 0.0506632, 0.0230378, 6.70766e-05, -0.000671491, 0.082474, -0.183446, + -0.0152684, 0.0035587, -0.0499018, 0.0433574, -0.0190543, 0.0079787, 0.209665, 0.097934, + -0.0105021, 0.0475264, -0.0309403, -0.00883755, -0.00607743, -0.0292229, 0.00134788, 0.149204, + 0.0787195, -0.0241961, -0.0248272, -0.0083919, -0.0509569, -0.0183497, -0.127294, 0.000431771, + 0.102265, -0.0242652, -0.03769, 0.0246654, -0.0318418, -0.0121731, 0.0471392, -0.0252625, + -0.0130157, 0.015623, -0.0117869, 0.052078, -0.0434114, 0.0102768, -0.0805067, 0.112146, + 0.0164484, -0.0743776, 0.0826201, -0.0445363, -0.0273097, -0.0795545, -0.140864, -0.0563581, + -0.052288, 0.0941224, -0.0547488, -0.024436, 0.0455477, 0.113074, 0.00138931, -0.076687, + 0.0229466, 0.019664, 0.0236683, 0.0868684, -0.0243805, 0.0362332, 0.0363511, 0.00705766, + -0.00374566, -0.0312427, 0.00213632, -0.00514799, -0.00679184, 0.0175118, 0.0148382, -0.0639573, + -0.0106758, -0.00682166, 0.00437135, -0.0350406, 0.0249463, 0.056438, -0.00669385, -0.0437415, + -0.0168587, 0.0323241, 0.0551781, 0.0363316, 0.0518774, -0.0263602, 0.0890352, 0.0255487, + 0.0186968, -0.0221521, -0.0816743, -0.0552433, -0.0116053, -0.0323147, 0.04249, 0.0168891, + -0.0301822, -0.00211382, 0.044909, 0.05408, 0.0266886, -0.0671795, -0.0192068, 0.0266567 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p51(hatfit_yaw00_lev0_p51); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p51_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p52.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p52.mh new file mode 100755 index 0000000..2a7a839 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p52.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p52.mh: + +#ifndef stasm_hat_yaw00_lev0_p52_mh +#define stasm_hat_yaw00_lev0_p52_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p52(const double* const d) // d has 160 elements +{ + const double intercept = 0.356389; + const double coef[160] = + { + -0.0565966, -0.00436893, -0.0424478, -0.0441792, -0.0493693, -0.0432731, 0.0104868, -0.0650436, + 0.014265, -0.0511443, -0.00903977, -0.015103, 0.046282, 0.0308505, -0.020163, 0.0296418, + -0.00424917, 0.0130241, 0.0252249, 0.00242873, -0.048791, -0.0116566, -0.0430767, -0.027094, + 0.0141663, 0.01878, -0.0199225, -0.0357697, 0.030869, -0.0101056, 0.0593821, 0.00120212, + -0.0568285, -0.0102402, -0.0142321, -0.0413896, -0.0503273, -0.0679854, -0.0592801, 0.00953902, + 0.111465, 0.0533001, 0.0304643, -0.0172661, 0.0329174, 0.0509155, -0.0663429, 0.0313222, + -0.0275905, 0.00661647, 0.0228199, 0.0338488, 0.0772362, 0.0140637, 0.0392898, -0.0487548, + -0.0266179, -0.014756, 0.0164762, -0.0149078, -0.0383112, 0.0366548, 0.0253812, 0.0622187, + 0.0692298, 0.0385389, 0.0156687, 0.0392273, -0.0257355, -0.0034841, 0.00778259, 0.0171759, + 0.0321509, -0.0387728, 0.0235388, 0.0662522, 0.122091, 0.0199716, -0.0512887, -0.0019208, + -0.0772459, -0.112363, 0.0632655, -0.0853281, -0.0406988, -0.0210816, -0.0217176, 0.053754, + 0.0167587, 0.0105269, -0.0115349, 0.00922718, -0.0289366, 0.00887892, -0.0271364, 0.0398744, + -0.0281208, 0.00442741, -0.030013, -0.0247661, 0.0212935, -0.00852063, 0.0634168, -0.000419323, + -0.00546361, -0.0189612, 0.0459339, 0.0142435, 0.00896773, 0.0331033, -0.0353591, 0.00944868, + -0.00448893, -0.0501117, 0.0125946, -0.0807797, -0.134999, 0.0412527, -0.00657742, -0.0439409, + 0.0134538, 0.0589609, -0.0738359, 0.0728292, 0.0598862, -0.0619346, 0.00207611, 0.0837343, + -0.011448, -0.0570236, -0.00308141, -0.0547801, -0.048987, 0.0264815, -0.0873331, -0.0809104, + -0.0311207, 0.0187638, 0.0126964, 0.0260294, -0.00574034, -0.012768, 0.0660897, 0.0100209, + -0.00102118, -0.0647397, -0.0328181, -0.0209607, -0.0483956, -0.0197192, -0.0444137, -0.00505854, + 0.0317658, 0.0554469, -0.0459294, 0.0268268, 0.0425221, 0.0432919, -0.047069, -0.0406301 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p52(hatfit_yaw00_lev0_p52); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p52_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p53.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p53.mh new file mode 100755 index 0000000..2acc330 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p53.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p53.mh: + +#ifndef stasm_hat_yaw00_lev0_p53_mh +#define stasm_hat_yaw00_lev0_p53_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p53(const double* const d) // d has 160 elements +{ + const double intercept = -0.13673; + const double coef[160] = + { + -0.0162128, 0.00396476, -0.0566029, 0.0577933, -0.0403224, 0.043854, 0.0973011, 0.0299143, + 0.0168486, -0.00323911, 0.0485449, -0.0172789, 0.0649607, -0.0889802, -0.0184462, -0.0993979, + 0.0585193, -0.035293, -0.00442573, -0.0147112, 0.0211507, 0.0164799, -0.0609809, 0.0772597, + -0.0989319, 0.022683, 0.104042, -0.0263823, 0.00853071, -0.0832523, -0.0675489, -0.0649409, + -0.016282, -0.0674259, -0.0110918, -0.0391008, 0.082429, 0.122682, 0.0668481, 0.0173605, + -0.022077, -0.0368615, 0.0175569, -0.0553969, 0.107805, -0.0111341, -0.109027, -0.0523428, + -0.029643, 0.0261563, -0.0773877, 0.0807451, -0.0599563, 0.158952, -0.0351908, 0.00229856, + -0.0592867, 0.0120119, -0.0429973, -0.00470543, -0.0405086, 0.044953, 0.246439, 0.0100643, + 0.0409483, 0.0816822, 0.0164904, 0.039665, 0.0354091, -0.146376, 0.0452718, 0.054022, + 0.107014, -0.0216112, -0.029913, 0.0774411, -0.167302, 0.0628407, -0.0570565, 0.0198331, + -0.0142194, 0.105594, -0.0181337, 0.0493809, -0.020624, 0.0242202, 0.0123011, 0.0849996, + 0.0834657, -0.0662961, -0.0137023, 0.0501838, -0.0419186, -0.0859018, 0.0175011, 0.0450542, + -0.023375, -0.0190949, 0.0676106, -0.0654642, 0.035589, -0.0189422, -0.115612, -0.0683701, + -0.00420837, -0.000420717, 0.00812341, 0.0158822, -0.0376482, 0.0839915, -0.0577299, -0.0355472, + -0.0347943, 0.0233613, -0.0258721, -0.0477491, 0.0811518, 0.0227677, 0.00157778, -0.0204129, + 0.0165362, 0.0433761, 0.0466629, -0.00050736, -0.00799493, 0.000497581, 0.0162673, -0.0418607, + -0.0475751, -0.0505083, -0.0717373, 0.00104577, 0.00463248, -0.00374365, 0.0151036, -0.0539417, + 0.0369221, 0.0425143, 0.0314458, 0.0161309, -0.0246016, 0.0463812, 0.051867, 0.0384105, + 0.0125363, -0.0128568, 0.0299553, -0.0123259, 0.047599, -0.0800968, 0.0171995, 0.0348205, + -0.0129267, -0.00629993, -0.00966322, -0.01211, -0.027125, -0.0253052, 0.020968, 0.0456038 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p53(hatfit_yaw00_lev0_p53); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p53_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p54.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p54.mh new file mode 100755 index 0000000..a7266df --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p54.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p54.mh: + +#ifndef stasm_hat_yaw00_lev0_p54_mh +#define stasm_hat_yaw00_lev0_p54_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p54(const double* const d) // d has 160 elements +{ + const double intercept = -0.464466; + const double coef[160] = + { + -0.0162754, -0.0153452, -0.0161929, 0.0257948, -0.0246163, -0.0193628, 0.0530305, 0.0300821, + 0.0486863, 0.0574463, -0.0244103, 0.107083, 0.0315724, 0.0284082, 0.012066, -0.0650411, + -0.0106388, 0.0183337, -0.0219904, -0.0990341, -0.0749949, -0.0334635, 0.0261003, 0.02563, + 0.011018, 0.0297827, 0.0760818, 0.0825351, -0.0197978, -0.0214938, 0.000281256, 0.0319635, + 0.0251952, -0.0217755, -0.0317886, -0.0251796, 0.0150476, 0.0310586, 0.027193, 0.00305684, + -0.0423644, -0.0266555, 0.0468223, 0.0278544, -0.0654182, -0.041959, -0.0455653, -0.0202466, + -0.0398525, 0.0113177, -0.00173139, 0.0465842, 0.124307, -0.042951, 0.0456485, -0.0201564, + 0.0807864, -0.015536, -0.0311899, -0.12592, 0.0902072, 0.129185, 0.0408016, 0.105544, + -0.0779884, -0.0445003, 0.0252348, 0.0535123, -0.0966987, -0.0273442, -0.0480463, -0.00988774, + 0.0142944, 0.00415365, -0.00524356, -0.0118335, 0.0622267, -0.0579706, -0.0054806, -0.00951735, + 0.0726154, 0.00363722, 0.0446771, 0.0406553, -0.0246469, -0.026586, -0.0437119, 0.0260516, + -0.0118612, -0.067339, -0.0755971, -0.134983, -0.0956992, 0.0330301, 0.0782567, 0.0478521, + 0.104947, 0.0930333, 0.0890881, 0.164204, 0.0697622, -0.00080646, -0.106038, -0.0455515, + 0.00634715, -0.0361326, -0.00731314, -0.0253596, 0.000753405, 2.08528e-05, 0.0958543, -0.0173228, + 0.0342102, 0.0261247, 0.00132271, -0.00554724, 0.0253332, 0.0323493, -0.00161845, 0.0190059, + -0.00543632, 0.0304435, 0.0391995, -0.00784013, -0.00276152, 0.0288609, 0.0414028, 0.00860349, + -0.0349619, 0.057662, -0.0989749, 0.0469945, 0.00829691, 0.060334, 0.0470848, -0.0054533, + 0.0335097, 0.0154854, 0.068254, -0.0794785, 0.059407, -0.0444638, -0.0561907, -0.0200719, + -0.0533013, 0.0146877, -0.0398335, 0.010249, -0.0494084, 0.0478146, 0.0141436, 0.0432986, + 0.0206777, 0.0120814, 0.0126949, 0.053215, -0.0018716, -0.0706257, -0.0213457, 0.032249 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p54(hatfit_yaw00_lev0_p54); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p54_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p55.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p55.mh new file mode 100755 index 0000000..0ad9404 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p55.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p55.mh: + +#ifndef stasm_hat_yaw00_lev0_p55_mh +#define stasm_hat_yaw00_lev0_p55_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p55(const double* const d) // d has 160 elements +{ + const double intercept = -0.0755359; + const double coef[160] = + { + 0.0097482, -0.047409, -0.0881379, -0.0172703, -0.0137115, 0.0235996, 0.029916, -0.0214355, + 0.00161234, 0.0750425, 0.135029, -0.0492864, -0.0153979, -0.0556731, 0.0322142, 0.00203836, + 0.0018056, -0.0900747, 0.0195889, 0.0194127, 0.0391212, -0.013897, -0.072664, 0.0721148, + 0.0615618, -0.062842, -0.0682977, -0.144091, 0.0446316, 0.0477021, -0.00812852, 0.0398407, + 0.0196783, 0.0356806, 0.0216706, 0.0420912, -0.0355284, 0.0109777, -0.0606375, 0.00570031, + -0.0230915, -0.0239408, 0.0843259, 0.0195546, 0.0289893, 0.0399275, -0.0146609, -0.0316555, + -0.0213881, 0.0260282, 0.0356055, 0.107212, 0.1077, 0.0154484, 0.0124143, -0.0202823, + 0.0256023, 0.0290213, -0.169727, -0.0176858, -0.0224288, 0.0858483, 0.125286, 0.0288955, + 0.0221204, 0.115091, -0.0585257, 0.121856, -0.132179, 0.0985308, 0.0433111, -0.116466, + -0.051042, 0.0849401, 0.0376088, 0.087932, 0.0112253, -0.0443104, -0.0331158, -0.0469505, + 0.010993, -0.0195273, -0.0830829, -0.0188093, -0.0383246, -0.0258202, 0.00472828, 0.00407893, + 0.0612224, 0.0928033, -0.0052713, -0.0382207, -0.103713, -0.0462224, -0.019763, 0.0530144, + -0.067134, 0.0130005, 0.109736, 0.00863756, -0.0121759, -0.0504208, -0.0640108, -0.0348149, + -0.0908492, -0.133754, 0.0758591, -0.0891465, 0.17336, -0.0308737, 0.0146765, 0.0527735, + 0.0404054, -0.0982392, 0.0282832, -0.050986, 0.00194332, -0.0301109, 0.0165215, 0.0125049, + -0.0216377, 0.0299807, 0.0343868, 0.0467858, 0.0612859, 0.0467386, 0.0272579, -0.0411306, + 0.0402067, -0.122819, -0.0320746, -0.029977, 0.00209943, 0.0424084, 0.00394216, -0.0624904, + 0.0228113, 0.00442315, 0.0133522, 0.0183693, -0.00681054, -0.0497652, -0.00411673, 0.0485881, + 0.0659018, 0.0673055, -0.0650168, 0.0802371, -0.107827, 0.0171927, 0.00624577, -0.00436165, + 0.00308984, 0.0014256, -0.050937, -0.0029626, 0.0664246, -0.0370867, 0.00921039, -0.0119243 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p55(hatfit_yaw00_lev0_p55); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p55_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p56.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p56.mh new file mode 100755 index 0000000..24899f1 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p56.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p56.mh: + +#ifndef stasm_hat_yaw00_lev0_p56_mh +#define stasm_hat_yaw00_lev0_p56_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p56(const double* const d) // d has 160 elements +{ + const double intercept = -0.0701842; + const double coef[160] = + { + -0.0132114, 0.119623, 0.0713842, 0.114439, 0.0054625, -0.00523126, -0.0795686, 0.101549, + -0.000944142, -0.0242149, -0.095902, -0.0807434, 0.0738906, 0.0268537, 0.021225, -0.0320412, + -0.0138074, -0.0830629, -0.0489884, -0.0431324, -0.0298249, -0.0612572, 0.00346305, -0.026525, + 0.0346444, -0.0416325, -0.0747525, -0.0405601, 0.00013738, -0.0140486, 0.00103337, 0.000979364, + 0.0149998, 0.0848052, 0.045373, 0.105516, 0.0223434, 0.103645, -0.0732751, 0.0249105, + -0.052389, -0.0195596, -0.0353349, -0.0223395, 0.0275832, -0.0217439, 0.00366545, 0.0131151, + 0.0707921, -0.0290049, -0.000771017, 0.058231, -0.0832677, 0.00170624, 0.0655336, 0.0349129, + 0.0166434, 0.0719843, 0.152037, 0.0561134, 0.0435895, -0.049025, 0.0490456, -0.0973362, + -0.0624395, 0.0465154, 0.0392454, -0.0112973, 0.0519201, 0.0413816, 0.0523942, 0.0218078, + 0.017602, -0.0182201, -0.0667719, -0.0265606, -0.048762, -0.0223863, 0.0212332, -0.0320959, + 0.0281657, 0.0187358, -0.0429681, -0.0843838, -0.0765552, -0.0197888, 0.0294666, -0.0780042, + -0.0450454, -0.0516515, 0.000542504, -0.00232806, 0.0702022, -0.0167278, -0.0438407, 0.0809685, + 0.020539, 0.00526552, 0.0693077, 0.00290782, -0.0202558, -0.0115138, -0.0704899, -0.0187245, + 0.055074, -0.0130068, -0.0440525, -0.0220203, -0.0252487, 0.0566609, -0.0329361, -0.0266697, + -0.0306602, -0.107831, 0.000767983, -0.0101934, 0.0108228, -0.0367206, 0.0122181, -0.000333538, + 0.0515653, 0.0244634, 0.00172497, 0.0794041, 0.0844254, 0.0294867, 0.00383756, 0.0424433, + -0.0448878, 0.0292897, 0.0288161, 0.0534636, 0.0220402, -0.0159877, -0.00873339, -0.0167804, + -0.0192203, -0.06132, -0.0446216, -0.0663121, -0.029097, 0.000563146, 0.061428, -0.0136953, + 0.0581288, 0.0601184, 0.0158533, 0.00126791, -0.0354869, -0.0315443, -0.0286293, 0.0164809, + 0.0175411, 0.101643, -0.0103028, 0.0580025, 0.0665844, 0.0382276, 0.0299581, 0.0251437 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p56(hatfit_yaw00_lev0_p56); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p56_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p57.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p57.mh new file mode 100755 index 0000000..b8fa5ce --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p57.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p57.mh: + +#ifndef stasm_hat_yaw00_lev0_p57_mh +#define stasm_hat_yaw00_lev0_p57_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p57(const double* const d) // d has 160 elements +{ + const double intercept = -0.0571354; + const double coef[160] = + { + -0.0623248, 0.0566206, 0.0691202, 0.0579371, 0.0442881, 0.0106047, -0.0938253, 0.020986, + 0.0656418, -0.141306, -0.0794616, -0.0818886, 0.0672128, 0.0704122, 0.0153506, 0.0292146, + -0.0271806, 0.0015141, -0.00563497, -0.141781, -0.00666265, 0.0461878, -0.0848238, 0.0148376, + 0.0217444, -0.0427974, 0.152615, 0.0576113, 0.00811842, -0.00417743, 0.0647198, -0.0783728, + -0.0016353, -0.011506, -0.0855872, -0.00389048, -0.0308737, -0.00585197, 0.00306674, 0.0336197, + 0.0194198, 0.0928571, 0.0164469, 0.0398484, -0.0647082, -0.0722282, -0.0389821, -0.069822, + -0.0705482, 0.104529, -0.0409855, 0.124235, 0.029418, -0.0921492, 0.0667528, 0.13861, + 0.0234115, -0.00942052, -0.145887, 0.0451519, 0.0331773, 0.0298756, 0.109082, 0.0708995, + 0.0368133, 0.113175, -0.0175444, 0.0336535, -0.046025, -0.0220826, 0.00475333, 0.0410397, + 0.0541545, 0.0204659, 0.103674, -0.0128446, -0.00714037, -0.0218233, -0.0173083, 0.00525749, + 0.0159614, -0.0471427, 0.0131071, -0.114115, 0.0012803, 0.0168933, -0.00916179, -0.0359775, + 0.078492, -0.0863646, 0.0409317, -0.0949475, -0.146234, 0.0316559, 0.0347211, -0.0576807, + -0.0139048, -0.0170914, 0.109144, 0.0175288, -0.0194778, -0.0234532, -0.0623031, -0.087773, + -0.0753734, -0.0428324, 0.0248371, 0.0919151, 0.0759525, 0.0260988, -0.0105893, -0.0239722, + -0.0249461, -0.0290519, -0.0772167, -0.0434918, 0.000233576, 0.0129279, -0.00876653, -0.00220475, + 0.00474099, 0.0760477, -0.0340906, 0.0635409, 0.0525037, -0.00218869, 0.038332, 0.0308744, + -0.0493035, 0.0034007, -0.0563515, 0.0392411, 0.0432809, 0.0316663, -0.0117442, -0.00937159, + -0.0231698, 0.0476398, 0.00634718, -0.0296075, 0.0394447, 0.0251174, -0.0250208, -0.00687285, + 0.0342631, 0.0041199, -0.0525127, -0.0648111, -0.00750986, -0.0291794, 0.0301712, 0.0163773, + 0.031004, 0.0360219, 0.0223957, 0.00481596, -0.0157141, -0.0241272, 0.0034461, 0.0169819 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p57(hatfit_yaw00_lev0_p57); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p57_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p58.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p58.mh new file mode 100755 index 0000000..3e95624 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p58.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p58.mh: + +#ifndef stasm_hat_yaw00_lev0_p58_mh +#define stasm_hat_yaw00_lev0_p58_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p58(const double* const d) // d has 160 elements +{ + const double intercept = -0.359932; + const double coef[160] = + { + -0.00761123, -0.0101748, -0.0117021, -0.0128548, -0.0150867, 0.0174357, 0.0328092, 0.0050596, + -0.00400278, 0.0439325, 0.0170153, 0.0245041, -0.00633053, 0.0175203, -0.0352703, -0.0365102, + -0.0642809, -0.0521717, 0.00451388, 0.0309425, -0.0218091, 0.0284802, 0.0552614, 0.0148388, + 0.041233, 0.0935166, 0.0186703, 0.0214059, 0.0564032, -0.0538083, -0.0294074, -0.0206507, + -0.0216263, -0.00754928, -0.0254575, 0.00816284, -0.00287187, 0.0195221, 0.0582276, 0.00877311, + 0.0577802, -0.0210194, 0.00718873, -0.0129825, 0.0503901, 0.0155677, 0.0594518, -0.00213925, + -0.11883, 0.0361552, 0.0149552, -0.0607204, -0.048431, -0.0815044, -0.0680601, -0.0927384, + 0.081904, -0.0936196, -0.0204655, 0.0427298, 0.077855, 0.148306, 0.0584974, 0.14153, + 0.0376798, 0.0187805, -0.0091708, -0.0703296, -0.0126466, -0.0528165, -0.000347546, -0.0392141, + -0.0200908, -0.025994, 0.062282, -0.0117584, -0.0694793, 0.0127599, -0.0150978, -0.0539192, + 0.0719813, -0.0304772, 0.0147813, 0.0193291, 0.0410686, 0.0260082, -0.0324154, -0.0557322, + -0.0544753, 0.0150316, -0.0360627, -0.0141601, -0.0291539, 0.0452719, 0.0876727, 0.0738235, + 0.0814983, 0.131514, 0.112725, 0.0938299, 0.0979873, -0.0601742, -0.122296, -0.0394361, + -0.130863, -0.075843, -0.112055, -0.0258125, -0.0372027, 0.0590324, 0.0568197, 0.0664451, + 0.0305872, 0.0240616, 0.0328911, -0.0431841, 0.100371, 0.00834137, 0.0133415, -0.0191496, + 0.00333501, 0.067146, 0.0242995, -0.0225552, 0.0105483, 0.00587485, -0.0351108, -0.0345332, + -0.0358841, -0.0183259, -0.0552155, 0.0197743, -0.021501, 0.0084624, 0.0534296, -0.0201019, + 0.1101, -0.0419702, 0.0693107, 0.0233454, -0.0126147, -0.0343688, -0.0774627, -0.000330213, + 0.00517364, 0.00131838, -0.0864239, 0.0168628, 0.000298095, -0.0233303, 0.0777644, 0.0202048, + -0.0156178, 0.0126178, 0.0487398, 0.030913, -0.00627167, 0.0243627, 0.0107362, 0.0808626 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p58(hatfit_yaw00_lev0_p58); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p58_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p59.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p59.mh new file mode 100755 index 0000000..7bd0453 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p59.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p59.mh: + +#ifndef stasm_hat_yaw00_lev0_p59_mh +#define stasm_hat_yaw00_lev0_p59_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p59(const double* const d) // d has 160 elements +{ + const double intercept = -0.187416; + const double coef[160] = + { + -0.00286368, 0.0378576, -0.0227993, 0.0182712, -0.0112563, 0.0243808, 0.0360358, 0.029116, + 0.0431797, -0.000296918, 0.0358796, 0.008409, -0.00268351, 0.00142341, 0.00568496, -0.0108786, + 0.0195995, -0.0126412, -0.00397137, -0.0555884, -0.0784971, -0.0597657, -0.0585952, 0.0198854, + 0.0126553, 0.00987017, 0.0327971, 0.0833251, -0.056956, 0.00482448, -0.0888221, -0.0391884, + 0.00604851, -0.0422404, 0.018202, -0.0393439, -0.0328196, 0.0128808, -0.0127062, -0.00770134, + 0.0174057, -0.000154238, 0.0580039, 0.0105996, 0.0157576, 0.00279355, -0.00245585, -0.0194335, + -0.0369786, -0.0469248, -0.0701926, -0.0262929, 0.0327062, 0.0339589, -0.107627, -0.0730288, + -0.0497255, -0.00274556, -0.00571666, 0.00199734, 0.118007, 0.187527, 0.119406, 0.121708, + -0.0460156, 0.0219804, 0.101336, 0.0297406, -0.0288209, -0.0271647, 0.0616006, 0.00549581, + -0.028321, 0.0337983, -0.0899367, -0.00204601, 0.0646373, 0.0246665, 0.0286556, 0.00891863, + -0.0028117, -0.0149953, -0.054518, -0.0618125, -0.0563932, -0.00104922, 0.0134293, 0.0280059, + 0.0100872, 0.06537, -0.0498383, 0.0421938, -0.035882, -0.147703, -0.0233133, 0.0658052, + 0.0474915, 0.0739941, 0.0786827, 0.0564951, -0.02181, -0.00229185, -0.0427148, 0.0286327, + -0.00609921, -0.00512322, 0.064053, 0.0320087, -0.038672, -0.0297259, -0.0794662, 0.0292339, + 0.0574906, -0.018566, 0.000277248, -0.022751, -0.0198875, -0.0358639, 0.0158873, -0.010142, + 0.00182329, 0.00359756, 0.00435788, 0.0295796, 0.119456, 0.0263023, 0.0204098, 0.0114169, + -0.00193841, 0.0140433, 0.0570422, 0.0294554, -0.00820023, 0.0369345, -0.0367783, -0.0726929, + -0.0276336, -0.0243189, -0.0442886, -0.0407286, 0.0464547, 0.0672728, 0.100168, -0.0297279, + 0.00504735, -0.0173015, -0.0461166, 0.0336461, 0.0311748, -0.0196721, 0.0684134, -0.0403563, + -0.000164238, 0.0157417, 0.00717819, -0.011704, -0.0501911, -0.00318851, -0.0127978, -0.0111662 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p59(hatfit_yaw00_lev0_p59); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p59_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p60.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p60.mh new file mode 100755 index 0000000..a99e716 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p60.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p60.mh: + +#ifndef stasm_hat_yaw00_lev0_p60_mh +#define stasm_hat_yaw00_lev0_p60_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p60(const double* const d) // d has 160 elements +{ + const double intercept = -0.236764; + const double coef[160] = + { + -0.00197245, 0.0128451, 0.0198147, 0.020576, -0.007079, -0.00636769, -0.0107469, -0.0493139, + -0.00569941, -0.0404362, 0.00276896, 0.00676751, 0.0438855, 0.140103, -0.0323757, 0.00516079, + -0.0529855, -0.0644861, -0.0442911, 0.0134652, -0.0194564, 0.021188, -0.0498812, -0.0232742, + -0.0102817, -0.1061, -0.0475803, -0.0172933, -0.00412755, 0.0293299, -0.0483678, 0.0282573, + 0.0827001, 0.148713, -0.00604033, -0.0105001, -0.0578514, 0.000328193, -0.118422, 0.0590516, + -0.0340966, 0.017112, -0.0161368, 0.049901, -0.0273938, -0.0929948, -0.124842, 0.069677, + 0.0378484, -0.0246342, -0.0179167, 0.0288639, 0.0721973, -0.107982, 0.0721401, 0.00446476, + 0.0765287, 0.109693, 0.0438368, 0.00040456, -0.00192336, 0.0528666, 0.0540516, 0.0657683, + -0.0428629, 0.0369003, 0.00763569, 0.0349373, -0.0146549, 0.111163, 0.152429, 0.0106377, + -0.0524489, 0.033647, 0.0669536, -0.0643599, -0.00796976, 0.0028909, 0.0133357, -0.030029, + 0.00393491, 0.053272, -0.000150223, 0.0442013, -0.0158533, -0.000621834, 0.0630153, -0.0181138, + 0.0168663, 0.0786882, 0.00852558, -0.00702952, -0.0766786, 0.116086, -0.00451059, -0.0183954, + -0.0689788, -0.0650831, -0.0742779, -0.0810078, -0.0297897, -0.00660032, 0.0415835, 0.0561212, + -0.0346848, -0.00160062, 0.0299663, -0.0098611, 0.00271499, -0.0827654, -0.0378623, 0.00499992, + 0.0139898, -0.0581541, -0.0315072, 0.00862046, 0.0442725, -0.0501002, 0.00183363, -0.0595284, + 0.0526538, 0.00426772, 0.0430322, 0.0451649, -0.0406563, 0.028459, -0.0120121, 0.0366126, + -0.0309153, -0.0141049, -0.0338174, -0.0518742, 0.00102668, -0.061806, -0.0272608, 0.0100434, + 0.0751594, -0.0403936, 0.00526156, 0.0525223, -0.00413169, 0.0437875, -0.00235025, -0.020801, + -0.0201232, 0.0186407, 0.00730079, -0.0170785, 0.0286837, 0.0694106, -0.0285483, -0.000623372, + 0.0268898, 0.0308178, 0.074486, 0.0490596, -0.0225366, -0.0159021, 0.0305269, 0.0645906 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p60(hatfit_yaw00_lev0_p60); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p60_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p61.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p61.mh new file mode 100755 index 0000000..2f11e84 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p61.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p61.mh: + +#ifndef stasm_hat_yaw00_lev0_p61_mh +#define stasm_hat_yaw00_lev0_p61_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p61(const double* const d) // d has 160 elements +{ + const double intercept = -0.28026; + const double coef[160] = + { + -0.0146942, -0.0055333, -0.0110751, 0.0521485, -0.0730841, 0.0291341, -0.037805, 0.010414, + 0.0234376, -0.0283204, -0.0472401, -0.0149803, -0.0338863, -0.00567664, -0.0529659, -0.0349243, + -0.00565509, 0.014049, -0.0388688, -0.0136404, 0.0126807, 0.0518957, -0.107478, 0.0383288, + 0.0252085, -0.0277018, -0.0478312, -0.0425131, 0.0291863, 0.00722947, 0.00927027, 0.0614206, + -0.0504781, 0.0182626, 0.0361532, -0.00574793, -0.0819782, 0.0321892, -0.0593218, -0.00448104, + 0.0320681, -0.0672482, 0.00516844, -0.0288856, 0.0611246, -0.0562171, 0.0165429, 0.0222913, + 0.0545127, 0.110174, 0.0540339, -0.0210936, -0.0159477, 0.0348006, -0.00998912, -0.0310053, + 0.0824834, -0.0182082, 0.0720612, 0.0534534, 0.0301741, -0.0284705, 0.137449, 0.00763148, + 0.0119775, -0.0384825, -0.0159306, 0.103958, 0.0538981, 0.0458337, 0.0763992, 0.0215485, + 0.0663792, 0.0107496, 0.0704059, -0.0504434, 0.0498079, -0.0470876, -0.0977784, -0.0779998, + -0.061815, 0.109146, 0.049255, 0.0042884, -0.0277765, 0.0857249, 0.124497, -0.00507932, + -0.0778694, -0.00651398, -0.0368312, -0.0432394, -0.00962921, 0.0262905, -0.0947112, 0.00602868, + -0.0622544, 0.00394355, 0.00617383, -0.0185923, -0.0552712, 0.0355191, -0.0326985, 0.0470317, + -0.0660571, -0.107443, -0.0668645, 0.0921773, 0.00600866, -0.111141, 0.0130448, 0.10503, + 0.00641894, -0.0304865, 0.127048, -0.0691013, 0.00550339, 0.027669, 0.114193, -0.0184766, + -0.0207632, -0.022765, 0.00904602, 0.00746773, 0.00599841, -0.00488869, -0.0534582, 0.0515307, + 0.0621438, 0.0187851, -0.0190282, 0.0501474, 0.0356681, -0.0386146, 0.0776663, -0.0113139, + 0.000161987, 0.0669283, 0.0548343, -0.00490547, -0.00534426, 0.0128642, 0.0401569, -0.0392736, + 0.0341419, -0.0508964, 0.0400578, -0.0308971, -0.035214, 0.00668947, -0.0767097, -0.0184894, + 0.0234721, 0.0166095, -0.111842, 0.0298985, 0.0129837, 0.069013, 0.00071445, 0.00835605 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p61(hatfit_yaw00_lev0_p61); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p61_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p62.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p62.mh new file mode 100755 index 0000000..eece009 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p62.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p62.mh: + +#ifndef stasm_hat_yaw00_lev0_p62_mh +#define stasm_hat_yaw00_lev0_p62_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p62(const double* const d) // d has 160 elements +{ + const double intercept = -0.271217; + const double coef[160] = + { + 0.07948, 0.0437671, -0.0697943, 0.0119323, 0.0803141, 0.0932291, -0.09037, 0.0235767, + 0.00692423, -0.02589, 0.00495027, -0.0709938, -0.0677818, 0.0179643, 0.0101921, 0.0649224, + -0.0411595, 0.00562571, 0.0160733, 0.0165855, -0.0296651, -0.0320628, -0.128681, -0.0818367, + -0.0792844, -0.0413823, -0.000823847, 0.0110478, -0.0163832, 0.0231477, -0.0114021, 0.0520293, + 0.0577327, -0.0142028, -0.0675647, -0.0131133, 0.123754, 0.0369976, -0.0699567, 0.0929937, + -0.0545821, 0.0223352, 0.0326399, 0.00969172, -0.00425451, -0.00738795, 0.0776847, 0.0719315, + -0.0454727, -0.0823952, 0.00202134, 0.187556, 0.0873943, -0.0331156, 0.0474275, 0.0652721, + 0.0871686, -0.0484912, 0.120176, -0.0901076, 0.0364221, -0.0146413, -0.0385369, 0.0150759, + 0.0713851, 0.182518, -0.0132574, -0.0752734, -0.0595784, 0.0718288, 0.00931915, -0.0419838, + -0.0280534, 0.00628631, 0.0608759, 0.0500026, -0.0698966, 0.0283689, 0.108946, -0.0188968, + -0.0163942, 0.037053, 0.0289468, -0.033291, -0.0470211, 0.0418033, -0.041566, -0.0909216, + 0.0202262, -0.0895422, -0.0224228, -0.00758196, 0.00209972, -0.117618, -0.000201107, 0.0590209, + -0.0064056, -0.0313781, 0.0172467, -0.0636675, 0.0173885, 0.0650841, 0.106798, 0.0107954, + 0.000448156, -0.024564, -0.020756, -0.0362784, -0.00762973, 0.0272557, 0.0276844, -0.0909399, + 0.00735028, -0.0482779, 0.0332156, 0.0249625, 0.0114111, -0.088243, -0.0682508, 0.000282023, + 0.00690359, 0.0275026, 0.0680446, -0.0160326, 0.0227741, 0.011287, 0.0351742, 0.00275973, + -0.0225988, 0.0197895, -0.0193274, 0.0366129, -0.0533131, -0.00670991, -0.0447927, 0.00376718, + 0.0436822, 0.00625437, -0.0415818, 0.0150441, 0.0643689, 0.0633671, 0.0297409, 0.0607006, + -0.0610927, 0.0138872, -0.0109572, -0.000487174, -0.022088, 0.00549297, -0.0392257, 0.00331464, + 0.0412751, 0.0156284, 0.056929, 0.0353357, 0.042054, -0.00746676, 0.0248742, 0.0126526 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p62(hatfit_yaw00_lev0_p62); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p62_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p63.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p63.mh new file mode 100755 index 0000000..8c36743 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p63.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p63.mh: + +#ifndef stasm_hat_yaw00_lev0_p63_mh +#define stasm_hat_yaw00_lev0_p63_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p63(const double* const d) // d has 160 elements +{ + const double intercept = -0.180203; + const double coef[160] = + { + -0.0410927, -0.0257476, 0.0247765, 0.0347137, -0.021933, -0.0191296, -0.0465093, -0.0169094, + 0.0157761, -0.0390968, 0.0212151, -0.00466446, -0.00205661, 0.0565016, -0.0148909, 0.018339, + 0.0162372, -0.055823, -0.0878698, -0.0162096, 0.0287148, 0.0608344, -0.066679, 0.0270371, + -0.0622496, 0.0136787, -0.020422, -0.0158276, 0.00384923, -0.00560402, -0.0924711, 0.0254943, + -0.0938038, -0.00561036, -0.0438589, -0.0316654, -0.00692676, -0.00927567, -0.0349891, 0.0142371, + 0.0645674, -0.0537472, 0.0751499, -0.0283343, 0.0197518, -0.052364, -0.0677131, 0.00644532, + 0.0540218, 0.157756, -0.0435248, -0.0764782, 0.00166934, -0.0446328, 0.0366324, -0.00347119, + 0.0254115, 0.0612711, 0.100355, 0.0159177, 0.0953288, -0.00978288, 0.141379, 0.0205209, + 0.0541199, -0.042183, 0.0197066, 0.0512104, 0.0304227, 0.00089267, 0.0369377, 0.01988, + 0.0706556, 0.0182494, 0.0374609, -0.0366347, 0.0266579, -0.0197925, -0.0292716, -0.0187394, + -0.00673662, -0.0594272, 0.153993, -0.0569537, 0.00920547, 0.0104516, 0.101565, -0.0152649, + -0.034038, 0.0627083, -0.083143, -0.0873399, -0.0747769, 0.139222, 0.0307688, -0.112774, + -0.0104088, -0.0486825, 0.0213907, 0.0442054, -0.0752944, 0.0140747, -0.0176173, -0.0142793, + -0.0238698, -0.0508371, -0.0657885, 0.00397604, -0.0596904, 0.0198334, -0.119394, 0.0395842, + -0.0328248, -0.0113403, 0.0446755, 0.121346, -0.0474904, 0.00498587, 0.11635, 0.0451392, + 0.0241854, 0.079017, -0.0800126, 0.0116945, 0.0166996, 0.0367649, -0.0166098, 0.081991, + -0.051179, -0.0321827, 0.00834609, -0.0470143, 0.00398131, -0.0172868, -0.0708671, 0.0394914, + 0.0219069, -0.0114561, 0.0628756, 0.0394551, 0.0233882, -0.0586699, -0.0132243, -0.00531203, + 0.00143426, 0.0614334, -0.00182969, -0.00755107, 0.0506033, 0.0271987, 0.0995763, 0.0116256, + 0.0263639, 0.0079182, -0.00226031, -0.0342182, -0.000624975, -0.00309827, -0.0204641, -0.0322109 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p63(hatfit_yaw00_lev0_p63); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p63_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p64.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p64.mh new file mode 100755 index 0000000..4caa5c9 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p64.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p64.mh: + +#ifndef stasm_hat_yaw00_lev0_p64_mh +#define stasm_hat_yaw00_lev0_p64_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p64(const double* const d) // d has 160 elements +{ + const double intercept = -0.207531; + const double coef[160] = + { + -0.033128, -0.0316819, -0.0274924, 0.113993, 0.0858719, 0.0840909, -0.0868366, 0.0411405, + 0.0394788, 0.000950094, -0.00405899, -0.136485, -0.042866, -0.0107319, -0.0916283, -0.0320452, + -0.0305096, -0.00274163, -0.0261214, 0.00232638, -0.0393149, -0.00498823, -0.092735, 0.0366293, + -0.000545152, -0.00643406, -0.0317974, -0.0718109, -0.00255608, -0.0264166, 0.0157071, 0.0915263, + 0.0210131, -0.0107084, -0.00220488, 0.0351367, -0.0134759, 0.0243626, -0.0268685, -0.0108653, + -0.053215, -0.0525043, 0.00623991, 0.0217246, -0.0963558, -0.0670036, 0.0239302, 0.0214107, + -0.017606, 0.0426757, 0.0247713, 0.0735639, 0.021345, 0.0211247, 0.106267, 0.0829704, + 0.0515325, 0.0408728, 0.0601377, 0.101535, 0.0585454, 0.0716723, 0.109444, 0.0995805, + 0.0351164, 0.0664315, -0.0282609, -0.0103504, -0.0241923, 0.0307811, 0.0258399, -0.0550516, + 0.00864579, -0.00781669, 0.0238672, 0.000106582, 0.0113016, 0.0243508, -0.0842214, -0.0762506, + 0.0182182, -0.0119602, -0.0264737, -0.0444391, 0.0344863, -0.0405479, -0.00162291, -0.0734995, + 0.00789368, -0.0103634, 0.0473715, -0.0154205, -0.034351, 0.0215, -0.00958682, -0.0979013, + -0.0181511, -0.0946609, -0.101828, -0.0381887, -0.0633759, 0.0191792, 0.0112755, -0.0239655, + -0.0306826, -0.0632444, 0.0360317, 0.0710809, 0.0437091, -0.0203178, 0.0361068, 0.0929631, + -0.076424, 0.0819842, -0.0309505, 0.047973, -0.0424526, 0.0338694, 0.0185222, 0.00843244, + 0.0376399, 0.041092, 0.0594528, 0.0496896, 0.00222466, 0.0351351, 0.0396065, -0.0459489, + 0.026083, -0.00124059, -0.015927, -0.00203473, -0.0229173, 0.00113677, -0.0245556, 0.107057, + 0.0154908, 0.0506957, 0.048926, -0.0167151, 0.0701904, -0.0198818, -0.00706607, 0.0118937, + -0.0191824, -0.0380844, -0.0556689, -0.0440834, -0.020524, 0.00635039, -0.032976, -0.0442438, + -0.0123783, 0.0377041, 0.0446001, 0.0134392, 0.0538809, 0.0212788, 0.00813239, 0.0330974 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p64(hatfit_yaw00_lev0_p64); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p64_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p65.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p65.mh new file mode 100755 index 0000000..3ec6c56 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p65.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p65.mh: + +#ifndef stasm_hat_yaw00_lev0_p65_mh +#define stasm_hat_yaw00_lev0_p65_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p65(const double* const d) // d has 160 elements +{ + const double intercept = -0.143152; + const double coef[160] = + { + -0.000286311, -0.0237091, 0.00654515, -0.0550482, 0.00899456, -0.00353427, -0.0245149, 0.0134402, + -0.0774627, 0.0655919, 0.024402, -0.00462556, 0.0161056, -0.0320729, -0.0753361, 0.0126208, + -0.0406398, -0.0734501, 0.0243135, 0.00344451, 0.0124271, 0.0180368, -0.0632595, -0.0687805, + 0.011205, 0.0302186, 0.0262058, 0.00157304, 0.0390769, -0.00406096, 0.0273026, -0.0214496, + -0.00696482, -0.0167816, 0.00575971, 0.0127361, 0.0116785, 0.0285786, 0.0533964, 0.00789849, + 0.0463291, -0.0202002, -0.101443, -0.00188055, -0.0173454, -0.0238705, 0.0188397, 0.0175033, + -0.0284, 0.0416554, 0.0853441, 0.0309533, -0.0556561, 0.0124151, 0.0865916, -0.0506604, + 0.109722, 0.0424092, 0.00918329, -0.00578952, -0.0007513, 0.0558005, 0.102237, 0.237243, + 0.0383076, -0.0679934, -0.05276, -0.0470209, -0.104275, -0.0558653, -0.133914, 0.0511671, + 0.0180664, 0.0703407, 0.0093473, 0.0298243, 0.00151214, 0.0173337, 0.00713504, -0.00277523, + -0.036956, -0.00500627, -0.0229341, 0.0067312, 0.0482077, 0.012866, 0.0286959, -0.0228643, + -0.0174358, -0.00667265, 0.0459571, -0.0280541, -0.0347717, 0.00588267, -0.0958254, -0.0368828, + 0.0120706, 0.0685828, 0.0962024, 0.0748733, 0.0521348, 0.0858317, 0.00481773, -0.0132377, + -0.0462166, 0.0213407, -0.0365172, 0.0343196, 0.0448256, 0.0427066, -0.019736, -0.118236, + -0.0141359, -0.0486069, -0.036809, -0.0121779, -0.0232052, -0.00218179, 0.00755801, -0.0580209, + -0.0717068, 0.00415419, -0.0105233, 0.0246165, 0.00261025, 0.0065218, -0.000684385, 0.0136906, + 0.033893, 0.027067, -0.0379673, -0.0220513, -0.00640306, -0.0321068, 0.0454, -0.0263831, + -0.0279441, -0.0271368, -0.0605881, -0.0133898, 0.0222441, -0.0607897, 0.0663066, 0.10038, + 0.00498077, -0.00812369, 0.0471056, 0.000852444, -0.019487, -0.0321976, -0.0368678, 0.0336526, + 0.0585364, 0.0560496, 0.0185826, 0.0396382, 0.00556292, 0.0173752, 0.025127, 0.0257464 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p65(hatfit_yaw00_lev0_p65); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p65_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p66.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p66.mh new file mode 100755 index 0000000..d6a86b4 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p66.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p66.mh: + +#ifndef stasm_hat_yaw00_lev0_p66_mh +#define stasm_hat_yaw00_lev0_p66_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p66(const double* const d) // d has 160 elements +{ + const double intercept = -0.264245; + const double coef[160] = + { + 0.105423, 0.0250395, -0.0610042, -0.0632526, -0.0405873, 0.149311, 0.0869565, 0.00829349, + -0.106012, 0.0254513, 0.0131773, 0.0647007, 0.00311146, -0.11239, -0.124436, 0.044122, + -0.0636883, 0.0221304, 0.038259, -0.00982186, 0.0813538, 0.000544199, -0.0495225, 0.0629233, + 0.0397194, 0.0230735, -0.0373231, 0.0198998, 0.0159334, 0.0448534, 0.134983, 0.104022, + 0.0661515, 0.0830687, 0.0293778, 0.0503456, 0.0448213, -0.0602775, 0.0503223, -0.0380878, + -0.00475375, -0.102519, -0.0687663, -0.0203904, -0.0280857, -0.0199738, -0.00843925, 0.0229027, + 0.0538909, 0.0104606, 0.0381393, 0.0571157, -0.0524618, -0.0204459, 0.0850965, -0.141019, + 0.0255757, -0.0532138, 0.0393097, -0.0326556, -0.0932934, 0.000714883, 0.0276072, -0.0689127, + -0.0566448, -0.0653501, -0.0616226, -0.0266183, -0.0185097, 0.010418, 0.00249784, -0.121397, + -0.123183, -0.0583139, -0.0591132, -0.026624, -0.0316232, 0.0754298, -0.024706, 0.00772637, + -0.0517452, 0.0624565, 0.0709369, 0.0788277, 0.0575006, 0.017722, 0.052472, -0.0371272, + -0.00991468, 0.0440494, 0.0195742, -0.0125498, 0.0931939, 0.0432486, -0.0229649, 0.0559666, + 0.00655715, 0.0349329, 0.0331465, 0.0612565, 0.00962413, 0.0242452, -0.0711512, 0.0750211, + 0.0859558, 0.0567727, 0.0351297, -0.0205731, 0.0858068, -0.0312985, 0.00804152, 0.154974, + 0.0242804, -0.0312061, 0.00407329, 0.027091, 0.0231395, -0.0288244, 0.0297562, 0.0235212, + -0.0152795, -0.0342731, -0.0325666, -0.0405934, -0.0165485, -0.0359246, 0.00538538, -0.0435186, + 0.00749711, 0.0485212, 0.0152491, 0.0424519, 0.00143966, 0.0216619, 0.0425046, 0.00467269, + 0.0144322, -0.0303874, -0.0142711, -0.0527349, -0.0467323, -0.0133392, 0.0118945, -0.062975, + -0.016459, 0.011253, -0.0130742, 0.00157675, -0.0177446, 0.0330739, 0.0121581, -0.00597341, + -0.0857059, 0.0488412, -0.0261425, -0.00176804, 0.00792429, -0.0248687, -0.0328186, -0.00667314 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p66(hatfit_yaw00_lev0_p66); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p66_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p67.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p67.mh new file mode 100755 index 0000000..bc3c886 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p67.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p67.mh: + +#ifndef stasm_hat_yaw00_lev0_p67_mh +#define stasm_hat_yaw00_lev0_p67_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p67(const double* const d) // d has 160 elements +{ + const double intercept = -0.201401; + const double coef[160] = + { + -0.0881045, -0.0159495, 0.0173025, -0.0245041, 0.00117607, 0.0134409, -0.121019, -0.0165485, + -0.101617, -0.0546822, -0.0602906, 0.0789577, 0.13855, -0.113925, 0.0529473, 0.144175, + 0.112782, 0.021363, 0.0852604, -0.0533965, 0.103641, 0.0897197, 0.0480358, 0.0900049, + 0.160868, 0.0670096, -0.0828505, 0.00846669, -0.182177, 0.125791, 0.0721693, -0.155017, + -0.00397662, -0.0340865, 0.0104898, -0.0306927, -0.0616536, -0.0601507, -0.11105, -0.0377829, + -0.00016922, 0.0909498, 0.030216, 0.0051035, -0.0330505, 0.0417029, 0.0853449, -0.0296023, + 0.0593811, -0.0135493, 0.0233125, -0.0604536, -0.0701937, -0.0893642, -0.0799006, -0.00377828, + -0.110502, -0.0514702, -0.153871, -0.047958, -0.0469122, 0.0287942, 0.0797622, -0.0134567, + -0.0727119, -0.0687146, 0.00297959, -0.0110139, 0.0546135, -0.0102605, -0.081405, -0.0535832, + -0.00194179, 0.0272851, 0.0518762, 0.0507627, 0.0127016, -0.0181971, 0.0587454, 0.0477735, + 0.0462638, -0.000154786, -0.00555463, -0.0748188, 0.0664553, -0.00191742, -0.00897075, 0.0407636, + -0.0277267, -0.0141191, 0.0317961, 0.133582, 0.0204592, 0.0174013, 0.0181355, -0.0043058, + 0.0930437, 0.0815108, 0.0582352, 0.0791265, 0.0490144, 0.0516564, 0.0108075, 0.0756966, + 0.0150035, 0.116522, 0.0520821, -0.0173084, 0.00483679, -0.0236609, 0.0314996, -0.0209577, + 0.0197921, -0.0795259, -0.00875416, 0.0254668, 0.0580259, 0.0105996, -0.0100798, -0.00627572, + -0.0149854, 0.00413062, -0.00806864, 0.0667293, -0.0600582, -0.0361054, 0.0524902, -0.0694921, + -0.0260005, -0.0291485, -0.00116718, -0.0293204, 0.0320325, -0.00541632, 0.0018549, -0.0255409, + 0.00509329, -0.0419239, 0.0179005, -0.0208095, -0.00041907, 0.0367612, 0.0265514, 0.0308186, + -0.0113155, -0.0417062, 0.0125462, -0.060525, 0.00673506, -0.045987, -0.0128356, 0.0174284, + -0.0196561, 0.0675984, -0.0253421, 0.00707463, -0.0362088, -0.0328649, 0.0243431, -0.0284124 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p67(hatfit_yaw00_lev0_p67); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p67_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p68.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p68.mh new file mode 100755 index 0000000..1aff8c0 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p68.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p68.mh: + +#ifndef stasm_hat_yaw00_lev0_p68_mh +#define stasm_hat_yaw00_lev0_p68_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p68(const double* const d) // d has 160 elements +{ + const double intercept = -0.366819; + const double coef[160] = + { + 0.0265988, 0.0422833, 0.0257911, 0.0940722, 0.0569731, -0.00683419, -0.00532943, -0.0481013, + 0.075403, -0.00586177, -0.0225342, 0.0270272, 0.0270536, 0.0987389, 0.17904, 0.0286668, + 0.0332613, -0.00952983, 0.0119567, 0.0634839, -0.114182, 0.0483356, -0.00365111, -0.0290702, + 0.0756261, 0.0836779, 0.0284609, 0.0672962, -0.0136538, 0.0226978, -0.162384, -0.101798, + -0.103907, -0.0847535, -0.0652039, -0.000123264, 0.0424502, 0.0280952, 0.0818747, 0.17767, + 0.0291844, -0.0122052, -0.0544559, -0.04496, -0.161327, -0.0261948, 0.00837554, 0.0650585, + -0.0668893, -0.0212703, -0.0280788, -0.046825, 0.00695247, -0.121246, -0.0319339, 0.0054284, + -0.08896, -0.0661071, 0.025606, -0.0937221, 0.0402066, -0.0313304, 0.017649, -0.00397465, + -0.0401745, 0.0450826, 0.036861, 0.00084662, 0.0161449, -0.0981567, 0.10534, -0.012338, + -0.0564347, 0.0273505, -0.0852879, -0.0861725, 0.0234222, 0.0111968, 0.00116681, -0.00855638, + -0.0180932, 0.0127588, -0.0008401, -0.017225, 0.0354398, 0.0799972, 0.0278698, 0.00090194, + 0.104746, -0.00859931, 0.0482387, 0.0487455, 0.0351351, 0.128883, -0.02642, -0.0412762, + 0.0132593, 0.0812826, 0.0249021, 0.0663549, 0.00150147, 0.0557049, -0.0253372, 0.0509795, + 0.113438, -0.0154634, 0.0151967, 0.0184742, 0.00669164, 0.0452139, -0.0379432, 0.0259188, + 0.0535734, 0.0389962, 0.0877447, 0.0640894, -0.021027, -0.0615535, 0.0623233, -0.00185305, + 0.0353014, 0.014966, -0.0394086, 0.0677529, -0.0906169, -0.0144034, -0.0309466, -0.0348344, + -0.0252674, -0.00731876, 0.00124836, -0.0060929, 0.0352, -0.0123261, 0.0251895, 0.00570397, + -0.0257178, -0.0356001, -0.0161276, -0.00710459, -0.0284079, -0.0470061, 0.019277, -0.00442789, + -0.0194509, 0.0373907, 0.019379, 0.0197296, 0.0339624, 0.042812, -0.00204877, 0.0523138, + -0.0316774, -0.0226597, -0.0414849, -0.030228, -0.0839737, -0.0468238, 0.0299754, -0.0304553 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p68(hatfit_yaw00_lev0_p68); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p68_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p69.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p69.mh new file mode 100755 index 0000000..9019d3b --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p69.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p69.mh: + +#ifndef stasm_hat_yaw00_lev0_p69_mh +#define stasm_hat_yaw00_lev0_p69_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p69(const double* const d) // d has 160 elements +{ + const double intercept = -0.0235694; + const double coef[160] = + { + 0.0157275, 0.0595965, -0.0596587, 0.0635081, -0.0475996, 0.0276333, 0.0193975, -0.046948, + 0.0491686, -0.0106414, -0.0608392, 0.0076236, 0.0257097, 0.00689927, -0.00996926, -0.045825, + 0.00871685, -0.0241948, -0.0769836, -0.0137563, -0.0558283, -0.0257147, 0.0111846, -0.04479, + 0.0421523, 0.0334814, -0.0373457, 0.0838478, 0.00333984, -0.0309919, 0.00635941, 0.00564024, + 0.0046414, -0.0576283, 0.0379127, -0.00214163, -0.0531581, -0.0645105, -0.0277282, -0.015285, + 0.00857075, -0.0368841, 0.111707, 0.0444414, 0.0211478, -0.0334628, -0.0113917, 0.0158463, + 0.00941716, 0.0464516, 0.028282, 0.0508962, 0.0324731, 0.0682221, -0.0276964, 0.0320847, + -0.0385254, 0.0390322, 0.0216306, 0.0454043, 0.0359194, 0.0554051, 0.0730122, 0.0707507, + 0.00743874, -0.00080601, 0.0767604, -0.0117089, 0.10289, 0.0336405, 0.0189019, 0.0264799, + 0.00698227, -0.0138434, -0.0199559, -0.0407247, 0.0306866, 0.0103405, 0.0152181, 0.0138726, + -0.0465463, 0.0774723, -0.115569, -0.135806, -0.0749939, -0.020169, -0.0367089, -0.0027143, + 0.00262592, 0.0441086, 0.0400943, -0.074707, -0.103109, 0.00973179, 0.0350437, 0.0284099, + -0.0114075, -0.0146917, -0.0137825, 0.000117489, -0.0174022, -0.107906, -0.093023, -0.0312372, + -0.0152043, 0.0238037, 0.00176124, 0.0203291, -0.0639984, -0.0150513, -0.0533567, -0.0584983, + 0.0164656, -0.0642854, 0.0427559, -0.00637837, -0.0613465, -0.000748343, 0.0532175, 0.0446602, + 0.0211722, -0.0500968, -0.0115394, 0.0925451, -0.0917189, 0.0622838, 0.0386122, -0.0534624, + -0.0458546, -0.0504498, -0.00742409, 0.0829684, 0.0653468, -0.00653145, 0.0083576, 0.00584087, + 0.079808, -0.0168975, 0.0654734, -0.0204593, 0.00455287, 0.0698388, -0.0102542, 0.0424194, + 0.068932, 0.042975, 0.0329605, 0.0476639, -0.0134457, -0.0256802, -0.0186145, 0.044146, + -0.0985241, 0.0584528, -0.106737, -0.0248772, 0.0203297, 0.0105023, -0.000230355, -0.0181478 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p69(hatfit_yaw00_lev0_p69); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p69_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p70.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p70.mh new file mode 100755 index 0000000..337b9cf --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p70.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p70.mh: + +#ifndef stasm_hat_yaw00_lev0_p70_mh +#define stasm_hat_yaw00_lev0_p70_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p70(const double* const d) // d has 160 elements +{ + const double intercept = -0.208107; + const double coef[160] = + { + -0.00090055, 0.0546353, -0.0353788, 0.0154411, 0.0461907, -0.0491188, 0.0255463, -0.061678, + -0.0905312, -0.0408981, 0.0243486, -0.00448642, 0.0615633, -0.0409042, 0.0100977, -0.0126759, + 0.0350348, 0.0482091, -0.0753787, 0.0393433, 0.0528379, 0.0734246, -0.0263055, 0.0600362, + 0.0844456, -0.0306354, 0.0404791, -0.0176906, -0.133512, -0.0444668, 0.0573155, -0.0923998, + 0.0402414, 0.0141444, -0.0884436, 0.0810977, 0.00394053, -0.0445629, -0.0137841, -0.0462869, + 0.0587841, -0.00784728, 0.160068, 0.0536743, -0.00105336, -0.0637323, 0.0228582, 0.0581576, + 0.0414334, -0.0591198, -0.0652672, 0.0325394, -0.0509275, 0.0566555, -0.0633668, -0.015004, + 0.0343738, 0.00681077, 0.13518, -0.00132052, 0.0552101, 0.113455, 0.0716647, 0.137793, + -0.0711568, 0.0375828, -0.114079, -0.0939074, 0.0794876, 0.00356609, -0.0332021, 0.0486825, + -0.0143532, 0.0479114, 0.204395, -0.0319091, 0.0330645, 0.0616266, 0.00535451, -0.0244284, + -0.0646636, 0.0534692, -0.0951234, -0.111246, -0.00782859, -0.0124274, 0.013598, -0.0354386, + -0.00514551, -0.00998647, 0.00259819, 0.0383539, -0.0459996, -0.0789813, 0.0373038, 0.0766178, + 0.0184934, 0.035324, 0.0803344, 0.0411303, -0.000934144, -0.104175, -0.104083, -0.12536, + -0.0699303, -0.0328611, 0.010585, -0.023808, 0.00312656, 0.0726762, 0.0412183, -0.0274672, + 0.0149099, -0.0854293, -0.100815, 0.0827587, -0.0855814, -0.0453423, 0.00369089, -0.0200102, + -0.00217706, 0.0269608, -0.00400051, 0.0414681, 0.0356021, 0.0320039, 0.0540607, 0.0635866, + -0.0708449, -0.093044, 0.0166431, -0.0295871, 0.0306138, 0.106118, -0.0199366, -0.0138666, + 0.0728293, 0.0302307, 0.0482031, -0.0142578, 0.0337804, 0.0060773, -0.0849183, 0.0025265, + 0.0572282, 0.014886, -0.00333623, -0.0345345, -0.107297, -0.0192294, 0.0171171, 0.0657279, + -0.0415838, 0.0332244, -0.0152006, -0.0208666, 0.03549, 0.0644878, 0.0141499, 0.0639319 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p70(hatfit_yaw00_lev0_p70); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p70_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p71.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p71.mh new file mode 100755 index 0000000..f7a82e4 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p71.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p71.mh: + +#ifndef stasm_hat_yaw00_lev0_p71_mh +#define stasm_hat_yaw00_lev0_p71_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p71(const double* const d) // d has 160 elements +{ + const double intercept = 0.0698267; + const double coef[160] = + { + -0.0200288, -0.0163994, 0.00994213, -0.0698051, -0.00414008, 0.0196422, -0.0132616, -0.0451151, + -0.0124583, 0.0988861, -0.0118251, 0.0288329, 0.00697295, -0.0204967, -0.0120209, -0.0568172, + -0.0358924, -0.0345258, -0.0686744, -0.000438436, -0.00517731, -0.0174085, 0.020691, -0.00452087, + 0.0141913, 0.0146745, -0.0597051, 0.0192343, 0.0303402, -0.0463564, -0.0194576, 0.0200466, + -0.0120258, 0.0203184, -0.0742359, 0.0438837, 0.0250272, -0.0430251, 0.0124393, -0.00223631, + -0.00443001, -0.00523121, -0.0490806, 0.0151531, 0.00304319, 0.0202574, 0.0120723, 0.0318208, + 0.1207, -0.0102639, 0.0681297, 0.00855108, 0.0321497, 0.00370784, 0.0398762, 0.00901874, + 0.0282995, 0.0396389, 0.0293478, 0.0184235, -0.0421145, 0.047603, 0.0589986, 0.0351678, + 0.065488, 0.0587881, 0.078464, 0.00756936, 0.046488, 0.0367089, -0.0232447, 0.0488474, + -0.0169958, 0.0366896, 0.0639427, -0.0333131, -0.00991654, 0.0200464, -0.00502049, -0.0337808, + -0.0333508, -0.0480539, 0.0339036, -0.102951, 0.0270207, 0.02789, 0.0507616, 0.0237684, + -0.0870788, 0.0672588, 0.00449247, 0.0475066, -0.0786955, -0.00682842, -0.0566759, -0.0170057, + -0.0412962, -0.0262738, -0.0156516, 0.000616457, -0.0120349, -0.0394508, -0.100801, -0.0830153, + -0.105829, -0.102891, 0.0328339, 0.0607407, -0.00722797, 0.0164441, 0.00877309, 0.0245608, + -0.0109281, -0.101967, -0.104317, 0.0860415, -0.0388299, 0.000115164, -0.00398764, -0.0238968, + 0.0448415, -0.0490259, -0.100597, 0.059111, -0.112485, 0.0116358, 0.0455271, -0.0101805, + -0.00850974, 0.0358312, 0.0160862, 0.0614424, 0.0915865, 0.0347102, -0.078669, -0.0139659, + 0.0393752, 0.0258584, 0.0706141, 0.0019399, 0.0319341, 0.0374976, 0.0242137, 0.0339497, + 0.0130769, 0.0754179, 0.00032229, -0.0798778, -0.0122108, -0.0145513, -0.0131137, -0.0151994, + -0.106024, 0.0678356, -0.0428864, -0.066365, -0.00996696, -0.0496478, 0.0602081, 0.0379822 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p71(hatfit_yaw00_lev0_p71); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p71_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p72.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p72.mh new file mode 100755 index 0000000..0645143 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p72.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p72.mh: + +#ifndef stasm_hat_yaw00_lev0_p72_mh +#define stasm_hat_yaw00_lev0_p72_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p72(const double* const d) // d has 160 elements +{ + const double intercept = 0.33656; + const double coef[160] = + { + 0.0109273, 0.00701231, 0.0123265, -0.054118, 0.00894793, 0.0199531, 0.0546884, -0.0225803, + -0.0159116, 0.0411868, 0.089538, 0.0774222, 0.0139166, 0.03471, -0.0248153, 0.0510105, + -0.0198116, -0.0334623, -0.0527264, 0.0411133, 0.0578461, -0.0727543, -0.0133322, -0.0412914, + -0.04439, 0.0801787, 0.000817053, 0.0326099, 0.00922548, 0.0353856, -0.0220976, -0.0590874, + -0.0356023, -0.017282, 0.0855007, -0.0161308, 0.114706, 0.0546855, 0.0533139, 0.101108, + 0.00644454, 0.0265675, -0.0404431, 0.0445425, 0.0437407, 0.00295126, -0.0454214, -0.0461645, + -0.030443, -0.0606773, -0.0425237, -0.0477967, -0.026027, -0.0396275, -0.0104379, -0.0202383, + 0.00136561, -0.0373245, -0.00439785, -0.0538319, -0.0821453, -0.0410854, -0.0236555, -0.0156586, + 0.089857, 0.072399, -0.0373804, -0.0516199, -0.0840442, -0.0347916, -0.00701551, 0.0122411, + 0.075689, -0.0575519, 0.0424952, 0.0150539, -0.030283, -0.0699195, 0.0392098, -0.00239024, + -0.0401443, -0.0621086, 0.0432013, 0.00931915, -0.0261652, 0.0398715, -0.104416, -0.0134155, + -0.0764198, 0.0411883, 0.0398532, -0.00732802, -0.0445227, 0.0122149, 0.0660047, 0.000599353, + -0.0486067, -0.00793528, -0.030983, -0.0149726, 0.0422138, 0.135505, 0.0391115, 0.0202661, + -0.0205573, -0.0319899, -0.0137975, 0.0193039, 0.00352849, -0.0786226, -0.0341239, -0.0161224, + -0.0199039, 0.00167935, 0.0266265, -0.0080568, 0.0484407, 0.0369868, -0.0592385, -0.0140752, + -0.0404225, 0.0611585, -0.0500993, -0.0269662, -0.017899, 0.0246863, 0.0940871, -0.0267323, + 0.0587296, 0.0813972, -0.00711683, -0.0171456, 0.00971521, 0.0010435, -0.0780172, 0.0767125, + 0.0262071, -0.0688454, -0.0296652, -0.00392671, -0.0126979, -0.0963767, -0.072691, -0.0329568, + 0.0167748, -0.0316049, -0.00463196, -0.0307026, 0.0172082, 0.0425607, -0.0333246, 0.014811, + 0.021138, -0.00155512, 0.0155899, 0.0310903, -0.0449127, -0.0306212, 0.0502775, -0.0182861 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p72(hatfit_yaw00_lev0_p72); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p72_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p73.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p73.mh new file mode 100755 index 0000000..8521fbf --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p73.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p73.mh: + +#ifndef stasm_hat_yaw00_lev0_p73_mh +#define stasm_hat_yaw00_lev0_p73_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p73(const double* const d) // d has 160 elements +{ + const double intercept = 0.210633; + const double coef[160] = + { + 0.00993489, -0.0123548, 0.0813264, -0.0669054, -0.0292149, 0.0459029, -0.0137748, 0.00549202, + 0.0174816, 0.0361606, 0.0571976, 0.0195353, 0.0312433, -0.0114901, 0.0166582, -0.0229622, + -0.0139445, -0.00237589, -0.0273617, -0.025682, 0.00262632, 0.0523251, -0.0376459, 0.0270926, + 0.0321683, -0.0387711, -0.00409677, -0.0459421, 0.0251588, 0.0015943, -0.0283464, -0.00233083, + -0.0200148, 0.00490126, -0.0366268, 0.0603787, -0.0432424, 0.0324428, -0.0569498, -0.0521196, + -0.0638931, 0.0369586, -0.075077, 0.0271411, -0.00340076, -0.0547343, -0.00702337, 0.0137728, + -0.0409277, -0.0606099, -0.045178, 0.0154017, -0.0366499, 0.0368017, -0.0755714, 0.0200326, + 0.00949665, 0.0351426, -0.00107786, 0.0295442, 0.0484526, 0.0209865, 0.0121481, -0.00530801, + -0.0462899, 0.0172678, 0.0159024, 0.0182306, -0.0373838, -0.0134695, -0.00843069, -0.0514371, + -0.0519359, 0.0581923, 0.06852, -0.0354488, -0.0471169, 0.0114502, 0.0576501, 0.00435383, + 0.0239621, 0.0054736, 0.0718089, -0.00638833, -0.0169387, -0.0225313, 0.0918254, 0.0158692, + -0.00696946, 0.0105221, 0.0148327, 0.0176189, 0.0628373, -0.0179542, 0.0883174, -0.00738715, + 0.0200552, -0.0220295, -0.0631872, -0.0480109, -0.0526641, 0.0518276, 0.0419778, 0.0130373, + 0.0214683, 0.00437175, 0.0150467, 0.0423724, 0.00362405, -0.0196705, 0.0141319, 0.0649049, + -0.00408967, 0.0245299, -0.00747905, -0.0109424, -0.0215761, -0.0797169, -0.0778722, 0.00621082, + 0.0276491, 0.0250119, 0.0269108, -0.0292634, 0.00762546, 0.0224147, -0.0723399, 0.0159608, + 0.0480934, -0.0483455, 0.0268956, -0.0608082, 0.00230266, -0.0448343, -0.0683353, 0.0561961, + -0.0287219, -0.0448469, -0.0647663, 0.021936, 0.00215741, 0.0193411, -0.0470916, 0.0135276, + -0.0811883, -5.48175e-05, -0.022252, -0.0226157, 0.0116641, 0.0240341, -0.0324637, -0.0192397, + 0.0442505, -0.00606093, 0.0301554, 0.0603075, 0.00971811, -0.00300752, 0.038494, -0.0530671 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p73(hatfit_yaw00_lev0_p73); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p73_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p74.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p74.mh new file mode 100755 index 0000000..207b2b7 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p74.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p74.mh: + +#ifndef stasm_hat_yaw00_lev0_p74_mh +#define stasm_hat_yaw00_lev0_p74_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p74(const double* const d) // d has 160 elements +{ + const double intercept = -0.123052; + const double coef[160] = + { + -0.0309546, -0.0442576, 0.0329204, -0.0401056, -0.0502024, 0.0343256, -0.0491264, 0.0526849, + -0.040565, -0.0251502, 0.0173818, 0.050259, 0.0339315, 0.0325101, 0.0366172, -0.028734, + 0.067187, 0.0052785, 0.00589749, 0.0160142, 0.0411707, 0.0461798, -0.0714963, 0.0647489, + 0.00545592, 0.0375401, 0.0428692, -0.090145, -0.0402123, -0.0364415, 0.00129696, 0.0376801, + -0.0244897, -0.00109254, 0.0127259, 0.0216829, -0.0424932, 0.0567491, -0.0433866, 0.0537255, + 0.0570212, 0.0897909, -0.00992388, 0.0122728, -0.058294, -0.0551936, 0.0444467, 0.0895306, + -0.04211, -0.0226888, -0.0386415, 0.0242739, 0.00707858, 0.00547357, -0.00889063, -0.0250536, + -0.0146531, -0.0142709, 0.00720937, -0.0163542, -0.045965, -0.0310865, -0.0377862, -0.0210059, + 0.0113062, 0.0381805, -0.098968, -0.00228149, -0.0761344, 0.00743713, 0.0364898, -0.0270678, + -0.0305538, -0.0239947, 0.0638429, 0.0444779, 0.0960313, 0.0278943, 0.0129631, -0.0823485, + -0.0216715, -0.0179719, -0.00199062, -0.019387, 0.044269, 0.123856, 0.0219088, -0.123845, + -0.0154337, 0.0173048, 0.126506, -0.0244077, 0.0389774, -0.069549, 0.111201, 0.0879703, + -0.00232957, -0.0142188, -0.0226004, -0.00927491, 0.0142168, 0.0540128, -0.0570127, 0.0172157, + -0.0269361, -0.0331642, 0.105292, 0.00342794, 0.00512422, 0.0443093, 0.107396, -0.03335, + 0.0570555, 0.0180421, 0.0138374, -0.00202105, 0.0294139, -0.0973497, 0.00842243, 0.12097, + 0.0137315, -0.0271564, 0.00294767, 0.00468403, -0.0238619, 0.0628131, -0.112951, -0.000238455, + 0.0220301, -0.0213483, -0.00694677, 0.036515, 0.0229286, -0.0244903, 0.0136216, 0.0388557, + -0.0202755, -0.0175832, -0.0547588, 0.00175371, -0.0382934, -0.0152379, -0.0469127, -0.02083, + 0.0438301, 0.0398035, -0.0354271, -0.0375309, -0.00191381, 0.0413821, 0.0172386, -0.052723, + -0.0278759, -0.00447389, 0.0182668, -0.00243191, 0.00880319, -0.014031, -0.0912596, 0.0792959 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p74(hatfit_yaw00_lev0_p74); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p74_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p75.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p75.mh new file mode 100755 index 0000000..029a09c --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p75.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p75.mh: + +#ifndef stasm_hat_yaw00_lev0_p75_mh +#define stasm_hat_yaw00_lev0_p75_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p75(const double* const d) // d has 160 elements +{ + const double intercept = 0.165504; + const double coef[160] = + { + -0.0320118, 0.0343613, -0.0215994, -0.000569257, 0.000656744, -0.0320308, -0.0767731, 0.0347843, + 0.0203295, -0.0053574, -0.0205905, -0.0136708, 0.015306, 0.0277487, -0.0259979, 0.0248288, + 0.0315677, -0.0558509, -0.0206099, -0.0168151, -0.00635614, -0.00498852, -0.0304595, 0.0400413, + 0.0249894, 0.0402471, 0.0703507, 0.0458057, -0.0151023, -0.00152099, -0.0171668, -0.00912523, + 0.00771034, -0.0769725, 0.0546738, 0.0215703, -0.0203595, -0.0016619, 0.0173413, 0.0197873, + -0.0181361, -0.052057, 0.0774675, 0.0537229, -0.0859344, 0.0273665, 0.0458014, -0.0104791, + -0.0239259, 0.0358007, 0.0301018, 0.0194988, 0.00317381, -0.0376339, 0.0149199, -0.00488466, + 0.0344714, 0.0402375, 0.0017248, 0.0334069, 0.0260413, 0.00682628, 0.0226781, 0.0348958, + -0.0192217, -0.0133318, -0.0268843, -0.0228292, -0.0360136, -0.0157801, -0.0822792, -0.0166745, + -0.0389326, 0.0248937, -0.100848, -0.00430341, -0.0235682, 0.00919385, 0.00131306, -0.0274536, + -0.0668529, -0.0101084, 0.018374, 0.0320503, 0.0448673, -0.0321037, -0.102204, -0.067574, + 0.0419346, -0.0265464, -0.0178497, -0.00615739, -0.00450659, 0.0641049, 0.0426419, -0.00771388, + -0.051412, 0.0115251, -0.0427088, -0.0103799, 0.01944, 0.00324462, 0.019458, 0.0559431, + 0.00150652, 0.0304491, 0.00140247, 0.00537331, -0.0278386, 0.023001, 0.0666532, 0.00376987, + -0.0154516, 0.00195108, 0.0654335, -0.00899461, 0.00831876, 0.00154418, 0.136438, -0.0471422, + 0.0581926, 0.0947665, 0.0336773, -0.0015039, 0.0136536, -0.0145534, 0.00861099, -0.0123438, + -0.0191193, -0.0219995, -0.0581665, -0.0479272, -0.054385, -0.0486962, 0.0154553, 0.0162758, + 0.0160868, -0.0147297, -0.00334181, -0.0122711, -0.0382172, 0.0160841, -0.0599771, 5.07346e-05, + -0.018855, -0.0369785, -0.0241901, -0.0345559, 0.0457693, 0.0415736, -0.0634227, -0.0180437, + 0.0241607, -0.0442557, 0.0486534, 0.00864905, 0.0225124, 0.0253203, -0.0993135, 0.0641906 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p75(hatfit_yaw00_lev0_p75); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p75_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p76.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p76.mh new file mode 100755 index 0000000..e81a7c6 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev0_p76.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev0_p76.mh: + +#ifndef stasm_hat_yaw00_lev0_p76_mh +#define stasm_hat_yaw00_lev0_p76_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev0_p76(const double* const d) // d has 160 elements +{ + const double intercept = 0.229062; + const double coef[160] = + { + 0.116981, -0.0146652, 0.0805274, -0.0169097, -0.0508039, 0.0906799, 0.0250443, 0.0432456, + 0.0587242, 0.0213911, -0.0136849, 0.108586, -0.0311993, -0.0228875, 0.021087, 0.0190334, + -0.00245308, 0.0862394, -0.0577148, -0.0466893, -0.0657657, -0.0500989, -0.0316027, -0.0608753, + 0.00249728, 0.0734856, 0.100428, 0.0384354, 0.0383373, 0.0161285, -0.00234679, 0.0359347, + 0.00803544, -0.028746, 0.0163922, -0.00247927, 0.0189214, 0.00459289, 0.0281643, 0.0248393, + -0.0770743, 0.0106878, -0.0172592, -0.0798016, 0.019926, -0.0063997, -0.0122942, -0.0792252, + -0.0716314, -0.0640866, 0.0341624, 0.0366252, 0.123628, -0.0266889, 0.0769374, -0.00811922, + -0.0845058, -0.0764595, -0.0269535, -0.0199014, -0.0437083, 0.00499977, -0.0576146, -0.0349839, + 0.0180479, -0.00379294, -0.0463708, -0.00773665, 0.000995275, -0.0281857, -0.00547461, -0.0115937, + 0.0368069, 0.0102679, -0.02716, 0.0104688, -0.0227385, -0.0346443, -0.0513161, -0.0393638, + 0.0449888, 0.0137514, 0.00510399, 0.0205504, 0.0439477, -0.0218339, -0.0463837, 0.073077, + -0.00701239, -0.00547417, -0.00599687, -0.0420906, -0.00152454, -0.0450163, -0.0583551, -0.0840997, + 0.0910903, 0.023427, -0.0107036, 0.00868156, -0.0202352, 0.045091, 0.0584589, 0.102608, + -0.0499867, -0.0137135, 0.0752997, 0.0252478, -0.0481185, 0.0191086, 0.048995, -0.00900523, + 0.00176015, -0.0201574, 0.0365896, -0.0744776, -0.0226065, -0.0189596, -0.0818007, 0.0693222, + -0.0351821, -0.00179536, 0.0115058, -0.0109636, -0.0304185, 0.0181186, 0.0563143, -0.0234156, + 0.0621356, -0.0105263, 0.0415511, -0.026778, 0.00985116, 0.00626917, -0.00698782, 0.00721136, + -0.0472754, -0.0448799, -0.0642895, -0.0546127, 0.019504, -0.0411421, -0.111015, -0.0788803, + 0.0328179, 0.00638693, -0.017933, 0.0941219, 0.0317082, 0.0498469, -0.015293, -0.0410082, + -0.00642168, -0.0376461, -0.0312802, 0.0314786, -0.0358594, -0.00951312, 0.0722242, 0.0445234 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev0_p76(hatfit_yaw00_lev0_p76); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev0_p76_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p16.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p16.mh new file mode 100755 index 0000000..9f6261a --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p16.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p16.mh: + +#ifndef stasm_hat_yaw00_lev1_p16_mh +#define stasm_hat_yaw00_lev1_p16_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p16(const double* const d) // d has 160 elements +{ + const double intercept = -0.130126; + const double coef[160] = + { + -0.000445234, 0.043221, 0.0140256, -0.0176776, 0.0180011, 0.0751142, 0.00416233, 0.0231653, + 0.104674, 0.0549672, -0.0721341, -0.0127515, -0.0138794, 0.0338932, 0.0281944, 0.0621298, + 0.0911529, 0.0484904, 0.00900419, 0.0422819, -0.0630311, -0.0115877, -0.100845, 0.0587435, + 0.0279156, 0.0463337, -0.0298858, -0.035412, 0.0935972, 0.0198858, -0.0686332, 0.0466791, + -0.00672963, 0.0169272, 0.0333362, 0.00512634, -0.0613587, 0.0201456, -0.0406462, 0.07055, + -0.0638782, -0.0543191, -0.0472611, -0.0861293, -0.0274413, -0.0448311, 0.0635361, 0.0351661, + -0.0309816, -0.0576298, 0.0368246, 0.0267319, 0.00653227, -0.0267277, 0.0455019, -0.0197013, + -0.0723671, -0.0230741, 0.0715372, -0.00733044, 0.0377367, -0.0112378, 0.0222296, -0.0711139, + -0.0336036, -0.049834, 0.075822, 0.0612571, 0.0127347, -0.0363393, 0.0217066, -0.143767, + -0.0624119, -0.0310864, -0.0459203, -0.0374786, 0.013719, 0.0379785, 0.0966371, -0.0824829, + -0.00437739, -0.00529281, 0.0115613, 0.0919288, 0.0281675, 0.0621726, 0.0194302, -0.0421999, + 0.0151037, 0.0324625, -0.0663097, -0.0181548, -0.00958769, 0.050465, 0.0778563, 0.027344, + 0.00659999, 0.0454187, 0.0257894, 0.0242061, -0.0614949, -0.0331331, -0.0964159, 0.0097562, + 0.00810102, 0.0670151, 0.0431962, 0.0187627, -0.00581959, -0.00936328, -0.0662436, 0.0844052, + 0.100604, 0.00389021, -0.0344949, 0.0378302, 0.0106632, 0.0525071, 0.0978476, 0.161005, + 0.0628722, -0.0660993, 0.0878073, -0.00854462, -0.0434295, -0.0505323, -0.0343038, -0.00213331, + -0.0161968, -0.0963436, -0.00481572, 0.0643314, 0.0344135, -0.00774432, 0.0312189, -0.0762902, + -0.0341295, -0.0239998, -0.0515961, -0.00287077, 0.0293045, 0.0159731, 0.0573082, -0.0105915, + 0.00351762, -0.021431, 0.0181034, -0.00131951, -0.101467, -0.0448797, -0.0507844, -0.0420648, + -0.10945, 0.12603, 0.0213206, -0.11438, 0.0555109, 0.0345014, -0.0517138, 0.0216809 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p16(hatfit_yaw00_lev1_p16); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p16_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p17.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p17.mh new file mode 100755 index 0000000..a1f3cce --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p17.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p17.mh: + +#ifndef stasm_hat_yaw00_lev1_p17_mh +#define stasm_hat_yaw00_lev1_p17_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p17(const double* const d) // d has 160 elements +{ + const double intercept = -0.16546; + const double coef[160] = + { + 0.0171966, -0.0275563, 0.0314074, 0.0443813, 0.0352954, 0.0360139, -0.024964, -0.00787478, + -0.0194631, -0.061424, -0.0315714, -0.065885, 0.0341884, 0.0301533, 0.0235951, -0.0382192, + 0.024691, 0.0226932, -0.0122046, 0.070336, -0.022967, -0.000195558, -0.0547027, -0.0113896, + 0.0371435, 0.0290348, 0.0370216, 0.0136441, 0.0311799, 0.0364149, -0.049558, -0.00475357, + 0.0233215, 0.0550764, 0.00609607, -0.00682064, 0.0153294, 0.0257363, -0.0295148, 0.0518475, + 0.0410708, 0.0470332, -0.00859611, 0.00716973, -0.000581094, -0.0923075, -0.12437, -0.0150305, + 0.00973378, 0.0305067, 0.0102754, 0.0452893, -0.0833901, 0.0553768, 0.0643014, 0.0256497, + -0.0725362, -0.0441515, -0.0345659, -0.0611385, 0.00278489, -0.0393033, 0.0851779, 0.015241, + -0.00101229, -0.0523925, -0.00948096, -0.0617794, -0.0437903, -0.0537819, 0.0645393, -0.033413, + 0.0621413, -0.0074961, 0.0868917, 0.0153207, -0.0607852, -0.0154115, 0.0534899, -0.0650833, + -0.0160714, 0.00891181, -0.0127801, -0.0150855, -0.050345, 0.104545, 0.162614, 0.031502, + -0.00391759, 0.0214315, 0.0377781, -0.0498718, 0.0182489, 0.0738549, -0.141809, 0.0252301, + 0.0481015, -0.00964915, 0.0479379, 0.0715328, 0.0905173, 0.0200443, -0.0407209, 0.0350024, + -0.0214207, -0.0302528, -0.0683485, 0.0500598, 0.0443642, 0.049822, -0.00970918, 0.0720314, + -0.102219, 0.0485874, 0.00420228, 0.0227607, 0.0305125, 0.0368292, -0.00241041, 0.03728, + -0.0286477, 0.0337817, 0.00314927, -0.0383266, -0.022275, 0.0802865, -0.0480953, 0.0843274, + 0.012186, 0.0236073, 0.0147595, 0.0353434, -0.0249638, -0.0470477, 0.00373069, -0.0112297, + -0.0136293, 0.0382654, -0.037789, -0.0167259, 0.000611127, -0.0637567, -0.00156791, -0.0585197, + 0.0178448, 0.0150697, 0.0445088, 0.00449942, -0.0150822, -0.0161511, 0.0542754, -0.0288515, + 0.0293693, -0.131679, 0.0506636, -0.00646806, 4.88179e-06, -0.027588, -0.00535106, -0.0394523 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p17(hatfit_yaw00_lev1_p17); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p17_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p18.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p18.mh new file mode 100755 index 0000000..7f9a543 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p18.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p18.mh: + +#ifndef stasm_hat_yaw00_lev1_p18_mh +#define stasm_hat_yaw00_lev1_p18_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p18(const double* const d) // d has 160 elements +{ + const double intercept = -0.448753; + const double coef[160] = + { + -0.0498749, -0.0295384, -0.0622896, 0.0356942, -0.0292167, 0.0283713, 0.00836971, -0.0121596, + 0.0209972, 0.00382417, 0.050891, -0.0164777, 0.0242696, -0.00391463, -0.0277812, -0.0138764, + 0.072988, -0.0271966, -0.0908054, -0.0734843, -0.0604963, 0.0136477, -0.0727193, 0.0275438, + 0.0110599, 0.0588015, 0.00201384, 0.0164636, -0.00199381, 0.0922571, 0.0699612, 0.0217522, + -0.00142602, -0.00528477, 0.00603293, 0.0617398, -0.0417845, 0.0516238, -0.0569251, 0.0888432, + 0.0420806, 0.0498754, 0.0839362, 0.0110966, 0.0596055, 0.0101679, 0.00859569, -0.021343, + 0.0153672, -0.0383215, -0.0905357, -0.00618441, 0.0649987, -0.0654346, -0.0405493, 0.0329732, + -0.09689, 0.0202469, 0.0330359, 0.0379222, 0.179394, 0.0828963, 0.130292, 0.0730782, + -0.0308012, 0.108059, 0.0110634, -0.0114949, -0.084209, -0.0632223, 0.00555993, 0.00827395, + -0.0322704, 0.0254536, 0.0448415, -0.0122099, 0.0581972, -0.0255867, -0.00141774, -0.0369018, + -0.00161121, 0.00661957, -0.045868, -0.0756884, -0.0735135, -0.0600961, 0.0242683, -0.0197821, + 0.0745215, -0.0585634, -0.0179505, 0.0547213, -0.0345571, -0.025263, 0.0334299, 0.00947121, + 0.051453, 0.0639829, 0.0359268, 0.0210573, -0.0619948, -0.0628176, -0.0306752, -0.051822, + 0.0126318, -0.0452903, -0.01876, 0.00772562, -0.00129544, 0.0511064, -0.0106129, -0.00556659, + 0.0426059, 0.032925, 0.0212555, 0.0334898, -0.0357824, -0.00509332, 0.0150316, 0.00836535, + 0.0260177, 0.0158509, 0.0215553, 0.0268927, 0.0590347, 0.0190613, 0.0199399, -0.0514828, + -0.00742887, -0.0419478, 0.00628358, 0.0638355, -0.00724743, 0.0347969, -0.00623699, -0.0583069, + -0.0161296, -0.037127, 0.0168519, 0.0147875, -0.00326895, 0.0385574, -0.0158858, 0.0614535, + -0.0200043, 0.00139308, 0.013431, -0.0543626, 0.0576407, -0.0165498, -0.0840573, 0.0222336, + 0.0296575, -0.00278878, 0.00448438, -0.00359893, 0.0102988, 0.106763, 0.090092, 0.0431567 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p18(hatfit_yaw00_lev1_p18); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p18_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p19.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p19.mh new file mode 100755 index 0000000..5fbe7a2 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p19.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p19.mh: + +#ifndef stasm_hat_yaw00_lev1_p19_mh +#define stasm_hat_yaw00_lev1_p19_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p19(const double* const d) // d has 160 elements +{ + const double intercept = -0.262195; + const double coef[160] = + { + 0.0570257, 0.0367344, -0.0570711, -0.011802, -0.0167134, 0.101382, -0.0180198, 0.00963814, + -0.0279159, 0.00725883, -0.0390742, -0.0731636, -0.0300552, 0.0610662, -0.0564866, -0.00215811, + 0.0331278, -0.0245061, -0.0190675, 0.0308108, 0.0597088, -0.0582475, 0.0068199, -0.0045789, + 0.0112172, -0.0042283, -0.0460313, -0.0683531, 0.0490784, 0.0357457, 0.0513087, 0.065163, + 0.0120269, 0.0846221, -0.0103265, 0.0475844, 0.00477526, 0.0399056, 0.0540089, -0.0564785, + -0.07569, -0.0260325, -0.0242496, -0.0162332, -0.01269, 0.0115391, 0.144577, 0.0917523, + -0.0031184, 0.0494672, 0.0600518, 0.0757492, 0.0268476, -0.0358991, -0.0714125, -0.0217126, + -0.0619601, 0.00266571, 0.0342395, 0.0499819, 0.0149065, -0.0327131, -0.0215528, -0.0440197, + -0.0420585, -0.0419247, 0.0676071, 0.0562871, -0.00336289, -0.0189186, -0.0412871, -0.063268, + -0.0263585, -0.139443, 0.050477, -0.0565013, -0.0138931, 0.00646753, 0.0454679, 0.0638653, + 0.00880726, 0.0693776, -0.00639578, 0.0123959, -0.0768389, 0.0366207, -0.0836684, -0.0324729, + -0.000682837, 0.0349943, 0.000274644, -0.00886348, 0.00739915, 0.00832502, 0.0206392, -0.0190099, + 0.0570095, 0.033442, -0.00262595, 0.0070713, 0.00129516, 0.0143729, 0.0452677, 0.00304362, + 0.00623422, 0.0423643, 0.00203898, -0.0335307, 0.0291394, -0.0161017, 0.00515308, 0.0344269, + 0.00664613, -0.020668, -0.0448438, 0.0866967, 0.0269182, 0.0468494, 0.0656892, 0.00646981, + -0.0383485, -0.00762912, -0.0750351, 0.0130538, 0.0269591, -0.0112271, -0.0624056, 0.0493525, + 0.0296482, -0.0213624, 0.0267932, 0.0117763, -0.0091476, 0.0151417, -0.00320312, 0.0152537, + -0.0114015, -0.00710413, 0.00773785, -0.00463671, -0.034757, 0.0182189, 0.0225663, 0.0463874, + 0.0323866, 0.0080666, 0.0581044, 0.0524154, 0.0108156, -0.0567258, -0.0227012, -0.048997, + 0.0646889, -0.0463338, -0.0283976, -0.0935714, 0.0225522, -0.0529328, 0.11244, -0.0702994 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p19(hatfit_yaw00_lev1_p19); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p19_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p20.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p20.mh new file mode 100755 index 0000000..3288679 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p20.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p20.mh: + +#ifndef stasm_hat_yaw00_lev1_p20_mh +#define stasm_hat_yaw00_lev1_p20_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p20(const double* const d) // d has 160 elements +{ + const double intercept = -0.40301; + const double coef[160] = + { + -0.044357, 0.065885, -0.100565, -0.0292176, 0.0431703, 0.0559038, 0.0422983, 0.0677039, + 0.0111116, 0.0543616, -0.00831535, 0.0316774, -0.0405766, 0.0545119, 0.0547792, 0.00707303, + -0.0118569, 0.0359603, 0.000738419, -0.00720546, 0.0159878, -0.0454474, -0.00219371, -0.0321887, + -0.00711376, -0.0118625, -0.031807, 0.0318091, 0.0721441, -0.00390437, 0.000654461, -0.00217822, + 0.0136697, -0.0564804, -0.0142228, 0.0489046, 0.0135339, 0.0265044, 0.0836901, -0.0131859, + 0.0193591, -0.0579067, 0.143029, 0.0854465, -0.0273751, -0.0743443, -0.00470803, -0.0470495, + 0.0284289, -0.0908781, -0.0390148, 0.0216415, 0.0237698, -0.00135428, 0.0883609, 0.0570308, + -0.0190371, 0.0543571, -0.0426702, -0.0233553, -0.062339, -0.0680657, -0.0296903, 0.0182473, + -0.0275637, 0.031327, 0.0632576, -0.0441019, -0.0551259, -0.0493404, -0.0933736, 0.0139715, + 0.0351187, 0.201519, 0.109671, -0.0436287, 0.0343854, 0.0617872, 0.00231902, 0.131171, + -0.0447616, 0.0471011, -0.0241846, -0.130945, -0.00283226, 0.0292567, -0.0124652, 0.00699345, + -0.00646692, 0.00169924, 0.0120173, 0.0392728, -0.027388, 0.0654505, 0.0643972, -0.0154942, + -0.0480685, -0.0210734, -0.0285767, 0.0874262, 0.0749026, 0.0901079, 0.0342709, -0.0234091, + 0.0509444, -0.014923, -0.0252291, 0.0453003, 0.0172163, -0.0234517, 0.0583706, -0.00834267, + -0.128634, -0.0329519, 0.0279247, -0.0235598, -0.00885352, -0.0981358, -0.0500313, -0.0635172, + 0.0233945, -0.051642, -0.0143921, 0.0752504, 0.0105108, -0.022365, 0.0275288, -0.0364368, + 0.0413996, -0.0392726, 0.0157608, -0.0648484, 0.0178105, -0.0352664, 0.0258897, -0.0719777, + 0.0267576, 0.019921, 0.000531101, 0.00717289, -0.0355602, -0.0040235, 0.0217799, -0.0267584, + -0.00189987, 0.0767193, 0.0513729, 0.0696818, 0.0447269, -0.00696514, 0.0455562, 0.0813045, + -0.0438993, 0.0213466, -0.0743853, 0.0140133, 0.0300957, 0.042562, -0.0818879, 0.0010326 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p20(hatfit_yaw00_lev1_p20); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p20_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p21.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p21.mh new file mode 100755 index 0000000..4c3a4f9 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p21.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p21.mh: + +#ifndef stasm_hat_yaw00_lev1_p21_mh +#define stasm_hat_yaw00_lev1_p21_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p21(const double* const d) // d has 160 elements +{ + const double intercept = -0.360611; + const double coef[160] = + { + -0.0436506, -0.054941, -0.00971474, 0.0521024, 0.00206954, 0.0185906, -0.00413247, -0.024137, + -0.0462877, -0.04999, -0.0126494, -0.0039948, 0.0150353, 0.0313915, 0.0540088, -0.0256915, + -0.128476, -0.0262562, 0.0509892, 0.00366824, -0.00866948, 0.0298188, -0.00831123, 0.0105693, + -0.0529987, -0.0259216, -0.00600078, -0.0230685, 0.0339906, 0.0307667, -0.0178926, 0.0698492, + 0.0722452, -0.0227056, -0.00609198, 0.0519129, 0.0620325, 0.0588752, 0.00577859, 0.00438022, + 0.0282987, 0.0421252, 0.0104122, -0.018805, -0.102164, -0.0445192, -0.0648688, 0.0809432, + 0.0950726, 0.117475, 0.0853208, 0.0458148, -0.0171331, 0.0300579, -0.0406555, 0.0118699, + 0.0976135, 0.0484639, -0.033011, 0.0899271, 0.0202407, 0.0261913, -0.00930254, 0.0461875, + 0.0378907, -0.0493307, -0.0274167, -0.0190517, -0.0107293, -0.0157886, 0.0123958, 0.0879697, + 0.00302485, 0.0109669, -0.0332263, -0.0316753, -0.0598432, -0.0198672, 0.0300908, -0.0590955, + -0.0598014, -0.0300721, -0.0144178, 0.00587939, -0.0163208, -0.010562, 0.0622535, -0.0122884, + -0.0888054, 0.00986846, 0.0480497, -0.0690815, 0.0316751, -0.0658706, -0.017178, 2.19983e-05, + -0.031337, 0.12937, 0.00135608, 0.00324541, -0.0383022, -0.0209004, 0.012759, -0.0579081, + -0.022554, -0.0243307, -0.161701, -0.0383884, -0.0341709, 0.0256652, 0.0349183, 0.0408659, + -0.0589702, 0.0420497, 0.069216, 0.0258794, 0.0283805, -0.0236499, -0.00459621, 0.0139046, + 0.0328212, 0.0585561, 0.0112508, 0.0231436, 0.0542301, -0.00382625, 0.045863, 0.0514639, + -0.00793891, -0.0151828, -0.0451044, 0.00866035, -0.0408645, 0.00331327, -0.080927, -0.085434, + 0.0547401, 0.0158916, 0.0294454, 0.0202408, 0.0291153, 0.0326214, 0.0244101, 0.0986617, + 0.0364547, -0.0604266, 0.0127313, -0.0474485, 0.0555188, 0.0124198, -0.0257955, 0.0798925, + 0.124739, -0.0247137, 0.0450575, 0.0279182, -0.005408, 0.00205407, -0.0160856, -0.0509189 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p21(hatfit_yaw00_lev1_p21); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p21_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p22.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p22.mh new file mode 100755 index 0000000..81d362c --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p22.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p22.mh: + +#ifndef stasm_hat_yaw00_lev1_p22_mh +#define stasm_hat_yaw00_lev1_p22_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p22(const double* const d) // d has 160 elements +{ + const double intercept = -0.283461; + const double coef[160] = + { + 0.113408, 0.028207, 0.0103549, -0.0219927, 0.0431519, 0.00919302, -0.0021129, 0.0822461, + -0.0605805, -0.0288046, 0.00869981, 0.00197979, -0.091122, 0.00543819, -0.0875602, -0.0096333, + -0.0140809, -0.00180853, 0.0272279, -0.0408326, -0.108702, 0.0415715, 0.057489, 0.0631665, + 0.0449359, 0.00809672, -0.0378282, -0.040463, -0.0505169, -0.0300831, 0.0435633, -0.0196153, + 0.0188522, 0.0430165, -0.013274, -0.00146621, -0.0787595, -0.0382562, 0.00339013, -0.0244168, + -0.109492, -0.0534605, 0.0150209, 0.00353936, 0.0185733, -0.0188727, 0.0288706, -0.044357, + 0.0503095, 0.0649049, -0.0550787, -0.0715569, 0.0863819, 0.0590576, 0.00904189, 0.051242, + 0.0460924, 0.0585139, -0.0128731, 0.064008, 0.0780372, 0.0710941, 0.0145533, 0.0773075, + -0.0980892, 0.0193442, 0.0810367, 0.13997, 0.0733226, 0.0512428, -0.103792, 0.0650737, + -0.0728885, -0.012266, 0.023387, -0.00658721, 0.0246795, 0.0391211, -0.0425422, -0.0452243, + 0.0327159, -0.00046799, -0.00746934, 0.041174, -0.0191744, -0.00525241, 0.00667091, -0.044836, + -0.0405409, -0.106829, -0.153472, -0.00257772, -0.0275851, 0.0490619, 0.0456676, 0.0148601, + -0.0409661, 0.0154871, 0.0948287, 0.105885, -0.0128939, -0.0611814, -0.00809154, -0.0978214, + 0.0252439, -0.0215762, -0.0285384, -0.018451, -0.0553872, -0.0160569, 0.00576589, -0.109376, + -0.00953276, -0.0124028, -0.00071097, -0.00153849, -0.043606, -0.0358039, 0.0836616, 0.0602529, + 0.0487441, 0.0265395, 0.0409188, 0.00543898, 0.0838617, -0.0281679, -0.0813627, 0.00686685, + -0.0205098, -0.0206478, -0.0149907, -0.0498131, 0.0185005, 0.0928399, 0.0517432, -0.00931367, + 0.0553956, -0.000987589, 0.0256532, 0.0190481, 0.0120548, 0.0256755, -0.0056007, 0.0773276, + -0.0299009, 0.0231982, -0.0541054, -0.0363423, -0.00481595, -0.0450222, -0.0591807, 0.0140353, + 0.0115709, 0.051797, 0.00671813, 0.060524, 0.0404935, 0.0628342, 0.0301882, -0.0445167 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p22(hatfit_yaw00_lev1_p22); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p22_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p23.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p23.mh new file mode 100755 index 0000000..ce9f12c --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p23.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p23.mh: + +#ifndef stasm_hat_yaw00_lev1_p23_mh +#define stasm_hat_yaw00_lev1_p23_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p23(const double* const d) // d has 160 elements +{ + const double intercept = -0.130233; + const double coef[160] = + { + 0.0472834, 0.00781718, 0.00785787, 0.0540163, -0.026445, 0.116213, -0.0237177, 0.0424393, + 0.0187807, -0.024349, -0.0246988, 0.0576934, 0.0111652, 0.0538067, -0.121513, 0.0500683, + -0.00359233, -0.0209018, -0.00154044, 0.0619222, 0.0839956, 0.070999, -0.0467736, 0.0184966, + 0.00613903, 0.00382141, -0.0737772, 0.00515294, -0.00382716, 0.0400579, 0.00606548, 0.0256581, + 0.0594181, 0.0186452, 0.0815342, 0.0398505, 0.00194601, 0.0017904, -0.0349286, 0.106442, + -0.018651, 0.00312345, -0.0059111, -0.0568959, -0.0328872, -0.148534, 0.104767, 0.0236835, + 0.00637615, 0.0115255, 0.0801526, -0.00868843, 0.00586364, -0.10412, -0.0490881, -0.0593897, + -0.00372443, 0.00618455, 0.0371041, -0.0521332, -0.00660873, -0.0285671, 0.131414, -0.0504068, + -0.0296972, -0.0634493, 0.0637341, -0.0350294, 0.0066418, -0.00762099, -0.0144002, -0.0300104, + -0.0378424, -0.0719849, -0.0839801, -0.0249018, -0.0853061, 0.0688983, 0.103192, -0.0620734, + 0.0151431, 0.0111592, -0.0657549, 0.0352495, 0.0105818, 0.246062, 0.0820122, 0.0520822, + 0.0462958, 0.0629337, 0.0883106, 0.0716172, -0.073364, -0.0192448, -0.109873, -0.0512651, + -0.0390072, -0.00551202, -0.0114683, 0.0342657, 0.0128699, 0.0191531, -0.0255654, 0.0133674, + 0.0513161, 0.0279945, -0.0674543, -0.00280994, 0.0383715, -0.0308886, 0.101607, 0.102294, + -0.00181516, 0.0832472, 0.0175008, 0.0196384, 0.0216818, -0.070902, -0.0207262, 0.0160676, + -0.0254123, -0.0816697, 0.0283321, 0.125951, -0.0731279, 0.0101732, -0.0494108, 0.00338782, + -0.051712, 0.0155175, 0.0158018, -0.0212249, -0.00432322, -0.0379499, -0.0358608, -0.00421285, + 0.0108169, 0.0207882, -0.0720815, -0.0455948, -0.0374766, -0.049237, 0.0186335, 0.0110743, + -0.0458633, 0.0435132, 0.0137485, -0.0760113, 0.0111323, -0.00146219, 0.0642206, -0.0233832, + -0.0129117, -0.0448585, 0.0893718, -0.0306933, -0.00994433, 0.0235545, -0.0486931, -0.0471647 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p23(hatfit_yaw00_lev1_p23); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p23_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p24.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p24.mh new file mode 100755 index 0000000..04fbd78 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p24.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p24.mh: + +#ifndef stasm_hat_yaw00_lev1_p24_mh +#define stasm_hat_yaw00_lev1_p24_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p24(const double* const d) // d has 160 elements +{ + const double intercept = -0.209957; + const double coef[160] = + { + 0.0329241, 0.0204195, -0.0457593, 0.0501425, -0.00613224, 0.00723748, 0.00753633, -0.00218967, + 0.0567324, 0.0279709, 0.044728, 0.00627779, 0.0202298, 0.00300185, -0.0439539, 0.0484225, + 0.0599061, -0.0229727, -0.0046023, -0.0425072, -0.0265741, -0.0402482, -0.0184064, -0.0400436, + 0.129868, 0.0186916, -0.0187492, -0.0279144, -0.00644049, -0.0152003, -0.019119, 0.0695958, + -0.0579541, 0.0241296, 0.0301872, -0.0184226, -0.0375482, 0.00369089, -0.067679, 0.0316725, + -0.055719, -0.0459733, 0.130253, 0.0100149, 0.0523362, -0.0390752, 0.049506, -0.0562703, + -0.0882681, -0.0460667, -0.0540077, -0.0063019, 0.00833983, -0.0356212, 0.0579247, -0.0667233, + -0.0917908, -0.0543343, -0.0344169, -0.0230161, -0.00531222, 0.0843524, 0.07836, 0.0221333, + -0.139507, 0.007516, 0.0603828, 0.0806264, 0.0404374, -0.00715456, 0.088454, 0.0628061, + 0.0829363, -0.0348646, -0.0190776, 0.00782911, 0.0738113, 0.0218468, -0.133212, -0.109976, + 0.0430187, 0.0600624, -0.0250504, 0.0394135, -0.105551, 0.0274974, 0.0425897, 0.0730274, + 0.0721941, 0.0543258, -0.00415248, -0.0637805, -0.0302164, 0.0400649, -0.0335531, 0.0165375, + 0.0569047, 0.0575467, 0.0384013, 0.0282555, -0.0193094, 0.0499828, -0.10377, 0.0923725, + 0.018542, -0.0432079, -0.0109277, 0.00175565, -0.028568, 0.0184082, -0.0969235, 0.0896471, + -0.0161893, 0.0327373, -0.004733, 0.00905427, -0.0520759, 0.0635459, 0.152796, 0.000308197, + -0.0354366, -0.00113181, 0.061364, -0.128608, 0.00421285, -0.0287593, 0.0243545, -0.052208, + 0.000375558, -0.0167535, 0.00873265, 0.0752245, 0.00744216, -0.0119389, 0.0225206, -0.0189916, + -0.0253872, 0.00905674, -0.00873364, 0.00526114, 0.0448877, -0.0580581, 0.00681423, -0.0637524, + -0.0370372, -0.0561434, -0.00836047, 0.0433733, -0.0140024, 0.000233554, 0.00309609, -0.0161593, + 0.0248977, 0.0330903, 0.0336645, 0.0216872, 0.0263714, 0.072331, -0.0283138, 0.0637294 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p24(hatfit_yaw00_lev1_p24); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p24_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p25.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p25.mh new file mode 100755 index 0000000..8efc458 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p25.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p25.mh: + +#ifndef stasm_hat_yaw00_lev1_p25_mh +#define stasm_hat_yaw00_lev1_p25_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p25(const double* const d) // d has 160 elements +{ + const double intercept = -0.343956; + const double coef[160] = + { + 0.00760984, 0.00677376, -0.0254998, -0.0180962, -0.0163319, 0.0787102, -0.0501463, 0.109694, + 0.0324034, 0.0167922, -0.0197681, 0.0290643, -0.0292062, 0.0780218, 0.0643669, 0.0284101, + -0.0255905, -0.0887582, -0.00245165, 0.000299687, 0.0577481, 0.0246098, -0.0493255, 0.0317641, + 0.0699807, 0.00365498, -0.0248711, -0.0952788, -0.0441012, -0.00877127, -0.030372, 0.025457, + 0.00123633, 0.00568069, 0.0530734, 0.0160453, -0.0228293, -0.0383732, -0.0202062, 0.00138904, + -0.0311672, -0.0647133, -0.011528, 0.0200126, -0.0633424, -0.0168273, 0.01839, -0.0474396, + 0.0407186, 0.0366202, 0.0856484, 0.190433, 0.0179868, 0.00304538, 0.0494411, -0.0136479, + 0.111389, 0.0899019, -0.0682664, -0.0100893, -0.06274, 0.0846425, 0.0863926, 0.0344789, + -0.00408501, -0.0395417, -0.0479772, 0.0403961, 0.0353354, 0.0277053, -0.0834275, -0.0522247, + 0.0280733, 0.0182633, 0.0412811, 0.030988, 0.0378751, -0.029654, 0.0410781, -0.0249082, + 0.00416055, 0.018964, 0.0161914, 0.0459608, 0.0419443, 0.000767701, 0.00510756, 0.0379706, + -0.0847118, -0.00462727, -0.00259532, -0.0472359, 0.019949, -0.015067, -0.0199384, -0.00995159, + -0.0998395, 0.0710568, 0.0364557, 0.0287091, 0.0888186, -0.0355493, -0.041063, -0.0758328, + -0.0759168, -0.0295297, -0.0642619, -0.030304, 0.0497545, 0.0141481, 0.0492566, -0.00652294, + -0.0226196, -0.0498264, -0.0234137, -0.0373272, -0.00606085, -0.00196313, -0.0231809, -0.0233476, + -0.00804062, 0.0100827, -0.0173219, 0.010049, 0.0315197, 0.0323537, 0.113683, 0.111685, + 0.050072, -0.0252066, 0.0313543, -0.0228036, -0.0584108, 0.0153078, -0.0722343, -0.0497144, + 0.0357457, 0.0532115, -0.0072414, -0.0434428, -0.035532, -0.00558749, -0.0402508, 0.0592584, + 0.0665029, 0.0417867, 0.00392788, -0.0309772, 0.00040911, -0.0210691, 0.0148444, 0.0146238, + 0.0102926, 0.0166917, 0.0144286, 0.0537487, 0.000804561, -0.0208786, -0.0339195, 0.0450666 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p25(hatfit_yaw00_lev1_p25); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p25_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p26.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p26.mh new file mode 100755 index 0000000..be11363 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p26.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p26.mh: + +#ifndef stasm_hat_yaw00_lev1_p26_mh +#define stasm_hat_yaw00_lev1_p26_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p26(const double* const d) // d has 160 elements +{ + const double intercept = -0.258416; + const double coef[160] = + { + -0.00350965, -0.00176727, 0.0280615, 0.100582, 0.0516356, -0.014299, 0.0969119, 0.0611335, + 0.0505389, -0.0141772, -0.072076, -0.0704732, 0.0288541, 0.0270603, 0.0417463, 0.012438, + -0.026474, 0.0106418, -0.0192412, 0.00922146, -0.0171761, 0.000301015, -0.0321873, -0.0131573, + 0.0106071, -0.0488669, -0.0599012, 0.0174829, 0.025597, -0.0133362, -0.104343, 0.184658, + 0.00435425, -0.0187789, -0.0399474, 0.0455359, -0.0288366, 0.0699611, 0.0333399, -0.0800692, + 0.0122853, 0.00344305, 0.0364898, -0.151364, -0.0852088, -0.00178568, 0.0316897, -0.0305154, + 0.00425055, 0.0301504, 0.0282844, -0.0151934, -0.0699295, -0.0299469, 0.0155334, -0.0324951, + 0.0297988, 0.0744955, 0.0666288, 0.0450893, -0.0617183, -0.0574214, -0.0496704, -0.0188076, + -0.0436869, -0.0200248, 0.0252562, 0.0178969, -0.047149, 0.00292977, -0.062868, -0.0842954, + 0.043477, 0.0700997, -0.00511285, 0.00301757, -0.0417495, 0.0746707, 0.129842, 0.0575271, + -0.0194383, 0.0668798, -0.0348481, -0.0217796, 0.0407116, 0.00766602, 0.0684383, 0.00838842, + 0.00132244, -0.0290873, 0.0186756, 0.0560339, 0.0317368, 0.045016, 0.0153503, 0.0255243, + -0.0127486, -0.0204903, -0.0369487, 0.0489509, 0.076522, 0.0118913, 0.0292849, 0.0308702, + 0.0262609, 0.00018022, -0.00272539, 0.00638587, -0.00702837, -0.0447886, -0.00564197, 0.0424315, + -0.0743288, -0.00477299, 0.0350454, 0.0938537, 0.0271551, 0.0364917, -0.0451706, 0.0142219, + 0.0136303, -0.0614797, -0.0208402, -0.0323582, 0.0512702, -0.0464986, 0.0845153, -0.00519982, + -0.0139982, 0.0406294, 0.0316932, -0.0047094, -0.00554515, -0.00944887, -0.057371, -0.0618004, + -0.0259082, 0.0238172, 0.0214687, -0.0108454, -0.00737554, 0.0388521, 0.0486423, -0.015575, + -0.0425036, -0.0370336, -0.0227926, 0.0054459, -0.00637709, 0.0188067, 0.0420747, 0.0616357, + 0.0455921, 0.0453217, -0.0197868, -0.0337423, 0.00859838, 0.00324809, -0.110627, -0.0217408 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p26(hatfit_yaw00_lev1_p26); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p26_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p27.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p27.mh new file mode 100755 index 0000000..555f46f --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p27.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p27.mh: + +#ifndef stasm_hat_yaw00_lev1_p27_mh +#define stasm_hat_yaw00_lev1_p27_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p27(const double* const d) // d has 160 elements +{ + const double intercept = -0.27113; + const double coef[160] = + { + 0.0659569, 0.0464331, -0.103289, -0.0413934, -0.0712755, 0.0346774, 0.0776075, 0.00796679, + 0.0563323, 0.0349391, 0.00432435, 0.0186805, -0.0227768, -0.0411882, 0.0180095, -0.0299084, + -0.00206588, 0.0248174, 0.00940869, 0.0292864, 0.036919, -0.0294685, 0.0153051, -0.00761443, + 0.0207946, -0.020588, -0.0167524, 0.0681632, 0.0617253, -0.0113329, 0.0781032, 0.120613, + 0.0584448, 0.00895681, -0.0797661, 0.0199725, -0.091961, 0.0210085, -0.0103899, -0.0277577, + -0.0227788, -0.0613546, 0.129852, 0.213951, 0.0422787, 0.13874, -0.00840513, 0.0306937, + -0.0819338, -0.0682186, -0.000161617, 0.0264743, -0.0361697, -0.00122901, -0.0812425, -0.0483864, + -0.0367527, 0.00506988, -0.0264522, 0.028902, -0.0366666, 0.0396858, -0.0272568, -0.0785532, + -0.0198807, 0.0610862, -0.025964, -0.14049, -0.00583712, 0.0220212, 0.0874111, -0.0149439, + -0.0559577, 0.00576425, 0.140836, 0.0080078, 0.0273005, -0.0369856, -0.00886448, -0.0916488, + 0.0144509, 0.0354737, 0.0483817, -0.0442041, -0.131503, -0.0762792, -0.0897255, -0.127158, + 0.0441685, 0.0695112, -0.074735, -0.0137479, 0.0393981, -0.00539789, 0.128842, 0.0522683, + 0.0255804, 0.047649, -0.00367784, -0.0202382, 0.00898913, -0.0726423, 0.0113562, 0.11802, + -0.0330782, -0.0250013, 0.0268071, 0.0255662, -0.0229084, 0.0101128, 0.0254925, 0.0043954, + 0.0369233, -0.0643779, -0.032985, 0.0624686, -0.0150503, 0.0408147, -0.0230252, 0.0894271, + -0.0239848, 0.0469918, -0.0968045, -0.0127922, -0.0347748, 0.0538083, -0.115578, 0.00181725, + -0.012524, 0.0620152, 0.0521556, 0.0723663, 0.0223458, 0.0462425, 0.0593311, -0.0103422, + 0.0260298, -0.0407782, 0.0141628, 0.0185399, 0.0204076, -0.028273, 0.0340808, -0.0169075, + 0.0207457, -0.00554604, -0.0227777, -0.0297453, 0.0190428, -0.042317, 0.0355453, -0.0367405, + -0.0275647, 0.0482755, 0.0201301, -0.03366, 0.024693, -0.02327, 0.00295774, -0.0371129 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p27(hatfit_yaw00_lev1_p27); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p27_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p28.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p28.mh new file mode 100755 index 0000000..935c0d0 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p28.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p28.mh: + +#ifndef stasm_hat_yaw00_lev1_p28_mh +#define stasm_hat_yaw00_lev1_p28_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p28(const double* const d) // d has 160 elements +{ + const double intercept = -0.367265; + const double coef[160] = + { + -0.0491177, 0.0231859, -0.0192595, 0.0330815, -0.0576877, 0.0225005, -0.0189693, -0.073541, + -0.0359155, 0.0280567, 0.058852, -0.021962, -0.0898127, 0.00992803, -0.105721, -0.0758356, + -0.0399572, -0.00768943, -0.00834162, -0.0527198, -0.00505285, 0.0574883, 0.0495735, 0.0353355, + 0.00565149, -0.0138252, 0.0275444, -0.0166165, -0.0180696, 0.0225599, 0.00422979, 0.0218285, + 0.0106431, -0.00438759, -0.0253353, 0.0531471, -0.00232429, 0.0125946, -0.0443213, 0.0380441, + 0.0545565, -0.0245121, -0.0243301, -0.0125267, 0.00408049, 0.0140579, 0.0684684, 0.0430101, + 0.0634023, 0.0491572, 0.00547892, -0.00679154, 0.0471163, -0.0927548, 0.0349607, 0.144998, + 0.0668455, 0.0199738, 0.0526352, -0.0139169, 0.0229871, -0.054652, -0.0295048, -0.00122264, + 0.015289, 0.0322566, 0.0218405, 0.0401696, 0.0214872, 0.00197294, -0.010518, -0.0242283, + -0.0318135, -0.00595729, 0.0123801, -0.064379, -0.0093272, -0.047988, 0.0772107, -0.0524223, + -0.0844024, -0.000671938, -0.0151113, -0.0149563, -0.0036049, 0.083559, -0.0754542, -0.0956407, + -0.035109, -0.0375144, 0.0130195, -0.0312299, -0.0114591, 0.055766, 0.120315, -0.0705052, + -0.09633, -0.011542, 0.0518571, 0.00872181, 0.0032912, -0.103982, 0.0191252, 0.000668796, + -0.0401536, -0.0493773, 0.0168348, 0.01139, 0.00740454, 0.039254, -0.0362172, 0.02814, + 0.014249, 0.0354089, -0.0336193, -0.0126663, -0.0140059, 0.0756294, 0.0198288, 0.0730499, + -0.0297365, 0.16755, 0.0359386, 0.111478, -0.0208914, 0.0188063, -0.041303, 0.0697762, + 0.0757622, -0.134472, 0.0145896, 0.133626, 0.109506, -0.00747391, 0.0592377, -0.0418491, + 0.158857, -0.0764913, -0.0324145, -0.0740956, -0.0123833, 0.021435, 0.0274086, 0.0530061, + -0.0218357, 0.158698, -0.0228227, -0.102267, -0.0387576, -0.0172159, -0.0725893, -0.113119, + -0.0698103, -0.0334452, 0.0718383, 0.153521, 0.0144299, 0.0119134, 0.0590488, 0.0985707 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p28(hatfit_yaw00_lev1_p28); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p28_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p29.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p29.mh new file mode 100755 index 0000000..443c0bf --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p29.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p29.mh: + +#ifndef stasm_hat_yaw00_lev1_p29_mh +#define stasm_hat_yaw00_lev1_p29_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p29(const double* const d) // d has 160 elements +{ + const double intercept = -0.424705; + const double coef[160] = + { + -0.0101392, 0.0594769, -0.0503994, -0.0217849, -0.0176289, 0.0145377, -0.0522176, 0.00121116, + 0.00360008, -0.0637196, 0.0524819, 0.00122919, 0.00585721, 0.0379185, 0.0118428, 0.0235596, + -0.00853191, -0.0297745, -0.0191564, 0.0336039, -0.0503812, -0.018574, 0.0527383, 0.0650683, + -0.0243727, -0.0434241, 0.00644921, -0.0300497, 0.00796432, -0.0536368, -0.0621528, 0.0279038, + -0.00738354, 0.0727482, 0.0549024, 0.0158414, -0.0583833, -0.0326461, -0.0674633, 0.0371455, + -0.00235584, -0.115486, 0.0571597, 0.0360401, 0.0540954, -0.0771664, 0.0161136, -0.035354, + 0.0430979, 0.0319481, 0.0163812, 0.0243459, 0.0489217, 0.0122026, 0.0135831, -0.000182662, + 0.0122186, -0.00370179, 0.0199094, -0.00179121, 0.0482769, 0.0688446, -0.0269516, -0.12388, + -0.00352889, 0.0219264, -0.00611725, 0.0666546, 0.0573278, 0.107485, 0.106329, -0.0893211, + -0.0891537, -0.0652508, -0.0010934, -0.00372103, 0.0410134, -0.00465645, 0.0239861, 0.0364478, + 0.0299715, 0.0630202, -0.0419831, -0.0686255, -0.0778967, 0.0467799, 0.0227674, 0.0657124, + 0.027953, 0.0426046, 0.0358549, -0.0399428, -0.0516945, 0.00788335, -0.00547867, -0.048281, + -0.0345903, -0.0463522, 0.0183776, -0.0318859, -0.0904243, -0.0961235, 0.071241, -0.0241751, + 0.0132324, 0.0117648, 0.0641096, 0.0415856, -0.00481538, -0.07176, 0.0348739, 0.107626, + 0.0708185, 0.0693277, -0.0641239, -0.0530838, -0.0661927, 0.0143412, -0.0828503, 0.0556659, + -0.142306, 0.110705, -0.0279635, 0.149666, -0.0350018, 0.0168867, 0.0640467, 0.0316187, + 0.0633347, -0.158517, 0.1008, 0.0477829, 0.111661, -0.0384688, -0.0385956, -0.0884942, + 0.092242, -0.028367, -0.0673696, -0.0897616, 0.061894, 0.10119, 0.0367397, 0.0390003, + 0.00781926, 0.135441, -0.000614327, -0.0771375, -0.107391, 0.0188102, -0.0536738, -0.0515374, + -0.0620133, -0.0284957, 0.0837494, 0.185942, 0.135109, -0.0251174, 0.0389205, 0.114206 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p29(hatfit_yaw00_lev1_p29); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p29_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p30.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p30.mh new file mode 100755 index 0000000..57b0c46 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p30.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p30.mh: + +#ifndef stasm_hat_yaw00_lev1_p30_mh +#define stasm_hat_yaw00_lev1_p30_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p30(const double* const d) // d has 160 elements +{ + const double intercept = -0.0531596; + const double coef[160] = + { + -0.116102, -0.0172225, 0.0454119, -0.0262966, -0.0207222, -0.0427532, 0.103657, 0.02224, + 0.0453501, -0.0014315, -0.0386289, -0.0456763, -0.0244043, 0.0208895, -0.0248768, 0.0451056, + -0.0245413, 0.0127505, 0.0329261, -0.00134255, -0.0140381, -0.0259175, -0.0684072, -0.0488436, + -0.0394765, -0.0451636, -0.0680844, -0.0211025, -0.00292934, 0.0674798, -0.00288135, 0.0395926, + 0.00930007, 0.0408055, 0.0158728, -0.0368503, -0.00486911, 0.0206787, -0.0960855, 0.0674777, + 0.146507, 0.0597985, -0.0785504, -0.0352399, -0.0553251, 0.0498531, -0.0510412, -0.05066, + -0.0637962, 0.0197599, 0.0860904, 0.19492, 0.16902, -0.0177371, 0.0311064, 0.0233502, + 0.0702246, 0.0475911, -0.09766, -0.0689293, -0.00937745, 0.00158015, 0.113499, 0.129597, + 0.0206268, 0.0119381, 0.0850598, 0.015194, -0.0276467, -0.0842619, 0.00383884, -0.00787932, + 0.016834, 3.43563e-05, 0.0220212, 0.0351324, -0.013533, 0.00399515, -0.0409508, -0.0654589, + -0.032318, 0.0819506, -0.0245304, -0.127415, -0.0202418, 0.00750139, 0.103719, 0.027766, + -0.00622414, -0.0615687, 0.0384051, -0.00782071, -0.109777, -0.0693072, -0.030324, -0.0384596, + -0.0193364, -0.0411026, 0.113159, 0.0408849, -0.0170671, 0.0279579, -0.0372294, -0.0214017, + 0.0114996, 0.0578027, -0.0615514, 0.0152347, 0.0460153, 0.111419, 0.0514752, 0.0416284, + -0.00200971, -0.00390233, -0.0450069, -0.023482, 0.0194326, -0.0105444, -0.0657913, -0.0614153, + -0.00685912, -0.0665019, -0.0477235, 0.0210051, 0.0345011, 0.0562563, 0.0548732, 0.00697098, + -0.0315075, -0.0138438, 0.00567381, -0.0284875, 0.00999239, -0.00871022, -0.0646768, -0.0581475, + -0.0023445, 0.0307289, -0.0300773, -0.0644101, 0.012134, -0.0145632, -0.0152647, 0.0761716, + -0.0944007, -0.00998309, 0.0451726, 0.0128116, 0.025647, -0.0153354, -0.0149689, 0.0425286, + 0.00340354, 0.0453019, -0.0248344, 0.0279366, -0.0537908, -0.00810353, -0.0232331, -0.0725048 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p30(hatfit_yaw00_lev1_p30); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p30_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p31.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p31.mh new file mode 100755 index 0000000..f3392ae --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p31.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p31.mh: + +#ifndef stasm_hat_yaw00_lev1_p31_mh +#define stasm_hat_yaw00_lev1_p31_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p31(const double* const d) // d has 160 elements +{ + const double intercept = -0.388448; + const double coef[160] = + { + 0.0395692, -0.000582387, 0.0396386, 0.00866431, 0.0319535, 0.0041876, -0.0354922, -0.0104189, + -0.0310756, -0.0246819, 0.0131718, 0.0140588, -0.0118571, 0.0396711, 0.00573793, -0.0420841, + -0.0392253, 0.00435255, 0.0107915, 0.0484352, 0.069234, 0.0120039, -0.0142504, -0.0481674, + -0.0288146, -0.0300535, 0.0359163, 0.0134041, 0.0314277, -0.0117238, 0.0785214, 0.0631591, + -0.0130544, -0.0264549, -0.05275, -0.012083, 0.0545285, 0.00115459, -0.0312022, 0.0219239, + -0.0323945, -0.0122762, 0.015471, -0.0308729, -0.0539241, -0.0488238, 0.12595, -0.111672, + -0.0124925, 0.00426807, 0.0116804, -0.00775668, 0.039259, -0.0806952, 0.061823, 0.0456183, + 0.0410691, 0.0470852, 0.0510043, -0.00393638, -0.0729619, -0.0124941, 0.0428558, 0.122023, + 0.0525826, 0.0228482, -0.0453305, -0.0276555, -0.0690039, 0.00233118, -0.0920037, -0.011254, + -0.0476996, -0.00179941, -0.00906979, -0.0290895, 0.00247007, 0.0122311, -0.0150106, -0.0317769, + 0.099511, -0.102523, 0.0281903, 0.0553347, 0.119371, 0.0605233, -0.0784847, 0.0330739, + 0.0753692, 0.0859453, -0.0625154, -0.0926569, -0.0918532, 0.109675, -0.0501109, 0.0111423, + -0.049514, 0.0157422, 0.0406392, 0.105897, 0.038947, -0.0269157, -0.0732481, -0.134709, + -0.0132958, -0.0224088, 0.0157976, 0.0838067, 0.120186, 0.0517959, 0.105812, 0.130127, + 0.0182283, 0.052454, -0.0116218, -0.0192446, -0.0667099, -0.0212154, 0.0318632, -0.00745494, + 0.00943903, -0.0745027, 0.0762356, -0.00904315, -0.017699, -0.0561609, 0.0252819, 0.00907982, + -0.0613076, 0.0518035, 0.0243614, -0.0599225, 0.0215072, 0.00576192, 0.00735767, -0.0274716, + 0.0246765, 0.0444133, -0.000244459, -0.0395511, -0.0331652, -0.0164145, 0.0816089, 0.0400588, + -0.0199769, -0.102558, -0.0129884, -0.0170645, -0.0686559, -0.0387113, -0.0817568, -0.0127845, + -0.00316126, 0.0933731, 0.0331108, 0.0268358, 0.0409501, 0.0787449, 0.0206058, 0.0677994 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p31(hatfit_yaw00_lev1_p31); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p31_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p32.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p32.mh new file mode 100755 index 0000000..a76f1ee --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p32.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p32.mh: + +#ifndef stasm_hat_yaw00_lev1_p32_mh +#define stasm_hat_yaw00_lev1_p32_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p32(const double* const d) // d has 160 elements +{ + const double intercept = -0.320639; + const double coef[160] = + { + -0.00911108, -0.0479156, -0.00740632, -0.012859, 0.0309539, 0.00489859, -0.00624756, -0.020108, + 0.0677567, -0.0155136, 0.0678659, 0.00147824, 0.0438044, 0.00549171, 0.0268882, -0.00297623, + 0.0467355, -0.000569183, 0.0496245, 0.014699, 0.0616936, 0.00263958, -0.0395147, -0.0297785, + 0.0126961, -0.00781382, 0.000625079, 0.0178607, 0.0226246, 0.0655686, 0.0337088, -0.0304876, + -0.0257202, -0.0219612, -0.0213103, 0.0194326, 0.0577388, -0.0477398, 0.0466768, 0.0194634, + 0.0182962, -0.0162236, -0.00055095, -0.0110111, -0.0190531, -0.0274738, -0.0244005, 0.066355, + -0.0631781, 0.0319185, 0.00377789, 0.00719412, -0.0578098, 0.0220575, -0.0130465, -0.0338156, + -0.0718547, -0.0406409, -0.0248472, -0.0471251, -0.0763616, -0.0305719, 0.0872795, -0.04342, + -0.0291223, 0.0174219, 0.0140269, 0.0152528, -0.00418056, -0.0340391, 0.0826187, 0.0677038, + 0.0170003, -0.00907442, -0.0291512, -0.0377432, -0.0488433, 0.0483225, -0.100243, 0.034457, + -0.106342, 0.12952, 0.0241453, 0.0446246, -0.0607043, 0.0811712, 0.0895215, -0.0504978, + 0.122301, -0.0768722, 0.0214746, -0.0429019, 0.0439603, -0.0422063, 0.0225263, -0.0368518, + 0.0926311, 0.02738, -0.0239644, 0.0229243, 0.0579599, 0.0101616, -0.00726972, -0.000649471, + 0.0135215, 0.0385566, 0.0175664, -0.0460473, -0.050476, 0.0167167, -0.040066, 0.0147113, + -0.00118741, 0.042841, 0.0631771, 0.145191, 0.0466015, -0.0373302, 0.0596687, 0.106164, + 0.0088616, 0.0634729, -0.0771898, 0.0459812, 0.0167569, -0.0705409, -0.0386409, 0.112283, + -0.0571554, -0.168199, 0.0226604, 0.034943, 0.0155652, 0.0234396, -0.0123834, 0.00107804, + 0.0273647, 0.033714, 0.0945813, -0.0809198, 0.0404793, 0.0308191, -0.00997607, -0.0276745, + 0.0276755, 0.0481048, -0.101447, -0.0905513, -0.0451026, 0.0491422, 0.0664234, -0.0265713, + -0.040285, -0.0443237, 0.0464626, 0.0769965, 0.0259644, -0.0342793, -0.0543196, -0.0928784 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p32(hatfit_yaw00_lev1_p32); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p32_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p33.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p33.mh new file mode 100755 index 0000000..36a056d --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p33.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p33.mh: + +#ifndef stasm_hat_yaw00_lev1_p33_mh +#define stasm_hat_yaw00_lev1_p33_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p33(const double* const d) // d has 160 elements +{ + const double intercept = -0.0187845; + const double coef[160] = + { + 0.0128283, -0.055128, 0.010886, -0.0231225, -0.0305408, 0.00461099, 0.0104216, 0.0271656, + -0.00228586, 0.0483301, -0.0136487, 0.0271316, 0.0564309, -0.0270776, 0.043211, -0.0112379, + 0.0231918, -0.0112949, 0.036762, -0.00612861, -0.00486995, -0.0342318, -0.0290889, -0.0106391, + 0.000312558, 0.0285837, 0.0235095, -0.028434, 0.00831803, 0.0265148, -0.050084, -0.0117228, + 0.00236049, -0.041693, -0.026685, 0.0302716, 0.00699107, 0.0666115, 0.037568, -0.003785, + -0.0251941, 0.0411825, -0.122721, -0.0247136, -0.0390895, 0.0417399, -0.0253207, -0.0118569, + -0.0162393, -0.0527942, 0.0783038, -0.00984112, -0.0233633, -0.000284128, -0.0400959, 0.0280783, + -0.0313475, 0.0260252, 0.00081784, -0.00324565, -0.0279781, 0.044135, 0.040844, 0.0306354, + 0.0187744, -0.0480202, 0.00757192, -0.00948626, -0.0589132, -0.0367085, 0.0597323, -0.108456, + -0.0430326, -0.0269714, 0.0392287, -0.00913477, 0.0286522, -0.137626, 0.0983528, 0.0694479, + 0.0673885, -0.0641448, 0.0966714, 0.0478503, 0.0526654, 0.105189, 0.0627519, -0.00105678, + -0.0623832, 0.134875, -0.0582099, -0.0352066, -0.0525147, 0.00990412, 0.0244933, 0.0171214, + 0.0367176, -0.0621222, 0.0158906, 0.0668107, -0.0107779, -0.0596686, -0.0566563, -0.0810594, + 0.0323834, 0.0121392, 0.0145543, -0.00650743, 0.114811, 0.0771221, -0.0600683, 0.0573055, + 0.0851473, 0.0814111, -0.0693027, -0.0160514, -0.0557765, 0.096182, -0.0552072, -0.0662288, + -0.029029, -0.0104541, 0.00859579, -0.0230395, -0.00224977, -0.0723467, -0.113479, -0.0628757, + 0.0067731, -0.000458681, -0.0301224, -0.00614874, -0.0341254, 0.00474058, 0.0300139, 0.0479876, + -0.0236848, -0.0624128, -0.0471116, 0.0415574, 0.0389746, 0.00909709, 0.102794, 0.0861245, + -0.0197406, -0.0237167, 0.164457, -0.0215144, -0.0320249, -0.0882093, -0.0687686, -0.0792362, + -0.0391014, 0.0326003, -0.031806, -0.111365, 0.0365271, 0.00928061, 0.0847804, 0.066844 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p33(hatfit_yaw00_lev1_p33); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p33_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p34.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p34.mh new file mode 100755 index 0000000..e1812de --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p34.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p34.mh: + +#ifndef stasm_hat_yaw00_lev1_p34_mh +#define stasm_hat_yaw00_lev1_p34_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p34(const double* const d) // d has 160 elements +{ + const double intercept = 0.178305; + const double coef[160] = + { + 0.0332668, -0.0545706, -0.0397769, -0.102727, -0.0513047, -0.0280496, 0.0212568, 0.100975, + 0.0147986, 0.0945098, 0.0225728, 0.0163496, -0.0706498, 0.0135124, -0.0338867, -0.00292602, + -0.0117578, -0.0228322, -0.0991631, -0.0196783, -0.0715382, -0.0609741, -0.0451959, -0.00996876, + -0.0218956, 0.0405813, 0.0512725, -0.0304816, -0.0346735, 0.0410437, -0.0599454, 0.0278405, + -0.00430012, -0.0515526, 0.0408474, -0.0180384, -0.0375938, -0.050297, 0.0854439, -0.065132, + -0.0480776, -0.00851022, -0.0311825, -0.0125235, 0.10003, 0.0265117, -0.0932129, -0.0905405, + -0.0179596, -0.0783844, 0.0545748, 0.0983039, 0.112361, 0.103802, 0.000276691, -0.000181198, + 0.0260529, 0.0539351, 0.0215641, -0.0677932, 0.000667061, 0.145442, 0.129529, -0.000832013, + -0.0467681, 0.0241408, 0.0423294, 0.121797, -0.0189404, -0.12473, -0.00636875, -0.0269607, + 0.0997501, -0.0567658, -0.0953586, -0.0093058, 0.0775357, 0.0544267, -0.0465235, -0.0602757, + 0.0582786, -0.0635637, -0.027749, -0.0187748, -0.0546626, -0.149418, 0.043224, 0.0541148, + 0.0228059, 0.0306246, 0.00155719, -0.0412755, 0.032523, -0.0587637, -0.0013374, 0.0502265, + -0.0342482, 0.038831, 0.110763, -0.0240828, -0.0316851, -0.083598, -0.0966767, 0.00540257, + 0.0175222, -0.0453235, -0.0782324, 0.0424939, 0.0441882, -0.00707829, 0.0587061, 0.0676098, + -0.0898869, -0.0279974, 0.112122, -0.0175998, 0.0104283, -0.00582047, 0.00140559, 0.0392947, + -0.0652298, 0.0749545, 0.0544736, 0.0131598, 0.0152306, 0.0831729, -0.0200888, -0.0612296, + -0.0401844, -0.0736851, -0.079223, 0.0341835, -0.0466979, 0.0652963, -0.0215782, 0.0160373, + -0.00665171, 0.0425585, -0.0160073, 0.0448272, 0.00451256, 0.00694954, -0.00332655, -0.00627149, + -0.0135419, 0.00919265, 0.0027794, -0.00835187, -0.0440384, 0.0110796, -0.000867199, -0.00321809, + 0.0543303, -0.0137353, -0.0224532, -0.0320376, -0.0150772, 0.00407994, 0.0127847, -0.0176401 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p34(hatfit_yaw00_lev1_p34); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p34_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p35.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p35.mh new file mode 100755 index 0000000..b04fecc --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p35.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p35.mh: + +#ifndef stasm_hat_yaw00_lev1_p35_mh +#define stasm_hat_yaw00_lev1_p35_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p35(const double* const d) // d has 160 elements +{ + const double intercept = -0.128463; + const double coef[160] = + { + 0.0548922, -0.0110683, -0.142114, -0.061709, -0.0739904, 0.0729181, 0.00372399, -0.0401665, + -0.0617821, 0.0601517, 0.0413927, -0.0297843, -0.0801413, 0.00486967, 0.0463089, 0.0182653, + 0.0368233, -0.00796331, 0.00955545, -0.0470071, -0.0327957, -0.0484237, 0.00205177, -0.0591226, + 0.0825365, 0.0521992, 0.00709222, 0.0413314, 0.026715, 0.0396009, 0.05337, -0.0870864, + 0.0624343, -0.0520468, 0.0297113, 0.0155546, 0.0373713, -0.0259624, -0.00302342, 0.0722519, + -0.012865, -0.0359395, 0.201415, 0.0834435, 0.131066, 0.0488908, -0.0165508, -0.0287044, + -0.0236077, 0.0360244, -0.0465815, 0.0298103, -0.0507475, -0.0381212, -0.00291925, 0.066679, + -0.0280296, -0.116999, -0.0653786, 0.138842, 0.135875, 0.00553319, 0.0729103, 0.0155418, + -0.0202042, -0.0540844, 0.101567, -0.051419, 0.0423417, 0.0287684, -0.123131, 0.0581658, + 0.0604602, 0.113075, -0.0644531, -0.0664801, -0.0592592, 0.0547968, 0.0039087, -0.0837654, + -0.0117236, 0.0236007, -0.146423, -0.0754925, -0.0932447, -0.0715713, -0.0024796, 0.001342, + 0.00909714, 0.0537925, -0.0105599, -0.0726132, -0.0738913, 0.023578, 0.0422188, -0.0206054, + 0.0173315, 0.0659782, 0.0403875, 1.06256e-05, -0.0569155, -0.00761777, 0.00587271, 0.0149728, + -0.0151301, 0.0470131, 0.0320093, 0.0175039, -0.0121165, -0.051231, 0.0608582, -0.0104416, + -0.0912704, 0.00771752, 0.0291578, -0.0629806, 0.0279452, -0.0162268, -0.0166928, 0.0858329, + -0.0414572, -0.00935215, -0.00984813, 0.0352476, 0.0321423, 0.0210393, -0.0371691, 0.0191584, + -0.0362629, -0.0497132, 0.00950301, 0.0912439, 0.0447469, 0.0326298, -0.0463132, 0.0560467, + 0.0252251, -0.0729444, -0.00413866, -0.0123862, 0.0247588, -0.0158056, 0.017215, -0.0253207, + 0.0436535, -0.0472254, 0.0386084, -0.0160216, 0.00108055, 0.00200998, 0.0146819, 0.00212591, + 0.0759401, -0.0456016, 0.0433273, -0.0109767, 0.00185021, 0.0298317, -0.018552, -0.128413 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p35(hatfit_yaw00_lev1_p35); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p35_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p36.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p36.mh new file mode 100755 index 0000000..9902dcf --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p36.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p36.mh: + +#ifndef stasm_hat_yaw00_lev1_p36_mh +#define stasm_hat_yaw00_lev1_p36_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p36(const double* const d) // d has 160 elements +{ + const double intercept = -0.1457; + const double coef[160] = + { + -0.0564536, 0.0914242, 0.00271123, -0.00182844, -0.0633129, -0.00733241, 0.0999422, -0.0477681, + 0.0764352, -0.0870852, -0.0486103, -0.0607736, -0.000435941, 0.00508668, -0.00500671, -0.0702268, + 0.128733, 0.0442575, 0.00878972, 0.0700395, 0.0473909, 0.0543005, -0.0111132, 0.013342, + 0.0205181, -0.0355777, -0.0151112, -0.0472716, -0.0856515, -0.0205877, -0.052943, -0.0136666, + 0.0069465, -0.0149346, -0.011358, 0.12753, 0.0984476, -0.0389193, 0.0579468, 0.0582624, + -0.0110768, 0.0444154, 0.00744086, 0.0866081, 0.0722389, -0.0573269, 0.0403181, 0.0920937, + -0.0364049, -0.115042, -0.00983702, 0.0596673, 0.0885667, 0.0310721, 0.00586564, 0.0468913, + -0.017122, -0.000325935, 0.0991339, -0.116244, -0.00667895, -0.0376603, -0.0678163, -0.0170879, + 0.0636697, 0.176845, -0.0927495, -0.091466, -0.0301194, 0.0528387, 0.0603075, 0.0012436, + -0.023938, 0.0278906, 0.172167, 0.0984494, 0.0194545, -0.024253, 0.0253562, -0.0318126, + -0.0194975, -0.0336116, -0.0267596, -0.0570041, -0.114461, 0.049068, -0.0356616, -0.0641071, + -0.00190114, 0.0505992, 0.0442466, 0.0142396, 0.00045172, 0.00117748, 0.064219, 0.00253523, + -0.0195815, -0.0274017, -0.0863983, -0.00886134, 0.030472, 0.0307451, 0.0463506, 0.0257106, + -0.0510129, -0.0619829, 0.0429726, 0.00240901, 0.0356966, 0.0180151, 0.0145302, 0.0191548, + -0.00199986, -0.0803635, -0.0330699, -0.0717274, -0.111292, -0.0742702, -0.0968331, -0.0140921, + -0.00389644, -0.0145533, 0.0115622, 0.0453926, 0.0300503, -0.0389438, -0.0292711, 0.0364436, + 0.0649299, -0.0437214, 0.0145625, -0.0366767, -0.00301135, -0.0164178, 0.0228936, -0.0039428, + 0.0138233, -0.059277, 0.0865879, -0.0358495, 0.0105995, -0.00712132, -0.0193304, -0.0165668, + 0.030437, -0.0192797, -0.0634831, -0.010421, -0.0251347, 0.0561532, 0.0426267, -0.0252875, + -0.0555928, 0.101112, 0.0649617, 0.0141765, 0.0842734, 0.00376744, -0.076665, -0.0297095 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p36(hatfit_yaw00_lev1_p36); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p36_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p37.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p37.mh new file mode 100755 index 0000000..f2343ca --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p37.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p37.mh: + +#ifndef stasm_hat_yaw00_lev1_p37_mh +#define stasm_hat_yaw00_lev1_p37_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p37(const double* const d) // d has 160 elements +{ + const double intercept = -0.210055; + const double coef[160] = + { + 0.0950493, -0.00935139, 0.01181, 0.0394899, 0.0811007, 0.0275117, 0.0722424, -0.0881804, + 0.0348525, -0.0485876, -0.0160258, -0.0341514, -0.0305043, 0.0101718, -0.015857, 0.0402802, + -0.0377945, -0.0019027, 0.072919, 0.0842745, 0.000222965, -0.0380939, -0.0246376, -0.00424166, + 0.0194486, -0.0349667, -0.0273841, 0.0305295, 0.0636758, 0.00705299, 0.0305668, 0.0398521, + -0.118265, -0.0584037, -0.10794, -0.0415925, -0.0515304, -0.0127716, -0.0253359, -0.0407751, + 0.0420787, -0.148058, 0.0641812, 0.0268058, 0.0528418, -0.0247641, -0.0671391, 0.0818132, + 0.0311401, 0.128031, -0.0883229, -0.153532, -0.0651225, 0.034562, -0.00306306, -0.0456042, + 0.0944498, 0.100044, -0.000950214, 0.0151305, -0.0213224, -0.00808936, 0.0587715, -0.0295509, + -0.0385254, 0.034971, 0.0858179, 0.0599195, 0.0747935, -0.0450389, 0.00131876, 0.0261896, + 0.169738, 0.154491, 0.100171, 0.012634, -1.95869e-05, 0.0209616, 0.0390095, 0.102296, + -0.0308072, 0.0561644, 0.0242179, 0.0230298, -0.0307823, -0.00846482, 0.0667324, -0.0606024, + -0.0581933, -0.0114812, -0.0133874, -0.0071245, 0.0813445, 0.0274338, 0.0280443, 0.0464938, + -0.0905175, -0.0693952, 0.00853314, -0.00178364, -0.0380305, 0.00459273, 0.0106825, 0.0111277, + -0.0120436, -0.117429, -0.0235661, -0.0397598, -0.101663, -0.0520093, -0.0944389, 0.000748769, + -0.11383, -0.000200208, -0.0660839, -0.0318683, 0.00202877, 0.0629289, 0.0393827, -0.0105708, + 0.0631688, -0.108595, 0.0667351, -0.0726672, 0.0300087, -0.00349452, 0.00734037, 0.031999, + 0.0497461, 0.00735207, 0.00306494, 0.014219, -0.0212763, 0.00729894, 0.0156232, -0.0397873, + 0.0196028, 0.0102293, -0.0297117, -0.0220887, 0.011573, 0.0196214, -0.0306056, -0.0356663, + 0.0183344, 0.0707345, 0.0325791, -0.00904613, 0.0610273, 0.0230972, -0.0134933, -0.00580341, + -0.00179494, 0.0261325, 0.0439199, 0.0950851, 0.0437041, -0.0344384, -0.0711167, 0.0268441 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p37(hatfit_yaw00_lev1_p37); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p37_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p38.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p38.mh new file mode 100755 index 0000000..73ca407 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p38.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p38.mh: + +#ifndef stasm_hat_yaw00_lev1_p38_mh +#define stasm_hat_yaw00_lev1_p38_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p38(const double* const d) // d has 160 elements +{ + const double intercept = 0.00825774; + const double coef[160] = + { + 0.020407, 0.00890872, -0.0169787, -0.00204599, 0.00584481, 0.00639558, -0.0849912, 0.00116488, + -0.0601776, 0.00297223, 0.0121289, -0.000996734, -0.0504259, 0.0155576, 0.0171136, -0.0268562, + -0.113227, -0.0539823, -0.00137992, -0.0682175, -0.054388, -0.029641, 0.056121, -0.0473043, + -0.0266457, 0.0332315, -0.0335831, 0.0421327, 0.0238765, 0.0182142, 0.0496482, 0.0712496, + -0.00973039, 0.0157489, 0.0170978, -0.0118249, -0.00446035, 0.00864153, -0.085431, 0.0142116, + -0.0440188, 0.0403919, 0.0950656, 0.0150426, -0.0402887, -0.00466724, 0.0537792, 0.00106359, + 0.0897128, -0.0689607, -0.0521427, -0.0517765, 0.030659, -0.0411972, 0.0376676, -0.082132, + 0.127533, 0.0719542, 0.00061304, 0.0947038, 0.0898292, 0.05316, 0.0314538, 0.053163, + -0.00890308, -0.0451384, 0.0111458, -0.10212, -0.0509414, -0.0147361, -0.0346506, -0.0219878, + 0.00741214, 0.0021788, 0.0244155, 0.101578, 0.0200075, -0.0234641, 0.0230619, 0.0857225, + -0.0198343, 0.0936703, -0.0537956, 0.0921753, 0.138995, -0.0724931, 0.0615286, 0.0941637, + -0.0237765, -0.164809, 0.0134797, -0.00604466, -0.0255852, 0.0324988, -0.1069, 0.0255736, + -0.0514497, -0.0090038, 0.0936203, -0.0991071, 0.00258113, -0.0100746, -0.00428397, -0.0354388, + 0.0905338, 0.142749, -0.142989, -0.0846769, -0.0825498, 0.0805062, -0.00189693, -0.0404901, + -0.00501544, -0.0170325, 0.104385, 0.133965, 0.0772667, -0.076081, 0.040041, -0.0423703, + -0.0192534, 0.00365024, -0.00859575, -0.021672, -0.0746258, 0.0422147, 0.00830109, -0.00595983, + -0.00282683, 0.0146986, 0.0234629, 0.0102508, 0.00175921, 0.0115853, 0.0428529, -0.0050183, + -0.0154206, -0.0336309, 0.0154812, -0.0383404, 0.0251418, -0.0212968, -0.0185515, 0.0357765, + -0.0842346, -0.022264, -0.00279582, 0.00169226, 0.056891, 0.056779, 0.0231415, 0.0348637, + -0.0464232, -0.0307553, -0.00421516, -0.0536781, -0.0807341, -0.0179894, -0.0516063, 0.0255976 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p38(hatfit_yaw00_lev1_p38); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p38_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p39.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p39.mh new file mode 100755 index 0000000..5dd53ad --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p39.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p39.mh: + +#ifndef stasm_hat_yaw00_lev1_p39_mh +#define stasm_hat_yaw00_lev1_p39_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p39(const double* const d) // d has 160 elements +{ + const double intercept = -0.02697; + const double coef[160] = + { + -0.0137683, 0.0311045, -0.00576306, -0.0245337, -0.02928, 0.0415028, -0.107335, -0.016224, + -0.0457684, -0.00847157, 0.00116153, -0.0267579, -0.0351215, 0.010888, 0.05105, -0.00561323, + -0.0823366, -0.0528186, -0.0139097, -0.0424504, -0.0681589, -0.0593362, 0.0631822, -0.0315455, + -0.0168791, 0.0661379, 0.00162439, 0.00656767, 0.0131466, 0.0123653, 0.0107543, -0.00464072, + -0.0276494, 0.0165671, -0.0178021, 0.0154676, -0.0178779, 0.0137792, -0.0560624, 0.0100809, + -0.0397822, 0.0332191, 0.0806629, 0.106174, -0.0112653, 0.00187161, 0.017389, 0.0214195, + 0.089707, -0.0532137, -0.0466615, -0.0195368, 0.0441674, -0.0145126, 0.0705208, -0.0387176, + 0.116554, 0.0654563, 0.00963125, 0.0722848, 0.113763, 0.0196434, 0.0266145, 0.0757253, + -0.0426398, -0.109253, 0.000972455, -0.070805, -0.068536, -0.00561257, -0.0636282, -0.0180017, + 0.0597286, -0.0306022, 0.0558584, 0.0753626, 0.0085934, -0.0378896, 0.067625, 0.0802456, + -0.0274845, 0.162607, -0.0419922, 0.0483271, 0.123508, -0.0646426, 0.0586254, 0.0346976, + 0.0291506, -0.159534, -0.0188968, 0.0379708, 0.0134742, 0.029137, -0.0647252, 0.029742, + -0.0261874, -0.0465041, 0.143266, -0.088367, -0.0551904, -0.00386277, -0.0299972, -0.0609167, + 0.00441822, 0.154191, -0.129404, -0.0879472, -0.0580239, 0.0599026, -0.0028995, -0.0540687, + 0.0144118, -0.0158184, 0.0417359, 0.0837592, 0.0243108, 0.00549566, 0.0503914, -0.0967733, + -0.0229701, -0.073099, -0.0420856, -0.0503984, -0.111204, 0.0354666, -0.0518395, -0.0114431, + 0.0396234, 0.025096, 0.0130838, 0.056822, -0.0405526, -0.00781527, 0.073553, 0.00667156, + 0.000719109, -0.0457464, -0.00136307, -0.0379476, -0.0192339, -0.0586512, -0.0390123, 0.0188078, + -0.0139295, 0.0144688, 0.0327322, 0.0454937, 0.0938609, 0.0331601, 0.050297, 0.0423592, + -0.0363346, -0.010519, -0.00131118, -0.0415203, -0.0498438, -0.00662749, -0.0168949, 0.0644758 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p39(hatfit_yaw00_lev1_p39); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p39_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p40.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p40.mh new file mode 100755 index 0000000..6e71e5e --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p40.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p40.mh: + +#ifndef stasm_hat_yaw00_lev1_p40_mh +#define stasm_hat_yaw00_lev1_p40_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p40(const double* const d) // d has 160 elements +{ + const double intercept = -0.0617577; + const double coef[160] = + { + 0.0156052, -0.0459866, -0.00696063, 0.0189737, 0.0265626, 0.0491555, -0.068995, 0.0519549, + 0.0218703, 0.00595397, -0.048948, -0.0240862, -0.0436321, 0.0146736, 0.00315227, 0.0799594, + -0.0552814, -0.00730044, -0.0093325, -0.0324573, -0.0363188, -0.0184091, -0.0983743, -0.0142322, + -0.0277883, -0.0040611, 0.0201635, 0.0043392, -0.0182613, 0.0492748, -0.0425199, -0.0311676, + -0.0198514, -0.0524871, 0.0234489, -0.0173401, -0.0654155, -0.0320293, 0.136825, 0.00609792, + 0.0312316, 0.0166199, 0.0998807, -0.0362655, -0.00310585, -0.103129, -0.0359893, -0.0347384, + -0.125087, -0.0814028, -0.00221715, 0.057648, 0.0746448, 0.00398399, 0.0274751, -0.0829248, + 0.0451593, 0.0611274, -0.0543719, 0.00362775, 0.00348841, 0.154784, 0.0544589, -0.000858817, + 0.0289775, 0.116359, 0.0488896, 0.0798694, 0.0394962, -0.0692173, 0.0532962, 0.0636297, + 0.088678, -0.0533548, -0.0582863, -0.000803631, 0.109162, 0.00118488, -0.059963, -0.0239472, + 0.0771359, 0.0276344, -0.0882249, 0.0688487, -0.00748756, -0.0326405, -0.0178754, -0.00313541, + 0.0451601, 0.043886, 0.0659399, -0.059189, 0.0788565, 0.0218061, 0.0332941, 0.108433, + -0.0465029, -0.0203694, 0.0980137, -0.0546819, -0.0378287, -0.03932, -0.00657228, -0.018022, + -0.0559456, -0.00620295, -0.0316693, 0.00968451, -0.0135787, 0.0130518, -0.00506395, -0.00892536, + -0.0593109, -0.104716, 0.0508358, 0.060059, -0.00030429, 0.0226462, 0.069877, 0.0195314, + -0.0268644, 0.00339959, 0.00963795, 0.0229593, -0.0540894, -0.0612055, -0.0395579, -0.0376664, + 0.0072953, 0.0102422, -0.0257972, 0.0812377, -0.110344, 0.046166, 0.0147895, -0.0229899, + 0.00976963, -0.0256674, -0.0210554, 0.00772394, -0.00608955, 0.00331062, -0.0475402, 0.0181648, + 0.0137614, -0.000236305, -0.0178339, -0.0104172, -0.0305334, -0.0299109, -0.0491962, -0.0191575, + 0.057466, 0.0412388, -0.034844, -0.0256005, -0.00917834, 0.00792608, 0.0468386, 0.021432 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p40(hatfit_yaw00_lev1_p40); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p40_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p41.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p41.mh new file mode 100755 index 0000000..3368ddf --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p41.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p41.mh: + +#ifndef stasm_hat_yaw00_lev1_p41_mh +#define stasm_hat_yaw00_lev1_p41_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p41(const double* const d) // d has 160 elements +{ + const double intercept = -0.262799; + const double coef[160] = + { + 0.0594156, -0.0187286, -0.0323565, -0.0226788, -0.055155, 0.0173702, -0.033518, -0.0434084, + 0.0596953, 0.04228, -0.00726641, 0.0119526, -0.0537957, 0.0293668, 0.100588, 0.000491553, + 0.0307966, 0.0224319, 0.00512161, -0.0152303, 0.00408469, -0.0856581, -0.0283398, 0.0343747, + 0.0086871, 0.0207789, 0.0469816, -0.038938, 0.00391296, -0.0168281, -0.0427036, 0.00361286, + 0.0179812, 0.0169613, 0.00572675, 0.0304129, -0.00196809, 0.0418755, -0.00682326, -0.00526619, + -0.051209, 0.00270587, -0.0942246, -0.032416, -0.0220637, -0.00783117, -0.0169596, 0.0714794, + -0.0995697, -0.0152599, 0.0286164, 0.00709659, 0.0347345, 0.0513593, -0.132293, -0.0621502, + -0.0369908, 0.00803909, 0.0541353, 0.049953, -0.00213287, 0.0951546, 0.0857773, -0.00410647, + -0.0191665, -0.0381783, -0.0355435, -0.0131754, -0.00711061, -0.0496656, 0.0938031, -0.0537285, + -0.0575811, -0.0393168, 0.0567432, 0.00969633, 0.00741533, -0.0857071, 0.0651419, 0.0182334, + -0.0445946, -0.078534, 0.0226902, 0.00333909, 0.0361221, 0.0670708, 0.0128299, -0.0734256, + 0.0400354, 0.166504, 0.0157823, -0.00584887, -0.0352993, 0.0117685, 0.0264848, 0.0966697, + 0.0356856, -0.0375088, 0.0058627, 0.0673025, 0.0384437, -0.0679526, -0.0509106, -0.00267304, + 0.0892667, 0.0126181, 0.0327518, 0.0443882, 0.073673, 0.0527703, -0.0464817, 0.0490703, + 0.0459133, 0.0243223, -0.0656711, -0.0428812, -0.0567108, 0.0741543, -0.0408965, -0.0359412, + 0.00660457, 0.0337438, 0.084027, 0.00664404, 0.00537387, 0.00442322, -0.016303, 0.0799516, + -0.0276819, -0.0329564, -0.0322236, -0.0538003, -0.0247828, -0.0352706, -0.00563658, -0.0606449, + -0.0264253, -0.0629177, -0.0583771, 0.0590368, -0.00873518, 0.0266721, 0.0847975, 0.0309815, + 0.00688709, -0.0389876, 0.132531, -0.0169061, -0.0111577, -0.0763632, -0.0418102, -0.0389548, + -0.00804132, 0.0567647, 0.00484636, -0.0533848, 0.0127496, 0.00782392, 0.079095, 0.0268384 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p41(hatfit_yaw00_lev1_p41); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p41_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p42.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p42.mh new file mode 100755 index 0000000..f128ecf --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p42.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p42.mh: + +#ifndef stasm_hat_yaw00_lev1_p42_mh +#define stasm_hat_yaw00_lev1_p42_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p42(const double* const d) // d has 160 elements +{ + const double intercept = -0.267832; + const double coef[160] = + { + 0.0250589, 0.0223719, -0.0531637, 0.0118598, -0.0518864, 0.0149485, 0.0560363, 0.000827213, + 0.0652895, 0.0216623, 0.0213494, -0.00431385, 0.0155663, -0.0697053, 0.0143104, 0.0269714, + 0.0717636, 0.0164198, 0.0651081, -0.00678762, 0.0217544, 0.0433132, -0.0405112, 0.0233288, + 0.0368319, -0.00987942, 0.0394593, 0.0363214, 0.0098887, -0.032322, -0.0148654, -0.0114874, + 0.0167995, -0.0430063, -0.00212365, -0.0600111, -0.0100988, 0.00564683, 0.00651138, 0.0223506, + -0.0475533, -0.017191, -0.0231814, -0.0394015, 0.0183108, 0.056735, -0.0773495, -0.0186808, + -0.10888, -0.01172, -0.012778, -0.0280946, -0.023565, 0.0426887, 0.0803558, -0.00555116, + -0.0821078, -0.0211481, 0.0114963, 0.0126135, -0.0138914, -0.0961712, 0.0534635, -0.0237414, + -0.0627828, 0.0069159, -0.0124681, -0.0437366, -0.015536, 0.0277698, 0.00946747, -0.0386741, + -0.00681303, 0.0287985, -0.0146775, -0.00106336, -2.09394e-05, 0.0529079, 0.0153303, 0.00134007, + -0.0475712, 0.150543, 0.0663932, 0.110781, -0.0139091, 0.0487534, -0.00906667, -0.00264463, + 0.105522, -0.0986673, 0.00944924, 0.044035, 0.0759185, -0.00941136, 0.0772422, -0.0080406, + 0.0982731, 0.009884, -0.0309918, 0.00527481, 0.0366586, -0.0249879, -0.00944553, 0.0612417, + -0.0196947, 0.0219406, -0.00881142, -0.0202785, -0.0113854, 0.0112294, -0.0726931, -0.00253419, + 0.0140862, -0.0546059, 0.0840347, 0.104682, -0.0256582, -0.038651, 0.0835034, 0.136506, + 0.00104366, 0.0249283, -0.0248792, 0.00766329, 0.0371655, -0.0961918, 0.0151661, 0.0401377, + 0.000438639, -0.108393, -0.0157583, 0.0281483, 0.0234077, 0.0413021, -0.0310684, 0.00633404, + 0.0395615, -0.0197817, 0.0962121, -0.0522614, -0.042909, 0.027851, 0.0400732, -0.00705579, + 0.0100766, 0.082584, -0.0489721, -0.0849357, -0.0251572, 0.0194749, -0.0308505, -0.074304, + -0.0790463, -0.0262516, -0.024485, 0.0603077, 0.0270147, 0.0375003, 0.00448266, -0.0809277 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p42(hatfit_yaw00_lev1_p42); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p42_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p43.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p43.mh new file mode 100755 index 0000000..625323d --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p43.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p43.mh: + +#ifndef stasm_hat_yaw00_lev1_p43_mh +#define stasm_hat_yaw00_lev1_p43_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p43(const double* const d) // d has 160 elements +{ + const double intercept = -0.109739; + const double coef[160] = + { + 0.0570196, -0.00816288, -0.0396789, -0.0691714, -0.0147693, -0.0113571, 0.0238471, 0.0654756, + 0.0127259, 0.0262569, 0.0713755, 0.0551583, -0.00408789, 7.70712e-06, -0.0481539, -0.0185502, + -0.0290117, -0.0125839, -0.00523495, 0.0186073, 0.0100473, 0.00134032, -0.0158129, -0.0650889, + -0.00211844, 0.0373439, 0.00656235, 0.0406139, 0.0121945, -0.0274831, 0.0764015, 0.0587713, + -0.00853797, -0.0345838, -0.00964707, -0.0727974, 0.00889578, 0.0503037, -0.0333862, -0.034163, + -0.0827511, -0.0471695, -0.0346255, -0.0385785, -0.00680009, -0.023391, 0.180779, -0.110075, + -0.0308566, 0.00913772, 0.0667521, -0.0236769, 0.0473191, -0.114058, -0.00661101, 0.0277845, + 0.00833675, -0.0048789, 0.0638954, -0.00843914, -0.00834834, 0.0313403, 0.00101895, 0.0332497, + -0.00245061, -0.0320165, -0.0555559, -0.111136, -0.0490009, 0.056839, 0.00416749, -0.0448449, + -0.0293516, 0.031744, -0.0351489, 0.113501, 0.00559084, -0.0416646, -0.011213, 0.0752133, + 0.163951, -0.0631562, 0.0117438, 0.0983181, 0.129859, 0.0358397, -0.0592237, 0.0938551, + 0.0407702, 0.016116, -0.0669065, -0.0705481, -0.0925694, 0.0770623, -0.06897, -0.0108773, + -0.038666, 0.106142, 0.0032002, 0.0526937, -0.0260607, -0.0476551, -0.0931545, -0.0581646, + -0.0213479, -0.0944708, 0.0764147, 0.155, 0.0953724, 0.00644171, 0.0818339, 0.098784, + 0.0583541, 0.0385834, 0.014567, -0.151929, 0.0651872, 0.0237393, 0.0354186, 0.0701812, + -0.00868975, -0.120429, 0.0431517, 0.00308768, -0.0856116, -0.0145191, 0.036296, -0.0410546, + -0.0409622, 0.0470182, 0.0770556, -0.0371906, 0.0159651, -0.0274052, 0.0122354, -0.030157, + -0.0336936, 0.0396808, -0.0337803, -0.0324049, 0.0169184, 0.0412101, 0.0850196, 0.0202203, + -0.0207872, -0.0314282, 0.00840539, -0.0183683, -0.036961, 0.00315037, -0.0447284, -0.0183713, + 0.00828758, 0.0171499, -0.0376258, -0.00846203, -0.0420137, -0.0241747, -0.0150662, -0.0478079 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p43(hatfit_yaw00_lev1_p43); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p43_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p44.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p44.mh new file mode 100755 index 0000000..e474deb --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p44.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p44.mh: + +#ifndef stasm_hat_yaw00_lev1_p44_mh +#define stasm_hat_yaw00_lev1_p44_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p44(const double* const d) // d has 160 elements +{ + const double intercept = 0.109008; + const double coef[160] = + { + -0.0945362, -0.0449524, 0.0660333, -0.0246236, 0.0158696, -0.0471226, 0.0447189, -0.0258553, + 0.025887, -0.0135329, -0.0214826, -0.0206675, 0.013636, 0.0741179, -0.0320414, 0.0372598, + -0.0704824, -0.0233604, -0.00317469, -0.00842793, -0.00341977, 0.00219688, -0.0954223, -0.0554482, + -0.0525299, -0.0333753, 0.0021748, 0.074139, 0.0360935, 0.00534435, 0.0684776, 0.0403155, + -0.0192615, -0.0568851, -0.0342091, -0.0741966, -0.00925542, 0.052715, -0.0159705, -0.0190257, + 0.0881149, 0.0554443, -0.077389, -0.0955993, -0.0563765, 0.0634231, -0.0891371, 0.0688448, + -0.0877472, -0.0258642, 0.0407242, 0.157993, 0.0400953, -0.127256, -0.0189779, -0.0743465, + 0.113783, 0.0492693, 0.0370564, -0.010719, 0.0538533, 0.0681946, 0.16568, 0.173489, + 0.104194, 0.0467617, 0.0189704, -0.0376701, 0.00528474, -0.0861354, -0.00434834, 0.122647, + 0.0184847, -0.00775123, -0.0450692, 0.0104375, -0.0201632, -0.0271411, -0.0935868, -0.0408573, + -0.0339742, 0.12917, 0.0588921, -0.0593483, -0.0471046, 0.00587893, 0.0765586, -0.0184146, + -0.0654201, -0.0186158, -0.0343246, -0.0380061, -0.036993, 0.0425709, -0.00783674, -0.0133803, + 0.00813309, -0.0370071, 0.10609, 0.0397922, -0.0274873, -0.021436, -0.0703765, -0.0782073, + -0.0418972, -0.00730855, -0.0399368, -0.00838882, 0.00432808, 0.0418548, 0.0388093, -0.133597, + -0.032826, -0.0237243, -0.0124979, -0.0523122, 0.0277924, 0.0076101, -0.00757488, -0.080163, + -0.0339697, -0.0814072, -0.024809, -0.0294447, 0.0479387, 3.89295e-05, 0.0361916, 0.00560784, + 0.00638087, 0.0103722, -0.0058001, 0.0313552, -0.0131113, 0.0205947, -0.0219136, 0.000589408, + -0.0214051, 0.0924824, -0.0379552, 0.00046803, -0.0307971, 0.0155563, -0.0262803, 0.0326664, + -0.0468105, -0.00447329, -0.0346878, -0.0124326, -0.0402621, 0.0115866, -0.0451612, 0.138228, + 0.0480731, 0.01717, 0.0404243, 0.0616278, -0.0362902, -0.0333519, 0.0372897, 0.0130936 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p44(hatfit_yaw00_lev1_p44); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p44_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p45.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p45.mh new file mode 100755 index 0000000..ad60533 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p45.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p45.mh: + +#ifndef stasm_hat_yaw00_lev1_p45_mh +#define stasm_hat_yaw00_lev1_p45_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p45(const double* const d) // d has 160 elements +{ + const double intercept = -0.25172; + const double coef[160] = + { + 0.138588, 0.0320257, 0.0356155, 0.0724541, 0.120651, -0.0189986, 0.106301, -0.0298257, + 0.0350613, -0.0742858, -0.00626365, -0.0366956, 0.00288059, -0.0262773, -0.0335548, 0.0513913, + -0.0487848, -0.0594982, 0.0626344, 0.0553294, -0.0107779, -0.0238063, -0.0467799, -0.0179865, + -0.0237511, -0.0537311, 0.00119416, 0.0220104, 0.0691962, 0.0204227, 0.0969524, 0.0179205, + -0.0370185, -0.0426937, -0.100493, 0.0102081, 0.0312435, 0.00265713, -0.0234102, 0.122252, + 0.0547786, -0.107252, 0.111451, 0.0475615, 0.0537575, -0.00080478, -0.0791252, 0.0088121, + 0.0253345, 0.0846276, -0.108816, -0.130749, -0.10341, 0.0592801, -0.0318539, -0.0249449, + -0.010017, 0.192572, -0.0720721, -0.0648521, -0.0571078, 0.0111925, 0.0666735, -0.0547617, + -0.0309815, -0.0215697, 0.109581, 0.0672603, 0.011995, -0.00119004, -0.0238963, 0.0618288, + 0.146923, 0.133224, 0.0838379, -0.0742575, -0.0287099, -0.00583805, 0.0450488, -0.0666454, + -0.0188749, -0.0366709, 0.037215, 0.0536543, -0.100444, -0.0419477, 0.0163139, -0.0565705, + -0.0278959, 0.000975454, 0.0281221, 0.049062, 0.102175, 0.0226027, 0.0645185, 0.0349713, + -0.0826408, -0.0749836, 0.0577827, 0.0822353, 0.0798172, 0.0386831, -0.0101139, 0.0461214, + 0.00293569, -0.0776405, -0.0391742, 0.0176803, -0.00405256, -0.0141349, 0.0250607, 0.00126634, + -0.111324, -0.0221828, -0.11046, 0.0129321, 0.0242276, 0.00152692, -0.00077143, 0.0251926, + 0.0453204, -0.0121045, 0.09637, -0.0769084, 0.0588002, -0.0329975, -0.0250022, 0.0456485, + -0.0177055, -0.0139467, -0.0054085, -0.0442463, -0.0385275, -0.020766, -0.00469496, -0.0233761, + 0.0459073, 0.0279808, -0.0103614, -0.0883182, -0.0111125, 4.03714e-05, 0.0135568, -0.062711, + -0.00610121, 0.0899954, 0.00370827, -0.0199731, -0.043631, 0.0366049, 0.0242956, 0.0318513, + 0.0163144, -0.0494192, 0.00613827, -0.0128951, -0.0382535, -0.0117383, -0.0496041, -0.0232795 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p45(hatfit_yaw00_lev1_p45); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p45_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p46.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p46.mh new file mode 100755 index 0000000..2f576a5 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p46.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p46.mh: + +#ifndef stasm_hat_yaw00_lev1_p46_mh +#define stasm_hat_yaw00_lev1_p46_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p46(const double* const d) // d has 160 elements +{ + const double intercept = -0.1262; + const double coef[160] = + { + -0.0247898, 0.0725981, 0.00940554, 0.0052597, 0.00695337, -0.0227812, 0.0829615, -0.0182238, + 0.0912312, -0.0397266, -0.00802797, 0.0164496, 0.050756, -0.00600232, -0.0175702, -0.03503, + 0.147221, 0.0160325, -0.00482178, 0.0407726, 0.0537962, 0.020743, 0.0355159, 0.057278, + -0.0217205, -0.0576563, -0.0685952, -0.0518904, -0.0855381, -0.0101204, -0.0816496, -0.00958126, + -0.017169, -0.0468333, 0.0395461, 0.0787189, 0.0362518, -0.0288426, 0.0762642, 0.0955865, + -0.0407962, 0.0912819, 0.00170931, 0.111283, 0.0747911, 0.0214694, 0.0356399, 0.0678785, + -0.0119807, -0.125812, 0.0183076, 0.0566146, 0.0650642, 0.043017, -0.0296444, 0.0171253, + -0.0139448, -0.0234206, 0.0995859, -0.0773336, -0.0337063, -0.0184082, -0.0234433, -0.0469514, + -0.0159479, 0.164123, -0.0909827, -0.0802733, -0.0225864, 0.0681187, 0.0216672, -0.0506549, + -0.0686634, 0.0314723, 0.0919573, 0.053391, 0.0320703, 0.052185, 0.0490161, -0.0794547, + -0.0305819, -0.0936891, -0.0178693, -0.0513525, -0.0980818, -0.00498728, -0.074374, -0.0999793, + 0.00662704, 0.0383561, 0.00845843, 0.0425148, -0.0533615, 0.0118851, 0.0324261, -0.00552462, + 0.0162779, -0.0513451, -0.0764762, -0.00473995, 0.000206355, 0.00314181, 0.0385827, 0.0602592, + -0.0351145, -0.0386392, 0.0498369, 0.0366033, 0.0440881, 0.0136349, 0.0225003, 0.0527547, + 0.00338717, -0.0367825, -0.0426791, -0.0226034, -0.0303609, -0.0594028, -0.0347768, 0.0730718, + 0.0173539, 0.0453047, 0.0667917, 0.0466438, -0.0243697, -0.0156744, -0.101598, 0.0479361, + 0.0261366, -0.0550373, -0.0107337, -0.0677039, 0.00929147, 0.0117664, 0.0345724, 0.0198759, + -0.0534636, 0.0071773, 0.0380319, -0.051799, 0.0129421, -0.00628485, -0.00436391, 0.0113728, + 0.0319683, -0.0269471, 0.0113978, -0.0513272, 0.0395217, -0.00380428, 0.0259736, -0.0518657, + 0.014918, 0.0633155, -0.00548257, 0.0103552, -0.04868, 0.0484848, -0.00154793, -0.102005 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p46(hatfit_yaw00_lev1_p46); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p46_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p47.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p47.mh new file mode 100755 index 0000000..3fa31a0 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p47.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p47.mh: + +#ifndef stasm_hat_yaw00_lev1_p47_mh +#define stasm_hat_yaw00_lev1_p47_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p47(const double* const d) // d has 160 elements +{ + const double intercept = -0.118965; + const double coef[160] = + { + -0.0440492, -0.0836416, -0.141257, -0.0910721, -0.110534, -0.00214304, -0.0472487, 0.00261588, + -0.0335697, 0.0914798, 0.0305937, 0.00916225, -0.0435401, 0.0723333, -0.040065, -0.0185088, + 0.0401661, -0.0159768, 0.0349517, 0.0174412, 0.00390451, -0.0429541, 0.0773829, -0.038843, + 0.0832298, 0.0353028, 0.0146736, 0.0350658, 0.0369444, -0.00336594, -0.0110071, -0.00688144, + 0.0573221, -0.0910749, -0.0130102, 0.0147298, -0.00252087, -0.0223729, 0.0463613, 0.0419724, + 0.0217844, 0.0157986, 0.163274, 0.102168, 0.131031, 0.106365, -0.00268922, -0.0544499, + -0.0149947, 0.135501, 0.0304682, 0.0334622, 0.0114081, -0.039136, 0.0350434, 0.0430796, + -0.0425841, -0.110417, -0.0606183, 0.0744933, 0.134342, 0.0286298, 0.0279522, 0.0449863, + 0.0347973, -0.0419459, 0.0857313, -0.0128635, 0.0381703, -0.00587311, -0.0681089, -0.0187003, + -0.00328471, 0.0941593, -0.0736437, -0.128757, -0.04768, 0.0727935, 0.0273488, -0.0977504, + -0.023949, -0.0421614, -0.0286373, -0.0653269, -0.0963842, -0.0483031, 0.0505979, 0.0368761, + -0.0125742, -0.0706676, -0.0430058, -0.0963538, -0.0924971, -0.0266817, -0.0941927, -0.0325834, + 0.00716453, 0.0209282, 0.00390391, 0.0369161, -0.0915738, 0.00390245, 0.0418545, -0.0403939, + 0.00975892, -0.0248716, -0.0255247, 0.0214165, -0.0274118, -0.0254147, 0.0207873, 0.00385507, + -0.0257841, 0.0125612, 0.034636, 0.0482864, 0.0363408, -0.0167484, 0.0397208, 0.11034, + 0.0580511, 0.0643112, 0.00275626, 0.0200438, 0.0397158, -0.00459059, -0.0624459, -0.0130516, + 0.0194177, 0.0302497, 0.0528601, 0.0954436, 0.0441685, -0.000957178, 0.0123102, -0.0159973, + 0.0208708, 0.00253739, 0.00969131, 0.00487447, 0.0228892, -0.00806758, -0.0474296, 0.0435123, + 0.0126327, -0.0250043, -0.0049342, -0.0446558, 0.00411561, 0.0215649, 0.01054, -0.0185998, + 0.000267183, -0.0528733, 0.0212056, -0.0966146, 0.00481207, -0.00617578, 0.0559641, -0.0571265 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p47(hatfit_yaw00_lev1_p47); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p47_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p48.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p48.mh new file mode 100755 index 0000000..14ed789 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p48.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p48.mh: + +#ifndef stasm_hat_yaw00_lev1_p48_mh +#define stasm_hat_yaw00_lev1_p48_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p48(const double* const d) // d has 160 elements +{ + const double intercept = -0.348712; + const double coef[160] = + { + -0.0199642, -0.016524, 0.0185488, 0.0753993, 0.0220202, 0.0315148, -0.0563141, -0.00505819, + 0.00273267, -0.0239206, -0.0834737, -0.0285988, 0.0565259, -0.00569715, 0.0483493, -0.0712883, + -0.0712879, -0.00462779, 0.0462177, 0.0520587, -0.020654, -0.0252241, 0.0488485, 0.0282503, + 0.00559442, 0.0144023, -0.0132484, 0.0254584, 0.0395418, 0.0306705, -0.0352704, -0.0166598, + -0.00170908, -0.0370785, -0.0203859, 0.0144599, -0.0146208, -0.01403, -0.00723498, -0.00876678, + 0.0327493, -0.0113121, 0.0448436, -0.0526941, 0.0259987, 0.0262766, -0.0312069, -0.000567117, + 0.013922, 0.0441781, 0.0086888, 0.0547899, 0.0423473, 0.00918695, -0.0101297, -0.0328613, + 0.0691136, 0.00758904, 0.0224273, -0.0291462, -0.0939671, 0.0324741, 0.0354135, -0.0303462, + 0.0356238, -0.0387213, -0.0665426, -0.0383849, -0.0274669, -0.0220878, 0.0289407, -0.00507145, + 0.111319, 0.0215501, 0.0416781, -0.0171691, 0.00257299, -0.0688882, 0.0220108, -0.0918581, + 0.0105098, 0.0140829, 0.0724206, 0.0268746, -0.0194448, -0.029022, -0.0317727, -0.0115339, + 0.00787806, 0.00153147, -0.133061, -0.0171583, 0.060793, -0.0497396, 0.0178434, 0.0115849, + 0.0521507, 0.0308188, 0.0278041, 0.087127, 0.0105865, -0.00899581, -0.00784267, 0.0185296, + 0.0018345, -0.0473944, -0.0727011, -0.06032, 0.0167443, 0.0669789, 0.0532385, 0.0856828, + -0.0457355, 0.0439268, 0.0353426, 0.0279889, -0.0711119, 0.00938103, -0.0660489, -0.00674734, + 0.0124368, -0.0648288, 0.0244971, 0.00933523, -0.0561851, 0.0146086, 0.00783616, 0.0405319, + 0.0264534, -0.0114669, 0.042876, 0.0869413, 0.030355, 0.0372803, -0.0117394, -0.0308215, + -0.0666074, -0.000140927, -0.050663, -0.0559189, -0.0074306, 0.00361242, 0.0232975, 0.0355665, + -0.0388373, 0.0357383, 0.115658, 0.0711105, -0.0131747, -0.0143666, -0.0302213, -0.080427, + 0.0653268, 0.0254734, 0.0134195, 0.121503, 0.142421, 0.0482576, 0.0452815, 0.0540552 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p48(hatfit_yaw00_lev1_p48); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p48_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p49.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p49.mh new file mode 100755 index 0000000..7a851cc --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p49.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p49.mh: + +#ifndef stasm_hat_yaw00_lev1_p49_mh +#define stasm_hat_yaw00_lev1_p49_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p49(const double* const d) // d has 160 elements +{ + const double intercept = 0.337902; + const double coef[160] = + { + 0.0114154, -0.0726488, -0.0778797, -0.0423141, -0.101282, -0.0447445, 0.0436873, -0.0644333, + 0.0624447, 0.0491255, -0.0232039, -0.0278307, 0.0139972, -0.0112907, -0.0322537, 0.0502897, + -0.098117, 0.0451549, 0.103961, 0.087829, -0.0385551, -0.0336443, -0.0132464, -0.0463502, + 0.0256201, -0.0661301, -0.0965179, 0.00416883, 0.12706, 0.0554865, -0.0172941, -0.0300243, + -0.101453, -0.0254417, -0.0144953, -0.011406, -0.065835, -0.0178107, 0.0889139, -0.0244951, + -0.0274361, -0.0272035, -0.0302713, 0.02199, 0.0393062, 0.0542217, 0.0382146, 0.00430417, + -0.0252084, 0.0177507, 0.0837669, -0.020463, 0.023539, -0.0222531, -0.033568, 0.0405018, + 0.0366544, 0.0219979, 0.0433826, 0.0337518, -0.0382937, 0.026798, 0.0155538, 0.022436, + 0.022377, -0.0522834, 0.00202955, -0.0484192, 0.0382646, 0.00632605, -0.0541592, -0.0216834, + 0.0718766, 0.0921278, 7.72105e-05, -0.0248985, -0.121145, 0.0050598, 0.0584069, 0.0625849, + 0.0341806, 0.0432261, -0.0717361, 0.019553, -0.00874797, -0.0566127, -0.035232, -0.0217414, + 0.0112061, -0.0173741, -0.0251796, -0.061976, 0.00953155, 0.0346141, -0.0552639, -0.0386179, + -0.049074, 0.0114269, 0.0481586, 0.0266696, -0.0454927, -0.0340543, -0.0192265, -0.0198516, + 0.0283237, -0.00680941, -0.00792814, -0.00371509, 0.0451747, -0.00511052, -0.038361, 0.042594, + -0.0624682, -0.0839768, -0.125767, 0.0346305, 0.0854665, -0.0188636, 0.012889, -0.0784834, + 0.0532098, 0.00439309, -0.00386652, -0.0325034, -0.00939869, 0.00199078, -0.00463391, 0.00874155, + -0.0679019, 0.0341406, 0.107982, 0.0298168, 0.0419922, 0.00153954, 0.036435, -0.011819, + 0.0351083, -0.0217196, -0.0573149, -0.0786371, -0.0240665, 0.0144203, -0.0828524, 0.0440092, + 0.0234886, -0.003938, 0.048797, 0.0791573, -0.0599733, -0.0299365, 0.0744551, 0.0195751, + -0.0408867, 0.0259072, 0.00605974, -0.0173957, 0.0276731, 0.016588, -0.0502496, 0.0181499 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p49(hatfit_yaw00_lev1_p49); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p49_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p50.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p50.mh new file mode 100755 index 0000000..e440e3c --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p50.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p50.mh: + +#ifndef stasm_hat_yaw00_lev1_p50_mh +#define stasm_hat_yaw00_lev1_p50_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p50(const double* const d) // d has 160 elements +{ + const double intercept = -0.354588; + const double coef[160] = + { + -0.0230603, -0.00406651, -0.00636519, -0.0227412, 0.00548503, -0.0184082, -0.0141572, 0.0294223, + -0.00797574, 0.0429883, 0.00673783, 0.00372198, -0.0629349, -0.00877111, -0.0495952, -0.0169266, + -0.0011404, 0.0479142, 0.0259209, -0.0259865, -0.0192255, 0.0396561, 0.0876463, 0.0230926, + 0.166111, -0.0461354, -0.0703753, -0.0448939, -0.0629481, -0.0580323, -0.0453387, -0.0270917, + -0.0884495, 0.140163, 0.0784775, 0.0228562, 0.024435, -0.0254433, 0.00177285, 0.0505875, + 0.0343714, -0.0174439, -0.0160221, -0.00753022, 0.117415, -0.0406816, 0.0532156, -0.0788673, + -0.108941, -0.0483069, -0.00519991, -0.0256438, 0.0142451, -0.040349, -0.0169156, -0.0526813, + 0.00228688, -0.0658973, -0.0337889, -0.0172707, 0.0379358, 0.0414351, 0.0617095, 0.0538789, + -0.0267418, 0.0563266, 0.0380729, 0.0618607, 0.0620722, -0.0352426, -0.0599867, 0.0257612, + 0.0177003, -0.0275431, 0.0416884, -0.00144024, 0.059808, 0.0194098, 0.026223, 0.0179042, + -0.0544042, 0.0229145, 0.0554572, 0.0782817, 0.00250939, -0.0428284, 0.0150715, -0.0411066, + 0.105643, -0.0499674, -0.073674, -0.0294076, -0.0109432, 0.120955, 0.0618048, 0.104465, + 0.00742026, 0.104745, -0.0396997, 0.0703248, 0.0415391, -0.0242536, 0.00578664, -0.0406675, + 0.0587635, -0.021202, -0.0501602, -0.0246371, -0.0119139, -0.00216564, -0.0159471, -0.0599296, + -0.0168455, 0.0184902, 0.0463801, 0.023843, -0.0373052, -0.0362718, -0.033582, -0.00780508, + 0.112369, 0.133683, 0.0611724, -0.058416, 0.00130038, 0.0465242, -0.011343, 0.0759481, + -0.0879834, 0.0318877, 0.0545767, 0.0623571, -0.00027041, -0.0773191, -0.00461445, -0.0368097, + 0.0221211, -0.0317399, -0.0332144, -0.0194702, -0.0366173, 0.0686429, 0.000139026, 0.0184993, + 0.00466772, 0.0430889, 0.0650156, 0.00889211, 0.0384161, -0.0229575, 0.0181281, 0.0296131, + -0.0204703, -0.0082565, -0.00745633, -0.0388592, -0.0328784, 0.0540064, -0.0102891, -0.0235745 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p50(hatfit_yaw00_lev1_p50); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p50_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p51.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p51.mh new file mode 100755 index 0000000..9683559 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p51.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p51.mh: + +#ifndef stasm_hat_yaw00_lev1_p51_mh +#define stasm_hat_yaw00_lev1_p51_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p51(const double* const d) // d has 160 elements +{ + const double intercept = 0.0230474; + const double coef[160] = + { + 0.0663473, 0.000903765, -0.0568126, -0.0645652, -0.0530415, -0.0268245, -0.0218149, 0.0366416, + -0.014686, 0.000853658, 0.0810107, -0.00321661, -0.066158, -0.0160669, 0.00472433, -0.0332292, + 0.0330697, -0.00830061, -0.038049, 0.0414012, -0.025938, -0.0337634, -0.0624311, -0.0666223, + 0.0190076, 3.00099e-05, -0.0131323, -0.000139539, -0.0129442, -0.00751247, -0.00130726, -0.0481927, + -0.0262949, -0.0109233, 0.0115115, -0.00923386, 0.023316, 0.0373891, 0.0673234, 0.00609755, + -0.0574537, 0.0107934, -0.00300931, 0.00542485, 0.079916, 0.0676615, -0.0268088, 0.11462, + -0.0158615, -0.00119364, -0.0246292, 0.028597, 0.0300322, 0.00761411, 0.061184, -0.145516, + -0.00567826, 0.050977, 0.0545752, 0.0137527, -0.00676976, 0.0184424, 0.196666, 0.144337, + 0.0411955, 0.00197774, 0.0394365, -0.00925136, 0.0421624, -0.105268, -0.0782102, 0.115249, + 0.00126801, -0.0217805, -0.074432, -0.0324334, -0.0274283, -0.0287226, -0.0339885, -0.010246, + 0.0325106, -0.00227297, -0.0941444, -0.00635483, -0.0408689, -0.0332418, 0.0612756, -0.0524843, + 0.0355948, -0.0014673, 0.0306843, 0.0577673, 0.0199915, -0.0467922, -0.0840219, 0.0587219, + -0.0329374, -0.0208942, 0.0176221, -0.0472118, 0.0111347, 0.0012257, -0.0930815, -0.0833302, + -0.00729518, 0.0645366, -0.0184519, 0.0540724, 0.0145464, 0.0883286, -0.00444572, -0.0526893, + -0.000339233, -0.0349865, 0.0208982, 0.0190641, -0.0156414, 0.031688, 0.0360566, 0.0317097, + -0.0217811, -0.0349732, -0.00390683, 0.0259709, 0.00449953, 0.0655442, 0.00876421, 0.0173605, + -0.035843, -0.0170143, 0.0354342, -0.0122638, -0.00324034, 0.0223394, -0.00597277, -0.0410188, + 0.00998847, 0.0325441, -0.0168173, 0.0160914, -0.011555, 0.00730345, 0.0483929, 0.0374363, + 0.0135017, -0.0115598, -0.0202782, -0.0114978, -0.0321284, -0.0731003, -0.0334655, -0.00437303, + 0.0197171, -0.0246698, 0.0248675, -0.0169994, -0.000349178, -0.000402507, 0.0187988, 0.000184288 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p51(hatfit_yaw00_lev1_p51); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p51_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p52.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p52.mh new file mode 100755 index 0000000..b193f51 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p52.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p52.mh: + +#ifndef stasm_hat_yaw00_lev1_p52_mh +#define stasm_hat_yaw00_lev1_p52_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p52(const double* const d) // d has 160 elements +{ + const double intercept = 0.260475; + const double coef[160] = + { + -0.0122162, 0.0115179, -0.0394977, -0.0273243, 0.0081333, -0.0292732, -0.0272394, -0.0629533, + -0.0160925, -0.0153455, 0.0233635, 0.00893212, 0.0156689, -0.00794567, -0.0215812, 0.0127846, + 0.00154317, -0.0295031, -0.0112134, -0.0471515, -0.0387776, 0.00687466, -0.0651829, -0.00330553, + -0.00238385, 0.0168992, -0.0253943, 0.0126812, -0.00885185, -0.0310302, 0.0462275, -0.0090145, + 0.0199466, -0.00959636, 0.0223492, -0.043071, 0.00604921, -0.0458674, -0.0598643, -0.0317473, + 0.041322, 0.0243245, -0.0333469, 0.00167273, -0.0231955, 0.0280683, -0.0408995, 0.0521944, + 0.0471815, 0.0195343, 0.0768077, 0.0138787, 0.0532719, 0.0308796, 0.0358051, -0.040371, + -0.0161893, -0.000882692, 0.00726768, -0.00207923, -0.0419194, 0.0167848, 0.0744163, 0.0413397, + 0.00373214, 0.0212196, 0.0661876, 0.106068, 0.0905908, 0.0277513, -0.0535409, 0.0355472, + 0.00544559, -0.0416627, -0.0741092, 0.0324289, -0.0080518, 0.0432406, 0.015265, -0.0241128, + -0.0894882, -0.0119182, 0.0450217, 0.0378082, 0.0401644, -0.0560642, -0.0292303, 0.093536, + -0.0402295, -0.0737898, -0.0504552, -0.0355426, -0.0623674, 0.0272413, -0.0698962, 0.0609242, + -0.0243137, -0.0250455, -0.0456399, -0.00184349, 0.010865, -0.0160513, 0.0462055, -0.00131114, + 0.00717732, -0.0360419, 0.00377416, -0.100877, -0.150282, 0.102032, -0.119642, -0.0398214, + -0.0127371, 0.0342076, 0.0148993, -0.0137932, -0.0433186, 0.00366693, 0.0356687, 0.0112555, + 0.0687725, 0.0916713, 0.00660631, 0.0305018, 0.0272057, -0.0504018, 0.0325087, -0.0239357, + 0.0155957, -0.0185372, 0.00141619, -0.0305813, 0.0167892, 0.0193565, -0.00279585, 0.0248534, + -0.0360369, -0.0333261, 0.0219202, -0.00153852, -0.0756654, -0.0493757, -0.00439795, -0.0429899, + -0.00114111, 0.0156505, -0.0395002, -0.00583805, 0.0881942, 0.0363239, 0.0082846, 0.0303329, + 0.0175637, 0.0392368, -0.00202269, 0.0581765, 0.030248, -0.0268457, 0.0116774, -0.0235466 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p52(hatfit_yaw00_lev1_p52); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p52_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p53.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p53.mh new file mode 100755 index 0000000..1b223f5 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p53.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p53.mh: + +#ifndef stasm_hat_yaw00_lev1_p53_mh +#define stasm_hat_yaw00_lev1_p53_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p53(const double* const d) // d has 160 elements +{ + const double intercept = 0.00632593; + const double coef[160] = + { + 0.0162556, -0.016435, 0.0339606, 0.0190099, -0.00390404, 0.0151999, 0.0530393, 0.052145, + -0.00404482, -0.0094945, -0.0652414, -0.00307563, 0.0279835, -0.0286695, -0.00707483, -0.0602497, + -0.0578366, 0.00570518, 0.00521795, -0.0343149, 0.0021638, -0.0576883, -0.0745119, 0.019378, + -0.0841465, -0.0374895, 0.101069, 0.0372186, -0.00409056, 0.00763705, -0.0176534, -0.0721434, + -0.00235338, -0.0460276, -0.105931, -0.00206172, 0.126004, 0.0340346, 0.00308281, 0.0239345, + 0.00935259, -0.026381, -0.0517119, -0.0346371, 0.0437243, 0.0277076, -0.0788865, -0.0669713, + -0.0392242, 0.00309652, 0.0151427, 0.0303108, -0.0255152, 0.144139, -0.0251527, -0.0566317, + 0.00885491, 0.0283135, 0.037537, 0.0185783, -0.0110133, 0.00417545, 0.230708, 0.0531011, + 0.0907433, 0.0775194, -0.0214501, 0.011126, 0.0125839, -0.0929108, 0.00861834, 0.0431739, + 0.0294098, -0.00786103, 0.0294776, -0.0266784, -0.0651989, 0.0573041, -0.0222599, 0.0342067, + -0.00935431, 0.0617671, 0.0254821, -0.0025932, -0.0126894, 0.0202708, 0.0160974, 0.065353, + 0.0739513, -0.0176589, -0.0373128, 0.0569696, -0.0255352, -0.056134, -0.00311956, 0.0397551, + -0.00707641, 0.00840045, 0.0395881, -0.0274419, -0.000901333, 0.0115174, -0.11227, -0.0630251, + -0.0277898, 0.0103932, -0.0382606, 0.00752723, 0.0198304, 0.0285424, -0.0162424, -0.0462255, + -0.0205232, -0.00646888, -0.0418055, 0.0165335, 0.0309852, -0.0296247, 0.0262914, -0.0154413, + 0.00808804, -0.0302165, 0.0269277, -0.0276307, 0.00803103, 0.00727718, 0.00967092, -0.0103951, + -0.0485179, -0.0149506, -0.0186684, 0.0197415, 0.00151862, -0.0135448, -0.0159554, -0.0411914, + 0.0203195, 0.00491663, 0.00384737, -0.00418953, -0.000701313, -0.00528702, 0.030757, 0.0292946, + -0.0010533, -0.0195983, 0.0331644, -0.0196452, -0.0326561, -0.0333651, -0.00118972, 0.0528589, + 0.00832532, 0.00903297, -0.0053677, -0.0299995, 0.0035794, 0.0148879, 0.0135945, 0.0180385 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p53(hatfit_yaw00_lev1_p53); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p53_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p54.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p54.mh new file mode 100755 index 0000000..7268853 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p54.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p54.mh: + +#ifndef stasm_hat_yaw00_lev1_p54_mh +#define stasm_hat_yaw00_lev1_p54_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p54(const double* const d) // d has 160 elements +{ + const double intercept = -0.327895; + const double coef[160] = + { + -0.0260285, -0.0305355, -0.0270729, 0.0336952, 0.0120556, -0.0589881, 0.0423471, -0.0165861, + 0.0533515, 0.0665271, -0.00661282, -0.011853, -0.0202604, 0.0660017, 0.0285465, 0.00870395, + 0.011837, -0.00816245, 0.0137459, -0.0274992, -0.040575, -0.0637543, -0.0130194, 0.0133845, + 0.0178475, 0.0405467, 0.0289009, 0.0209144, 0.0200407, 0.0257918, 0.0374848, 0.0275908, + 0.0136018, -0.0102763, 0.00641704, -0.00874899, 0.00182998, -0.0147132, 0.009265, -0.0220378, + -0.00638297, -0.0385975, 0.0624042, 0.0211003, -0.0707084, -0.0690531, -0.0210087, -0.0194916, + -0.0478112, -0.0269841, -0.0424758, 0.0264064, 0.142619, -0.00246511, 0.0361538, -0.0312128, + 0.0834964, -0.0165381, -0.0157382, -0.0939294, 0.0240593, 0.0854562, 0.0349298, 0.14353, + -0.0906933, -0.0340672, 0.0548739, 0.0571566, -0.0687595, -0.0800209, -0.0813809, -0.0359659, + -0.00366757, -0.0117603, -0.0208327, -0.0119305, 0.0182508, -0.00730518, 0.00837606, 0.0256656, + 0.0411851, 0.0630306, 0.0979421, 0.0441905, -0.00305332, 0.00201647, -0.0361447, -0.0198163, + 0.00723425, -0.0100551, -0.110571, -0.0993676, -0.00957446, 0.0802569, 0.128686, 0.0888631, + 0.0427143, 0.0464205, 0.0483508, 0.0942419, 0.0700467, -0.018517, -0.103884, -0.116386, + -0.0176959, 0.0100904, -0.0232444, -0.0174606, 0.00793912, -0.00859066, 0.0853811, 0.00499183, + 0.0240163, 0.00380892, 0.00422997, -0.0257352, 0.0227225, 0.00677831, -0.0593922, 0.0328476, + 0.00827972, 0.0692015, 0.0431744, 0.0373662, -0.0140093, 0.0106239, 0.0258463, 0.0208192, + -0.0546277, 0.0957585, -0.0963772, -0.027162, 0.00231769, 0.0486463, 0.0512952, 0.00430508, + -0.0114316, 0.00979404, 0.0511977, -0.0338667, 0.00809882, -0.0153916, -0.0599761, 0.0148887, + 0.00670799, -0.0197052, -0.0426134, 0.0297467, -0.0830705, -0.0143339, -0.0152399, -0.00805109, + 0.00354804, 0.0101011, 0.0160634, 0.0429957, -0.0188213, 0.0160184, -0.0033741, 0.046853 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p54(hatfit_yaw00_lev1_p54); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p54_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p55.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p55.mh new file mode 100755 index 0000000..1602318 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p55.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p55.mh: + +#ifndef stasm_hat_yaw00_lev1_p55_mh +#define stasm_hat_yaw00_lev1_p55_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p55(const double* const d) // d has 160 elements +{ + const double intercept = -0.141314; + const double coef[160] = + { + -0.0184455, -0.0496397, -0.0592839, -0.00129605, 0.0152698, 0.00895235, 0.0198226, -0.0277392, + 0.00174921, 0.0466079, 0.136804, -0.0408086, -0.0219539, -0.0515463, 0.0376534, 0.0197422, + 0.0264812, -0.0747326, -0.0189345, -0.0108892, 0.12583, -0.050607, 0.0287181, 0.0893428, + 0.0338705, -0.0305728, -0.0605811, -0.123117, 0.0530918, 0.0561058, -0.0661859, 0.0142702, + 0.0222033, 0.00274117, 0.0488894, 0.00854528, -0.0357957, -0.0137169, -0.0860731, 0.0804902, + 0.0155904, -0.0489535, 0.110207, 0.0279448, 0.0146425, 0.0608853, -0.0478279, -0.0360042, + -0.0253087, 0.0520949, 0.00854192, 0.0698672, 0.0728003, 0.0192769, 0.0532905, -0.0539675, + 0.0194983, 0.0686626, -0.14808, -0.00330555, -0.0603803, 0.161152, 0.125227, 0.0176252, + -0.0489934, 0.129008, 0.0143522, 0.0924871, -0.0940712, 0.0170069, -0.0504719, -0.0804901, + -0.0535133, 0.0471255, 0.0155013, 0.041728, 0.0464161, -0.0309468, 0.022264, -0.0485352, + -0.0161353, 0.00673767, -0.069235, -0.0269012, -0.0468631, -0.0286551, 0.0185527, 0.00926746, + 0.0816668, 0.0315413, -0.0115304, 0.00704217, -0.081754, -0.0394356, -0.0400905, 0.0372851, + -0.0783434, -0.00330682, 0.0511188, -0.0193499, 0.0811155, -0.090431, -0.0156567, 0.0132851, + -0.0127041, -0.119106, 0.0548832, -0.0584279, 0.0635739, -0.0258336, 0.0090243, -0.00490429, + 0.0567433, -0.0508576, -0.0229306, 0.00359339, -0.0406265, -0.0266562, 0.00501218, 0.0391647, + -0.0125267, -0.00340731, 0.0125769, 0.0486265, 0.0777279, 0.00933577, -0.00487516, -0.0130414, + -0.0285719, -0.0331306, 0.00711141, -0.0199061, 0.0080499, 0.0135002, 0.0017077, -0.0214639, + 0.0445958, -0.0085222, 0.006994, 0.00919682, -0.0502234, 0.0181756, -0.0122827, 0.0353963, + -0.00204672, 0.0618339, -0.0356547, -0.000447894, -0.0157183, 0.00273223, -0.000334279, -0.0068244, + -6.21048e-05, -0.0152627, 0.000293438, 0.0261028, 0.0310108, 0.0125394, 0.0326627, 0.00563211 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p55(hatfit_yaw00_lev1_p55); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p55_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p56.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p56.mh new file mode 100755 index 0000000..47fdda9 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p56.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p56.mh: + +#ifndef stasm_hat_yaw00_lev1_p56_mh +#define stasm_hat_yaw00_lev1_p56_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p56(const double* const d) // d has 160 elements +{ + const double intercept = 0.017971; + const double coef[160] = + { + 0.00383981, 0.132936, 0.051431, 0.0241506, 0.0525363, -0.0220713, 0.0264425, 0.162811, + 0.010563, -0.024777, -0.0376598, -0.00827839, 0.00969403, 0.00935741, -0.0604863, 0.0154237, + -0.0274918, -0.0916428, -0.0771056, -0.0789401, -0.0175398, -0.0618622, 0.0553185, 0.000933057, + 0.016674, 0.0419166, -0.0552628, -0.010995, -0.000659341, 0.111832, -0.113944, -0.0251928, + 0.0213259, 0.0239533, 0.0910532, 0.124619, 0.00420422, 0.0613157, 0.0784614, 0.0147032, + -0.0502116, -0.00272015, -0.0218368, 0.0310639, -0.0254734, 0.0358821, -0.0424754, -0.0367543, + 0.034152, -0.0402477, 0.00443733, 0.0517393, -0.0272244, -0.0217685, 0.0550534, 0.0378432, + -0.0246521, 0.0384891, 0.112565, 0.0140988, 0.0115197, -0.0149323, -0.0195592, -0.0719281, + -0.0191504, 0.0050603, -0.00609517, 0.00456367, -0.0230841, 0.0247522, 0.0545905, -0.000413494, + 0.0194383, 0.0112078, -0.0309524, -0.0159333, -0.0384538, -0.0252684, -0.0531839, -0.0135636, + 0.0280733, -0.0273113, -0.0108497, -0.0499342, -0.0281279, -0.0259257, -0.0200306, -0.0279048, + 0.00745871, -0.00630893, -0.0226936, -0.0506898, 0.0313296, -0.00117594, -0.00321243, 0.00721248, + 0.0305157, 0.00244387, 0.0234044, 0.0174985, -0.0430736, -0.0159342, -0.033331, -0.0123217, + 0.0225584, -0.0402171, -0.028357, -0.0100419, 0.0292749, 0.00170746, 0.00587944, 0.0203983, + -0.0195129, -0.0348478, -0.00877047, -0.0150409, -0.0216345, -0.0229652, -0.0295588, 0.0128356, + 0.0211214, 0.0382187, -0.0154869, 0.0121175, -0.00290521, 0.00593086, 0.0205967, 0.0272012, + -0.0202218, -0.035515, 0.0315396, 0.0916433, 0.0619819, 0.00402121, -0.00515144, 0.0165358, + -0.0207477, 0.00806855, 0.00542765, -0.0761913, -0.0252847, 0.0203587, -0.0169178, 0.00516717, + 0.0370735, 0.0901672, -0.00499778, 0.0357751, 0.00468033, 0.0309109, -0.0129976, -0.0110622, + -0.0403696, -0.0231525, 0.0128741, 0.0240667, 0.0221441, 0.0157496, 0.0360906, -0.0192411 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p56(hatfit_yaw00_lev1_p56); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p56_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p57.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p57.mh new file mode 100755 index 0000000..b23935f --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p57.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p57.mh: + +#ifndef stasm_hat_yaw00_lev1_p57_mh +#define stasm_hat_yaw00_lev1_p57_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p57(const double* const d) // d has 160 elements +{ + const double intercept = -0.167239; + const double coef[160] = + { + 0.0260893, -0.0208531, 0.0851417, 0.0640984, 0.0395397, 0.0832486, -0.106037, -0.00565412, + 0.135724, -0.112393, -0.0760649, -0.0727544, 0.0301193, 0.0232471, -0.0351258, 0.0368426, + 0.0011005, -0.0139854, -0.0151755, -0.0914272, -0.00952267, 0.0704949, 0.0125235, -0.0656696, + 0.0163932, -0.0335675, 0.111352, 0.0753735, -0.00554281, -0.0227295, 0.0323614, -0.017804, + 0.0300734, 0.0112641, -0.0658481, -0.0309896, -0.0172728, -0.0217191, 0.0190975, 0.0200581, + -0.0304982, 0.111991, -0.030698, 0.014727, -0.0765688, -0.112386, -0.0101198, -0.0275647, + -0.0291291, 0.0641304, 0.0141026, 0.131626, 0.0186017, -0.0385728, 0.0421381, 0.0855096, + 0.0213613, 0.0420065, -0.102038, 0.0681566, 0.0273364, 0.00325661, 0.109219, 0.137224, + 0.0491412, 0.088167, 0.0714511, -0.0240283, -0.0108067, -0.02918, -0.00819857, 0.00807906, + -0.000642976, 0.0220372, 0.0679965, -0.0029879, -0.00222426, 0.00558169, -0.0326685, 0.0492872, + -0.0260234, -0.0484975, -0.0112216, -0.0918971, 0.020581, 0.0441363, -0.0100994, -0.0226429, + 0.0423898, -0.0759438, 0.0145201, -0.0784476, -0.110442, -0.0174169, 0.0110941, -0.0645113, + -0.0452308, -0.038347, 0.0775638, 0.0521202, 0.0446646, 0.0411368, -0.0421825, -0.0853063, + -0.0442879, -0.0157349, -0.0467638, -0.0149989, 0.0432842, 0.0192302, -0.0305666, -0.0181959, + -0.0200714, -0.035937, -0.0330333, 0.00311701, -0.0224627, -0.026858, 0.0243919, -0.00885834, + 0.0217909, 0.0593707, -0.0167115, 0.0215884, 0.0155522, -0.0263219, 0.0362682, -0.0223162, + -0.0338701, 0.0206674, -0.0189506, 0.0452908, 0.0427534, 0.0569601, -0.00517576, 0.0232792, + -0.0144103, 0.0177986, -0.00841608, -0.0333067, -0.0267299, -0.00136334, -0.00993319, 0.0110416, + 0.0370933, 0.0113945, -0.020208, -0.0220435, -0.0428138, -0.0156631, 0.0366901, 0.00527689, + 0.0700923, 0.0280007, 0.0391572, 0.0324461, 0.0177147, -0.00531412, -0.0189824, -0.0167404 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p57(hatfit_yaw00_lev1_p57); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p57_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p58.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p58.mh new file mode 100755 index 0000000..18448a5 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p58.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p58.mh: + +#ifndef stasm_hat_yaw00_lev1_p58_mh +#define stasm_hat_yaw00_lev1_p58_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p58(const double* const d) // d has 160 elements +{ + const double intercept = -0.387439; + const double coef[160] = + { + 0.0251959, -0.031358, 0.0248397, -0.0131824, 0.013193, 0.00977301, 0.0348601, -0.0349634, + -0.0411533, 0.0159114, 0.0200665, 0.0543823, -0.00285392, -0.0164136, -0.0131662, -0.0514869, + -0.0336987, -0.0299794, -0.0270398, 0.0109185, 0.0625347, 0.0464263, 0.0578354, 0.00233093, + -0.010815, 0.0476417, 0.0163326, 0.0303621, 0.01894, -0.00207762, 0.0393991, 0.0221854, + 0.0233303, 0.0113982, -0.0423612, -0.00875855, -0.0287951, -0.0320702, 0.0137407, -0.0522144, + 0.0268739, 0.0237628, -0.0114081, -0.0225842, -0.0248982, 0.0488374, -0.0460236, -0.00664693, + -0.145548, -0.00911589, 0.0412094, -0.0239402, -0.0495942, -0.0117525, -0.0624228, -0.0266718, + 0.16983, 0.00188042, -0.0316957, 0.0227592, 0.0206071, 0.0874189, 0.0592865, 0.0821602, + -0.0523558, -0.0319036, 0.00421973, -0.111092, -0.0440164, 0.0161895, -0.0261552, -0.00754087, + 0.0331884, 0.0112931, 0.0394848, 0.0335052, 0.000709858, -0.0220998, 0.010377, -0.065032, + -0.00952658, 0.00141604, 0.000973108, 0.00853263, 0.0150984, -0.0348417, -0.0396614, 0.0344867, + 0.0216721, 0.0202387, -0.0365127, -0.0293635, -0.00677211, 0.0411506, 0.0676114, 0.016138, + 0.127968, 0.025489, 0.0839619, 0.105465, 0.0564818, -0.10753, -0.0982015, -0.0440012, + -0.0646146, -0.0759671, -0.141105, -0.0364377, 0.00156565, 0.0914474, 0.140688, 0.105158, + 0.0291594, 0.0630341, 0.146519, 0.0441008, 0.0494588, -0.0256931, -0.0515613, 0.0123743, + -0.0393184, 0.0750014, -0.0384452, -0.0162481, 0.029397, 0.0409304, 0.0106834, -0.00793491, + -0.0516883, -0.041537, -0.00348172, 0.0114551, -0.0441435, 0.00598323, -0.0702927, -0.0302706, + 0.0455167, -0.0145394, -0.0133603, 0.0211058, -0.000153093, -0.0450269, 0.0275393, 0.00331146, + -0.0536648, -0.0167442, -0.0187828, 0.0685981, 0.0143649, 0.0544769, 0.00699127, 0.0343859, + -0.0182254, 0.0574156, 0.0272669, 0.0274204, 0.00861177, -0.0038009, 0.0266157, 0.038463 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p58(hatfit_yaw00_lev1_p58); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p58_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p59.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p59.mh new file mode 100755 index 0000000..0f1e06f --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p59.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p59.mh: + +#ifndef stasm_hat_yaw00_lev1_p59_mh +#define stasm_hat_yaw00_lev1_p59_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p59(const double* const d) // d has 160 elements +{ + const double intercept = -0.107774; + const double coef[160] = + { + 0.0426851, 0.0262278, -0.00991465, -0.000978476, 0.0458819, 0.0860606, 0.0126212, 0.0351958, + -0.0108269, 0.0156452, -0.00403915, -0.0589473, -0.0503682, -0.0320335, 0.00120433, -0.021901, + 0.0165196, 0.00485185, -0.0632538, -0.033039, -0.0857811, -0.0409284, -0.0988562, -0.0239078, + -0.0159283, 0.0137357, 0.0167643, 0.0372145, -0.0532216, -0.00210648, -0.0560769, -0.0308524, + -0.00231797, -0.00864326, -0.0076651, -0.0200123, -0.00891805, 0.0118245, -0.0131865, 0.00115877, + -0.0157525, 0.00356822, 0.0567132, 0.0403024, 0.0292255, -0.0482951, -0.0460269, -0.0327407, + -0.0675029, -0.0684373, -0.109158, 0.0287362, 0.0815637, 0.084078, -0.13562, -0.0559729, + -0.0141325, -0.00702409, 0.114953, 0.0541443, 0.100854, 0.170284, 0.183675, 0.146337, + -0.0231098, 0.0221174, 0.0281214, 0.0233031, -0.017274, -0.0041107, 0.0963267, 0.00364101, + 0.014492, 0.00786082, -0.00316655, 0.00596734, 0.0241714, -0.000496014, -0.00440175, -0.0178358, + 0.00585745, 0.0161528, -0.0458383, -0.00903678, -0.0375578, -0.0417482, -0.00357475, 0.0374616, + 0.0654028, 0.0913228, -0.0561372, -0.0271866, -0.0859397, -0.109589, -0.00593507, 0.052015, + 0.012834, 0.0383004, 0.0439461, 0.0182694, -0.0531884, -0.0306476, -0.0185561, 0.0390919, + 0.0141079, -0.0136812, 0.0498581, 0.0531345, -0.0225092, -0.044298, -0.0679187, -0.0250561, + 0.00712008, 0.00510321, -0.0365955, -0.0117867, -0.000928219, -0.019591, 0.00284898, -0.00144887, + 0.000711874, 0.000233623, -0.0184974, 0.00654051, 0.0396035, 0.0526651, 0.04285, 0.00770713, + -0.0319265, 0.0147321, 0.0456475, 0.00415368, 0.0131458, 0.0349704, -0.0124635, -0.0340754, + -0.0113526, -0.0312564, -0.022371, 0.0178618, 0.042623, 0.0281632, 0.0326478, -0.0512589, + -0.0159272, -0.0205289, -0.00583209, -0.00745363, 0.020593, -0.0142671, 0.0127739, -0.000311366, + 0.0624123, 0.00682976, 0.00476288, 0.00296209, -0.0286042, 0.00250046, -0.00978856, 0.0134617 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p59(hatfit_yaw00_lev1_p59); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p59_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p60.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p60.mh new file mode 100755 index 0000000..f8adb0f --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p60.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p60.mh: + +#ifndef stasm_hat_yaw00_lev1_p60_mh +#define stasm_hat_yaw00_lev1_p60_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p60(const double* const d) // d has 160 elements +{ + const double intercept = -0.116653; + const double coef[160] = + { + -0.00800115, -0.019492, 0.00130996, 0.093303, 0.0040077, 0.00293987, 0.0207828, 0.0148185, + -0.00817948, -0.0597545, 0.0187817, -0.0230762, 0.0288565, 0.0880908, -0.0261195, -0.0208943, + -0.0786128, -0.110647, -0.000169552, 0.0230022, -0.0147655, 0.02944, -0.07112, 0.00319348, + 0.0383762, 0.00837539, -0.0543089, -0.138768, -0.0885013, 0.00156443, -0.0660238, -0.00148416, + 0.189822, 0.067456, 0.0813394, 0.0406543, 0.018721, 0.000646743, 0.0077848, -0.0197932, + -0.0269575, -0.017093, -0.00285546, -0.0457437, -0.00899611, -0.102345, -0.0712876, 0.0432109, + 0.0359983, 0.056176, -0.0205152, 0.0611076, -0.018347, -0.0684581, 0.0147728, -0.00519016, + 0.0229803, 0.0944576, -0.0201227, -0.0464451, -0.00871038, 0.0315791, 0.0922994, 0.0030201, + -0.0269314, 0.0528, 0.0333682, -0.00605027, -0.030852, 0.04281, 0.0665199, -0.0700912, + -0.101844, -0.0220294, -0.0188747, 0.0615306, 0.0196525, -0.0799243, 0.0370941, 0.0902844, + 0.0416295, 0.052584, 0.0186824, 0.0684195, -0.0496191, 0.0324619, 0.13132, 0.0186903, + 0.0444294, 0.0309525, 0.00405779, 0.00128988, -0.0657186, 0.112942, 0.0240502, -0.00600384, + -0.0561522, -0.0562045, -0.0645724, -0.0383953, -0.0717917, -0.0210858, -0.0221317, 0.0233049, + -0.00346189, -0.0171532, 0.0635409, 0.0106124, 0.0421655, -0.0798043, -0.0581925, -0.0148507, + -0.0014853, -0.0312885, 0.00728589, -0.0465815, 0.00556272, -0.0347748, 0.0110482, -0.0348356, + 0.0195249, -0.00102007, 0.0754928, 0.0908389, 0.0423783, 0.0519425, 0.0120671, -0.00592963, + -0.0746104, -0.0188304, -0.109229, -0.0357286, -0.0569914, -0.0486546, -0.019758, -0.0133699, + 0.0361224, 0.0025763, 0.0344059, 0.0643234, 0.04667, 0.0730196, -0.0286662, -0.0235946, + 0.0214739, 0.0315117, -0.034062, 0.017128, -0.000353135, 0.054981, -0.0163462, 0.0336397, + 0.063106, 0.0276215, 0.0973305, 0.0433355, -0.0436393, -0.0243513, 0.0297241, 0.013637 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p60(hatfit_yaw00_lev1_p60); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p60_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p61.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p61.mh new file mode 100755 index 0000000..e64022a --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p61.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p61.mh: + +#ifndef stasm_hat_yaw00_lev1_p61_mh +#define stasm_hat_yaw00_lev1_p61_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p61(const double* const d) // d has 160 elements +{ + const double intercept = -0.355452; + const double coef[160] = + { + 0.00140287, -0.0316798, 0.0380944, 0.0396429, -0.00327414, 0.0534538, -0.0514958, 0.0113563, + 0.0628189, -0.0527768, -0.0827135, -0.00429168, -0.0555817, -0.0224312, -0.0407113, -0.00936148, + 0.117758, 0.0172411, -0.0474983, -0.0391484, -0.00839861, 0.0452208, -0.0689015, 0.0234783, + -0.0403392, 0.0229358, 0.0537275, 0.0364107, -0.0132679, 0.00101861, -0.0318202, 0.0280393, + -0.00788005, -0.0354963, 0.00622629, -0.0649081, 0.0307974, 0.0258964, -0.0857159, 0.0242797, + -0.040267, 0.0102513, -0.0156274, -0.102174, -0.0138545, -0.0322275, -0.0188658, -0.0404741, + 0.0330834, 0.0739416, 0.0376474, -0.0476424, 0.00287154, 0.00264503, 0.0639759, 0.0475915, + 0.0401054, -0.00781034, 0.0559358, 0.150539, 0.0994351, -0.0272158, 0.141554, 0.0275502, + 0.0128532, -0.0504704, 0.0469205, 0.0449008, 0.0408228, -0.0276349, -0.0209576, -0.0231619, + 0.072671, 0.12655, 0.0367423, -0.075046, -0.00881941, 0.0092089, 0.0531118, -0.0610395, + -0.0308093, 0.0767906, 0.0426318, 0.0265518, -0.0121348, 0.0626648, 0.1149, -0.0153465, + -0.0529852, -0.0242805, -0.0290872, -0.0384416, 0.0343093, -0.0252964, -0.0554503, -0.0615641, + -0.106664, -0.0378279, 0.00787081, 0.0156845, -0.0198557, -0.0269115, -0.0297493, 0.0352897, + -0.0297293, -0.0573563, -0.0150174, -0.00484731, -0.000683478, -0.0495411, 0.0360824, 0.16726, + -0.0293956, 0.00953138, 0.00360933, -0.0400254, -0.0715633, 0.142315, 0.0342854, -0.177897, + 0.0310687, -0.0126615, -0.0606509, 0.00786516, -0.0250216, 0.0461068, -0.041784, 0.0340997, + 0.0534171, 0.0510974, 0.0264472, 0.0273428, 0.00988166, -0.00606464, 0.0777458, 0.0387601, + 0.066705, 0.0378485, 0.0927968, 0.000296498, 0.00404288, -0.0435417, -0.0159648, -0.061769, + 0.00421003, -0.0703772, -0.062171, 0.017123, -0.0279047, 0.0872595, -0.00249575, 0.0153716, + -0.00386909, 0.0423806, 0.0198908, -0.00423521, 0.0487592, -0.0326987, -0.0145375, 0.0613222 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p61(hatfit_yaw00_lev1_p61); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p61_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p62.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p62.mh new file mode 100755 index 0000000..80d3416 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p62.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p62.mh: + +#ifndef stasm_hat_yaw00_lev1_p62_mh +#define stasm_hat_yaw00_lev1_p62_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p62(const double* const d) // d has 160 elements +{ + const double intercept = -0.401911; + const double coef[160] = + { + 0.184278, -0.00880947, -0.0685209, 0.00358168, -0.0459728, 0.0232556, -0.0864801, -0.00469044, + 0.0310894, 0.0243865, 0.0258792, 0.00859373, -0.00994606, 0.0328219, 0.00173091, 0.0121548, + -0.0353948, -0.036784, 0.0429776, -0.0300712, -0.0116732, -0.0122296, -0.108762, -0.0247855, + -0.0145263, 0.0219631, -0.00113074, 0.0309911, 0.107029, 0.0123373, 0.0532587, 0.069205, + -0.0494749, -0.0244451, -0.0697308, -0.0338787, 0.0873429, 0.0171967, -0.130104, 0.0204336, + -0.088184, 0.0317872, -0.00989599, -0.015471, 0.0552868, -0.0243923, 0.0858775, 0.0686318, + -0.0481306, -0.0770413, 0.0589144, 0.168037, 0.0945978, -0.0524547, 0.0839754, 0.124417, + 0.0480366, 0.0590726, 0.0667549, -0.0894952, -0.0230222, -0.0171754, -0.0533098, -0.0684075, + 0.0712733, 0.142855, -0.00189312, -0.00863717, -0.0647512, 0.101509, 0.0666608, -0.0918015, + -0.000196614, -0.0658736, 0.0204404, 0.0705559, -0.0270679, -0.0141069, 0.126831, -0.019163, + -0.0343151, 0.00672472, 0.03967, -0.0291874, 0.0336686, -0.0107086, -0.0043349, -0.0798378, + -0.0110414, -0.0650645, -0.0318544, -0.027198, -0.0480764, -0.0918649, -0.0143225, 0.107353, + -0.0130905, -0.00631972, -0.0110005, -0.0352918, 0.0152812, 0.102473, 0.0223577, -0.00408579, + -0.037512, -0.0288581, -0.0172214, -0.0453225, -0.0328941, -0.0150905, 0.0194013, -0.050533, + 0.0512633, 0.00142581, 0.0276191, 0.0555792, -0.0250743, -0.049271, -0.0158396, 0.00580838, + 0.0759738, 0.0489876, 0.00899392, -0.0250023, -0.0139366, -0.00691351, 0.069753, 0.02297, + -0.010819, -0.0195435, 0.0379298, 0.0638778, 0.00869268, 0.0244828, -0.0468469, -0.0425572, + 0.0265019, -0.00503489, -0.0229935, -0.0391067, 0.00398011, 0.0506024, 0.0196865, 0.0822405, + -0.0331631, 0.0331953, 0.0364992, 0.0264935, 0.0194893, -0.0485401, -0.0526263, -0.0288017, + -0.000343949, -0.00305366, 0.0195557, 0.00916105, 0.0849109, 0.0622262, 0.0617623, 0.0296367 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p62(hatfit_yaw00_lev1_p62); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p62_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p63.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p63.mh new file mode 100755 index 0000000..ebdf6f0 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p63.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p63.mh: + +#ifndef stasm_hat_yaw00_lev1_p63_mh +#define stasm_hat_yaw00_lev1_p63_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p63(const double* const d) // d has 160 elements +{ + const double intercept = -0.327027; + const double coef[160] = + { + 0.00117412, -0.0265293, 0.0414526, -0.00446532, -0.000780244, 0.0309753, -0.126524, 0.0273416, + -0.0422317, -0.00609733, 0.00825351, 0.00790836, 0.0291014, 0.0441713, -0.0145854, 0.0137382, + -0.00831013, -0.0526895, -0.037661, -0.00968318, 0.116618, 0.0103253, -0.0595431, 0.0496003, + -0.0665721, 0.00702109, -0.109901, -0.0827082, -0.00936522, -0.00162648, -0.0562617, -0.0153416, + -0.0065123, 0.0472623, 0.0634004, -0.0196607, -0.019769, -0.00566076, -0.0607523, 0.0749408, + -0.00611749, -0.0276194, 0.114619, 0.084836, 0.00815514, -0.0555772, 0.0391078, 0.0414358, + 0.121184, 0.147412, -0.0318164, -0.145786, 0.00704808, -0.0110287, 0.0164001, -0.0621218, + 0.0149256, 0.0808699, 0.0804086, 0.106282, 0.0405482, 0.0330293, 0.12561, -0.0589569, + 0.0224142, -0.108786, -0.00491116, 0.0465216, 0.0453282, 0.0296043, 0.0982771, 0.0627282, + 0.0506193, -0.0174854, 0.0256419, -0.0266217, -0.0465652, -0.0619258, -0.0532835, -0.0785362, + -0.0161707, -0.0490527, 0.0143398, -0.0138499, 0.020052, -0.0703482, 0.0590368, 0.134647, + -0.049885, -0.00266826, -0.0244827, -0.111946, -0.0878235, 0.15595, -0.000659438, -0.154788, + 0.00297078, 0.0132703, 0.0115521, 0.0331993, -0.0966483, -0.0545614, -0.026128, 0.0150231, + -0.0128654, -0.0320918, -0.0591223, -0.0218507, -0.0361654, -0.0115635, -0.0273279, -0.0585035, + -0.0352849, 0.0301985, 0.0714253, 0.0790165, 0.0457336, 0.00843746, 0.113132, 0.10087, + 0.0580212, -0.0135828, 0.00489927, 0.0153762, -0.0217218, 0.0638703, 0.000115968, 0.0334685, + -0.0241135, 0.00384658, -0.0261348, -0.0454305, 0.0297893, -0.0343742, -0.036355, 0.0349305, + -0.0196957, 0.00692413, 0.075663, 0.0631312, 0.0852203, -0.0199816, 0.0110331, -0.0218748, + 0.0535471, 0.0363862, 0.0293074, -0.00509621, 0.0277587, 0.0447058, 0.0520932, 0.00976812, + -0.00756772, -0.0466398, -0.0370653, -0.0200316, 0.0236178, 0.0165199, -0.0315377, 0.0236377 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p63(hatfit_yaw00_lev1_p63); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p63_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p64.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p64.mh new file mode 100755 index 0000000..6b196a9 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p64.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p64.mh: + +#ifndef stasm_hat_yaw00_lev1_p64_mh +#define stasm_hat_yaw00_lev1_p64_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p64(const double* const d) // d has 160 elements +{ + const double intercept = -0.221659; + const double coef[160] = + { + 0.0364118, -0.0340164, 0.0407147, 0.113031, 0.190778, 0.0314938, 0.0342179, 0.015366, + -0.0132611, -0.0636244, -0.040571, -0.081486, -0.0900368, -0.0268184, -0.089493, -0.0174274, + 0.0183977, 0.0234542, 0.0288216, -0.0624968, -0.0524316, -0.0307032, -0.0639346, 0.0857077, + -0.0308074, 0.00837735, -0.00453838, -0.0611632, -0.0128637, 0.0077273, -0.0417138, 0.0219363, + 0.00718579, 0.0559161, 0.000579146, -0.0125301, 0.0297841, -0.0235627, 0.0463869, 0.0387731, + -0.0562936, -0.0190806, 0.0087306, 0.0261748, -0.0659872, 0.00151971, 0.0554092, -0.0774134, + -0.0402783, -0.0251337, 0.00201256, 0.053982, 0.0628297, -0.00454475, 0.0813841, 0.0984645, + 0.0291425, 0.0222582, 0.0444502, 0.0767124, 0.0390445, 0.051904, 0.0941079, -0.00941949, + 0.00284052, 0.0111219, -0.0460434, 0.0373575, -0.00560822, -0.0544922, 0.00609882, -0.141022, + -0.024522, -0.0432508, -0.0190956, -0.0165462, -0.0313735, 0.0506585, -0.0642271, -0.0219566, + 0.0127945, -0.0164266, -0.01266, -0.0571315, -0.042462, -0.0443998, -0.0256433, -0.0906727, + 0.0369999, -0.00749289, 0.0305802, -0.0199618, -0.0398645, -0.012479, 0.0293881, -0.0915479, + -0.0875018, -0.0522991, -0.0300075, -0.0293367, 0.00304054, -0.0153113, -0.0852418, 0.0606356, + -0.0508301, 0.0473317, -0.00559567, -0.0145069, 0.0155352, 0.0937862, 0.0419105, 0.107439, + -0.0132481, 0.0641715, 0.0312028, 0.0733368, 0.0265372, 0.0135173, 0.106767, 0.0236229, + 0.00246322, 0.0206615, 0.10063, 0.0451973, 0.030797, 0.0583173, 0.00928432, -0.0118978, + 0.0111116, 0.0528778, -0.0254398, -0.00435345, 0.0536206, 0.0278869, -0.0166692, 0.118701, + 0.0105538, 0.0128111, 0.0164439, 0.0130927, 0.00129399, -0.0440021, -0.0115579, -0.019537, + -0.0620245, -0.0291088, -0.110246, -0.0248473, -0.0256739, -0.0519484, -0.000626873, -0.0129347, + 0.0514691, 0.105352, 0.0998094, 0.0253072, 0.0281183, 0.0241761, -0.00190695, 0.061081 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p64(hatfit_yaw00_lev1_p64); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p64_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p65.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p65.mh new file mode 100755 index 0000000..05ea80b --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p65.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p65.mh: + +#ifndef stasm_hat_yaw00_lev1_p65_mh +#define stasm_hat_yaw00_lev1_p65_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p65(const double* const d) // d has 160 elements +{ + const double intercept = -0.175002; + const double coef[160] = + { + -0.0277865, -0.00461839, 0.000804702, -0.00666069, -0.000353549, -0.00788238, -0.00938188, 0.0222033, + -0.050188, 0.00359491, 0.00366198, -0.0166296, 0.000297359, 0.00483099, -0.0825797, 0.000643547, + -0.0630764, -0.0659505, -0.0102977, 0.0360068, 0.0127702, -0.0259893, -0.0789133, -0.0683098, + -0.00482564, -0.0310966, 0.00995508, -0.0132953, 0.00953184, 0.0175084, 0.00165241, 0.00201592, + 0.0766108, -0.0181389, -0.0332234, 0.0332517, 0.0219349, 0.0512349, 0.0322202, 0.046018, + 0.0169466, 0.0146008, -0.0477406, 0.019435, -0.0121325, -0.0332415, 0.00211002, 0.00113552, + -0.00347845, 0.0185526, 0.0799375, 0.0184735, -0.0247489, 0.0306522, 0.132248, -0.00205819, + 0.13069, 0.115871, 0.0506738, -0.0372212, -0.0175758, 0.0684921, 0.122341, 0.269659, + 0.0665379, -0.0155841, -0.0518629, -0.0142568, -0.0944692, -0.088548, -0.11378, 0.01854, + 0.0115034, 0.0424948, 0.0296922, 0.0247563, 0.00335754, -0.00599567, -0.0309015, -0.0741586, + -0.0465119, -0.00161941, -0.0021765, -0.00246838, 0.0341996, 0.00583213, -0.0227952, -0.0198427, + -0.0189341, 0.0117395, 0.0318078, -0.0215246, -0.0300004, -0.00681776, -0.0461987, -0.0623052, + -0.0844771, 0.000542585, 0.0246798, 0.0770029, 0.0857678, 0.0739165, 0.0184543, -0.0843127, + -0.0576231, -0.0629255, -0.0450643, 0.00599557, 0.0455094, 0.0537528, 0.00473172, -0.0845924, + 0.0150027, 0.0171967, -0.0127595, 0.00703861, -0.0182145, -0.0213446, -0.00797504, -0.0245089, + -0.0192921, 0.0136112, 0.0116631, 0.00265455, -0.000741286, 0.0304773, -0.02086, -0.00264433, + 0.0204618, 0.0387465, -0.0510006, -0.041918, -0.0177707, -0.0228606, 0.0180372, -0.00552248, + 0.0331364, -0.00103725, -0.00155859, 0.00364934, -0.030725, -0.0601593, -0.00316454, 0.0510012, + 0.024794, 0.0200472, 0.0260482, 0.03692, 0.00540666, -0.012112, 0.012476, 0.0372805, + 0.0373335, -0.00687078, 0.0080672, -0.0159034, 0.0101183, 0.0374216, 0.0163694, 0.0310197 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p65(hatfit_yaw00_lev1_p65); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p65_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p66.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p66.mh new file mode 100755 index 0000000..7cf1ef9 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p66.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p66.mh: + +#ifndef stasm_hat_yaw00_lev1_p66_mh +#define stasm_hat_yaw00_lev1_p66_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p66(const double* const d) // d has 160 elements +{ + const double intercept = -0.114908; + const double coef[160] = + { + 0.0621479, 0.148664, -0.0808057, -0.0734325, -0.0779598, 0.112303, 0.0691012, -0.0734984, + -0.0891871, -0.0303359, -0.0296288, 0.0653355, 0.057726, -0.0747313, -0.0389204, 0.030748, + -0.0376043, -0.0242851, 0.00215944, -0.0128589, 0.0526175, -0.0154007, -0.0356016, 0.00790394, + 0.0393551, 0.0121278, 0.0740665, 0.101692, 0.0326844, 0.00688292, 0.0422339, 0.107239, + 0.0503345, 0.00995021, -0.0509846, 0.0117855, -0.0384774, 0.031577, 0.00134269, -0.127872, + -0.0709863, -0.149595, 0.00666169, -0.000596597, -0.0462128, 0.0550865, -0.0638316, -0.0380512, + 0.0592485, 0.0172013, 0.0699331, 0.0563683, -0.0446237, -0.0296292, 0.0829031, -0.0981408, + -0.00211501, -0.0287852, 0.0204565, -0.0160499, -0.0508642, -0.0430687, 0.0686544, -0.0860575, + -0.109292, -0.0432463, -0.0627935, -0.0897644, -0.0565552, -0.0392803, -0.0675007, -0.0981836, + -0.110825, -0.00265412, -0.024454, 0.00582448, 0.0328972, 0.0868582, 0.151676, 0.157909, + 0.0173907, 0.0769144, 0.0790404, -0.024212, 0.0882533, -0.0252413, 0.0427054, 0.0565396, + -0.00320091, 0.043672, -0.00638487, 0.015961, 0.0536973, 0.0572533, -0.0228992, 0.00460968, + 0.0530984, 0.0482597, 0.0217364, 0.0170837, 0.0227786, 0.0455684, -0.0356677, 0.14438, + 0.0971565, 0.0352834, 0.0686218, 0.0613583, 0.0810098, -0.0496866, -0.085401, 0.0643533, + -0.0701281, -0.0474367, -0.0551886, 0.0374986, 0.0114636, 0.0147769, 0.0209621, -0.0237301, + -0.0613557, -0.048417, -0.0312429, -0.0513667, -0.04645, -0.0179482, 0.0837733, -0.0114909, + 0.0243065, 0.00229574, 0.0533605, 0.0381334, 0.00564831, -0.00935319, -0.0554278, -0.015606, + -0.0499693, -0.00343467, 0.00644126, -0.00769993, 0.0214419, 0.017018, 0.00379739, -0.0394817, + -0.0649387, 0.00961401, -0.0294862, -0.047631, -0.0189085, -0.0200228, -0.0206836, 0.0113553, + 0.0340622, 0.0568404, -0.030138, -0.026374, -0.0548503, -0.0599922, 0.0537001, -0.0145433 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p66(hatfit_yaw00_lev1_p66); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p66_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p67.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p67.mh new file mode 100755 index 0000000..58885e7 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p67.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p67.mh: + +#ifndef stasm_hat_yaw00_lev1_p67_mh +#define stasm_hat_yaw00_lev1_p67_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p67(const double* const d) // d has 160 elements +{ + const double intercept = -0.113909; + const double coef[160] = + { + -0.0188617, 0.00316902, -0.0739061, 0.0282265, 0.003645, -0.057957, 0.0050709, 0.0242442, + -0.123112, -0.0885432, -0.0231802, 0.0524963, 0.145596, -0.0695975, 0.0542611, 0.213012, + 0.0771955, 0.0859766, 0.112913, 0.00182485, -0.041207, 0.0709448, -0.133451, -0.0534433, + 0.0443474, 0.0526311, -0.0920123, -0.0394857, -0.110341, 0.114107, 0.105256, -0.104847, + -0.0502754, -0.019576, -0.0423652, 0.00980916, 0.0210069, -0.0375084, -0.00186543, -0.0165352, + -0.068461, 0.033185, 0.0545209, -0.0520722, 0.0253465, -0.0047908, 0.0872255, -0.0718019, + 0.0179633, -0.0174179, 0.0828479, 0.0307566, -0.0581829, -0.0772103, -0.0863097, 0.0172761, + -0.0636419, -0.0857602, -0.225817, -0.129229, -0.0221761, 0.049664, 0.0880692, -0.0322266, + -0.00965428, -0.0102029, 0.113926, 0.0290924, -0.0104373, -0.0425892, -0.0732669, -0.0120473, + 0.0358277, -0.0121853, 0.0111512, 0.0297736, -0.0455152, -0.0421967, 0.106585, -0.0538339, + 0.119307, 0.0605931, 0.0337106, -0.0143666, -0.000475732, -0.00033312, -0.016137, 0.0540146, + -3.17965e-05, -0.0643621, -0.0239138, 0.0592346, 0.0313051, 0.0205812, 0.00707053, -0.00760147, + 0.0728607, 0.0906611, 0.112247, 0.0393033, 0.057346, 0.044609, 0.0267728, 0.111261, + -0.0273771, 0.0108312, -0.0310528, -0.0753102, 0.00676557, -0.00323801, -0.00547113, -0.042993, + 0.0217995, 0.000293362, 0.0527807, 0.052532, 0.0965316, 0.0762126, -0.050425, 0.0904335, + -0.00995776, -0.0420223, -0.0163665, -0.00787983, -0.0444523, -0.0292807, 0.00134789, -0.00916903, + -0.0439685, -0.00308172, 0.0153934, 0.0264436, -0.0139337, 0.0130059, 0.0210779, -0.0585686, + 0.00739594, -0.0367863, 0.016144, -0.0448992, -0.0466312, 0.00240427, 0.0113582, 0.0102517, + 0.000421868, 0.00283884, -0.0185146, -0.00344203, 0.00447471, -0.0599441, 0.0294516, -0.0166099, + -0.039928, 0.0147255, 0.0114217, 0.0182585, 0.000694995, 0.0165909, -0.0146478, -0.022212 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p67(hatfit_yaw00_lev1_p67); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p67_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p68.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p68.mh new file mode 100755 index 0000000..e4d551b --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p68.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p68.mh: + +#ifndef stasm_hat_yaw00_lev1_p68_mh +#define stasm_hat_yaw00_lev1_p68_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p68(const double* const d) // d has 160 elements +{ + const double intercept = -0.0472535; + const double coef[160] = + { + -0.0333984, 0.0656835, 0.0106519, 0.0399759, 0.0837495, -0.0590801, -0.0354664, 0.000401582, + 0.0507861, 0.0305926, -0.0299797, -0.0280611, -0.0375379, 0.0890645, 0.0991353, -0.0119074, + 0.0500358, 0.0327039, 0.0326631, 0.0156037, -0.0896013, -0.0172661, -0.0611493, -0.0487139, + -0.0158553, -0.0170312, -0.0675439, 0.0393561, -0.0252104, -0.0245059, -0.0460004, -0.00717333, + -0.0699404, -0.0325669, -0.0441731, 0.122475, 0.114906, -0.00302238, 0.0638788, 0.0975657, + 0.0238194, -0.0122492, 0.00939505, -0.0268166, -0.161655, 0.0738256, 0.133678, 0.0601642, + -0.0502025, -0.0815136, -0.0643104, -0.0445671, -0.0357928, -0.0869471, -0.0474168, -0.0431398, + -0.0825893, -0.0275855, 0.0356601, -0.0646219, 0.033888, -0.0717098, 0.0574178, -0.0301816, + -0.00499705, 0.0727134, 0.0824336, -0.0235041, 0.0235093, -0.0639051, 0.0631396, -0.0419611, + -0.037852, -0.0387067, -0.0240848, -0.111232, -0.0691031, -0.0380525, -0.0390921, 0.099562, + -0.00279045, 0.0328427, -0.0615046, -0.0442496, -0.0400743, 0.00526195, 0.00243521, 0.0295069, + 0.0521513, 0.0641226, 0.040687, 0.0798061, 0.0492278, 0.12391, -0.076507, -0.00658683, + 0.0782203, 0.0321287, 0.0274339, 0.0559232, 0.0188869, 0.0718778, -0.0556092, 0.0221964, + 0.0632411, 0.0219449, -0.0251334, 0.0464636, -0.0239108, -0.0166778, 0.0142018, 0.0594118, + 0.0749457, -0.0632603, 0.094559, 0.077424, 0.0532179, 0.0567741, 0.02659, -0.0608049, + -0.010741, -0.037765, -0.02709, 0.0687838, 0.0112361, 0.0066147, 0.0325352, -0.0838491, + -0.00727761, -0.00590156, -0.0304007, -0.00232171, -0.0285817, -0.0194663, -0.0117951, 0.0231252, + -0.000157544, 0.0139116, 0.00777066, -0.00782038, -0.00366661, -0.023865, -0.0216654, 0.0361765, + -0.00748849, 0.00483604, 0.0402628, 0.00263971, -0.0368632, -0.0121392, -0.00152512, -0.0232155, + -0.0494068, -0.0315213, -0.0389766, -0.00911571, -0.0881912, -0.00859301, 0.0414033, -0.0362998 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p68(hatfit_yaw00_lev1_p68); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p68_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p69.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p69.mh new file mode 100755 index 0000000..0b19712 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p69.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p69.mh: + +#ifndef stasm_hat_yaw00_lev1_p69_mh +#define stasm_hat_yaw00_lev1_p69_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p69(const double* const d) // d has 160 elements +{ + const double intercept = 0.138467; + const double coef[160] = + { + 0.0727278, 0.0410694, -0.0121286, 0.10934, -0.0571606, 0.039361, 0.0798405, 0.00142393, + 0.0423685, -0.0694792, -0.08714, -0.00116926, -0.0417457, 0.00768107, -0.0147799, -0.0480903, + 0.0175646, -0.0171768, -0.0445522, -0.00384396, -0.0298101, -0.0217389, -0.0199785, -0.0402522, + -0.0202302, 0.053779, 0.0185913, 0.0391604, 0.0158164, -0.0631713, -0.0215226, -0.013408, + -0.0493236, -0.0716819, -0.0305592, -0.00565181, 0.0295756, -0.0225791, -0.0125007, 0.0718176, + 0.0186186, 0.0286526, 0.0436904, -0.019139, -0.0522052, -0.00536649, 0.0472919, 0.0208337, + -0.0203697, 0.0782312, 0.0839855, 0.090479, 0.0706644, 0.0731851, -0.0965635, -0.0463428, + -0.0293672, -0.00786047, 0.0409683, -0.0374142, 0.0901149, 0.0818718, 0.0673608, 0.0438763, + 0.0559625, 0.0183026, 0.0521258, -0.00613286, 0.0426728, -0.00262783, 0.0623643, 0.0629963, + 0.0465622, -0.0554452, -0.000150035, -0.0175842, -0.00246682, 0.0739301, 0.0362838, 0.00592763, + -0.12026, -0.00668744, -0.0786816, -0.0647531, -0.0321518, -0.0100294, -0.0490275, -0.029289, + 0.0413105, 0.0238406, -0.0300419, -0.0638156, -0.110498, -0.0941771, -0.0253184, 0.0428704, + 0.0438465, 0.0224067, -0.0342461, 0.0399161, -0.0840878, -0.0685666, -0.0208694, -0.0306758, + 0.00892258, -0.00213832, 0.032049, 0.0173309, -0.0638428, -0.0443805, -0.0341364, -0.0546695, + -0.0353043, -0.0557252, 0.00519504, 0.0286246, -0.044046, -0.014966, 0.0130059, -0.0170023, + -0.0490745, -0.0462449, -0.0301219, 0.0728487, -0.00719909, -0.0244057, -0.014565, -0.0500982, + -0.0102718, -0.0382015, 0.0355018, -0.0108327, 0.0390334, 0.0880404, 0.0422387, 0.0559269, + 0.0475343, 0.0106384, 0.060598, 0.00438707, 0.021236, 0.0164531, -0.112987, 0.0802725, + -0.00106202, 0.0180457, 0.0100923, -0.0175058, 0.0423891, 0.0244042, -0.0349724, -0.0170408, + -0.0506162, -0.0169565, -0.0853738, -0.0504872, -0.0229947, -0.00657965, 0.132349, -0.025945 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p69(hatfit_yaw00_lev1_p69); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p69_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p70.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p70.mh new file mode 100755 index 0000000..b1e76b6 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p70.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p70.mh: + +#ifndef stasm_hat_yaw00_lev1_p70_mh +#define stasm_hat_yaw00_lev1_p70_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p70(const double* const d) // d has 160 elements +{ + const double intercept = -0.133387; + const double coef[160] = + { + 0.0424555, 0.0670308, 0.0010174, -0.0308677, 0.0528108, -0.070897, 0.0448855, -0.000525556, + -0.100123, -0.0861334, 0.0316145, 0.0169901, 0.0901615, -0.0500279, -0.0376332, 0.0427404, + 0.0720401, 0.0227514, -0.106129, -0.0212751, -0.0379922, 0.063484, 0.0188433, 0.0395767, + 0.0301117, -0.0215064, 0.0471855, -0.0341529, -0.0803298, -0.0145573, -0.0235636, -0.105323, + 0.0193279, 0.0311169, -0.0481364, 0.11473, 0.0624199, 0.0110681, 0.0336379, 0.00642461, + 0.0422275, 0.0139292, 0.155419, 0.0669998, -0.0508135, -0.00343256, -0.0168017, 0.0231051, + 0.0575028, -0.0536568, -0.0718591, 0.000673625, -0.0521534, 0.0252803, -0.00296366, -0.0187603, + -0.00851754, 0.0395557, 0.100741, 0.00741312, 0.0600377, 0.0807008, 0.0521776, 0.0797571, + -0.0629093, -0.00673294, -0.0946586, -0.116795, 0.0606276, -0.00622547, 0.0292151, 0.0388462, + -0.0109681, 0.0554172, 0.240807, -0.0162847, 0.0303524, 0.0470641, -0.0465172, 0.00661341, + -0.0431188, -0.0139805, -0.0778138, -0.0917159, -0.0543887, -0.0126208, 0.0157767, -0.0381842, + -0.0601245, -0.0132269, 0.0229161, 0.0946917, 0.0333466, -0.0432457, 0.00767451, 0.0313255, + 0.00869893, 0.0124194, 0.0200126, -0.0542009, -0.0419267, -0.0324422, -0.0361022, -0.0342807, + 0.0285237, -0.00941491, 0.042298, 0.0531628, -0.0579588, -0.00360975, 0.0202182, -0.0463113, + -0.0217165, -0.0558329, -0.10461, 0.000644266, 0.0265933, -0.0190376, -0.0139198, -0.0177487, + 0.042957, 0.0337059, 0.0435429, 0.0366932, 0.0356663, 0.0708965, -0.112017, 0.0768778, + -0.0748603, -0.02778, -0.0439688, -0.0396568, -0.0230837, 0.0124313, 0.140415, -0.0556834, + 0.000653722, -0.070152, 0.00936496, -0.058654, -0.0223955, -0.0612233, 0.00818948, -0.0656468, + -0.00210204, 0.0253095, -0.0739135, -0.00608692, 0.00664508, -0.0317965, 0.123874, 0.0472496, + 0.00864499, 0.017566, 0.100338, 0.0076835, 0.0248831, 0.089721, -0.121064, 0.0594471 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p70(hatfit_yaw00_lev1_p70); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p70_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p71.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p71.mh new file mode 100755 index 0000000..ce2385d --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p71.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p71.mh: + +#ifndef stasm_hat_yaw00_lev1_p71_mh +#define stasm_hat_yaw00_lev1_p71_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p71(const double* const d) // d has 160 elements +{ + const double intercept = 0.266632; + const double coef[160] = + { + -0.00323948, -0.0113591, -0.0336446, -0.0710632, -0.0705223, 0.062828, -0.0251187, -0.0602036, + 1.21336e-05, 0.0550747, 0.00732572, 0.0563387, -0.0153524, -0.0419621, -0.00887493, -0.0643784, + -0.0137269, -0.024181, -0.0454399, -0.00608388, 0.0322647, -0.0382676, -0.00581657, -0.016338, + -0.0108501, 0.0256067, -0.0825346, -0.032075, 0.013924, -0.0233511, -0.0214738, 0.0280752, + -0.107449, 0.0538449, -0.0324866, 0.0252568, 0.0629976, 0.0207773, 0.0430119, 0.0273273, + -0.014923, -0.0388074, 0.00823292, -0.045255, 0.0650417, 0.0443541, 0.0635936, 0.083295, + 0.0382236, 0.000554167, 0.0419841, 0.0106936, 0.0110228, 0.0459013, 0.00467543, 0.0332924, + 0.0945127, 0.0472357, 0.0382225, -0.0225111, -0.0164956, 0.0434837, 0.0606323, 0.118943, + 0.0227736, 0.0480948, 0.082012, 0.0256161, 0.0113917, -0.0481997, -0.073957, 0.00668885, + -0.0322754, -0.019252, 0.0818042, 0.00733527, 0.0100666, 0.00991564, 0.0338835, 0.000509096, + -0.0388687, -0.00841774, 0.0167134, -0.0761158, -0.0143569, -0.00907291, 0.0220304, -0.0468844, + -0.0292457, -0.000624045, 0.0446416, 0.0363924, -0.00851759, -0.0481172, -0.0102748, -0.0435456, + -0.133599, -0.0498851, -0.0371449, 0.0411598, 0.0312921, -0.00926869, -0.0673707, -0.0917156, + -0.042758, -0.0852033, -0.0295567, 0.059162, -0.0074855, 0.0215083, -0.0329871, -0.0651943, + -0.0189135, -0.00652077, -0.11006, 0.032581, -0.102509, -0.0305093, -0.00925267, -0.0128011, + 0.0166546, -0.0709906, -0.0983723, -0.0197508, -0.0533792, -0.0488329, 0.141153, 0.0443988, + 0.00938893, 0.0266859, 0.0275815, 0.0470291, 0.0272184, 0.0654562, -0.107629, 0.0189209, + 0.0634252, 0.0416836, 0.071386, -0.00291001, -0.0148239, 0.0567805, -0.071365, 0.0271712, + -0.0311755, 0.0128937, 0.00768441, -0.0793778, -0.0645176, -0.0124901, 0.0369286, 0.0268296, + 0.0126682, 0.0331465, -0.0406404, -0.0143453, -0.0388306, -0.0232577, -0.0152349, -0.00314514 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p71(hatfit_yaw00_lev1_p71); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p71_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p72.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p72.mh new file mode 100755 index 0000000..7e45765 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p72.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p72.mh: + +#ifndef stasm_hat_yaw00_lev1_p72_mh +#define stasm_hat_yaw00_lev1_p72_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p72(const double* const d) // d has 160 elements +{ + const double intercept = 0.298111; + const double coef[160] = + { + 0.0659044, -0.0136349, -0.000657047, -0.0524316, 0.0093208, 0.0259109, 0.0627028, -0.00903453, + 0.0274928, 0.0297302, 0.0694621, 0.0678002, 0.0654913, -0.0031269, 0.00777132, 0.0435105, + -0.0336438, -0.00949334, -0.0201626, 0.0315994, 0.0374407, -0.0292693, -0.0488771, -0.0692642, + -0.0778231, 0.0947238, 0.0986332, 0.0204165, 0.0653812, 0.0855347, 0.10902, 0.0990798, + 0.0252731, 0.0228385, -0.0354786, -0.0257165, 0.00979335, 0.0133789, -0.011996, 0.122096, + -0.116807, 0.03751, 0.0182167, 0.072391, 0.0461229, 0.0279572, -0.0575722, -0.0174644, + -0.110995, -0.0872117, -0.044589, -0.0274898, -0.0213475, -0.0663374, -0.0594111, -0.038104, + 0.0225458, 0.0143709, -0.0475647, -0.0176696, -0.0952845, -0.0270043, -0.0115237, -0.013899, + 0.0440536, -0.0365961, -0.0699315, -0.0686312, -0.0798702, -0.0546913, -0.00454662, -0.0516614, + -0.021318, -0.0627624, 0.0824855, 0.0662995, 0.0526493, -0.0404413, 0.0253183, -0.010623, + 0.0509673, -0.0313634, 0.0580512, 0.036311, 0.00554113, 0.0408745, -0.0538253, -0.0556542, + -0.0161722, 0.0340043, -0.0203796, -0.0764515, -0.0650205, 0.0578113, 0.091688, 0.00397961, + 0.0227092, -0.012721, -0.0121066, -0.0237495, 0.000210238, 0.00523915, 0.00866707, 0.0416126, + -0.00888034, 0.0335162, 0.00281285, 0.000216386, 0.0195712, -0.00883568, -0.0601433, -0.0224163, + 0.0219169, -0.0063463, -0.0157962, 0.0198269, 0.00410662, 0.00975731, -0.0218908, 0.0454962, + -0.0155503, 0.0988849, 0.0463098, -0.0100967, -0.0268059, 0.0566602, 0.072615, 0.0740009, + -0.0333233, -0.0182402, -0.0706448, 0.0125493, -0.040476, -0.0350976, -0.137625, 0.00128251, + -0.0558219, -0.00671415, -0.0848036, 0.0173377, -0.0294549, -0.000625941, -0.0863849, -0.0417296, + -0.00513088, -0.0261223, 0.0074173, -0.0278166, -0.0170869, 0.00271093, 0.0106674, 0.0273419, + -0.0100846, 0.00562695, -0.00600253, 0.0216703, -0.00989039, -0.00382208, 0.0260593, -0.000255542 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p72(hatfit_yaw00_lev1_p72); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p72_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p73.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p73.mh new file mode 100755 index 0000000..1a6731b --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p73.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p73.mh: + +#ifndef stasm_hat_yaw00_lev1_p73_mh +#define stasm_hat_yaw00_lev1_p73_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p73(const double* const d) // d has 160 elements +{ + const double intercept = 0.444151; + const double coef[160] = + { + -0.020546, 0.0161181, 0.0654594, -0.0948747, 0.0285488, 0.0408993, -0.0211689, 0.0247758, + -0.00582393, 0.0185156, 0.0725341, 0.00802478, 0.0177493, 0.0507399, 0.0132491, 0.00144042, + -0.0140682, 0.0033576, -0.000123129, -0.0115809, -0.00328298, 0.0253079, -0.0533519, 0.0387285, + -0.00350354, -0.0703206, 0.0106172, -0.0374575, 0.0282741, 0.0254831, -0.0700683, -0.0170526, + -0.0364723, 0.0324261, -0.0404725, 0.0728566, 0.00123376, -0.01443, 0.0143197, -0.0289, + -0.044168, -0.0394531, -0.0453126, -0.0427691, -0.0969554, -0.104084, 0.0706115, -0.0336697, + -0.0357658, -0.00877757, -0.018146, 0.0280338, 0.0330396, -0.0116376, -0.0718934, -0.0169607, + -0.00429307, -0.00922947, -0.0148544, 0.0603271, 0.0430832, 0.0702863, -0.0180784, -0.0242528, + -0.0409658, 0.0116987, 0.0459699, 0.0121752, -0.0819474, -0.00677367, 0.0379443, -0.0223598, + -0.0292117, 0.000454892, -0.0194356, -0.031597, -0.109613, -0.0242186, -0.00652066, 0.0350001, + -0.012082, 0.0091048, 0.065266, -0.0128821, 0.028678, 0.00238832, 0.182173, -0.0143746, + 0.0724319, 0.0371631, 0.0456258, 0.0132541, 0.031683, -0.0492994, 0.0593304, 0.0549378, + 0.0210115, 0.00293678, -0.0423056, -0.0732382, -0.0307535, 0.00439763, -0.0169179, 0.0584682, + -0.00417461, -0.000920001, -0.0323396, -0.0243903, -0.0290335, -0.0224079, -0.0441952, 0.0355719, + 0.00940746, 0.0466832, -0.0271315, -0.0411812, 0.00951903, -0.0392041, -0.112846, -0.0197858, + 0.0278604, 0.00782806, -0.0426082, -0.0257704, 0.0161067, 0.0148668, -0.128532, -0.0126304, + 0.0221653, -0.0646441, 0.00312968, -0.0427131, -0.0420398, -0.021803, -0.0280242, 0.00798578, + -0.0327944, -0.0170829, -0.0214821, 0.058862, 0.0327726, 0.00170463, -0.029606, 0.0144036, + -0.0451911, -0.0545393, -0.0336726, 0.0161638, -0.0212735, 0.00839933, 0.00677629, -0.0399395, + -0.0440208, 0.0470579, 0.01285, 0.0786805, 0.00188622, -0.00854256, 0.00466533, -0.00454773 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p73(hatfit_yaw00_lev1_p73); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p73_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p74.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p74.mh new file mode 100755 index 0000000..f7dcbd7 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p74.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p74.mh: + +#ifndef stasm_hat_yaw00_lev1_p74_mh +#define stasm_hat_yaw00_lev1_p74_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p74(const double* const d) // d has 160 elements +{ + const double intercept = -0.0861693; + const double coef[160] = + { + 0.0377272, -0.052074, 0.0842496, 0.0269239, -0.0173226, -0.0148563, -0.0387223, 0.0620431, + -0.0304301, -0.0629466, -0.011215, 0.0698194, -0.0163436, 0.0618149, -0.0107698, 0.00857855, + 0.0154768, 0.0553717, 0.0201951, -0.0199971, 0.0157546, 0.0529829, -0.0227046, 0.0993725, + -0.00917861, 0.0140864, 0.0278605, -0.0611641, -0.0496295, -0.0369097, -0.00715461, 0.0107413, + -0.00622658, -0.00358566, 0.0699447, -0.027576, 0.0455637, 0.125504, -0.0768594, 0.0122902, + 0.0925916, 0.0657672, -0.020839, -0.0717925, -0.0366377, -0.0562988, 0.0310773, 0.0800754, + -0.0604142, -0.0229939, 0.00696296, -0.00243065, 0.0139147, -0.0643964, 0.0709301, -0.0999129, + -0.0211337, -0.0358355, -0.02303, -0.0486519, -0.0799998, -0.0850369, 0.0285144, -0.0695838, + -0.0289704, 0.000604421, -0.00804623, -0.0119128, 0.013159, -0.0179008, 0.0642296, -0.0752543, + -0.0255169, -0.0183058, 0.0117462, 0.111172, 0.0510885, 0.0540716, 0.00467105, -0.00388082, + -0.0727964, -0.0721001, -0.0465695, 0.0430624, -0.0273294, 0.141421, -0.119877, -0.0860733, + 0.0234302, 0.004918, 0.106259, -0.0271116, 0.0233788, -0.0203192, 0.135544, 0.0318046, + 0.0164929, -0.0175186, 0.0115526, 0.000396585, 0.0416848, 0.0269781, 0.00863606, -0.0310569, + 0.0687198, 0.0206739, 0.124923, 0.0268222, 0.0208457, -0.0239115, 0.129879, 0.0822653, + 0.0138962, 0.0317609, -0.0513746, -0.0950611, -0.00748574, -0.0715021, -0.146752, 0.101075, + 0.0161374, 0.0291443, -0.0163718, -0.00827008, 0.0423341, -0.0263848, -0.0503185, -0.00127387, + 0.00326663, -0.0664793, 0.00148467, 0.031439, -0.00665274, 0.00286052, -0.0226317, 0.00987852, + -0.0108395, 0.0167889, -0.0189328, -0.00941313, 0.0100464, 0.00736375, -0.0125995, 0.0145155, + -0.0128805, 0.0106394, -0.0727996, -0.0944875, -0.0211638, 0.040031, -0.0387772, -0.0253539, + 0.0236832, -0.0159759, 0.0388389, 0.0955583, -0.0130999, -0.0450405, -0.026158, -0.0274946 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p74(hatfit_yaw00_lev1_p74); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p74_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p75.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p75.mh new file mode 100755 index 0000000..9d6c29f --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p75.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p75.mh: + +#ifndef stasm_hat_yaw00_lev1_p75_mh +#define stasm_hat_yaw00_lev1_p75_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p75(const double* const d) // d has 160 elements +{ + const double intercept = 0.244095; + const double coef[160] = + { + -0.000899974, 0.0353078, 0.0145825, -0.0121622, -0.00485157, -0.0256038, -0.0205757, -0.00587983, + 0.0199168, -0.0300858, -0.0231304, -0.0156234, -0.0188123, 0.0105047, -0.0780988, 0.0180119, + 0.0160617, -0.0164322, 0.0267275, 0.0324825, 0.0183688, 0.0275049, -0.0196376, 0.0290752, + 0.0127766, 0.00365792, 0.074349, 0.0197182, -0.00756497, -0.0135765, -0.00210256, 0.0444623, + 0.0134508, -0.0655841, 0.0336806, 0.0269161, -0.0119017, 0.0793009, -0.00775912, 0.0461052, + -0.115087, -0.0353255, 0.0132794, 0.00745167, -0.0310263, 0.0243837, 0.00809966, -0.00518043, + 0.0636831, 0.037696, 0.0776245, -0.0330936, 0.000981091, -0.00115743, 0.0407476, 0.0586357, + 0.0680963, 0.0492938, -0.00274996, -0.00482297, -0.0331305, -0.0555758, -0.0430299, 0.0130458, + -0.00616732, -0.0500856, -0.0828604, -0.0381615, -0.0566974, -0.0150602, 0.0302092, -0.0708142, + -0.0398492, 0.00213115, 0.00406433, -0.00636538, -0.0487779, -0.0669123, 0.0364117, -0.0910838, + -0.017267, -0.033364, -0.0169948, 0.0431293, 0.0316849, -0.0475541, -0.10673, -0.085643, + -0.0627401, -0.022714, -0.0650185, 0.060876, -0.0126668, 0.0498532, -0.0311162, -0.00631595, + -0.0592686, -0.0217015, -0.0353328, 3.01015e-05, 0.00939841, 0.0838227, -0.0118762, 0.046194, + -0.0344715, 0.010483, 0.0423841, 0.0120006, 0.0735342, 0.0507255, 0.0291151, -0.0374105, + 0.0230171, -0.0427561, 0.0774957, -0.0130141, 0.0157903, -0.0284648, 0.205693, -0.00952433, + -0.00556125, 0.0859779, 0.0195645, 0.000381589, -0.0186602, -0.0494488, -0.0101716, 0.00144208, + 0.0220583, 0.00610326, -0.0362644, -0.0273198, -0.0653834, -0.0249836, 0.0135337, 0.0338374, + 0.0109754, 0.0187904, -0.0189524, -0.0386528, -0.00947884, -0.0129014, -0.0440307, -0.0168492, + 0.00959161, -0.0341214, 0.00378802, 0.0197966, 0.0237692, 0.00692549, -0.0449733, 0.0142163, + 0.0276045, 0.0132254, -0.0378692, -0.0531314, -0.0021312, 0.0143778, -0.106118, 0.0143603 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p75(hatfit_yaw00_lev1_p75); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p75_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p76.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p76.mh new file mode 100755 index 0000000..ef0902e --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev1_p76.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev1_p76.mh: + +#ifndef stasm_hat_yaw00_lev1_p76_mh +#define stasm_hat_yaw00_lev1_p76_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev1_p76(const double* const d) // d has 160 elements +{ + const double intercept = 0.167083; + const double coef[160] = + { + 0.0178567, 0.00471566, -0.00311486, 0.0590848, 0.018484, 0.109937, 0.0273678, 0.0385779, + 0.0964948, 0.0198502, 0.0733013, 0.0630774, -0.0975216, 0.0475847, 0.141174, 0.055912, + 0.0450708, 0.102869, -0.0110608, 0.0225142, -0.00837921, -0.0446967, -0.0637368, -0.0486541, + 0.007223, 0.0421737, 0.0486142, 0.035173, 0.0203823, 0.0383853, 0.00289787, -0.0133363, + 0.00970628, -0.0349687, 0.0170089, -0.0533628, 0.0531978, 0.000440911, 0.046605, 0.0487779, + 0.000617105, 0.0353907, 0.0273192, -0.092682, -0.0704793, -0.0155085, -0.0217113, -0.0631617, + -0.112172, -0.0802243, -0.0608824, 0.0123457, 0.101898, -0.0345389, 0.00356435, -0.0256903, + -0.0861817, -0.0318411, -0.00801122, -0.0602708, -0.0648524, -0.0169876, -0.0223819, -0.0399834, + 0.0246939, -0.00651791, -0.025922, -0.0122764, -0.0152515, -0.074221, -0.0428134, 0.0231071, + 0.0214263, 0.0464157, -0.00333684, 0.0686476, -0.0726611, -0.01918, -0.0510255, -0.0121835, + 0.0251027, 0.017702, -0.020816, 0.0256276, 0.062492, 0.031742, 0.0160975, 0.0905406, + -0.00495778, -0.0248092, -0.0028224, 0.00834231, -0.0172717, -0.0282789, -0.0644648, -0.091834, + 0.0375562, -0.00619002, -0.00536505, 0.020868, 0.032814, 0.0248805, 0.0170806, 0.0586391, + -0.0149593, -0.0445147, 0.0531902, -0.0218665, -0.0289037, 0.065172, 0.0438367, 0.017724, + 0.0487856, 0.0179788, 0.0317689, -0.0629089, 0.0142979, -0.051581, -0.00846684, 0.0634947, + -0.0244065, 0.00798281, 0.0281053, -0.0294804, 0.00115965, 0.0110325, 0.0143852, -0.0351062, + -0.0154878, -0.0199757, -0.0262725, 0.00266283, -0.0202465, 0.0119766, -0.0192617, 0.0439345, + -0.0650565, -0.0194041, -0.0956524, -0.0440435, -0.00749312, -0.0431471, -0.067371, -0.054401, + -0.0463175, 0.0219669, -0.0384754, 0.0520812, -0.0308316, -0.0167847, -0.100874, 0.0112061, + -0.0256602, -0.0237249, 0.0170488, 0.0909679, -0.0136034, 0.0805518, 0.0374694, 0.0708242 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev1_p76(hatfit_yaw00_lev1_p76); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev1_p76_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p16.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p16.mh new file mode 100755 index 0000000..d1fa3ee --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p16.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p16.mh: + +#ifndef stasm_hat_yaw00_lev2_p16_mh +#define stasm_hat_yaw00_lev2_p16_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p16(const double* const d) // d has 160 elements +{ + const double intercept = 0.201199; + const double coef[160] = + { + 0.0479748, -0.00784569, -0.0839676, -0.0402904, -0.00990121, -0.0161831, 0.0171531, 0.0633562, + 0.0458178, 0.038718, -0.00229275, -0.00807225, -0.00097018, -0.0167164, -0.0218175, 0.0212908, + 0.0483748, 0.0306654, 0.00668657, -0.0368009, 0.00499699, -0.0319757, -0.0424916, 0.0178991, + 0.0126939, 0.0156106, -0.0195705, -0.0524409, 0.00303049, -0.00036784, -0.0339076, -0.00650181, + -0.00221962, 0.0418911, 0.0109849, -0.0273736, -0.026405, 0.0189485, -0.0374008, -0.0135253, + -0.0509223, -0.017173, -0.00960212, -0.00728783, 0.0171797, 0.0235679, 0.11178, 0.00767195, + -0.0532631, -0.0134703, 0.0251553, 0.0296362, 0.0100125, -0.00951279, 0.0175886, -0.0152258, + -0.0643198, -0.00778827, 0.0185586, 0.0440405, 0.0352242, 0.000335484, 0.0510853, -0.0333015, + -0.0664789, -0.022523, 0.0492345, 0.0635387, 0.0590402, -0.0214514, 0.0291401, -0.0576358, + -0.0595315, -0.0602438, -0.0498133, -0.00367544, 0.0452483, -0.0124489, 0.125025, 0.0170502, + -0.0049248, -0.0393945, 0.0171818, 0.0114648, -0.0132102, -0.016775, 0.0096432, -0.0147961, + 0.0331186, 0.00980842, -0.0214262, -0.0321873, -0.0313714, -0.0137095, -0.0132678, 0.0154735, + 0.0614494, 0.0190023, 0.00482608, -0.0350526, -0.0510161, -0.04975, -0.0354202, 0.0309835, + 0.0550816, 0.0681949, 0.0527185, -0.0125734, -0.0319863, -0.0356415, -0.0373618, 0.0207985, + 0.0501947, 0.0225517, -0.0432618, 0.00168456, -0.00521152, -0.013559, 0.00523639, 0.094479, + -0.00574153, -0.0537307, 0.0131248, -0.00685395, -0.0151087, 0.00691375, -0.00111654, -0.0486872, + -0.014142, -0.0469476, 0.00942551, 0.0237295, 0.0337823, 0.0245199, 0.0387013, -0.0252803, + -0.0613539, -0.0400444, 0.0029828, 0.00468973, 0.00446706, 0.0299791, 0.00778386, -0.0241703, + -0.0407481, -0.00160535, 0.00760824, 0.00280452, -0.0209072, -0.0135813, -0.030542, -0.0249088, + -0.0641581, 0.0137424, -0.0494603, -0.0549461, -0.0140327, 0.010657, -0.0297539, -0.0048274 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p16(hatfit_yaw00_lev2_p16); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p16_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p17.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p17.mh new file mode 100755 index 0000000..dec1d34 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p17.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p17.mh: + +#ifndef stasm_hat_yaw00_lev2_p17_mh +#define stasm_hat_yaw00_lev2_p17_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p17(const double* const d) // d has 160 elements +{ + const double intercept = 0.0641183; + const double coef[160] = + { + 0.00548101, -0.0278398, -0.0529979, -0.0184241, -0.0244758, 0.00750857, -0.0870743, -0.0408273, + 0.0191316, -0.0132359, -0.0197415, -0.0282264, -0.0230354, -0.0469168, 0.00305976, 0.00509154, + 0.0337102, 0.0317416, -0.0147772, -0.0521098, -0.0298594, -0.0364094, 0.00320256, -0.00965839, + 0.0502111, 0.0040414, -0.0186344, -0.00963626, -0.00643085, -0.0348256, 0.0274904, 0.0428869, + 0.0423164, 0.0703478, 0.0436876, -0.043167, -0.0155584, -0.0627262, -0.0910627, -0.0270945, + 0.0381986, 0.0170332, -0.0378051, -0.0305759, -0.0101497, 0.0294837, 0.0541005, 0.0204143, + -0.0107043, 0.0141293, -0.000124892, -0.00228929, -0.00584688, 0.0562794, 0.029545, 0.0289569, + -0.0294728, -0.00693026, -0.00502799, -0.0220686, 0.017127, 0.0168838, 0.0372847, 0.035913, + -0.0387757, -0.00677981, 0.0154889, 0.00584213, 0.0138248, 0.022448, 0.0259633, -0.000267879, + -0.0199762, 0.0355431, 0.0268489, 0.059433, 0.0371466, -0.0195291, 0.0631884, 0.0154288, + -0.0666278, -0.0212345, 0.00775835, -0.0203998, -0.00585601, 0.118692, 0.0160203, 0.00520236, + -0.0245992, -0.0205268, 0.0347002, 0.0146157, 0.021682, 0.0334895, -0.0537345, -0.0151598, + -0.0188597, -0.0376348, 0.0303035, 0.0415455, 0.0246958, 0.0142054, -0.0206932, 0.00589225, + -0.0151944, -0.0372652, 0.00272563, -0.00158859, 0.0128479, 0.00141992, -0.0375236, -0.0219545, + -0.0257391, -0.0161181, 0.0355049, -0.0246824, -0.0230046, -0.0200004, 0.00343231, 0.0139045, + -0.00558463, 0.0414232, -0.0391887, -0.048578, -0.0148066, 0.00240101, -0.0306445, 0.0222875, + 0.0113709, 0.0243018, 0.0126473, -0.0107071, -0.028586, -0.0114096, 0.00955817, 0.00577993, + 0.00295543, -0.00017432, -0.00483328, -0.00866622, -0.0210113, -0.00407164, 0.00779089, -0.0204989, + 0.0224204, -0.0126428, 0.0216603, 0.0197888, -0.00295644, -0.000934317, 0.0240641, -0.0132466, + 0.0069265, -0.0727936, 0.0252536, 0.0185129, -0.00494405, 0.00818837, 0.0187053, -0.0385674 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p17(hatfit_yaw00_lev2_p17); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p17_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p18.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p18.mh new file mode 100755 index 0000000..2aa4ba4 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p18.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p18.mh: + +#ifndef stasm_hat_yaw00_lev2_p18_mh +#define stasm_hat_yaw00_lev2_p18_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p18(const double* const d) // d has 160 elements +{ + const double intercept = -0.464167; + const double coef[160] = + { + -0.0070516, -0.0138885, -0.00838615, 0.0241183, 0.00800509, -0.0107691, -0.0318889, -0.0226589, + 0.0601676, -0.0169016, -0.00575287, -0.0394743, 0.0451446, -0.0203331, -0.0540854, -0.0105876, + 0.0294445, -0.0333346, -0.0331402, -0.0444691, 0.0121001, 0.0844445, 0.041568, 0.0562884, + -0.0322616, 0.0360436, 0.00921021, -0.013502, -0.0027091, 0.0523874, 0.0272614, 0.012032, + 0.000168089, 0.0174628, 0.0798083, 0.0276852, 0.0135955, 0.0296484, 0.0129555, 0.0806812, + 0.0500424, 0.00710139, -0.00429781, -0.0238927, 0.00206671, -0.0204532, 0.0172665, -0.000815265, + -0.00492949, -0.00120939, -0.0317968, -0.00504358, 0.00071816, -0.00772781, 0.00686577, 0.0260517, + -0.028403, 0.0759707, 0.0504597, 0.0504078, 0.0332929, -0.00196605, -0.000229055, -0.0222047, + 0.0165769, 0.0412389, -0.00796234, -0.00544252, -0.0125328, -0.0431626, -0.00170195, -0.0120648, + -0.0211015, 0.00974593, 0.0316203, 0.0240425, -0.00954887, 0.0135305, 0.0313708, -0.0139964, + 0.00818618, -0.0291873, -0.0385677, -0.0388603, -0.00953679, -0.0185117, 0.00438256, -0.0280945, + 0.00657028, -0.0137535, 0.0160152, 0.0283693, 0.0329595, -0.00655665, 0.0025663, -0.00771347, + 0.0294882, 0.0260856, 0.00637648, -0.00866566, -0.040871, -0.0224035, -0.00895485, -0.00151325, + 0.00673054, -0.0275637, -0.0518765, -0.0346669, -0.0177936, 0.0449881, 0.0065214, 0.00766954, + 0.0429394, 0.0386208, 0.0464108, 0.00573303, -0.0410096, 0.00386441, 0.0278229, 0.0230318, + 0.0152115, -0.0100685, 0.0293164, 0.0540824, 0.0292131, 0.0355769, 0.000325612, -0.0256946, + -0.0172053, -0.00233631, 0.00716747, 0.0294623, -0.00225413, -0.0271301, -0.037571, -0.00656058, + -0.00636178, -0.0178503, -0.0179586, 0.0090866, 0.0361297, 0.00409523, -0.0119827, -0.0166724, + 0.00418527, -0.00409336, 0.00976438, 0.0118843, 0.0649968, 0.00491458, -0.0490295, 0.00522135, + -0.0017874, 0.00497965, -0.0123665, 0.0632608, 0.0561797, 0.0983509, 0.126985, 0.0707482 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p18(hatfit_yaw00_lev2_p18); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p18_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p19.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p19.mh new file mode 100755 index 0000000..c0c45d2 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p19.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p19.mh: + +#ifndef stasm_hat_yaw00_lev2_p19_mh +#define stasm_hat_yaw00_lev2_p19_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p19(const double* const d) // d has 160 elements +{ + const double intercept = -0.240635; + const double coef[160] = + { + 0.0168096, -0.0442579, -0.070338, -0.0473302, -0.0222136, 0.0957758, 0.0164518, 0.00523625, + 0.00195702, -0.0127086, -0.00720966, -0.00891624, -0.0226743, 0.0302098, -0.00206097, 0.00197536, + 0.0119359, -0.010845, 0.0263878, 0.0103592, 0.0269128, 0.0031775, 0.00825071, 0.0185765, + -0.00863547, -0.0109844, -0.0088456, -0.026454, -0.0136792, 0.02238, 0.0159833, 0.0229814, + 0.00676278, 0.0356278, 0.0243659, -0.0483941, -0.00029279, -0.0285899, 0.0724552, 0.0293844, + -0.0628865, 0.0278929, 0.0492395, -0.00819929, -0.00417028, -0.0135682, -0.00638027, -0.00104148, + -0.0277807, 0.0166524, 0.0453805, 0.00800668, 0.0257926, -0.0182616, -0.0193732, -0.0185252, + -0.0363109, -0.00320665, 0.0598099, 0.0404136, -0.000212925, -0.0243272, -0.00412736, -0.0254325, + 0.00665958, -0.0315541, 0.0232733, 0.0193451, 0.0184404, 0.00400625, 0.0300885, -0.00994864, + -0.0271101, -0.0865407, 0.064576, 0.0308198, -0.0193159, -0.00973269, -0.0206604, -0.0100628, + 0.0268986, 0.0501878, -0.0267205, -0.0220307, -0.0236678, 0.0160175, -0.0324663, -0.00533803, + 0.0409558, -0.00325867, -0.0142667, -0.0142876, -0.0127697, 0.0148601, 0.0163897, 0.00407631, + 0.0428517, 0.0201913, -0.0215948, -0.00872995, -0.00192159, 0.008682, 0.0154782, -0.00524282, + 0.00842598, -0.00765053, 0.00464852, 6.63136e-05, 0.014949, 0.00761466, 0.0266099, -0.00830669, + 0.0452914, -0.0164204, -0.031957, 0.0121778, 0.028522, 0.0417206, 0.0588211, -0.0239453, + -0.00447031, -0.00836715, -0.036449, 0.0202073, 0.0334947, 0.0145783, -0.0586885, 0.0168487, + -0.00579858, 0.0101248, 0.0214281, 0.00176611, 0.000148868, 0.0413324, 0.0124326, 0.0215377, + 0.0165895, 0.00406493, 0.0232231, 0.0357304, -0.00316806, -0.00542247, 0.0273935, 0.0283702, + 0.0246317, -0.0173005, 0.0102101, 0.00916052, -0.00898166, -0.0394295, -0.00401933, -0.0383193, + 0.0141222, 0.0139724, -0.0176987, -0.0316665, -0.00812724, 0.00615176, 0.0640168, 0.00201298 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p19(hatfit_yaw00_lev2_p19); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p19_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p20.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p20.mh new file mode 100755 index 0000000..d9c0510 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p20.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p20.mh: + +#ifndef stasm_hat_yaw00_lev2_p20_mh +#define stasm_hat_yaw00_lev2_p20_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p20(const double* const d) // d has 160 elements +{ + const double intercept = -0.57973; + const double coef[160] = + { + -0.00205481, -0.0137214, -0.00309148, -0.0185552, -0.0044485, -0.00405411, 0.0980302, 0.0258474, + 0.0441372, 0.0271223, -0.022722, -0.0374453, -0.00967222, 0.00451008, 0.0400823, 0.0441306, + 0.0282369, 0.0376717, 0.00993434, -0.00164766, -0.0277478, -0.0452401, 0.0094723, 0.0245945, + -0.00383547, 0.0326884, 0.0353405, 0.0255885, 0.0267886, 0.0080378, 0.0145145, 0.0248141, + 0.0470777, -0.0160207, 0.0149831, 0.0101602, 0.0657714, -0.0467214, 0.102737, 0.0984535, + 0.0310132, -0.0311305, 0.095894, 0.0438843, 0.00138908, -0.0255201, 0.00320738, -0.00878598, + -0.00080174, -0.0433443, 0.00994268, 0.0442605, 0.0359996, 0.0168742, 0.0266655, -0.015031, + -0.0108812, -0.0152446, 0.0306542, -0.0408367, -0.0200448, -0.0219055, -0.00829048, -0.0299107, + 0.00286763, 0.0235611, 0.0619527, -0.00629094, -0.0349205, -0.0349401, -0.0219735, -0.0223126, + -0.0190521, 0.0522663, 0.0175953, -0.0569897, -0.0104982, 0.0112655, -0.0351287, -0.0102906, + -0.020444, -0.0218077, -0.0230517, -0.0435241, -0.00586253, 0.0243467, 0.023879, -0.031373, + 0.00837013, -0.0207039, 0.00489612, 0.0227467, 0.00429101, 0.0393884, 0.0267815, -0.0161819, + 0.00150121, -0.0100761, -0.0098574, 0.058646, 0.0332048, 0.0457629, 0.0414061, -0.000192158, + 0.0113764, -0.0175181, -0.00533787, 0.0196774, 0.0189207, 0.00725609, 0.0267366, 0.0193298, + -0.0244301, -0.0107281, -0.0358781, -0.0160337, 0.00206874, -0.0594505, -0.0192336, 0.00931433, + 0.0467891, -0.0349222, 0.0139858, 0.0436247, -0.00253807, 0.003628, 0.0264592, -0.0351408, + 0.0164997, 0.0299346, -0.0112387, -0.049508, -0.00414905, -0.0249483, 0.0164856, -0.0237207, + 0.0292897, 0.0463837, 0.00937479, 0.00963005, 0.0212507, 0.00877913, 0.0395294, 0.0149616, + 0.00562129, 0.0367735, 0.0154453, 0.0195445, 0.0171127, 0.0147879, 0.0285341, 0.0203778, + -0.0326154, 0.0306668, -0.00174604, 0.0345561, 0.0300234, 0.0564806, -0.0346435, 0.0125497 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p20(hatfit_yaw00_lev2_p20); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p20_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p21.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p21.mh new file mode 100755 index 0000000..68ae1d7 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p21.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p21.mh: + +#ifndef stasm_hat_yaw00_lev2_p21_mh +#define stasm_hat_yaw00_lev2_p21_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p21(const double* const d) // d has 160 elements +{ + const double intercept = -0.137371; + const double coef[160] = + { + -0.00236509, -0.00904201, 0.0482622, 0.0424488, 0.0565872, -0.0327647, 0.0570792, 0.0605706, + -0.0128233, -0.0312516, 0.0244441, 0.0247274, 0.0639721, 0.00583817, 0.051489, 0.0328103, + -0.0583378, -0.0380139, 0.0164458, 0.0317571, 0.0424508, 0.0116324, 0.0200214, 0.0590078, + -0.0306806, -0.0405981, -0.00652414, 0.00700168, 0.0290531, 0.0100532, -0.0120271, 0.0226684, + -0.0112358, 0.00504471, -0.0403399, -0.0153419, -0.0315861, 0.0165162, 0.00592848, 0.0118801, + 0.0344096, 0.0426078, 0.0536365, -0.0266674, -0.0599532, -0.0454601, -0.0507451, -0.0308664, + 0.00734138, 0.0751499, 0.00975933, 0.0111379, -0.00815451, 0.00552466, -0.0422937, -0.0288442, + 0.0361002, 0.0313253, -0.0258745, 0.000885331, -0.0193726, 0.00598507, -0.0090692, -0.00433989, + 0.0222115, -0.00361573, -0.0331707, -0.030468, -0.0244275, -0.00293196, 0.0322258, 0.0321031, + -0.0104847, -0.0303236, 0.00775746, -0.00491881, -0.00907141, 0.003709, -0.00123734, -0.0289989, + -0.0653049, -0.0366091, -0.0253084, -0.0427656, -0.0227685, -0.0113534, 0.0215344, 0.000436021, + 0.00641436, 0.011706, -0.0162955, -0.0391898, -0.0397683, -0.0374501, 0.0154038, 0.0331744, + 0.0310901, 0.0396808, -0.0369438, -0.0320113, -0.0365431, -0.0231747, 0.00364888, 0.0506336, + 0.00216586, 0.00920747, 4.29333e-06, -0.0160827, -0.0171278, -0.00370237, -0.0198794, 0.0251668, + -0.0425848, 0.0218599, 0.0425504, 0.0306612, -0.0116232, -0.030963, -0.0149334, -0.0128814, + 0.0366718, 0.0230035, -0.0129825, 0.0180202, 0.0178947, 0.0340951, 0.020461, 0.0255292, + -0.0281736, 0.00630762, 0.0147464, 0.0573448, 0.0240933, 0.0175706, -0.0213692, -0.022618, + 0.0105691, -0.0263521, -0.00420126, 0.0318987, 0.037116, 0.0379115, -0.00468657, 0.0204243, + 0.062086, -0.0372716, -0.0137724, -0.00837101, 0.0258512, 0.00812403, -0.0121935, 0.0185915, + 0.085514, -0.0301003, 0.0350227, 0.0149268, -0.00248905, 0.000797402, -0.0177684, -0.00654257 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p21(hatfit_yaw00_lev2_p21); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p21_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p22.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p22.mh new file mode 100755 index 0000000..ce2b58b --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p22.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p22.mh: + +#ifndef stasm_hat_yaw00_lev2_p22_mh +#define stasm_hat_yaw00_lev2_p22_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p22(const double* const d) // d has 160 elements +{ + const double intercept = 0.0117697; + const double coef[160] = + { + -0.0178546, -0.00507232, -0.00537885, -0.0530472, -0.0562883, 0.0296127, -0.0548014, -0.000823639, + 0.015926, 0.00988827, 0.00843378, -0.0217375, -0.0385913, 0.0506703, -0.00520324, -0.0104024, + -0.000330601, 0.00924059, -0.0198405, -0.0429418, -0.0654977, 0.0470837, 0.0526988, -0.0131279, + 0.018024, 0.0390424, 0.0101875, 0.0238801, -0.00712584, 0.0535957, 0.0522608, 0.0102155, + -0.0226839, 0.0148612, 0.0226066, 0.0162535, -0.0285434, 0.0257833, 0.0471718, -0.0458596, + 0.000277075, 0.00620342, -0.0221676, -0.00461481, 0.0636075, 0.00634243, 0.00543572, 0.0105987, + 0.00897372, -0.0190757, -0.0626532, -0.0109301, 0.0265744, 0.00603106, 0.00160259, 0.0368236, + -0.00140971, -0.0150079, 0.0203465, 0.0625984, 0.0503313, -0.00942197, -0.0263503, 0.00727295, + -0.0242728, -0.0137839, 0.0411412, 0.0404335, 0.0170111, -0.0161308, -0.0472095, -0.00676737, + -0.0562529, -0.0229003, 0.0162299, -0.00866833, -0.00391738, -0.0337265, -0.0379058, -0.0230986, + -0.0253698, 0.00212937, -0.00591203, 0.0584039, -0.0129678, 0.00929018, -0.0232662, -0.0520017, + -0.0194294, -0.053814, -0.0157562, -0.00375296, 0.00727014, 0.0407859, 0.0240675, -0.0271583, + -0.0294064, -0.0145298, 0.0048997, 0.0142413, -0.0138544, 0.00606824, 0.0031445, -0.0401113, + -0.0231949, -0.024332, -0.0455487, -0.0347302, -0.0593698, 0.0135033, 0.0127122, -0.0139138, + 0.0174126, 0.010852, -0.00842191, -0.0195408, -0.0233637, -0.0315422, 0.0133297, 0.0701624, + 0.0198514, 0.0102554, 0.00782285, -0.0285294, 0.104508, -0.00569995, -0.0339732, 5.90907e-05, + 0.0168465, 0.00239644, -0.0307843, -0.0371566, -0.0234185, 0.00555857, 0.00332544, 0.0340692, + 0.0329612, 0.0234823, -0.000965576, 0.00522464, -0.00789185, -0.0021173, -0.00775234, 0.0164451, + 0.0117572, 0.0227539, 0.00524717, 0.00727862, 0.0275104, 0.0121523, -0.020892, 0.00706355, + -0.0286189, 0.0186815, -0.0136882, 0.051597, 0.0459619, 0.0245787, 0.0183904, -0.0107941 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p22(hatfit_yaw00_lev2_p22); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p22_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p23.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p23.mh new file mode 100755 index 0000000..c4fb6cc --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p23.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p23.mh: + +#ifndef stasm_hat_yaw00_lev2_p23_mh +#define stasm_hat_yaw00_lev2_p23_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p23(const double* const d) // d has 160 elements +{ + const double intercept = 0.242677; + const double coef[160] = + { + 0.000810244, -0.0477374, 0.0151243, 0.0792231, 0.043766, 0.000172928, -0.075201, 0.00877918, + 0.015561, -0.0270447, -0.0130295, 0.0234744, 0.0498321, 0.0208237, -0.0278933, -0.0238794, + 0.00150402, -0.0242494, -0.0122306, 0.0299458, 0.0606751, 0.0493692, -0.0425213, -0.0218249, + -0.0176783, -0.027917, -0.0168181, 0.012025, 0.0191672, 0.0318289, -0.00528081, -0.0383298, + 0.0343618, -0.0327522, -0.0511107, -0.0318691, -0.00791867, 0.0300615, 0.0169818, -0.00332896, + 0.0518194, 0.0364182, -0.0303691, -0.0891738, -0.108781, -0.0286836, 0.128743, -0.0317241, + 0.0213597, 0.0567028, 0.04782, 0.02951, -0.0305566, -0.0470166, 0.0357719, -0.02154, + -0.0043653, 0.0199172, 0.0119268, -0.0062304, -0.0498879, -0.0364475, 0.0605531, -0.0401511, + -0.0210481, 0.0142989, 0.0170633, 0.0183518, -0.00906584, -0.00979833, 0.020948, -0.0205823, + -0.019643, -0.0211283, -0.0295402, 0.00603548, -0.0146838, 0.0189525, 0.131104, 0.065143, + -0.0461765, -0.0538791, -0.0125012, 0.0887613, 0.0478228, 0.1007, -0.0118974, -0.0282087, + -0.0355892, -0.0213169, 0.00692103, 0.0126706, 0.00220347, 0.00400608, -0.0346168, -0.0361555, + -0.0238473, -0.0127767, -0.00240078, 0.00380214, 0.013514, 0.00170848, -0.0348666, -0.0270525, + 0.0167837, 0.00526975, -0.0129707, -0.0673188, -0.0227539, -0.0285314, 0.0154404, 0.0236957, + -0.015565, -0.00533645, 0.017867, -0.014366, 0.000218929, -0.00643451, -0.0288213, -0.0261644, + -0.00861372, -0.0167076, -0.0179646, -0.0232297, -0.0938334, -0.0352466, -0.0660536, -0.0109894, + 0.00404062, 0.0396702, -0.00151376, -0.00703396, -0.029871, -0.0304434, 0.0106963, 0.0171258, + 0.00310458, 0.00955822, 0.00599693, -0.0508966, -0.0324266, -0.0448106, 0.0169098, 0.0349014, + -0.0102038, -0.00315048, -0.00164872, -0.0324597, 0.00105539, -0.014407, 0.0222697, 0.00200826, + -0.00475663, -0.0406545, 0.046732, -0.00708498, 0.01835, -9.08009e-05, 0.00659241, 0.0128114 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p23(hatfit_yaw00_lev2_p23); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p23_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p24.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p24.mh new file mode 100755 index 0000000..df1912a --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p24.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p24.mh: + +#ifndef stasm_hat_yaw00_lev2_p24_mh +#define stasm_hat_yaw00_lev2_p24_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p24(const double* const d) // d has 160 elements +{ + const double intercept = -0.290285; + const double coef[160] = + { + -0.00391734, -0.0373713, 0.0296847, 0.0856366, 0.0680252, -0.0141347, -0.056779, -0.0639785, + -0.0345783, -0.0245752, -0.00601101, 0.0248511, 0.0549668, -0.0103632, 0.0176319, -0.0324854, + 0.0277483, -0.0459327, -0.0292241, -0.0201631, 0.018909, 0.0133223, 0.0299505, -0.0124793, + 0.0329833, 0.0094125, -0.0165424, -0.0104312, 0.00643773, -0.00469624, -0.0291954, 0.027616, + -0.0116333, -0.0426014, -0.00213712, -0.0557142, -0.00217717, -0.0468454, -0.0729048, -0.0447836, + -0.0144842, 0.0405147, 0.0584253, 0.0787079, -0.00218177, 0.00945018, 0.0511602, -0.043676, + -0.0145351, -0.00977988, 0.00578833, -0.0117745, -0.0274247, 0.0305891, 0.0285472, 0.0443184, + -0.050581, -0.0244408, -0.0281909, 0.0058221, 0.00330261, 0.0454032, 0.0898193, 0.0662471, + -0.0216286, -0.013524, 0.00069891, 0.0404074, 0.0169764, 0.0274654, 0.0459739, 0.0206503, + 0.0152971, 0.0228002, -0.0187678, 0.0247393, 0.0265094, 0.0373614, -0.0228019, -0.00311044, + 0.024944, 0.0275463, 0.0259327, -0.0799705, -0.082091, -0.0391279, 0.0124728, 0.033311, + 0.0487404, 0.0302635, 0.0271769, -0.0397876, -0.0402077, -0.0282224, -0.0541014, -0.00161753, + 0.0762442, 0.0214009, 0.04125, 0.00345349, -0.0299646, 0.00257046, -0.0469857, 0.0344531, + 0.0353149, 0.00880637, 0.0149039, -0.00547696, -0.022949, 0.0183402, 0.0309907, 0.0685378, + 0.0257068, 0.00948362, 0.022245, 0.00982482, -0.0307185, 0.0381942, 0.013981, 0.0019222, + -0.0234243, -0.0100864, 0.0290335, -0.0571687, 0.0195604, -0.0328423, 0.0471029, 0.0198729, + -0.00538831, -0.025955, 0.0340384, 0.0245018, 0.0335489, -0.00632678, 0.0119202, 0.00663611, + -0.029499, -0.0505394, 0.0100067, 0.0302057, 0.0131081, -0.00547969, 0.0186686, -0.00161012, + -0.00888793, -0.0391302, 0.00500464, 0.0354366, 0.0211353, 0.0240429, 0.00906457, -0.024416, + -0.000141046, 0.0398088, -0.0288674, 0.00956516, 0.0214225, 0.0303871, -0.0272088, 0.020084 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p24(hatfit_yaw00_lev2_p24); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p24_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p25.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p25.mh new file mode 100755 index 0000000..d46ebfc --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p25.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p25.mh: + +#ifndef stasm_hat_yaw00_lev2_p25_mh +#define stasm_hat_yaw00_lev2_p25_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p25(const double* const d) // d has 160 elements +{ + const double intercept = -0.48192; + const double coef[160] = + { + 0.080069, 0.0254212, 0.0698047, 0.0172652, -0.0437604, 0.0533673, 0.0479497, 0.0707692, + 0.028919, 0.0218598, -2.02511e-05, 0.0177421, 0.0252949, 0.0957902, 0.0679331, 0.0477211, + 0.015103, -0.0350397, -0.0226795, -0.0309532, 0.0196631, 0.0314508, -0.0098721, 0.026174, + 0.00875322, -0.0102275, 0.00161853, -0.0244689, -0.00217672, -0.0258021, -0.0712362, -0.0247072, + 0.0169485, -0.00647493, 0.00909959, -0.00290298, -0.0018975, -0.00785463, 0.0170031, -0.00405343, + -0.0453393, -0.0316815, 0.00553392, 0.0467984, 0.013018, 0.00286137, 0.0641622, -0.0108293, + 0.0106426, 0.0659868, 0.0619154, 0.0683916, 0.00400672, -0.0316998, -0.0439017, -0.0531982, + 0.0227195, 0.0171857, 0.0149441, 0.0469003, 0.0509676, 0.0393706, 0.0125297, -0.0131728, + 0.00232523, -0.043456, -0.0545071, -0.0356114, 0.0232419, 0.00208771, -0.0142744, -0.0270206, + 0.00372195, -0.00702677, 0.00791299, -0.0125764, 0.016542, 0.000498141, 0.0112614, -0.00637377, + -0.0150705, -0.0661879, 0.000954137, 0.00578005, 0.0330873, 0.0207243, 0.0608699, 0.0118893, + 0.00744177, 0.0285924, -0.0143176, -0.0313716, 0.00486059, -0.0034366, -0.00624046, 0.0333263, + 0.00123777, 0.0434691, 0.0071437, -0.00841325, -0.00695282, -0.0243996, -0.0220286, -0.0228198, + 0.00216731, -0.0135737, -0.0088714, -0.0068874, 0.021012, -0.0209814, 0.00917872, 0.0201832, + 0.03023, -0.0125052, -0.00717798, 0.0265657, 0.0205816, 0.00318955, -0.00975955, 0.00153578, + 0.0342051, 0.0493117, -0.0221902, 0.0290784, -0.00464809, 0.060173, 0.170815, 0.107283, + -0.0163555, -0.0098902, -0.0120301, -0.0361608, -0.0128753, -0.0265617, -0.0919782, -0.0455791, + 0.0263706, 0.0432768, -0.00306199, 0.00291669, 0.0149201, -0.019987, -0.0236052, 0.0239656, + 0.0316036, 0.010793, 0.0203367, 0.0120483, 0.00752219, -0.0246316, 0.00150752, -0.0318513, + 0.00499792, -0.00242502, 0.03601, 0.000732988, 0.0184117, -0.0522315, 0.00194238, 0.0259723 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p25(hatfit_yaw00_lev2_p25); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p25_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p26.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p26.mh new file mode 100755 index 0000000..224cc7c --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p26.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p26.mh: + +#ifndef stasm_hat_yaw00_lev2_p26_mh +#define stasm_hat_yaw00_lev2_p26_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p26(const double* const d) // d has 160 elements +{ + const double intercept = -0.433871; + const double coef[160] = + { + -0.0129694, -0.0362405, 0.0456953, 0.00806892, 0.0332427, 0.0166249, 0.0858091, -0.021537, + 0.0121069, -0.00958319, 0.00183791, -0.0445408, -0.00691424, 0.0149946, 0.0484259, 0.0455105, + 0.042137, -0.000148501, 0.0187582, 0.000764644, 0.00677489, 0.00827639, -0.0203425, 0.0730549, + 0.0487964, -0.0258577, -0.0323376, 0.0132528, 0.0104709, 0.0293409, 0.0351007, 0.0678395, + 0.0204265, -0.0113785, -0.0333476, -0.0144913, -0.0179195, 0.0584139, -0.0229801, -0.0179397, + 0.0227342, 0.0295118, 0.0340656, -0.100074, -0.0846886, -0.0443842, 0.0208676, -0.00939233, + 0.000832701, 0.0194225, 0.0593964, 0.0382799, -0.010556, -0.0222984, -0.00961312, -0.0178815, + 0.00109992, 0.00598413, 0.0445235, 0.03007, -0.0509595, -0.0385867, 0.00564818, -0.0411887, + -0.0344969, -0.0066254, 0.061847, 0.0286021, -0.0345655, 0.00151497, -0.0380565, -0.0705052, + 0.00740955, 0.020345, -0.00978735, 0.00859556, -0.0107584, 0.0208075, 0.0526561, 0.0167182, + -0.00683639, -0.00606006, -0.0112797, 0.010233, 0.0705434, 0.00259656, 0.0712719, 0.0468567, + 0.00622382, -0.0110342, -0.026088, 0.0169622, 0.036032, 0.00953248, 0.00938651, 0.0240754, + 0.00729027, -0.0263141, -0.0345428, -0.00845764, 0.0462167, 0.0211959, 0.0531272, 0.0379018, + 0.0424938, 0.0160658, -0.00649713, 0.021857, 0.0325163, -0.0139418, 0.00759465, 0.0524858, + -0.0168994, 0.0164893, 0.022728, 0.0323317, 0.0331378, 0.00548303, -0.0425947, -0.0101325, + -0.0124091, -0.00910286, -0.00862779, -0.049988, 0.0218122, -0.0166035, 0.0570387, -0.0150303, + -0.0109328, 0.0141641, 0.0296191, 0.00220599, 0.00667076, 0.00647957, 0.00102784, -0.02686, + -0.0170128, 0.019061, 0.00824237, 0.0392189, 0.00182692, 0.03255, 0.0341041, 0.0186872, + 0.000108326, -0.00739809, -0.0118376, 0.00302759, 0.00874007, 0.0298719, 0.0378712, 0.0260831, + 0.0143321, 0.0357566, -0.0302584, -0.0210763, -0.00892332, -0.0329427, -0.0798826, -0.0461567 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p26(hatfit_yaw00_lev2_p26); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p26_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p27.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p27.mh new file mode 100755 index 0000000..5225077 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p27.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p27.mh: + +#ifndef stasm_hat_yaw00_lev2_p27_mh +#define stasm_hat_yaw00_lev2_p27_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p27(const double* const d) // d has 160 elements +{ + const double intercept = -0.306931; + const double coef[160] = + { + 0.0262349, -0.0455742, -0.0345448, 0.0296043, -0.0368644, 0.105961, 0.0917271, -0.0349775, + -0.0118083, 0.00226836, 0.0315588, 0.0651592, 0.0192105, 4.45677e-05, 0.0111032, -0.0301818, + -0.0235868, -0.026485, -0.00434409, 0.0180196, 0.0351823, 0.0192955, 0.0241057, -0.0337034, + 0.00146458, -0.019946, -0.00849322, -0.0249317, 0.00794208, 0.00548202, 0.0600154, 0.0171288, + 0.00478391, 0.0128435, 0.0206005, -0.0152299, -0.00785918, -0.000263394, 0.0517713, 0.0416178, + -0.0400955, -0.0371783, 0.0589854, 0.0327506, -0.0189932, -0.0248052, -0.0847246, -0.0425839, + -0.0294927, 0.00193715, 0.0270183, -0.0242868, -0.02323, -0.0221412, -0.0299839, -0.0253512, + 0.0019324, 0.032574, 0.011557, -0.0437154, -0.0286583, -0.028798, 0.0130759, -0.00196222, + 0.00783066, 0.0246079, 0.0314151, -0.0433835, -0.0152253, -0.00376657, 0.0137829, -0.0141508, + -0.0185663, -0.0270969, 0.0763604, 0.032464, -0.00457786, -0.00714493, -0.00839772, -0.0471893, + -0.0304596, 0.0113046, -0.0575614, -0.04895, -0.0555437, -0.0118463, -0.0287419, -0.0226617, + 0.0476703, 0.0541762, -0.0129649, -0.0181623, -0.00457971, 0.0050365, 0.048555, 0.0856549, + 0.00916771, 0.0128563, 0.00436323, -0.00929648, 0.00355898, -0.0264574, 0.0298014, 0.048906, + 0.00256579, -0.0139028, 0.0214163, 0.0158788, 0.0410612, -0.0213137, 0.0133411, 0.0239583, + 0.0212723, -0.014747, -0.0303819, -0.00101849, 0.0202947, -0.00473982, 0.000768866, 0.0634918, + 0.0272171, 0.0606848, -0.0083977, 0.0323225, 0.00269824, 0.0622742, -0.0492059, 0.0108266, + -0.0245984, -0.00360764, 0.0335002, 0.0621516, 0.0580589, 0.0152602, 0.062728, 0.00257798, + 0.00265603, -0.0211292, -0.00126619, 0.0229256, 0.0381987, -0.00541837, 0.02072, -0.0247069, + -0.00978707, 0.00263283, -0.00619977, -0.0417827, 0.00227379, -0.0141621, 0.0218684, -0.0106956, + -0.0028489, 0.0407164, 0.00786468, 0.00379042, 0.0117465, -0.002769, 0.00417461, 0.00823767 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p27(hatfit_yaw00_lev2_p27); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p27_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p28.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p28.mh new file mode 100755 index 0000000..6f76b98 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p28.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p28.mh: + +#ifndef stasm_hat_yaw00_lev2_p28_mh +#define stasm_hat_yaw00_lev2_p28_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p28(const double* const d) // d has 160 elements +{ + const double intercept = -0.911282; + const double coef[160] = + { + 0.0238533, 0.0397944, -0.00203305, -0.0376938, -0.0576054, 0.0102932, -0.00350282, -0.0347154, + 0.0114035, 0.0375278, 0.0576787, -0.011191, -0.00113305, -0.00862682, 0.015185, -0.00437239, + 0.0307686, 0.0196598, 0.0440094, -0.0379801, -0.0141113, -0.0120627, 0.0393276, 0.0134787, + 0.0370115, 0.000457543, 0.0603269, -0.00987555, 0.0105079, -0.00996932, 0.019966, 0.0060897, + 0.0304525, -0.0284774, 0.0406466, 0.0226233, -0.00374561, -0.00344988, -0.0165723, 0.00456927, + 4.77179e-05, -0.0215519, -0.0611072, -0.0461596, -0.0359187, 0.00475347, 0.0589447, 0.0603199, + 0.015611, 0.0302667, 0.012469, -0.0101909, 0.0232281, -0.058931, 0.0315346, 0.0487677, + -0.0218948, 0.0241924, 0.0431596, 0.00191124, 0.0400794, -0.0415914, 0.00944237, 0.000643755, + -0.032809, 0.013452, 0.0403323, 0.0361078, 0.0355794, -0.0115256, -0.037264, -0.031884, + -0.042228, -0.0211665, -0.0310247, -0.0319164, 0.00456799, 0.0271444, 0.0618117, 0.0108998, + -0.0234185, 0.0129911, 0.00094152, 0.0555492, 0.0407842, 0.0751483, -0.00163825, -0.0359983, + -0.062111, -0.018929, 0.0249147, 0.00943173, 0.0418229, -0.00747328, 0.0690318, -0.0227955, + -0.0198671, -0.00218184, 0.0446939, 0.00229586, 0.053604, -0.0153666, 0.0320683, 0.0248043, + 0.00287477, 0.00778391, 0.0331717, 0.00229524, 0.00562737, 0.0154625, 0.0164591, 0.0400992, + 0.0425685, 0.000193887, 0.00597018, -0.0136202, -0.00538856, 0.0131999, 0.0261254, 0.123714, + 0.0643788, 0.0452873, 0.0716094, 0.159596, 0.0741898, 0.056755, 0.0376108, 0.0507256, + 0.0697902, -0.0516756, 0.0169421, 0.0447843, 0.0417189, 0.00326605, 0.00592841, -0.0132248, + 0.0556151, 0.0180181, -0.0209075, -0.0826685, -0.0280024, 0.025601, -0.00580471, -0.0237519, + 0.00913779, 0.0706989, 0.0126799, 0.00300497, -0.00981312, -0.0168915, -3.9095e-05, -0.0625823, + -0.00544378, 0.0403442, 0.0135646, 0.0797236, 0.0384641, 0.0289419, 0.0494675, -0.00505185 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p28(hatfit_yaw00_lev2_p28); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p28_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p29.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p29.mh new file mode 100755 index 0000000..2fe1275 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p29.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p29.mh: + +#ifndef stasm_hat_yaw00_lev2_p29_mh +#define stasm_hat_yaw00_lev2_p29_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p29(const double* const d) // d has 160 elements +{ + const double intercept = -1.05057; + const double coef[160] = + { + 0.0182463, -0.0164278, 0.0793519, 0.0203683, 0.0103424, -0.00468872, 0.00376642, 0.00789167, + 0.0365452, -0.0296432, 0.0316379, 0.0281642, 0.0264598, 0.00896892, 0.0389974, 0.00696295, + 0.0210673, -0.0165715, 0.0249197, 0.0415189, 0.0234516, 0.0039805, 0.0282824, 0.019377, + 0.0136788, 0.0078962, 0.0400487, 0.0247874, 0.0484899, -0.00169232, 0.0157129, 0.00810864, + 0.00254052, 0.004636, 0.0127591, 0.023789, 0.00420449, -0.0383569, -0.0112375, 0.0181937, + 0.0123328, -0.00178604, -0.0273803, -0.0125259, -0.00871021, 0.00392074, 0.0347972, -0.00844315, + 0.0058953, 0.0156757, 0.029977, 0.014578, 0.00275342, 0.000159312, -0.00132859, -0.0674545, + -0.0131045, -0.0125819, 0.0371212, 0.0165592, 0.0301665, 0.0350271, 0.0262243, -0.0768821, + -0.0251874, -0.00765544, 0.0265035, 0.022286, 0.0165599, 0.0398895, 0.0171191, -0.00820294, + -0.0258373, -0.0408784, -0.0487514, -0.0316219, 0.0193729, 0.05273, 0.0415007, 0.0334458, + 0.00916367, 0.00382008, 0.0153757, 0.00359487, -0.0514642, 0.0857362, 0.0547107, 0.00137235, + 0.0347672, 0.00346709, 0.00981953, 0.0124956, -0.00603081, -0.0447948, 0.0584001, -0.0200425, + 0.0510406, 0.031761, 0.0119073, -0.0177227, -0.041249, -0.0484298, 0.0517662, 0.0266991, + 0.0669104, 0.0763834, 0.0368872, 0.0240411, 0.0134583, -0.0205295, 0.0445935, 0.0713025, + 0.0204831, 0.0253047, -0.0104218, -0.0282662, -0.0465509, 0.013753, -0.0597406, 0.0126048, + 0.0241487, 0.0263117, 0.034671, 0.116738, 0.0671411, 0.00670641, 0.042299, 0.0235448, + 0.0144205, -0.0647902, 0.0507454, 0.00526156, 0.0375987, 0.00463127, -0.0314179, -0.0293136, + 0.0496903, 0.0400285, -0.0293638, -0.0647404, 0.0175175, 0.0611509, 0.0215046, 0.0172993, + -0.0101004, 0.0569459, -0.00413199, 0.0193916, 0.0152643, 0.00874664, -0.0093991, -0.0254695, + -0.00236696, 0.0810356, 0.085522, 0.09974, 0.0918543, 0.0265118, 0.081347, 0.0256086 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p29(hatfit_yaw00_lev2_p29); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p29_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p30.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p30.mh new file mode 100755 index 0000000..6244251 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p30.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p30.mh: + +#ifndef stasm_hat_yaw00_lev2_p30_mh +#define stasm_hat_yaw00_lev2_p30_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p30(const double* const d) // d has 160 elements +{ + const double intercept = -0.158421; + const double coef[160] = + { + -0.00843022, 0.013809, -0.00794464, -0.0280121, -0.0255196, -0.0195118, 0.075042, 0.0257987, + 0.02871, 0.014171, -0.0372592, -0.0380695, -0.0431202, 0.0171225, 0.022328, 0.055504, + 0.0265488, -0.0289131, -0.0281819, -0.0412153, -0.0759227, -0.0295684, 0.0107261, 0.0315409, + 0.0272802, -0.0116362, 0.0206321, 0.0109335, -0.0183937, -0.0122625, -0.0481045, 0.0309332, + 0.0608065, 0.024013, 0.0347018, -0.00428828, -0.0368289, -0.0443961, -0.136547, 0.0201979, + 0.0855011, 0.0571143, -0.0375799, 0.016459, 0.047898, 0.0619319, -0.00773834, 0.0441075, + 0.0146869, 0.0451598, 0.0725738, 0.132561, 0.101115, 0.0209962, 0.0323263, -0.0114213, + 0.0252005, 0.0741543, -0.0264473, 0.0168047, 0.00380724, 0.025259, 0.0513686, 0.0286347, + -0.0300812, 0.0154615, 0.0249453, 0.0434057, 0.0262186, 0.00797694, 0.0215338, -0.0195746, + 0.0452787, -0.00701455, -0.0229841, 0.0159123, -0.00454588, -0.0185701, -0.0208287, -0.097003, + -0.031168, 0.0169527, -0.0343204, -0.0604752, -0.0506117, -0.00868898, 0.0581987, 0.0346967, + -0.0299566, -0.0487133, 0.0231685, -0.0172943, -0.0444626, -0.0258802, -0.0260437, 0.00632427, + -0.0239597, -0.00391656, 0.0107738, -0.00493213, -0.000692711, 0.0458643, -0.0185572, 0.00836634, + -0.0305402, 0.0256927, 0.00675199, 0.0139364, 0.0439735, 0.0283794, -0.0130652, 0.00275794, + 0.0312156, 0.0296386, -0.0355726, -0.0134245, -0.020942, 0.00984381, -0.00773278, -0.023931, + -0.0300758, -0.0669045, -0.0276446, -0.00646776, -0.00236777, 0.0540602, -0.016052, -0.0336337, + -0.0154917, 0.00563903, 0.0243744, -0.00992392, 0.0268612, 0.00221559, -0.0196216, -0.0194976, + -0.0281026, 0.0153356, 0.0276602, 0.00143168, 0.0411615, -0.0150804, -0.00796113, -0.00828842, + -0.0284587, 0.0130893, 0.0282914, 0.0170294, -0.0129933, -0.0233002, 0.00116514, -0.0143735, + -0.025027, 0.0174324, -0.0541421, -0.0264543, -0.0165433, 0.00211273, 0.0148214, -0.0422046 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p30(hatfit_yaw00_lev2_p30); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p30_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p31.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p31.mh new file mode 100755 index 0000000..23c14ba --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p31.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p31.mh: + +#ifndef stasm_hat_yaw00_lev2_p31_mh +#define stasm_hat_yaw00_lev2_p31_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p31(const double* const d) // d has 160 elements +{ + const double intercept = -0.528655; + const double coef[160] = + { + -0.066406, -0.0431597, 0.0637768, 0.0370243, -0.00068307, -0.0259349, 0.0159448, -0.136056, + -0.0293552, -0.0403311, 0.0230454, 0.0283, 0.0388175, 0.046244, 0.04128, -0.00817411, + -0.0405367, -0.0406695, 0.0112241, 0.0182357, 0.0367736, 0.0285879, -0.00759859, -0.00266288, + -0.00139768, -0.0344043, 0.00392997, 0.0241541, 0.0412715, 0.0280483, 0.0292519, 0.0165686, + -0.00435702, -0.0265016, -0.0453606, -0.00250928, 0.0196911, 0.00655709, -0.0367992, 0.0509089, + 0.031559, 0.00575523, -0.0247191, -0.0486219, -0.0750928, -0.00041327, 0.0747566, 0.0146888, + 0.0646145, 0.054396, -0.0192251, -0.0412112, -0.0324459, -0.0705477, 0.0119363, 0.0347726, + 0.106872, 0.102241, 0.0271929, 0.00171756, -0.0470992, 0.00978825, 0.0508835, 0.0792254, + 0.0360194, 0.0367165, -0.0314265, -0.044109, -0.0814634, -0.0126653, 0.0191743, 0.0371767, + -0.0164398, 0.0210203, 0.0384518, 0.0141576, -0.0197071, -0.0172753, -0.101494, -0.0619908, + 0.0851666, -0.0212017, 0.0488603, 0.0448861, 0.118305, 0.0508748, -0.0450723, 0.0224068, + 0.0187996, 0.0203916, -0.0541929, -0.055438, -0.0193445, 0.0425345, -0.00569827, -0.0287024, + -0.0268724, 0.0050541, 0.0470904, 0.103708, 0.10632, 0.0373919, -0.00797826, -0.0303334, + 0.0272002, 0.0300674, 0.0210971, 0.0667653, 0.0624621, 0.0579313, 0.0607208, 0.0280428, + 0.00218957, 0.0585137, -0.00491464, 0.0042163, -0.00801497, 0.00611642, 0.00430601, -0.000424544, + -0.0332441, 0.000448628, 0.107588, -0.0215919, -0.0459838, -0.0180594, -0.00837773, 0.0129875, + -0.0322999, 0.0200498, -0.0108524, -0.0415339, 0.00357464, 0.0119421, 0.00847187, 0.0184128, + -0.0147528, -0.0172094, 0.00718621, -0.0272791, -0.0360428, 0.000881667, 0.018738, 0.0129722, + -0.033975, -0.0226858, 0.0149901, -0.00787227, 0.0079924, -0.0160559, -0.0223671, 0.0172656, + -0.0396059, 0.0749142, -0.00781715, -0.0241655, 0.0206719, 0.0288847, 0.00349044, 0.000974065 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p31(hatfit_yaw00_lev2_p31); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p31_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p32.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p32.mh new file mode 100755 index 0000000..b26c2d0 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p32.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p32.mh: + +#ifndef stasm_hat_yaw00_lev2_p32_mh +#define stasm_hat_yaw00_lev2_p32_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p32(const double* const d) // d has 160 elements +{ + const double intercept = -0.609531; + const double coef[160] = + { + 0.0172974, -0.0195856, 0.0167722, 0.00276741, -0.00863195, -0.00587176, -0.00695058, 0.00103168, + 0.0252518, -0.00719318, 0.0691906, 0.0363376, 0.0383578, 0.00307675, -0.000676522, -0.024943, + -0.0442041, -0.0318909, 0.034783, 0.0447597, 0.0655272, 0.0380396, -0.00974726, -0.0836417, + -0.0233229, -0.039634, 0.0247777, 0.0296812, 0.0518156, 0.0525699, 0.0183891, -0.0139419, + -0.020914, -0.0524356, -0.0490225, 0.00449505, 0.0358374, 0.0320777, 0.0296459, 0.0310532, + -0.0330381, -0.00897001, -0.00230202, -0.0116356, -0.0561876, 0.0508519, 0.0528285, -0.0220447, + -0.0139597, 0.00648959, -0.0200131, -0.0142853, -0.0548651, -0.0256694, 0.0602749, -0.0456561, + 0.0398712, 0.0362381, 0.0279318, -0.028746, -0.0830828, -0.0523895, 0.0622793, 0.0371123, + 0.0490164, 0.0442704, 0.00661728, -0.00335947, -0.0317967, -0.0174821, 0.0718556, 0.0818157, + 0.0211283, 0.02002, -0.0133365, -0.026983, -0.0673874, 0.0154517, -0.063193, -0.00218304, + 0.0374297, 0.0487677, 0.0544543, 0.0878194, 0.0336702, 0.0359337, 0.0358279, -0.0204046, + 0.0455341, -0.0529557, 0.00531201, 0.0209168, 0.0554839, 0.00579068, -0.0201319, -0.0282061, + 0.0528097, 0.00506556, -0.057539, -0.0366376, 0.0122283, 0.040994, -0.021031, 0.0168281, + 0.00323699, 0.0498915, -0.00517948, 0.0202621, 0.0198603, -0.00465672, -0.0212471, -0.0241135, + 0.0386897, 0.0834197, 0.0564583, 0.0766421, 0.0567623, 0.0541306, 0.038094, 0.006473, + 0.00720124, 0.00299913, 0.00695718, 0.0279686, 0.00285145, -0.0329046, -0.0212397, 0.0685372, + 0.0195813, -0.0237838, 0.0724148, 0.00519205, 0.0182673, 0.00552493, 0.00626116, 0.0171959, + -0.00884863, 0.0247297, 0.0399036, -0.0589063, 0.00735654, 0.014987, 0.00327186, -0.0123504, + -0.0107126, -0.00717319, -0.0262902, -0.0281028, 0.00582021, 0.0159987, 0.0436614, 0.0026328, + -0.0659616, 0.0210302, 0.0281372, 0.0251827, 0.0175415, -0.00426784, -0.0135234, 0.0161755 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p32(hatfit_yaw00_lev2_p32); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p32_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p33.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p33.mh new file mode 100755 index 0000000..545ff33 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p33.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p33.mh: + +#ifndef stasm_hat_yaw00_lev2_p33_mh +#define stasm_hat_yaw00_lev2_p33_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p33(const double* const d) // d has 160 elements +{ + const double intercept = -0.134494; + const double coef[160] = + { + 0.00347821, -0.012647, -0.0365701, -0.0502767, -0.0744315, 0.043386, -0.0109632, 0.0408712, + 0.0179905, 0.012047, 0.00764653, 0.0153773, -0.00873694, -0.0365147, -0.0151809, 0.00267504, + -0.0168584, -0.0186926, 0.0209671, -0.00799703, -0.00927319, -0.0278799, -0.00988936, -0.0523256, + -0.0294883, -0.00538619, 0.068079, 0.0330258, 0.0310367, -0.0115363, 0.0173, -0.0956444, + -0.057032, -0.064803, -0.0476392, -0.00186673, 0.0208305, 0.0656317, 0.076984, -0.00418163, + -0.0342102, -0.0295482, -0.0482665, -0.00800121, 0.00782046, 0.0959585, 0.00216746, -0.032154, + 0.00264983, 0.00756613, 0.0352023, -0.0055577, -0.0268146, 0.0481587, 0.0554458, 0.0308655, + 0.00604261, 0.0099717, 0.0418676, 0.0370696, -0.0259611, 0.00845801, 0.0177592, -0.053832, + 0.0574967, -0.00604871, -0.0470008, -0.03597, -0.0512817, -0.0258823, 0.0508364, 0.0315381, + 0.0494617, 0.0662095, 0.0300199, -0.00536518, -0.0187981, -0.0615925, 0.0101557, 0.0309746, + 0.00546111, 0.0467793, 0.0561231, 0.0115831, 0.044103, 0.0122641, -0.0163395, 0.0139846, + -0.00558476, -0.00304077, -0.0153255, 0.0488837, 0.0226645, 0.00507803, -0.00177007, 2.87077e-05, + 0.0540572, -0.0334947, 0.0243881, 0.0453923, 0.0752189, -0.00790317, -0.0371975, -0.022949, + 0.013664, -0.0464787, -0.0117823, -0.0402601, 0.0423795, 0.0570048, -0.0240886, -0.0248997, + 0.00782879, 0.0796069, -0.0435097, 0.00644649, 0.0344214, 0.050919, 0.00223326, -0.0633793, + -0.0164302, 0.0151376, 0.0285752, 0.0378886, -0.0433041, -0.0629131, -0.0664811, -0.01045, + 0.00204687, 0.00533082, -0.0442703, -0.0276485, -0.0263146, 0.00585577, 0.041874, 0.0404161, + 0.0136317, -0.00439693, 0.0465754, 0.0266685, -0.0134835, -0.0163303, 0.0257163, 0.0497645, + -0.0267151, -0.00359233, 0.0465391, -0.052706, -0.0343048, -0.054638, -0.0428177, -0.0114796, + -0.0324168, 0.0278659, 0.0114471, -0.0448499, -0.00375096, 0.0193088, 0.00295261, 0.0724012 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p33(hatfit_yaw00_lev2_p33); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p33_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p34.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p34.mh new file mode 100755 index 0000000..9f03ee3 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p34.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p34.mh: + +#ifndef stasm_hat_yaw00_lev2_p34_mh +#define stasm_hat_yaw00_lev2_p34_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p34(const double* const d) // d has 160 elements +{ + const double intercept = -0.0298145; + const double coef[160] = + { + -0.00712763, -0.0168461, -0.0649287, -0.0964368, -0.0396287, 0.0355124, -0.0932723, -0.0232354, + 0.0015701, 0.000841849, -0.0528588, -0.0779626, -0.0767684, 0.0536808, 0.021654, 0.0115116, + -0.0244025, 0.0129733, 0.00882587, -0.0296528, -0.0752668, 0.0202583, 0.0284596, 0.0038893, + 0.0131413, 0.0202238, 0.0632173, 0.00876749, -0.00538983, 0.00914925, 0.0317333, -0.0110394, + 0.0197249, -0.0156403, -0.0123602, -0.00436375, -0.0205289, -0.0380516, 0.0528582, -0.0722589, + 0.00167284, -0.0296978, -0.0278581, 0.0860811, 0.109771, -0.0337156, -0.0290938, -0.000718443, + -0.0306613, 0.0175718, 0.0508415, 0.0882596, 0.0906046, 0.0451894, 0.0249118, 0.0101467, + 0.0197867, 0.0163201, 0.0461364, 0.0497436, 0.0735869, 0.0261005, 0.0272832, 0.00319717, + 0.0133939, -0.033167, 0.0138665, 0.076355, 0.0436984, -0.0193582, 0.00494415, 0.00794336, + 0.0402147, -0.0356436, -0.0325444, -0.0406939, 0.0445568, 0.0529566, -0.0480436, -0.0361198, + 0.0239785, -0.022601, 0.004583, 0.0357781, -0.024916, -0.0673301, 0.0300021, 0.0233541, + 0.00131507, 0.020674, -0.0172261, -0.0378908, -0.0281607, -0.0362968, -0.0120887, 0.00251283, + -0.0151418, 0.0139788, 0.00226799, -0.0405325, -0.0372183, -0.0239591, 0.000689374, 0.00728419, + 0.0109032, 0.00117639, 0.0110613, 0.0284659, -0.00405134, 0.0224151, 0.0497437, 0.024467, + -0.0197926, 0.0191099, 0.0560234, -0.015999, 0.00349098, -0.0136769, -0.00855267, 0.0378745, + -0.0402489, 0.0187419, 0.00346364, 0.00200766, -0.051981, 0.0314351, -0.0370516, -0.031647, + 0.00269862, -0.0117079, -0.0113778, 0.0323024, 0.000887866, 0.0206333, 0.00573009, 0.0182514, + 0.0140522, -0.00215495, 0.00969224, 0.0445658, -0.0164545, 0.00403198, -0.0327273, 0.00355842, + 0.00186056, -0.0365137, 0.001591, -0.0147659, -0.0152249, -0.028393, -0.0295118, 0.00309647, + 0.0177405, -0.022215, 0.0110218, -0.0373177, -0.0264965, 0.0153762, -0.0577899, -0.0217735 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p34(hatfit_yaw00_lev2_p34); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p34_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p35.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p35.mh new file mode 100755 index 0000000..d1cc4ef --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p35.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p35.mh: + +#ifndef stasm_hat_yaw00_lev2_p35_mh +#define stasm_hat_yaw00_lev2_p35_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p35(const double* const d) // d has 160 elements +{ + const double intercept = -0.0569861; + const double coef[160] = + { + -0.0452166, -0.00120985, -0.0642733, -0.0433011, -0.0143067, 0.187839, -0.00428658, -0.00650242, + 0.0394361, 0.0211488, 0.0687109, 0.000483339, -0.0199071, 0.0220808, 0.0780823, 0.0556368, + 0.0586077, -0.0237231, 0.030264, 0.0372592, 0.0211708, -0.00451533, -0.0238338, -0.0808726, + 0.0375287, -0.0425377, -0.0537355, -0.0160995, 0.0191792, 0.0143375, 0.0323217, -0.0160405, + 0.0641634, 0.041519, -0.0194647, 0.00845982, -0.00460267, -0.00117591, 0.00773437, 0.00707627, + 0.0137806, 0.0537537, 0.116498, 0.0836869, 0.042555, -0.128439, -0.0448244, -0.0201245, + -0.0354514, -0.0320875, -0.0596862, 0.0322179, 0.0248905, 0.00867726, 0.0026904, 0.00215038, + 0.0176725, -0.0278685, 0.0647107, 0.0700868, 0.0723984, 0.013583, 0.0189065, 0.0296625, + -0.0125392, -0.0363014, 0.0524765, -0.0592515, -0.00260219, -0.00356819, -0.0465201, 0.00398317, + -0.0148738, 0.0892113, -0.00931875, -0.0290633, 0.0459755, 0.0466378, 0.0537626, 0.0155148, + 0.00157531, -0.0144777, -0.0566745, -0.0333648, -0.0635901, -0.00229455, -0.0108516, 0.0337369, + 0.0213568, 0.0212246, 0.0134308, -0.0349036, -0.0518544, 0.00736802, 0.00410732, -0.00219179, + 0.00875987, -0.00275223, 0.00445113, -0.0208322, -0.0406893, -0.0105535, 0.0171398, 0.0333355, + 0.0272341, 0.016625, -0.0150876, -0.0448088, -0.0305251, -0.00475766, 0.0282755, 0.0229124, + -0.0562676, -0.00235707, 0.00318367, -0.0375074, -0.036737, -0.0121753, -0.0456456, 0.0088149, + -0.0129207, -0.00481494, 0.0121743, 0.0636755, -0.00218512, -0.0264368, -0.0426944, -0.0331295, + -0.000268162, -0.0303325, -0.0100597, 0.0201173, -0.0187584, -0.0106597, -0.0162527, 0.00213507, + 0.000782108, -0.0446817, 0.0291512, -0.00622929, -0.032462, -0.00722358, -0.015956, -0.017508, + -0.00442869, -0.0616177, 0.00842057, -0.0221374, 0.00273545, 0.0370507, -0.0110599, -0.00349913, + -0.0150104, -0.00249232, 0.0607886, 0.00642015, 0.0137252, -0.00537359, -0.0407976, -0.0264226 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p35(hatfit_yaw00_lev2_p35); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p35_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p36.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p36.mh new file mode 100755 index 0000000..cfe7474 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p36.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p36.mh: + +#ifndef stasm_hat_yaw00_lev2_p36_mh +#define stasm_hat_yaw00_lev2_p36_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p36(const double* const d) // d has 160 elements +{ + const double intercept = -0.15802; + const double coef[160] = + { + 0.0486285, 0.0186809, 0.0610722, 0.0591576, 0.0388397, 0.0574882, 0.0641434, 0.0121667, + 0.0637028, -0.0778575, 0.0320216, 0.00871883, 0.0568133, -0.0225462, -0.015418, -0.0783217, + 0.0842919, -0.0221539, -0.0830029, -0.0634517, -0.0171046, 0.0330657, -0.00201285, 0.0145844, + 0.0509864, 0.0483077, -0.019694, -0.00253477, 0.00980955, -0.0071178, -0.00909895, 0.0133682, + 0.0367686, 0.0816382, 0.0405787, 0.0708277, 0.0300118, 0.0263414, 0.0264027, 0.0197782, + 0.0128342, 0.013998, 0.0557143, 0.0705258, 0.0274475, -0.0401644, -0.0111443, 0.0419802, + -0.0182621, -0.0129423, 0.0528886, 0.0155429, 0.0246531, -0.000775137, 0.00772486, 0.0353004, + -0.0283473, 0.0586058, 0.0423699, -0.0620206, 0.0120028, 0.0105429, 0.0076168, 0.00933035, + -0.0370865, 0.0248185, -0.0452911, -0.0178737, -0.00556646, 0.0268091, 0.0552079, 0.0282525, + -0.0621828, 0.0145903, 0.0643291, 0.0572874, 0.0105461, -0.0216231, -0.0403918, -0.0157246, + 0.0215985, -0.0416195, -0.0175289, -0.0418673, -0.0733202, 0.019949, -0.00658043, 0.0100759, + 0.0164112, -0.00890375, 0.00470579, -0.0475732, -0.0369, 0.00252177, 0.0184815, -0.00362862, + 0.0292086, -0.0130186, -0.0116424, -0.0283327, -0.0278432, 0.0182052, 0.0289034, 0.0470675, + -0.00995198, -0.0356322, -0.000162729, -0.0194088, -0.00831224, -0.00612526, -0.0350988, -0.0230069, + -0.0117491, -0.000818398, 0.015496, -0.0512162, -0.0297679, -0.00224479, -0.0714257, -0.0113509, + -0.043043, -0.0334773, 0.0407909, 0.0321586, -0.00719895, -0.0271855, -0.0296371, -0.0375253, + -0.000821446, -0.0586061, 0.0237793, -0.0243459, -0.00034366, 0.00762769, -0.00338772, 0.0103057, + -0.0559739, -0.0361567, 0.0295625, -0.0245679, 0.0341336, 0.0163618, -0.0120698, -0.034086, + -0.00365451, 0.00950689, 0.021756, -0.000354534, 0.0156633, 0.0315098, -0.00492233, 0.0151073, + -0.0510463, 0.0232019, 0.0325111, 0.0112793, 0.0388108, -0.0584284, -0.00696607, 0.000317936 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p36(hatfit_yaw00_lev2_p36); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p36_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p37.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p37.mh new file mode 100755 index 0000000..0998e72 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p37.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p37.mh: + +#ifndef stasm_hat_yaw00_lev2_p37_mh +#define stasm_hat_yaw00_lev2_p37_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p37(const double* const d) // d has 160 elements +{ + const double intercept = -0.357641; + const double coef[160] = + { + 0.090426, -0.0479457, -0.0400332, -0.0212107, 0.0130497, 0.0347203, 0.0603362, -0.00201685, + 0.0617162, 0.0154297, -0.0587526, -0.0498464, -0.0406109, -0.0444513, -0.0101726, 0.00113316, + 0.0643447, 0.0712631, 0.0518715, 0.0514074, 0.0424869, 0.0176295, -0.000344309, 0.0428262, + 0.0942759, 0.0405735, -0.0464468, -0.0186385, -0.0142453, -0.00193271, 0.0862762, 0.081217, + -0.016825, 0.0197965, 0.0147129, 0.0161728, -0.0757111, -0.0559225, -0.115652, -0.0622848, + -0.00501507, 0.0123832, 0.15875, 0.0352441, 0.0686156, -0.00259391, -0.00970851, 0.0319497, + 0.0172795, 0.0454753, -0.0590746, -0.0806317, 0.00137259, 0.049291, 0.0217576, 0.0280549, + -0.0351055, 0.0234457, 0.0331394, 0.0432127, 0.0247829, 0.0144538, 0.0285027, 0.00046848, + -0.0448116, 0.0182161, 0.0592176, 0.0918027, 0.0649448, 0.0105857, -0.0196588, 0.00406895, + 0.0034925, 0.0990291, -0.0319524, -0.00638724, 0.00562423, 0.0447108, 0.0227806, 0.014012, + -0.0143819, -0.0158124, -0.0378926, -0.0673686, -0.0649373, 0.00224931, 0.0333127, 0.0316347, + -0.0234361, 0.00150827, -0.0153644, -0.0250532, -0.00597671, -0.0067867, 0.018995, 0.0223197, + -0.0146966, -0.0435748, -0.00637642, -0.0419609, -0.0532878, -0.0176804, -0.0263347, -0.0276614, + 0.0162287, -0.00532958, -0.015642, -0.0538278, -0.025124, -0.0130719, -0.0193754, 0.0287796, + -0.0413712, 0.0480701, 0.0441385, 0.00548393, 0.00292707, 0.0269691, -0.0504128, -0.00968982, + -0.0149377, -0.0761418, 0.0646164, -0.013872, 0.0254016, 0.0211067, -0.0213354, -0.0101183, + -0.00769239, -0.018979, 0.0195936, 0.00275689, 0.0226773, 0.0528095, 0.00701476, -0.000215039, + -0.0385599, 0.0166449, 0.0279211, 0.0131107, 0.0463374, 0.0352633, -0.0267223, -0.00659304, + -0.0239268, 0.00596462, 0.064236, 0.0534211, 0.0618139, -0.00417547, 0.0169228, 0.00955138, + -0.0356719, -0.0140551, -0.0375888, -0.00973585, -0.00167822, -0.0297079, -0.0161585, -0.0314359 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p37(hatfit_yaw00_lev2_p37); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p37_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p38.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p38.mh new file mode 100755 index 0000000..d13a2f3 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p38.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p38.mh: + +#ifndef stasm_hat_yaw00_lev2_p38_mh +#define stasm_hat_yaw00_lev2_p38_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p38(const double* const d) // d has 160 elements +{ + const double intercept = -0.376783; + const double coef[160] = + { + -0.0381625, -0.0216802, -0.0155914, -0.0404376, -0.0631582, 0.0381639, 0.0377976, -0.0516102, + -0.028152, -0.0202302, 0.0302485, 0.00262319, -0.0207045, -0.0417396, 0.0787168, -0.0787154, + -0.0329266, -0.0189142, 0.000370531, -0.00575274, -0.0277813, -0.0345295, 0.0621677, -0.0119504, + 0.0166243, 0.0148557, 0.0187655, 0.0119691, 0.0209956, 0.000136722, 0.0679876, 0.0596953, + -0.0173308, -0.0304385, -0.0195675, -0.00678459, -0.058364, 0.00845924, -0.0914828, -0.0269946, + 0.0442164, 0.0218957, 0.0834356, 0.0923645, 0.0542928, 0.0437193, 0.00909546, 0.00658516, + 0.0595327, -0.0285361, -0.0120236, 0.0127215, 0.0471597, 0.00693775, -0.0502759, -0.00219912, + 0.0692, 0.0115397, -0.0597431, -0.0345065, 0.00897436, 0.0644876, -0.00529858, 0.0172422, + 0.0592641, 0.0368146, -0.0170227, 0.000427752, -0.0220798, -0.002191, -0.0154746, -0.0168699, + 0.0352867, 0.111853, 0.0565004, 0.0728899, 0.0717551, 0.033416, 0.048564, 0.00220777, + 0.031206, 0.0294133, -0.00374811, 0.0601965, 0.0488322, -0.0252048, 0.0418437, 0.0539204, + -0.00425075, -0.0373638, 0.0889858, -0.00515388, -0.00512685, -0.0250974, -0.00357214, 0.00699725, + -0.038465, 0.0384146, 0.0125729, -0.0497535, 0.0188856, 0.00873619, 0.0314734, 0.0134863, + -0.0273422, 0.032113, -0.0321483, 0.0119197, 0.0338809, 0.0323335, 0.0534044, 0.0411907, + -0.0332367, 0.0126317, 0.0531453, 0.0720893, 0.00242768, 0.00830297, -0.00492567, 0.0257998, + 0.0186504, -0.0333308, 0.0421134, 0.00815198, -0.0375097, 0.0125134, -0.0599385, 0.000119946, + 0.00751917, -0.019638, 0.00632028, -0.0359062, -0.0111683, 0.00175841, -0.00667292, 0.00282321, + -0.0037453, -0.0103999, 0.00707973, -0.0368289, -0.00472334, 0.00666663, -0.017547, 0.000420025, + -0.0198019, -0.038683, 0.00103139, -0.0286226, -0.00983428, 0.00971842, -0.0108167, -0.0309264, + -0.019254, 0.00464451, 0.0170737, -0.0466007, -0.0101921, -0.019542, -0.0446412, -0.0198669 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p38(hatfit_yaw00_lev2_p38); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p38_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p39.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p39.mh new file mode 100755 index 0000000..87acb56 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p39.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p39.mh: + +#ifndef stasm_hat_yaw00_lev2_p39_mh +#define stasm_hat_yaw00_lev2_p39_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p39(const double* const d) // d has 160 elements +{ + const double intercept = -0.175478; + const double coef[160] = + { + -0.0340044, 0.0102974, -0.0326885, -0.027898, -0.0574698, 0.0218861, -0.0295587, -0.0136835, + -0.0670967, -0.00859483, 0.01472, -0.0127685, -0.00715043, -0.0560974, 0.095579, -0.0138027, + -0.0477498, -0.0188489, 0.0206146, -0.0341245, -0.0114705, -0.0814169, 0.067814, 0.0128964, + -0.0372988, -0.00688147, 0.0535055, 0.0309127, 0.0136957, -0.00924958, -0.0222743, 0.000739304, + 0.00947217, -0.0633822, -0.0394817, -0.0256672, -0.0301259, 0.0126494, 0.033581, 0.0792859, + 0.0625707, 0.0213443, 0.0645021, 0.132729, 0.103496, 0.0360967, 0.0149085, 0.0283455, + 0.0447562, -0.0191749, -0.0247524, 0.0118958, 0.0418581, 0.0228802, -0.0348868, -0.00160803, + 0.0499076, 0.000436949, -0.0455082, -0.0523261, 0.0281439, 0.0563502, -0.0373772, 0.01161, + 0.0649382, 0.0375478, -0.000152216, -0.0242474, -0.0302719, -0.024227, -0.0163539, -0.0237781, + 0.0413481, 0.0639565, 0.0449211, 0.0730719, 0.0627154, 0.0195653, 0.0534155, 0.0242415, + -0.000842906, 0.0446278, 0.00706155, 0.107019, 0.0513803, 0.0188349, 0.0145981, 0.0541501, + 0.0323207, -0.0788871, 0.0691921, 0.0198263, 0.00516369, -0.00499741, 0.0431621, 0.0124451, + -0.0272489, 0.0178388, 0.0144972, -0.0310218, -0.0193413, -0.0027794, 0.0101328, -0.0183224, + -0.0375776, 0.0308271, -0.000599625, 0.00775446, 0.0111844, 0.00535355, 0.0351003, -0.00201906, + -0.0403671, -0.0297313, 0.000650426, 0.0552283, 0.00158567, 0.0127998, 0.0129658, -0.0540405, + 0.0126699, -0.0194195, -0.00137171, -0.0249486, -0.0977167, -0.0190306, -0.0617337, -0.0140263, + -0.0100231, -0.0157547, 0.014888, -0.0241838, -0.0298007, -0.00558167, -0.0200118, -0.00189711, + -0.00822873, -0.0244598, 0.0163851, -0.0267565, -0.00843671, 0.0101747, -0.0156994, 0.0148806, + 0.00397398, -0.0200779, -0.00718148, -0.0189266, 0.0237742, 0.0249438, -0.0174873, 0.00724446, + -0.0138303, 0.0292336, 0.0226407, -0.0766599, -0.0446403, -0.0119488, -0.0658979, 0.00344958 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p39(hatfit_yaw00_lev2_p39); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p39_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p40.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p40.mh new file mode 100755 index 0000000..51341b2 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p40.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p40.mh: + +#ifndef stasm_hat_yaw00_lev2_p40_mh +#define stasm_hat_yaw00_lev2_p40_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p40(const double* const d) // d has 160 elements +{ + const double intercept = -0.578154; + const double coef[160] = + { + -0.0230053, -0.0210838, 0.00833996, -0.00132794, -0.0195168, -0.0318791, -0.127763, -0.0155701, + -0.034902, -0.0315064, -0.0238103, -0.0304517, -0.0559896, 0.0267209, -0.0384578, -0.0265872, + -0.0585699, -0.0104624, -0.0336322, -0.0122956, 0.0132704, 0.0493953, -0.0308533, -0.00357042, + -0.0150394, 0.0170744, 0.0514288, 0.0387841, 0.0129995, 0.0622468, 0.0250487, -0.0148398, + -0.0116489, -0.0478068, -0.0371379, -0.0249553, -0.0180283, -0.0432322, 0.132777, 0.0320973, + 0.0230915, 0.016988, 0.00972359, 0.010769, 0.0282244, -0.0455557, -0.0193062, -0.0163898, + -0.0221048, 0.0368945, 0.0199199, 0.0685538, 0.117503, 0.0400076, 0.0400602, 0.0219632, + 0.0804955, 0.113797, 0.0771816, 0.0595862, 0.0464587, 0.044355, 0.033685, 0.04135, + 0.0573583, 0.000241402, 0.00757319, 0.061972, 0.0494706, -0.00927967, 0.0377478, 0.0453895, + 0.0660352, -0.00707717, -0.00409466, -0.00659626, 0.0710256, 0.0611401, -0.0468957, -0.0240416, + 0.0347565, 0.0332099, 0.0189545, 0.0699647, 0.0311581, 0.00807129, -0.00869748, 0.0150902, + -0.00120095, 0.00668937, 0.0326635, -0.0161191, -0.0129208, 0.0251813, 0.0124696, 0.0217988, + -0.0263708, -0.010514, -0.00390802, -0.0325808, -0.0571086, -0.0154732, 0.0102109, 0.0214122, + -0.0357933, -0.0272357, -0.00538061, 0.0474521, 0.0227356, 0.0232602, 0.0168437, 0.00073643, + 0.0113116, -0.0475376, 0.0560595, 0.031259, 0.0121835, 0.0106892, 0.0648001, 0.0432554, + -0.024124, -0.000816847, -0.0314966, 0.0103787, -0.0787828, -0.0520581, -0.00567509, -0.0185509, + 0.0535842, 0.0555946, 0.0181, 0.0220096, -0.0165579, 0.00212479, 0.0108745, 0.0136421, + 0.00809864, 0.0153479, 0.0293642, 0.0041109, -0.00828299, -0.0165547, -0.00871561, 0.00771352, + 0.0348994, 0.00533858, 0.0126395, -0.00496751, -0.0284364, -0.00480445, -0.0365954, 0.0008347, + -0.0041323, -0.0130019, 0.00889659, -0.0643651, -0.0419563, -0.002939, -0.0148031, 0.000960831 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p40(hatfit_yaw00_lev2_p40); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p40_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p41.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p41.mh new file mode 100755 index 0000000..9156cea --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p41.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p41.mh: + +#ifndef stasm_hat_yaw00_lev2_p41_mh +#define stasm_hat_yaw00_lev2_p41_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p41(const double* const d) // d has 160 elements +{ + const double intercept = -0.504123; + const double coef[160] = + { + 0.0296403, 0.0184192, -0.0822754, -0.0845612, -0.108267, 0.0246414, -0.0393737, 0.000256301, + 0.0228941, 0.041033, 0.0219511, -0.0137096, -0.0388542, -0.0138863, -0.00818661, 0.0105972, + 0.0145915, 0.0357209, -0.00152212, -0.0583622, -0.0404801, -0.0635977, 0.029528, 0.0399791, + -0.0220115, 0.0247502, 0.0609008, -0.00388183, -0.00349649, -0.0646161, 0.00873463, -0.03864, + -0.0574588, 0.0144267, 0.0276363, -0.00116585, -0.00827149, -0.0148357, 0.0379215, 0.0178955, + -0.0908591, -0.0282526, -0.0384145, 0.0148034, 0.0555861, 0.0348459, -0.0682362, -0.0137359, + -0.0161934, -0.000992711, 0.0417267, 0.0533682, 0.0606705, 0.0785771, 0.0177393, 0.0258979, + -0.0378051, -0.0430567, 0.0340479, 0.0873226, 0.0767643, 0.0501276, 0.0462917, -0.0225498, + -0.0253765, -0.0254106, -0.0434375, -0.0268121, 0.00946014, -0.0095343, 0.0410103, 0.0386735, + 0.0417865, -0.0111444, 0.038282, 0.0109508, 0.0165757, -0.0350916, 0.0181481, 0.0559019, + 0.0110023, 0.0756945, 0.0451606, 0.0317503, 0.0342808, 0.0563747, 0.00184054, 0.010916, + 0.0490982, 0.0742725, 0.0272439, 0.0667738, 0.0190779, -0.00363077, 0.0399377, 0.0587057, + 0.08214, -0.00631514, 0.015092, 0.0469049, 0.0700421, -0.000771437, -0.0188088, 0.00943442, + 0.0630941, -0.0083379, 0.000113802, -0.042742, 0.011614, 0.060704, -0.0111803, -0.0069888, + -0.0106874, 0.0722705, -0.0291486, 0.00721724, 0.00275513, 0.0355739, -0.0104596, -0.122197, + 0.0204395, 0.0355279, 0.0431984, 0.00359042, -0.0360651, -0.0240803, 0.00372068, 0.00855862, + -0.0373134, -0.035564, -0.0466182, -0.034249, -0.0504504, -0.0126724, -0.0210202, -0.0237463, + 0.0132138, -0.0377139, 0.0280111, 0.0393601, -0.0212865, 0.0149723, 0.0411332, 0.028714, + -0.0196819, -0.0324787, 0.0620909, -0.0094347, -0.0184877, -0.0330845, -0.013543, 0.00747859, + 0.0163584, 0.0246972, 0.0322218, -0.0315325, -0.00362678, 0.0186201, -0.00667478, 0.0466913 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p41(hatfit_yaw00_lev2_p41); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p41_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p42.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p42.mh new file mode 100755 index 0000000..35e06c0 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p42.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p42.mh: + +#ifndef stasm_hat_yaw00_lev2_p42_mh +#define stasm_hat_yaw00_lev2_p42_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p42(const double* const d) // d has 160 elements +{ + const double intercept = -0.487045; + const double coef[160] = + { + 0.0625564, 0.0377063, -0.0936294, -0.112431, -0.11527, -0.0167091, 0.0406052, 0.0738598, + 0.031717, 0.0592982, 0.0601575, -0.0166848, -0.00291908, -0.0829607, -0.00857274, 0.0205755, + 0.00948705, 0.0357341, 0.0519815, -0.0105257, -0.0086745, -0.0348401, -0.0191874, -0.00563161, + -0.00584097, 0.00939445, 0.0496421, 0.00617174, 0.0109272, -0.00699703, -0.019802, -0.036845, + 0.00622295, -0.0363641, -0.00320816, -0.00398417, -0.00117188, 0.0340202, 0.0232643, 0.0210433, + -0.076952, -0.0577683, 0.00690922, 0.0417571, 0.050944, 0.0913182, 0.0142636, -0.0422739, + -0.0723603, -0.0353338, 0.0062463, 0.027837, 0.0227093, -0.0154173, 0.0851114, 0.00579794, + -0.0556967, -0.016606, 0.00632741, -0.00221272, 0.0259411, -0.0336812, 0.0517649, 0.0257381, + -0.0381896, -0.000830177, 0.0243649, 0.0013848, 0.0115003, -0.0168612, 0.00369493, 0.0256691, + 0.0106233, -0.00775145, -0.00300705, -0.0247126, -0.0192061, 0.0160463, 0.0219635, 0.0912614, + 0.054399, 0.0505047, 0.0788935, 0.124535, 0.0689719, 0.0184976, 0.00473304, 0.0295179, + 0.05098, -0.0160143, -0.0138044, -0.00226117, 0.0481735, 0.0127097, -0.0128908, -0.000225028, + 0.0365491, 0.00311747, -0.0318899, -0.0402103, 0.00986184, 0.0267959, -0.0597112, 0.00930144, + 0.0337973, 0.0299957, 0.0120455, -0.00462641, -0.0216377, -0.0225958, 0.00223717, -0.0270024, + 0.0628005, 0.0489483, 0.0415761, 0.0761125, 0.0714916, 0.0226824, 0.0721983, 0.0584937, + 0.0218871, -0.00527917, -0.021159, 0.0474577, -0.0094378, 0.0238818, 0.00390066, 0.0178393, + 0.0356874, -0.0529759, 0.0605261, 0.0161625, 0.00235941, 0.00300719, 0.0191452, 0.0183478, + 0.00476389, 0.0355849, 0.0325118, -0.0273234, -0.0178925, 0.00676039, 0.00677796, -0.0404392, + -0.0159076, 0.00463432, -0.0117526, -0.00362902, 0.00451682, 0.0295932, 0.0400523, -0.00565271, + -0.0698196, 0.00656611, -0.00782271, 0.000942894, -0.0420094, -0.00445787, -0.0551658, -0.0701101 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p42(hatfit_yaw00_lev2_p42); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p42_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p43.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p43.mh new file mode 100755 index 0000000..3867d83 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p43.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p43.mh: + +#ifndef stasm_hat_yaw00_lev2_p43_mh +#define stasm_hat_yaw00_lev2_p43_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p43(const double* const d) // d has 160 elements +{ + const double intercept = 0.00648366; + const double coef[160] = + { + -0.0152163, -0.00938193, -0.0190419, -0.0687831, -0.0468449, -0.0880119, 0.0812563, -0.00542163, + -0.0303208, 0.00806224, 0.0623734, 0.0413201, -0.00380485, -0.0133008, -0.00241608, -0.0323745, + -0.0738325, -0.0242139, 0.0190181, 0.0157716, 0.0080979, 0.00166531, -0.0480585, -0.0434921, + -0.0302065, -0.0234743, -0.0184186, 0.0244355, 0.0155824, 0.0468844, 0.0080336, 0.00117218, + -0.0331888, -0.0584217, -0.0338365, -0.026523, -0.0119799, 0.0596711, 0.0115523, -0.0122433, + -0.0458657, -0.0397486, 0.00973897, 0.0146185, 0.069101, -0.0167322, 0.0669437, 0.0339211, + 0.00604615, 0.00201924, -0.0142197, -0.0430294, -0.00720905, -0.0326489, -0.0359383, 0.0285836, + 0.0545388, 0.0379828, 0.0598856, 0.0112929, -0.0060677, -0.00368719, 0.0259153, 0.0502069, + 0.0226217, 0.0012846, 0.0148117, -0.0016945, -0.000385082, 0.00444569, 0.0713966, 0.090965, + 0.0507963, -0.00174389, -0.0463333, 0.00418675, 0.0053341, -0.0537939, -0.0550999, 0.0945129, + 0.113893, -0.0139617, 0.0316123, 0.0529792, 0.0495666, 0.0340494, -0.039953, 0.0260375, + 0.00641793, 0.0377733, -0.0625308, -0.0868844, -0.048856, 0.0186374, -0.0411507, -0.0667005, + 0.0029778, 0.0232979, 0.0265188, 0.0512988, 0.0191031, 0.00196293, -0.0345508, -0.0318195, + 0.00777352, 0.0336489, 0.0340635, 0.0523148, 0.03348, 0.0224716, 0.0471509, -0.0111932, + 0.0163388, 0.0360007, -0.0550825, -0.0319889, 0.00674877, 0.0246315, 0.0166669, -0.00832142, + -0.0104868, -0.0427722, 0.0921329, 0.0220887, -0.0355666, -0.0185576, -0.00916089, -0.0092353, + -0.0317364, 0.0305874, 0.00675156, -0.0249873, 0.01326, 0.0109879, -0.016378, 0.00128751, + -0.0210845, -0.0114771, -0.00718837, -0.00888316, -0.0110957, 0.0127997, 0.0179059, 0.0174434, + -0.0127198, -0.0120589, -0.0196548, -0.0179925, -0.071387, 0.00189062, -0.0285034, 0.0140863, + -0.0971454, 0.0467506, -0.00717021, -0.0347361, -0.0281356, -0.0441394, -0.0500878, -0.0092695 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p43(hatfit_yaw00_lev2_p43); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p43_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p44.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p44.mh new file mode 100755 index 0000000..0c890e2 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p44.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p44.mh: + +#ifndef stasm_hat_yaw00_lev2_p44_mh +#define stasm_hat_yaw00_lev2_p44_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p44(const double* const d) // d has 160 elements +{ + const double intercept = 0.133498; + const double coef[160] = + { + -0.0434608, -0.0375412, 0.0454066, -0.00232263, 0.00944101, -0.0499478, 0.0126621, -0.0423901, + -0.00525387, -0.0133133, 0.0215207, 0.0288921, 0.0142323, 0.049969, 0.0481931, 0.0500351, + -0.00359542, -0.0930273, 0.00287021, 0.00598216, 0.0164819, 0.0124433, 0.00604495, 0.0709833, + 0.0020777, -0.0585229, -0.0286585, 0.0102381, 0.0246242, -0.00483163, 0.0220621, 0.0599245, + -0.0185056, -0.0421779, -0.0461277, -0.0347843, -0.0399771, 0.0179453, -0.0988327, -0.0343631, + 0.062811, 0.0709959, -0.0625171, -0.0890556, -0.038321, 0.00148258, -0.0706364, 0.0280211, + 0.013062, 0.0328506, 0.0540438, 0.0737895, 0.0182533, 0.00714815, 0.00747047, -0.0631775, + 0.0937722, 0.11209, 0.00853257, -0.0115347, -0.0403247, 0.0116919, 0.0922686, 0.100438, + 0.0496898, 0.0776282, -0.00799543, 0.0177156, -0.0209815, -0.0426646, 0.012797, 0.00244885, + 0.00795191, 0.0361026, -0.00259492, -0.0143084, -0.0014389, -0.0315686, -0.0858858, -0.0289207, + -0.0384161, 0.0405562, 0.0318509, -0.00677956, 0.0019075, 0.0227394, 0.0385147, 0.0332749, + -0.0443305, -0.0409049, 0.0268993, 0.0395555, -0.00697073, -0.0169692, -0.0110896, 0.0226296, + -0.099113, -0.0380493, -0.0555956, -0.0272147, 0.00162701, 0.0157433, -0.00016503, -0.0427643, + -0.0706651, -0.0126277, -0.00925659, -0.0135335, 0.00727166, -0.00311888, -0.0019915, -0.0481127, + -0.0174759, 0.00736274, 0.0108935, -0.0304465, -0.00479456, 0.0137333, -0.0236878, -0.026351, + -0.0180594, -0.0492838, 0.00470431, -0.0337215, 0.0155772, 0.00649963, -0.0740774, -0.0380523, + 0.0186271, 0.0388299, -0.00633185, -0.0332862, -0.0272252, 0.00657739, -0.0168025, -0.024778, + -0.0133223, -0.000528839, 0.00341718, -0.00758616, -0.0135721, 0.0138585, -0.0262324, 0.0120914, + 0.00661195, -0.00240091, 0.0207088, 0.0293574, -0.0124487, 0.00932525, -0.0122027, 0.0285461, + 0.0236277, 0.000629146, 0.00127135, 0.0423906, -0.00154121, -0.014517, -0.00175293, 0.0134204 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p44(hatfit_yaw00_lev2_p44); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p44_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p45.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p45.mh new file mode 100755 index 0000000..d7d8b17 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p45.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p45.mh: + +#ifndef stasm_hat_yaw00_lev2_p45_mh +#define stasm_hat_yaw00_lev2_p45_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p45(const double* const d) // d has 160 elements +{ + const double intercept = 0.167203; + const double coef[160] = + { + 0.0727442, -0.0166493, -0.0626483, -0.00407148, 0.0385231, 0.0138944, 0.0220685, 0.0317868, + 0.0202424, -0.00508257, -0.02991, -0.0642126, -0.0457136, -0.0205781, -0.0460721, -0.0144347, + 0.0185551, 0.021069, 0.0572957, 0.0567964, 0.0393136, 0.00655403, 0.00297779, -0.0212999, + 0.0588155, -0.0125789, 0.0302992, 0.0420561, 0.0321475, 0.0444928, 0.113518, 0.115613, + 0.0840319, 9.00529e-05, -0.0672098, -0.0382904, 0.00831286, -0.0415421, -0.0300061, 0.112934, + 0.0500438, -0.0398309, 0.121826, 0.0632192, 0.0417922, 0.0189858, 0.00649431, 0.00459315, + -0.0273207, 0.0733033, -0.023846, -0.0719232, -0.0331931, 0.00526774, -0.0276115, -0.0230609, + -0.0322007, 0.0294648, 0.024586, 0.0277014, -0.0083174, 0.00650928, 0.000355891, -0.0111656, + -0.0321933, 0.0129832, -0.00113023, 0.0126422, -0.028525, -0.0111074, 0.00155808, -0.0336636, + -0.0639764, 0.0777543, -0.0134676, -0.0233251, -0.0131801, -0.0252243, 0.00837433, -0.0979294, + -0.0316445, -0.0533707, 0.0260078, 0.0344793, -0.0253976, -0.0140301, 0.00174039, 0.00276017, + 0.00545666, -0.0200741, -0.0239352, -0.0327871, 0.0297689, 0.00861198, 0.040564, 0.052606, + 0.0074788, -0.0479343, 0.0154175, -0.0141605, -0.00841478, -0.00624186, -0.0179837, 0.00613419, + -0.0151695, -0.00554206, -0.0266159, -0.00971198, -0.0140612, 0.00957265, -0.00149456, 0.0407301, + -0.0514291, -0.00426822, -0.0378928, -0.025287, -0.000235668, -0.00516234, -0.043896, 0.0421735, + -0.0130924, -0.0251465, 0.0425118, -0.0765011, -0.041684, -0.0207319, -0.06635, -0.0265088, + -0.033695, -0.0298012, 0.00865036, -0.0296191, 0.00521558, 0.0239798, 0.00332807, -0.0132821, + -0.0237629, 0.0281534, -0.00584087, -0.0281866, -0.00921105, 0.00566867, -0.0154368, -0.0327216, + -0.0208287, 0.00086343, 0.0179541, -0.0235674, -0.0233201, -0.00703314, -0.022644, -0.0103356, + -0.0110677, -0.0168262, 0.00978007, 0.0523263, -0.0194004, -0.00861894, -0.0303185, -0.0325916 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p45(hatfit_yaw00_lev2_p45); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p45_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p46.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p46.mh new file mode 100755 index 0000000..4ba2f6c --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p46.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p46.mh: + +#ifndef stasm_hat_yaw00_lev2_p46_mh +#define stasm_hat_yaw00_lev2_p46_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p46(const double* const d) // d has 160 elements +{ + const double intercept = 0.134623; + const double coef[160] = + { + 0.0531168, 0.0334694, 0.043996, 0.12206, 0.0730851, 0.0708911, -0.00521965, 0.0159515, + 0.0281719, -0.0421384, -0.0138892, -0.0198386, 0.0505329, -0.0104663, 0.00154503, -0.0128061, + 0.058639, -0.00837575, -0.0821761, -0.0997137, -0.0181503, 0.0377087, -0.0401936, 0.00375633, + 0.00143321, 0.0237199, 0.00718317, -0.00464007, -0.0229915, -0.0257773, -0.0106924, -0.0683993, + 0.0987416, 0.0460078, 0.0523512, 0.0644147, 0.0502609, 0.0165771, 0.0867663, 0.123899, + 0.00447481, 0.0121519, 0.00354363, 0.0803775, 0.00817232, -0.0145719, 0.00701082, 0.0432215, + 0.0279507, -0.0634129, 0.0607196, 0.0344952, 0.0197178, 0.00448424, 0.00693527, 0.00980093, + -0.0263267, 0.0359766, 0.0495958, 0.00492949, -0.00529447, 0.00687388, 0.0106333, -0.00370484, + -0.0402679, 0.0157835, -0.00736962, -0.00841176, 0.00542731, 0.0202024, 0.010359, 0.0114009, + -0.114368, -0.00373064, 0.0193916, 0.0368617, -0.0185698, -0.00661785, -0.0196855, -0.0660228, + -0.0155701, -0.0423849, 0.0227829, -0.00564839, -0.0628149, -0.0119208, -0.0545034, -0.0238897, + -0.0304989, -0.0239419, 0.018287, 0.0139659, 0.0074725, 0.00120524, -0.0106813, -0.0109142, + -0.0190309, -0.0788974, -0.0350183, -0.040745, -0.00553431, 0.0194616, 0.0108564, 0.0408648, + 0.0127743, -0.0466269, -0.0114537, -0.0223878, 0.0214901, 0.0118409, 0.0131341, 0.0240932, + 0.0149353, 0.00707499, -0.0278634, -0.0513, -0.0344982, 0.00220224, -0.0332546, 0.008111, + -0.00234963, 0.0362378, 0.0399499, 0.0076758, -0.0431636, -0.0341594, -0.0400981, -0.0105245, + 0.0153956, -0.000767963, 0.0185314, -0.0453842, -0.0557711, -0.00781512, 0.00407695, 0.00583734, + -0.0275517, -0.0113003, 0.0115792, -0.0641317, -0.0148315, -0.0078452, -0.0106168, -0.0332407, + -0.0315385, -0.00204452, -0.00591023, -0.0533512, -0.00380281, 0.00919725, 0.0024589, -0.00864855, + -0.0314061, 0.0254036, 0.0529685, 0.00313081, -0.0361513, -0.0241116, -0.0383206, -0.0235494 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p46(hatfit_yaw00_lev2_p46); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p46_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p47.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p47.mh new file mode 100755 index 0000000..33b09c3 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p47.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p47.mh: + +#ifndef stasm_hat_yaw00_lev2_p47_mh +#define stasm_hat_yaw00_lev2_p47_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p47(const double* const d) // d has 160 elements +{ + const double intercept = -0.349958; + const double coef[160] = + { + -0.0938759, 0.00296821, -0.0729677, -0.0316095, -0.00706991, 0.0713807, -0.125104, -0.0615868, + 0.0707216, 0.055996, 0.066673, 0.063191, 0.0360445, 0.0752131, 0.0635663, 0.0533688, + 0.0104127, -0.0312641, 0.00659127, 0.0569067, 0.0593655, 0.0106091, 0.00629004, -0.0474023, + 0.0337274, -0.0232891, -0.0632985, -0.060388, 0.0187142, 0.0192868, 0.00269171, 0.0232338, + 0.0544664, -0.00795061, 0.00310823, -0.0143325, -0.0106303, -0.010281, 0.0267312, 0.00531744, + 0.0397312, 0.0957103, 0.117226, 0.0655497, 0.0423688, -0.0166754, 0.0271625, 0.0107862, + -0.0253908, 0.0119722, -0.031478, 0.0428568, 0.00490836, -0.0267872, 0.00626841, 0.0239749, + 0.0451296, -0.0252722, 0.0191709, 0.0668581, 0.0521968, 0.042853, 0.0250142, 0.0680039, + 0.0265303, -0.0209002, 0.0792489, -0.0097866, -0.00997529, 0.00598961, -0.0162379, -0.000541026, + -0.0667264, 0.0992408, 0.0101751, -0.0104197, 0.0343122, 0.0579504, 0.00881062, -0.0444161, + -0.0118875, -0.0064939, 0.0189168, 0.000886423, -0.0630399, -0.00776045, -0.0401691, 0.0212956, + -0.0124791, -0.0363352, -0.0313423, -0.0383338, -0.0471207, -0.00316822, -0.0288681, -0.00340652, + -0.0159142, -0.0354307, 0.0194541, 0.0374145, -0.00104714, 0.00322418, -0.00696972, -0.014788, + -0.0295837, -0.0265521, -0.0117168, 0.0133084, -0.0186389, -0.00254122, 0.00481712, 0.0100409, + 0.0211604, -0.0462735, -0.00647958, -0.0555301, -0.00469603, 0.0267769, 0.0434688, 0.0614441, + 0.0477303, 0.0342047, -0.0337731, -0.00408043, -0.0142271, -0.0233577, 0.00147113, -0.0202956, + 0.00291611, 0.0343229, 0.0658706, 0.042245, 0.00563476, -0.011158, -0.00236379, -0.00430019, + 0.024499, 0.0109992, 0.0275971, -0.0199714, -0.0525608, -0.0207767, -0.00988041, 0.0184047, + 0.0161338, -0.0137057, 0.0222027, -0.0660978, -0.0223864, 0.0155657, 0.00532412, 0.00796028, + -0.0192531, -0.00810867, 0.0503201, -0.0601432, -0.00343015, -0.000829491, -0.0402855, -0.0187734 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p47(hatfit_yaw00_lev2_p47); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p47_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p48.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p48.mh new file mode 100755 index 0000000..04d1e37 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p48.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p48.mh: + +#ifndef stasm_hat_yaw00_lev2_p48_mh +#define stasm_hat_yaw00_lev2_p48_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p48(const double* const d) // d has 160 elements +{ + const double intercept = -0.266244; + const double coef[160] = + { + -0.00244126, -0.00695775, -0.00750911, 0.0373564, 0.0912859, -0.0323123, 0.0135883, -0.0108903, + -0.0138802, -0.0188198, -0.0310479, -0.00867961, 0.0052937, 0.02034, -0.00643894, -0.0194933, + 0.00309242, -0.0162415, 0.0107541, 0.0155267, -0.0138722, -0.0117513, 0.0212924, -0.00367859, + 0.0165307, 0.00492787, -0.00487953, 0.00917269, -0.00646058, -0.00447639, -0.0268833, -0.0118095, + -0.000936887, 0.0130276, 0.0132283, 0.0163816, -0.00492111, -0.0137712, -0.00156212, -0.0168748, + -0.00170122, 0.01619, -0.00337298, 0.0267796, 0.0277441, -0.01436, -0.021252, -0.00902059, + 0.000179468, -0.00228062, -0.00427859, 0.032054, -0.00956211, -0.00282608, 0.00909247, -0.0129984, + -0.00618627, -0.0247032, -0.000789677, -0.0353493, -0.0504948, 0.0341041, 0.00664619, 0.00987884, + 0.0321276, -0.0307376, -0.0337874, -0.0369077, -0.0136238, -0.0040396, 0.0365185, 0.0295871, + 0.0337312, 0.0194397, 0.0405361, 0.00148259, 0.000971457, -0.0311783, -0.0283214, -0.0576002, + 0.0379415, 0.0162879, 0.0238018, 0.0896146, 0.0338163, -0.0440928, -0.0198169, 0.0139492, + 0.0135434, -0.0196034, -0.0666693, -0.0221157, 0.0240976, -0.00951311, 0.00591992, 0.00916109, + 0.0469733, 0.0313011, 0.0146373, 0.030906, 0.000892364, -0.0286324, -0.00992309, 0.0304088, + -0.0208145, -0.0248092, -0.0366884, -0.0395867, -0.0286382, 0.0170484, -0.00629805, 0.0301099, + 0.0390146, 0.0614085, 0.0576423, 0.0200063, -0.0242775, -0.05258, -0.0131601, 0.0207403, + -0.00163866, -0.0121648, 0.0215263, 0.0394177, -0.0529247, 0.0340943, -0.00183509, 0.00380548, + 0.00476614, -0.0106921, -0.0110888, 0.0573969, 0.0170387, 0.0482549, 0.0231282, -0.0111661, + -0.0603029, -0.0115112, -0.0168214, -0.00270062, 0.00541293, 0.012113, 0.0468421, -0.0042761, + -0.00759411, 0.0354396, 0.0728358, 0.0893882, 0.0657231, 0.0364996, 0.0136322, -0.0390175, + 0.0584287, -0.0251267, -0.0315721, 0.0521113, 0.116648, 0.060466, 0.0375091, 0.0571198 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p48(hatfit_yaw00_lev2_p48); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p48_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p49.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p49.mh new file mode 100755 index 0000000..edf24ac --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p49.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p49.mh: + +#ifndef stasm_hat_yaw00_lev2_p49_mh +#define stasm_hat_yaw00_lev2_p49_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p49(const double* const d) // d has 160 elements +{ + const double intercept = 0.192501; + const double coef[160] = + { + 0.0835498, -0.0204216, -0.0675207, -0.0489665, -0.033897, -0.021236, -0.00268309, -0.0164719, + -0.0187461, 0.0227914, 0.0300364, 0.015184, -0.0202062, -0.0158775, -0.0168518, -0.0179463, + -0.038041, -0.0119964, 0.00579416, 0.0356555, 0.0566812, -0.0199519, -0.0280012, -0.0420213, + -0.0132371, -0.0144199, -0.0541125, -0.0105326, 0.0603322, 0.022851, 0.00906489, 0.00544175, + -0.0290449, -0.0236012, -0.00222911, 0.00202367, -0.0600652, -0.00660235, 0.00674581, -0.0434849, + -0.0202302, -0.0287063, -0.0283714, -0.0407221, -0.0072558, 0.00972238, 0.00968606, 0.0152914, + -0.0149908, 0.0289505, 0.0488872, 0.0189728, -0.00561173, -0.0135145, -0.0488983, -0.0182296, + 0.00738071, -0.00137348, 0.0304801, 0.00910722, -0.00820217, -0.00508927, -0.0146195, -0.00154415, + -0.00504071, -0.0246486, -0.0311558, 0.0192517, 0.0282089, -0.00265505, 0.0248406, -0.0107161, + 0.0285478, -0.0112178, -0.0346098, -0.0519415, -0.0952246, 0.00133508, 0.00722505, 0.0403746, + 0.0649075, 0.0123525, -0.0457291, -0.0256825, 0.0120643, -0.00891199, -0.0416236, -0.0463997, + -0.0164144, 0.0205189, 0.0227254, -0.0232941, -0.0217079, -0.0199973, -0.0149456, -0.0384636, + -0.00166413, 0.0212203, 0.00416943, 0.0416679, -0.00479935, -0.0405398, -0.0239473, 0.00734616, + 0.0178309, -0.00162916, -0.0119294, 0.0305882, 0.0530868, -0.0145587, 0.00292821, -0.00612065, + -0.0178099, -0.0325072, -0.0661953, 0.00742307, 0.0488632, 0.0027951, -0.0201514, -0.0186999, + 0.0404047, 0.00993155, 0.0343232, 0.0122804, 0.0379228, 0.0375848, 0.0775912, 0.0897432, + -0.0461039, 0.00967581, 0.0305412, 0.0137018, -0.0143922, -0.00987391, -0.0348911, -0.018628, + 0.0197026, -0.00799958, 0.00957767, 0.00337207, -0.0613752, 0.0195736, -0.0140907, 0.0353882, + 0.034985, 0.0218205, 0.0298671, 0.0567854, -0.00573089, 0.018223, 8.00595e-05, 0.00255585, + -0.0136921, -0.0121694, -0.0137683, 0.0372801, -0.0100846, 0.0482397, 0.057524, 0.0142762 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p49(hatfit_yaw00_lev2_p49); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p49_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p50.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p50.mh new file mode 100755 index 0000000..97538f0 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p50.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p50.mh: + +#ifndef stasm_hat_yaw00_lev2_p50_mh +#define stasm_hat_yaw00_lev2_p50_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p50(const double* const d) // d has 160 elements +{ + const double intercept = -0.0477386; + const double coef[160] = + { + -0.0495539, 0.0211041, -0.0123644, -0.00237358, 0.0108027, -0.0275818, -0.0549775, -0.0233839, + -0.0836514, 0.0310929, -0.010384, -0.0336357, -0.0451937, -0.0144377, -0.0114682, -0.0333021, + 0.0882937, -0.00533626, -0.0302569, -0.0444939, -0.0423566, 0.0042213, 0.0342134, 0.0200237, + 0.0692929, 0.0399971, 0.0131628, -0.00253586, -0.0242977, -0.0384338, -0.0239605, -0.00330828, + -0.0419197, 0.00794452, -0.02165, 0.0106045, 0.0321402, -0.0296086, -0.0243697, -0.039781, + -0.042991, -0.0300578, 0.0575712, 0.0340556, 0.0579353, -0.0319422, -0.00851638, -0.0470556, + -0.00101905, -0.0480291, -0.0347489, -0.0109098, 0.00852354, 0.0360537, 0.0439627, 0.042935, + -0.0107764, -0.0386511, -0.0721515, -0.0327677, 0.00865226, 0.0152686, 0.0465945, 0.0362127, + 4.46165e-05, 0.0391035, 0.0494602, 0.0191409, 0.00970513, -0.0327974, -0.0348296, -0.0350654, + -0.0118673, -0.00809259, 0.0306083, 0.0223223, 0.0113989, 0.0111524, -0.0393564, -0.00130007, + -0.00938587, 0.0532157, 0.00277165, 0.0182028, -0.0584938, 0.0277438, 0.00704494, -0.00816859, + 0.0295228, 0.00526707, -0.0163852, -0.0128342, -0.0167003, -0.0067569, 0.0236241, -0.00624285, + 0.0457654, 0.0173623, -0.0646333, -0.00727445, 0.00955263, 0.0091617, -0.0389154, -0.0404082, + 0.036049, 0.0225123, 0.0275935, -0.0153545, -0.00186503, -0.0072327, -0.0506511, -0.0285569, + -0.00781563, 0.0385601, 0.00797834, 0.0318072, -0.00728755, -0.0361007, -0.0141264, -0.0288934, + 0.104485, 0.0503813, 0.0321288, -0.0221143, -0.0110662, 0.0157634, 0.0254731, 0.0313357, + -0.0274174, 0.0228067, 0.0466918, 0.0514846, 0.0267139, 0.0101061, -0.00114006, 0.0169987, + 0.0127578, -0.0134715, -0.013775, -0.0045049, 0.0264766, 0.0464675, 0.0606609, 0.0584783, + -0.0149799, 0.0290195, 0.0436679, 0.0239956, 0.0250228, -0.00806094, 0.0177236, 0.00230823, + -0.012279, -0.014165, 0.0218013, 0.00711751, -0.04036, 0.0250468, -0.0194546, 0.0282929 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p50(hatfit_yaw00_lev2_p50); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p50_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p51.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p51.mh new file mode 100755 index 0000000..4e0e380 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p51.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p51.mh: + +#ifndef stasm_hat_yaw00_lev2_p51_mh +#define stasm_hat_yaw00_lev2_p51_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p51(const double* const d) // d has 160 elements +{ + const double intercept = 0.0764357; + const double coef[160] = + { + 0.0650944, 0.0193851, -0.0594972, -0.100121, -0.104022, -0.0135567, -0.0376246, 0.0163301, + -0.0129405, 0.0103163, 0.0383381, 0.0231603, -0.0437137, -0.0245345, 0.0999677, -0.0503141, + 0.0283688, 3.67082e-05, 0.0251029, 0.0506682, 0.0184266, -0.0705395, 0.0184774, 0.0297773, + -0.00595488, -0.0341949, -0.00113204, 0.00722669, 0.0464591, -0.0242277, -0.0192974, 0.00749769, + -0.0107425, -0.0521185, -0.04147, -0.0343186, -0.0526623, 0.0383393, 0.0396407, 0.0098424, + -0.00613143, -0.0146145, -0.037507, 0.052777, 0.108913, 0.0489861, 0.0294413, 0.00825218, + 0.00635863, 0.017598, 0.00982251, 0.00746601, 0.0341631, 0.0363752, 0.0151007, 0.00218081, + 0.0294743, 0.0752663, 0.0559439, 0.000286545, 0.0110606, 0.012381, 0.0289762, 0.0671849, + 0.0313379, 0.0311749, 0.0262417, 0.0283269, 0.0130074, -0.0453311, -0.0087264, 0.0826683, + -0.0305231, -0.0395294, -0.0730491, -0.0439395, -0.00667226, 0.0224563, 0.00542897, -0.00669543, + -0.00254243, -0.0285783, -0.0136673, 0.0294769, 0.0177926, -0.0204505, 0.00655116, -0.0212695, + -0.0351333, -0.026744, 0.0102726, 0.00539215, -0.0062701, -0.0134256, -0.0305623, -0.0311588, + -0.0275912, 0.00367917, -0.0134105, 0.00069081, 0.003861, 0.0132189, -0.0253056, -0.0409523, + 0.00296127, 0.00236138, -0.00174571, 0.00992103, -0.00668856, 0.00554392, -0.0147451, 0.00857709, + -0.0172276, -0.0069705, 0.00110024, 0.0114147, 0.00020103, 0.0260044, 0.0350674, -0.015979, + -0.0468747, -0.0412072, -0.020738, -0.0234711, -0.0415735, 0.0120218, -0.0126633, -0.02575, + -0.000798617, 0.0116575, -0.00498169, -0.0220634, -0.0188038, 0.00136545, 0.00679813, 0.0155936, + 0.0294948, -0.00340731, -0.00214841, -0.0186313, -0.019873, -0.0132203, -0.00228597, 0.0017341, + 0.0248672, 0.00242723, 0.00372801, 0.0125139, -0.00768655, -0.0294099, -0.00568277, -0.00574113, + -0.00529745, -0.010464, -0.00262238, -0.0218967, -0.00582704, 0.00480886, 0.00623102, 0.00438627 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p51(hatfit_yaw00_lev2_p51); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p51_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p52.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p52.mh new file mode 100755 index 0000000..07371ef --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p52.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p52.mh: + +#ifndef stasm_hat_yaw00_lev2_p52_mh +#define stasm_hat_yaw00_lev2_p52_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p52(const double* const d) // d has 160 elements +{ + const double intercept = 0.0675872; + const double coef[160] = + { + 0.0422232, 0.00605944, -0.0402839, -0.0373185, -0.0290048, -0.0300657, -0.0521738, -0.0466676, + -0.010222, 0.0108525, 0.010731, 0.00984706, 0.0071276, -0.0020334, 0.00506905, -0.0378795, + 0.0256222, -0.00261496, -0.00874904, 0.0389066, 0.00516485, -0.0127199, 0.0187019, -0.000190753, + -0.00267674, -0.0253644, -0.00748812, 0.0673018, 0.0356246, -0.0255024, -0.00546691, -0.0188718, + -0.0131194, -0.0303938, -0.0786897, -0.0136168, -0.00421177, -0.0507213, -0.0482906, -0.0439651, + 0.0165339, -0.00723551, 0.0494401, 0.0500584, 0.0445881, 0.0448531, 0.00679038, 0.127445, + 0.00635129, -0.00477785, -0.0144259, 0.00167362, -0.00852137, 0.0127319, 0.0194569, 0.0380326, + -0.00862816, 0.00856149, 0.0171049, 0.0156228, -0.021514, 0.0473204, -0.00787639, 0.02784, + 0.00322575, 0.0140646, 0.00674093, -0.00690135, -0.0250757, 0.0660233, -0.0360162, -0.00921877, + 0.00959317, 0.0110007, 0.0146054, 0.018331, -0.0163642, 0.049363, 0.0730171, 0.0120552, + -0.0164216, 0.023567, 0.0119819, 0.0361643, 0.0255793, -0.0372276, 0.00954623, 0.0744301, + -0.0511832, -0.0570134, -0.0396644, -0.0404291, -0.0241616, -0.0218683, 0.0113479, 0.00422602, + -0.0198206, -0.0071985, -0.0374479, -0.0315704, -0.0633209, 0.0221232, -0.015953, -0.00428115, + 0.0153375, 0.0136208, -0.023364, -0.0307367, -0.0540647, 0.0534357, -0.0172693, -0.0192023, + -0.0168497, 0.04081, 0.0412586, 0.0312318, -0.00389699, -0.0169878, 0.044265, 0.00451415, + 0.0174412, 0.046257, 0.000171126, 0.00684629, 0.00116319, -0.0263814, 0.0101471, 0.0133016, + -0.0112506, -0.0140623, -0.0175112, -7.98279e-05, -0.00964185, -0.00319915, 0.00209215, -0.0136634, + -0.014852, -0.00364934, 0.00261632, -0.00717517, 0.0168242, -0.00207797, -0.014872, -0.0169025, + -0.00321814, -0.00673075, -0.00480385, 0.0226337, 0.0466613, 0.0354814, 0.0169009, -0.00421824, + -0.000706595, 0.0251857, 0.00525701, -0.0187527, 0.00833638, -0.0156336, -0.0185438, -0.00773955 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p52(hatfit_yaw00_lev2_p52); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p52_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p53.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p53.mh new file mode 100755 index 0000000..13639b7 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p53.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p53.mh: + +#ifndef stasm_hat_yaw00_lev2_p53_mh +#define stasm_hat_yaw00_lev2_p53_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p53(const double* const d) // d has 160 elements +{ + const double intercept = 0.0626878; + const double coef[160] = + { + -0.018691, -0.0296059, -0.0703994, 0.00120945, -0.0494968, 0.0795052, -0.00971431, -0.0329191, + -0.0362483, -0.0085063, -0.0191623, -0.024323, -0.0312561, -0.0143246, -0.00839651, -0.0488237, + -0.0588511, -0.00926484, 0.0441297, 0.0445941, 0.017878, -0.046711, 0.0849654, -0.0249244, + -0.0423636, -0.0462836, 0.0275196, 0.0497014, 0.063428, 0.0314373, -0.00740839, -0.0418502, + 0.0557852, -0.0506972, -0.0623033, -0.0245665, 0.0507803, 0.0253386, -0.0329503, 0.0540937, + 0.0081901, -0.0173538, -0.0468151, -0.0113454, 0.0219419, 0.094097, -0.0336471, -0.0388668, + -0.00046048, 0.00541129, 0.0423549, 0.0338251, 0.0152872, 0.0485634, 0.0308025, 0.0141435, + 0.0688133, 0.0714458, 0.0222149, 0.00240129, -0.003577, 0.0127541, 0.0484851, 0.0474281, + 0.0625819, 0.0711041, -0.0137645, -0.00438153, -0.0217192, -0.0282293, 0.0145261, 0.0291524, + 0.000221867, 0.0219362, -0.00657695, -0.00351057, -0.019949, 0.0184259, -0.0142055, 0.00232768, + 0.0323774, 0.0241413, 0.0107102, 0.0214944, 0.000167494, 0.00677882, 0.0125334, 0.0430097, + 0.00430616, -0.0118973, 0.0184187, 0.0247654, 0.0199142, -0.0243278, -0.0211138, -0.00152234, + -0.0335908, -0.0136346, -0.00509563, -0.0118379, 0.00521896, -0.0137947, -0.029525, -0.033767, + -0.0409034, -0.0136538, -0.00955293, -0.0135913, 0.0034148, -0.00914535, -0.0143001, -0.0305599, + 0.00261832, 0.0124695, -0.0291263, -0.00591625, 0.00662083, 0.00995792, 0.0301587, -0.00637953, + -0.00596176, -0.023765, 0.00159443, -0.017357, 0.0219382, -0.00169842, 0.00159802, -0.0072873, + -0.00549211, -0.0196789, 0.00654718, -0.00794658, -0.0214648, -0.0236879, -0.0144501, -0.0129102, + 0.00940209, -0.013199, 0.00696873, -0.0156188, -0.0263607, -0.0121995, -0.0039541, 0.0131912, + 0.0121015, -0.00687284, -0.00235904, -0.0296469, -0.0215484, -0.0173748, -0.0020463, 0.0232373, + -0.0247, -0.00367961, -0.00750513, -0.0123954, -0.0110696, -0.0125895, 0.0128087, 0.0139221 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p53(hatfit_yaw00_lev2_p53); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p53_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p54.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p54.mh new file mode 100755 index 0000000..b5d8222 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p54.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p54.mh: + +#ifndef stasm_hat_yaw00_lev2_p54_mh +#define stasm_hat_yaw00_lev2_p54_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p54(const double* const d) // d has 160 elements +{ + const double intercept = -0.277291; + const double coef[160] = + { + -0.0446887, -0.00374708, 0.00385274, 0.0503045, 0.0217272, -0.0400245, 0.0183714, -0.0416097, + 0.0361514, 0.0264205, -0.0355195, -0.0535544, -0.0176517, 0.0109518, 0.0471306, 0.0530063, + 0.0408165, -0.00365712, 0.0186745, -0.0167308, -0.0192916, -0.0318051, 0.0164768, 0.0619793, + -0.000283606, 0.0150233, 0.0253617, 0.0234364, -0.00652511, -0.0238146, -0.0132057, -0.00482485, + -0.0557863, -0.0139786, 0.0177731, -0.0304113, -0.0156029, -0.0503534, -0.00948837, -0.00765604, + 0.00322491, 0.0139671, 0.0437126, 0.051357, -0.0120266, -0.0424331, 0.0545242, 0.0207623, + 0.0389337, -0.0450301, -0.0408157, -0.00188467, 0.0802237, 0.10159, 0.00144506, 0.00801055, + 0.0471722, 0.00134928, 0.0049963, 0.00331887, -0.023034, -0.0105944, 0.000381919, 0.0476973, + -0.01709, -0.00342293, 0.0247222, 0.0385434, 0.031444, -0.00491429, -0.0478791, -0.00725465, + -0.00313559, -0.026061, -0.00803455, -0.00766215, -0.00734289, -0.00485036, -0.0128516, 0.0467148, + 0.0217181, 0.0961528, 0.0442988, 0.0244961, -0.00209479, 0.070689, 0.0440197, -0.0210048, + -0.0333998, 0.00952642, -0.0375876, 0.00130615, 0.033453, 0.0267356, 0.0286615, -0.0131523, + 0.0185672, 0.00152239, -0.0076401, 0.0130947, 0.0407226, 0.0263838, -0.0137793, -0.0336713, + 0.0205575, 0.0190752, 0.00701367, 0.0192376, 0.000230231, 0.00256423, -0.00603685, 0.00141138, + -0.000274883, -0.0127365, -0.0275762, -0.00276515, -0.0121963, -0.00158619, -0.00822213, 0.021954, + 0.00219908, 0.0747051, -0.00507968, -0.0224858, -0.0288911, -0.009155, -0.0148191, 0.0314522, + -0.00385337, 0.0544586, -0.0213008, -0.0350865, -0.0216466, 0.0122098, 0.00669712, 0.00928643, + -0.0222463, -0.00865128, -0.0119568, -0.0130535, -0.028518, -0.0214098, -0.0315799, -0.0243013, + 0.0445565, 0.0313687, 0.0127979, 0.0226593, 0.002793, -0.00884828, 0.0147583, 0.0132262, + 0.0187937, -0.00249565, -0.00482565, -0.00873885, -0.00158184, 0.018112, 0.00190477, 0.0203196 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p54(hatfit_yaw00_lev2_p54); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p54_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p55.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p55.mh new file mode 100755 index 0000000..a3ca6d7 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p55.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p55.mh: + +#ifndef stasm_hat_yaw00_lev2_p55_mh +#define stasm_hat_yaw00_lev2_p55_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p55(const double* const d) // d has 160 elements +{ + const double intercept = -0.250169; + const double coef[160] = + { + 0.00770038, -0.0117506, 0.062048, 0.0180783, 0.0240321, 0.0333108, 0.0369724, -0.0106229, + 0.0118312, 0.0499778, 0.061373, 0.0373043, 0.0472146, -0.00673929, 0.0755102, 0.0273608, + 0.0547031, -0.015602, -0.0683437, -0.0307405, 0.0675858, 0.0804987, 0.0421439, 0.0451601, + 0.0381199, -0.00587557, -0.017652, 0.00875733, -0.00608711, 0.0247261, -0.0605143, 0.0144518, + 0.107937, 0.00733392, -0.0109964, 0.0212265, -0.0131021, -0.055415, -0.0756234, 0.06983, + -0.0126466, 0.00585092, 0.020196, 0.030979, 0.00395235, 0.0345755, -0.0128192, -0.0237322, + 0.00551386, 0.05754, -0.0355483, -0.0133549, -0.034749, 0.024405, 0.0142873, -0.00536911, + -0.0123543, 0.0699165, -0.00607456, 0.0269026, -0.0222243, 0.0179932, -0.0170113, -0.0444965, + -0.043051, 0.0686616, 0.0156304, 0.0271785, -0.00155287, -0.0190537, 0.00520236, -0.0426718, + -0.0380035, 0.0159989, -0.0108328, 0.00100199, 0.0144364, 0.0342008, 0.0593881, -0.0223646, + 0.0102675, -0.0133535, -0.00346879, 0.01142, 0.001026, -0.00617268, -0.0179935, 0.0294985, + 0.00672279, 0.0123285, 0.0107054, -0.00973206, -0.00529085, -0.0241834, -0.01892, 0.0318575, + -0.0107454, -0.0399393, -0.00696133, -0.0353624, -0.000994443, -0.0316886, 0.0117592, 0.0338041, + 0.0196972, -0.0370209, -0.0057983, -0.0262384, -0.0001756, -0.0105558, 0.0138915, 0.0301981, + 0.046032, 0.0066506, 0.0175139, 0.0332507, 0.00442133, -0.0277928, 0.0017533, 0.0299767, + -0.00254022, -0.00614713, 0.0406137, 0.0403652, 0.0213262, -0.00909879, -0.0216363, -0.0136817, + -0.00606465, -0.0205355, -0.0101716, -0.020908, -0.020426, 0.00635634, -0.00863355, -0.0117216, + -0.0107347, 0.00235228, 0.00293927, 0.00761096, -0.00581517, 0.0156982, -0.00447562, -0.00811945, + -0.0236372, 0.0142137, -0.0213592, 0.0131076, -0.00325128, 0.00408089, -0.0124824, -0.0344511, + -0.0238587, -0.019063, -0.00917022, -0.0286919, 0.023084, 0.0092957, 0.0240128, 0.036306 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p55(hatfit_yaw00_lev2_p55); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p55_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p56.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p56.mh new file mode 100755 index 0000000..2d234c4 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p56.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p56.mh: + +#ifndef stasm_hat_yaw00_lev2_p56_mh +#define stasm_hat_yaw00_lev2_p56_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p56(const double* const d) // d has 160 elements +{ + const double intercept = -0.328306; + const double coef[160] = + { + 0.0422546, 0.184962, 0.111152, 0.115769, 0.101409, -0.0368084, -0.0156815, 0.139848, + -0.052356, -0.108451, -0.0700122, -0.0229977, -0.0024418, 0.0153147, 0.0345232, 0.0241745, + 0.0212702, 0.000153695, -0.0788591, -0.0915139, -0.0247898, 0.0565069, 0.00748018, 0.0422068, + 0.0181788, 0.0418746, -0.0156512, 0.0312404, -0.00018109, 0.114732, -0.0092167, -0.0121939, + 0.0231432, 0.0906016, 0.160848, 0.0908163, 0.0713517, 0.0394256, 0.00905898, 0.0264914, + 0.0148162, -0.0424319, -0.0394716, -0.0317375, -0.0753654, -0.0172819, -0.0305321, -0.0236258, + 0.022185, 0.012337, 0.0471083, 0.0319807, -0.0116053, -0.0167637, 0.0203835, 0.00503093, + -0.0140213, 0.0198297, 0.0664976, 0.0462881, 0.0105653, -0.000511109, -0.00413334, -0.0450897, + -0.00640742, -0.0325777, 0.0146104, 0.0213001, 0.0387468, -0.00322437, 0.0274184, 0.00179133, + -0.0146529, -0.0246124, -0.0441073, -0.042919, -0.0813967, -0.0495854, -0.0512577, -0.0147774, + 0.0484091, -0.00169258, 0.00229933, 0.0214474, 0.0207526, -0.0267993, -0.042788, -0.0367772, + -0.0232888, -0.0114198, -0.00746757, -0.0123173, 0.000351264, 0.00888676, 0.0162699, 0.0085016, + 0.0219701, 0.00384312, -0.0292739, -0.0425834, 0.0015455, 0.00867374, -0.00863364, 0.0193312, + 0.023051, 0.00926908, 0.00392346, 0.0118959, 0.0199253, 0.00515107, 0.0196919, 0.0199765, + -0.0084015, -0.00823807, 0.0127497, -0.0211327, -0.0121992, -0.0401961, -0.0610518, -0.0164254, + -0.000862504, 0.0221161, 0.0126576, 0.00322465, -0.0033571, 0.00501517, 0.0331727, 0.048669, + -0.0105479, -0.0102952, 0.0363188, 0.0324739, 0.0273342, -0.0126718, 0.00903472, -0.00375157, + 0.00556322, 0.0250934, 0.0164272, 0.0050311, -0.000954502, 0.00514953, -0.00287182, -0.0133536, + -0.0146159, 0.0136428, 0.00980887, 0.0328536, 0.0203876, 0.0245116, 0.00937394, -0.0276986, + -0.00316586, -0.0252487, 0.0171106, 0.0432378, 0.00206141, 0.011208, 0.0426284, -0.0135959 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p56(hatfit_yaw00_lev2_p56); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p56_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p57.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p57.mh new file mode 100755 index 0000000..19cafd6 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p57.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p57.mh: + +#ifndef stasm_hat_yaw00_lev2_p57_mh +#define stasm_hat_yaw00_lev2_p57_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p57(const double* const d) // d has 160 elements +{ + const double intercept = -0.203007; + const double coef[160] = + { + 0.0865128, 0.0248213, 0.0086474, 0.0259264, 0.0268835, 0.0689304, -0.102411, 0.0205806, + 0.117378, -0.00638402, -0.0704098, -0.0455065, 0.0117648, 0.0137531, 0.0162044, 0.0398035, + 0.0274852, -0.00498262, 0.0209268, 0.0316234, 0.0288375, 0.0340683, 0.0668118, 0.0260287, + 0.0215089, 0.0406523, 0.0853733, 0.0623678, 0.0242103, -0.012731, 0.0075814, 0.0342916, + 0.0283612, -0.00154386, -0.0240037, -0.0495551, 0.00866836, -0.0187868, 0.0618618, 0.0776875, + -0.0219694, 0.0250212, -0.0495675, 0.0345358, -0.00554467, -0.0609616, 0.0596593, -0.0024294, + -0.00819783, 0.0356277, 0.0464799, 0.0898769, 0.0426898, -0.0331242, 0.000643486, -0.00481121, + 0.000895754, 0.0312877, -0.00516461, 0.0300407, 0.00527737, -0.00775853, 0.00704294, 0.0223022, + -0.00470824, 0.0474949, 0.0244843, -0.0149368, -0.0229115, -0.0154321, -0.0265509, 0.0119826, + -0.016407, -0.0128797, 0.00940966, 0.0142355, 0.0178779, 0.02561, -0.0083376, 0.0394511, + -0.052462, -0.0293036, 0.00800413, -0.0132136, -0.0146051, 0.0310741, -0.00819054, -0.0509036, + -0.024018, -0.0654997, -0.0291971, -0.0366762, -0.0289362, 0.0235513, 0.00167891, -0.00503019, + -0.0119401, -0.0284647, 0.00416893, 0.00107612, 0.012074, 0.0370183, -2.30073e-05, -0.0357759, + 0.00721041, 0.00510823, 0.0151765, -0.0191009, -0.0173274, -0.00825617, -0.0405202, -0.0194431, + 0.0323954, -0.0224443, -0.020123, 0.0101763, -0.0117992, -0.000572933, 0.0238616, 0.00865666, + 0.0040677, 0.011807, -0.0538971, -0.00438757, -0.0352308, -0.000402236, -0.00168159, -0.00856236, + -0.00958126, 0.0209521, 0.0110831, 0.0138053, -0.0217701, -0.0060596, -0.0140786, -0.0134007, + -0.0150505, 0.00959312, -0.00261968, -0.0179398, -0.0201037, -0.00983304, -0.000632587, 0.00957735, + 0.0348604, 0.0354315, -0.00866957, -0.0197128, -0.00944631, -8.65125e-05, 0.00391458, 0.0133003, + -0.00452637, 0.010231, 0.0347043, 0.0398113, 0.00425353, -0.00193257, -0.0202522, -0.0150822 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p57(hatfit_yaw00_lev2_p57); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p57_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p58.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p58.mh new file mode 100755 index 0000000..108e28c --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p58.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p58.mh: + +#ifndef stasm_hat_yaw00_lev2_p58_mh +#define stasm_hat_yaw00_lev2_p58_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p58(const double* const d) // d has 160 elements +{ + const double intercept = -0.384347; + const double coef[160] = + { + -0.0590473, -0.0107227, 0.0440664, 0.00644412, -0.0110966, 0.00148019, -0.0853849, -0.0932483, + -0.0392207, -0.0348981, -0.00926003, 0.0317718, 0.0280975, 0.0566762, 0.00941703, -0.0125592, + -0.000283368, -0.00502152, -0.0161522, -0.000118852, 0.00761111, 0.0468401, 0.0465597, 0.00643877, + -0.00673491, 0.00193026, -0.0347163, -0.0226197, -0.0508994, 0.00725766, 0.0415696, -0.0173771, + 0.0682239, 0.0358892, 0.0108749, -0.00233464, -0.0229325, -0.064544, 0.000298107, -0.0620169, + -0.0186442, 0.0436344, -0.0143493, -0.050769, -0.0402411, 0.0134804, -0.0727617, 0.0189837, + 0.0197985, 0.0115539, 0.00412827, 0.0101014, 0.0171984, 0.0365728, 0.00240549, 0.0200738, + 0.102691, 0.0325696, 0.00238379, -0.0144204, -0.0414022, 0.0173708, 0.00370051, 0.0572132, + -0.0500593, -0.0452855, -0.0308472, -0.0417367, 0.0276262, 0.0335967, 0.000101994, -0.0125322, + 0.0184756, 0.0674955, 0.0767639, 0.0524944, 0.0106225, -0.00806347, 0.0145697, 0.0241127, + 0.0271895, 0.0055225, -0.0450105, -0.0188389, 0.0217115, 0.0201329, -0.0117536, 0.0364266, + 0.0621516, 0.0058109, 0.0328488, 0.0289039, 0.0422151, -0.0215054, 0.0247541, 0.010941, + 0.0546283, 0.0028825, -0.00979371, 0.02213, 0.0302506, -0.0296153, 0.0105182, 0.03328, + 0.0185126, -0.0128748, 0.00842694, 0.0417042, 0.0210447, 0.0329542, 0.0635035, 0.0543379, + 0.0372297, 0.0482659, 0.0787115, 0.0584661, 0.0446115, -0.0131087, -0.00200247, 0.043677, + -0.0560349, 0.0193011, -0.0152084, -0.0208463, 0.0323249, 0.0279498, -0.000862152, 0.00584713, + -0.0218628, -0.0139652, -0.0164495, 0.00507096, -0.0313434, -0.0317992, -0.0274037, -0.0352698, + -0.0352773, -0.0269394, -0.0122851, 0.0570417, 0.0430161, 0.017478, 0.0152139, 0.00152666, + -0.0431643, -0.0129325, 0.0101743, 0.024005, 0.030459, 0.026044, -0.00930558, -0.0343825, + -0.00255551, 0.02388, -0.00157908, -0.0270078, -0.0219657, 0.0105858, -0.0106584, 0.0122666 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p58(hatfit_yaw00_lev2_p58); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p58_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p59.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p59.mh new file mode 100755 index 0000000..47320f3 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p59.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p59.mh: + +#ifndef stasm_hat_yaw00_lev2_p59_mh +#define stasm_hat_yaw00_lev2_p59_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p59(const double* const d) // d has 160 elements +{ + const double intercept = -0.225675; + const double coef[160] = + { + -0.040477, -0.00609423, -0.00821916, -0.0548738, -0.0169424, 0.0560629, -0.0976803, -0.0536427, + -0.00845835, -0.00693062, -0.0641817, -0.0622238, -0.0746946, -0.00356808, -0.0219615, -0.0562677, + -0.0112212, -0.00771601, -0.0362499, -0.0567906, -0.0768136, 0.00568094, 0.0410822, 0.00568983, + -0.00380847, 0.0141137, 0.0186174, 0.00927793, -0.0298109, -0.00952264, 0.0131703, -0.0200301, + -0.0191894, 0.0028206, 0.00948692, 0.0159359, 0.00167328, -0.0168206, 0.0138921, -0.0010733, + 0.0206606, 0.011975, -0.0235473, 0.0564816, 0.0761392, -0.0740906, -0.0572061, -0.0199989, + 0.00309155, -0.0190737, 0.000729695, 0.0495573, 0.117437, 0.0523793, 0.0212986, 0.0454454, + 0.0286832, 0.0402036, 0.0860817, 0.0986324, 0.080419, 0.0786126, 0.0961135, 0.0916864, + 0.000713514, 0.0161459, 0.0238884, 0.0219361, -0.00209585, 0.0039416, 0.0269808, -0.000680694, + 0.00881705, 0.0295667, 0.0165846, 0.00277793, 0.0118923, -0.0177124, -0.0122367, 0.000993965, + 0.0169292, 0.0339602, -0.019476, 0.0122096, 0.0174662, -0.00977033, 0.0269987, 0.0407677, + 0.0307038, 0.0399019, -0.0295386, -0.030221, -0.061692, -0.0551209, 0.03251, 0.0324767, + -0.00701717, 0.0126396, 0.00466349, 0.0169105, -0.0294034, -0.0441127, -0.00279974, -0.0113114, + 0.0191582, 0.0291767, 0.0220347, 0.0167793, 0.00828308, -0.0079766, -0.0115879, 0.00390746, + 0.00364135, 0.0333894, 0.0046142, -0.00540084, 0.0075717, -0.00470646, -0.0191649, -0.00688477, + 0.0113193, -0.00401891, 0.00742461, -0.00336853, 0.0177918, 0.0482465, 0.0163182, -0.0144115, + -0.0189215, -0.0170834, 0.000100562, -0.00627354, 0.0241668, 0.0217989, -0.0120274, -0.0186345, + -0.0243717, -0.0432802, -0.0227666, 0.0136494, 0.0290572, 0.0133098, -0.0198099, -0.0344272, + -0.0299281, -0.0202596, -0.0112792, -0.00627686, 0.0113015, 0.00128058, -0.0142346, -0.0147663, + 0.0242026, 0.00906782, -0.00932914, 0.016803, -0.00062888, -0.000295773, 0.0133787, 0.064017 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p59(hatfit_yaw00_lev2_p59); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p59_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p60.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p60.mh new file mode 100755 index 0000000..d939901 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p60.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p60.mh: + +#ifndef stasm_hat_yaw00_lev2_p60_mh +#define stasm_hat_yaw00_lev2_p60_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p60(const double* const d) // d has 160 elements +{ + const double intercept = -0.0574429; + const double coef[160] = + { + -0.0481914, -0.0802053, -0.0574908, -0.0144008, -0.0340921, 0.0176143, -0.0273937, -0.065969, + -0.0645076, -0.0216497, -0.0319475, -0.0358559, -0.0307303, -0.000141573, -0.0476916, -0.019718, + -0.011527, 0.00677815, -0.0317135, -0.0533613, -0.0469683, 0.00057032, -0.0231745, 0.00652888, + 0.0652671, 0.0573901, -0.00943745, -0.0753712, -0.0411104, -0.0184814, 0.000290673, 0.0272182, + 0.0513562, 0.0555283, 0.0992615, 0.0705934, 0.024459, 0.00052681, 0.0214185, -0.0196554, + -0.00446396, 0.0397874, -0.0230297, -0.0356375, -0.0500258, -0.0872619, 0.0171653, -0.00482889, + 0.0163187, 0.0409706, 0.0199018, 0.0214592, 0.00166659, -0.00809229, 0.0346777, 0.0031199, + -0.0113046, 0.0163862, -0.00277179, 0.018063, 0.022806, -0.00388124, 0.105189, 0.00141979, + -0.0687237, -0.0122344, -0.00200493, 0.0379497, 0.0276317, -0.0045303, 0.00388892, -0.0202021, + -0.0677418, -0.0309028, -0.016149, -0.00385407, -0.0104694, -0.0736018, 0.0296348, 0.0565345, + 0.0757052, 0.0444074, 0.00251371, 0.0318623, -0.0424912, 0.122445, 0.118608, 0.0299465, + 0.0324904, 0.00866944, -0.0105795, 0.00675961, -0.0485598, 0.0270956, 0.00775366, 0.00346522, + -0.0240875, -0.0145366, 0.00787615, -0.013137, -0.0283774, -0.0251651, -0.036254, -0.0162058, + -0.00468493, -0.0105304, 0.011014, -0.0353427, 0.0080706, -0.03488, 0.00061812, -0.00251708, + -0.00221024, -0.0177607, 0.0496022, -0.0320555, 0.0287524, -0.0167142, -0.0221543, -0.00306374, + -0.0473918, -0.00819185, 0.0295476, 0.0660758, 0.0524945, -0.00485913, -0.0213759, -0.0239857, + -0.0371676, -0.00204892, -0.057195, -0.0158003, 0.0125775, -0.0164363, 0.00846072, -0.0232319, + 0.0346082, 0.034776, 0.00184092, 0.0412026, 0.00858117, 0.042719, -0.0115131, 0.000989414, + 0.0302057, 0.0501328, 0.0110354, 0.0176725, 0.00231205, 0.0281351, -0.00680329, 0.028958, + 0.0595568, 0.00981931, 0.0759773, 0.0700752, -0.0174127, 0.0333898, 0.0162407, 0.0248003 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p60(hatfit_yaw00_lev2_p60); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p60_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p61.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p61.mh new file mode 100755 index 0000000..ca250df --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p61.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p61.mh: + +#ifndef stasm_hat_yaw00_lev2_p61_mh +#define stasm_hat_yaw00_lev2_p61_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p61(const double* const d) // d has 160 elements +{ + const double intercept = -0.522524; + const double coef[160] = + { + -0.025582, -0.051103, -0.0682627, -0.0420982, -0.0651034, -0.00234092, -0.0747404, -0.0480761, + 0.107729, 0.00864232, -0.00692037, -0.0102879, -0.0240543, -0.0372096, -0.00379856, 0.00575709, + 0.0676828, 0.00608742, 0.0175875, 0.0310507, 0.0308839, -0.000315561, -0.021326, -0.00721177, + 0.00359587, -0.00721105, 0.00543791, -0.0175253, -0.00954474, -0.0153807, -0.0221238, 0.000263776, + -0.00772571, 0.0223946, -0.0182963, -0.0436557, 0.0567689, 0.00871555, -0.0673544, -0.0361942, + -0.0467252, 0.0726687, -0.00774027, -0.0425389, 0.0317325, -0.0200056, 0.0628934, 0.0106654, + -0.0175337, 0.0410224, 0.0554879, 0.0386439, 0.0295719, 0.0146787, 0.0482875, 0.058383, + -0.024714, 0.0232768, 0.0340872, 0.055188, 0.0395916, 0.0177769, 0.0895858, 0.0178616, + -0.0133556, 0.0151659, -0.00673149, -0.0250919, -0.0304849, -0.0186642, 0.000626389, -0.0335218, + 0.0608877, 0.0685431, 0.0731696, 0.0613766, -0.0132325, 0.0413995, 0.131949, 0.0114613, + -0.0118039, 0.0113914, 0.0373391, -0.0196422, 0.0161307, 0.0250844, 0.0644002, -0.0362912, + -0.0408222, -0.0456617, -0.0231356, -0.0395514, -0.00521852, -0.0370925, -0.00181958, -0.0144886, + -0.0149205, -0.0229657, 0.0109783, -0.017396, 0.0178595, -0.0404573, -0.0112393, 0.0812739, + 0.0020366, -0.0124532, 0.00444585, -0.0111524, -0.00913733, 0.0125664, 0.00483298, 0.00217064, + -0.0144132, -0.0490858, -0.0180631, -0.0293735, -0.0397752, 0.0204384, 0.0192876, -0.114034, + 0.0300214, 0.0347912, -0.0458519, 0.0255813, -0.0321425, 0.038942, 0.0340921, 0.0874599, + 0.0527331, 0.051523, 0.0481371, -0.0111974, 0.0113982, -0.0118794, 0.0174943, 0.00461061, + 0.0252508, -0.0129713, 0.0672082, 0.045425, 0.00719687, 0.0363388, 0.0130413, -0.0106249, + 0.0131324, -0.025057, 0.0374134, -0.0126326, -0.00183529, -0.00414838, -0.014713, -0.0068541, + 0.0114563, 0.00325675, 0.0470546, 0.0109092, 0.055069, 0.0410553, 0.0344168, 0.061962 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p61(hatfit_yaw00_lev2_p61); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p61_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p62.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p62.mh new file mode 100755 index 0000000..5b19024 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p62.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p62.mh: + +#ifndef stasm_hat_yaw00_lev2_p62_mh +#define stasm_hat_yaw00_lev2_p62_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p62(const double* const d) // d has 160 elements +{ + const double intercept = -0.546964; + const double coef[160] = + { + 0.138885, -0.00653416, 0.00853471, 0.0371284, 0.0234242, -0.0284408, -0.0315538, -0.0084206, + -0.0215589, -0.0296899, -0.0172399, 0.0141021, -0.00141327, 0.0023797, 0.0203704, -0.0246041, + 0.0218481, 0.0149802, -0.00505354, -0.0424898, 0.0127839, -0.014713, -0.0497268, 0.0124626, + 0.0272064, 0.0198233, 0.0172056, 0.037164, 0.0912689, 0.0180614, 0.040656, 0.0120559, + -0.00933765, -0.0506735, -0.0260352, -0.0163973, -0.0156429, -0.0580504, -0.0765838, -0.0387924, + -0.0905708, 0.0280471, 0.0110524, 0.0151604, 0.0410297, 0.00172472, 0.0868415, 0.125911, + -0.0135293, 0.00280759, 0.0468298, 0.0177423, 0.0340985, -0.0281303, 0.0436825, 0.00510234, + -0.000461449, 0.0356534, 0.00241731, 0.0121216, -0.0304363, 0.0429733, 0.043888, -0.0563081, + 0.00259206, 0.0322458, 0.0219172, 0.0211178, -0.032417, 0.0411085, 0.0655549, -0.0576921, + 0.0124454, 0.000714222, 0.0186819, 0.0605241, -0.00227574, 0.0301202, 0.114545, 0.00673266, + -0.0480568, -0.0312519, 0.0222479, -0.0534711, -0.00581887, -0.0658351, 0.00621864, -0.0312635, + 0.0388063, -0.0279277, 0.00658296, -0.0142938, 0.00486383, -0.0184964, -0.0183719, 0.0867722, + -0.0211815, -0.0206133, 0.0011078, -0.0233788, -0.00747, 0.0274744, -0.0195416, -0.0643339, + -0.0140197, -0.0308474, -0.0133872, -0.0273788, -0.0271311, -0.0214956, 0.00498129, -0.0151128, + 0.0111828, -0.0314769, 0.00919131, -0.0110078, 0.0173443, -0.00997421, 0.0334072, 0.0217874, + 0.106887, 0.0221746, 0.0352712, 0.00712471, -0.0108071, 0.04537, 0.059324, 0.0630501, + -0.0271398, -0.021732, 0.056126, 0.0255872, 0.0172018, -0.0036939, -0.00765012, -0.0380807, + 0.028154, 0.0365638, 0.0154153, -0.0389189, -0.00990173, 0.012854, 0.0239918, 0.0617999, + 0.00838691, 0.0237335, 0.0890365, 0.043905, 0.0672928, 0.0101857, -0.022384, -0.00226531, + 0.00802148, -0.0030324, -0.0216086, 0.0359947, 0.0382351, 0.0844859, 0.0510145, 0.0127371 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p62(hatfit_yaw00_lev2_p62); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p62_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p63.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p63.mh new file mode 100755 index 0000000..5244e9c --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p63.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p63.mh: + +#ifndef stasm_hat_yaw00_lev2_p63_mh +#define stasm_hat_yaw00_lev2_p63_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p63(const double* const d) // d has 160 elements +{ + const double intercept = -0.423857; + const double coef[160] = + { + 0.0265549, -0.0276044, -0.00370968, -0.0118707, -0.00882112, -0.0246113, -0.0467704, 0.0199824, + -0.00186678, 0.0315145, -0.000559825, 0.00730218, 0.0767914, 0.00480617, -0.0305773, -0.00495591, + -0.00544638, -0.0269742, -0.00591436, -0.000756903, 0.0649644, -0.0157527, 0.00517219, 0.0190719, + -0.00839473, -0.0469533, -0.0418069, -0.0369397, -0.0190076, -0.0324, -0.0165552, 0.0149198, + -0.00471751, 0.0171046, 0.000668457, -0.0698986, -0.0619992, -0.0615341, -0.12642, 0.0252094, + -0.0435028, 0.043545, 0.0441414, 0.0306194, 0.00830911, -0.00160527, 0.0788639, -0.022395, + 0.0282649, 0.0525967, 0.0219707, 0.0154664, -0.0297831, 0.0328373, 0.0345584, -0.0153494, + 0.00618624, 0.0107224, 0.0286507, 0.0758012, 0.00679737, 0.0580987, 0.0755779, -0.0314715, + 0.0216487, 0.00472771, 0.0206649, 0.0615916, -0.00126626, 0.0549339, 0.0545175, -0.0178235, + 0.00250801, -0.0135117, 0.0126693, 0.0254024, -0.0119378, -0.0245614, 0.0872058, -0.061571, + -0.0144706, -0.0139933, 0.0138068, -0.00669542, -0.000147116, 0.0109306, 0.0232728, 0.0236077, + -0.00255406, -0.0218093, -0.0178081, -0.0399348, -0.0541426, 0.0179802, 0.000382026, -0.080307, + -0.0241902, -0.0399402, -0.00650599, -0.0171668, -0.0288674, -0.0543343, 0.00140922, -0.0267591, + -0.0219663, -0.0134303, -0.0101318, -0.0399241, 0.00262961, -0.000841279, 0.000310534, 0.0195679, + 0.00601974, 0.00463629, 0.0528312, 0.0334954, 0.0483439, 0.0173347, 0.0736588, 0.0803597, + 0.0245546, 0.00187879, 0.0513636, -0.0410876, -0.0243436, 0.00211205, 0.0302069, 0.0518358, + 0.000846981, 0.0155087, 0.0579027, -0.000698564, 0.0446464, 0.00159007, -0.00940185, 0.0313693, + 0.0356152, 0.00868856, 0.0632068, 0.0260316, 0.0439695, 0.0391611, -0.00809624, 0.0123908, + 0.0122246, 0.0118871, -0.000141026, 0.0285526, 0.013631, 0.0368892, 0.0312239, -0.0214874, + -0.0506746, -0.00442504, -0.0284878, -0.000463468, 0.0254501, 0.0404056, 0.000673732, 0.0570073 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p63(hatfit_yaw00_lev2_p63); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p63_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p64.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p64.mh new file mode 100755 index 0000000..c42863d --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p64.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p64.mh: + +#ifndef stasm_hat_yaw00_lev2_p64_mh +#define stasm_hat_yaw00_lev2_p64_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p64(const double* const d) // d has 160 elements +{ + const double intercept = -0.318611; + const double coef[160] = + { + 0.0303392, -0.0338756, 0.0834237, 0.120868, 0.0812831, 0.0402208, 0.0340414, 0.00752149, + 0.0202789, -0.0293674, -0.0115149, -0.0100918, -0.0275825, -0.00502325, -0.0134966, 0.0249952, + -0.00173327, -0.0202851, -0.0188452, -0.00362694, -0.0342703, -0.0545043, -0.0315145, 0.0116079, + -0.0292766, -0.0238764, -0.043136, -0.0673906, -0.024928, -0.0381466, -0.0403704, -0.0131486, + -0.00476721, 0.0190162, -0.0253495, -0.035439, 0.0183347, -0.0346492, 0.0120401, 0.0775275, + -0.0580545, 0.0137694, -0.0451933, -0.0478655, -0.0560371, -0.0302546, 0.0278067, -0.0906249, + -0.00611261, 0.0136716, 0.0284031, 0.0141213, 0.0380981, 0.0211424, 0.061006, 0.0220357, + -0.0239319, 0.004601, 0.0116586, 0.00780832, 0.0126529, 0.0389716, 0.0619632, -0.0620037, + -1.6622e-05, 0.00529334, 0.0163925, 0.0575629, -0.0126739, 0.0293707, 0.0555329, -0.0340061, + -0.0492854, -0.0263342, -0.0230841, -0.00664351, -0.00307715, -0.0315079, -0.00801194, -0.0224053, + 0.0216491, -0.0340911, 0.0330381, -0.0138968, -0.0369097, -0.0292224, 0.00749071, -0.0717104, + 0.00193177, -0.0161945, -0.0172798, -0.0321503, -0.0400085, -0.0127888, -0.010172, 0.0146021, + 0.0102315, 0.0240944, 0.0175333, 0.0151656, 0.0321006, -0.00574093, -0.0279765, 0.0826356, + -0.0166594, 0.032607, 0.00456517, 0.0192567, 0.0363608, 0.0470817, 0.0494096, 0.0576953, + 0.0478303, 0.0388651, 0.0304998, 0.0556383, 0.06976, 0.0325026, 0.0548839, 0.0677554, + 0.0387995, 0.058294, 0.0845377, 0.0621987, 0.0602871, 0.100239, -0.032246, 0.0648524, + -0.00656602, 0.0129769, 0.0062775, 0.025612, 0.0493872, 0.0198563, 0.0228554, 0.0235844, + -0.0314601, 0.0076225, -0.013869, 0.00267554, -0.00261668, -0.026843, -7.51825e-05, -0.0290167, + -0.0213466, 0.0254961, -0.0551618, 0.000592905, -0.0348985, -0.00987818, -0.00998483, -0.000237291, + -0.0332162, 0.114249, 0.00864831, 0.00608068, 0.00960567, -0.00525184, -0.00263628, 0.0300145 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p64(hatfit_yaw00_lev2_p64); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p64_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p65.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p65.mh new file mode 100755 index 0000000..d220dc0 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p65.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p65.mh: + +#ifndef stasm_hat_yaw00_lev2_p65_mh +#define stasm_hat_yaw00_lev2_p65_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p65(const double* const d) // d has 160 elements +{ + const double intercept = -0.243987; + const double coef[160] = + { + -0.0349282, -0.0157765, -0.0086924, -0.00282699, -0.0149473, -0.0225539, 0.00811034, -0.0277787, + -0.0445545, -0.0268885, 0.00123814, 0.018723, 0.0215577, 0.00348647, 0.0432877, 0.015393, + -0.0146094, -0.0727512, -0.0167339, -0.00526844, 0.0124206, -0.0192743, -0.00112128, 0.0524325, + 0.0318377, -0.0210181, 0.0185195, 0.0107726, 0.00235686, -0.0229252, -0.0378398, 0.0122169, + 0.0648801, -0.0481284, -0.0225702, -0.016585, -0.0145166, 0.00342191, -0.0343923, 0.0447919, + 0.00730072, 0.00968041, 0.0132859, 0.025228, -0.0165621, 0.00393144, 0.0214046, 0.00439897, + 0.0515766, 0.105316, 0.0531057, 0.0329829, 0.00820431, 0.0454908, 0.0646219, 0.0528244, + 0.0913025, 0.116096, 0.00542359, 0.00230105, -0.00361529, 0.0339653, 0.0867848, 0.0887866, + 0.0249319, 0.0225997, -0.0341391, -0.0283439, -0.032192, -0.0270769, -0.0276354, -0.0278922, + -0.00167969, 0.031839, 0.0130776, 0.0513927, 0.0148874, -0.0333221, -0.0565927, -0.0919326, + -0.0481775, 0.00961148, 0.0369173, 0.0339856, 0.0305644, -0.0105843, -0.0406127, -0.0459686, + -0.0572706, -0.0102658, 0.006908, 0.024483, 0.0237157, 0.0174332, 0.00794934, -0.0169364, + -0.0855346, -0.0607299, -0.0165062, 0.0368585, 0.0678364, 0.0470307, 0.0111429, -0.0778053, + -0.0145917, -0.00644063, -8.66602e-05, 0.0483476, 0.0388019, 0.0390603, 0.0208508, -0.0057846, + 0.02632, 0.0177281, -0.0409234, -0.0488005, -0.00595819, 0.0191264, 0.0198247, 0.0079343, + 0.00294371, 0.0450466, -0.049365, -0.0611519, -0.0673944, 0.00661048, -0.0227719, -0.0129555, + 0.0390499, 0.0313589, -0.0183179, -0.027491, -0.0362773, -0.0336254, -0.0183198, 0.0135441, + 0.0478529, 0.0184543, 0.00221541, -0.0113542, -0.0103142, -0.0332987, -0.00890361, 0.00957642, + 0.035809, 0.00510408, 0.0259121, 0.00585391, 0.00227161, -0.00880785, 0.00959148, 0.0217641, + -0.00181733, -0.0159237, -0.00991204, -0.0155567, -0.00237713, 0.0162149, 0.0108071, 0.0235907 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p65(hatfit_yaw00_lev2_p65); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p65_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p66.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p66.mh new file mode 100755 index 0000000..d97f04b --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p66.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p66.mh: + +#ifndef stasm_hat_yaw00_lev2_p66_mh +#define stasm_hat_yaw00_lev2_p66_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p66(const double* const d) // d has 160 elements +{ + const double intercept = -0.0701518; + const double coef[160] = + { + -0.0708654, 0.00765122, -0.0479664, -0.0151742, -0.0449968, 0.0104616, 0.0187811, -0.111585, + -0.0537272, -0.0074824, 0.00745304, 0.0122481, 0.00990062, -0.0218072, 0.00427396, -0.0480915, + -0.0640504, -0.0264089, -0.0418814, 0.0102942, 0.00557185, 0.022444, 0.0205122, -0.0415472, + -0.000980233, 0.0081122, 0.0142478, 0.0312302, 0.0283258, 0.0249698, 0.0275674, -0.0121698, + 0.00328101, -0.0607017, -0.0547278, -0.00533866, -0.0167359, -0.0187817, 0.0308578, -0.0826227, + 0.0210649, -0.0401433, 0.0858922, -0.0162593, -0.0293997, -0.00709196, -0.0103385, -0.0348045, + 0.046604, 0.0130812, 0.0206067, 0.00890424, -0.0267464, -0.00939369, 0.0128553, -0.0132674, + 0.0038518, -0.00440902, 0.0568641, 0.0129008, -0.0236924, -0.0437552, 0.0106715, -0.00669881, + -0.0294986, -0.0368686, -0.0473002, -0.0190321, -0.0199637, -0.0099342, 0.00954593, 0.0244957, + -0.011637, 0.0395508, 0.0042163, 0.0441084, 0.0638421, 0.0394723, 0.103015, 0.156714, + 0.052255, 0.0621412, 0.0272445, 0.00398312, 0.0339932, 0.0758456, 0.0253288, 0.0927471, + 0.0252759, 0.00858632, -0.00436336, -0.000708602, 0.0080489, 0.0244064, -0.0327362, 0.0375689, + 0.0432853, 0.0704611, 0.0170734, 0.00734155, 0.00790755, 0.0196225, -0.0162497, 0.0689148, + -0.0052587, 0.0383359, 0.0450021, 0.0342107, 0.0244859, -0.0326178, -0.0691935, -0.0223194, + -0.0558986, 0.031864, -0.0243773, 0.0420224, 0.022056, 0.0248185, 0.0355769, 0.00639857, + -0.0372143, -0.0413475, 0.0206646, -0.0256079, 0.013142, 0.000549, 0.0656237, -0.0167369, + -0.00157571, -0.0133437, 0.0393268, 0.0442889, 0.023384, 0.0158681, -0.0211338, -0.0113463, + -0.0411466, -0.0306031, -0.0099946, -0.00577642, 0.0167192, 0.015533, -0.0201584, -0.0222372, + -0.0119031, -0.0196272, -0.0679993, -0.0403379, -0.0448462, -0.00325033, 0.0126336, 0.0200267, + -0.00218492, 0.0761284, 0.00536654, -0.045271, -0.0379694, -0.068879, -0.048176, -0.0235171 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p66(hatfit_yaw00_lev2_p66); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p66_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p67.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p67.mh new file mode 100755 index 0000000..f6cd06c --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p67.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p67.mh: + +#ifndef stasm_hat_yaw00_lev2_p67_mh +#define stasm_hat_yaw00_lev2_p67_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p67(const double* const d) // d has 160 elements +{ + const double intercept = -0.247596; + const double coef[160] = + { + -0.0736169, -0.0276127, -0.0110018, 0.0327689, 0.0417696, -0.0508686, 0.0518187, 0.0840511, + -0.0303886, -0.00991154, -0.0190655, 0.0268638, 0.0390148, -0.0306362, 0.00124625, 0.0292091, + -0.028384, 0.0154506, -0.0489238, -0.0292177, -0.0432419, 0.0237735, -0.00645516, -0.075781, + -0.0344447, 0.00795708, -0.0113362, 0.00375715, -0.0307709, 0.019674, 0.0208082, -0.0810644, + -0.0320321, -0.00306997, -0.0356069, -0.0101321, -0.0319446, -0.00480176, 0.0949859, -0.0169822, + -0.00113823, 0.00555259, 0.071154, -0.062097, -0.0217091, -0.0145069, 0.00738431, -0.0397669, + 0.01241, -0.0189924, 0.0300015, -0.0195862, -0.00475629, -0.0265258, 0.0166531, 0.0318153, + -0.00367116, -0.02759, 0.0188702, -0.0188599, -0.00399811, 0.0167034, -0.0182665, -0.0490339, + 0.0140556, -0.0226848, 0.0621946, 0.00136623, 0.0219617, -0.00417779, 0.00867766, 0.0167383, + 0.0303028, -0.0610571, -0.00157912, 0.00590548, -0.000679747, -0.0181829, 0.0759585, -0.0109324, + 0.103172, 0.0419958, 0.0377971, 0.0550718, 0.0372263, 0.0418955, 0.0177629, 0.105186, + 0.0102773, -0.0236646, 0.0132591, 0.0170306, 0.0274957, 0.0243854, -0.0133287, 0.00106572, + 0.0625944, 0.0669875, 0.0409219, -0.0185662, 0.0264258, -0.00204492, 0.0117916, 0.0869794, + 0.0293629, 0.0145125, -0.0270072, -0.029051, 0.00351191, 0.0514497, -0.0230748, -0.00405066, + 0.0308248, 0.0564195, 0.0713889, 0.0670879, 0.0589003, 0.0795609, -0.0235842, 0.0512964, + 0.0126223, -0.0347411, 0.0108369, -0.00844631, -0.0383972, -0.00864758, -0.0113566, -0.0264627, + -0.0568571, -0.026271, 0.0151984, -0.00574079, -0.0192334, -0.02782, 0.044097, -0.0414028, + -0.0366356, -0.0275175, -0.0127972, -0.0357274, -0.0439535, -0.0347405, 0.0295106, -0.0334166, + -0.0115584, -0.00484589, 0.0494478, 0.0215708, 0.0369365, 0.00632509, 0.029246, 0.0119853, + -0.0246275, -0.010441, -0.01384, -0.00788622, 0.00133374, 0.0109552, -0.0532666, 0.0105872 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p67(hatfit_yaw00_lev2_p67); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p67_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p68.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p68.mh new file mode 100755 index 0000000..4fbe40c --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p68.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p68.mh: + +#ifndef stasm_hat_yaw00_lev2_p68_mh +#define stasm_hat_yaw00_lev2_p68_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p68(const double* const d) // d has 160 elements +{ + const double intercept = -0.0757646; + const double coef[160] = + { + -0.00765739, 0.00768329, -0.0575099, -0.0516348, -0.0266656, -0.0500927, 0.0358745, -0.0175411, + 0.0177345, 0.0236582, -0.0120278, 0.00559529, -0.0201657, -0.030502, 0.054121, 0.0297531, + -0.0419598, -0.00731448, -0.0151526, -0.00912542, -0.0240267, -0.0837478, -0.0202523, -0.0256003, + -0.022269, 0.00466779, -0.00589252, 0.0435573, 0.0254818, -0.0237978, 0.0257976, 0.0146779, + -0.043373, -0.00708679, -0.0357599, -0.0156336, -0.0216445, -0.0389312, 0.0389291, 0.0233499, + -0.00632229, 0.000509776, -0.0435948, -0.0470262, -0.0667185, 0.0747328, 0.126893, -0.00129318, + -0.0321395, -0.00897225, -3.68053e-05, -0.0283675, -0.0115208, -0.0179474, 0.00675529, -0.00883719, + -0.00705335, 0.0316865, 0.0578501, -0.00771022, 0.0100425, -0.0355437, 0.00655766, -0.0165289, + -0.00349749, 0.0104534, 0.0685608, -0.0369772, 0.00639225, -0.0285923, -0.0259713, -0.00514401, + 0.00499322, -0.0696404, 0.0409068, -0.0124631, 0.00566939, 0.00741387, 0.0199054, 0.0279777, + 0.0304533, 0.0406592, -0.00748054, 0.0523836, 0.0196262, 0.0455741, -0.0128034, 0.0109261, + -0.00248401, 0.0177039, 0.0520706, 0.0980207, 0.0581796, 0.0613779, -0.0584795, -0.0338671, + 0.0320062, 0.000106168, 0.000814598, 0.0446986, 0.0337714, 0.0634353, -0.0129168, 0.04023, + 0.0377319, -0.00135489, -0.00272649, 0.019746, 0.00571683, 0.02824, 0.0143515, 0.0464345, + 0.0379201, -0.0171932, 0.0394895, 0.0366438, 0.0357272, 0.0660102, 0.00613955, 0.000755978, + -0.0498287, -0.00827933, -0.00564258, 0.0293193, -0.0132385, -0.0318905, -0.0579884, -0.0629771, + 0.0413162, 0.0205211, -0.0287987, -0.0527852, -0.0204785, -0.00947517, 0.0112812, 0.0552937, + 0.0302039, 0.0256271, 0.0032538, -0.0196052, -0.0411717, -0.023336, -0.00622439, 0.0119921, + -0.0111091, 0.0054059, 0.00325768, 0.0155701, -0.0202819, -0.0142514, -0.00104689, -0.0309015, + -0.0329345, -0.0311195, 0.00280669, -0.0246231, -0.0683577, -0.0298862, 0.0717735, -0.0271166 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p68(hatfit_yaw00_lev2_p68); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p68_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p69.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p69.mh new file mode 100755 index 0000000..43fede1 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p69.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p69.mh: + +#ifndef stasm_hat_yaw00_lev2_p69_mh +#define stasm_hat_yaw00_lev2_p69_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p69(const double* const d) // d has 160 elements +{ + const double intercept = -0.501654; + const double coef[160] = + { + 0.0230762, 0.013781, -0.00657445, 0.0471398, -0.0427199, 0.0616323, 0.0787647, -0.0205178, + 0.0283805, 0.00417323, -0.0299789, -0.00113931, 0.00442089, 0.0032871, 0.0688228, 0.0346765, + 0.0165321, -0.00414199, 0.0122695, -0.00732337, 0.0150011, -0.0245671, 0.0132475, 0.032327, + 0.000797509, -0.00988351, 0.051295, 0.0229001, 0.0359781, -0.0336637, -0.0108366, 0.0252209, + 0.020593, -0.052713, -0.00831198, -0.023326, 0.0160632, -0.00662693, 0.0392824, 0.0359511, + 0.0132203, 0.0843051, 0.0489842, 0.0283437, 0.0252406, -0.0132659, -0.00237541, 0.0296945, + -0.0310582, 0.0390671, 0.0513185, 0.063233, 0.0463622, 0.0295249, -0.046507, -0.0503186, + 0.00465255, 0.042021, 0.0377644, 0.0377952, 0.0454656, 0.0607733, 0.011305, 0.00291495, + 0.0162281, 0.0229597, 0.000801866, -0.0258597, -0.006601, 0.0314184, 0.0300617, 0.0221378, + 0.0353532, -0.0223414, 0.0576977, 0.0532616, 0.0339265, 0.0812579, 0.0746731, 0.0397337, + -0.0452784, -0.0296776, -0.00618464, -0.0518293, -0.0230095, -0.0246242, -0.0108614, -0.032008, + 0.0463778, -0.00181644, -0.011047, -0.0398095, -0.032624, -0.0271314, -0.0057484, 0.0243942, + 0.0450044, 0.00126629, -0.0208306, -0.000854032, -0.0459446, -0.0179491, 0.0195236, 0.023157, + 0.0121265, -0.00441669, -0.00206993, 0.0209117, -0.0164818, -0.0292706, 0.0150287, -0.0104449, + 8.88458e-05, -0.00480531, 0.0246249, 0.00735242, -0.0548231, -0.0298589, 0.00930757, -0.0227601, + -0.0147846, -0.00834553, 0.0140991, 0.0687771, 0.0127808, -0.0391709, -0.100938, -0.0643944, + 0.00304581, 0.0149064, -0.00979668, -0.00442815, 0.00117602, 0.0288025, 0.0130279, 0.0453444, + 0.00588069, 0.0113229, 0.0145629, -0.010143, 0.0273337, 0.00405032, -0.026315, 0.0255917, + -0.0205528, -0.0099725, -0.00149903, -0.00361405, 0.0109862, 0.0220806, 0.00492744, -0.0209835, + -0.0241067, -0.0574909, -0.0389412, -0.0288473, -0.0352359, -0.0309879, 0.133181, -0.0314818 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p69(hatfit_yaw00_lev2_p69); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p69_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p70.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p70.mh new file mode 100755 index 0000000..5e758c7 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p70.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p70.mh: + +#ifndef stasm_hat_yaw00_lev2_p70_mh +#define stasm_hat_yaw00_lev2_p70_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p70(const double* const d) // d has 160 elements +{ + const double intercept = -0.796744; + const double coef[160] = + { + 0.0341126, 0.030913, 0.0565538, -0.0217916, 0.0594326, -0.00177041, 0.0670565, 0.110014, + 0.0136715, -0.0211248, 0.0298438, -0.00643463, 0.0507008, 0.0165849, 0.00193834, 0.0198088, + 0.040878, -0.00468351, 0.0100448, -0.00929118, -0.00366385, 0.0370591, 0.0151456, -0.00610841, + -0.013336, -0.0204119, 0.0169284, 0.0136462, 0.0235074, 0.0580339, -0.0254044, -0.0406963, + 0.0457589, 0.000602063, 0.0289157, 0.0500932, 0.0437863, 0.0717904, 0.115542, 0.0436263, + 0.0597082, 0.04082, 0.0822951, 0.0789102, -0.0223879, 0.0168742, 0.00346895, -0.00116304, + 0.00827851, -0.0188379, 0.00784034, 0.0193207, 0.00303974, 0.0132664, 0.0323815, 0.0108335, + -0.000397366, 0.0480992, 0.0571615, -0.0306483, 0.0298595, -0.0114398, 0.00719362, 0.0230871, + 0.0337041, 0.0186319, 0.016356, -0.0379243, -0.0010245, 0.0157864, 0.039134, 0.0443413, + -0.00662945, 0.0302044, 0.100822, 0.0421849, 0.021755, 0.00721991, -0.0526274, -0.00401875, + 0.00745431, -0.0546156, -0.0483602, -0.0723921, -0.0346058, 0.00494108, 0.0417335, 0.038248, + -0.0521416, -0.0183956, 0.0329272, 0.00122424, -0.0210599, -0.0336885, -0.000733202, -0.0429939, + -0.0131328, -0.00134099, 0.00244619, -0.00476187, -0.0511824, 6.90332e-05, 0.0192196, 0.035143, + -0.0167092, -0.0203088, 0.0356238, 0.0305921, 0.0310917, -0.0159399, -0.00998229, -0.0332763, + -0.00396009, -0.0509041, -0.0438387, -0.0139841, 0.0156792, 0.0802788, -0.00387387, 0.0396491, + -0.0138537, 0.00411943, 0.0459761, 0.0705967, 0.0388752, -0.00499727, -0.0434178, -0.0411767, + 0.00068529, -0.0315149, -0.0276846, -0.0166414, 0.0211953, -0.0120308, 0.101158, -0.0236568, + 0.00511414, -0.00715396, 0.00110345, -0.0277911, 0.01183, -0.0440184, 0.065236, -0.0390393, + 0.0345616, 0.0270472, -0.0106751, -0.0168165, 0.00699347, 0.0236292, 0.0722466, 0.0388224, + 0.0165932, 0.0619228, 0.0400074, 0.00844104, -0.0458653, -0.0401251, -0.0834489, -0.053744 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p70(hatfit_yaw00_lev2_p70); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p70_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p71.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p71.mh new file mode 100755 index 0000000..aa708b4 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p71.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p71.mh: + +#ifndef stasm_hat_yaw00_lev2_p71_mh +#define stasm_hat_yaw00_lev2_p71_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p71(const double* const d) // d has 160 elements +{ + const double intercept = -0.228303; + const double coef[160] = + { + -0.017111, -0.022052, -0.00614923, -0.0357715, -0.0435176, 0.0448165, 0.0220894, -0.0516583, + 0.0108187, 0.00215221, 0.0254229, 0.0407787, -0.00456935, 0.00405667, -0.00742958, -0.0386631, + -0.015499, -0.00547458, -0.0352142, -0.0268172, 0.0305546, 0.0189814, 0.0391679, 0.0137124, + -0.0184416, 0.0157674, -0.0167993, -0.00814776, 0.0233144, 0.00835204, 0.0267862, 0.0261481, + -0.031253, 0.053105, 0.00506253, 0.0295576, 0.0810968, 0.000240087, 0.0685961, 0.0736698, + 0.0396325, -0.00192333, 0.0398411, -0.0224833, 0.0568153, 0.0653045, 0.0746592, 0.0545985, + 0.0476846, 0.0445793, 0.0128924, 0.0168234, 0.0199235, 0.00612228, 0.00681783, 0.0652892, + 0.0271855, 0.0683756, 0.0482958, 0.0264938, 0.0049733, -0.00396101, -0.0108081, 0.0179262, + -0.0120251, 0.0171102, 0.0621464, 0.0619762, 0.00706686, -0.0169642, -0.056881, -0.0319456, + 0.0173384, 0.0326166, 0.0196537, 0.024805, 0.0106165, 0.0307442, 0.0466129, 0.0408582, + -0.0466218, -0.00108609, 0.0448339, -0.0176936, -0.00619008, -0.00752668, -0.00836617, -0.0182072, + -0.0185282, -0.0351142, 0.0156919, 0.0410905, 0.028794, 0.0296952, -0.0019478, -0.00737658, + -0.0497287, -0.0804701, -0.028536, 0.00617823, 0.0208016, 0.0122223, -0.0116624, -0.0289944, + -0.0185809, -0.00769248, -0.049657, -0.0105338, -0.0136338, -0.0318718, -0.00579806, -0.0141414, + -0.0423346, 0.00531431, -0.029213, -0.00106899, -0.0104407, -0.0311609, 0.0452972, -0.0288284, + -0.000861945, -0.0264658, -0.060526, -0.0221315, -0.0058577, -0.00805579, 0.126322, 0.0137975, + 0.0286371, 0.0189514, 0.0126194, 0.0137927, -3.51434e-05, 0.0184098, -0.0200559, -0.00883375, + 0.0122228, 0.0290598, 0.0135307, -0.0147906, -0.0471683, -0.000711908, -0.0279763, -0.00207475, + -0.0208812, 0.00633825, -0.0057985, -0.0346104, -0.0503356, -0.00016977, -0.00822498, -0.00219097, + 0.00821315, 0.0429233, -0.0253353, -0.049237, -0.037318, -0.0431846, -0.104914, -0.0377205 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p71(hatfit_yaw00_lev2_p71); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p71_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p72.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p72.mh new file mode 100755 index 0000000..b9d96a4 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p72.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p72.mh: + +#ifndef stasm_hat_yaw00_lev2_p72_mh +#define stasm_hat_yaw00_lev2_p72_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p72(const double* const d) // d has 160 elements +{ + const double intercept = 0.0989027; + const double coef[160] = + { + 0.0353764, 0.0277736, 0.04861, 0.04112, 0.0318701, 0.0638361, 0.0247897, 0.0240266, + -0.029073, 0.0102228, 0.0311509, 0.0575003, 0.0473831, -0.0324984, -0.0463012, -0.0206577, + -0.037861, 0.0584556, 0.000544823, 0.0446031, 0.0441769, 0.0171549, 0.0071004, -0.00858692, + -0.0259733, 0.0649289, 0.0597177, 0.0379904, 0.060508, 0.0483501, 0.0606923, 0.0483977, + 0.0661255, 0.0586531, -0.0390427, -0.0124601, 0.00511991, 0.00752953, 0.0470815, 0.0899895, + -0.0509386, -0.0158875, 0.0177365, 0.0503958, 0.0272851, 0.00163617, -0.0573846, -0.032114, + -0.0140886, -0.0360239, -0.0132793, -0.0438912, -0.0533735, -0.0178983, 0.00808064, -0.0037729, + 0.00674255, 0.00883555, -0.0407354, -0.0373997, -0.0647183, -0.048717, -0.0122859, -0.0419641, + -0.0126266, -0.0328703, -0.012028, -0.0100037, -0.0112557, -0.0387492, 0.0066805, -0.0281232, + -0.0138208, -0.0198197, 0.00231299, 0.0379716, 0.0331442, 0.00275953, 0.0226216, 0.0050906, + 0.0396779, 0.00572949, 0.0354563, 0.0213916, -0.0189767, 0.0629411, 0.0430068, -0.001415, + 0.00446211, 0.0394156, -0.02176, -0.0226459, -0.016732, 0.0233161, 0.000864116, 0.00640479, + 0.00623369, 0.0189184, -0.0344753, -0.042294, -0.0352279, -0.00984565, -0.0545616, -0.00547315, + 0.00238742, 0.00755953, -0.00149086, 0.00472792, -0.0127927, 0.0140774, -0.0201612, -0.00222445, + 0.00755303, -0.0167544, -0.0126289, 0.010009, -0.0270465, 0.0279078, 0.0155872, 0.0209598, + -0.0326684, 0.061328, 0.0523704, -0.00903776, -0.0186215, -0.0228648, -0.000452808, 0.0277466, + -0.0358783, -0.0374315, -0.0188875, -0.0180433, -0.0288677, -0.0363021, -0.0697074, -0.0256992, + -0.0105341, -0.000758809, -0.019205, 0.00468453, 0.0167659, -0.0189989, -0.00735232, -0.0126924, + -0.0193627, 0.00313296, -0.0349624, -0.00599344, -0.0143699, -0.0147435, -0.00646707, -0.0132372, + 0.00929204, -0.0217543, -0.00755049, -0.0319638, 0.0274715, -0.0140345, -0.0298341, 0.000378985 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p72(hatfit_yaw00_lev2_p72); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p72_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p73.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p73.mh new file mode 100755 index 0000000..8d96d83 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p73.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p73.mh: + +#ifndef stasm_hat_yaw00_lev2_p73_mh +#define stasm_hat_yaw00_lev2_p73_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p73(const double* const d) // d has 160 elements +{ + const double intercept = 0.2272; + const double coef[160] = + { + 0.0255893, 0.0398401, 0.0722409, -0.0445891, -0.00470297, 0.0199131, 0.0165382, 0.0502811, + -0.00357428, 0.0267947, 0.0298553, 0.0338194, 0.0115309, 0.0525491, -0.0585943, 0.0168286, + -0.0344251, -0.0135233, 0.00966544, -0.00890617, 0.0219983, 0.0400588, -0.0679062, -0.0236777, + -0.0311951, -0.00646702, -0.00432313, 0.0206786, 0.000559952, 0.0152661, -0.0226117, -0.013479, + -0.0105264, 0.068243, 0.0255499, 0.0686949, 0.0348068, 0.00315771, 0.022277, -0.0270726, + -0.0638634, -0.0465897, 0.000870173, -0.00499389, 0.0135916, -0.0406264, 0.134036, -0.0508613, + 0.0164918, -0.0227687, 0.0123077, 0.0246532, 0.0388393, 0.0162069, 0.0206663, -0.0122329, + 0.0299857, -0.00969451, 0.012411, 0.029231, 2.48269e-05, 0.0192934, 0.0275271, 0.0159747, + 0.00547446, -0.00790329, -0.0158997, -0.0171256, -0.0474391, -0.0183324, 0.00562775, -0.014244, + 0.00208121, 0.014199, -0.0392767, -0.0390247, -0.0773608, -0.0353364, -0.059764, -0.00843707, + 0.0343853, 0.0210175, 0.0667703, -0.0188759, 0.00741526, -0.0248253, 0.0236731, 0.0150207, + 0.02456, 0.011471, -0.00712584, -0.00760106, 0.00412152, -0.00145081, -0.00908071, 0.0340654, + -0.0160172, 0.0134107, -0.033796, -0.0640794, -0.0423164, -0.0309958, -0.0195926, 0.0046965, + -0.0302013, 0.00814257, 0.0109026, -0.00412582, -0.0214709, -0.00833786, -0.0445951, 0.00290581, + -0.0485127, 0.0372803, -0.0382319, -0.037839, -0.0146938, -0.0105336, -0.0543978, -0.0349175, + -0.0338447, -0.0119121, 0.0375504, -0.070027, -0.031661, -0.0501551, -0.0756655, -0.0274004, + 0.0166032, -0.00992744, 0.00897534, 0.0151133, 0.0147912, 0.0192464, 0.0249975, 0.000497542, + -0.0298722, -0.0303016, -0.0064489, 0.0242609, 0.00872472, 0.0181461, -0.00119551, 0.00268649, + -0.022466, -0.00770383, 0.00493488, 0.0351058, 0.0112933, -0.0113295, -0.0163328, -0.00654885, + -0.00769511, -0.00613724, -0.0214477, 0.0156502, 0.00151531, -0.0105068, -0.0139874, -0.00132222 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p73(hatfit_yaw00_lev2_p73); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p73_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p74.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p74.mh new file mode 100755 index 0000000..84e0683 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p74.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p74.mh: + +#ifndef stasm_hat_yaw00_lev2_p74_mh +#define stasm_hat_yaw00_lev2_p74_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p74(const double* const d) // d has 160 elements +{ + const double intercept = 0.220837; + const double coef[160] = + { + 0.0997616, 0.0125493, 0.0805498, 0.0505776, 0.0241363, -0.0158419, -0.00138413, 0.122373, + -0.0548679, -0.0388266, -0.0205136, 0.00769371, -0.0244587, -0.00259736, -0.0334081, -0.0375006, + -0.000879399, 0.0375804, 0.022773, -0.0364326, -0.0197282, -0.0116901, -0.0067975, 0.0542848, + -0.00496367, 0.00205504, 0.00612758, -0.0245926, -0.00805552, 0.0306298, -0.0388553, -0.00607397, + -0.0344556, 0.00688398, 0.0726518, 0.0611777, 0.0524567, 0.133079, -0.0805806, -0.0304452, + 0.0178677, 0.0146661, -0.0404539, -0.0564941, -0.0251524, -0.00790241, 0.0491951, 0.0209929, + -0.0179925, -0.0133809, 0.0486278, -0.00252625, 0.00212989, -0.0610684, 0.061689, -0.0801673, + -0.0163816, -0.0372453, 0.00362735, -0.0162172, 0.00727025, -0.0274276, 0.0750418, -0.045223, + -0.000489668, -0.00779798, 0.0240939, 0.0361449, 0.0502159, 0.00077348, 0.0667484, -0.0117676, + 0.0332801, 0.00466945, -0.0202147, 0.00608668, -0.000506863, -0.00459854, -0.00812146, 0.0152727, + -0.0425586, -0.0802285, 0.00159375, 0.0558017, -0.00765114, 0.00755221, -0.0865962, -0.0550125, + -0.00236795, -0.020008, 0.0172968, -0.0217609, -0.00662207, -0.00394266, 0.0197515, 0.00845607, + 0.00294191, -0.015641, 0.0306525, -0.0346056, 0.00200094, -0.0243319, -0.0388526, -0.0104735, + 0.0332378, 0.00964622, 0.015311, -0.031667, -0.0026931, -0.0167854, 0.0413121, 0.0305034, + -0.0497629, 0.0223061, -0.0173011, -0.0670779, -0.0373291, -0.0491551, -0.0999961, -0.0247411, + -0.00199409, 0.00331581, -0.00190104, 0.0357631, -0.0189724, -0.0121322, -0.0489254, -0.00806714, + -0.00593859, -0.0420058, -0.00393673, -0.0122627, -0.02622, -0.00047707, 0.00341348, -0.0080613, + -0.0147898, 0.00988879, 0.0294775, -0.025466, -0.0314937, -0.0253052, -0.00229925, -0.0165381, + 0.0120794, -0.000878892, -0.0134628, -0.0299334, -0.000286509, 0.0341773, 0.00942387, 0.01636, + 0.00437037, 0.0138162, -0.00189742, 0.0512054, 0.0145081, -0.0253149, -0.0284283, -0.000407491 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p74(hatfit_yaw00_lev2_p74); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p74_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p75.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p75.mh new file mode 100755 index 0000000..1ff5063 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p75.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p75.mh: + +#ifndef stasm_hat_yaw00_lev2_p75_mh +#define stasm_hat_yaw00_lev2_p75_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p75(const double* const d) // d has 160 elements +{ + const double intercept = 0.143169; + const double coef[160] = + { + 0.00500872, 0.0788672, 0.0830198, 0.0347642, -0.0187663, -0.0351558, -0.0415346, 0.0104833, + 0.0498593, -0.0189021, -0.00322631, 0.0243254, 0.0296824, 0.0101936, -0.0423976, 0.0253372, + 0.0264438, 0.0109294, 0.00481503, 0.0401891, 0.00785275, 0.0183256, -0.0359458, 0.0222586, + 0.0156764, -0.0259935, 0.0140222, 0.032216, 0.0129041, 0.0165035, 0.0218827, 0.0255931, + -0.000384394, 0.00497098, 0.0593127, 0.0308721, 0.00392444, 0.044366, -0.00035291, -0.00172973, + -0.030345, -0.0104249, -0.0251774, -0.0307689, -0.0132279, 0.0105106, -0.0441885, -0.00590676, + 0.0163224, 0.0580328, 0.0210897, -0.0185961, -0.0262614, 0.0140714, 0.00418796, 0.0559395, + 0.0287848, 0.0198064, 0.0171609, -0.0322414, -0.0331728, -0.0154635, 0.0338829, 0.00292881, + -0.0252734, -0.00853298, -0.011739, -0.00645236, -0.021923, -0.0136072, 0.0177093, -0.0464155, + 0.00499591, -0.0300743, 0.000695989, -0.0423862, -0.0442462, -0.0612181, 0.137093, -0.0412476, + -0.0647362, -0.0389046, 0.00246774, 0.10443, 0.00126402, -0.0269946, -0.0753447, -0.0576863, + -0.0234948, -0.05018, -0.0350569, 0.045086, -0.00129855, 0.0252666, -0.0227364, 0.00152243, + -0.0214684, -0.0347765, -0.0292191, 0.0101462, 0.00576992, 0.034891, -0.0286404, 0.0115731, + 0.0166064, -0.00540362, 0.0170785, -0.000730702, 0.0076479, -0.00579039, 0.000993971, -0.00161051, + -0.0243942, -0.0351045, 0.0418538, -0.0097826, 0.0250171, 0.000271145, 0.0154932, -0.0324622, + 0.0201201, 0.0511685, -0.0276986, -0.0137756, -0.0753459, -0.0498984, -0.0279214, -0.0080389, + 0.0279161, 0.0353108, -0.0087214, -0.00518912, -0.019555, -0.0113267, 0.00225945, 0.00182463, + -0.00303256, -0.009005, -0.0044915, 0.00135642, -0.0402617, -0.000805723, 0.00377508, -0.00364319, + -0.017734, -0.0284965, 0.0101866, 0.0294709, -0.00494104, 0.00568477, 0.0026554, 0.0024603, + 0.0331129, -0.000183846, 0.0391978, -0.0503583, -0.0647342, -0.0203285, -0.071913, -0.00292174 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p75(hatfit_yaw00_lev2_p75); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p75_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p76.mh b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p76.mh new file mode 100755 index 0000000..e63b8ca --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hat/hat_yaw00_lev2_p76.mh @@ -0,0 +1,54 @@ +// hat_yaw00_lev2_p76.mh: + +#ifndef stasm_hat_yaw00_lev2_p76_mh +#define stasm_hat_yaw00_lev2_p76_mh + +namespace stasm { + +// tasm -V1 /b/stasm/train/conf/tasm_muct77.conf +// static const int EYEMOUTH_DIST = 100; +// static const int FACESCALE = 1 +// static const int PYRSCALE = 1 +// static const double SIGMOIDSCALE = 0 +// static const double PYR_RATIO = 2; +// static const int NEGTRAIN_SEED = 2013; +// static const int HAT_PATCH_WIDTH = 19; +// static const int HAT_PATCH_WIDTH_ADJ = -6; +// static const int GRIDHEIGHT = 4; +// static const int GRIDWIDTH = 5; +// static const int BINS_PER_HIST = 8; +// static const double WINDOW_SCALE = 0.5; + +static double hatfit_yaw00_lev2_p76(const double* const d) // d has 160 elements +{ + const double intercept = -0.201853; + const double coef[160] = + { + 0.0611373, 0.0315796, 0.0567915, 0.106684, 0.0484192, 0.0674777, 0.0757485, 0.0605822, + 0.0186337, 0.0519524, 0.0346602, 0.0198745, -0.00704912, -0.00303739, 0.0450818, 0.0361972, + 0.0369279, 0.091747, 0.0269727, 0.0391098, -0.00623467, -0.00886847, -0.0219807, 0.00198184, + -0.00639586, 0.0351891, 0.0215669, 0.0166585, 0.0285714, -0.00488696, -0.0227643, -0.0313198, + 0.0481887, 0.021827, 0.0344451, 0.0295356, 0.0218445, 0.0148926, 0.0491293, 0.0874688, + -0.0506854, 0.00908012, -0.0301636, -0.020028, -0.0276748, -0.0438808, -0.0051665, -0.0169528, + -0.04442, -0.0557306, -0.0222959, -0.0149306, 0.0132545, -0.0284669, -0.0162358, -0.0420221, + -0.0273391, -0.0344512, 0.00447293, -0.0428183, -0.0259566, -0.027002, -0.00397243, 0.00140603, + 0.0180769, 0.0192412, -0.00879481, -0.0152303, -0.0131571, -0.0139515, -0.0280759, 0.0147447, + 0.0135716, 0.0181163, 0.0118787, 0.0380173, -0.0208318, -0.00114229, 0.00245865, -0.00468111, + 0.00239062, -0.0172136, 0.0122535, -0.0113478, 0.0467641, 0.0450793, 0.025304, 0.0200704, + -0.00336887, -0.0417958, -0.0106864, 0.0015939, 0.0052554, 4.45126e-05, -0.043915, -0.0132575, + 0.00779591, 0.0124207, -0.00729038, 0.0235562, 0.0188436, 0.0162366, -0.0049948, 0.0219917, + 0.00685187, 0.00962004, 0.0242144, -0.0208656, -0.00332951, 0.0194852, -0.00885252, 0.0384181, + 0.0336081, 0.0232335, 0.0185163, -0.00383684, 0.0050504, 0.000545654, 0.0614317, 0.0711241, + 0.00410444, -0.00721999, -0.0234826, -0.00556213, -0.00222316, -0.0218519, -0.0229695, -0.0315578, + 0.00101129, 0.00344464, -0.0110083, -0.00632637, -0.0111474, -0.00212928, 0.0064592, -0.00594809, + -0.0431056, -0.0271004, -0.0278623, 0.0168796, -0.0128066, -0.0357533, -0.0304638, -0.0240973, + -0.0122436, 0.0135754, -0.0410427, 0.0175618, -0.036486, -0.00465138, -0.0283021, -0.0328289, + -0.019626, -0.0317221, 0.0607035, 0.0916186, -0.0109209, 0.0271553, -0.00350397, -0.0121741 + }; + return linmod(d, intercept, coef, 160); +} + +static const HatDescMod hat_yaw00_lev2_p76(hatfit_yaw00_lev2_p76); + +} // namespace stasm +#endif // stasm_hat_yaw00_lev2_p76_mh diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/hatdesc.h b/3rdparty/stasm4.0.0/stasm/stasm/include/hatdesc.h new file mode 100755 index 0000000..5b0a02f --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/hatdesc.h @@ -0,0 +1,72 @@ +// hatdesc.h: Model for HAT descriptors +// This does a search using the descriptors from hat.cpp. +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_HATPATCH_H +#define STASM_HATPATCH_H + +#include "misc.h" +#include "hat.h" +#include "basedesc.h" + +namespace stasm +{ +static const int HAT_MAX_OFFSET = 4; // search grid +-4 pixs from current posn + +static const int HAT_SEARCH_RESOL = 2; // search resolution, search every 2nd pixel + +// Following params must match those used for generating the HAT +// descriptors used to generate the HAT models during training. + +static const int HAT_PATCH_WIDTH = 9*2+1; + // HAT patch is 19 x 19 at pyr lev 0 + +static const int HAT_PATCH_WIDTH_ADJ = -6; + // grid gets smaller for smaller pyr levs + +static const int HAT_START_LEV = 2; // HAT descriptors are for pyr levs 0...2 + // so no need for Hat::Init_ at pyr lev 3 + +// define HatFit: a pointer to a func for measuring fit of HAT descriptor +typedef double(*HatFit)(const double* const); + +Hat InitHatLevData( // init the global HAT data needed for this pyr level + const Image& img, // in + int ilev); // in: pyramid level, 0 is full size + +VEC HatDesc( // used only during training new models + double x, // in + double y); // in + +void HatDescSearch( // search in a grid around the current landmark + double& x, // io: (in: old posn of landmark, out: new posn) + double& y, // io + const HatFit hatfit, // in: func to estimate descriptor match + const Hat &hat, + StasmHash &hash); + +class HatDescMod: public BaseDescMod +{ +public: + virtual void DescSearch_(double& x, double& y, // io + const Image&, const Shape&, // in + int, int, const Hat &hat, StasmHash &hash) const // in + { + HatDescSearch(x, y, hatfit_, hat, hash); + } + + HatDescMod(const HatFit hatfit) // constructor + : hatfit_(hatfit) + { + } + +private: + HatFit const hatfit_; // func to estimate HAT descriptor match + + DISALLOW_COPY_AND_ASSIGN(HatDescMod); + +}; // end class HatDescMod + +} // namespace stasm +#endif // STASM_HATPATCH_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/initasm.h b/3rdparty/stasm4.0.0/stasm/stasm/include/initasm.h new file mode 100755 index 0000000..9485c67 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/initasm.h @@ -0,0 +1,17 @@ +// initasm.h: initialize the ASM model +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_INITASM_H +#define STASM_INITASM_H + +#include "asm.h" + +namespace stasm +{ +void InitMods( + vec_Mod& mods, // out: ASM model (only one model in this version of Stasm) + const char* datadir); // in: directory of face detector files + +} // namespace stasm +#endif // STASM_INITASM_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/landmarks.h b/3rdparty/stasm4.0.0/stasm/stasm/include/landmarks.h new file mode 100755 index 0000000..c750706 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/landmarks.h @@ -0,0 +1,45 @@ +// landmarks.h: code for manipulating landmarks +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_LANDMARKS_H +#define STASM_LANDMARKS_H + +#include "misc.h" +#include "stasm_lib.h" + +namespace stasm +{ +struct LANDMARK_INFO // landmark information +{ + int partner; // symmetrical partner point, -1 means no partner + + int prev, next; // previous and next point + // special val -1 means prev=current-1 and next=current+1 + // see Milborrow master's thesis Section 5.4.8 "Whisker Directions" + + double weight; // weight of landmark relative to others (for shape mod) + + unsigned bits; // used only during training (AT_Glasses, etc.) +}; + +#include "landtab_muct77.h" // MUCT 77 point shapes + +double MeanPoint( + const Shape& shape, // in + int ipoint1, // in + int ipoint2, // in + int ix); // in: IX or IY + +void PrevAndNextLandmarks( + int& prev, // out + int& next, // out + int ipoint, // in + const Shape& shape); // in + +Shape FlipShape( // flip shape horizontally + const Shape& shape, // in + int imgwidth); // in + +} // namespace stasm +#endif // STASM_LANDMARKS_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/landtab_muct77.h b/3rdparty/stasm4.0.0/stasm/stasm/include/landtab_muct77.h new file mode 100755 index 0000000..384dfba --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/landtab_muct77.h @@ -0,0 +1,94 @@ +// landtab_muct77.h: definitions for MUCT 77 point shapes +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_LANDTAB_MUCT77_H +#define STASM_LANDTAB_MUCT77_H + +#include "atface.h" + +// Note that the AT_Hat bit is ignored if pyr lev > HAT_START_LEV + +static const LANDMARK_INFO LANDMARK_INFO_TAB[77] = // stasm77 points +{ +// par pre next weight bits + { 12, 1, 30, 1., AT_Beard|AT_Glasses }, // 00 L_LTemple + { 11, -1, -1, 1., AT_Beard|AT_Glasses }, // 01 L_LJaw01 + { 10, -1, -1, 1., AT_Beard }, // 02 L_LJawNoseline + { 9, -1, -1, 1., AT_Beard }, // 03 L_LJawMouthline + { 8, -1, -1, 1., AT_Beard }, // 04 L_LJaw04 + { 7, -1, -1, 1., AT_Beard }, // 05 L_LJaw05 + { -1, -1, -1, 1., AT_Beard }, // 06 L_CTipOfChin + { 5, -1, -1, 1., AT_Beard }, // 07 L_RJaw07 + { 4, -1, -1, 1., AT_Beard }, // 08 L_RJaw08 + { 3, -1, -1, 1., AT_Beard }, // 09 L_RJawMouthline + { 2, -1, -1, 1., AT_Beard }, // 10 L_RJawNoseline + { 1, -1, -1, 1., AT_Beard|AT_Glasses }, // 11 L_RJaw11 + { 0, 11, 40, 1., AT_Beard|AT_Glasses }, // 12 L_RTemple + { 15, 12, 14, 0., 0 }, // 13 L_RForehead point is virtually useless + { -1, -1, -1, 0., 0 }, // 14 L_CForehead point is virtually useless + { 13, 0, 14, 0., 0 }, // 15 L_LForehead point is virtually useless + { 23, 17, 21, 0., AT_Glasses|AT_Hat }, // 16 L_LEyebrowTopInner + { 24, -1, -1, 0., AT_Glasses|AT_Hat }, // 17 L_LEyebrowTopOuter + { 25, 0, 17, 0., AT_Glasses|AT_Hat }, // 18 L_LEyebrowOuter + { 26, -1, -1, 0., AT_Glasses|AT_Hat }, // 19 L_LEyebrowBotOuter + { 27, 19, 21, 0., AT_Glasses|AT_Hat }, // 20 L_LEyebrowBotInner + { 22, 1, 11, 0., AT_Glasses|AT_Hat }, // 21 L_LEyebrowInner + { 21, 1, 11, 0., AT_Glasses|AT_Hat }, // 22 L_REyebrowInner + { 16, 22, 24, 0., AT_Glasses|AT_Hat }, // 23 L_REyebrowTopInner + { 17, -1, -1, 0., AT_Glasses|AT_Hat }, // 24 L_REyebrowTopOuter + { 18, 12, 24, 0., AT_Glasses|AT_Hat }, // 25 L_REyebrowOuter + { 19, -1, -1, 0., AT_Glasses|AT_Hat }, // 26 L_REyebrowBotOuter + { 20, 22, 26, 0., AT_Glasses|AT_Hat }, // 27 L_REyebrowBotInner + { 29, 26, 39, 1., AT_Glasses|AT_Eye|AT_Hat }, // 28 L_REyelid + { 28, 19, 38, 1., AT_Glasses|AT_Eye|AT_Hat }, // 29 L_LEyelid + { 40, 32, 36, 1., AT_Glasses|AT_Eye|AT_Hat }, // 30 L_LEyeInner + { 41, -1, -1, 1., AT_Glasses|AT_Eye|AT_Hat }, // 31 L_LEye31 + { 42, -1, -1, 1., AT_Glasses|AT_Eye|AT_Hat }, // 32 L_LEyeTop + { 43, -1, -1, 1., AT_Glasses|AT_Eye|AT_Hat }, // 33 L_LEye33 + { 44, 32, 36, 1., AT_Glasses|AT_Eye|AT_Hat }, // 34 L_LEyeOuter + { 45, -1, -1, 1., AT_Glasses|AT_Eye|AT_Hat }, // 35 L_LEye35 + { 46, -1, -1, 1., AT_Glasses|AT_Eye|AT_Hat }, // 36 L_LEyeBot + { 47, 30, 36, 1., AT_Glasses|AT_Eye|AT_Hat }, // 37 L_LEye37 + { 39, 34, 30, 1., AT_Glasses|AT_Eye|AT_Hat }, // 38 L_LPupil + { 38, 44, 40, 1., AT_Glasses|AT_Eye|AT_Hat }, // 39 L_RPupil + { 30, 42, 46, 1., AT_Glasses|AT_Eye|AT_Hat }, // 40 L_REyeInner + { 31, -1, -1, 1., AT_Glasses|AT_Eye|AT_Hat }, // 41 L_REye41 + { 32, -1, -1, 1., AT_Glasses|AT_Eye|AT_Hat }, // 42 L_REyeTop + { 33, -1, -1, 1., AT_Glasses|AT_Eye|AT_Hat }, // 43 L_REye43 + { 34, 42, 46, 1., AT_Glasses|AT_Eye|AT_Hat }, // 44 L_REyeOuter + { 35, -1, -1, 1., AT_Glasses|AT_Eye|AT_Hat }, // 45 L_REye45 + { 36, -1, -1, 1., AT_Glasses|AT_Eye|AT_Hat }, // 46 L_REyeBot + { 37, 40, 46, 1., AT_Glasses|AT_Eye|AT_Hat }, // 47 L_REye47 + { 50, 40, 62, 1., AT_Glasses|AT_Hat }, // 48 L_RNoseMid + { -1, 1, 11, 1., AT_Glasses|AT_Hat }, // 49 L_CNoseMid + { 48, 30, 62, 1., AT_Glasses|AT_Hat }, // 50 L_LNoseMid + { 53, 1, 11, 1., AT_Hat }, // 51 L_LNostrilTop + { -1, 1, 11, 1., AT_Hat }, // 52 L_CNoseTip + { 51, 1, 11, 1., AT_Hat }, // 53 L_RNostrilTop + { 58, 40, 62, 1., AT_Hat }, // 54 L_RNoseSide + { 57, 1, 11, 1., AT_Hat }, // 55 L_RNostrilBot + { -1, -1, -1, 1., AT_Hat }, // 56 L_CNoseBase + { 55, 1, 11, 1., AT_Mustache|AT_Hat }, // 57 L_LNostrilBot + { 54, 30, 62, 1., AT_Mustache|AT_Hat }, // 58 L_LNoseSide + { 65, 61, 74, 1., AT_Mustache|AT_Hat }, // 59 L_LMouthCorner + { 64, 59, 61, 1., AT_Mustache|AT_Hat }, // 60 L_LMouth60 + { 63, -1, -1, 1., AT_Mustache|AT_Hat }, // 61 L_LMouthCupid + { -1, -1, -1, 1., AT_Mustache|AT_Hat }, // 62 L_CTopOfTopLip + { 61, -1, -1, 1., AT_Mustache|AT_Hat }, // 63 L_RMouthCupid + { 60, 63, 65, 1., AT_Mustache|AT_Hat }, // 64 L_RMouth64 + { 59, 63, 74, 1., AT_Mustache|AT_Hat }, // 65 L_RMouthCorner + { 68, 65, 67, 1., AT_Hat }, // 66 L_RMouth66 + { -1, -1, -1, 1., AT_Hat }, // 67 L_CBotOfTopLip + { 66, 59, 67, 1., AT_Hat }, // 68 L_LMouth68 + { 71, 59, 70, 1., AT_Hat }, // 69 L_LMouth69 + { -1, -1, -1, 1., AT_Hat }, // 70 L_CTopOfBotLip + { 69, 65, 70, 1., AT_Hat }, // 71 L_RMouth71 + { 76, 65, 73, 1., AT_Hat }, // 72 L_RMouth72 + { 75, 72, 74, 1., AT_Hat }, // 73 L_RMouth73 + { -1, -1, -1, 1., AT_Hat }, // 74 L_CBotOfBotLip + { 73, 74, 76, 1., AT_Hat }, // 75 L_LMouth75 + { 72, 59, 75, 1., AT_Hat }, // 76 L_LMouth76 +}; + +#endif // STASM_LANDTAB_MUCT77_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/misc.h b/3rdparty/stasm4.0.0/stasm/stasm/include/misc.h new file mode 100755 index 0000000..9b7fddc --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/misc.h @@ -0,0 +1,505 @@ +// misc.h: miscellaneous definitions for Stasm +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_MISC_H +#define STASM_MISC_H + +#include + +namespace stasm +{ +using cv::Rect; +using std::vector; +using std::string; + +typedef vector vec_int; +typedef vector vec_bool; +typedef vector vec_double; +typedef vector vec_Rect; + +typedef unsigned char byte; + +typedef cv::Mat_ MAT; // a matrix with double elements +typedef cv::Mat_ VEC; // by convention indicates one-dim matrix + +typedef cv::Mat_ Shape; // by convention an N x 2 matrix holding a shape + +typedef cv::Mat_ Image; // a gray image (a matrix of bytes) + +typedef cv::Vec3b RGBV; // a vec of three bytes: red(0), green(1), and blue(2) + +typedef cv::Mat_ CImage; // an RGB image (for apps and debugging, unneeded for ASM) + +static const int IX = 0; // X,Y index in shape matrices. For clarity by +static const int IY = 1; // convention we use these rather than 0 and 1. + +static const int SLEN = 260; // generic string length + // big enough for any Windows path (MAX_PATH is 260) + +static const int SBIG = 10000; // long string length, enough for big printfs + +#ifndef _MAX_PATH // definitions copied verbatim from Microsoft stdlib.h +#define _MAX_PATH 260 /* max. length of full pathname */ +#define _MAX_DRIVE 3 /* max. length of drive component */ +#define _MAX_DIR 256 /* max. length of path component */ +#define _MAX_FNAME 256 /* max. length of file name component */ +#define _MAX_EXT 256 /* max. length of extension component */ +#endif + +// colors +static const unsigned C_RED = 0xff0000; +static const unsigned C_GREEN = 0x00ff00; +static const unsigned C_BLUE = 0x0000ff; +static const unsigned C_YELLOW = 0xffff00; + +// Secure form of strcpy and friends (prevent buffer overrun). +// The CV_DbgAssert catches an easy programming error where +// we mistakenly take the size of a pointer. + +#if _MSC_VER // microsoft compiler + #define STRCPY(dest, src) \ + { \ + CV_DbgAssert(sizeof(dest) > 8); \ + strcpy_s(dest, sizeof(dest), src); \ + } + #define STRCAT(dest, src) \ + { \ + CV_DbgAssert(sizeof(dest) > 8); \ + strcat_s(dest, sizeof(dest), src); \ + } + #define VSPRINTF(dest, format, args) \ + { \ + CV_DbgAssert(sizeof(dest) > 8); \ + vsnprintf_s(dest, sizeof(dest), _TRUNCATE, format, args); \ + } +#else + #define STRCPY(dest, src) \ + { \ + CV_DbgAssert(sizeof(dest) > 8); \ + strncpy_(dest, src, sizeof(dest)); \ + } + #define STRCAT(dest, src) \ + { \ + CV_DbgAssert(sizeof(dest) > 8); \ + strncat(dest, sizeof(dest), src); \ + } + #define VSPRINTF(dest, format, args) \ + { \ + CV_DbgAssert(sizeof(dest) > 8); \ + vsnprintf(dest, sizeof(dest), format, args); \ + } +#endif + +// A macro to disallow the copy constructor and operator= functions. +// This is used in the private declarations for a class where those member +// functions have not been explicitly defined. This macro prevents use of +// the implicitly defined functions (the compiler will complain if you try +// to use them). +// This is often just paranoia. The implicit functions may actually be ok +// for the class in question, but shouldn't be used until that is checked. +// For details, See Item 6 Meyers Effective C++ and the Google C++ Style Guide. + +#define DISALLOW_COPY_AND_ASSIGN(ClassName) \ + ClassName(const ClassName&); \ + void operator=(const ClassName&) + +template int NELEMS(const T& x) // number of elems in an array +{ + return int(sizeof(x) / sizeof((x)[0])); +} + +// The NSIZE and STRNLEN utility functions prevent the following +// warnings from certain compilers: +// o signed/unsigned mismatch +// o conversion from 'size_t' to 'int', possible loss of data +// Alternatives would be to use typecasts directly in the code +// or pedantically use size_t instead of int. + +static inline int NSIZE(const MAT& m) // nrows * ncols +{ + return int((m).total()); +} + +template int NSIZE(const T& x) // size of any STL container +{ + return int(x.size()); +} + +static inline int STRNLEN(const char* s, int n) +{ + return int(strnlen(s, n)); +} + +template T SQ(const T x) // define SQ(x) +{ + return x * x; +} + +template T ABS(const T x) // define ABS(x) +{ + // portable across compilers unlike "abs" + return x < 0? -x: x; +} + +template T Clamp(const T x, const T min, const T max) +{ + return MIN(MAX(x, min), max); // force x to a value between min and max +} + +// Equal() returns true if x == y within reasonable tolerance. +// The default tolerance 1e-7 is arbitrary but approximately equals FLT_EPSILON. +// (If one or both of the numbers are NANs then the test fails, even if +// they are equal NANs. Which is not necessarily desireable behaviour.) + +static inline bool Equal(const double x, const double y, const double max = 1e-7) +{ + return ABS(x-y) < max; +} + +static inline bool IsZero(const double x, const double max = 1e-7) +{ + return Equal(x, 0, max); +} + +static inline double RadsToDegrees(const double rads) +{ + return 180 * rads / 3.14159265358979323846264338328; +} + +static const int INVALID = 99999; // used to specify unavail eye locations, etc + +template bool Valid(const T x) +{ + return x != INVALID && x != -INVALID; +} + +// For reference, the fields of an OpenCV Mat are as follows. +// See \OpenCV\build\include\opencv2\core\core.hpp for details. +// +// int flags; // magic signature, continuity flag, depth, number of chans +// int dims; // matrix dimensionality, >= 2 +// int rows, cols; // number of rows and columns or (-1, -1) +// uchar* data; // the data +// int* refcount; // pointer to ref counter, NULL if user-allocated +// uchar* datastart; // fields used in locateROI and adjustROI +// uchar* dataend; +// uchar* datalimit; +// MatAllocator* allocator; // custom allocator +// MSize size; +// MStep step; + +static inline double* Buf(const MAT& mat) // access MAT data buffer +{ + return (double*)(mat.data); +} + +static inline VEC AsColVec(const MAT& mat) // view entire matrix as a col vector +{ + CV_Assert(mat.isContinuous()); + return MAT(mat.rows * mat.cols, 1, Buf(mat)); +} + +static inline VEC AsRowVec(const MAT& mat) // view entire matrix as a row vector +{ + CV_Assert(mat.isContinuous()); + return MAT(1, mat.rows * mat.cols, Buf(mat)); +} + +// Note on unused points: +// +// Unused points (a.k.a. missing points) points are indicated +// by setting both x and y equal to zero. +// Thus if there is a valid point that happens actually to +// be at 0,0 (rare) we must offset x slightly to ensure that the +// point is seen by Stasm as used. Hence XJITTER. +// +// XJITTER is one tenth of a pixel, which is big enough to be +// visible when saved in a shapefile with one decimal digit. +// +// Unused points are mostly useful during training (it is not unusual for a +// landmark to be obscured in a training face). They are also used during +// a search with pinned points (non-pinned points are marked as unused in +// the shape which specifies the pinned points). + +static const double XJITTER = .1; + +static inline bool PointUsed(const double x, const double y) +{ + return !IsZero(x, XJITTER) || !IsZero(y, XJITTER); +} + +static inline bool PointUsed(const Shape& shape, int ipoint) +{ + return PointUsed(shape(ipoint, IX), shape(ipoint, IY)); +} + +static inline double PointDist( + double x1, // in + double y1, // in + double x2, // in + double y2) // in +{ + CV_Assert(PointUsed(x1, y1)); + CV_Assert(PointUsed(x2, y2)); + + return sqrt(SQ(x1 - x2) + SQ(y1 - y2)); +} + +static inline double PointDist( + const Shape& shape1, // in: the first shape + const Shape& shape2, // in: the second shape + int ipoint) // in: the point +{ + return PointDist(shape1(ipoint, IX), shape1(ipoint, IY), + shape2(ipoint, IX), shape2(ipoint, IY)); +} + +static inline double PointDist( + const Shape& shape, // in + int ipoint1, // in: the first point + int ipoint2) // in: the second point +{ + return PointDist(shape(ipoint1, IX), shape(ipoint1, IY), + shape(ipoint2, IX), shape(ipoint2, IY)); +} + +static inline double SumElems( + const MAT &mat) +{ + return double(cv::sum(mat)[0]); +} + +// Generate the width used (in for example %2.2d) for printfs of landmark numbers +// +// For npoints 0..9 return 1 +// npoints 10..99 return 2 +// npoints 100.999 return 3 +// etc. + +static inline int NumDigits( + const double npoints) +{ + return MAX(1, int(floor(log10(npoints))+1)); +} + +// note: in frontal-model-only Stasm, the only valid value for EYAW is EYAW00 + +enum EYAW +{ + EYAW_45 = -3, // yaw -45 degrees (left facing strong three-quarter pose) + EYAW_22 = -2, // yaw -22 degrees (left facing mild three-quarter pose) + EYAW00 = 1, // yaw 0 degrees (frontal pose) + EYAW22 = 2, // yaw 22 degrees (right facing mild three-quarter pose) + EYAW45 = 3 // yaw 45 degrees (right facing strong three-quarter pose) +}; + +enum ESTART // do we use the detected eyes or mouth to help position the startshape? + // note: gaps in enum numbering are for compat with other Stasm versions +{ + ESTART_RECT_ONLY = 1, // use just the face det rect to align the start shape + ESTART_EYES = 2, // use eyes if available (as well as face rect) + ESTART_EYE_AND_MOUTH = 4 // uses eye(s) and mouth if both available +}; + +#if MOD_3 || MOD_A || MOD_A_EMU // experimental versions +static const double EYAW_TO_USE_DET22 = 14; // what estimated yaw requires the yaw22 mod +static const double EYAW_TO_USE_DET45 = 35; // ditto for yaw45 model +#endif + +struct DetPar // face and feature detector parameters +{ + double x, y; // center of detector shape + double width, height; // width and height of detector shape + double lex, ley; // center of left eye (left and right are wrt the viewer) + double rex, rey; // center of right eye + double mouthx, mouthy; // center of mouth + double rot; // in-plane rotation + double yaw; // yaw + EYAW eyaw; // yaw as an enum + + DetPar() // constructor sets all fields to INVALID + : x(INVALID), + y(INVALID), + width(INVALID), + height(INVALID), + lex(INVALID), + ley(INVALID), + rex(INVALID), + rey(INVALID), + mouthx(INVALID), + mouthy(INVALID), + rot(INVALID), + yaw(INVALID), + eyaw(EYAW(INVALID)) + { + }; + +}; + +//----------------------------------------------------------------------------- + +const char* ssprintf(const char* format, ...); +void strncpy_(char* dest, const char* src, int n); +void ToLowerCase(char* s); +void ConvertBackslashesToForwardAndStripFinalSlash(char* s); +const char* Base(const char* path); +const char* BaseExt(const char* path); + +void splitpath( + const char* path, + char* drive, char* dir, char* base, char* ext); + +void makepath( + char* path, + const char* drive, const char* dir, const char* base, const char* ext); + +void LogShape(const MAT& mat, const char* matname); + +void PrintMat(const MAT& mat, const char* msg); // utility to print a matrix + +#define PRINTMAT(mat) PrintMat(mat, #mat) // utility to print an matrix and its name + +MAT DimKeep(const MAT& mat, int nrows, int ncols); + +const MAT ArrayAsMat(int ncols, int nrows, const double* data); + +MAT RoundMat( // return mat with entries rounded to integers + const MAT& mat); // in + +void JitterPointsAt00InPlace(Shape& shape); + +Shape JitterPointsAt00(const Shape& shape); + +double ForcePinnedPoints( // force pinned landmarks in shape to their pinned posn + Shape& shape, // io + const Shape pinnedshape); // in + +void ShapeMinMax( // get min and max ccords in the given shape + double& xmin, // out + double& xmax, // out + double& ymin, // out + double& ymax, // out + const Shape& shape); // in + +double ShapeWidth(const Shape& shape); // width of shape in pixels + +double ShapeHeight(const Shape& shape); // height of shape in pixels + +void TransformShapeInPlace( // affine transform of shape + Shape& shape, // io + const MAT& alignment_mat); // in + +void TransformShapeInPlace( // affine transform of shape + Shape& shape, // io + double x0, double y0, double z0, // in + double x1, double y1, double z1); // in + +Shape TransformShape( // return transformed shape, affine transform + const Shape& shape, // in + const MAT& alignment_mat); // in + +Shape TransformShape( // return transformed shape, affine transform + const Shape& shape, // in + double x0, double y0, double z0, // in + double x1, double y1, double z1); // in + +const MAT AlignmentMat( // return similarity transf to align shape to anchorshape + const Shape& shape, // in + const Shape& anchorshape, // in + const double* weights=NULL); // in: if NULL (default) all points equal weight + +Shape ShiftShape( // add xshift and yshift to shape coords, skipping unused points + const Shape& shape, // in + int xshift, // in + int yshift); // in + +Shape ShiftShape( // like above but shifts are doubles not ints + const Shape& shape, // in + double xshift, // in + double yshift); // in + +CvScalar ToCvColor(unsigned color); + +void DrawShape( // draw a shape on an image + CImage& img, // io + const Shape& shape, // in + unsigned color=0xff0000, // in: rrggbb e.g. 0xff0000 is red + bool dots=false, // in: true for dots only + int linewidth=0); // in: default 0 means automatic + +void ImgPrintf( // printf on image + CImage& img, // io + double ix, // in + double iy, // in + unsigned color, // in: rrggbb e.g. 0xff0000 is red + double size, // in: relative font size, 1 is standard size + const char* format, // in + ...); // in + +void DesaturateImg( + CImage& img); // io: convert to gray (but still an RGB image) + +void DarkenImg( + CImage& img); // io: darken this image + +void ForceRectIntoImg( // force rectangle into image + int& ix, // io + int& iy, // io + int& ncols, // io + int& nrows, // io + const Image& img); // in + +void ForceRectIntoImg( // force rectangle into image + Rect& rect, // io + const Image& img); // in + +Image FlipImg(const Image& img); // in: flip image horizontally (mirror image) + +void FlipImgInPlace(Image& img); // io: flip image horizontally (mirror image) + +void OpenDetector( // open face or feature detector from its XML file + cv::CascadeClassifier& cascade, // out + const char* filename, // in: basename.ext of cascade + const char* datadir); // in + +vec_Rect Detect( // detect faces or facial features + const Image& img, // in + cv::CascadeClassifier& cascade, // in + const Rect* searchrect, // in: search in this region, can be NULL + double scale_factor, // in + int min_neighbors, // in + int flags, // in + int minwidth_pixels); // in: reduces false positives + +bool IsLeftFacing(EYAW eyaw); // true if eyaw is for a left facing face + +// TODO Following commented out to avoid circular dependency. +// int EyawAsModIndex(EYAW eyaw, const vec_Mod& mods); + +EYAW DegreesAsEyaw( // this determines what model is best for a given yaw + double yaw, // in: yaw in degrees, negative if left facing + int nmods); // in + +const char* EyawAsString(EYAW eyaw); + +unsigned EyawAsColor(EYAW eyaw); + +DetPar FlipDetPar( // mirror image of detpar + const DetPar& detpar, // in + int imgwidth); // in + +bool InRect( // is the center of rect within the enclosing rect? + const Rect& rect, // in + const Rect& enclosing); // in + +bool InRect( // is x,y within the enclosing rect? + double x, // in + double y, // in + double left, // in + double top, // in + double right, // in + double bot); // in + +} // namespace stasm +#endif // STASM_MISC_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/pinstart.h b/3rdparty/stasm4.0.0/stasm/stasm/include/pinstart.h new file mode 100755 index 0000000..2d9edd7 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/pinstart.h @@ -0,0 +1,25 @@ +// pinstart.h: utilities for creating a start shape from manually pinned points +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_PINSTART_H +#define STASM_PINSTART_H + +#include "misc.h" +#include "asm.h" + +namespace stasm +{ + +void PinnedStartShapeAndRoi( // use the pinned landmarks to init the start shape + Shape& startshape, // out: the start shape (in ROI frame) + Image& face_roi, // out: ROI around face, possibly rotated upright + DetPar& detpar_roi, // out: detpar wrt to face_roi + DetPar& detpar, // out: detpar wrt to img + Shape& pinned_roi, // out: pinned arg translated to ROI frame + const Image& img, // in: the image (grayscale) + const vec_Mod& mods, // in: a vector of models, one for each yaw range + const Shape& pinned); // in: manually pinned landmarks + +} // namespace stasm +#endif // STASM_PINSTART_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/print.h b/3rdparty/stasm4.0.0/stasm/stasm/include/print.h new file mode 100755 index 0000000..3cde787 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/print.h @@ -0,0 +1,22 @@ +// print.h: printing and logging utilities for the Stasm library +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_PRINT_H +#define STASM_PRINT_H + +namespace stasm +{ +extern bool print_g; // true to allow output to stdout + +extern bool trace_g; // true to trace Stasm internal operation + +void OpenLogFile(const char* path = "stasm.log"); +void lputs(const char* s); +void lprintf(const char* format, ...); // args like printf +void lprintf_always(const char* format, ...); +void logprintf(const char* format, ...); +void PrintOnce(int& printed, const char* format, ...); + +} // namespace stasm +#endif // STASM_PRINT_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/shape17.h b/3rdparty/stasm4.0.0/stasm/stasm/include/shape17.h new file mode 100755 index 0000000..c50a07d --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/shape17.h @@ -0,0 +1,68 @@ +// shape17.h: convert a shape to a 17 point shape +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_SHAPE17_H +#define STASM_SHAPE17_H + +#include "misc.h" + +namespace stasm +{ +enum LANDMARKS_17 // the 17 points that make up a Shape17 shape +{ + L17_LPupil, // 0 + L17_RPupil, // 1 + L17_LMouthCorner, // 2 + L17_RMouthCorner, // 3 + L17_LEyebrowOuter, // 4 + L17_LEyebrowInner, // 5 + L17_REyebrowInner, // 6 + L17_REyebrowOuter, // 7 + L17_LEyeOuter, // 8 + L17_LEyeInner, // 9 + L17_REyeInner, // 10 + L17_REyeOuter, // 11 + L17_CNoseTip, // 12 + L17_LNostril, // 13 + L17_RNostril, // 14 + L17_CTopOfTopLip, // 15 + L17_CBotOfBotLip // 16 +}; + +#if 0 +static const char* const LANDMARKS_17_NAMES[] = +{ + "LPupil", + "RPupil", + "LMouthCorner", + "RMouthCorner", + "LEyebrowOuter", + "LEyebrowInner", + "REyebrowInner", + "REyebrowOuter", + "LEyeOuter", + "LEyeInner", + "REyeInner", + "REyeOuter", + "CNoseTip", + "LNostril", + "RNostril", + "CTopOTopLip", + "CBotOfBotLip" +}; +#endif + +extern const Shape MEANSHAPE17; // mean 17 point shape + +Shape Shape17OrEmpty( // like Shape17 but return 0 point shape if can't convert + const Shape& shape); // in + +Shape Shape17( // convert an arb face shape to a 17 point shape, err if can't + const Shape& shape); // in + +void SanityCheckShape17( + const Shape& shape17); // in + +} // namespace stasm +#endif // STASM_SHAPE17_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/shapehacks.h b/3rdparty/stasm4.0.0/stasm/stasm/include/shapehacks.h new file mode 100755 index 0000000..10b4bbe --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/shapehacks.h @@ -0,0 +1,20 @@ +// shapehacks.h: +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_SHAPEHACKS_H +#define STASM_SHAPEHACKS_H + +#include "misc.h" + +namespace stasm +{ +static const unsigned SHAPEHACKS_DEFAULT = 0x01; +static const unsigned SHAPEHACKS_SHIFT_TEMPLE_OUT = 0x10; // for frontal models + +void ApplyShapeModelHacks( // adjust shape by applying various hacks + Shape& shape, // io: features possibly adjusted + unsigned hackbits); // in: which hacks to apply, see above constants + +} // namespace stasm +#endif // STASM_SHAPEHACKS_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/shapemod.h b/3rdparty/stasm4.0.0/stasm/stasm/include/shapemod.h new file mode 100755 index 0000000..a713330 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/shapemod.h @@ -0,0 +1,86 @@ +// shapemod.h: the ASM shape model +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_SHAPEMODEL_H +#define STASM_SHAPEMODEL_H + +#include "stasm_lib.h" +#include "shapehacks.h" +#include "misc.h" +#include "err.h" + +namespace stasm +{ +class ShapeMod +{ +public: + const Shape ConformShapeToMod_( // return shape conformed to shape mod + VEC& b, // io: eigvec weights + const Shape& shape, // in: shape suggested by the descriptor mods + int ilev) // in: pyramid level (0 is full size) + const; + + const Shape ConformShapeToMod_Pinned_( // like above but allow pinned points + VEC& b, // io: eigvec weights + const Shape& shape, // in: shape suggested by the descriptor mods + int ilev, // in: pyramid level (0 is full size) + const Shape& pinnedshape) // in: pinned landmarks + const; + + ShapeMod( // constructor + const Shape& meanshape, + const VEC& eigvals, + const MAT& eigvecs, + const int neigs, + const double bmax, + const unsigned hackbits) + + : meanshape_(meanshape), + eigvals_(DimKeep(eigvals, neigs, 1)), + eigvecs_(DimKeep(eigvecs, eigvecs.rows, neigs)), // retain neigs cols + // take inverse of eigvecs (by taking transpose) and retain neigs rows + eigvecsi_(DimKeep(eigvecs.t(), neigs, eigvecs.cols)), + bmax_(bmax), + hackbits_(hackbits) + { + if (meanshape.rows != stasm_NLANDMARKS) + Err("meanshape.rows %d != stasm_NLANDMARKS %d", + meanshape.rows, stasm_NLANDMARKS); + CV_Assert(meanshape.cols == 2); + CV_Assert(NSIZE(eigvals) == 2 * stasm_NLANDMARKS); + CV_Assert(eigvecs.rows == 2 * stasm_NLANDMARKS); + CV_Assert(eigvecs.cols == 2 * stasm_NLANDMARKS); + CV_Assert(neigs > 0 && neigs <= 2 * stasm_NLANDMARKS); + CV_Assert(bmax > 0 && bmax < 10); + CV_Assert((hackbits & ~(SHAPEHACKS_DEFAULT|SHAPEHACKS_SHIFT_TEMPLE_OUT)) == 0); + } + + // all data remains constant after ShapeMod construction + + const Shape meanshape_; // mean shape aligned to face det frame + const VEC eigvals_; // neigs x 1 vector + const MAT eigvecs_; // 2n x neigs matrix where n is nbr of landmarks + const MAT eigvecsi_; // neigs x 2n matrix, inverse of eigvecs_ + const double bmax_; // eigvec weight limit, for LimitB() + const unsigned hackbits_; // allowable shape model hacks (e.g. SHAPEHACKS_DEFAULT) + +private: + DISALLOW_COPY_AND_ASSIGN(ShapeMod); + +}; // end class ShapeMod + +VEC PointWeights(void); // return point weights from LANDMARK_INFO_TAB + +Shape ConformShapeToMod( // Return a copy of inshape conformed to the model + VEC& b, // io: eigvec weights + const Shape& inshape, // in: the current position of the landmarks + const Shape& meanshape, // in: n x 2 + const VEC& eigvals, // in: neigs x 1 + const MAT& eigvecs, // in: 2n x neigs + const MAT& eigvecsi, // in: neigs x 2n, inverse of eigvecs + const double bmax, // in: for LimitB + const VEC& pointweights); // in: contribution of each point to the pose + +} // namespace stasm +#endif // STASM_SHAPEMODEL_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/startshape.h b/3rdparty/stasm4.0.0/stasm/stasm/include/startshape.h new file mode 100755 index 0000000..602f68e --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/startshape.h @@ -0,0 +1,51 @@ +// startshape.h: routines for finding the start shape for an ASM search +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_STARTSHAPE_H +#define STASM_STARTSHAPE_H + +#include "stasmcascadeclassifier.h" +#include "misc.h" +#include "asm.h" +#include "facedet.h" + +namespace stasm +{ +// The constant 200 is arbitrary, except that the value used by Stasm +// must match that used by Tasm when training the model. Using 200 instead +// of say, 1, means that the detector average face is displayable at a decent +// size which is useful for debugging. + +static const int DET_FACE_WIDTH = 200; + +double EyeAngle( // eye angle in degrees, INVALID if eye angle not available + const DetPar& detpar); // in: detpar wrt the ROI + +double EyeAngle( // eye angle in degrees, INVALID if eye angle not available + const Shape& shape); // in + +// get the start shape for the next face in the image, and the ROI around it + +bool NextStartShapeAndRoi(// use face detector results to estimate start shape + Shape& startshape, // out: the start shape we are looking for + Image& face_roi, // out: ROI around face, possibly rotated upright + DetPar& detpar_roi, // out: detpar wrt to face_roi + DetPar& detpar, // out: detpar wrt to img + const Image& img, // in: the image (grayscale) + const vec_Mod& mods, // in: a vector of models, one for each yaw range + FaceDet& facedet, + StasmCascadeClassifier cascade); // io: the face detector (internal face index bumped) + +void PinnedStartShapeAndRoi( // use the pinned landmarks to init the start shape + Shape& startshape, // out: the start shape (in ROI frame) + Image& face_roi, // out: ROI around face, possibly rotated upright + DetPar& detpar_roi, // out: detpar wrt to face_roi + DetPar& detpar, // out: detpar wrt to img + Shape& pinned_roi, // out: pinned arg translated to ROI frame + const Image& img, // in: the image (grayscale) + const vec_Mod& mods, // in: a vector of models, one for each yaw range + const Shape& pinned); // in: pinned landmarks + +} // namespace stasm +#endif // STASM_STARTSHAPE_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/stasm.h b/3rdparty/stasm4.0.0/stasm/stasm/include/stasm.h new file mode 100755 index 0000000..d72c7de --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/stasm.h @@ -0,0 +1,21 @@ +// stasm.h: (nearly) all include files for the Stasm package +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_H +#define STASM_H + +const char* const stasm_VERSION = "4.1.0"; + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#endif // STASM_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/stasm_landmarks.h b/3rdparty/stasm4.0.0/stasm/stasm/include/stasm_landmarks.h new file mode 100755 index 0000000..d2ab538 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/stasm_landmarks.h @@ -0,0 +1,93 @@ +// stasm_landmarks.h: define the Stasm landmarks for the 77 point model +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_STASM_LANDMARKS_H +#define STASM_STASM_LANDMARKS_H + +// All landmark names begin with L_ followed by L, C, or R, +// for left, center, or right. +// Note that left and right are with respect to the viewer, not the subject. + +enum stasm_LANDMARKS_77 // stasm77 landmarks +{ + L_LTemple, // 00 + L_LJaw01, // 01 + L_LJawNoseline, // 02 nose line on left jaw + L_LJawMouthline, // 03 mouth line on left jaw + L_LJaw04, // 04 + L_LJaw05, // 05 + L_CTipOfChin, // 06 + L_RJaw07, // 07 + L_RJaw08, // 08 + L_RJawMouthline, // 09 + L_RJawNoseline, // 10 + L_RJaw11, // 11 + L_RTemple, // 12 + L_RForehead, // 13 + L_CForehead, // 14 + L_LForehead, // 15 + L_LEyebrowTopInner, // 16 + L_LEyebrowTopOuter, // 17 + L_LEyebrowOuter, // 18 + L_LEyebrowBotOuter, // 19 + L_LEyebrowBotInner, // 20 + L_LEyebrowInner, // 21 + L_REyebrowInner, // 22 + L_REyebrowTopInner, // 23 + L_REyebrowTopOuter, // 24 + L_REyebrowOuter, // 25 + L_REyebrowBotOuter, // 26 + L_REyebrowBotInner, // 27 + L_REyelid, // 28 + L_LEyelid, // 29 + L_LEyeInner, // 30 + L_LEye31, // 31 + L_LEyeTop, // 32 + L_LEye33, // 33 + L_LEyeOuter, // 34 + L_LEye35, // 35 + L_LEyeBot, // 36 + L_LEye37, // 37 + L_LPupil, // 38 + L_RPupil, // 39 + L_REyeInner, // 40 + L_REye41, // 41 + L_REyeTop, // 42 + L_REye43, // 43 + L_REyeOuter, // 44 + L_REye45, // 45 + L_REyeBot, // 46 + L_REye47, // 47 + L_RNoseMid, // 48 + L_CNoseMid, // 49 + L_LNoseMid, // 50 + L_LNostrilTop, // 51 + L_CNoseTip, // 52 + L_RNostrilTop, // 53 + L_RNoseSide, // 54 + L_RNostrilBot, // 55 + L_CNoseBase, // 56 + L_LNostrilBot, // 57 + L_LNoseSide, // 58 + L_LMouthCorner, // 59 + L_LMouth60, // 60 + L_LMouthCupid, // 61 + L_CTopOfTopLip, // 62 + L_RMouthCupid, // 63 + L_RMouth64, // 64 + L_RMouthCorner, // 65 + L_RMouth66, // 66 + L_CBotOfTopLip, // 67 + L_LMouth68, // 68 + L_LMouth69, // 69 + L_CTopOfBotLip, // 70 + L_RMouth71, // 71 + L_RMouth72, // 72 + L_RMouth73, // 73 + L_CBotOfBotLip, // 74 + L_LMouth75, // 75 + L_LMouth76 // 76 +}; + +#endif // STASM_STASM_LANDMARKS_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/stasm_lib.h b/3rdparty/stasm4.0.0/stasm/stasm/include/stasm_lib.h new file mode 100755 index 0000000..951d019 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/stasm_lib.h @@ -0,0 +1,150 @@ +// stasm_lib.h: interface to the Stasm library +// +// The Stasm library interface function and variable names are all prefixed +// by "stasm_". They are not in the stasm namespace. +// +// The library routines return 1 on success, 0 on error (they do not throw +// exceptions). Use stasm_lasterr to get the error string. An example +// error is "Cannot open ../data/haarcascade_frontalface_alt2.xml". +// Errors in OpenCV routines called by Stasm and out-of-memory errors are +// handled in the same way. +// +// Typical usage in multiple face scenario with stasm_search_auto: +// +// stasm_init() +// load image from disk +// optionally present the image to the user +// stasm_open_image() +// while stasm_find_face() finds another face: +// save the face shape (and optionally present the image to the user) +// optionally present the image with all face shapes to the user +// optionally call stasm_search_pinned to correct any bad faces +// +// The interface is defined in vanilla C so can be used by code +// in "any" language. +// +//----------------------------------------------------------------------------- +// +// Stasm License Agreement +// +// Copyright (C) 2005-2013, Stephen Milborrow +// All rights reserved. +// +// Redistribution of Stasm in source and binary forms, with or +// without modification, is permitted provided that the following +// conditions are met: +// * Redistributions of source code must retain the above copyright notice, +// this list of conditions and the following disclaimers. +// +// * Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimers in the documentation +// and/or other materials provided with the distribution. +// +// A SIFT patent restriction may be in conflict with the copyright +// freedoms granted by this license. This license does not give you +// permission to infringe patents. +// +// This software is provided by the copyright holders and contributors "as is" and +// any express or implied warranties, including, but not limited to, the implied +// warranties of merchantability and fitness for a particular purpose are disclaimed. +// In no event shall the copyright holder be liable for any direct, +// indirect, incidental, special, exemplary, or consequential damages +// (including, but not limited to, procurement of substitute goods or services; +// loss of use, data, or profits; or business interruption) however caused +// and on any theory of liability, whether in contract, strict liability, +// or tort (including negligence or otherwise) arising in any way out of +// the use of this software, even if advised of the possibility of such damage. +// +// Note that Stasm versions prior to version 4.0.0 had a different license. +// +//----------------------------------------------------------------------------- + +#ifndef STASM_LIB_H +#define STASM_LIB_H + +#if defined STASM_LIBRARY +# if defined _WIN32 || defined __CYGWIN__ +# define STASM_EXPORT __declspec(dllexport) +# else +# define STASM_EXPORT __attribute__((visibility("default"))) +# endif +#else +# if defined _WIN32 || defined __CYGWIN__ +# define STASM_EXPORT __declspec(dllimport) +# else +# define STASM_EXPORT +# endif +#endif + +#include "stasmcascadeclassifier.h" + +static const char* const STASM_VERSION = "4.0.1"; +static const int stasm_NLANDMARKS = 77; // number of landmarks + +extern const char* const stasm_VERSION; + +STASM_EXPORT int stasm_init( // call once, at bootup + const char* datadir, // in: directory of face detector files + int trace); // in: 0 normal use, 1 trace to stdout and stasm.log + + +STASM_EXPORT int stasm_open_image( // call once per image, detect faces + const char* img, // in: gray image data, top left corner at 0,0 + int width, // in: image width + int height, // in: image height + const char* imgpath, // in: image path, used only for err msgs and debug + int multiface, // in: 0=return only one face, 1=allow multiple faces + int minwidth); // in: min face width as percentage of img width + + +STASM_EXPORT int stasm_search_auto( // call repeatedly to find all faces + int* foundface, // out: 0=no more faces, 1=found face + float* landmarks, // out: x0, y0, x1, y1, ..., caller must allocate + const char* data, + const int width, + const int height, + StasmCascadeClassifier cascade); + + +STASM_EXPORT int stasm_search_single( // wrapper for stasm_search_auto and friends + int* foundface, // out: 0=no face, 1=found face + float* landmarks, // out: x0, y0, x1, y1, ..., caller must allocate + const char* img, // in: gray image data, top left corner at 0,0 + int width, // in: image width + int height, // in: image height + StasmCascadeClassifier cascade, + const char* imgpath, // in: image path, used only for err msgs and debug + const char* datadir); // in: directory of face detector files + + // find landmarks, no OpenCV face detect +STASM_EXPORT int stasm_search_pinned( // call after the user has pinned some points + float* landmarks, // out: x0, y0, x1, y1, ..., caller must allocate + const float* pinned, // in: pinned landmarks (0,0 points not pinned) + const char* data, // in: gray image data, top left corner at 0,0 + int width, // in: image width + int height, // in: image height + const char* imgpath); // in: image path, used only for err msgs and debug + + +STASM_EXPORT const char* stasm_lasterr(void); // return string describing last error + + +STASM_EXPORT void stasm_force_points_into_image( // force landmarks into image boundary + float* landmarks, // io + int ncols, // in + int nrows); // in + + +STASM_EXPORT void stasm_convert_shape( // convert stasm 77 points to given number of points + float* landmarks, // io: return all points zero if can't do conversion + int nlandmarks); // in: 77=nochange 76=stasm3 68=xm2vts 22=ar 20=bioid 17=me17 + +// stasm_printf is like printf but also prints to the file stasm.log if it +// is open. The file stasm.log will be open if stasm_init was called with +// trace=1. This function was added primarily for the programs that test +// the stasm library. + + +STASM_EXPORT void stasm_printf(const char* format, ...); // print to stdout and stasm.log + +#endif // STASM_LIB_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/stasm_lib_ext.h b/3rdparty/stasm4.0.0/stasm/stasm/include/stasm_lib_ext.h new file mode 100755 index 0000000..174d4a9 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/stasm_lib_ext.h @@ -0,0 +1,29 @@ +// stasm_lib_ext.h: experimental extensions to the Stasm library +// Please don't use these functions, they may change at any time. + +#ifndef STASM_LIB_EXT_H +#define STASM_LIB_EXT_H + +extern "C" // extended version of stasm_init +int stasm_init_ext( // call once, at bootup + const char* datadir, // in: directory of face detector files + int trace, // in: 0 normal use, 1 trace to stdout and stasm.log + void* detparams); // in: NULL or face detector parameters + +extern "C" // extended version of stasm_open_image +int stasm_open_image_ext( // call once per image, detect faces + const char* img, // in: gray image data, top left corner at 0,0 + int width, // in: image width + int height, // in: image height + const char* imgpath, // in: image path, used only for err msgs and debug + int multiface, // in: 0=return only one face, 1=allow multiple faces + int minwidth, // in: min face width as percentage of img width + void* user); // in: NULL or pointer to user abort func + +extern "C" +int stasm_search_auto_ext( // extended version of stasm_search_auto + int* foundface, // out: 0=no more faces, 1=found face + float* landmarks, // out: x0, y0, x1, y1, ..., caller must allocate + float* estyaw); // out: NULL or pointer to estimated yaw + +#endif // STASM_LIB_EXT_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/stasmcascadeclassifier.h b/3rdparty/stasm4.0.0/stasm/stasm/include/stasmcascadeclassifier.h new file mode 100644 index 0000000..e2870a5 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/stasmcascadeclassifier.h @@ -0,0 +1,27 @@ +#ifndef STASMCASCADECLASSIFIER_H +#define STASMCASCADECLASSIFIER_H + +#include +#include + +class StasmCascadeClassifier +{ + +public: + cv::CascadeClassifier faceCascade; + cv::CascadeClassifier mouthCascade; + cv::CascadeClassifier leftEyeCascade; + cv::CascadeClassifier rightEyeCascade; + + bool load(const std::string &path) { + if (!faceCascade.load(path + "haarcascades/haarcascade_frontalface_alt2.xml") || + !mouthCascade.load(path + "haarcascades/haarcascade_mcs_mouth.xml") || + !leftEyeCascade.load(path + "haarcascades/haarcascade_mcs_lefteye.xml") || + !rightEyeCascade.load(path + "haarcascades/haarcascade_mcs_righteye.xml")) return false; + + return true; + } + +}; + +#endif // STASMCASCADECLASSIFIER_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/stasmhash.h b/3rdparty/stasm4.0.0/stasm/stasm/include/stasmhash.h new file mode 100644 index 0000000..e104a9f --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/stasmhash.h @@ -0,0 +1,8 @@ +#ifndef STASMHASH_H +#define STASMHASH_H + +#include + +typedef QHash StasmHash; + +#endif // STASMHASH_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/include/yaw00.h b/3rdparty/stasm4.0.0/stasm/stasm/include/yaw00.h new file mode 100755 index 0000000..267c0df --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/include/yaw00.h @@ -0,0 +1,638 @@ +// yaw00.h: yaw00 ASM model +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#ifndef STASM_YAW00_1_H +#define STASM_YAW00_1_H + +#include "classic/yaw00_shapemodel.mh" +#include "classic/classic_yaw00_lev0_p00.mh" +#include "classic/classic_yaw00_lev0_p01.mh" +#include "classic/classic_yaw00_lev0_p02.mh" +#include "classic/classic_yaw00_lev0_p03.mh" +#include "classic/classic_yaw00_lev0_p04.mh" +#include "classic/classic_yaw00_lev0_p05.mh" +#include "classic/classic_yaw00_lev0_p06.mh" +#include "classic/classic_yaw00_lev0_p07.mh" +#include "classic/classic_yaw00_lev0_p08.mh" +#include "classic/classic_yaw00_lev0_p09.mh" +#include "classic/classic_yaw00_lev0_p10.mh" +#include "classic/classic_yaw00_lev0_p11.mh" +#include "classic/classic_yaw00_lev0_p12.mh" +#include "classic/classic_yaw00_lev0_p13.mh" +#include "classic/classic_yaw00_lev0_p14.mh" +#include "classic/classic_yaw00_lev0_p15.mh" +#include "classic/classic_yaw00_lev1_p00.mh" +#include "classic/classic_yaw00_lev1_p01.mh" +#include "classic/classic_yaw00_lev1_p02.mh" +#include "classic/classic_yaw00_lev1_p03.mh" +#include "classic/classic_yaw00_lev1_p04.mh" +#include "classic/classic_yaw00_lev1_p05.mh" +#include "classic/classic_yaw00_lev1_p06.mh" +#include "classic/classic_yaw00_lev1_p07.mh" +#include "classic/classic_yaw00_lev1_p08.mh" +#include "classic/classic_yaw00_lev1_p09.mh" +#include "classic/classic_yaw00_lev1_p10.mh" +#include "classic/classic_yaw00_lev1_p11.mh" +#include "classic/classic_yaw00_lev1_p12.mh" +#include "classic/classic_yaw00_lev1_p13.mh" +#include "classic/classic_yaw00_lev1_p14.mh" +#include "classic/classic_yaw00_lev1_p15.mh" +#include "classic/classic_yaw00_lev2_p00.mh" +#include "classic/classic_yaw00_lev2_p01.mh" +#include "classic/classic_yaw00_lev2_p02.mh" +#include "classic/classic_yaw00_lev2_p03.mh" +#include "classic/classic_yaw00_lev2_p04.mh" +#include "classic/classic_yaw00_lev2_p05.mh" +#include "classic/classic_yaw00_lev2_p06.mh" +#include "classic/classic_yaw00_lev2_p07.mh" +#include "classic/classic_yaw00_lev2_p08.mh" +#include "classic/classic_yaw00_lev2_p09.mh" +#include "classic/classic_yaw00_lev2_p10.mh" +#include "classic/classic_yaw00_lev2_p11.mh" +#include "classic/classic_yaw00_lev2_p12.mh" +#include "classic/classic_yaw00_lev2_p13.mh" +#include "classic/classic_yaw00_lev2_p14.mh" +#include "classic/classic_yaw00_lev2_p15.mh" +#include "classic/classic_yaw00_lev3_p00.mh" +#include "classic/classic_yaw00_lev3_p01.mh" +#include "classic/classic_yaw00_lev3_p02.mh" +#include "classic/classic_yaw00_lev3_p03.mh" +#include "classic/classic_yaw00_lev3_p04.mh" +#include "classic/classic_yaw00_lev3_p05.mh" +#include "classic/classic_yaw00_lev3_p06.mh" +#include "classic/classic_yaw00_lev3_p07.mh" +#include "classic/classic_yaw00_lev3_p08.mh" +#include "classic/classic_yaw00_lev3_p09.mh" +#include "classic/classic_yaw00_lev3_p10.mh" +#include "classic/classic_yaw00_lev3_p11.mh" +#include "classic/classic_yaw00_lev3_p12.mh" +#include "classic/classic_yaw00_lev3_p13.mh" +#include "classic/classic_yaw00_lev3_p14.mh" +#include "classic/classic_yaw00_lev3_p15.mh" +#include "classic/classic_yaw00_lev3_p16.mh" +#include "classic/classic_yaw00_lev3_p17.mh" +#include "classic/classic_yaw00_lev3_p18.mh" +#include "classic/classic_yaw00_lev3_p19.mh" +#include "classic/classic_yaw00_lev3_p20.mh" +#include "classic/classic_yaw00_lev3_p21.mh" +#include "classic/classic_yaw00_lev3_p22.mh" +#include "classic/classic_yaw00_lev3_p23.mh" +#include "classic/classic_yaw00_lev3_p24.mh" +#include "classic/classic_yaw00_lev3_p25.mh" +#include "classic/classic_yaw00_lev3_p26.mh" +#include "classic/classic_yaw00_lev3_p27.mh" +#include "classic/classic_yaw00_lev3_p28.mh" +#include "classic/classic_yaw00_lev3_p29.mh" +#include "classic/classic_yaw00_lev3_p30.mh" +#include "classic/classic_yaw00_lev3_p31.mh" +#include "classic/classic_yaw00_lev3_p32.mh" +#include "classic/classic_yaw00_lev3_p33.mh" +#include "classic/classic_yaw00_lev3_p34.mh" +#include "classic/classic_yaw00_lev3_p35.mh" +#include "classic/classic_yaw00_lev3_p36.mh" +#include "classic/classic_yaw00_lev3_p37.mh" +#include "classic/classic_yaw00_lev3_p38.mh" +#include "classic/classic_yaw00_lev3_p39.mh" +#include "classic/classic_yaw00_lev3_p40.mh" +#include "classic/classic_yaw00_lev3_p41.mh" +#include "classic/classic_yaw00_lev3_p42.mh" +#include "classic/classic_yaw00_lev3_p43.mh" +#include "classic/classic_yaw00_lev3_p44.mh" +#include "classic/classic_yaw00_lev3_p45.mh" +#include "classic/classic_yaw00_lev3_p46.mh" +#include "classic/classic_yaw00_lev3_p47.mh" +#include "classic/classic_yaw00_lev3_p48.mh" +#include "classic/classic_yaw00_lev3_p49.mh" +#include "classic/classic_yaw00_lev3_p50.mh" +#include "classic/classic_yaw00_lev3_p51.mh" +#include "classic/classic_yaw00_lev3_p52.mh" +#include "classic/classic_yaw00_lev3_p53.mh" +#include "classic/classic_yaw00_lev3_p54.mh" +#include "classic/classic_yaw00_lev3_p55.mh" +#include "classic/classic_yaw00_lev3_p56.mh" +#include "classic/classic_yaw00_lev3_p57.mh" +#include "classic/classic_yaw00_lev3_p58.mh" +#include "classic/classic_yaw00_lev3_p59.mh" +#include "classic/classic_yaw00_lev3_p60.mh" +#include "classic/classic_yaw00_lev3_p61.mh" +#include "classic/classic_yaw00_lev3_p62.mh" +#include "classic/classic_yaw00_lev3_p63.mh" +#include "classic/classic_yaw00_lev3_p64.mh" +#include "classic/classic_yaw00_lev3_p65.mh" +#include "classic/classic_yaw00_lev3_p66.mh" +#include "classic/classic_yaw00_lev3_p67.mh" +#include "classic/classic_yaw00_lev3_p68.mh" +#include "classic/classic_yaw00_lev3_p69.mh" +#include "classic/classic_yaw00_lev3_p70.mh" +#include "classic/classic_yaw00_lev3_p71.mh" +#include "classic/classic_yaw00_lev3_p72.mh" +#include "classic/classic_yaw00_lev3_p73.mh" +#include "classic/classic_yaw00_lev3_p74.mh" +#include "classic/classic_yaw00_lev3_p75.mh" +#include "classic/classic_yaw00_lev3_p76.mh" + +#include "hat/hat_yaw00_lev0_p16.mh" +#include "hat/hat_yaw00_lev0_p17.mh" +#include "hat/hat_yaw00_lev0_p18.mh" +#include "hat/hat_yaw00_lev0_p19.mh" +#include "hat/hat_yaw00_lev0_p20.mh" +#include "hat/hat_yaw00_lev0_p21.mh" +#include "hat/hat_yaw00_lev0_p22.mh" +#include "hat/hat_yaw00_lev0_p23.mh" +#include "hat/hat_yaw00_lev0_p24.mh" +#include "hat/hat_yaw00_lev0_p25.mh" +#include "hat/hat_yaw00_lev0_p26.mh" +#include "hat/hat_yaw00_lev0_p27.mh" +#include "hat/hat_yaw00_lev0_p28.mh" +#include "hat/hat_yaw00_lev0_p29.mh" +#include "hat/hat_yaw00_lev0_p30.mh" +#include "hat/hat_yaw00_lev0_p31.mh" +#include "hat/hat_yaw00_lev0_p32.mh" +#include "hat/hat_yaw00_lev0_p33.mh" +#include "hat/hat_yaw00_lev0_p34.mh" +#include "hat/hat_yaw00_lev0_p35.mh" +#include "hat/hat_yaw00_lev0_p36.mh" +#include "hat/hat_yaw00_lev0_p37.mh" +#include "hat/hat_yaw00_lev0_p38.mh" +#include "hat/hat_yaw00_lev0_p39.mh" +#include "hat/hat_yaw00_lev0_p40.mh" +#include "hat/hat_yaw00_lev0_p41.mh" +#include "hat/hat_yaw00_lev0_p42.mh" +#include "hat/hat_yaw00_lev0_p43.mh" +#include "hat/hat_yaw00_lev0_p44.mh" +#include "hat/hat_yaw00_lev0_p45.mh" +#include "hat/hat_yaw00_lev0_p46.mh" +#include "hat/hat_yaw00_lev0_p47.mh" +#include "hat/hat_yaw00_lev0_p48.mh" +#include "hat/hat_yaw00_lev0_p49.mh" +#include "hat/hat_yaw00_lev0_p50.mh" +#include "hat/hat_yaw00_lev0_p51.mh" +#include "hat/hat_yaw00_lev0_p52.mh" +#include "hat/hat_yaw00_lev0_p53.mh" +#include "hat/hat_yaw00_lev0_p54.mh" +#include "hat/hat_yaw00_lev0_p55.mh" +#include "hat/hat_yaw00_lev0_p56.mh" +#include "hat/hat_yaw00_lev0_p57.mh" +#include "hat/hat_yaw00_lev0_p58.mh" +#include "hat/hat_yaw00_lev0_p59.mh" +#include "hat/hat_yaw00_lev0_p60.mh" +#include "hat/hat_yaw00_lev0_p61.mh" +#include "hat/hat_yaw00_lev0_p62.mh" +#include "hat/hat_yaw00_lev0_p63.mh" +#include "hat/hat_yaw00_lev0_p64.mh" +#include "hat/hat_yaw00_lev0_p65.mh" +#include "hat/hat_yaw00_lev0_p66.mh" +#include "hat/hat_yaw00_lev0_p67.mh" +#include "hat/hat_yaw00_lev0_p68.mh" +#include "hat/hat_yaw00_lev0_p69.mh" +#include "hat/hat_yaw00_lev0_p70.mh" +#include "hat/hat_yaw00_lev0_p71.mh" +#include "hat/hat_yaw00_lev0_p72.mh" +#include "hat/hat_yaw00_lev0_p73.mh" +#include "hat/hat_yaw00_lev0_p74.mh" +#include "hat/hat_yaw00_lev0_p75.mh" +#include "hat/hat_yaw00_lev0_p76.mh" +#include "hat/hat_yaw00_lev1_p16.mh" +#include "hat/hat_yaw00_lev1_p17.mh" +#include "hat/hat_yaw00_lev1_p18.mh" +#include "hat/hat_yaw00_lev1_p19.mh" +#include "hat/hat_yaw00_lev1_p20.mh" +#include "hat/hat_yaw00_lev1_p21.mh" +#include "hat/hat_yaw00_lev1_p22.mh" +#include "hat/hat_yaw00_lev1_p23.mh" +#include "hat/hat_yaw00_lev1_p24.mh" +#include "hat/hat_yaw00_lev1_p25.mh" +#include "hat/hat_yaw00_lev1_p26.mh" +#include "hat/hat_yaw00_lev1_p27.mh" +#include "hat/hat_yaw00_lev1_p28.mh" +#include "hat/hat_yaw00_lev1_p29.mh" +#include "hat/hat_yaw00_lev1_p30.mh" +#include "hat/hat_yaw00_lev1_p31.mh" +#include "hat/hat_yaw00_lev1_p32.mh" +#include "hat/hat_yaw00_lev1_p33.mh" +#include "hat/hat_yaw00_lev1_p34.mh" +#include "hat/hat_yaw00_lev1_p35.mh" +#include "hat/hat_yaw00_lev1_p36.mh" +#include "hat/hat_yaw00_lev1_p37.mh" +#include "hat/hat_yaw00_lev1_p38.mh" +#include "hat/hat_yaw00_lev1_p39.mh" +#include "hat/hat_yaw00_lev1_p40.mh" +#include "hat/hat_yaw00_lev1_p41.mh" +#include "hat/hat_yaw00_lev1_p42.mh" +#include "hat/hat_yaw00_lev1_p43.mh" +#include "hat/hat_yaw00_lev1_p44.mh" +#include "hat/hat_yaw00_lev1_p45.mh" +#include "hat/hat_yaw00_lev1_p46.mh" +#include "hat/hat_yaw00_lev1_p47.mh" +#include "hat/hat_yaw00_lev1_p48.mh" +#include "hat/hat_yaw00_lev1_p49.mh" +#include "hat/hat_yaw00_lev1_p50.mh" +#include "hat/hat_yaw00_lev1_p51.mh" +#include "hat/hat_yaw00_lev1_p52.mh" +#include "hat/hat_yaw00_lev1_p53.mh" +#include "hat/hat_yaw00_lev1_p54.mh" +#include "hat/hat_yaw00_lev1_p55.mh" +#include "hat/hat_yaw00_lev1_p56.mh" +#include "hat/hat_yaw00_lev1_p57.mh" +#include "hat/hat_yaw00_lev1_p58.mh" +#include "hat/hat_yaw00_lev1_p59.mh" +#include "hat/hat_yaw00_lev1_p60.mh" +#include "hat/hat_yaw00_lev1_p61.mh" +#include "hat/hat_yaw00_lev1_p62.mh" +#include "hat/hat_yaw00_lev1_p63.mh" +#include "hat/hat_yaw00_lev1_p64.mh" +#include "hat/hat_yaw00_lev1_p65.mh" +#include "hat/hat_yaw00_lev1_p66.mh" +#include "hat/hat_yaw00_lev1_p67.mh" +#include "hat/hat_yaw00_lev1_p68.mh" +#include "hat/hat_yaw00_lev1_p69.mh" +#include "hat/hat_yaw00_lev1_p70.mh" +#include "hat/hat_yaw00_lev1_p71.mh" +#include "hat/hat_yaw00_lev1_p72.mh" +#include "hat/hat_yaw00_lev1_p73.mh" +#include "hat/hat_yaw00_lev1_p74.mh" +#include "hat/hat_yaw00_lev1_p75.mh" +#include "hat/hat_yaw00_lev1_p76.mh" +#include "hat/hat_yaw00_lev2_p16.mh" +#include "hat/hat_yaw00_lev2_p17.mh" +#include "hat/hat_yaw00_lev2_p18.mh" +#include "hat/hat_yaw00_lev2_p19.mh" +#include "hat/hat_yaw00_lev2_p20.mh" +#include "hat/hat_yaw00_lev2_p21.mh" +#include "hat/hat_yaw00_lev2_p22.mh" +#include "hat/hat_yaw00_lev2_p23.mh" +#include "hat/hat_yaw00_lev2_p24.mh" +#include "hat/hat_yaw00_lev2_p25.mh" +#include "hat/hat_yaw00_lev2_p26.mh" +#include "hat/hat_yaw00_lev2_p27.mh" +#include "hat/hat_yaw00_lev2_p28.mh" +#include "hat/hat_yaw00_lev2_p29.mh" +#include "hat/hat_yaw00_lev2_p30.mh" +#include "hat/hat_yaw00_lev2_p31.mh" +#include "hat/hat_yaw00_lev2_p32.mh" +#include "hat/hat_yaw00_lev2_p33.mh" +#include "hat/hat_yaw00_lev2_p34.mh" +#include "hat/hat_yaw00_lev2_p35.mh" +#include "hat/hat_yaw00_lev2_p36.mh" +#include "hat/hat_yaw00_lev2_p37.mh" +#include "hat/hat_yaw00_lev2_p38.mh" +#include "hat/hat_yaw00_lev2_p39.mh" +#include "hat/hat_yaw00_lev2_p40.mh" +#include "hat/hat_yaw00_lev2_p41.mh" +#include "hat/hat_yaw00_lev2_p42.mh" +#include "hat/hat_yaw00_lev2_p43.mh" +#include "hat/hat_yaw00_lev2_p44.mh" +#include "hat/hat_yaw00_lev2_p45.mh" +#include "hat/hat_yaw00_lev2_p46.mh" +#include "hat/hat_yaw00_lev2_p47.mh" +#include "hat/hat_yaw00_lev2_p48.mh" +#include "hat/hat_yaw00_lev2_p49.mh" +#include "hat/hat_yaw00_lev2_p50.mh" +#include "hat/hat_yaw00_lev2_p51.mh" +#include "hat/hat_yaw00_lev2_p52.mh" +#include "hat/hat_yaw00_lev2_p53.mh" +#include "hat/hat_yaw00_lev2_p54.mh" +#include "hat/hat_yaw00_lev2_p55.mh" +#include "hat/hat_yaw00_lev2_p56.mh" +#include "hat/hat_yaw00_lev2_p57.mh" +#include "hat/hat_yaw00_lev2_p58.mh" +#include "hat/hat_yaw00_lev2_p59.mh" +#include "hat/hat_yaw00_lev2_p60.mh" +#include "hat/hat_yaw00_lev2_p61.mh" +#include "hat/hat_yaw00_lev2_p62.mh" +#include "hat/hat_yaw00_lev2_p63.mh" +#include "hat/hat_yaw00_lev2_p64.mh" +#include "hat/hat_yaw00_lev2_p65.mh" +#include "hat/hat_yaw00_lev2_p66.mh" +#include "hat/hat_yaw00_lev2_p67.mh" +#include "hat/hat_yaw00_lev2_p68.mh" +#include "hat/hat_yaw00_lev2_p69.mh" +#include "hat/hat_yaw00_lev2_p70.mh" +#include "hat/hat_yaw00_lev2_p71.mh" +#include "hat/hat_yaw00_lev2_p72.mh" +#include "hat/hat_yaw00_lev2_p73.mh" +#include "hat/hat_yaw00_lev2_p74.mh" +#include "hat/hat_yaw00_lev2_p75.mh" +#include "hat/hat_yaw00_lev2_p76.mh" + +namespace stasm +{ +// YAW00_DESCMODS defines the descriptor model to use at each point +static const BaseDescMod* YAW00_DESCMODS[] = +{ + &classic_yaw00_lev0_p00, + &classic_yaw00_lev0_p01, + &classic_yaw00_lev0_p02, + &classic_yaw00_lev0_p03, + &classic_yaw00_lev0_p04, + &classic_yaw00_lev0_p05, + &classic_yaw00_lev0_p06, + &classic_yaw00_lev0_p07, + &classic_yaw00_lev0_p08, + &classic_yaw00_lev0_p09, + &classic_yaw00_lev0_p10, + &classic_yaw00_lev0_p11, + &classic_yaw00_lev0_p12, + &classic_yaw00_lev0_p13, + &classic_yaw00_lev0_p14, + &classic_yaw00_lev0_p15, + &hat_yaw00_lev0_p16, + &hat_yaw00_lev0_p17, + &hat_yaw00_lev0_p18, + &hat_yaw00_lev0_p19, + &hat_yaw00_lev0_p20, + &hat_yaw00_lev0_p21, + &hat_yaw00_lev0_p22, + &hat_yaw00_lev0_p23, + &hat_yaw00_lev0_p24, + &hat_yaw00_lev0_p25, + &hat_yaw00_lev0_p26, + &hat_yaw00_lev0_p27, + &hat_yaw00_lev0_p28, + &hat_yaw00_lev0_p29, + &hat_yaw00_lev0_p30, + &hat_yaw00_lev0_p31, + &hat_yaw00_lev0_p32, + &hat_yaw00_lev0_p33, + &hat_yaw00_lev0_p34, + &hat_yaw00_lev0_p35, + &hat_yaw00_lev0_p36, + &hat_yaw00_lev0_p37, + &hat_yaw00_lev0_p38, + &hat_yaw00_lev0_p39, + &hat_yaw00_lev0_p40, + &hat_yaw00_lev0_p41, + &hat_yaw00_lev0_p42, + &hat_yaw00_lev0_p43, + &hat_yaw00_lev0_p44, + &hat_yaw00_lev0_p45, + &hat_yaw00_lev0_p46, + &hat_yaw00_lev0_p47, + &hat_yaw00_lev0_p48, + &hat_yaw00_lev0_p49, + &hat_yaw00_lev0_p50, + &hat_yaw00_lev0_p51, + &hat_yaw00_lev0_p52, + &hat_yaw00_lev0_p53, + &hat_yaw00_lev0_p54, + &hat_yaw00_lev0_p55, + &hat_yaw00_lev0_p56, + &hat_yaw00_lev0_p57, + &hat_yaw00_lev0_p58, + &hat_yaw00_lev0_p59, + &hat_yaw00_lev0_p60, + &hat_yaw00_lev0_p61, + &hat_yaw00_lev0_p62, + &hat_yaw00_lev0_p63, + &hat_yaw00_lev0_p64, + &hat_yaw00_lev0_p65, + &hat_yaw00_lev0_p66, + &hat_yaw00_lev0_p67, + &hat_yaw00_lev0_p68, + &hat_yaw00_lev0_p69, + &hat_yaw00_lev0_p70, + &hat_yaw00_lev0_p71, + &hat_yaw00_lev0_p72, + &hat_yaw00_lev0_p73, + &hat_yaw00_lev0_p74, + &hat_yaw00_lev0_p75, + &hat_yaw00_lev0_p76, + + &classic_yaw00_lev1_p00, + &classic_yaw00_lev1_p01, + &classic_yaw00_lev1_p02, + &classic_yaw00_lev1_p03, + &classic_yaw00_lev1_p04, + &classic_yaw00_lev1_p05, + &classic_yaw00_lev1_p06, + &classic_yaw00_lev1_p07, + &classic_yaw00_lev1_p08, + &classic_yaw00_lev1_p09, + &classic_yaw00_lev1_p10, + &classic_yaw00_lev1_p11, + &classic_yaw00_lev1_p12, + &classic_yaw00_lev1_p13, + &classic_yaw00_lev1_p14, + &classic_yaw00_lev1_p15, + &hat_yaw00_lev1_p16, + &hat_yaw00_lev1_p17, + &hat_yaw00_lev1_p18, + &hat_yaw00_lev1_p19, + &hat_yaw00_lev1_p20, + &hat_yaw00_lev1_p21, + &hat_yaw00_lev1_p22, + &hat_yaw00_lev1_p23, + &hat_yaw00_lev1_p24, + &hat_yaw00_lev1_p25, + &hat_yaw00_lev1_p26, + &hat_yaw00_lev1_p27, + &hat_yaw00_lev1_p28, + &hat_yaw00_lev1_p29, + &hat_yaw00_lev1_p30, + &hat_yaw00_lev1_p31, + &hat_yaw00_lev1_p32, + &hat_yaw00_lev1_p33, + &hat_yaw00_lev1_p34, + &hat_yaw00_lev1_p35, + &hat_yaw00_lev1_p36, + &hat_yaw00_lev1_p37, + &hat_yaw00_lev1_p38, + &hat_yaw00_lev1_p39, + &hat_yaw00_lev1_p40, + &hat_yaw00_lev1_p41, + &hat_yaw00_lev1_p42, + &hat_yaw00_lev1_p43, + &hat_yaw00_lev1_p44, + &hat_yaw00_lev1_p45, + &hat_yaw00_lev1_p46, + &hat_yaw00_lev1_p47, + &hat_yaw00_lev1_p48, + &hat_yaw00_lev1_p49, + &hat_yaw00_lev1_p50, + &hat_yaw00_lev1_p51, + &hat_yaw00_lev1_p52, + &hat_yaw00_lev1_p53, + &hat_yaw00_lev1_p54, + &hat_yaw00_lev1_p55, + &hat_yaw00_lev1_p56, + &hat_yaw00_lev1_p57, + &hat_yaw00_lev1_p58, + &hat_yaw00_lev1_p59, + &hat_yaw00_lev1_p60, + &hat_yaw00_lev1_p61, + &hat_yaw00_lev1_p62, + &hat_yaw00_lev1_p63, + &hat_yaw00_lev1_p64, + &hat_yaw00_lev1_p65, + &hat_yaw00_lev1_p66, + &hat_yaw00_lev1_p67, + &hat_yaw00_lev1_p68, + &hat_yaw00_lev1_p69, + &hat_yaw00_lev1_p70, + &hat_yaw00_lev1_p71, + &hat_yaw00_lev1_p72, + &hat_yaw00_lev1_p73, + &hat_yaw00_lev1_p74, + &hat_yaw00_lev1_p75, + &hat_yaw00_lev1_p76, + + &classic_yaw00_lev2_p00, + &classic_yaw00_lev2_p01, + &classic_yaw00_lev2_p02, + &classic_yaw00_lev2_p03, + &classic_yaw00_lev2_p04, + &classic_yaw00_lev2_p05, + &classic_yaw00_lev2_p06, + &classic_yaw00_lev2_p07, + &classic_yaw00_lev2_p08, + &classic_yaw00_lev2_p09, + &classic_yaw00_lev2_p10, + &classic_yaw00_lev2_p11, + &classic_yaw00_lev2_p12, + &classic_yaw00_lev2_p13, + &classic_yaw00_lev2_p14, + &classic_yaw00_lev2_p15, + &hat_yaw00_lev2_p16, + &hat_yaw00_lev2_p17, + &hat_yaw00_lev2_p18, + &hat_yaw00_lev2_p19, + &hat_yaw00_lev2_p20, + &hat_yaw00_lev2_p21, + &hat_yaw00_lev2_p22, + &hat_yaw00_lev2_p23, + &hat_yaw00_lev2_p24, + &hat_yaw00_lev2_p25, + &hat_yaw00_lev2_p26, + &hat_yaw00_lev2_p27, + &hat_yaw00_lev2_p28, + &hat_yaw00_lev2_p29, + &hat_yaw00_lev2_p30, + &hat_yaw00_lev2_p31, + &hat_yaw00_lev2_p32, + &hat_yaw00_lev2_p33, + &hat_yaw00_lev2_p34, + &hat_yaw00_lev2_p35, + &hat_yaw00_lev2_p36, + &hat_yaw00_lev2_p37, + &hat_yaw00_lev2_p38, + &hat_yaw00_lev2_p39, + &hat_yaw00_lev2_p40, + &hat_yaw00_lev2_p41, + &hat_yaw00_lev2_p42, + &hat_yaw00_lev2_p43, + &hat_yaw00_lev2_p44, + &hat_yaw00_lev2_p45, + &hat_yaw00_lev2_p46, + &hat_yaw00_lev2_p47, + &hat_yaw00_lev2_p48, + &hat_yaw00_lev2_p49, + &hat_yaw00_lev2_p50, + &hat_yaw00_lev2_p51, + &hat_yaw00_lev2_p52, + &hat_yaw00_lev2_p53, + &hat_yaw00_lev2_p54, + &hat_yaw00_lev2_p55, + &hat_yaw00_lev2_p56, + &hat_yaw00_lev2_p57, + &hat_yaw00_lev2_p58, + &hat_yaw00_lev2_p59, + &hat_yaw00_lev2_p60, + &hat_yaw00_lev2_p61, + &hat_yaw00_lev2_p62, + &hat_yaw00_lev2_p63, + &hat_yaw00_lev2_p64, + &hat_yaw00_lev2_p65, + &hat_yaw00_lev2_p66, + &hat_yaw00_lev2_p67, + &hat_yaw00_lev2_p68, + &hat_yaw00_lev2_p69, + &hat_yaw00_lev2_p70, + &hat_yaw00_lev2_p71, + &hat_yaw00_lev2_p72, + &hat_yaw00_lev2_p73, + &hat_yaw00_lev2_p74, + &hat_yaw00_lev2_p75, + &hat_yaw00_lev2_p76, + + &classic_yaw00_lev3_p00, + &classic_yaw00_lev3_p01, + &classic_yaw00_lev3_p02, + &classic_yaw00_lev3_p03, + &classic_yaw00_lev3_p04, + &classic_yaw00_lev3_p05, + &classic_yaw00_lev3_p06, + &classic_yaw00_lev3_p07, + &classic_yaw00_lev3_p08, + &classic_yaw00_lev3_p09, + &classic_yaw00_lev3_p10, + &classic_yaw00_lev3_p11, + &classic_yaw00_lev3_p12, + &classic_yaw00_lev3_p13, + &classic_yaw00_lev3_p14, + &classic_yaw00_lev3_p15, + &classic_yaw00_lev3_p16, + &classic_yaw00_lev3_p17, + &classic_yaw00_lev3_p18, + &classic_yaw00_lev3_p19, + &classic_yaw00_lev3_p20, + &classic_yaw00_lev3_p21, + &classic_yaw00_lev3_p22, + &classic_yaw00_lev3_p23, + &classic_yaw00_lev3_p24, + &classic_yaw00_lev3_p25, + &classic_yaw00_lev3_p26, + &classic_yaw00_lev3_p27, + &classic_yaw00_lev3_p28, + &classic_yaw00_lev3_p29, + &classic_yaw00_lev3_p30, + &classic_yaw00_lev3_p31, + &classic_yaw00_lev3_p32, + &classic_yaw00_lev3_p33, + &classic_yaw00_lev3_p34, + &classic_yaw00_lev3_p35, + &classic_yaw00_lev3_p36, + &classic_yaw00_lev3_p37, + &classic_yaw00_lev3_p38, + &classic_yaw00_lev3_p39, + &classic_yaw00_lev3_p40, + &classic_yaw00_lev3_p41, + &classic_yaw00_lev3_p42, + &classic_yaw00_lev3_p43, + &classic_yaw00_lev3_p44, + &classic_yaw00_lev3_p45, + &classic_yaw00_lev3_p46, + &classic_yaw00_lev3_p47, + &classic_yaw00_lev3_p48, + &classic_yaw00_lev3_p49, + &classic_yaw00_lev3_p50, + &classic_yaw00_lev3_p51, + &classic_yaw00_lev3_p52, + &classic_yaw00_lev3_p53, + &classic_yaw00_lev3_p54, + &classic_yaw00_lev3_p55, + &classic_yaw00_lev3_p56, + &classic_yaw00_lev3_p57, + &classic_yaw00_lev3_p58, + &classic_yaw00_lev3_p59, + &classic_yaw00_lev3_p60, + &classic_yaw00_lev3_p61, + &classic_yaw00_lev3_p62, + &classic_yaw00_lev3_p63, + &classic_yaw00_lev3_p64, + &classic_yaw00_lev3_p65, + &classic_yaw00_lev3_p66, + &classic_yaw00_lev3_p67, + &classic_yaw00_lev3_p68, + &classic_yaw00_lev3_p69, + &classic_yaw00_lev3_p70, + &classic_yaw00_lev3_p71, + &classic_yaw00_lev3_p72, + &classic_yaw00_lev3_p73, + &classic_yaw00_lev3_p74, + &classic_yaw00_lev3_p75, + &classic_yaw00_lev3_p76, +}; + +} // namespace stasm +#endif // STASM_YAW00_1_H diff --git a/3rdparty/stasm4.0.0/stasm/stasm/src/asm.cpp b/3rdparty/stasm4.0.0/stasm/stasm/src/asm.cpp new file mode 100755 index 0000000..4f969d9 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/src/asm.cpp @@ -0,0 +1,265 @@ +// asm.cpp: Active Shape Model class +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#include "asm.h" +#include "hatdesc.h" +#include "eyedist.h" + +namespace stasm +{ +static void TraceShape( // write an image file showing current shape on the image + const Shape& shape, // in: current search shape + const Image& pyrimg, // in: image scaled to this pyramid level + int ilev, // in: pyramid level (0 is full size) + int iter, // in: model iteration (-1 if start shape) + const char* suffix) // in +{ + (void) shape; + (void) pyrimg; + (void) ilev; + (void) iter; + (void) suffix; +#if TRACE_IMAGES // will be 0 unless debugging (defined in stasm.h) + + static int index; // number images so they appear in order in the directory + // start at index 30 because lower indices have already used for facedet etc. + if (strcmp(suffix, "start") == 0) + index = 30; + Image img; // pyrimg rescaled back to full size image (after rescaling by eyemouth) + const double RESOLUTION = 2; // 1 for no extra resolution, 2 for double resolution + const double rescale = RESOLUTION / GetPyrScale(ilev); + cv::resize(pyrimg, img, cv::Size(), rescale, rescale, cv::INTER_NEAREST); + CImage cimg; cvtColor(img, cimg, CV_GRAY2BGR); // color image + DesaturateImg(cimg); + Shape shape1(RoundMat(shape)); + shape1 += .4; // put shape points in center of rescaled pixels + shape1 *= rescale; + DrawShape(cimg, shape1, C_YELLOW, false, 1); + char path[SLEN]; + if (iter < 0) // start shape? + sprintf(path, "%s_%2.2d_%s.bmp", Base(imgpath_g), index, suffix); + else + sprintf(path, "%s_%2.2d_lev%d_iter%d_%s.bmp", + Base(imgpath_g), index, ilev, iter, suffix); + ImgPrintf(cimg, 10 * RESOLUTION, 20 * RESOLUTION, C_YELLOW, 2, path); + if (iter >= 0) + { + // draw 1D patch boundary at one point (patch is drawn + // horizontal, not rotated to shape boundary as it should be) + // [Thanks to Satish Lokkoju for RoundMat fix] + + Shape shape2(RoundMat(shape)); + int ipoint = 0; + int proflen = 9; // TASM_1D_PROFLEN + int x1 = cvRound(shape2(ipoint, IX)) - proflen / 2; + int x2 = x1 + proflen; + int y1 = cvRound(shape2(ipoint, IY)); + int y2 = y1 + 1; + rectangle(cimg, + cv::Point(cvRound(rescale * x1), cvRound(rescale * y1)), + cv::Point(cvRound(rescale * x2), cvRound(rescale * y2)), + CV_RGB(255,0,0), 1); + + // draw 2D patch boundary at one point + + if (ilev <= HAT_START_LEV) // we use HATs only at upper pyr levs + { + // get position of left eye pupil by first converting to a shape17 + ipoint = 0; // assume we can't get position of left eye pupil + Shape newshape(Shape17OrEmpty(shape2)); + if (newshape.rows) // successfully converted to a shape17? + ipoint = L17_LPupil; + else + newshape = shape2; + #define round2(x) 2 * cvRound((x) / 2) + int patchwidth = HAT_PATCH_WIDTH + round2(ilev * HAT_PATCH_WIDTH_ADJ); + x1 = cvRound(newshape(ipoint, IX)) - patchwidth / 2; + x2 = x1 + patchwidth; + y1 = cvRound(newshape(ipoint, IY)) - patchwidth / 2; + y2 = y1 + patchwidth; + rectangle(cimg, + cv::Point(cvRound(rescale * x1), cvRound(rescale * y1)), + cv::Point(cvRound(rescale * x2), cvRound(rescale * y2)), + CV_RGB(255,0,0), 1); + } + } + lprintf("%s\n", path); + if (!cv::imwrite(path, cimg)) + Err("Cannot write %s", path); + index++; + +#endif // TRACE_IMAGES +} + +#if _OPENMP + +void Mod::SuggestShape_( // args same as non OpenMP version, see below + Shape& shape, // io + int ilev, // in + const Image& img, // in + const Shape& pinned) // in +const +{ + static bool firsttime = true; + int ncatch = 0; + const Shape inshape(shape.clone()); + + // Call the search function DescSearch_ concurrently for multiple points. + // Note that dynamic OpenMP scheduling is faster here than static, + // because the time through the loop varies widely (mainly because + // classic descriptors are faster than HATs). + + #pragma omp parallel for schedule(dynamic) + + for (int ipoint = 0; ipoint < shape.rows; ipoint++) + if (pinned.rows == 0 || !PointUsed(pinned, ipoint)) // skip point if pinned + { + // You are not allowed to jump out of an OpenMP for loop. Thus + // we need this try block, to subsume the global try blocks in + // stasm_lib.cpp. Without this try, a call to Err would cause + // a jump to the global catch. + + try + { + if (firsttime && omp_get_thread_num() == 0) + { + firsttime = false; + logprintf("[nthreads %d]", omp_get_num_threads()); + } + descmods_[ilev][ipoint]-> + DescSearch_(shape(ipoint, IX), shape(ipoint, IY), + img, inshape, ilev, ipoint); + } + catch(...) + { + ncatch++; // a call was made to Err or a CV_Assert failed + } + } + + if (ncatch) + { + if (ncatch > 1) + lprintf_always("\nMultiple errors, only the first will be printed\n"); + // does not matter what we throw, will be caught by global catch + throw "SuggestShape_"; + } +} + +#else // not _OPENMP + +void Mod::SuggestShape_( // estimate shape by matching descr at each point + Shape& shape, // io: points will be moved for best descriptor matches + int ilev, // in: pyramid level (0 is full size) + const Image& img, // in: image scaled to this pyramid level + const Shape& pinned, + const Hat &hat, + StasmHash &hash) +const +{ + const Shape inshape(shape.clone()); + + for (int ipoint = 0; ipoint < shape.rows; ipoint++) + if (pinned.rows == 0 || !PointUsed(pinned, ipoint)) // skip point if pinned + { + // Call the ClassicDescMod or HatDescMod search function + // to update the current point in shape (ipoint). + // For the yaw00 model, yaw00.mh:YAW00_DESCMODS defines which + // descriptor model is used for each point. + + descmods_[ilev][ipoint]->DescSearch_(shape(ipoint, IX), shape(ipoint, IY),img, inshape, ilev, ipoint, hat, hash); + } +} +#endif // not _OPENMP + +void Mod::LevSearch_( // do an ASM search at one level in the image pyr + Shape& shape, // io: the face shape for this pyramid level + int ilev, // in: pyramid level (0 is full size) + const Image& img, // in: image scaled to this pyramid level + const Shape& pinnedshape) // in: if no rows then no pinned landmarks, else + // points except those equal to 0,0 are pinned +const +{ + StasmHash hash; + + TraceShape(shape, img, ilev, 0, "enterlevsearch"); + + const Hat &hat = InitHatLevData(img, ilev); // init internal HAT mats for this lev + + VEC b(NSIZE(shapemod_.eigvals_), 1, 0.); // eigvec weights, init to 0 + + for (int iter = 0; iter < SHAPEMODEL_ITERS; iter++) + { + // suggest shape by descriptor matching at each landmark + + SuggestShape_(shape, ilev, img, pinnedshape, hat, hash); + + TraceShape(shape, img, ilev, iter, "suggested"); + + // adjust suggested shape to conform to the shape model + + if (pinnedshape.rows) + shape = shapemod_.ConformShapeToMod_Pinned_(b, shape, ilev, pinnedshape); + else + shape = shapemod_.ConformShapeToMod_(b, shape, ilev); + + TraceShape(shape, img, ilev, iter, "conformed"); + } +} + +static void CreatePyr( // create image pyramid + vector& pyr, // out: the pyramid, pyr[0] is full size image + const Image& img, // in: full size image + int nlevs) // in +{ + CV_Assert(nlevs >= 1 && nlevs < 10); // 10 is arb + pyr.resize(nlevs); + pyr[0] = img; // pyramid level 0 is full size image + for (int ilev = 1; ilev < nlevs; ilev++) + { + const double scale = GetPyrScale(ilev); + cv::resize(img, pyr[ilev], cv::Size(), scale, scale, cv::INTER_LINEAR); + } +} + +static double GetPrescale( // factor to scale face to standard size prior to search + const Shape& startshape) // in: startshape roughly positioned on face +{ + return EYEMOUTH_DIST / EyeMouthDist(startshape); +} + +Shape Mod::ModSearch_( // returns coords of the facial landmarks + const Shape& startshape, // in: startshape roughly positioned on face + const Image& img, // in: grayscale image (typically just ROI) + const Shape* pinnedshape) // in: pinned landmarks, NULL if nothing pinned +const +{ + Image scaledimg; // image scaled to fixed eye-mouth distance + const double imgscale = GetPrescale(startshape); + + // TODO This resize is quite slow (cv::INTER_NEAREST is even slower, why?). + cv::resize(img, scaledimg, + cv::Size(), imgscale, imgscale, cv::INTER_LINEAR); + + TraceShape(startshape * imgscale, scaledimg, 0, -1, "start"); + + vector pyr; // image pyramid (a vec of images, one for each pyr lev) + CreatePyr(pyr, scaledimg, N_PYR_LEVS); + + Shape shape(startshape * imgscale * GetPyrScale(N_PYR_LEVS)); + + Shape pinned; // pinnedshape scaled to current pyr lev + if (pinnedshape) + pinned = *pinnedshape * imgscale * GetPyrScale(N_PYR_LEVS); + + for (int ilev = N_PYR_LEVS-1; ilev >= 0; ilev--) + { + shape *= PYR_RATIO; // scale shape to this pyr lev + pinned *= PYR_RATIO; + + LevSearch_(shape, ilev, pyr[ilev], pinned); + } + return shape / imgscale; +} + +} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/stasm/src/classicdesc.cpp b/3rdparty/stasm4.0.0/stasm/stasm/src/classicdesc.cpp new file mode 100755 index 0000000..c8d6afa --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/src/classicdesc.cpp @@ -0,0 +1,289 @@ +// classicdesc.cpp: model for classic ASM descriptors +// +// By "classic descriptor" we mean the Cootes' style one dimensional +// profile along the whisker orthogonal to the shape boundary. +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#include "classicdesc.h" +#include "landmarks.h" + +namespace stasm +{ +static void NormalizeMat( + MAT& mat) // io: normalized so L2 length is 1 +{ + double norm = cv::norm(mat); // L2 norm + if (!IsZero(norm)) + mat /= norm; +} + +static const VEC Bisector( // return normalized bisector of three ordered points + const VEC& prev, // in: x,y coords of previous point (1x2 matrix) + const VEC& point, // in + const VEC& next) // in +{ + VEC u(1, 2); // u is point - prev, rotated by 90 degrees + u(IX) = point(IY) - prev(IY); + u(IY) = prev(IX) - point(IX); + NormalizeMat(u); + + VEC v(1, 2); // v is next - point, rotated by 90 degrees + v(IX) = next(IY) - point(IY); + v(IY) = point(IX) - next(IX); + NormalizeMat(v); + + VEC w(u + v); NormalizeMat(w); + + // are prev and next in the same line? if so, avoid numerical issues + if (IsZero(w(IX)) && IsZero(w(IY))) + { + w = point - prev; + NormalizeMat(w); + } + return w; // w is the direction of the bisector +} + +// get x and y distances to take a single pixel step along the whisker + +static void WhiskerStep( + double& xstep, // out: x dist to move one pix along whisker + double& ystep, // out: y dist to move one pix along whisker + const Shape& shape, // in + int ipoint) // in: index of the current point +{ + int prev, next; PrevAndNextLandmarks(prev, next, ipoint, shape); + + if ((Equal(shape(prev, IX), shape(ipoint, IX)) && + Equal(shape(prev, IY), shape(ipoint, IY))) || + + (Equal(shape(next, IX), shape(ipoint, IX)) && + Equal(shape(next, IY), shape(ipoint, IY)))) + { + // The prev or next point is on top of the current point. + // Arbitrarily point the whisker in a horizontal direction. + // TODO Revisit, this is common at low resolution pyramid levels. + + xstep = 1; + ystep = 0; + } + else + { + const VEC whisker_direction(Bisector(shape.row(prev), + shape.row(ipoint), + shape.row(next))); + xstep = -whisker_direction(IX); + ystep = -whisker_direction(IY); + + // normalize so either xstep or ystep will be +-1, + // and the other will be smaller than +-1 + + const double abs_xstep = ABS(xstep); + const double abs_ystep = ABS(ystep); + if (abs_xstep >= abs_ystep) + { + xstep /= abs_xstep; + ystep /= abs_xstep; + } + else + { + xstep /= abs_ystep; + ystep /= abs_ystep; + } + } +} + +static inline int Step( // return x coord at the given offset along whisker + double x, // in: x coord of center of whisker + double xstep, // in: x dist to move one pixel along whisker + int offset) // in: offset along whisker in pixels +{ + return cvRound(x + (offset * xstep)); +} + +static inline int Pix( // get pixel at ix and iy, forcing ix and iy in range + const Image& img, // in + int ix, // in + int iy) // in +{ + return img(Clamp(iy, 0, img.rows-1), Clamp(ix, 0, img.cols-1)); +} + +// fullprof is the 1D profile along the whisker, including extra elements +// to allow searching away from the current position of the landmark. +// +// shape[ipoint] is the current position of the landmark, +// and the center point of the whisker. +// We also use shape for figuring out the direction of the whisker. + +static VEC FullProf( // return full profile + const Image& img, // in + const MAT& shape, // in + int ipoint, // in: index of the current point + int fullproflen) // in +{ + VEC fullprof(1, fullproflen); + + double xstep; // x axis dist corresponding to one pixel along whisker + double ystep; + WhiskerStep(xstep, ystep, shape, ipoint); + + const double x = shape(ipoint, IX); // center point of the whisker + const double y = shape(ipoint, IY); + + // number of pixs to sample in each direction along the whisker + const int n = (NSIZE(fullprof) - 1) / 2; + + int prevpix = Pix(img, + Step(x, xstep, -n-1), Step(y, ystep, -n-1)); + + for (int i = -n; i <= n; i++) + { + const int pix = Pix(img, + Step(x, xstep, i), Step(y, ystep, i)); + fullprof(i + n) = double(pix - prevpix); // signed gradient + prevpix = pix; + } + return fullprof; +} + +static double SumAbsElems( // return the sum of the abs values of the elems of mat + const MAT& mat) // in +{ + CV_Assert(mat.isContinuous()); + const double* const data = Buf(mat); + double sum = 0; + int i = NSIZE(mat); // number of elements + while (i--) + sum += ABS(data[i]); + return sum; +} + +static VEC SubProf( // return the profile at given offset within fullprof + int offset, // in: offset along whisker in pixels + int proflen, // in + const VEC& fullprof) // in +{ + CV_Assert(proflen > 1 && proflen < 100); // 100 is arb + CV_Assert(proflen % 2 == 1); // prof length must be odd + + VEC prof(1, proflen); // the profile at the given offset along whisker + + // copy the relevant part of fullprof into prof + + memcpy(Buf(prof), + Buf(fullprof) + offset + NSIZE(fullprof)/2 - NSIZE(prof)/2, + NSIZE(prof) * sizeof(prof(0))); + + // normalize prof + + double sum = SumAbsElems(prof); + if (!IsZero(sum)) + prof *= NSIZE(prof) / sum; + + return prof; +} + +VEC ClassicProf( // currently used only when training a new model + const Image& img, // in: the image scaled to this pyramid level + const Shape& inshape, // in: current posn of landmarks (for whisker directions) + int ipoint, // in: index of the current landmark + int proflen) // in +{ + return SubProf(0, proflen, FullProf(img, inshape, ipoint, proflen)); +} + +// This returns a double equal to x.t() * mat * x. +// +// x is a vector (row or column, it doesn't matter). +// +// mat is assumed to be a symmetric matrix +// (but only the upper right triangle of mat is actually used). +// +// mat and x are not modified. +// +// This function is equivalent to x.t() * mat * x(), but is optimized +// for speed and is faster. It's faster because we use the fact that +// mat is symmetric to roughly halve the number of operations. + +static double xAx( + const VEC& x, // in + const MAT& mat) //in: must be symmetric +{ + const int n = NSIZE(x); + CV_Assert(mat.rows == n && mat.cols == n && x.isContinuous()); + const double* px = Buf(x); + double diagsum = 0, sum = 0; + int i = n; + while (i--) + { + const double xi = px[i]; + const double* const rowbuf = mat.ptr(i); + diagsum += rowbuf[i] * SQ(xi); // sum diag elements + for (int j = i+1; j < n; j++) // sum upper right triangle elements + sum += rowbuf[j] * xi * px[j]; + } + return diagsum + 2 * sum; // "2 *" to include lower left triangle elements +} + +// If OpenMP is enabled, multiple instances of this function will be called +// concurrently (each call will have a different value of x and y). Thus this +// function and its callees do not modify any data that is not on the stack. + +void ClassicDescSearch( // search along whisker for best profile match + double& x, // io: (in: old posn of landmark, out: new posn) + double& y, // io: + const Image& img, // in: the image scaled to this pyramid level + const Shape& inshape, // in: current posn of landmarks (for whisker directions) + int ipoint, // in: index of the current landmark + const MAT& meanprof, // in: mean of the training profiles for this point + const MAT& covi) // in: inverse of the covar of the training profiles +{ + const int proflen = NSIZE(meanprof); + CV_Assert(proflen % 2 == 1); // proflen must be odd in this implementation + + // fullprof is the 1D profile along the whisker including the extra + // elements to allow search +-CLASSIC_MAX_OFFSET pixels away from + // the current position of the landmark. + // We precalculate the fullprof for efficiency in the for loop below. + + const int fullproflen = proflen + 2 * CLASSIC_MAX_OFFSET; + CV_Assert(fullproflen % 2 == 1); // fullprof length must be odd + const VEC fullprof(FullProf(img, inshape, ipoint, fullproflen)); + + // move along the whisker looking for the best match + + int bestoffset = 0; + double mindist = FLT_MAX; + for (int offset = -CLASSIC_MAX_OFFSET; + offset <= CLASSIC_MAX_OFFSET; + offset += CLASSIC_SEARCH_RESOL) + { + // Get the profile distance. That is, get the image profile at the given + // offset along the whisker, and return the Mahalanobis distance between + // it and the model mean profile. Low distance means good fit. + + const VEC prof(SubProf(offset, proflen, fullprof)); + + // The following code is equivalent to + // dist = (prof - meanprof).t() * covi * (prof - meanprof) + // but is optimized for speed. + + prof -= meanprof; // for efficiency, use "-=" not "=" with "-" + const double dist = xAx(prof, covi); + + if (dist < mindist) + { + mindist = dist; + bestoffset = offset; + } + } + // change x,y to the best position along the whisker + + double xstep, ystep; + WhiskerStep(xstep, ystep, inshape, ipoint); + x = inshape(ipoint, IX) + (bestoffset * xstep); + y = inshape(ipoint, IY) + (bestoffset * ystep); +} + +} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/stasm/src/convshape.cpp b/3rdparty/stasm4.0.0/stasm/stasm/src/convshape.cpp new file mode 100755 index 0000000..f90194a --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/src/convshape.cpp @@ -0,0 +1,345 @@ +// convshape.cpp: convert a shape such as stasm 77 point shape to other formats +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#include "stasm_lib.h" +#include "convshape.h" +#include "shape17.h" + +namespace stasm +{ +static void CopyPoint( // copy a point from oldshape to shape + Shape& shape, // io + const Shape& oldshape, // in + int i, // in + int iold) // in +{ + shape(i, IX) = oldshape(iold, IX); + shape(i, IY) = oldshape(iold, IY); +} + +static void InterPoint( // interpolate a point from two nearby oldshape points + Shape& shape, // io + const Shape& oldshape, // in + int i, // in: shape point + double ratio, // in: interpolation ratio, 0 to 1 + int i1, // in: oldshape point 1 + int i2) // in: oldshape point 2 +{ + if (!PointUsed(oldshape, i1) && !PointUsed(oldshape, i2)) + { + shape(i, IX) = 0; + shape(i, IY) = 0; + } + else if (!PointUsed(oldshape, i1)) + { + shape(i, IX) = oldshape(i2, IX) + 1; // +1 is arb, to disambiguate point + shape(i, IY) = oldshape(i2, IY) + 1; + } + else if (!PointUsed(oldshape, i2)) + { + shape(i, IX) = oldshape(i1, IX) + 1; + shape(i, IY) = oldshape(i1, IY) + 1; + } + else + { + CV_Assert(ratio >= 0 && ratio <= 1); + shape(i, IX) = ratio * oldshape(i1, IX) + (1-ratio) * oldshape(i2, IX); + shape(i, IY) = ratio * oldshape(i1, IY) + (1-ratio) * oldshape(i2, IY); + } +} + +static Shape Shape77As20( // return an approximated BioID 20 point shape + const Shape& shape) // in: Stasm 77 point shape +{ + CV_Assert(shape.rows == 77); + + Shape newshape(20, 2); + + CopyPoint(newshape, shape, 0, 38); + CopyPoint(newshape, shape, 1, 39); + CopyPoint(newshape, shape, 2, 59); + CopyPoint(newshape, shape, 3, 65); + CopyPoint(newshape, shape, 4, 18); + CopyPoint(newshape, shape, 5, 21); + CopyPoint(newshape, shape, 6, 22); + CopyPoint(newshape, shape, 7, 25); + CopyPoint(newshape, shape, 8, 0); + CopyPoint(newshape, shape, 9, 34); + CopyPoint(newshape, shape, 10, 30); + CopyPoint(newshape, shape, 11, 40); + CopyPoint(newshape, shape, 12, 44); + CopyPoint(newshape, shape, 13, 12); + CopyPoint(newshape, shape, 14, 52); + CopyPoint(newshape, shape, 15, 51); + CopyPoint(newshape, shape, 16, 53); + CopyPoint(newshape, shape, 17, 62); + CopyPoint(newshape, shape, 18, 74); + CopyPoint(newshape, shape, 19, 6); + +#if MOD_A1 || MOD_A || MOD_A_EMU + const double eyemouth = EyeMouthDist(shape); + newshape(15, IY) += MAX(1, .02 * eyemouth); // move down, into nostril + newshape(16, IY) += MAX(1, .02 * eyemouth); // move down, into nostril +#endif + + return newshape; +} + +static Shape Shape77As22( // return an approximated AR 22 point shape + const Shape& shape) // in: Stasm 77 point shape +{ + CV_Assert(shape.rows == 77); + + // first 20 points same as BioId + Shape newshape = DimKeep(Shape77As20(shape), 22, 2); + + CopyPoint(newshape, shape, 20, 3); + CopyPoint(newshape, shape, 21, 9); + + return newshape; +} + +static Shape Shape77AsXm2vts68( // return an approximated XM2VTS 68 point shape + const Shape& shape) // in: Stasm 77 point shape +{ + CV_Assert(shape.rows == 77); + + Shape newshape(68, 2); + + CopyPoint(newshape, shape, 0, 0); + InterPoint(newshape, shape, 1, .6667, 1, 2); + InterPoint(newshape, shape, 2, .5, 2, 3); + CopyPoint(newshape, shape, 3, 3); + InterPoint(newshape, shape, 4, .3333, 3, 4); + InterPoint(newshape, shape, 5, .6667, 4, 5); + CopyPoint(newshape, shape, 6, 5); + CopyPoint(newshape, shape, 7, 6); + CopyPoint(newshape, shape, 8, 7); + InterPoint(newshape, shape, 9, .3333, 7, 8); + InterPoint(newshape, shape, 10, .6667, 8, 9); + CopyPoint(newshape, shape, 11, 9); + InterPoint(newshape, shape, 12, .5, 9, 10); + InterPoint(newshape, shape, 13, .3333, 10, 11); + CopyPoint(newshape, shape, 14, 12); + CopyPoint(newshape, shape, 15, 25); + CopyPoint(newshape, shape, 16, 24); + CopyPoint(newshape, shape, 17, 23); + CopyPoint(newshape, shape, 18, 22); + CopyPoint(newshape, shape, 19, 27); + CopyPoint(newshape, shape, 20, 26); + CopyPoint(newshape, shape, 21, 18); + CopyPoint(newshape, shape, 22, 17); + CopyPoint(newshape, shape, 23, 16); + CopyPoint(newshape, shape, 24, 21); + CopyPoint(newshape, shape, 25, 20); + CopyPoint(newshape, shape, 26, 19); + CopyPoint(newshape, shape, 27, 34); + CopyPoint(newshape, shape, 28, 32); + CopyPoint(newshape, shape, 29, 30); + CopyPoint(newshape, shape, 30, 36); + CopyPoint(newshape, shape, 31, 38); + CopyPoint(newshape, shape, 32, 44); + CopyPoint(newshape, shape, 33, 42); + CopyPoint(newshape, shape, 34, 40); + CopyPoint(newshape, shape, 35, 46); + CopyPoint(newshape, shape, 36, 39); + InterPoint(newshape, shape, 37, .6667, 30, 40); + newshape(37, IX) = shape(50, IX); + CopyPoint(newshape, shape, 38, 50); + CopyPoint(newshape, shape, 39, 58); + CopyPoint(newshape, shape, 40, 57); + CopyPoint(newshape, shape, 41, 56); + CopyPoint(newshape, shape, 42, 55); + CopyPoint(newshape, shape, 43, 54); + CopyPoint(newshape, shape, 44, 48); + InterPoint(newshape, shape, 45, .3333, 30, 40); + newshape(45, IX) = shape(48, IX); + CopyPoint(newshape, shape, 46, 51); + CopyPoint(newshape, shape, 47, 53); + CopyPoint(newshape, shape, 48, 59); + CopyPoint(newshape, shape, 49, 60); + CopyPoint(newshape, shape, 50, 61); + CopyPoint(newshape, shape, 51, 62); + CopyPoint(newshape, shape, 52, 63); + CopyPoint(newshape, shape, 53, 64); + CopyPoint(newshape, shape, 54, 65); + CopyPoint(newshape, shape, 55, 72); + CopyPoint(newshape, shape, 56, 73); + CopyPoint(newshape, shape, 57, 74); + CopyPoint(newshape, shape, 58, 75); + CopyPoint(newshape, shape, 59, 76); + CopyPoint(newshape, shape, 60, 69); + CopyPoint(newshape, shape, 61, 70); + CopyPoint(newshape, shape, 62, 71); + CopyPoint(newshape, shape, 63, 66); + CopyPoint(newshape, shape, 64, 67); + CopyPoint(newshape, shape, 65, 68); + InterPoint(newshape, shape, 66, .5, 67, 70); + CopyPoint(newshape, shape, 67, 52); + +#if MOD_A1 || MOD_A || MOD_A_EMU + const double eyemouth = EyeMouthDist(shape); + newshape(38, IY) += MAX(1, .05 * eyemouth); // move side of nose down + newshape(44, IY) += MAX(1, .05 * eyemouth); // move side of nose down + newshape(46, IY) += MAX(1, .02 * eyemouth); // move down, into nostril + newshape(47, IY) += MAX(1, .02 * eyemouth); // move down, into nostril +#endif + + return newshape; +} + +static Shape Shape77As68( // return an approximated XM2VTS 68 point shape + const Shape& shape) // in: Stasm 77 point shape +{ + CV_Assert(shape.rows == 77); + + Shape newshape(68, 2); + + CopyPoint(newshape, shape, 0, 0); + InterPoint(newshape, shape, 1, .6667, 1, 2); + InterPoint(newshape, shape, 2, .5, 2, 3); + CopyPoint(newshape, shape, 3, 3); + InterPoint(newshape, shape, 4, .3333, 3, 4); + InterPoint(newshape, shape, 5, .6667, 4, 5); + CopyPoint(newshape, shape, 6, 5); + CopyPoint(newshape, shape, 7, 6); + CopyPoint(newshape, shape, 8, 7); + InterPoint(newshape, shape, 9, .3333, 7, 8); + InterPoint(newshape, shape, 10, .6667, 8, 9); + CopyPoint(newshape, shape, 11, 9); + InterPoint(newshape, shape, 12, .5, 9, 10); + InterPoint(newshape, shape, 13, .3333, 10, 11); + CopyPoint(newshape, shape, 14, 12); + CopyPoint(newshape, shape, 15, 25); + CopyPoint(newshape, shape, 16, 24); + CopyPoint(newshape, shape, 17, 23); + CopyPoint(newshape, shape, 18, 22); + CopyPoint(newshape, shape, 19, 27); + CopyPoint(newshape, shape, 20, 26); + CopyPoint(newshape, shape, 21, 18); + CopyPoint(newshape, shape, 22, 17); + CopyPoint(newshape, shape, 23, 16); + CopyPoint(newshape, shape, 24, 21); + CopyPoint(newshape, shape, 25, 20); + CopyPoint(newshape, shape, 26, 19); + CopyPoint(newshape, shape, 27, 34); + CopyPoint(newshape, shape, 28, 32); + CopyPoint(newshape, shape, 29, 30); + CopyPoint(newshape, shape, 30, 36); + CopyPoint(newshape, shape, 31, 38); + CopyPoint(newshape, shape, 32, 44); + CopyPoint(newshape, shape, 33, 42); + CopyPoint(newshape, shape, 34, 40); + CopyPoint(newshape, shape, 35, 46); + CopyPoint(newshape, shape, 36, 39); + InterPoint(newshape, shape, 37, .6667, 30, 40); + newshape(37, IX) = shape(50, IX); + CopyPoint(newshape, shape, 38, 50); + CopyPoint(newshape, shape, 39, 58); + CopyPoint(newshape, shape, 40, 57); + CopyPoint(newshape, shape, 41, 56); + CopyPoint(newshape, shape, 42, 55); + CopyPoint(newshape, shape, 43, 54); + CopyPoint(newshape, shape, 44, 48); + InterPoint(newshape, shape, 45, .3333, 30, 40); + newshape(45, IX) = shape(48, IX); + CopyPoint(newshape, shape, 46, 51); + CopyPoint(newshape, shape, 47, 53); + CopyPoint(newshape, shape, 48, 59); + CopyPoint(newshape, shape, 49, 60); + CopyPoint(newshape, shape, 50, 61); + CopyPoint(newshape, shape, 51, 62); + CopyPoint(newshape, shape, 52, 63); + CopyPoint(newshape, shape, 53, 64); + CopyPoint(newshape, shape, 54, 65); + CopyPoint(newshape, shape, 55, 72); + CopyPoint(newshape, shape, 56, 73); + CopyPoint(newshape, shape, 57, 74); + CopyPoint(newshape, shape, 58, 75); + CopyPoint(newshape, shape, 59, 76); + CopyPoint(newshape, shape, 60, 69); + CopyPoint(newshape, shape, 61, 70); + CopyPoint(newshape, shape, 62, 71); + CopyPoint(newshape, shape, 63, 66); + CopyPoint(newshape, shape, 64, 67); + CopyPoint(newshape, shape, 65, 68); + InterPoint(newshape, shape, 66, .5, 67, 70); + CopyPoint(newshape, shape, 67, 52); + +#if MOD_A1 || MOD_A || MOD_A_EMU + const double eyemouth = EyeMouthDist(shape); + newshape(38, IY) += MAX(1, .05 * eyemouth); // move side of nose down + newshape(44, IY) += MAX(1, .05 * eyemouth); // move side of nose down + newshape(46, IY) += MAX(1, .02 * eyemouth); // move down, into nostril + newshape(47, IY) += MAX(1, .02 * eyemouth); // move down, into nostril +#endif + + return newshape; +} + +static Shape Shape77As76( // return an approximated MUCT 76 point shape + const Shape& shape) // in: Stasm 77 point shape +{ + // first 68 points same as XM2VTS + Shape newshape = DimKeep(Shape77AsXm2vts68(shape), 76, 2); + + CopyPoint(newshape, shape, 68, 33); // extra eyelid points + CopyPoint(newshape, shape, 69, 31); + CopyPoint(newshape, shape, 70, 37); + CopyPoint(newshape, shape, 71, 35); + CopyPoint(newshape, shape, 72, 43); + CopyPoint(newshape, shape, 73, 41); + CopyPoint(newshape, shape, 74, 47); + CopyPoint(newshape, shape, 75, 45); + + return newshape; +} + +Shape ConvertShape( // return shape with nlandmarks, return no rows if can't + const Shape& shape, // in + int nlandmarks) // in: shape.rows=no change, 17=shape17, anything else return no rows + // if shape.rows=77, treat specially: + // 77=nochange, 76=muct76, 68=xm2vts, 22=ar, 20=bioid, 17=shape17 +{ + Shape newshape; + if (nlandmarks == shape.rows) + newshape = shape.clone(); + else if (nlandmarks == 17) + newshape = Shape17OrEmpty(shape); + else if (shape.rows == 76) // MUCT 76 + { + switch (nlandmarks) + { + case 68: + newshape = DimKeep(shape.clone(), 68, 2); // MUCT 68 and XM2VTS + break; + default: + break; + } + } + else if (shape.rows == 77) // MUCT 77 (Stasm version 4) + { + switch (nlandmarks) + { + case 20: + newshape = Shape77As20(shape); // BioID + break; + case 22: + newshape = Shape77As22(shape); // AR + break; + case 68: + newshape = Shape77As68(shape); // MUCT 68 and XM2VTS + break; + case 76: + newshape = Shape77As76(shape); // MUCT 76 (Stasm version 3) + break; + default: + break; + } + } + CV_Assert(newshape.rows == nlandmarks || newshape.rows == 0); + return newshape; +} + +} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/stasm/src/err.cpp b/3rdparty/stasm4.0.0/stasm/stasm/src/err.cpp new file mode 100755 index 0000000..29a93e2 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/src/err.cpp @@ -0,0 +1,152 @@ +// err.cpp: error handling for Stasm +// +// Don't call internal Stasm functions (i.e. functions in the Stasm namespace +// when not in a try block, because Stasm's error handler (Err) raises an +// exception. You need to catch that exception to avoid a messageless crash. +// +// Your code should look like this (see e.g. stasm_lib.cpp and stasm_main.cpp): +// +// CatchOpenCvErrs(); // tell Stasm to handle CV_Assert as Stasm errors +// try +// { +// ... your code which calls Stasm's internal functions ... +// } +// catch(...) +// { +// // a call was made to Err or a CV_Assert failed +// printf("\n%s\n", stasm_lasterr()); +// exit(1); +// } +// UncatchOpenCvErrs(); // restore OpenCV handler to its previous state +// +// Note that the stasm library function (i.e. the functions prefixed +// by "stasm_") use try blocks internally, and code that calls +// them doesn't have to worry about the above exception. +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#include "err.h" +#include "misc.h" + +namespace stasm +{ +static char err_g[SBIG]; // err msg saved for retrieval by LastErr and stasm_lasterr + +static vector stack_g(10); // stack of err handlers, 10 is generous + +static int istack_g; // index into stack_g + +//----------------------------------------------------------------------------- + +static void PossiblyEnterDebugger(void) +{ +#if _DEBUG + // requires you to be in a debugger or have set up a just-in-time debugger + printf("\n%s\nDEBUG is true so forcing entry to the debugger\n", err_g); + fflush(stdout); + static volatile int* p = 0; + *p = 99; +#endif // _DEBUG +} + +// This gets called during OpenCV error handling e.g. if a CV_Assert fails. +// Save the error info in our global string err_g. + +static int CV_CDECL CvErrorCallbackForStasm( + int code, // translated to a string e.g. "Assertion failed" + const char* , // unused here + const char* err_msg, // e.g. the contents of the line where assert failed + const char* file_name, // filename where error occurred (if available) + int line, // line number where error occurred + void* ) // unused here +{ + if (err_g[0]) + { + // Recursive, we are already processing an error. + // Not really an issue, only first error will be reported via LastErr. + printf("\nNested error in CvErrorCallbackForStasm\n" + " Current error: %.80s\n New error: %s:%d: %.80s\n", + err_g, + file_name && file_name[0]? file_name: "unknown file", line, err_msg); + } + else + { + char temp[SBIG]; // temporary string needed because err_msg may be err_g + const char* errmsg = cvErrorStr(code); + if (file_name && file_name[0]) + sprintf(temp, "%s(%d) : %s : %s", + BaseExt(file_name), line, errmsg, err_msg); + else + sprintf(temp, "OpenCV %s : %s", errmsg, err_msg); + + STRCPY(err_g, temp); + } + PossiblyEnterDebugger(); + return 0; +} + +void CatchOpenCvErrs(void) // makes CV_Assert work with LastErr and stasm_lasterr +{ + err_g[0] = 0; + cv::ErrorCallback prev = cv::redirectError(CvErrorCallbackForStasm); + if (istack_g < NSIZE(stack_g)) + stack_g[istack_g++] = prev; + else // should never get here (CatchErr regions nested too deeply) + printf("\nCallback stack overpush\n"); +} + +void UncatchOpenCvErrs(void) // restore handler that was active before CatchOpenCvErrs +{ + if (istack_g > 0) + cv::redirectError(stack_g[--istack_g]); + else // should never get here (call to UncatchErr without matching CatchErr) + printf("\nCallback stack overpop\n"); +} + +void Err(const char* format, ...) // args like printf, throws an exception +{ + if (err_g[0]) + { + // Recursive, we are already processing an error. + // Ok, only first error will be reported via LastErr. + // This happens if Err is called to report a stasm_search_auto fail. + } + else + { + char s[SBIG]; // temporary needed because format or ... may be err_g + va_list args; + va_start(args, format); + VSPRINTF(s, format, args); + va_end(args); + STRCPY(err_g, s); + } + PossiblyEnterDebugger(); + throw "Err"; // does not matter what we throw, will be caught by global catch +} + +const char* LastErr(void) // return the last error message, called by stasm_lasterr +{ + if (!err_g[0]) // no error message? + { + // Should never get here unless someone calls LastErr or + // stasm_lasterr incorrectly (i.e. when there has been no error). + // + // TODO But in fact we do actually get here if cv::fastMalloc fails + // (within OpenCV) when allocating a small amount of memory (say 10 bytes, + // large amounts are ok). It seems that when there is very little memory + // remaining, OpenCV does not handle exceptions properly (an exception + // is raised but the OpenCV error callback function is not called). + // To reproduce, put the following in your code: + // volatile void *p; while (1) p = cv::fastMalloc(10); + + STRCPY(err_g, "Invalid call to LastErr"); + } + return err_g; +} + +void ClearLastErr(void) +{ + err_g[0] = 0; +} + +} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/stasm/src/eyedet.cpp b/3rdparty/stasm4.0.0/stasm/stasm/src/eyedet.cpp new file mode 100755 index 0000000..6e3f6b5 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/src/eyedet.cpp @@ -0,0 +1,882 @@ +// eyedet.cpp: interface to OpenCV eye and mouth detectors +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#include "eyedet.h" +#include "err.h" + +namespace stasm +{ +//static cv::CascadeClassifier leye_det_g; // left eye detector +//static cv::CascadeClassifier reye_det_g; // right eye detector +//static cv::CascadeClassifier mouth_det_g; // mouth detector + +//----------------------------------------------------------------------------- + +// Return the region of the face we search for the left or right eye. +// Return rect of width=0 if eye must not be searched for (outer eyes in side views). +// We reduce false positives and save time by searching in only part of the face. +// The entire eye box must fall in this region, not just the center of the eye. +// The magic numbers below were found empirically to give good +// results in informal tests. They reduce the number of false positives +// in the forehead, eyebrows, nostrils, and mouth. + +static Rect EyeSearchRect( + EYAW eyaw, // in + const Rect& facerect, // in: the detected face rectangle + const bool is_right_eye) // in: true for right eye, false for left eye +{ + Rect rect = facerect; + int width = facerect.width; + switch (eyaw) + { + case EYAW00: // frontal model + if (is_right_eye) + rect.x += width / 3; // don't search left third of face + rect.width -= width / 3; // or right third + rect.height = cvRound(.6 * facerect.height); // don't search lower face + break; + case EYAW_22: // left facing three-quarter model + if (is_right_eye) // inner eye + { + rect.x += cvRound(.4 * width); + rect.width = cvRound(.5 * width); + } + else // outer eye + { + rect.x += cvRound(.1 * width); + rect.width = cvRound(.5 * width); + } + rect.height = cvRound(.5 * facerect.height); + break; + case EYAW22: // right facing three-quarter model + if (is_right_eye) // outer eye + { + rect.x += cvRound(.4 * width); + rect.width = cvRound(.5 * width); + } + else // inner eye + { + rect.x += cvRound(.1 * width); + rect.width = cvRound(.5 * width); + } + rect.height = cvRound(.5 * facerect.height); + break; + case EYAW_45: // left facing three-quarter model + if (is_right_eye) // inner eye + { + rect.x += cvRound(.4 * width); + rect.width = cvRound(.5 * width); + rect.height = cvRound(.5 * facerect.height); + } + else // outer eye + rect.width = rect.height = 0; + break; + case EYAW45: // right facing three-quarter model + if (is_right_eye) // outer eye + rect.width = rect.height = 0; + else // inner eye + { + rect.x += cvRound(.1 * width); + rect.width = cvRound(.5 * width); + rect.height = cvRound(.5 * facerect.height); + } + break; + default: + Err("EyeSearchRect: Invalid eyaw %d", eyaw); + break; + } + rect.width = MAX(0, rect.width); + rect.height = MAX(0, rect.height); + return rect; +} + +// Get adjustment for position of mouth, based on model type and eye angle. + +static void MouthRectShift( + int& ixshift, // out + int& iyshift, // out + EYAW eyaw, // in + int facerect_width, // in + int facerect_height, // in + int ileft_best, // in + int iright_best, // in + const vec_Rect& leyes, // in + const vec_Rect& reyes) // in +{ + double xshift = 0, yshift = 0; + switch (eyaw) + { + case EYAW00: // frontal model + break; + case EYAW_45: // left facing three-quarter model + xshift -= .04 * facerect_width; + break; + case EYAW_22: // left facing three-quarter model + xshift -= .03 * facerect_width; + break; + case EYAW22: // right facing three-quarter model + xshift += .03 * facerect_width; + break; + case EYAW45: // right facing three-quarter model + xshift += .04 * facerect_width; + break; + default: + Err("MouthRectShift: Invalid eyaw %d", eyaw); + break; + } + if (ileft_best != -1 && iright_best != -1) // got both eyes? + { + // get center of eye boxes to get eye angle + const int xleft = leyes[ileft_best].x + leyes[ileft_best].width/2; + const int yleft = leyes[ileft_best].y + leyes[ileft_best].height/2; + const int xright = reyes[iright_best].x + reyes[iright_best].width/2; + const int yright = reyes[iright_best].y + reyes[iright_best].height/2; + double theta = -atan2(double(yright - yleft), double(xright - xleft)); + // move the mouth in the direction of rotation + xshift += .3 * facerect_height * tan(theta); + // as the face rotates, the mouth moves up the page + yshift -= .1 * facerect_height * ABS(tan(theta)); + } + ixshift = cvRound(xshift); + iyshift = cvRound(yshift); +} + +static Rect MouthSearchRect( // will search for mouth in this rectangle + const Rect& facerect, // in: the detected face rectangle + EYAW eyaw, // in + int ileft_best, // in: index of best left eye, -1 if none + int iright_best, // in: index of best right eye, -1 if none + const vec_Rect& leyes, // in: left eyes found by eye detector + const vec_Rect& reyes) // in: right eyes found by eye detector +{ + Rect rect = facerect; + + int ixshift, iyshift; + MouthRectShift(ixshift, iyshift, + eyaw, facerect.width, facerect.height, + ileft_best, iright_best, leyes, reyes); + + rect.x += cvRound(.2 * facerect.width) + ixshift; + + rect.width = MAX(1, cvRound(.6 * facerect.width)); + rect.height = cvRound(.42 * facerect.height); + + switch (eyaw) + { + case EYAW00: // frontal model + rect.y += cvRound(.64 * facerect.height); + break; + case EYAW_45: // left facing three-quarter model + rect.y += cvRound(.55 * facerect.height); + break; + case EYAW_22: // left facing three-quarter model + rect.y += cvRound(.55 * facerect.height); + break; + case EYAW22: // right facing three-quarter model + rect.y += cvRound(.55 * facerect.height); + break; + case EYAW45: // right facing three-quarter model + rect.y += cvRound(.55 * facerect.height); + break; + default: + Err("MouthSearchRect: Invalid eyaw %d", eyaw); + break; + } + rect.y += iyshift; + rect.width = MAX(0, rect.width); + rect.height = MAX(0, rect.height); + return rect; +} + +bool NeedEyes( // true if we need the eye detectors for the given mods + const vec_Mod& mods) // in: the ASM model(s) +{ + static bool need_eyes = true; // static for efficiency + if (need_eyes) // not yet opened? + { + // use the estart field to determine if we need the eyes for any model + need_eyes = false; + for (int imod = 0; imod < NSIZE(mods); imod++) + { + ESTART estart = mods[imod]->Estart_(); + if (estart == ESTART_EYES || + estart == ESTART_EYE_AND_MOUTH) + { + need_eyes = true; + } + } + } + return need_eyes; +} + +bool NeedMouth( // true if we need the mouth detector for the given mods + const vec_Mod& mods) // in: the ASM model(s) +{ + static bool need_mouth = true; // static for efficiency + if (need_mouth) // not yet opened? + { + // we need the eyes if the estart field of any model is ESTART_EYE_AND_MOUTH + need_mouth = false; + for (int imod = 0; imod < NSIZE(mods); imod++) + if (mods[imod]->Estart_() == ESTART_EYE_AND_MOUTH) + { + need_mouth = true; + } + } + return need_mouth; +} + +// Possibly open OpenCV eye detectors and mouth detector. We say "possibly" because +// the eye and mouth detectors will actually only be opened if any model in mods +// actually needs them. That is determined by the model's estart field. + +void OpenEyeMouthDetectors( // open eye and mouth detectors, if necessary + bool need_eyes, // in: true if we need the eye detectors + bool need_mouth, // in: true if we need the mouth detector + const char* datadir) // in +{ + (void) need_eyes; + (void) need_mouth; + (void) datadir; + + /* + if (need_eyes) + { + // I tried all the eye XML files that come with OpenCV 2.1 and found that + // the files used below give the best results. The other eye XML files + // often failed to detect eyes, even with EYE_MIN_NEIGHBORS=1. + // + // In the XML filenames, "left" was verified empirically by me to respond + // to the image left (not the subject's left). I tested this on the on + // the MUCT and BioID sets: haarcascade_mcs_lefteye.xml finds more eyes + // on the viewer's left than it finds on the right (milbo Lusaka Dec 2011). + + OpenDetector(leye_det_g, "haarcascade_mcs_lefteye.xml", datadir); + OpenDetector(reye_det_g, "haarcascade_mcs_righteye.xml", datadir); + } + if (need_mouth) + OpenDetector(mouth_det_g, "haarcascade_mcs_mouth.xml", datadir); + */ +} + +void OpenEyeMouthDetectors( // open eye and mouth detectors, if necessary for given mods + const vec_Mod& mods, // in: the ASM models (to see if we need eyes or mouth) + const char* datadir) // in +{ + OpenEyeMouthDetectors(NeedEyes(mods), NeedMouth(mods), datadir); +} + +static void DetectAllEyes( + vec_Rect& leyes, // out: a vector of detected left eyes + vec_Rect& reyes, // out: a vector of detected right eyes + const Image& img, // in + EYAW eyaw, // in + const Rect& facerect, // in: the detected face rectangle + StasmCascadeClassifier cascade) +{ + // 1.2 is 40ms faster than 1.1 but finds slightly fewer eyes + static const double EYE_SCALE_FACTOR = 1.2; + static const int EYE_MIN_NEIGHBORS = 3; + static const int EYE_DETECTOR_FLAGS = 0; + + const Rect left_searchrect(EyeSearchRect(eyaw, facerect, false)); + + if (left_searchrect.width) + leyes = Detect(img, cascade.leftEyeCascade, &left_searchrect, + EYE_SCALE_FACTOR, EYE_MIN_NEIGHBORS, EYE_DETECTOR_FLAGS, + facerect.width / 10); + + const Rect right_searchrect(EyeSearchRect(eyaw, facerect, true)); + + if (right_searchrect.width) + reyes = Detect(img, cascade.rightEyeCascade, &right_searchrect, + EYE_SCALE_FACTOR, EYE_MIN_NEIGHBORS, EYE_DETECTOR_FLAGS, + facerect.width / 10); +} + +static void DetectAllMouths( + vec_Rect& mouths, // out: a vector of detected mouths + const Image& img, // in + const Rect& facerect, // in: the detected face rectangle + const Rect& mouth_searchrect, // in + cv::CascadeClassifier cascade) +{ + static const double MOUTH_SCALE_FACTOR = 1.2; // less false pos with 1.2 than 1.1 + static const int MOUTH_MIN_NEIGHBORS = 5; // less false pos with 5 than 3 + static const int MOUTH_DETECTOR_FLAGS = 0; + + mouths = + Detect(img, cascade, &mouth_searchrect, + MOUTH_SCALE_FACTOR, MOUTH_MIN_NEIGHBORS, MOUTH_DETECTOR_FLAGS, + facerect.width / 10); +} + +// Return the region of the face which the _center_ of an eye must be for +// the eye to be considered valid. This is a subset of the region we +// search for eyes (as returned by EyeSearchRect, which must be big +// enough to enclose the _entire_ eye box). + +static Rect EyeInnerRect( + EYAW eyaw, // in + const Rect& facerect) // in +{ + Rect rect = facerect; + switch (eyaw) + { + case EYAW00: // frontal model + rect.x += cvRound(.1 * facerect.width); + rect.width = cvRound(.8 * facerect.width); + rect.y += cvRound(.2 * facerect.height); + rect.height = cvRound(.28 * facerect.height); + break; + case EYAW_45: // left facing three-quarter model + rect.x += cvRound(.4 * facerect.width); + rect.width = cvRound(.5 * facerect.width); + rect.y += cvRound(.20 * facerect.height); + rect.height = cvRound(.25 * facerect.height); + break; + case EYAW_22: // left facing three-quarter model + rect.x += cvRound(.1 * facerect.width); + rect.width = cvRound(.8 * facerect.width); + rect.y += cvRound(.20 * facerect.height); + rect.height = cvRound(.25 * facerect.height); + break; + case EYAW22: // right facing three-quarter model + rect.x += cvRound(.1 * facerect.width); + rect.width = cvRound(.8 * facerect.width); + rect.y += cvRound(.20 * facerect.height); + rect.height = cvRound(.25 * facerect.height); + break; + case EYAW45: // right facing three-quarter model + rect.x += cvRound(.1 * facerect.width); + rect.width = cvRound(.5 * facerect.width); + rect.y += cvRound(.20 * facerect.height); + rect.height = cvRound(.25 * facerect.height); + break; + default: + Err("EyeInnerRect: Invalid eyaw %d", eyaw); + break; + } + rect.width = MAX(0, rect.width); + rect.height = MAX(0, rect.height); + return rect; +} + +// Is the horizontal overlap between the LeftEye and RightEye rectangles no +// more than 10% and is the horizontal distance between the edges of the +// eyes no more than the eye width. + +static bool IsEyeHorizOk( + const Rect& left, // in + const Rect& right) // in +{ + return left.x + left.width - right.x <= .1 * left.width && + right.x - (left.x + left.width) <= left.width; +} + +static bool VerticalOverlap( // do the two eye rectangles overlap vertically? + const Rect& left, // in + const Rect& right) // in +{ + const int topleft = left.y + left.height; + const int topright = right.y + right.height; + + return (left.y >= right.y && left.y <= right.y + right.height) || + (topleft >= right.y && topleft <= right.y + right.height) || + (right.y >= left.y && right.y <= left.y + left.height) || + (topright >= left.y && topright <= left.y + left.height); +} + +// Return the indices of the best left and right eye in the list of eyes. +// returned by the feature detectors. +// The heuristic in in detail (based on looking at images produced): +// Find the left and right eye that +// (i) are both in eye_inner_rect +// (ii) don't overlap horizontally by more than 10% +// (ii) overlap vertically. +// (iii) have the largest total width. +// (iv) if frontal have an intereye dist at least .25 * eye_inner_rect width + +static void SelectEyes( + int& ileft_best, // out: index into leyes, -1 if none + int& iright_best, // out: index into reyes, -1 if none + EYAW eyaw, // in + const vec_Rect& leyes, // in: left eyes found by detectMultiScale + const vec_Rect& reyes, // in: right eyes found by detectMultiScale + const Rect& eye_inner_rect) // in: center of the eye must be in this region +{ + ileft_best = iright_best = -1; // assume will return no eyes + int min_intereye = eyaw == EYAW00? cvRound(.25 * eye_inner_rect.width): 0; + int maxwidth = 0; // combined width of both eye boxes + int ileft, iright; + Rect left, right; + + // this part of the code will either select both eyes or no eyes + + for (ileft = 0; ileft < NSIZE(leyes); ileft++) + { + left = leyes[ileft]; + if (InRect(left, eye_inner_rect)) + { + for (iright = 0; iright < NSIZE(reyes); iright++) + { + right = reyes[iright]; + const bool c0 = InRect(right, eye_inner_rect); + const bool c1 = IsEyeHorizOk(left, right); + const bool c2 = right.x - left.x >= min_intereye; + const bool c3 = VerticalOverlap(left, right); + if (c0 && c1 && c2 && c3) + { + int total_width = left.width + right.width; + if (total_width > maxwidth) + { + maxwidth = total_width; + ileft_best = ileft; + iright_best = iright; + } + } + } + } + } + if (ileft_best == -1 && iright_best == -1) + { + // The above loops failed to find a left and right eye in correct + // relationship to each other. So simply select largest left eye and + // largest right eye (but make sure that they are in the eye_inner_rect). + + int max_left_width = 0; + for (ileft = 0; ileft < NSIZE(leyes); ileft++) + { + left = leyes[ileft]; + if (InRect(left, eye_inner_rect)) + { + if (left.width > max_left_width) + { + max_left_width = left.width; + ileft_best = ileft; + } + } + } + int max_right_width = 0; + for (iright = 0; iright < NSIZE(reyes); iright++) + { + right = reyes[iright]; + if (InRect(right, eye_inner_rect)) + { + if (right.width > max_right_width) + { + max_right_width = right.width; + iright_best = iright; + } + } + } + // One final check (for vr08m03.bmp) -- if the two largest eyes overlap + // too much horizontally then discard the smaller eye. + + if (ileft_best != -1 && iright_best != -1) + { + left = leyes[ileft_best]; + right = reyes[iright_best]; + if (!IsEyeHorizOk(left, right) || right.x - left.x < min_intereye) + { + if (max_right_width > max_left_width) + ileft_best = -1; + else + iright_best = -1; + } + } + } +} + +// The values below are fairly conservative: for the ASM start shape, +// it's better to not find a mouth than to find an incorrect mouth. + +static Rect MouthInnerRect( + const Rect& facerect, // in + EYAW eyaw, // in + int ileft_best, // in: index of best left eye, -1 if none + int iright_best, // in: index of best right eye, -1 if none + const vec_Rect& leyes, // in: left eyes found by eye detector + const vec_Rect& reyes) // in: right eyes found by eye detector +{ + Rect rect = facerect; + double width = (eyaw == EYAW00? .12: .20) * facerect.width; + double height = .30 * facerect.height; + + int ixshift, iyshift; + MouthRectShift(ixshift, iyshift, + eyaw, facerect.width, facerect.height, + ileft_best, iright_best, leyes, reyes); + + rect.x += cvRound(.50 * (facerect.width - width)) + ixshift; + + rect.width = cvRound(width); + + switch (eyaw) + { + case EYAW00: // frontal model + rect.y += cvRound(.7 * facerect.height); + break; + case EYAW_45: // left facing three-quarter model + rect.y += cvRound(.65 * facerect.height); + break; + case EYAW_22: // left facing three-quarter model + rect.y += cvRound(.65 * facerect.height); + break; + case EYAW22: // right facing three-quarter model + rect.y += cvRound(.65 * facerect.height); + break; + case EYAW45: // right facing three-quarter model + rect.y += cvRound(.65 * facerect.height); + break; + default: + Err("MouthInnerRect: Invalid eyaw %d", eyaw); + break; + } + rect.y += iyshift; + rect.height = cvRound(height); + rect.width = MAX(0, rect.width); + rect.height = MAX(0, rect.height); + return rect; +} + +// The OpenCV mouth detector biases the position of the mouth downward (wrt the +// center of the mouth determined by manual landmarking). Correct that here. + +static int MouthVerticalShift( + const int ileft_best, // in + const int iright_best, // in + const int imouth_best, // in + const vec_Rect& leyes, // in + const vec_Rect& reyes, // in + const vec_Rect& mouths) // in +{ + double shift = 0; // assume no shift + if (ileft_best != -1 && iright_best != -1) // got both eyes? + { + CV_Assert(imouth_best != -1); + // get eye mouth distance: first get center of both eyes + const double xleft = leyes[ileft_best].x + leyes[ileft_best].width / 2; + const double yleft = leyes[ileft_best].y + leyes[ileft_best].height / 2; + const double xright = reyes[iright_best].x + reyes[iright_best].width / 2; + const double yright = reyes[iright_best].y + reyes[iright_best].height / 2; + const double eyemouth = + PointDist((xleft + xright) / 2,(yleft + yright) / 2, + mouths[imouth_best].x, mouths[imouth_best].y); + static const double MOUTH_VERT_ADJUST = -0.050; // neg to shift up + shift = MOUTH_VERT_ADJUST * eyemouth; + } + return cvRound(shift); +} + +static bool MouthOnNose( // true if mouth is probably a mouth false detect on the nostrils + const Rect& mouth, // in: left eyes found by eye detector + const Rect& facerect, // in: + const Rect& mouth_searchrect) // in: +{ + return mouth.x < // near top of search rect? + mouth_searchrect.x + .20 * mouth_searchrect.height && + double(mouth.width) / facerect.width < .28; +} + +static void SelectMouth( // return index of the best mouth in the list of mouths + int& imouth_best, // out: index into mouths, -1 if none + int ileft_best, // in: index of best left eye, -1 if none + int iright_best, // in: index of best right eye, -1 if none + const vec_Rect& leyes, // in: left eyes found by eye detector + const vec_Rect& reyes, // in: right eyes found by eye detector + const vec_Rect& mouths, // in: left eyes found by eye detector + const Rect& facerect, // in: + const Rect& mouth_searchrect, // in: + const Rect& mouth_inner_rect) // in: center of mouth must be in this region +{ + CV_Assert(!mouths.empty()); + imouth_best = -1; + if (NSIZE(mouths) == 1) // only one mouth? + { + if (InRect(mouths[0], mouth_inner_rect) && + !MouthOnNose(mouths[0], facerect, mouth_searchrect)) + { + imouth_best = 0; + } + } + else + { + // More than one mouth: selected the lowest mouth to avoid + // "nostril mouths". But to avoid "chin mouths", the mouth + // must also meet the following criteria: + // i) it must be wider than the .7 * smallest eye width + // ii) it must be not much narrower than widest mouth. + + int minwidth = 0; + if (ileft_best != -1) + minwidth = leyes[ileft_best].width; + if (iright_best != -1) + minwidth = MIN(minwidth, reyes[iright_best].width); + minwidth = cvRound(.7 * minwidth); + + // find widest mouth + int maxwidth = minwidth; + for (int imouth = 0; imouth < NSIZE(mouths); imouth++) + { + const Rect mouth = mouths[imouth]; + if (InRect(mouth, mouth_inner_rect) && mouth.width > maxwidth) + { + maxwidth = mouth.width; + imouth_best = imouth; + } + } + // choose lowest mouth that is at least .84 the width of widest + minwidth = MAX(minwidth, cvRound(.84 * maxwidth)); + int ymin = int(-1e5); + for (int imouth = 0; imouth < NSIZE(mouths); imouth++) + { + const Rect mouth = mouths[imouth]; + if (InRect(mouth, mouth_inner_rect) && + mouth.y + mouth.height / 2 > ymin && + mouth.width > minwidth && + !MouthOnNose(mouths[0], facerect, mouth_searchrect)) + { + ymin = mouth.y + mouth.height / 2; + imouth_best = imouth; + } + } + } +} + +static void TweakMouthPosition( + vec_Rect& mouths, // io + const vec_Rect& leyes, // in + const vec_Rect& reyes, // in + const int ileft_best, // in + const int iright_best, // in + const int imouth_best, // in + const DetPar& detpar) // in + +{ + mouths[imouth_best].y += // move mouth up to counteract OpenCV mouth bias + MouthVerticalShift(ileft_best, iright_best, imouth_best, + leyes, reyes, mouths); + + // If face pose is strong three-quarter, move mouth + // out to counteract OpenCV mouth detector bias. + + if (detpar.eyaw == EYAW_45) + mouths[imouth_best].x -= cvRound(.06 * detpar.width); + else if (detpar.eyaw == EYAW45) + mouths[imouth_best].x += cvRound(.06 * detpar.width); +} + +static void RectToImgFrame( + double& x, // out: center of feature + double& y, // out: center of feature + const Rect& featrect) // in +{ + x = featrect.x + featrect.width / 2; + y = featrect.y + featrect.height / 2; +} + +#if TRACE_IMAGES + +static unsigned Dark1(unsigned color, double scale) +{ + const unsigned Red = unsigned(scale * ((color & 0xff0000) >> 16)); + const unsigned Green = unsigned(scale * ((color & 0x00ff00) >> 8)); + const unsigned Blue = unsigned(scale * ((color & 0x0000ff) >> 0)); + return + ((Red << 16) & 0xff0000) | + ((Green << 8) & 0x00ff00) | + ((Blue << 0) & 0x0000ff); +} + +static unsigned Dark(unsigned color) // return a dark version of color +{ + return Dark1(color, .667); +} + +static unsigned VeryDark(unsigned color) // return a very dark version of color +{ + return Dark1(color, .333); +} + +static void DrawRect( // draw a rectangle on an image + CImage& img, // io + const Rect& rect, // in + unsigned color=0xff0000, // in: rrggbb, default is 0xff0000 (red) + int linewidth=2) // in +{ + rectangle(img, + cv::Point(rect.x, rect.y), + cv::Point(rect.x + rect.width, rect.y + rect.height), + ToCvColor(color), linewidth); +} + +static void DrawFeat( // draw eye (or mouth) at index i in the eyes vec + CImage& img, // io + int i, // in + const vec_Rect& eyes, // in + unsigned col, // in + int linewidth, // in + bool best) // in: true if this is the best eye +{ + double x, y; RectToImgFrame(x, y, eyes[i]); + Rect rect; + rect.x = cvRound(x - eyes[i].width / 2); + rect.y = cvRound(y - eyes[i].height / 2); + rect.width = eyes[i].width; + rect.height = eyes[i].height; + if (!best) + col = Dark(col); + DrawRect(img, rect, col, linewidth); + cv::circle(img, cv::Point(cvRound(x), cvRound(y)), + (best? 2: 1) * linewidth, ToCvColor(col), linewidth); +} + +static void DrawEyes( + CImage& img, // io + const vec_Rect& leyes, // in + const vec_Rect& reyes, // in + int ileft_best, // in + int iright_best, // in + const Rect& facerect, // in + EYAW eyaw) // in +{ + // rectangles showing search regions + const int linewidth = facerect.width > 700? 3: facerect.width > 300? 2: 1; + const Rect left_rect(EyeSearchRect(eyaw, facerect, false)); + const Rect right_rect(EyeSearchRect(eyaw, facerect, true)); + const Rect eye_inner_rect(EyeInnerRect(eyaw, facerect)); + DrawRect(img, facerect, Dark(C_YELLOW), linewidth); + DrawRect(img, left_rect, VeryDark(C_RED), linewidth); + DrawRect(img, right_rect, VeryDark(C_GREEN), linewidth); + DrawRect(img, eye_inner_rect, Dark(C_YELLOW), linewidth); + int i; + for (i = 0; i < NSIZE(leyes); i++) + DrawFeat(img, + i, leyes, C_RED, linewidth, i==ileft_best); + for (i = 0; i < NSIZE(reyes); i++) + DrawFeat(img, + i, reyes, C_RED /*C_GREEN*/, linewidth, i==iright_best); +} + +static void DrawMouths( + CImage& img, // io + const vec_Rect& mouths, // in + int ibest, // in + const Rect& facerect, // in + EYAW eyaw, // in + int ileft_best, // in: index of best left eye, -1 if none + int iright_best, // in: index of best right eye, -1 if none + const vec_Rect& leyes, // in: left eyes found by eye detector + const vec_Rect& reyes) // in: right eyes found by eye detector +{ + const int linewidth = facerect.width > 700? 3: facerect.width > 300? 2: 1; + const Rect mouth_searchrect( + MouthSearchRect(facerect, eyaw, ileft_best, iright_best, leyes, reyes)); + const Rect inner_rect( + MouthInnerRect(facerect, eyaw, ileft_best, iright_best, leyes, reyes)); + DrawRect(img, facerect, Dark(C_YELLOW), 3 * linewidth); + DrawRect(img, mouth_searchrect, VeryDark(C_YELLOW), linewidth); + DrawRect(img, inner_rect, Dark(C_YELLOW), linewidth); + int i; + for (i = 0; i < NSIZE(mouths); i++) + DrawFeat(img, + i, mouths, C_RED, linewidth, i==ibest); +} + +static void TraceEyeMouthImg( + CImage& cimg, // in + DetPar& detpar, // in + int ileft_best, // in + int iright_best, // in + int imouth_best) // in +{ + rectangle(cimg, // border color shows eyaw + cv::Point(0, 0), cv::Point(cimg.cols-1, cimg.rows-1), + EyawAsColor(detpar.eyaw), 4); + + ImgPrintf(cimg, .8 * cimg.cols, .05 * cimg.rows, C_YELLOW, 1, + "%s", EyawAsString(detpar.eyaw)); + + char sl[SLEN]; sl[0] = 0; if (ileft_best < 0) strcat(sl, "_noleye"); + char sr[SLEN]; sr[0] = 0; if (iright_best < 0) strcat(sl, "_noreye"); + char sm[SLEN]; sm[0] = 0; if (imouth_best < 0) strcat(sl, "_nomouth"); + + double rot = detpar.rot; // INVALID rots will appear as 99999 in filename + PossiblySetRotToZero(rot); + char path[SLEN]; + sprintf(path, "%s_20_rot%d_eyemouth%s%s%s.bmp", + Base(imgpath_g), int(ABS(rot)), sl, sr, sm); + + lprintf("%s\n", path); + if (!cv::imwrite(path, cimg)) + Err("Cannot write %s", path); +} +#endif // TRACE_IMAGES + +void DetectEyesAndMouth( // use OpenCV detectors to find the eyes and mouth + DetPar& detpar, // io: eye and mouth fields updated, other fields untouched + const Image& img, // in: ROI around face (already rotated if necessary) + StasmCascadeClassifier cascade) +{ + const Rect facerect(cvRound(detpar.x - detpar.width/2), + cvRound(detpar.y - detpar.height/2), + cvRound(detpar.width), + cvRound(detpar.height)); + + // possibly get the eyes + + detpar.lex = detpar.ley = INVALID; // mark eyes as unavailable + detpar.rex = detpar.rey = INVALID; + vec_Rect leyes, reyes; + int ileft_best = -1, iright_best = -1; // index into leyes and reyes vecs + + DetectAllEyes(leyes, reyes, + img, detpar.eyaw, facerect, cascade); + + SelectEyes(ileft_best, iright_best, // indices of best left and right eye + detpar.eyaw, leyes, reyes, EyeInnerRect(detpar.eyaw, facerect)); + + if (ileft_best >= 0) // left eye valid? + RectToImgFrame(detpar.lex, detpar.ley, + leyes[ileft_best]); + + if (iright_best >= 0) // right eye valid? + RectToImgFrame(detpar.rex, detpar.rey, + reyes[iright_best]); + + // possibly get the mouth + + detpar.mouthx = detpar.mouthy = INVALID; // mark mouth as unavailable + int imouth_best = -1; // index into mouths vector + + const Rect mouth_searchrect( + MouthSearchRect(facerect, detpar.eyaw, + ileft_best, iright_best, leyes, reyes)); + vec_Rect mouths; + DetectAllMouths(mouths, + img, facerect, mouth_searchrect, cascade.mouthCascade); + + if (!mouths.empty()) + { + SelectMouth(imouth_best, // get index of best mouth + ileft_best, iright_best, leyes, reyes, mouths, + facerect, + mouth_searchrect, + MouthInnerRect(facerect, detpar.eyaw, + ileft_best, iright_best, leyes, reyes)); + + if (imouth_best >= 0) // mouth valid? + { + TweakMouthPosition(mouths, + leyes, reyes, ileft_best, iright_best, + imouth_best, detpar); + + RectToImgFrame(detpar.mouthx, detpar.mouthy, + mouths[imouth_best]); + } + } +} + +} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/stasm/src/eyedist.cpp b/3rdparty/stasm4.0.0/stasm/stasm/src/eyedist.cpp new file mode 100755 index 0000000..e939d50 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/src/eyedist.cpp @@ -0,0 +1,140 @@ +// eyedist.cpp: calculate eye-mouth and inter-eye dist +// +// The functions in this file know how to deal with missing points. This +// matters during testing when we are comparing results to manually +// landmarked reference shapes. For example, a reference eye pupil may be +// concealed by the side of the nose. When calculating the inter-eye +// distance, if the pupil is missing we can instead use a point near the +// pupil. We must then adjust the point-to-point distance calculated using +// this surrogate point. We use the mean face shape to figure out the +// adjustment. The accuracy of the resulting estimated inter-eye distance will +// depend upon how similar the proportions of the face are to the mean face. +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#include "eyedist.h" +#include "shape17.h" +#include "landmarks.h" + +namespace stasm +{ +static int TabPoint( // return first used point in tab, -1 if none + const int* tab, // in + int ntab, // in + const Shape& shape) // in +{ + for (int i = 0; i < ntab; i++) + if (PointUsed(shape, tab[i])) + return tab[i]; // note return + + return -1; +} + +static double CanonicalEyeMouthDist( // return 0 if pupils and mouth not avail + const Shape& shape17) // in +{ + if (!PointUsed(shape17, L17_LPupil) || + !PointUsed(shape17, L17_RPupil) || + !PointUsed(shape17, L17_CBotOfBotLip)) + { + return 0; // note return + } + return PointDist( + MeanPoint(shape17, L17_LPupil, L17_RPupil, IX), // eye mid point + MeanPoint(shape17, L17_LPupil, L17_RPupil, IY), + shape17(L17_CBotOfBotLip, IX), // bot of bot lip + shape17(L17_CBotOfBotLip, IY)); +} + +double EyeMouthDist( // eye-mouth distance of a face shape, return 1 if not a face + const Shape& shape) // in +{ + static const int eyes[] = // surrogates for pupil midpoint + { + L17_LPupil, + L17_RPupil, + L17_LEyeOuter, + L17_REyeOuter, + L17_LEyeInner, + L17_REyeInner, + L17_LEyebrowInner, + L17_REyebrowInner, + L17_LEyebrowOuter, + L17_REyebrowOuter + }; + static const int mouths[] = // surrogates for bot of bot lip + { + L17_CBotOfBotLip, + L17_CTopOfTopLip, + L17_LMouthCorner, + L17_RMouthCorner + }; + const Shape shape17(Shape17OrEmpty(shape)); + if (shape17.rows == 0) // could not convert the shape to a Shape17? + return ShapeWidth(shape) / 2; // fallback, note return + double eyemouth = CanonicalEyeMouthDist(shape17); + if (eyemouth == 0) // pupils and mouth not available? + { + const int eye = TabPoint(eyes, NELEMS(eyes), shape17); + const int mouth = TabPoint(mouths, NELEMS(mouths), shape17); + if (eye >= 0 && mouth >= 0) // actual or surrogate points available? + { + eyemouth = PointDist(shape17, eye, mouth) * + CanonicalEyeMouthDist(MEANSHAPE17) / + PointDist(MEANSHAPE17, eye, mouth); + } + } + if (eyemouth == 0) + { + // last resort, estimate eyemouth dist from shape extent + eyemouth = MAX(ShapeWidth(shape17), ShapeHeight(shape17)) * + PointDist(MEANSHAPE17, L17_LPupil, L17_CBotOfBotLip) / + MAX(ShapeWidth(MEANSHAPE17), ShapeHeight(MEANSHAPE17)); + } + CV_Assert(eyemouth > 1 && eyemouth < 1e5); // sanity check + return eyemouth; +} + +double InterEyeDist( // inter-pupil distance of a face shape + const Shape& shape) // in +{ + static const int leyes[] = // surrogates for left pupil + { + L17_LPupil, + L17_LEyeOuter, + L17_LEyeInner, + L17_LEyebrowInner, + L17_LEyebrowOuter + }; + static const int reyes[] = // surrogates for right pupil + { + L17_RPupil, + L17_REyeOuter, + L17_REyeInner, + L17_REyebrowInner, + L17_REyebrowOuter + }; + const Shape shape17(Shape17OrEmpty(shape)); + if (shape17.rows == 0) // could not convert the shape to a Shape17? + return ShapeWidth(shape) / 2; // fallback, note return + double eyedist = 0; + const int leye = TabPoint(leyes, NELEMS(leyes), shape17); + const int reye = TabPoint(reyes, NELEMS(reyes), shape17); + if (leye >= 0 && reye >= 0 && // actual or surrogate points available? + PointDist(shape17, leye, reye) > 1) // surrogates aren't co-located? + { + eyedist = PointDist(shape17, leye, reye) * + PointDist(MEANSHAPE17, L17_LPupil, L17_RPupil) / + PointDist(MEANSHAPE17, leye, reye); + } + else // last resort, estimate inter-pupil distance from shape extent + { + eyedist = MAX(ShapeWidth(shape17), ShapeHeight(shape17)) * + PointDist(MEANSHAPE17, L17_LPupil, L17_RPupil) / + MAX(ShapeWidth(MEANSHAPE17), ShapeHeight(MEANSHAPE17)); + } + CV_Assert(eyedist > 1 && eyedist < 1e5); // sanity check + return eyedist; +} + +} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/stasm/src/facedet.cpp b/3rdparty/stasm4.0.0/stasm/stasm/src/facedet.cpp new file mode 100755 index 0000000..72aeffd --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/src/facedet.cpp @@ -0,0 +1,224 @@ +// facedet.cpp: find faces in images (frontal model version) +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#include "facedet.h" +#include "stasm_lib.h" + +namespace stasm +{ +typedef vector vec_DetPar; + +//static cv::CascadeClassifier facedet_g; // the face detector + +static const double BORDER_FRAC = .1; // fraction of image width or height + // use 0.0 for no border + +//----------------------------------------------------------------------------- + +void FaceDet::OpenFaceDetector_( // called by stasm_init, init face det from XML file + const char* datadir, // in: directory of face detector files + void*) // in: unused (func signature compatibility) +{ + (void) datadir; + //OpenDetector(facedet_g, "haarcascade_frontalface_alt2.xml", datadir); +} + +// If a face is near the edge of the image, the OpenCV detectors tend to +// return a too-small face rectangle. By adding a border around the edge +// of the image we mitigate this problem. + +static Image EnborderImg( // return the image with a border + int& leftborder, // out: border size in pixels + int& topborder, // out: border size in pixels + const Image& img) // io +{ + Image bordered_img(img); + leftborder = cvRound(BORDER_FRAC * bordered_img.cols); + topborder = cvRound(BORDER_FRAC * bordered_img.rows); + copyMakeBorder(bordered_img, bordered_img, + topborder, topborder, leftborder, leftborder, + cv::BORDER_REPLICATE); + return bordered_img; +} + +void DetectFaces( // all face rects into detpars + vec_DetPar& detpars, // out + const Image& img, // in + int minwidth, + cv::CascadeClassifier cascade) // in: as percent of img width +{ + int leftborder = 0, topborder = 0; // border size in pixels + Image bordered_img(BORDER_FRAC == 0? + img: EnborderImg(leftborder, topborder, img)); + + // Detection results are very slightly better with equalization + // (tested on the MUCT images, which are not pre-equalized), and + // it's quick enough to equalize (roughly 10ms on a 1.6 GHz laptop). + + Image equalized_img; cv::equalizeHist(bordered_img, equalized_img); + + CV_Assert(minwidth >= 1 && minwidth <= 100); + + // TODO smallest bioid faces are about 80 pixels width, hence 70 below + const int minpix = + MAX(minwidth <= 5? 70: 100, cvRound(img.cols * minwidth / 100.)); + + // the params below are accurate but slow + static const double SCALE_FACTOR = 1.1; + static const int MIN_NEIGHBORS = 3; + static const int DETECTOR_FLAGS = 0; + + vec_Rect facerects = // all face rects in image + Detect(equalized_img, cascade, NULL, + SCALE_FACTOR, MIN_NEIGHBORS, DETECTOR_FLAGS, minpix); + + // copy face rects into the detpars vector + + detpars.resize(NSIZE(facerects)); + for (int i = 0; i < NSIZE(facerects); i++) + { + Rect* facerect = &facerects[i]; + DetPar detpar; // detpar constructor sets all fields INVALID + // detpar.x and detpar.y is the center of the face rectangle + detpar.x = facerect->x + facerect->width / 2.; + detpar.y = facerect->y + facerect->height / 2.; + detpar.x -= leftborder; // discount the border we added earlier + detpar.y -= topborder; + detpar.width = double(facerect->width); + detpar.height = double(facerect->height); + detpar.yaw = 0; // assume face has no yaw in this version of Stasm + detpar.eyaw = EYAW00; + detpars[i] = detpar; + } +} +// order by increasing distance from left marg, and dist from top marg within that + +static bool IncreasingLeftMargin( // compare predicate for std::sort + const DetPar& detpar1, // in + const DetPar& detpar2) // in +{ + return 1e5 * detpar2.x + detpar2.y > + 1e5 * detpar1.x + detpar1.y; +} + +// order by decreasing width, and dist from the left margin within that + +static bool DecreasingWidth( // compare predicate for std::sort + const DetPar& detpar1, // in + const DetPar& detpar2) // in +{ + return 1e5 * detpar2.width - detpar2.x < + 1e5 * detpar1.width - detpar1.x; + +} + +// Discard too big or small faces (this helps reduce the number of false positives) + +static void DiscardMissizedFaces( + vec_DetPar& detpars) // io +{ + // constants (TODO These have not yet been rigorously empirically adjusted.) + static const double MIN_WIDTH = 1.33; // as fraction of median width + static const double MAX_WIDTH = 1.33; // as fraction of median width + + if (NSIZE(detpars) >= 3) // need at least 3 faces + { + // sort the faces on their width (smallest first) so can get median width + sort(detpars.begin(), detpars.end(), DecreasingWidth); + const int median = cvRound(detpars[NSIZE(detpars) / 2].width); + const int minallowed = cvRound(median / MIN_WIDTH); + const int maxallowed = cvRound(MAX_WIDTH * median); + // keep only faces that are not too big or small + vec_DetPar all_detpars(detpars); + detpars.resize(0); + for (int iface = 0; iface < NSIZE(all_detpars); iface++) + { + DetPar* face = &all_detpars[iface]; + if (face->width >= minallowed && face->width <= maxallowed) + detpars.push_back(*face); + } + } +} + +static void TraceFaces( // write image showing detected face rects + const vec_DetPar& detpars, // in + const Image& img, // in + const char* path) // in +{ + (void) detpars; + (void) img; + (void) path; + +#if TRACE_IMAGES // will be 0 unless debugging (defined in stasm.h) + + CImage cimg; cvtColor(img, cimg, CV_GRAY2BGR); // color image + for (int iface = 0; iface < NSIZE(detpars); iface++) + { + const DetPar &detpar = detpars[iface]; + + rectangle(cimg, + cv::Point(cvRound(detpar.x - detpar.width/2), + cvRound(detpar.y - detpar.height/2)), + cv::Point(cvRound(detpar.x + detpar.width/2), + cvRound(detpar.y + detpar.height/2)), + CV_RGB(255,255,0), 2); + + ImgPrintf(cimg, // 10 * iface to minimize overplotting + detpar.x + 10 * iface, detpar.y, + C_YELLOW, 1, ssprintf("%d", iface)); + } + lprintf("%s\n", path); + if (!cv::imwrite(path, cimg)) + Err("Cannot write %s", path); +#endif +} + +void FaceDet::DetectFaces_( // call once per image to find all the faces + const Image& img, // in: the image (grayscale) + const char* imgpath, // in: used only for debugging + bool multiface, // in: if false, want only the best face + int minwidth, // in: min face width as percentage of img width + void* user, // in: unused (match virt func signature) + cv::CascadeClassifier cascade) +{ + CV_Assert(user == NULL); + + DetectFaces(detpars_, img, minwidth, cascade); + char tracepath[SLEN]; + sprintf(tracepath, "%s_00_unsortedfacedet.bmp", Base(imgpath)); + TraceFaces(detpars_, img, tracepath); + DiscardMissizedFaces(detpars_); + if (multiface) // order faces on increasing distance from left margin + { + sort(detpars_.begin(), detpars_.end(), IncreasingLeftMargin); + sprintf(tracepath, "%s_05_facedet.bmp", Base(imgpath)); + TraceFaces(detpars_, img, tracepath); + } + else + { + // order faces on decreasing width, keep only the first (the largest face) + sort(detpars_.begin(), detpars_.end(), DecreasingWidth); + sprintf(tracepath, "%s_05_sortedfaces.bmp", Base(imgpath)); + TraceFaces(detpars_, img, tracepath); + if (NSIZE(detpars_)) + detpars_.resize(1); + } + iface_ = 0; // next invocation of NextFace_ must get first face +} + +// Get the (next) face from the image. +// If no face available, return detpar.x INVALID. +// Eyes, mouth, and rot in detpar always returned INVALID. + +const DetPar FaceDet::NextFace_(void) +{ + DetPar detpar; // detpar constructor sets all fields INVALID + + if (iface_ < NSIZE(detpars_)) + detpar = detpars_[iface_++]; + + return detpar; +} + +} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/stasm/src/faceroi.cpp b/3rdparty/stasm4.0.0/stasm/stasm/src/faceroi.cpp new file mode 100755 index 0000000..9814bb5 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/src/faceroi.cpp @@ -0,0 +1,203 @@ +// faceroi.cpp: face ROI, and translation from image frame to the ROI +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#include "faceroi.h" +#include "landmarks.h" + +namespace stasm +{ +// Rotations less than 5 are treated as zero to minimize image preprocessing. + +static const double ROT_TREAT_AS_ZERO = 5; + +//----------------------------------------------------------------------------- + +// Return a rect which covers the face with enough space around it for an +// ASM search, but also ensuring that the rect is in the image boundaries. + +static Rect RoiRect( + const DetPar& detpar, // in + int nimgcols, // in + int nimgrows, // in + bool flip, // in: mirror the ROI + double botfrac, // in: distance from center to bottom marg + double leftfrac, // in: dist from center to left marg + double topfrac, // in + double rightfrac) // in +{ + int ixmin, ixmax; + if (flip) + { + ixmin = MAX(0, cvRound(detpar.x - rightfrac * detpar.width)); + ixmax = MIN(nimgcols, cvRound(detpar.x + leftfrac * detpar.width)); + } + else + { + ixmin = MAX(0, cvRound(detpar.x - leftfrac * detpar.width)); + ixmax = MIN(nimgcols, cvRound(detpar.x + rightfrac * detpar.width)); + } + const int iymin = MAX(0, cvRound(detpar.y - botfrac * detpar.height)); + const int iymax = MIN(nimgrows, cvRound(detpar.y + topfrac * detpar.height)); + + Rect roi; + + roi.x = ixmin; + roi.y = iymin; + roi.width = ixmax - ixmin; + roi.height = iymax - iymin; + + CV_Assert(roi.width > 0); + CV_Assert(roi.height > 0); + + return roi; +} + +static bool IsRoiEntireImg( + const Rect& roi, // in + int imgcols, // in + int imgrows) // in +{ + return roi.x == 0 && + roi.y == 0 && + roi.width == imgcols && + roi.height == imgrows; +} + +static DetPar ImgDetParToRoiFrame( + const DetPar& detpar, // in + const Rect& rect_roi) // in +{ + DetPar detpar_roi(detpar); + detpar_roi.x -= rect_roi.x; + detpar_roi.y -= rect_roi.y; + Shape eyemouth_shape(5, 2, 0.); + if (Valid(detpar_roi.lex)) + { + eyemouth_shape(0, IX) -= rect_roi.x; + eyemouth_shape(0, IY) -= rect_roi.y; + } + if (Valid(detpar_roi.rex)) + { + eyemouth_shape(1, IX) -= rect_roi.x; + eyemouth_shape(1, IY) -= rect_roi.y; + } + if (Valid(detpar_roi.mouthx)) + { + eyemouth_shape(2, IX) -= rect_roi.x; + eyemouth_shape(2, IY) -= rect_roi.y; + } + if (Valid(detpar.rot) && detpar.rot) + { + // rotate eyes and mouth + const MAT rotmat = getRotationMatrix2D(cv::Point2f(float(detpar_roi.x), + float(detpar_roi.y)), + -detpar.rot, 1.); + TransformShapeInPlace(eyemouth_shape, rotmat); + } + if (Valid(detpar.lex)) + { + detpar_roi.lex = eyemouth_shape(0, IX); + detpar_roi.ley = eyemouth_shape(0, IY); + } + if (Valid(detpar.rex)) + { + detpar_roi.rex = eyemouth_shape(1, IX); + detpar_roi.rey = eyemouth_shape(1, IY); + } + if (Valid(detpar.mouthx)) + { + detpar_roi.mouthx = eyemouth_shape(2, IX); + detpar_roi.mouthy = eyemouth_shape(2, IY); + } + return detpar_roi; +} + +Shape ImgShapeToRoiFrame( // return shape in ROI frame + const Shape& shape, // in: shape in image frame + const DetPar& detpar_roi, // in: detpar wrt the ROI + const DetPar& detpar) // in +{ + Shape outshape(ShiftShape(shape, detpar_roi.x - detpar.x, + detpar_roi.y - detpar.y)); + if (Valid(detpar.rot) && detpar.rot) + { + const MAT rotmat = getRotationMatrix2D(cv::Point2f(float(detpar_roi.x), + float(detpar_roi.y)), + -detpar.rot, + 1.); + TransformShapeInPlace(outshape, rotmat); + } + return outshape; +} + +// In StartShapeAndRoi we selected a ROI and possibly rotated that ROI. +// The search was done on that ROI. Now de-adjust the search results +// to undo the effects of searching on the ROI, not on the actual image. + +Shape RoiShapeToImgFrame( // return shape in image frame + const Shape& shape, // in: shape in roi frame + const Image& face_roi, // in + const DetPar& detpar_roi, // in: detpar wrt the ROI + const DetPar& detpar) // in: detpar wrt the image +{ + Shape outshape(shape.clone()); + if (IsLeftFacing(detpar.eyaw)) + outshape = FlipShape(outshape, face_roi.cols); + if (Valid(detpar.rot) && detpar.rot) + { + const MAT rotmat = + getRotationMatrix2D(cv::Point2f(float(detpar_roi.x), + float(detpar_roi.y)), + detpar.rot, 1.); + TransformShapeInPlace(outshape, rotmat); + } + return ShiftShape(outshape, detpar.x - detpar_roi.x, + detpar.y - detpar_roi.y); +} + +void PossiblySetRotToZero( // this is to avoid rotating the image unnecessarily + double& rot) // io +{ + if (rot >= -ROT_TREAT_AS_ZERO && rot <= ROT_TREAT_AS_ZERO) + rot = 0; +} + +void FaceRoiAndDetPar( // get ROI around the face, rotate if necessary + Image& face_roi, // out + DetPar& detpar_roi, // out: detpar wrt the ROI + const Image& img, // in: original image + const DetPar& detpar, // in: wrt img frame, only x,y,w,h,rot used + bool flip, // in: mirror the ROI? + double botfrac, // in: default ROI_FRAC + double leftfrac, // in: dist from center to left margin + double topfrac, // in + double rightfrac) // in +{ + Rect rect_roi = RoiRect(detpar, img.cols, img.rows, flip, + botfrac, leftfrac, topfrac, rightfrac); + + detpar_roi = ImgDetParToRoiFrame(detpar, rect_roi); + + // following "if"s are for efficiency (avoid rotation etc. when possible). + + if (detpar.rot == 0 && IsRoiEntireImg(rect_roi, img.cols, img.rows)) + face_roi = img; + + else if (!Valid(detpar.rot) || detpar.rot == 0) + face_roi = Image(img, rect_roi); + + else // rotate image so face is upright, results go into face_roi + warpAffine(Image(img, rect_roi), face_roi, + getRotationMatrix2D(cv::Point2f(float(detpar_roi.x), + float(detpar_roi.y)), + -detpar.rot, 1.), + cv::Size(face_roi.cols, face_roi.rows), + cv::INTER_AREA, cv::BORDER_REPLICATE); + + // TODO For efficiency could combine this flip with above rot img when possible? + if (flip) + FlipImgInPlace(face_roi); +} + +} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/stasm/src/hat.cpp b/3rdparty/stasm4.0.0/stasm/stasm/src/hat.cpp new file mode 100755 index 0000000..1f3f013 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/src/hat.cpp @@ -0,0 +1,434 @@ +// hat.cpp: Histogram Array Transform descriptors +// +// Rob Hess' opensift implementation was used a reference: +// http://blogs.oregonstate.edu/hess/code/sift +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#include "hat.h" + +namespace stasm +{ +static const int GRIDHEIGHT = 4; // 4 x 5 grid of histograms in descriptor +static const int GRIDWIDTH = 5; + +static const int BINS_PER_HIST = 8; // 8 gives a 45 degree range per bin + +static const double WINDOW_SIGMA = .5; // gaussian window as frac of patch width + // .5 implies patch border downweight is .368 + +static const double FINAL_SCALE = 10; // arb but 10 is good for %g printing of descriptors + +// Get gradient magnitude and orientation of pixels in given img. +// We use a [1,-1] convolution mask rather than [1,0,-1] because it gives as good +// Stasm results and doesn't "waste" pixels on the left and top image boundary. +// Before scaling by bins_per_degree, orientations are from 0 to 359.99... +// degrees, with 0 being due east, and anticlockwise increasing. + +static void InitGradMagAndOrientMats( + MAT& magmat, // out: grad mag mat + MAT& orientmat, // out: grad ori mat + const Image& img) // in: ROI scaled to current pyramid level +{ + const int nrows = img.rows, nrows1 = img.rows-1; + const int ncols = img.cols, ncols1 = img.cols-1; + const double bins_per_degree = BINS_PER_HIST / 360.; + + magmat.create(nrows, ncols); + orientmat.create(nrows, ncols); + + for (int y = 0; y < nrows1; y++) + { + const byte* const buf = (byte*)(img.data) + y * ncols; + const byte* const buf_x1 = (byte*)(img.data) + y * ncols + 1; + const byte* const buf_y1 = (byte*)(img.data) + (y+1) * ncols; + + double* const magbuf = Buf(magmat) + y * ncols; + double* const orientbuf = Buf(orientmat) + y * ncols; + + for (int x = 0; x < ncols1; x++) + { + const byte pixel = buf[x]; + const double xdelta = buf_x1[x] - pixel; + const double ydelta = buf_y1[x] - pixel; + + magbuf[x] = sqrt(SQ(xdelta) + SQ(ydelta)); + + double orient = + RadsToDegrees(atan2(ydelta, xdelta)); // -180 <= orient < 180 + if (orient < 0) + orient += 360; // 0 <= orient < 360 + orientbuf[x] = orient * bins_per_degree; // 0 <= orient < BINS_PER_HIST + } + } + // fill bottom and right edges + magmat.row(nrows1) = 0; + magmat.col(ncols1) = 0; + orientmat.row(nrows1) = 0; + orientmat.col(ncols1) = 0; +} + +// Init the indices which map a patch row,col to the corresponding +// histogram grid row,col. The mapping depends only on the image +// patchwidth and the histogram GRIDHEIGHT and WIDTH. +// +// The first pixel in the image patch maps to histogram grid x coord -0.5. +// Therefore after TrilinearAccumulate, the pixel will be equally smeared +// across histogram bin -1 and histogram bin 0. The histogram row indices +// for this pixel are irow=-1 row_frac=0.5. + +static inline void InitIndices( + vec_int& row_indices, // out + vec_double& row_fracs, // out + vec_int& col_indices, // out + vec_double& col_fracs, // out + vec_double& pixelweights, // out + const int patchwidth) // in: in pixels +{ + CV_Assert(patchwidth % 2 == 1); // patchwidth must be odd in this implementation + + const int npix = SQ(patchwidth); // number of pixels in image patch + + row_indices.resize(npix); + row_fracs.resize(npix); + col_indices.resize(npix); + col_fracs.resize(npix); + pixelweights.resize(npix); + + const int halfpatchwidth = (patchwidth-1) / 2; + + const double grid_rows_per_img_row = GRIDHEIGHT / (patchwidth-1.); + const double row_offset = GRIDHEIGHT / 2. - .5; // see header comment + + const double grid_cols_per_img_col = GRIDWIDTH / (patchwidth-1.); + const double col_offset = GRIDWIDTH / 2. - .5; + + // downweight at border of patch is exp(-1 / (2 * WINDOW_SIGMA)) + const double weight = -1 / (WINDOW_SIGMA * GRIDHEIGHT * GRIDWIDTH ); + + int ipix = 0; + + for (double patchrow = -halfpatchwidth; patchrow <= halfpatchwidth; patchrow++) + { + const double signed_row = patchrow * grid_rows_per_img_row; + const double row = signed_row + row_offset; + const int irow = int(floor(row)); + const double row_frac = row - irow; + + CV_DbgAssert(row >= -.5 && row <= GRIDHEIGHT - .5); // same applies to col below + + for (double patchcol = -halfpatchwidth; patchcol <= halfpatchwidth; patchcol++) + { + row_indices[ipix] = irow; + row_fracs[ipix] = row_frac; + + const double signed_col = patchcol * grid_cols_per_img_col; + const double col = signed_col + col_offset; + const int icol = int(floor(col)); + + col_indices[ipix] = icol; + col_fracs[ipix] = col - icol; + + pixelweights[ipix] = // TODO this weights col and row offsets equally + exp(weight * (SQ(signed_row) + SQ(signed_col))); + + ipix++; + } + } +} + +// Init the data that doesn't change unless the image, patch width, or +// GRIDHEIGHT or WIDTH changes (i.e. for Stasm this must be called +// once per pyramid lev). + +void Hat::Init_( + const Image& img, // in: image scaled to current pyramid level + const int patchwidth) // in: patch will be patchwidth x patchwidth pixels +{ + patchwidth_ = patchwidth; + + InitGradMagAndOrientMats(magmat_, orientmat_, img); + + InitIndices(row_indices_, row_fracs_, col_indices_, col_fracs_, pixelweights_, + patchwidth_); +} + +// Calculate the image patch gradient mags and orients. +// Note that the mag for a pixel out of the image boundaries is set +// to 0 and thus contributes nothing later in TrilinearAccumulate. + +static void GetMagsAndOrients_GeneralCase( + vec_double& mags, // out + vec_double& orients, // out + const int ix, // in: x coord of center of patch + const int iy, // in: y coord of center of patch + const int patchwidth, // in + const MAT& magmat, // in + const MAT& orientmat, // in + const vec_double& pixelweights) // in +{ + const int halfpatchwidth = (patchwidth-1) / 2; + int ipix = 0; + for (int x = iy - halfpatchwidth; x <= iy + halfpatchwidth; x++) + { + const double* const magbuf = Buf(magmat) + x * magmat.cols; + const double* const orientbuf = Buf(orientmat) + x * orientmat.cols; + + for (int y = ix - halfpatchwidth; y <= ix + halfpatchwidth; y++) + { + if (x < 0 || x >= magmat.rows || y < 0 || y >= magmat.cols) + { + mags[ipix] = 0; // off image + orients[ipix] = 0; + } + else // in image + { + mags[ipix] = pixelweights[ipix] * magbuf[y]; + orients[ipix] = orientbuf[y]; + } + ipix++; + } + } + CV_DbgAssert(ipix == NSIZE(mags)); +} + +// Calculate the image patch gradient mags and orients for +// an image patch that is entirely in the image boundaries. + +static inline void GetMagsAndOrients_AllInImg( + vec_double& mags, // out + vec_double& orients, // out + const int ix, // in: x coord of center of patch + const int iy, // in: y coord of center of patch + const int patchwidth, // in + const MAT& magmat, // in + const MAT& orientmat, // in + const vec_double& pixelweights) // in +{ + const int halfpatchwidth = (patchwidth-1) / 2; + int ipix = 0; + for (int x = iy - halfpatchwidth; x <= iy + halfpatchwidth; x++) + { + const double* const magbuf = Buf(magmat) + x * magmat.cols; + const double* const orientbuf = Buf(orientmat) + x * orientmat.cols; + + for (int y = ix - halfpatchwidth; y <= ix + halfpatchwidth; y++) + { + mags[ipix] = pixelweights[ipix] * magbuf[y]; + orients[ipix] = orientbuf[y]; + ipix++; + } + } + CV_DbgAssert(ipix == NSIZE(mags)); +} + +void GetMagsAndOrients( // get mags and orients for patch at ix,iy + vec_double& mags, // out + vec_double& orients, // out + const int ix, // in: x coord of center of patch (may be off image) + const int iy, // in: y coord of center of patch (may be off image) + const int patchwidth, // in: in pixels + const MAT& magmat, // in + const MAT& orientmat, // in + const vec_double& pixelweights) // in +{ + CV_Assert(patchwidth % 2 == 1); // patchwidth must be odd in this implementation + const int npix = SQ(patchwidth); // number of pixels in image patch + const int halfpatchwidth = (patchwidth-1) / 2; + + mags.resize(npix); + orients.resize(npix); + + if (ix - halfpatchwidth < 0 || ix + halfpatchwidth >= magmat.cols || + iy - halfpatchwidth < 0 || iy + halfpatchwidth >= magmat.rows) + { + // Part or all of the patch is out the image area. + + GetMagsAndOrients_GeneralCase(mags, orients, + ix, iy, patchwidth, magmat, orientmat, pixelweights); + } + else + { + // Patch is entirely in the image area. The following function returns + // results identical to GetMagsAndOrients_GeneralCase, but is faster + // because it doesn't have to worry about the edges of the image. + + GetMagsAndOrients_AllInImg(mags, orients, + ix, iy, patchwidth, magmat, orientmat, pixelweights); + } +} + +// Apportion the gradient magnitude of a pixel across 8 orientation bins. +// "Accumulate" is in the func name because we "+=" the interpolated values. +// This routine needs to be fast. + +static inline void TrilinearAccumulate( + double& b000, double& b001, // io: histogram bins + double& b010, double& b011, // io + double& b100, double& b101, // io + double& b110, double& b111, // io + const double mag, // in: the mag that gets apportioned + const double rowfrac, // in + const double colfrac, // in + const double orientfrac) // in +{ + const double + a1 = mag * rowfrac, a0 = mag - a1, + + a11 = a1 * colfrac, a10 = a1 - a11, + a01 = a0 * colfrac, a00 = a0 - a01, + + a111 = a11 * orientfrac, + a101 = a10 * orientfrac, + a011 = a01 * orientfrac, + a001 = a00 * orientfrac; + + b000 += a00 - a001; b001 += a001; + b010 += a01 - a011; b011 += a011; + b100 += a10 - a101; b101 += a101; + b110 += a11 - a111; b111 += a111; +} + +// The dimension of histbins is 1+GRIDHEIGHT+1 by 1+GRIDWIDTH+1 by BINS_PER_HIST+1. +// The extra bins are for fast trilinear accumulation (boundary checks unneeded). +// The final bin in each histogram is for degrees greater than 360, needed as +// degrees less than but near 360 get smeared out by trilinear interpolation. + +static inline int HistIndex(int row, int col, int iorient) // index into histbins +{ + return ((row+1) * (1+GRIDWIDTH+1) + (col+1)) * (BINS_PER_HIST+1) + iorient; +} + +void GetHistograms( // get all histogram bins + vec_double& histbins, // out + const int patchwidth, // in: in pixels + const vec_double& mags, // in + const vec_double& orients, // in + const vec_int& row_indices, // in + const vec_double& row_fracs, // in + const vec_int& col_indices, // in + const vec_double& col_fracs) // in +{ + const int npix = SQ(patchwidth); // number of pixels in image patch + + const int nhistbins = + (1 + GRIDHEIGHT + 1) * (1 + GRIDWIDTH + 1) * (BINS_PER_HIST + 1); + + // resize and clear (the fill is needed if the size of histbins + // doesn't change, because in that case resize does nothing) + histbins.resize(nhistbins); + fill(histbins.begin(), histbins.end(), 0.); + + for (int ipix = 0; ipix < npix; ipix++) + { + const double orient = orients[ipix]; + const int iorient = int(floor(orient)); + CV_DbgAssert(iorient >= 0 && iorient < BINS_PER_HIST); + + const int ibin = + HistIndex(row_indices[ipix], col_indices[ipix], iorient); + + double* const p = &histbins[ibin]; + + TrilinearAccumulate( // apportion grad mag across eight orientation bins + p[0], // ThisOrient + p[1], // NextOrient + p[BINS_PER_HIST + 1], // NextCol ThisOrient + p[BINS_PER_HIST + 2], // NextCol NextOrient + p[(GRIDWIDTH+2) * (BINS_PER_HIST+1)], // NextRow ThisOrient + p[(GRIDWIDTH+2) * (BINS_PER_HIST+1) + 1], // NextRow NextOrient + p[(GRIDWIDTH+3) * (BINS_PER_HIST+1)], // NextRow NextCol ThisOrient + p[(GRIDWIDTH+3) * (BINS_PER_HIST+1) + 1], // NextRow NextCol NextOrient + mags[ipix], // the mag that gets apportioned + row_fracs[ipix], // rowfrac + col_fracs[ipix], // colfrac + orient - iorient); // orientfrac + } +} + +static void WrapHistograms( + vec_double& histbins) +{ + for (int row = 0; row < GRIDHEIGHT; row++) + for (int col = 0; col < GRIDWIDTH; col++) + { + const int ibin = HistIndex(row, col, 0); + histbins[ibin] += histbins[ibin + BINS_PER_HIST]; // 360 wraps to 0 + } +} + +static void CopyHistsToDesc( // copy histograms to descriptor, skipping pad bins + VEC& desc, // out + const vec_double& histbins) // in +{ + for (int row = 0; row < GRIDHEIGHT; row++) + for (int col = 0; col < GRIDWIDTH; col++) + memcpy(Buf(desc) + + (row * GRIDWIDTH + col) * BINS_PER_HIST, + &histbins[HistIndex(row, col, 0)], + BINS_PER_HIST * sizeof(histbins[0])); +} + +static void NormalizeDesc( // take sqrt of elems and divide by L2 norm + VEC& desc) // io +{ + double* const data = Buf(desc); + for (int i = 0; i < NSIZE(desc); i++) + data[i] = sqrt(data[i]); // sqrt reduces effect of outliers + const double norm = cv::norm(desc); // L2 norm + if (!IsZero(norm)) + { + const double scale = FINAL_SCALE / norm; + for (int i = 0; i < NSIZE(desc); i++) + data[i] *= scale; + } +} + +// Hat::Init_ must be called before calling this function. +// +// A HAT descriptor is a vector of doubles of length +// GRIDHEIGHT * GRIDWIDTH * BINS_PER_HIST (currently 4 * 5 * 8 = 160). +// +// The descriptor is a vector of doubles (instead of say bytes) primarily +// so the HatFit function we apply later is fast (because byte-to-double +// type conversions are unneeded when applying the formula). +// +// Note also that a trial implementation that used floats instead of +// doubles (and with a float form of HatFit) was slower. + +VEC Hat::Desc_( // return HAT descriptor, Init_ must be called first + const double x, // in: x coord of center of patch (may be off image) + const double y) // in: y coord of center of patch (may be off image) + const +{ + CV_Assert(magmat_.rows); // verify that Hat::Init_ was called + +#if _OPENMP // can't be static because multiple instances + vec_double mags, orients; + vec_double histbins; +#else // static faster since size rarely changes + static vec_double mags, orients; // the image patch grad mags and orientations + static vec_double histbins; // the histograms +#endif + + GetMagsAndOrients(mags, orients, + cvRound(x), cvRound(y), patchwidth_, + magmat_, orientmat_, pixelweights_); + + GetHistograms(histbins, + patchwidth_, mags, orients, + row_indices_, row_fracs_, col_indices_, col_fracs_); + + WrapHistograms(histbins); // wrap 360 degrees back to 0 + + VEC desc(GRIDHEIGHT * GRIDWIDTH * BINS_PER_HIST, 1); // the HAT descriptor + + CopyHistsToDesc(desc, + histbins); + + NormalizeDesc(desc); + + return desc; +} + +} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/stasm/src/hatdesc.cpp b/3rdparty/stasm4.0.0/stasm/stasm/src/hatdesc.cpp new file mode 100755 index 0000000..00d0b9c --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/src/hatdesc.cpp @@ -0,0 +1,152 @@ +// hatdesc.cpp: Model for HAT descriptors. +// This does a grid search using the descriptors defined in hat.cpp. +// It also caches the descriptors for fast reuse. +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#include "hatdesc.h" + +#define CACHE 1 +namespace stasm +{ +// hat_g is global because we initialize the HAT internal data +// (grads and orients etc.) once for the entire pyramid level. +// Initialized in InitHatLevData. + +// static Hat hat_g; + +//----------------------------------------------------------------------------- + +#if CACHE + +// For speed, we cache the HAT descriptors, so we have the descriptor at +// hand if we revisit an xy position in the image, which is very common in ASMs. +// (Note: an implementation with cache_g as a vector was slower.) + +//static hash_map cache_g; // cached descriptors +//static const bool TRACE_CACHE = 0; // for checking cache hit rate +//static int ncalls_g, nhits_g; // only used if TRACE_CACHE + +static unsigned Key(int x, int y) // pack x,y into 32 bits for cache key +{ + return ((y & 0xffff) << 16) | (x & 0xffff); +} + +static double GetHatFit( // args same as non CACHE version, see below + int x, // in + int y, // in + const HatFit hatfit, // in + const Hat &hat, + StasmHash &hash) +{ + const double* descbuf = NULL; // the HAT descriptor + + const unsigned key(Key(x, y)); + + QHash::const_iterator it = hash.find(key); + if (it != hash.end()) { + descbuf = Buf(it.value()); + } else { + const VEC desc(hat.Desc_(x, y)); + hash[key] = desc; // remember descriptor for possible re-use + descbuf = Buf(desc); + } + return hatfit(descbuf); +} + +#else // not CACHE + +// Get the HAT descriptor at the given ipoint and x,y coords, and return +// how well the descriptor matches the model. High fit means good match. + +static double GetHatFit( + int x, // in: image x coord (may be off image) + int y, // in: image y coord (may be off image) + const HatFit hatfit) // in: func to estimate descriptor match +{ + return hatfit(Buf(hat_g.Desc_(x, y))); +} + +#endif // not CACHE + +static int round2(double x) // return closest int to x that is divisible by 2 +{ + return 2 * cvRound(x / 2); +} + +static int PatchWidth( // patchwidth at the given pyramid level + int ilev) // in: pyramid level (0 is full size) +{ + return HAT_PATCH_WIDTH + round2(ilev * HAT_PATCH_WIDTH_ADJ); +} + +Hat InitHatLevData( // init the global HAT data needed for this pyr level + const Image& img, // in + int ilev) // in +{ + Hat hat; + + if (ilev <= HAT_START_LEV) // we use HATs only at upper pyr levs + { + hat.Init_(img, PatchWidth(ilev)); + } + + return hat; +} + +VEC HatDesc( // used only during training new models + double x, // in + double y) // in +{ + Hat hat; + return hat.Desc_(cvRound(x), cvRound(y)); +} + +// Note 1: The image is not passed directly to this function. Instead this +// function accesses the image gradient magnitude and orientation stored in +// fields of the global variable hat_g and previously initialized by the +// call to InitHatLevData. +// +// Note 2: If OpenMP is enabled, multiple instances of this function will be +// called concurrently (each call will have a different value of x and y). Thus +// this function and its callees do not modify any data that is not on the stack. + +void HatDescSearch( // search in a grid around the current landmark + double& x, // io: (in: old position of landmark, out: new position) + double& y, // io: + const HatFit hatfit, // in: func to estimate descriptor match + const Hat &hat, + StasmHash &hash) +{ + // If HAT_SEARCH_RESOL is 2, force x,y positions to be divisible + // by 2 to increase cache hit rate. This increases the mean hit rate + // from about 67% to 88% and barely affects landmark accuracy. + int ix = HAT_SEARCH_RESOL == 2? round2(x): cvRound(x); + int iy = HAT_SEARCH_RESOL == 2? round2(y): cvRound(y); + + double fit_best = -FLT_MAX; + + int xoffset_best = 0, yoffset_best = 0; // in pixels + + for (int yoffset = -HAT_MAX_OFFSET; + yoffset <= HAT_MAX_OFFSET; + yoffset += HAT_SEARCH_RESOL) + { + for (int xoffset = -HAT_MAX_OFFSET; + xoffset <= HAT_MAX_OFFSET; + xoffset += HAT_SEARCH_RESOL) + { + const double fit = GetHatFit(ix + xoffset, iy + yoffset, hatfit, hat, hash); + if (fit > fit_best) + { + fit_best = fit; + xoffset_best = xoffset; + yoffset_best = yoffset; + } + } + } + x += xoffset_best; + y += yoffset_best; +} + +} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/stasm/src/initasm.cpp b/3rdparty/stasm4.0.0/stasm/stasm/src/initasm.cpp new file mode 100755 index 0000000..abdcac2 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/src/initasm.cpp @@ -0,0 +1,35 @@ +// initasm.cpp: initialize the ASM model +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#include "initasm.h" +#include "yaw00.h" + +namespace stasm +{ +void InitMods( // initialize ASM model + vec_Mod& mods, // out: ASM model (only one model in this version of Stasm) + const char* datadir) // in: directory of face detector files +{ + if (mods.empty()) // models not yet initialized? + { + mods.resize(1); // 1 model + + static const Mod mod_yaw00( // constructor, see asm.h + EYAW00, // eyaw + ESTART_EYES, // estart + datadir, + yaw00_meanshape, + yaw00_eigvals, + yaw00_eigvecs, + 20, // neigs (value from empirical testing) + 1.5, // bmax (value from empirical testing) + SHAPEHACKS_DEFAULT | SHAPEHACKS_SHIFT_TEMPLE_OUT, // hackbits + YAW00_DESCMODS, // defined in yaw00.mh + NELEMS(YAW00_DESCMODS)); + + mods[0] = &mod_yaw00; + } +} + +} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/stasm/src/landmarks.cpp b/3rdparty/stasm4.0.0/stasm/stasm/src/landmarks.cpp new file mode 100755 index 0000000..199434f --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/src/landmarks.cpp @@ -0,0 +1,93 @@ +// landmarks.cpp: code for manipulating landmarks +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#include "landmarks.h" +#include "err.h" + +namespace stasm +{ +double MeanPoint( + const Shape& shape, // in + int ipoint1, // in + int ipoint2, // in + int ix) // in: IX or IY +{ + return (shape(ipoint1, ix) + shape(ipoint2, ix)) / 2; +} + +void PrevAndNextLandmarks( + int& prev, // out + int& next, // out + int ipoint, // in + const Shape& shape) // in +{ + const int npoints = shape.rows; + + const LANDMARK_INFO* const info = LANDMARK_INFO_TAB; + + CV_Assert(NELEMS(LANDMARK_INFO_TAB) == npoints); + CV_Assert(ipoint >= 0 && ipoint < npoints); + + prev = info[ipoint].prev; + if (prev < 0) // not specified in table? + prev = (ipoint + npoints - 1) % npoints; + + next = info[ipoint].next; + if (next < 0) + next = (ipoint + 1) % npoints; + + CV_Assert(prev >= 0); + CV_Assert(next >= 0); + CV_Assert(prev < int(shape.rows)); + CV_Assert(next < int(shape.rows)); + CV_Assert(prev != next); + CV_Assert(PointUsed(shape, prev)); + CV_Assert(PointUsed(shape, next)); +} + +static void FlipPoint( + Shape& shape, // io + const Shape& oldshape, // in + int inew, // in + int iold, // in + int imgwidth) // in +{ + if (!PointUsed(oldshape, iold)) + shape(inew, IX) = shape(inew, IY) = 0; + else + { + shape(inew, IX) = imgwidth - oldshape(iold, IX) - 1; + shape(inew, IY) = oldshape(iold, IY); + if (!PointUsed(shape, inew)) // falsely marked unused after conversion? + shape(inew, IX) = XJITTER; // adjust so not marked as unused + } +} + +// Flip shape horizontally. +// Needed so we can use right facing models for left facing faces. + +Shape FlipShape( // flip shape horizontally + const Shape& shape, // in + int imgwidth) // in +{ + const LANDMARK_INFO* info; + switch (shape.rows) + { + case 77: info = LANDMARK_INFO_TAB; break; + default: Err("Do not know how to mirror a %d shape", shape.rows); + } + Shape outshape(shape.rows, 2); + for (int i = 0; i < shape.rows; i++) + { + int partner = info[i].partner; + + if (partner == -1) // no partner e.g. tip of nose + partner = i; + + FlipPoint(outshape, shape, partner, i, imgwidth); + } + return outshape; +} + +} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/stasm/src/misc.cpp b/3rdparty/stasm4.0.0/stasm/stasm/src/misc.cpp new file mode 100755 index 0000000..200409e --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/src/misc.cpp @@ -0,0 +1,966 @@ +// misc.cpp: miscellaneous definitions for Stasm +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#include "misc.h" +#include "err.h" +#include "print.h" +#include "asm.h" + +#include + +namespace stasm +{ +//----------------------------------------------------------------------------- + +// Like sprintf but returns the string and so doesn't require a buffer arg. + +const char* ssprintf(const char* format, ...) +{ + static char s[SBIG]; + va_list args; + va_start(args, format); + VSPRINTF(s, format, args); + va_end(args); + return s; +} + +// Like strncpy but always zero terminate, issue error if can't. + +void strncpy_( + char* dest, // out + const char* src, // in + int n) // in: sizeof(dest) +{ + const char* const start = src; // used only for possible error message + while ((*dest++ = *src++)) // assignment is intentional + if (--n <= 0) + Err("Error in strncpy_ %-80s", start); +} + +void ToLowerCase( + char* s) // io: convert to lower case +{ + for (; *s; s++) + *s = char(tolower(*s)); +} + +void ConvertBackslashesToForwardAndStripFinalSlash(char* s) +{ + int i; + + for (i = 0; s[i]; i++) // convert \ to / + if (s[i] == '\\') + s[i] = '/'; + + if (i > 0 && s[i-1] == '/') // remove final / if any + s[i-1] = 0; +} + +// Get basename and extension e.g. given "C:/bin/cat.exe" returns "cat.exe". + +const char* BaseExt(const char* path) +{ + static char s[SLEN]; + char base[SLEN], ext[SLEN]; + splitpath(path, NULL, NULL, base, ext); + sprintf(s, "%s%s", base, ext); + return s; +} + +// Get basename e.g. given "C:/bin/cat.exe" returns "cat". + +const char* Base(const char* path) +{ + static char s[SLEN]; + splitpath(path, NULL, NULL, s, NULL); + return s; +} + +// Our own version of splitpath so we don't need the WIN32 code under Unix. +// This has not been tested for every possible combination but seems to work. + +void splitpath( + const char* path, // in + char* drive, // out: can be NULL + char* dir, // out: can be NULL + char* base, // out: can be NULL + char* ext) // out: can be NULL, includes dot +{ + CV_Assert(path && STRNLEN(path, _MAX_PATH) < _MAX_PATH); + + if (drive) + { + *drive = 0; + if (*path && *(path+1) == ':') // has drive prefix? + { + *drive++ = *path++; // copy to drive + *drive++ = *path++; + *drive = 0; + } + } + const char* end; + for (end = path; *end; end++) // end of path + ; + + const char* start; + for (start = end; start != path; ) // start of extension + { + start--; + if (*start == '/' || *start == '\\') + break; + if (*start == '.') + { + end = start; + break; + } + } + for (start = end; start != path; ) // start of directory + { + start--; + if (*start == '/' || *start == '\\') + { + start++; + break; + } + } + const char* p; + if (dir) // copy directory to dir + { + for (p = path; p != start; ) + *dir++ = *p++; + // remove trailing / if any, but keep if just a single / or double // + if (p > path+1 && *(dir-2) != *(dir-1) && + (*(dir-1) == '/' || *(dir-1) == '\\')) + { + dir--; + } + *dir = 0; + } + if (base) // copy basename to base + { + for (p = start; p != end; ) + *base++ = *p++; + *base = 0; + } + if (ext) // copy extension to ext + { + for (p = end; *p; ) + *ext++ = *p++; + *ext = 0; + } + // Check for buffer overflow. TODO Do this properly (i.e. in loops above). + CV_Assert(drive == NULL || STRNLEN(drive, _MAX_DRIVE) < _MAX_DRIVE); + CV_Assert(dir == NULL || STRNLEN(dir, _MAX_DIR) < _MAX_DIR); + CV_Assert(base == NULL || STRNLEN(base, _MAX_FNAME) < _MAX_FNAME); + CV_Assert(ext == NULL || STRNLEN(ext, _MAX_EXT) < _MAX_EXT); +} + +// Our own version of makepath so we don't need the WIN32 code under Unix. +// This has not been tested for every possible combination but seems to work. + +void makepath( + char* path, // out + const char* drive, // in: can be NULL, will append ":" if necessary + const char* dir, // in: can be NULL, will append "/" if necessary + const char* base, // in: can be NULL, + const char* ext) // in: can be NULL, will prepend "." if necessary +{ + CV_Assert(path); + + char* p = path; + if (drive && *drive) + { + *p++ = *drive; + *p++ = ':'; + } + if (dir && *dir) + { + strncpy_(p, dir, _MAX_DIR); + p += STRNLEN(dir, _MAX_DIR); + if (*(p-1) != '/' && *(p-1) != '\\') + *p++ = '/'; + } + if (base && *base) + { + strncpy_(p, base, _MAX_FNAME); + p += STRNLEN(base, _MAX_FNAME); + } + if (ext && *ext) + { + if (*ext != '.') + *p++ = '.'; + strncpy_(p, ext, _MAX_EXT); + p += STRNLEN(ext, _MAX_EXT); + } + *p = 0; +} + +void LogShape( // print mat to log file, this is mostly for debugging and testing + const MAT& mat, // in + const char* matname) // in +{ + // print in shapefile format + logprintf("\n00000000 %s\n{ %d %d\n", Base(matname), mat.rows, mat.cols); + for (int row = 0; row < mat.rows; row++) + { + for (int col = 0; col < mat.cols; col++) + { + if (int(mat(row, col)) == mat(row, col)) + logprintf("%.0f", mat(row, col)); + else + logprintf("%.1f", mat(row, col)); + if (col < mat.cols-1) + logprintf(" "); + } + logprintf("\n"); + } + logprintf("}\n"); +} + +static void GetPrintMatFormat( + char* format, // out: will be something like %3.2f + const MAT& mat) // in +{ + // get max elem and if any elems are negative so we can format nicely + double max = -1; + bool neg = false; + bool frac = false; + for (int row = 0; row < mat.rows; row++) + for (int col = 0; col < mat.cols; col++) + { + const double elem = mat(row, col); + if (ABS(elem) > max) + max = ABS(elem); + if (elem < 0) + neg = true; + if (elem != floor(elem)) + frac = true; + } + + if (max >= 1e5) + frac = false; // no decimal digit if enough sig digits to left of decimal + const int ndigits = NumDigits(max); + sprintf(format, "%%%s%d.%s", + neg? " ": "", ndigits+neg+(frac? 2: 0)+1, frac? "2f": "0f"); +} + +void PrintMat( // utility to print a matrix + const MAT& mat, // in + const char* msg) // in: message +{ + char format[SLEN]; // will be something like %3.2f + GetPrintMatFormat(format, mat); + lprintf("%s %dx%d:\n", msg, mat.rows, mat.cols); + for (int row = 0; row < mat.rows; row++) + { + lprintf("%*d: ", NumDigits(mat.rows), row); + for (int col = 0; col < mat.cols; col++) + { + lprintf(format, mat(row, col)); + if (col < mat.cols-1) + lprintf(" "); + } + lprintf("\n"); + } +} + +// This redimensions a matrix and preserves as much of the old data as possible. +// If new matrix is bigger than or same size as the old matrix then all the data +// will be preserved. Unused entries in the new matrix are cleared i.e. set to 0. +// The returned matrix may or may not use the same buffer as mat. + +MAT DimKeep(const MAT& mat, int nrows, int ncols) +{ + if (mat.rows == nrows && mat.cols == ncols) // no change needed? + return mat; + if (mat.rows * mat.cols == nrows * ncols) // same number of elements? + { + CV_Assert(mat.isContinuous()); + MAT newmat(mat); + newmat.rows = nrows; + newmat.cols = ncols; + newmat.step = ncols * sizeof(newmat(0)); + return newmat; + } + // copy as much of the data as will fit in the new matrix + MAT newmat(nrows, ncols, 0.); + int minrows = MIN(nrows, mat.rows); + for (int i = 0; i < minrows; i++) + { + const double* const rowbuf = mat.ptr(i); + double* const rowbuf1 = newmat.ptr(i); + for (int j = 0; j < ncols; j++) + rowbuf1[j] = rowbuf[j]; + } + return newmat; +} + +const MAT ArrayAsMat( // create a MAT from a C array of doubles + int nrows, // in + int ncols, // in + const double* data) // in: array of doubles +{ + // cast is necessary because OpenCV mat constructors + // don't know how to use (they should?) + + return cv::Mat(nrows, ncols, CV_64FC1, const_cast(data)); +} + +MAT RoundMat( // return mat with entries rounded to integers + const MAT& mat) // in +{ + MAT newmat(mat.rows, mat.cols); + for (int i = 0; i < mat.rows; i++) + for (int j = 0; j < mat.cols; j++) + { + newmat(i, IX) = cvRound(mat(i, IX)); + newmat(i, IY) = cvRound(mat(i, IY)); + } + + return newmat; +} + +// Force pinned landmarks in shape to their pinned position. +// This also returns the mean distance from the output shape to pinnedshape. + +double ForcePinnedPoints( + Shape& shape, // io + const Shape pinnedshape) // in: points that are not pinned have coords 0,0 +{ + CV_Assert(pinnedshape.rows >= shape.rows); + double dist = 0; + int npinned = 0; + for (int i = 0; i < shape.rows; i++) + { + if (PointUsed(pinnedshape, i)) // pinned landmark? + { + npinned++; + dist += PointDist(shape, pinnedshape, i); + shape(i, IX) = pinnedshape(i, IX); + shape(i, IY) = pinnedshape(i, IY); + } + } + CV_Assert(npinned > 0); + return dist / npinned; +} + +void ShapeMinMax( // get min and max ccords in the given shape + double& xmin, // out + double& xmax, // out + double& ymin, // out + double& ymax, // out + const Shape& shape) // in +{ + xmin = FLT_MAX, xmax = -FLT_MAX, ymin = FLT_MAX, ymax = -FLT_MAX; + for (int i = 0; i < shape.rows; i++) + { + double x = shape(i, IX), y = shape(i, IY); + if (PointUsed(x, y)) + { + if (x < xmin) xmin = x; + if (x > xmax) xmax = x; + if (y < ymin) ymin = y; + if (y > ymax) ymax = y; + } + } + CV_Assert(xmin < FLT_MAX); + CV_Assert(xmin < xmax); // need at least two discrete points in shape +} + +double ShapeWidth(const Shape& shape) // width of shape in pixels +{ + CV_Assert(shape.rows > 1); + double xmin, xmax, ymin, ymax; + ShapeMinMax(xmin, xmax, ymin, ymax, shape); + return ABS(xmax - xmin); +} + +double ShapeHeight(const Shape& shape) // height of shape in pixels +{ + CV_Assert(shape.rows > 1); + double xmin, xmax, ymin, ymax; + ShapeMinMax(xmin, xmax, ymin, ymax, shape); + return ABS(ymax - ymin); +} + +// Jitter points at 0,0 if any. We do this because if both x and y coords +// of a point are zero, Stasm takes that to mean that the point is unused. +// So prevent that when we know all points in the shape are actually used. + +void JitterPointsAt00InPlace( + Shape& shape) // io +{ + for (int i = 0; i < shape.rows; i++) + if (!PointUsed(shape, i)) + shape(i, IX) = XJITTER; +} + +Shape JitterPointsAt00( + const Shape& shape) // in +{ + Shape outshape(shape.clone()); + JitterPointsAt00InPlace(outshape); + return outshape; +} + +// Multiply a two element xy vector by a 3 x 3 matrix. +// Used for homogeneous transforms. mat can be 3x2 or 2x2 (since the +// bottom row of a homogeneous mat is constant and is ignored here). + +static void Mat33TimesVec( + VEC& v, // io: two element vector + const MAT& mat) // in: three column matrix +{ + CV_DbgAssert(v.rows == 1 && v.cols == 2); + CV_DbgAssert(mat.rows >= 2 && mat.cols == 3); + CV_Assert(mat.isContinuous()); + + const double* const data = Buf(mat); + + const double x = v(0, 0); + const double y = v(0, 1); + + v(0, 0) = data[0] * x + data[1] * y + data[2]; + v(0, 1) = data[3] * x + data[4] * y + data[5]; +} + +// Transform shape by multiplying it by a homogeneous alignment_mat. +// alignment_mat can be 3x2 or 2x2 (since the bottom row of a homogeneous mat +// is constant and is ignored here). +// The term "in place" means that we modify the shape passed to this func. + +void TransformShapeInPlace( + Shape& shape, // io + const MAT& alignment_mat) // in +{ + CV_Assert(shape.cols == 2); + CV_Assert(alignment_mat.cols == 3 || alignment_mat.rows == 2); + + for (int i = 0; i < shape.rows; i++) + if (PointUsed(shape, i)) + { + VEC row(shape.row(i)); + Mat33TimesVec(row, alignment_mat); + // if transformed point happens to be at 0,0, jitter it + if (!PointUsed(shape, i)) + shape(i, IX) = XJITTER; + } +} + +void TransformShapeInPlace( + Shape& shape, // io + double x0, double y0, double z0, // in + double x1, double y1, double z1) // in +{ + double transform_data[] = + { + x0, y0, z0, + x1, y1, z1 + }; + TransformShapeInPlace(shape, MAT(2, 3, transform_data)); +} + +Shape TransformShape( // return transformed shape + const Shape& shape, // in + double x0, double y0, double z0, // in + double x1, double y1, double z1) // in +{ + Shape outshape(shape.clone()); + TransformShapeInPlace(outshape, x0, y0, z0, x1, y1, z1); + return outshape; +} + +Shape TransformShape( // return transformed shape, affine transform + const Shape& shape, // in + const MAT& alignment_mat) // in +{ + Shape outshape(shape.clone()); + TransformShapeInPlace(outshape, alignment_mat); + return outshape; +} + +// Solves Ax=b by LU decomposition. Returns col vec x. +// The b argument must be a vector (row or column, it doesn't matter). +// If mat is singular this will fail with an error message. +// See also LinSolve() which will solve any linear system. + +static const VEC LinSolveLu( + MAT& mat, // in, but gets destroyed + VEC& b) // in, but gets destroyed +{ + CV_Assert(mat.isContinuous() && b.isContinuous()); + if (!cv::LU(Buf(mat), mat.cols * sizeof(mat(0)), mat.rows, + Buf(b), sizeof(mat(0)), 1)) + Err("LinSolveLu failed"); + return b; +} + +// Return the similarity transform to align shape to to anchorshape. +// This returns the transformation matrix i.e. the pose. +// +// This is a similarity transform (translation, scaling, and rotation +// but no shearing). The transform matrix has the form +// +// a -b tx +// b a ty +// 0 0 1 +// +// See algorithm C.3 in Appendix C of CootesTaylor 2004 +// www.isbe.man.ac.uk/~bim/Mods/app_models.pdf. + +const MAT AlignmentMat( + const Shape& shape, // in + const Shape& anchorshape, // in + const double* weights) // in: if NULL (default) all points equally weighted +{ + double W = 0; + double sx = 0, sy = 0, sx1 = 0, sy1 = 0; + double sxx_syy = 0, sxx1_syy1 = 0, sxy1_syx1 = 0; + + for (int i = 0; i < shape.rows; i++) + { + const double x = shape(i, IX); + const double y = shape(i, IY); + const double x1 = anchorshape(i, IX); + const double y1 = anchorshape(i, IY); + if (PointUsed(x, y) && PointUsed(x1, y1)) + { + const double w = (weights? weights[i]: 1.); + W += w; + sx += w * x; + sy += w * y; + sx1 += w * x1; + sy1 += w * y1; + sxy1_syx1 += w * (x * y1 - y * x1); + sxx1_syy1 += w * (x * x1 + y * y1); + sxx_syy += w * (x * x + y * y); + } + } + MAT soln_data = (MAT(4,4) << sxx_syy, 0, sx, sy, + 0, sxx_syy, -sy, sx, + sx, -sy, W, 0, + sy, sx, 0, W ); + + VEC vec_data = (MAT(4,1) << sxx1_syy1, + sxy1_syx1, + sx1, + sy1 ); + + const VEC soln(LinSolveLu(soln_data, vec_data)); + + return (MAT(3, 3) << soln(0), -soln(1), soln(2), // a -b tx + soln(1), soln(0), soln(3), // b a ty + 0, 0, 1 ); // 0 0 1 +} + +Shape ShiftShape( // add xshift and yshift to shape coords, skipping unused points + const Shape& shape, // in + int xshift, // in + int yshift) // in +{ + Shape shiftedshape(shape.clone()); + for (int i = 0; i < shape.rows; i++) + if (PointUsed(shape, i)) + { + shiftedshape(i, IX) += xshift; + shiftedshape(i, IY) += yshift; + } + return shiftedshape; +} + +Shape ShiftShape( // like above but shifts are doubles not ints + const Shape& shape, // in + double xshift, // in + double yshift) // in +{ + Shape shiftedshape(shape.clone()); + for (int i = 0; i < shape.rows; i++) + if (PointUsed(shape, i)) + { + shiftedshape(i, IX) += xshift; + shiftedshape(i, IY) += yshift; + } + return shiftedshape; +} + +CvScalar ToCvColor(unsigned color) +{ + CvScalar cvcolor; + cvcolor.val[0] = (color & 0xff); + cvcolor.val[1] = ((color >> 8) & 0xff); + cvcolor.val[2] = ((color >> 16) & 0xff); + cvcolor.val[3] = 0; + return cvcolor; +} + +void DrawShape( // draw a shape on an image + CImage& img, // io + const Shape& shape, // in + unsigned color, // in: rrggbb, default is 0xff0000 (red) + bool dots, // in: true for dots only, default is false + int linewidth) // in: default -1 means automatic +{ + const double width = ShapeWidth(shape); + if (linewidth <= 0) + linewidth = width > 700? 3: width > 300? 2: 1; + CvScalar cvcolor(ToCvColor(color)); + int i = 0, j=0; + do // use do and not for loop because some points may be unused + { + while (i < shape.rows && !PointUsed(shape, i)) // skip unused points + i++; + if (i < shape.rows) + { + if (dots) + { + const int ix = cvRound(shape(i, IX)), iy = cvRound(shape(i, IY)); + if (ix >= 0 && ix < img.cols && iy >= 0 && iy < img.rows) + { + img(iy, ix)[0] = (color >> 0) & 0xff; + img(iy, ix)[1] = (color >> 8) & 0xff; + img(iy, ix)[2] = (color >> 16) & 0xff; + } + } + else // lines + { + j = i+1; + while (j < shape.rows && !PointUsed(shape, j)) + j++; + if (j < shape.rows) + cv::line(img, + cv::Point(cvRound(shape(i, IX)), cvRound(shape(i, IY))), + cv::Point(cvRound(shape(j, IX)), cvRound(shape(j, IY))), + cvcolor, linewidth); + } + } + i++; + } + while (i < shape.rows && j < shape.rows); +} + +void ImgPrintf( // printf on image + CImage& img, // io + double x, // in + double y, // in + unsigned color, // in: rrggbb e.g. 0xff0000 is red + double size, // in: relative font size, 1 is standard size + const char* format, // in + ...) // in +{ + char s[SBIG]; // format format into s + va_list args; + va_start(args, format); + VSPRINTF(s, format, args); + va_end(args); + + CV_Assert(size > 0); + double fontsize = size * MIN(img.cols, img.rows) / 1000.; + if (fontsize < .3) // smaller than about .3 is not legible + fontsize = .3; + + // make the letters thick enough to be seen on high pixel images, + // but not too thick to be illegible. The code below sorta works. + + int thickness = MAX(1, cvRound(img.rows > 1000? 2 * fontsize: fontsize)); + + putText(img, s, cv::Point(cvRound(x), cvRound(y)), + CV_FONT_HERSHEY_SIMPLEX, fontsize, ToCvColor(color), thickness); +} + +static byte RgbToGray( // CIE conversion to gray using integer arithmetic + const RGBV rgb) +{ + return byte((2990 * rgb[2] + 5870 * rgb[1] + 1140 * rgb[0] + 5000) / 10000); +} + +void DesaturateImg( // for apps and debugging, unneeded for ASM + CImage& img) // io: convert to gray (but still an RGB image) +{ + for (int i = 0; i < img.rows; i++) + { + RGBV* const rowbuf = img.ptr(i); + for (int j = 0; j < img.cols; j++) + { + byte * const p = (byte *)(rowbuf + j); + p[0] = p[1] = p[2] = RgbToGray(rowbuf[j]); + } + } +} + +void DarkenImg( // for apps and debugging, unneeded for ASM + CImage& img) // io: darken this image +{ + img /= 2; +} + +void ForceRectIntoImg( // force rectangle into image + int& ix, // io + int& iy, // io + int& ncols, // io + int& nrows, // io + const Image& img) // in +{ + ix = Clamp(ix, 0, img.cols-1); + + int ix1 = ix + ncols; + if (ix1 > img.cols) + ix1 = img.cols; + + ncols = ix1 - ix; + + CV_Assert(ix >= 0 && ix < img.cols); + CV_Assert(ix + ncols >= 0 && ix + ncols <= img.cols); + + iy = Clamp(iy, 0, img.rows-1); + + int iy1 = iy + nrows; + if (iy1 > img.rows) + iy1 = img.rows; + + nrows = iy1 - iy; + + CV_Assert(iy >= 0 && iy < img.rows); + CV_Assert(iy + nrows >= 0 && iy + nrows <= img.rows); +} + +void ForceRectIntoImg( // force rectangle into image + Rect& rect, // io + const Image& img) // in +{ + ForceRectIntoImg(rect.x, rect.y, rect.width, rect.height, img); +} + +Image FlipImg(const Image& img) // in: flip image horizontally (mirror image) +{ + Image workimg(img.isContinuous()? img: img.clone()); // need continuous image + const int width = workimg.cols; + const int height = workimg.rows; + Image outimg(height, width); + for (int iy = 0; iy < height; iy++) + { + int width1 = iy * width; + int ix1 = width; + for (int ix = 0; ix < width; ix++) + outimg.data[ix + width1] = workimg.data[--ix1 + width1]; + } + return outimg; +} + +void FlipImgInPlace(Image& img) // io: flip image horizontally (mirror image) +{ + img = FlipImg(img); +} + +void OpenDetector( // open face or feature detector from its XML file + cv::CascadeClassifier& cascade, // out + const char* filename, // in: basename.ext of cascade + const char* datadir) // in +{ + if (cascade.empty()) // not yet opened? + { + char dir[SLEN]; STRCPY(dir, datadir); + ConvertBackslashesToForwardAndStripFinalSlash(dir); + char path[SLEN]; sprintf(path, "%s/%s", dir, filename); + logprintf("Open %s\n", path); + if (!cascade.load(path)) + Err("Cannot load %s", path); + } +} + +// convert the x and y coords in feats from the search ROI to the image frame + +static void DiscountSearchRegion( + vec_Rect& feats, // io + Rect& searchrect) // in +{ + for (int ifeat = 0; ifeat < NSIZE(feats); ifeat++) + { + feats[ifeat].x += searchrect.x; + feats[ifeat].y += searchrect.y; + } +} + +vec_Rect Detect( // detect faces or facial features + const Image& img, // in + cv::CascadeClassifier& cascade, // in + const Rect* searchrect, // in: search in this region, can be NULL + double scale_factor, // in + int min_neighbors, // in + int flags, // in + int minwidth_pixels) // in: reduces false positives +{ + CV_Assert(!cascade.empty()); + + Rect searchrect1; searchrect1.width = 0; + if (searchrect) + { + searchrect1 = *searchrect; + ForceRectIntoImg(searchrect1, img); + if (searchrect1.height == 0) + searchrect1.width = 0; + } + Image roi(img, + searchrect1.width? searchrect1: Rect(0, 0, img.cols, img.rows)); + + // TODO If we don't allocate feats now we get a crash on mem release later. + + static const int MAX_NFACES_IN_IMG = int(1e4); // arb, but big + vec_Rect feats(MAX_NFACES_IN_IMG); + + // Note: This call to detectMultiScale causes the Peak Working Set + // to jump to 160 MBytes (multiface2.jpg) versus less than 50 MBytes + // for the rest of Stasm (Feb 2013). + + cascade.detectMultiScale(roi, feats, scale_factor, min_neighbors, flags, + cvSize(minwidth_pixels, minwidth_pixels)); + + if (!feats.empty() && searchrect1.width) + DiscountSearchRegion(feats, searchrect1); + + return feats; +} + +bool IsLeftFacing(EYAW eyaw) // true if eyaw is for a left facing face +{ + return int(eyaw) < int(EYAW00); +} + +int EyawAsModIndex( // note: returns a negative index for left facing yaws + EYAW eyaw, // in + const vec_Mod& mods) // in: a vector of models, one for each yaw range +{ + int imod = 0; + if (NSIZE(mods) > 1) + { + switch (eyaw) + { + case EYAW00: imod = 0; break; + case EYAW_45: imod = -2; break; + case EYAW_22: imod = -1; break; + case EYAW22: imod = 1; break; + case EYAW45: imod = 2; break; + default: Err("EyawAsModIndex: bad eyaw %d", eyaw); break; + } + } + CV_Assert(ABS(imod) < NSIZE(mods)); + return imod; +} + +EYAW DegreesAsEyaw( // this determines what model is best for a given yaw + double yaw, // in: yaw in degrees, negative if left facing + int nmods) // in +{ +#if MOD_3 || MOD_A || MOD_A_EMU // experimental versions + CV_Assert(nmods == 3); + if (yaw < -EYAW_TO_USE_DET45) + return EYAW_45; + + else if (yaw < -EYAW_TO_USE_DET22) + return EYAW_22; + + else if (yaw <= EYAW_TO_USE_DET22) + return EYAW00; + + else if (yaw <= EYAW_TO_USE_DET45) + return EYAW22; + + return EYAW45; +#endif + return EYAW00; +} + +const char* EyawAsString(EYAW eyaw) // utility for debugging/tracing +{ + switch (int(eyaw)) + { + case EYAW00: return "YAW00"; + case EYAW_45: return "YAW_45"; + case EYAW_22: return "YAW_22"; + case EYAW22: return "YAW22"; + case EYAW45: return "YAW45"; + case INVALID: return "YAW_Inv"; + default: Err("YawAsString: Invalid eyaw %d", eyaw); break; + } + return NULL; // prevent compiler warning +} + +#if TRACE_IMAGES +unsigned EyawAsColor(EYAW eyaw) +{ + unsigned color = C_YELLOW; + switch (eyaw) + { + case EYAW00: color = C_YELLOW; break; + case EYAW_22: color = C_RED; break; // red is left facing + case EYAW22: color = C_GREEN; break; // green is right facing + default: Err("EyawAsColor: Invalid eyaw %d", eyaw); + } + return color; +} +#endif + +DetPar FlipDetPar( // mirror image of detpar + const DetPar& detpar, // in + int imgwidth) // in +{ + DetPar detpar_new(detpar); + + detpar_new.x = imgwidth - detpar.x; + detpar_new.y = detpar.y; + detpar_new.width = detpar.width; + detpar_new.height = detpar.height; + const bool valid_leye = Valid(detpar.lex); + const bool valid_reye = Valid(detpar.rex); + + detpar_new.lex = detpar_new.ley = + detpar_new.rex = detpar_new.rey = + detpar_new.mouthx = detpar_new.mouthy = INVALID; + + if (valid_leye) + { + detpar_new.rex = imgwidth - detpar.lex; + detpar_new.rey = detpar.ley; + } + if (valid_reye) + { + detpar_new.lex = imgwidth - detpar.rex; + detpar_new.ley = detpar.rey; + } + if (Valid(detpar.mouthx)) + { + detpar_new.mouthx = imgwidth - detpar.mouthx; + detpar_new.mouthy = detpar.mouthy; + } + return detpar_new; +} + + +bool InRect( // is the center of rect within the enclosing rect? + const Rect& rect, // in + const Rect& enclosing) // in +{ + int x = rect.x + rect.width / 2; // center of rectangle + int y = rect.y + rect.height / 2; + + return x >= enclosing.x && + x <= enclosing.x + enclosing.width && + y >= enclosing.y && + y <= enclosing.y + enclosing.height; +} + +bool InRect( // is x,y within the enclosing rect? + double x, // in + double y, // in + double left, // in + double top, // in + double right, // in + double bot) // in +{ + return x >= left && + x <= right && + y >= top && + y <= bot; +} + +} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/stasm/src/pinstart.cpp b/3rdparty/stasm4.0.0/stasm/stasm/src/pinstart.cpp new file mode 100755 index 0000000..d5c5206 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/src/pinstart.cpp @@ -0,0 +1,298 @@ +// pinstart.cpp: utilities for creating a start shape from manually pinned points +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#include "pinstart.h" +#include "stasm_landmarks.h" +#include "faceroi.h" +#include "err.h" +#include "landmarks.h" +#include "print.h" +#include "shape17.h" + +namespace stasm +{ +// The following model was machine generated by running +// 5pointpose.R on the training shapes and their reflections. + +static double EstYawFrom5PointShape(const double* x) // x has 10 elements (5 points) +{ + return 34.342 + - 7.0267 * MAX(0, x[3] - -0.34708) + + 10.739 * MAX(0, -0.34708 - x[3]) + + 116.29 * MAX(0, x[4] - 0.21454) + - 159.56 * MAX(0, 0.21454 - x[4]) + + 12.513 * MAX(0, x[7] - 0.3384) + + 7.2764 * MAX(0, 0.3384 - x[7]) + + 260.14 * MAX(0, x[3] - -0.34708) * MAX(0, x[5] - -0.010838) + - 160.64 * MAX(0, x[3] - -0.34708) * MAX(0, -0.010838 - x[5]) + - 284.88 * MAX(0, -0.34708 - x[3]) * MAX(0, x[5] - -0.055581) + + 654.54 * MAX(0, -0.34708 - x[3]) * MAX(0, -0.055581 - x[5]) + ; +} + +static void RotShapeInPlace( + Shape& shape, // io + double rot, // in: in-plane rotation angle in degrees, pos is anticlock + double x, // in: rotation origin + double y) // in +{ + CV_Assert(rot >= -360 && rot <= 360); // sanity check, 360 is arb + + const MAT rotmat = + getRotationMatrix2D(cv::Point2f(float(x), float(y)), rot, 1.); + + TransformShapeInPlace(shape, rotmat); +} + +// If shape5 does not have 5 points, return rot and yaw of 0. +// Else assume that the following five points are present, in this order: +// 0 LEyeOuter +// 1 REyeOuter +// 2 CNoseTip +// 3 LMouthCorner +// 4 RMouthCorner + +static void EstRotAndYawFrom5PointShape( + double& rot, // out + double& yaw, // out + const Shape shape5) // in +{ + CV_Assert(shape5.rows == 5); + + Shape workshape(shape5.clone()); // local copy we can modify + + // Derotate shape5 using eye angle as estimate of in-plane rotation. + // We rotate about the shape5 centroid. + // TODO EstYawFrom5PointShape was trained on shapes without this + // derotation, so must retrain the model for best results. + + rot = RadsToDegrees(-atan2(workshape(1, IY) - workshape(0, IY), + workshape(1, IX) - workshape(0, IX))); + + PossiblySetRotToZero(rot); // treat small Rots as zero Rots + + if (rot) + RotShapeInPlace(workshape, + -rot, + SumElems(workshape.col(IX)) / 5, + SumElems(workshape.col(IY)) / 5); + + // mean-center x and y + MAT X(workshape.col(IX)); X -= SumElems(X) / 5; + MAT Y(workshape.col(IY)); Y -= SumElems(Y) / 5; + + // normalize so workshape size is 1 + double norm = 0; + for (int i = 0; i < 5; i++) + norm += SQ(X(i)) + SQ(Y(i)); + workshape /= sqrt(norm); + + yaw = EstYawFrom5PointShape(Buf(workshape)); +} + +static Shape PinMeanShape( // align mean shape to the pinned points + const Shape& pinned, // in: at least two of these points must be set + const Shape& meanshape) // in +{ + CV_Assert(pinned.rows == meanshape.rows); + + int ipoint, nused = 0; // number of points used in pinned + for (ipoint = 0; ipoint < meanshape.rows; ipoint++) + if (PointUsed(pinned, ipoint)) + nused++; + + if (nused < 2) + Err("Need at least two pinned landmarks"); + + // Create an anchor shape (the pinned landmarks) and an alignment shape (the + // points in meanshape that correspond to those pinned landmarks). Do that by + // copying the used points in pinned to pinned_used, and the corresponding + // points in meanshape to meanused. + + Shape pinned_used(nused, 2), mean_used(nused, 2); + int i = 0; + for (ipoint = 0; ipoint < meanshape.rows; ipoint++) + if (PointUsed(pinned, ipoint)) + { + pinned_used(i, IX) = pinned(ipoint, IX); + pinned_used(i, IY) = pinned(ipoint, IY); + mean_used(i, IX) = meanshape(ipoint, IX); + mean_used(i, IY) = meanshape(ipoint, IY); + i++; + } + CV_Assert(i == nused); + + // transform meanshape to pose generated by aligning mean_used to pinned_used + Shape TransformedShape( + TransformShape(meanshape, AlignmentMat(mean_used, pinned_used))); + + return JitterPointsAt00(TransformedShape); +} + +static bool HaveCanonical5Points( + const Shape& pinned17) // in: pinned landmarks +{ + CV_Assert(pinned17.rows == 17); + return PointUsed(pinned17, L17_LEyeOuter) && + PointUsed(pinned17, L17_REyeOuter) && + PointUsed(pinned17, L17_CNoseTip) && + PointUsed(pinned17, L17_LMouthCorner) && + PointUsed(pinned17, L17_RMouthCorner); +} + +static void CopyPoint( // copy a point from oldshape to shape + Shape& shape, // io + const Shape& oldshape, // in + int i, // in + int iold) // in +{ + shape(i, IX) = oldshape(iold, IX); + shape(i, IY) = oldshape(iold, IY); +} + +static Shape Shape5( // return a 5 point shape + const Shape& pinned, // in: pinned landmarks, canonical 5 points are best + const Shape& meanshape) // in: used only if pinned landmarks are not canonical +{ + const Shape pinned17(Shape17(pinned)); + const Shape meanshape17(Shape17(meanshape)); + Shape newpinned17(pinned17); + if (!HaveCanonical5Points(pinned17)) + { + // Not canonical 5 point pinned landmarks. Impute the missing points. + // This is not an optimal situation but will at least allow estimation + // of the pose from an arb set of pinned landmarks. + // TODO Only the Shape17 points are considered. + + newpinned17 = PinMeanShape(pinned17, meanshape17); + } + Shape shape5(5, 2); // 5 point shape + + CopyPoint(shape5, newpinned17, 0, L17_LEyeOuter); + CopyPoint(shape5, newpinned17, 1, L17_REyeOuter); + CopyPoint(shape5, newpinned17, 2, L17_CNoseTip); + CopyPoint(shape5, newpinned17, 3, L17_LMouthCorner); + CopyPoint(shape5, newpinned17, 4, L17_RMouthCorner); + + return shape5; +} + +static void InitDetParEyeMouthFromShape( // fill in eye and mouth fields of detpar + DetPar& detpar, + Shape& shape) +{ + const Shape shape17(Shape17(shape)); + if (PointUsed(shape17, L17_LPupil)) + { + detpar.lex = shape17(L17_LPupil, IX); + detpar.ley = shape17(L17_LPupil, IY); + } + if (PointUsed(shape17, L17_RPupil)) + { + detpar.rex = shape17(L17_RPupil, IX); + detpar.rey = shape17(L17_RPupil, IY); + } + if (PointUsed(shape17, L17_CBotOfBotLip)) + { + detpar.mouthx = shape17(L17_CBotOfBotLip, IX); + detpar.mouthy = shape17(L17_CBotOfBotLip, IY); + } +} + +// We generated the startshape without using the face detector, now "back +// generate" the detpar (the position of this does not have to exactly +// match the detpar that would generate the startshape). This approach +// allows detpar to be handled uniformly in PinnedStartShapeAndRoi. + +static DetPar PseudoDetParFromStartShape( + const Shape& startshape, + double rot, + double yaw, + int nmods) +{ + const Shape shape17(Shape17(startshape)); + const double lex = shape17(L17_LPupil, IX); // left eye + const double ley = shape17(L17_LPupil, IY); + const double rex = shape17(L17_RPupil, IX); // right eye + const double rey = shape17(L17_RPupil, IY); + const double mouthx = shape17(L17_CBotOfBotLip, IX); // mouth + const double mouthy = shape17(L17_CBotOfBotLip, IY); + + CV_Assert(PointUsed(lex, ley)); + CV_Assert(PointUsed(rex, rey)); + CV_Assert(PointUsed(mouthx, mouthy)); + + const double xeye = (lex + rex) / 2; // midpoint of eyes + const double yeye = (ley + rey) / 2; + const double eyemouth = PointDist(xeye, yeye, mouthx, mouthy); + + DetPar detpar; + + detpar.x = .7 * xeye + .3 * mouthx; + detpar.y = .7 * yeye + .3 * mouthy; + detpar.width = 2.0 * eyemouth; + detpar.height = 2.0 * eyemouth; + detpar.lex = lex; + detpar.ley = ley; + detpar.rex = rex; + detpar.rey = rey; + detpar.mouthx = mouthx; + detpar.mouthy = mouthy; + detpar.rot = rot; + detpar.eyaw = DegreesAsEyaw(yaw, nmods); // determines what ASM model to use + detpar.yaw = yaw; + + return detpar; +} + +// Use the given pinned face landmarks to init the start shape. The +// current implementation works best if the pinned landmarks are the five +// canonical pinned landmarks (viz. LEyeOuter, REyeOuter, CNoseTip, +// LMouthCorner, RMouthCorner). This is because it was trained on those +// points. But the routine also works if any two or more points are pinned. + +void PinnedStartShapeAndRoi( // use the pinned landmarks to init the start shape + Shape& startshape, // out: the start shape (in ROI frame) + Image& face_roi, // out: ROI around face, possibly rotated upright + DetPar& detpar_roi, // out: detpar wrt to face_roi + DetPar& detpar, // out: detpar wrt to img + Shape& pinned_roi, // out: pinned arg translated to ROI frame + const Image& img, // in: the image (grayscale) + const vec_Mod& mods, // in: a vector of models, one for each yaw range + const Shape& pinned) // in: manually pinned landmarks +{ + double rot, yaw; + EstRotAndYawFrom5PointShape(rot, yaw, + Shape5(pinned, mods[0]->MeanShape_())); + const EYAW eyaw = DegreesAsEyaw(yaw, NSIZE(mods)); + const int imod = EyawAsModIndex(eyaw, mods); // select ASM model based on yaw + if (trace_g) + lprintf("%-6.6s yaw %3.0f rot %3.0f ", EyawAsString(eyaw), yaw, rot); + pinned_roi = pinned; // use pinned_roi as a temp shape we can change + Image workimg(img); // possibly flipped image + if (IsLeftFacing(eyaw)) // left facing? (our models are for right facing faces) + { + pinned_roi = FlipShape(pinned_roi, workimg.cols); + FlipImgInPlace(workimg); + } + const Mod* mod = mods[ABS(imod)]; + startshape = PinMeanShape(pinned_roi, mod->MeanShape_()); + startshape = mod->ConformShapeToMod_Pinned_(startshape, pinned_roi); + detpar = PseudoDetParFromStartShape(startshape, rot, yaw, NSIZE(mods)); + if (IsLeftFacing(eyaw)) + detpar.rot *= -1; + FaceRoiAndDetPar(face_roi, detpar_roi, workimg, detpar, false); + startshape = ImgShapeToRoiFrame(startshape, detpar_roi, detpar); + pinned_roi = ImgShapeToRoiFrame(pinned_roi, detpar_roi, detpar); + // following line not strictly necessary because don't actually need eyes/mouth + InitDetParEyeMouthFromShape(detpar_roi, startshape); + if (IsLeftFacing(eyaw)) + { + detpar = FlipDetPar(detpar, img.cols); + detpar.rot = -detpar.rot; + detpar_roi.x += 2. * (face_roi.cols/2. - detpar_roi.x); + } +} + +} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/stasm/src/print.cpp b/3rdparty/stasm4.0.0/stasm/stasm/src/print.cpp new file mode 100755 index 0000000..bfa3db7 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/src/print.cpp @@ -0,0 +1,144 @@ +// print.cpp: printing and logging utilities for the Stasm library +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#include "print.h" +#include "err.h" +#include "misc.h" + +#include + +namespace stasm +{ +bool print_g; // true to allow output to stdout (but error msgs always printed) + +bool trace_g; // true to trace Stasm internal operation + +static FILE* logfile_g; // lprintfs go to this log file as well as stdout + +//----------------------------------------------------------------------------- + +// Open the log file. After this, when you call lprintf, you print to the log +// file (as well as to stdout). This inits the global variable logfile_g. + +void OpenLogFile( // also inits the global variable logfile_g + const char* path) // in: log file path, default is "stasm.log" +{ + if (!logfile_g) + { + if (print_g) + printf("Generating %s\n", path); + logfile_g = fopen(path, "wb"); + if (!logfile_g) + Err("Cannot open \"%s\"", path); + // check that we can write to the log file + if (fputs("log file\n", logfile_g) < 0) + Err("Cannot write to \"%s\"", path); + rewind(logfile_g); // rewind so above test msg is not in the log file + } +} + +// Like printf but only prints if print_g flag is set. +// Also prints to the log file if it is open (regardless of print_g). + +void lprintf(const char* format, ...) // args like printf +{ + char s[SBIG]; + va_list args; + va_start(args, format); + VSPRINTF(s, format, args); + va_end(args); + if (print_g) + { + printf("%s", s); + fflush(stdout); // flush so if there is a crash we can see what happened + } + if (logfile_g) + { + // we don't check fputs here, to prevent recursive calls and msgs + fputs(s, logfile_g); + fflush(logfile_g); + } +} + +// Like printf but prints to the log file only (and not to stdout). +// Used for detailed stuff that we don't usually want to see. + +void logprintf(const char* format, ...) // args like printf +{ + if (logfile_g) + { + char s[SBIG]; + va_list args; + va_start(args, format); + VSPRINTF(s, format, args); + va_end(args); + // we don't check fputs here, to prevent recursive calls and msgs + fputs(s, logfile_g); + fflush(logfile_g); + } +} + +// Like lprintf but always prints even if print_g is false. + +void lprintf_always(const char* format, ...) +{ + char s[SBIG]; + va_list args; + va_start(args, format); + VSPRINTF(s, format, args); + va_end(args); + printf("%s", s); + fflush(stdout); // flush so if there is a crash we can see what happened + if (logfile_g) + { + // we don't check fputs here, to prevent recursive calls and msgs + fputs(s, logfile_g); + fflush(logfile_g); + } +} + +// Like puts but prints to the log file as well if it is open, +// and does not append a newline. + +void lputs(const char* s) +{ + printf("%s", s); + fflush(stdout); // flush so if there is a crash we can see what happened + logprintf("%s", s); +} + +// Print message only once on the screen, and only 100 times to the log file. +// This is used when similar messages could be printed many times and it +// suffices to let the user know just once. By convention the message is +// printed followed by "..." so the user knows that just the first message +// was printed. The user can look in the log file for further messages if +// necessary (but we print only 100 times to the log file --- else all the +// log prints make tasm slow). + +void PrintOnce( + int& printed, // io: zero=print, nonzero=no print + const char* format, ...) // in: args like printf +{ + char s[SBIG]; + va_list args; + va_start(args, format); + VSPRINTF(s, format, args); + va_end(args); + if (printed == 0 && print_g) + { + printed = 1; + printf("%s", s); + fflush(stdout); // flush so if there is a crash we can see what happened + } + if (printed < 100 && logfile_g) + { + fputs(s, logfile_g); + fflush(logfile_g); + printed++; + if (printed == 100) + logprintf("no more prints of the above message (printed == 100)\n"); + } +} + +} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/stasm/src/shape17.cpp b/3rdparty/stasm4.0.0/stasm/stasm/src/shape17.cpp new file mode 100755 index 0000000..48e60a2 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/src/shape17.cpp @@ -0,0 +1,329 @@ +// shape17.cp: convert a shape to a 17 point shape +// +// We can conveniently work with shapes with differing numbers of points +// (e.g. XM2VTS, BioID) by first converting them to a "Shape17" shape. +// That is, we use Shape17s as a lowest common denominator. A Shape17 +// consists of the 17 points defined by Cristinacce's "me17" measure. + +#include "shape17.h" +#include "err.h" +#include "eyedist.h" +#include "print.h" + +namespace stasm +{ +static const double REF17[] = // mean frontal shape (data from mean MUCT shape) +{ + -44.2, 43.4, // 0 L17_LPupil + 39.0, 48.1, // 1 L17_RPupil + -32.7, -41.6, // 2 L17_LMouthCorner + 37.2, -37.7, // 3 L17_RMouthCorner + -74.6, 57.6, // 4 L17_LEyebrowOuter + -22.0, 63.3, // 5 L17_LEyebrowInner + 14.8, 65.3, // 6 L17_REyebrowInner + 67.6, 65.6, // 7 L17_REyebrowOuter + -59.2, 40.4, // 8 L17_LEyeOuter + -28.4, 42.0, // 9 L17_LEyeInner + 23.6, 44.9, // 10 L17_REyeInner + 54.3, 46.8, // 11 L17_REyeOuter + -0.2, 5.2, // 12 L17_CNoseTip + -13.8, -4.3, // 13 L17_LNostril + 14.4, -2.7, // 14 L17_RNostril + 1.6, -27.7, // 15 L17_CTopOTopLip + 3.3, -56.3 // 16 L17_CBotOfBotLip +}; + +const Shape MEANSHAPE17(17, 2, const_cast(REF17)); + +//----------------------------------------------------------------------------- + +static const int* Shape17Tab( // get appropriate tab to convert to a 17 point shape + const Shape& shape) // in +{ + static const int shape17_tab[17] = // identity transform + { + 0, // 0 L17_LPupil + 1, // 1 L17_RPupil + 2, // 2 L17_LMouthCorner + 3, // 3 L17_RMouthCorner + 4, // 4 L17_LEyebrowOuter + 5, // 5 L17_LEyebrowInner + 6, // 6 L17_REyebrowInner + 7, // 7 L17_REyebrowOuter + 8, // 8 L17_LEyeOuter + 9, // 9 L17_LEyeInner + 10, // 10 L17_REyeInner + 11, // 11 L17_REyeOuter + 12, // 12 L17_CNoseTip + 13, // 13 L17_LNostril + 14, // 14 L17_RNostril + 15, // 15 L17_CTopOfTopLip + 16 // 16 L17_CBotOfBotLip + }; + static const int bioid_tab[17] = // 20 points + { + 0, // 0 L17_LPupil + 1, // 1 L17_RPupil + 2, // 2 L17_LMouthCorner + 3, // 3 L17_RMouthCorner + 4, // 4 L17_LEyebrowOuter + 5, // 5 L17_LEyebrowInner + 6, // 6 L17_REyebrowInner + 7, // 7 L17_REyebrowOuter + 9, // 8 L17_LEyeOuter + 10, // 9 L17_LEyeInner + 11, // 10 L17_REyeInner + 12, // 11 L17_REyeOuter + 14, // 12 L17_CNoseTip + 15, // 13 L17_LNostril + 16, // 14 L17_RNostril + 17, // 15 L17_CTopOfTopLip + 18 // 16 L17_CBotOfBotLip + }; + static const int aflw_tab[17] = // 21 points (AFLW) + { + 7, // 0 L17_LPupil + 10, // 1 L17_RPupil + 17, // 2 L17_LMouthCorner + 19, // 3 L17_RMouthCorner + 0, // 4 L17_LEyebrowOuter + 2, // 5 L17_LEyebrowInner + 3, // 6 L17_REyebrowInner + 5, // 7 L17_REyebrowOuter + 6, // 8 L17_LEyeOuter + 8, // 9 L17_LEyeInner + 9, // 10 L17_REyeInner + 11, // 11 L17_REyeOuter + 14, // 12 L17_CNoseTip + 13, // 13 L17_LNostril not right + 15, // 14 L17_RNostril not right + 18, // 15 L17_CTopOfTopLip not right + 18 // 16 L17_CBotOfBotLip not right + }; + static const int muct_tab[17] = // 68 (XM2VTS) or 76 (MUCT76) points + { // NOTE: not the multi pie 68 points + 31, // 0 L17_LPupil + 36, // 1 L17_RPupil + 48, // 2 L17_LMouthCorner + 54, // 3 L17_RMouthCorner + 21, // 4 L17_LEyebrowOuter + 24, // 5 L17_LEyebrowInner + 18, // 6 L17_REyebrowInner + 15, // 7 L17_REyebrowOuter + 27, // 8 L17_LEyeOuter + 29, // 9 L17_LEyeInner + 34, // 10 L17_REyeInner + 32, // 11 L17_REyeOuter + 67, // 12 L17_CNoseTip + 46, // 13 L17_LNostril + 47, // 14 L17_RNostril + 51, // 15 L17_CTopOfTopLip + 57 // 16 L17_CBotOfBotLip + }; + static const int stasm77_tab[17] = // Stasm 77 points + { + 38, // 0 LPupil + 39, // 1 RPupil + 59, // 2 LMouthCorner + 65, // 3 RMouthCorner + 18, // 4 LEyebrowOuter + 21, // 5 LEyebrowInner + 22, // 6 REyebrowInner + 25, // 7 REyebrowOuter + 34, // 8 LEyeOuter + 30, // 9 LEyeInner + 40, // 10 REyeInner + 44, // 11 REyeOuter + 52, // 12 CNoseTip + 51, // 13 LNostril + 53, // 14 RNostril + 62, // 15 CTopOfTopLip + 74 // 16 CBotOfBotLip + }; + static const int helen_tab[17] = // 194 points (Helen) + { + 144, // 0 LPupil actually eye outer corner, will correct in TweakHelen + 124, // 1 RPupil actually eye outer corner, will correct in TweakHelen + 58, // 2 LMouthCorner + 71, // 3 RMouthCorner + 185, // 4 LEyebrowOuter + 174, // 5 LEyebrowInner + 154, // 6 REyebrowInner + 164, // 7 REyebrowOuter + 144, // 8 LEyeOuter + 134, // 9 LEyeInner + 114, // 10 REyeInner + 124, // 11 REyeOuter + 49, // 12 CNoseTip actually base of nose, will correct in TweakHelen + 47, // 13 LNostril actually base of nostril, will correct in TweakHelen + 51, // 14 RNostril actually base of nostril, will correct in TweakHelen + 64, // 15 CTopOfTopLip + 79 // 16 CBotOfBotLip + }; + static const int put199_tab[17] = // 199 points (extended PUT) + { + 195, // 0 LPupil + 194, // 1 RPupil + 58, // 2 LMouthCorner + 72, // 3 RMouthCorner + 184, // 4 LEyebrowOuter + 174, // 5 LEyebrowInner + 154, // 6 REyebrowInner + 164, // 7 REyebrowOuter + 144, // 8 LEyeOuter + 134, // 9 LEyeInner + 114, // 10 REyeInner + 124, // 11 REyeOuter + 196, // 12 CNoseTip + 197, // 13 LNostril + 198, // 14 RNostril + 65, // 15 CTopOfTopLip + 79 // 16 CBotOfBotLip + }; + const int *tab = NULL; + switch (shape.rows) + { + case 17: tab = shape17_tab; break; // identity transform + case 20: tab = bioid_tab; break; // BioID + case 21: tab = aflw_tab; break; // AFLW + case 22: tab = bioid_tab; break; // AR + case 68: tab = muct_tab; break; // XM2VTS and MUCT68 + case 76: tab = muct_tab; break; // Stasm version 3 (Stasm76 shape) + case 77: tab = stasm77_tab; break; // Stasm version 4 (Stasm77 shape) + case 194: tab = helen_tab; break; // Helen + case 199: tab = put199_tab; break; // PUT with me17 points + default: tab = NULL; break; + } + return tab; +} + +static void TweakAflw( // hacks to more closely approximate a me17 shape from an AFLW shape + Shape& shape17) // io +{ + const double eyemouth = EyeMouthDist(shape17); + // upper and lower lip not available + if (PointUsed(shape17, L17_CTopOfTopLip)) + shape17(L17_CTopOfTopLip, IY) -= .07 * eyemouth; + if (PointUsed(shape17, L17_CBotOfBotLip)) + shape17(L17_CBotOfBotLip, IY) += .07 * eyemouth; + // nostrils not available + if (PointUsed(shape17, L17_LNostril)) + shape17(L17_LNostril, IX) += .1 * eyemouth; + if (PointUsed(shape17, L17_RNostril)) + shape17(L17_RNostril, IX) -= .1 * eyemouth; +} + +static void TweakHelen( // hacks to more closely approximate a me17 shape from a Helen shape + Shape& shape17) // io +{ + // pupils not available in the helen set so use mean of eye corners + if (PointUsed(shape17, L17_LEyeOuter) && PointUsed(shape17, L17_LEyeInner)) + { + shape17(L17_LPupil, IX) = (shape17(L17_LEyeOuter, IX) + + shape17(L17_LEyeInner, IX)) / 2; + + shape17(L17_LPupil, IY) = (shape17(L17_LEyeOuter, IY) + + shape17(L17_LEyeInner, IY)) / 2; + } + if (PointUsed(shape17, L17_REyeOuter) && PointUsed(shape17, L17_REyeInner)) + { + shape17(L17_RPupil, IX) = (shape17(L17_REyeOuter, IX) + + shape17(L17_REyeInner, IX)) / 2; + + shape17(L17_RPupil, IY) = (shape17(L17_REyeOuter, IY) + + shape17(L17_REyeInner, IY)) / 2; + } + // nose tip and nostrils not available, fake it by shifting available points up + if (PointUsed(shape17, L17_LPupil) && PointUsed(shape17, L17_RPupil)) + { + const double shift = .1 * PointDist(shape17, L17_LPupil, L17_RPupil); + if (PointUsed(shape17, L17_CNoseTip)) + shape17(L17_CNoseTip, IY) -= 2 * shift; + if (PointUsed(shape17, L17_LNostril)) + shape17(L17_LNostril, IY) -= shift; + if (PointUsed(shape17, L17_RNostril)) + shape17(L17_RNostril, IY) -= shift; + } +} + +Shape Shape17OrEmpty( // like Shape17 but return zero point shape if can't convert + const Shape& shape) // in +{ + const int* const tab = Shape17Tab(shape); + if (!tab) + { + static int printed; + PrintOnce(printed, + "\nDo not know how to convert a %d point shape to a 17 point face...\n", + shape.rows); + return Shape(0, 2); // note return + } + Shape shape17(17, 2); + for (int i = 0; i < 17; i++) + { + int iold = tab[i]; + CV_Assert(iold >= 0 && iold < NSIZE(shape)); + shape17(i, IX) = shape(iold, IX); + shape17(i, IY) = shape(iold, IY); + } + if (shape.rows == 21) // 21 point AFLW set? + TweakAflw(shape17); + else if (shape.rows == 194) // 194 point Helen set? + TweakHelen(shape17); + + return shape17; +} + +Shape Shape17( // convert an arb face shape to a 17 point shape, err if can't + const Shape& shape) // in +{ + Shape shape17(Shape17OrEmpty(shape)); + if (shape17.rows == 0) + Err("Cannot convert %d point shape to 17 points", shape.rows); + return shape17; +} + +static void CheckX( // check that the point "left" is leftwards of the point "right" + const Shape& shape, // in + int left, // in + int right) // in +{ + if (PointUsed(shape, left) && + PointUsed(shape, right) && + shape(right, IX) < shape(left, IX)) + { + Err("shape17 point %d is to the left of point %d", right, left); + } +} + +static void CheckY( // check that the point "bot" is below the point "top" + const Shape& shape, // in + int top, // in + int bot) // in +{ + if (PointUsed(shape, top) && + PointUsed(shape, bot) && + shape(bot, IY) < shape(top, IY)) + { + Err("shape17 point %d is below point %d", top, bot); + } +} + +void SanityCheckShape17( // check that left pupil is to the left of the right pupil, etc + const Shape& shape17) // in +{ + CV_Assert(shape17.rows == 17); + CheckX(shape17, L17_LPupil, L17_RPupil); + CheckX(shape17, L17_LMouthCorner, L17_RMouthCorner); + CheckX(shape17, L17_LEyebrowOuter, L17_LEyebrowInner); + CheckX(shape17, L17_REyebrowInner, L17_REyebrowOuter); + CheckX(shape17, L17_LEyebrowOuter, L17_REyebrowOuter); + CheckX(shape17, L17_LEyeOuter, L17_LEyeInner); + CheckX(shape17, L17_REyeInner, L17_REyeOuter); + CheckY(shape17, L17_LPupil, L17_LMouthCorner); + CheckY(shape17, L17_RPupil, L17_RMouthCorner); + CheckY(shape17, L17_LPupil, L17_CNoseTip); + CheckY(shape17, L17_CTopOfTopLip, L17_CBotOfBotLip); +} + +} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/stasm/src/shapehacks.cpp b/3rdparty/stasm4.0.0/stasm/stasm/src/shapehacks.cpp new file mode 100755 index 0000000..6dfcd90 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/src/shapehacks.cpp @@ -0,0 +1,130 @@ +// shapehacks.cpp: +// +// The shape model sometimes allows implausible point layouts. For +// example, the mouth on the nose, or the chin inside the mouth. The +// functions in this module fix the most egregious cases. These hacks +// don't necessarily make the overall fitness measure (FM29) better, +// but minimize the occurrence of ridiculous shapes, although also +// occasionally worsen a good shape. +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#include "shapehacks.h" +#include "print.h" +#include "stasm_lib.h" +#include "eyedist.h" +#include "stasm_landmarks.h" + +namespace stasm +{ +static const double SHIFT_MOUTH_FROM_NOSE_FRAC = 0.06; // .06 from tuning on D1 set + +static const double CHIN_DOWN_RATIO = 0.5; // chin must be this far from mouth +static const double CHIN_DOWN_SHIFT = 0.2; + +static const double CHIN_UP_RATIO = 2.4; // chin cannot be further than this from mouth +static const double CHIN_UP_SHIFT = 0.1; + +static const double TEMPLE_RATIO = .1; // temple must be this far from eye, 0 disables +static const double TEMPLE_SHIFT = 3; + +//----------------------------------------------------------------------------- + +static void PossiblyPrint(const char* s) // debugging print +{ + if (trace_g) + lprintf("%s ", s); +} + +void ApplyShapeModelHacks( // adjust shape by applying various hacks + Shape& shape, // io: position of features possibly adjusted + unsigned hackbits) // in: which hacks to apply, see SHAPEHACKS defs +{ + if (shape.rows != 77) // the shape hacks assume stasm77 points + return; // NOTE return + + const double eyemouth = EyeMouthDist(shape); + + if (hackbits & SHAPEHACKS_DEFAULT) + { + // Possibly shift the entire mouth down, if it is too close to the nose. + // Useful when the descriptor matchers think the nostrils are the mouth. + + const double nosemouth_gap = + shape(L_CTopOfTopLip, IY) - shape(L_CNoseBase, IY); + if (nosemouth_gap < .1 * eyemouth) + { + PossiblyPrint("ShiftMouthDown"); + for (int i = L_LMouthCorner; i <= L_LMouth76; i++) + shape(i, IY) += SHIFT_MOUTH_FROM_NOSE_FRAC * eyemouth; + } + // Shift the bottom of mouth down if it is above the top of mouth. + + const double gap = shape(L_CTopOfBotLip, IY) - shape(L_CTopOfTopLip, IY); + if (gap < 0) + { + PossiblyPrint("ShiftBottomOfMouthDown"); + for (int i = L_RMouthCorner; i <= L_LMouth76; i++) + shape(i, IY) -= gap; + } + // Possibly shift the chin down or up, if it too close to the mouth. + // Useful when the chin is on the mouth. + + const double y_mouth_center = + (shape(L_CTopOfTopLip, IY) + shape(L_CBotOfBotLip, IY)) / 2; + const double nosemouth_gap1 = + MAX(0, y_mouth_center - shape(L_CNoseBase, IY)); + const double mouthchin_gap = + shape(L_CTipOfChin, IY) - y_mouth_center; + if (mouthchin_gap < CHIN_DOWN_RATIO * nosemouth_gap1) + { + PossiblyPrint("ShiftChinDown"); + double yadjust = CHIN_DOWN_SHIFT * eyemouth; + shape(L_LJaw04, IY) += yadjust; + shape(L_LJaw05, IY) += yadjust; + shape(L_CTipOfChin, IY) += yadjust; + shape(L_RJaw07, IY) += yadjust; + shape(L_RJaw08, IY) += yadjust; + } + if (mouthchin_gap > CHIN_UP_RATIO * nosemouth_gap1) + { + PossiblyPrint("ShiftChinUp"); + double yadjust = CHIN_UP_SHIFT * eyemouth; + shape(L_LJaw04, IY) -= yadjust; + shape(L_LJaw05, IY) -= yadjust; + shape(L_CTipOfChin, IY) -= yadjust; + shape(L_RJaw07, IY) -= yadjust; + shape(L_RJaw08, IY) -= yadjust; + } + } + // Possibly shift the side of face away from eye. + // Useful when the side of face is on the eye. + + if (hackbits & SHAPEHACKS_SHIFT_TEMPLE_OUT) + { + if (shape(L_LTemple, IX) > + shape(L_LEyeOuter, IX) - TEMPLE_RATIO * eyemouth) + { + PossiblyPrint("LTempleOut"); + double xadjust = + TEMPLE_SHIFT * ABS(shape(L_LEyeOuter, IX) - shape(L_LTemple, IX)); + shape(L_LTemple, IX) -= xadjust; + shape(L_LJaw01, IX) -= xadjust; + shape(L_LJawNoseline, IX) -= xadjust; + shape(L_LJawMouthline, IX) -= .5 * xadjust; + } + if (shape(L_RTemple, IX) < + shape(L_REyeOuter, IX) + TEMPLE_RATIO * eyemouth) + { + PossiblyPrint("RTempleOut"); + double xadjust = + TEMPLE_SHIFT * ABS(shape(L_REyeOuter, IX) - shape(L_RTemple, IX)); + shape(L_RTemple, IX) += xadjust; + shape(L_RJaw11, IX) += xadjust; + shape(L_RJawNoseline, IX) += xadjust; + shape(L_RJawMouthline, IX) += .5 * xadjust; + } + } +} + +} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/stasm/src/shapemod.cpp b/3rdparty/stasm4.0.0/stasm/stasm/src/shapemod.cpp new file mode 100755 index 0000000..0cde0ea --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/src/shapemod.cpp @@ -0,0 +1,143 @@ +// shapemod.cpp: the ASM shape model +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#include "shapemod.h" +#include "landmarks.h" +#include "asm.h" +#include "print.h" + +namespace stasm +{ +static const int SHAPEHACK_MINPYRLEV = 2; // allow hacks only at coarse pyr levs + +// Limit the values of b to make sure the generated shape is plausible. +// That is, clip each b[i] to bmax * sqrt(lambda_i). +// "b" is the name used for the eigenvector weights in Cootes' papers. + +static void LimitB( + VEC& b, // io: eigvec weights + const VEC& eigvals, // in + double bmax) // in +{ + for (int i = 0; i < NSIZE(eigvals); i++) + { + const double limit = bmax * sqrt(eigvals(i)); + b(i) = Clamp(b(i), -limit, limit); + } +} + +// This implements Section 4.8 of CootesTaylor 2004 +// www.isbe.man.ac.uk/~bim/Mods/app_models.pdf. +// Except that we don't implement tangent spaces. And we don't iterate the +// shape model until convergence. Instead we use the b from the previous +// iteration of the ASM, which gives as good landmark fit results, empirically. + +Shape ConformShapeToMod( // Return a copy of inshape conformed to the model + VEC& b, // io: eigvec weights, 2n x 1 + const Shape& inshape, // in: the current position of the landmarks + const Shape& meanshape, // in: n x 2 + const VEC& eigvals, // in: neigs x 1 + const MAT& eigvecs, // in: 2n x neigs + const MAT& eigvecsi, // in: neigs x 2n, inverse of eigvecs + const double bmax, // in: for LimitB + const VEC& pointweights) // in: contribution of each point to the pose +{ + Shape shape(inshape.clone()); + + // estimate the pose which transforms the shape into the model space + // (use the b from previous iterations of the ASM) + + MAT modelshape(AsColVec(meanshape) + eigvecs * b); + modelshape = DimKeep(modelshape, shape.rows, 2); // redim back to 2 columns + const MAT pose(AlignmentMat(modelshape, shape, Buf(pointweights))); + + // transform the shape into the model space + + modelshape = TransformShape(shape, pose.inv(cv::DECOMP_LU)); + + // update shape model params b to match modelshape, then limit b + + b = eigvecsi * AsColVec(modelshape - meanshape); + LimitB(b, eigvals, bmax); + + // generate conformedshape from the model using the limited b + // (we generate as a column vec, then redim back to 2 columns) + + const Shape conformedshape(DimKeep(eigvecs * b, shape.rows, 2)); + + // back to image space + + return JitterPointsAt00(TransformShape(meanshape + conformedshape, pose)); +} + +VEC PointWeights(void) // return point weights from LANDMARK_INFO_TAB +{ + // default to all points have a weight of 1 + VEC pointweights(MAX(stasm_NLANDMARKS, NELEMS(LANDMARK_INFO_TAB)), 1, 1.); + + if (stasm_NLANDMARKS != NELEMS(LANDMARK_INFO_TAB)) + { + // It's safest to fix this problem and rebuild stasm and tasm. But this is + // a lprintf_always instead of Err to allow tasm to run, to avoid a catch-22 + // situation where we can't create a new model with tasm but don't want the + // old model. + lprintf_always( + "Warning: PointWeights: all points weighted as 1 because " + "stasm_NLANDMARKS %d does not match NELEMS(LANDMARK_INFO_TAB) %d\n", + stasm_NLANDMARKS, NELEMS(LANDMARK_INFO_TAB)); + } + else for (int i = 0; i < NELEMS(LANDMARK_INFO_TAB); i++) + pointweights(i) = LANDMARK_INFO_TAB[i].weight; + + return pointweights; +} + +// wrapper around ConformShapeToMod above + +const Shape ShapeMod::ConformShapeToMod_( // return shape conformed to shape model + VEC& b, // io: eigvec weights from previous iters of ASM + const Shape& shape, // in: shape suggested by the descriptor models + int ilev) // in: pyramid level (0 is full size) +const +{ + // static for efficiency (init once) + static const VEC pointweights(PointWeights()); + + Shape newshape = ConformShapeToMod(b, + shape, meanshape_ * GetPyrScale(ilev), + eigvals_ / pow(SQ(PYR_RATIO), ilev), eigvecs_, eigvecsi_, + bmax_, pointweights); + + JitterPointsAt00InPlace(newshape); // jitter points at 0,0 if any + + if (ilev >= SHAPEHACK_MINPYRLEV) // allow shape hacks only at coarse pyr levs + ApplyShapeModelHacks(newshape, hackbits_); + + return newshape; +} + +// Like ConformShapeToMod_ but with pinned landmarks. Conform the given shape to +// the ASM model, but keeping points in pinnedshape at their original position. + +const Shape ShapeMod::ConformShapeToMod_Pinned_( + VEC& b, // io: eigvec weights from previous iters of ASM + const Shape& shape, // in: shape suggested by the descriptor models + int ilev, // in: pyramid level (0 is full size) + const Shape& pinnedshape) // in: pinned landmarks +const +{ + static const double MAX_DIST = 0.5; + static const int MAX_ITERS = 50; + + Shape outshape(shape.clone()); + double dist = FLT_MAX; + for (int iter = 0; dist > MAX_DIST && iter < MAX_ITERS; iter++) + { + outshape = ConformShapeToMod_(b, outshape, ilev); + dist = ForcePinnedPoints(outshape, pinnedshape); + } + return outshape; +} + +} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/stasm/src/startshape.cpp b/3rdparty/stasm4.0.0/stasm/stasm/src/startshape.cpp new file mode 100755 index 0000000..864ebc3 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/src/startshape.cpp @@ -0,0 +1,582 @@ +// startshape.cpp: routines for finding the start shape for an ASM search +// +// The model "estart" determines the method we use to create the start shape. +// (The InitMods function initializes estart during Stasm initialization.) +// The current open-source version of Stasm uses estart=ESTART_EYES. +// +// 1. With the model estart=ESTART_RECT_ONLY, the start shape is created by +// aligning the model mean face shape to the face rectangle. (The face +// rectangle is found by the face detector prior to calling routines in +// this file.) +// +// 2. With the model estart=ESTART_EYES (currently used for the frontal +// model), the start shape is created as follows. Using the face rectangle +// found by the face detector, Stasm searches for the eyes in the +// appropriate subregions within the rectangle. If both eyes are found the +// face is rotated so the eyes are horizontal. The start shape is then +// formed by aligning the mean training shape to the eyes. If either eye +// isn't found, the start shape is aligned to the face detector rectangle. +// +// Note however that if the eye angle is less than +-5 degrees, we treat it +// as 0 degrees (and don't rotate the face as described above). This +// is to minimize preprocessing. +// +// 3. With the model estart=ESTART_EYE_AND_MOUTH (currently used for the +// three-quarter models), the start shape is generated as above, but we +// search for the mouth too and use it if is detected. +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#include "startshape.h" +#include "print.h" +#include "landmarks.h" +#include "stasm_landmarks.h" +#include "err.h" +#include "faceroi.h" +#include "eyedet.h" +#include "shape17.h" + +namespace stasm +{ + +// Following used if we did not detect eyes. We empirically get slighter better +// Stasm results if we slightly reduce the size of the detected face rectangle. + +static const double FACERECT_SCALE_WHEN_NO_EYES = .95; + +//----------------------------------------------------------------------------- + +// Align meanshape to the face detector rectangle and return it as startshape +// This ignores the eye and mouth, if any. + +static Shape AlignMeanShapeToFaceDet( + const DetPar& detpar, // in + const Shape& meanshape, // in + double scale, // in: scale the face rectangle + const Image& img) // io: the image (grayscale) +{ + if (trace_g) + lprintf("AlignToFaceDet "); + + DetPar detpar1(detpar); + + if (IsLeftFacing(detpar.eyaw)) + detpar1 = FlipDetPar(detpar, img.cols); + + CV_Assert(meanshape.rows > 0 && meanshape.cols == 2); + + const double xscale = detpar1.width * scale / DET_FACE_WIDTH; + const double yscale = detpar1.height * scale / DET_FACE_WIDTH; + + Shape startshape = TransformShape(meanshape, + xscale, 0, detpar1.x, + 0, yscale, detpar1.y); + + return startshape; +} + +// Return the model meanshape aligned to both eyes and the mouth. +// +// The central idea is to form a triangular shape of the eyes and +// bottom-of-mouth from the face detector params, and align the same +// triangle in the meanshape to this triangle. + +static Shape AlignMeanShapeToBothEyesMouth( + const DetPar& detpar, // in + const Shape& meanshape) // in +{ + if (trace_g) + lprintf("AlignToBothEyesMouth "); + + CV_Assert(NSIZE(meanshape) > 0 && PointUsed(meanshape, 0)); + CV_Assert(Valid(detpar.mouthx)); + CV_Assert(Valid(detpar.lex)); + CV_Assert(Valid(detpar.rex)); + + Shape mean_tri(3, 2), det_tri(3, 2); // triangle of eyes and mouth + + const double x_meanmouth = + (meanshape(L_CTopOfTopLip, IX) + meanshape(L_CBotOfBotLip, IX)) / 2.; + + const double y_meanmouth = + (meanshape(L_CTopOfTopLip, IY) + meanshape(L_CBotOfBotLip, IY)) / 2.; + + const Shape shape17(Shape17(meanshape)); + + mean_tri(0, IX) = shape17(L17_LPupil, IX); // left eye + mean_tri(0, IY) = shape17(L17_LPupil, IY); + mean_tri(1, IX) = shape17(L17_RPupil, IX); // right eye + mean_tri(1, IY) = shape17(L17_RPupil, IY); + mean_tri(2, IX) = x_meanmouth; // mouth + mean_tri(2, IY) = y_meanmouth; + + det_tri(0, IX) = detpar.lex; // left eye + det_tri(0, IY) = detpar.ley; + det_tri(1, IX) = detpar.rex; // right eye + det_tri(1, IY) = detpar.rey; + det_tri(2, IX) = detpar.mouthx; // mouth + det_tri(2, IY) = detpar.mouthy; + + return TransformShape(meanshape, AlignmentMat(mean_tri, det_tri)); +} + +// return the model meanshape aligned to both eyes (mouth is not avail) + +static Shape AlignMeanShapeToBothEyesNoMouth( + const DetPar& detpar, // in + const Shape& meanshape) // in +{ + if (trace_g) + lprintf("AlignToBothEyesNoMouth "); + + CV_Assert(NSIZE(meanshape) > 0 && PointUsed(meanshape, 0)); + CV_Assert(Valid(detpar.lex)); + CV_Assert(Valid(detpar.rex)); + + Shape meanline(2, 2), detline(2, 2); // line from eye to eye + + const Shape shape17(Shape17(meanshape)); + + meanline(0, IX) = shape17(L17_LPupil, IX); // left eye + meanline(0, IY) = shape17(L17_LPupil, IY); + meanline(1, IX) = shape17(L17_RPupil, IX); // right eye + meanline(1, IY) = shape17(L17_RPupil, IY); + + detline(0, IX) = detpar.lex; // left eye + detline(0, IY) = detpar.ley; + detline(1, IX) = detpar.rex; // right eye + detline(1, IY) = detpar.rey; + + return TransformShape(meanshape, AlignmentMat(meanline, detline)); +} + +// return the model meanshape aligned to both eyes (mouth is not avail) + +static Shape AlignMeanShapeToBothEyesEstMouth( + const DetPar& detpar, // in + const Shape& meanshape) // in +{ + // .48 was tested to give slightly better worse case results than .50 + static const double EYEMOUTH_TO_FACERECT_RATIO = .48; + + if (trace_g) + lprintf("AlignToBothEyesEstMouth "); + + CV_Assert(NSIZE(meanshape) > 0 && PointUsed(meanshape, 0)); + CV_Assert(Valid(detpar.lex)); + CV_Assert(Valid(detpar.rex)); + + // estimate the mouth's position + + double x_eyemid = 0; + switch (detpar.eyaw) + { + case EYAW00: // mid point + x_eyemid = .50 * detpar.lex + .50 * detpar.rex; + break; + // TODO The constants below have not been empirically optimized. + case EYAW_45: // closer to left eye + x_eyemid = .30 * detpar.lex + .70 * detpar.rex; + break; + case EYAW_22: // closer to left eye + x_eyemid = .30 * detpar.lex + .70 * detpar.rex; + break; + case EYAW22: // closer to right eye + x_eyemid = .30 * detpar.lex + .70 * detpar.rex; + break; + case EYAW45: // closer to right eye + x_eyemid = .30 * detpar.lex + .70 * detpar.rex; + break; + default: + Err("AlignMeanShapeToBothEyesEstMouth: Invalid eyaw %d", detpar.eyaw); + break; + } + const double y_eyemid = (detpar.ley + detpar.rey) / 2; + + Shape mean_tri(3, 2), det_tri(3, 2); // triangle of eyes and mouth + + const Shape shape17(Shape17(meanshape)); + + mean_tri(0, IX) = shape17(L17_LPupil, IX); // left eye + mean_tri(0, IY) = shape17(L17_LPupil, IY); + mean_tri(1, IX) = shape17(L17_RPupil, IX); // right eye + mean_tri(1, IY) = shape17(L17_RPupil, IY); + mean_tri(2, IX) = shape17(L17_CBotOfBotLip, IX); // mouth + mean_tri(2, IY) = shape17(L17_CBotOfBotLip, IY); + + det_tri(0, IX) = detpar.lex; // left eye + det_tri(0, IY) = detpar.ley; + det_tri(1, IX) = detpar.rex; // right eye + det_tri(1, IY) = detpar.rey; + det_tri(2, IX) = x_eyemid; // mouth + det_tri(2, IY) = y_eyemid + EYEMOUTH_TO_FACERECT_RATIO * detpar.width; + + return TransformShape(meanshape, AlignmentMat(mean_tri, det_tri)); +} + +static Shape AlignMeanShapeToLeftEyeMouth( + const DetPar& detpar, // in + const Shape& meanshape) // in +{ + if (trace_g) + lprintf("AlignToLeftEyeMouth "); + + CV_Assert(NSIZE(meanshape) > 0 && PointUsed(meanshape, 0)); + CV_Assert(Valid(detpar.lex)); // left eye valid? + CV_Assert(!Valid(detpar.rex)); // right eye invalid? (else why are we here?) + CV_Assert(Valid(detpar.mouthx)); // mouth valid? + + Shape meanline(2, 2), detline(2, 2); // line from eye to mouth + + const Shape shape17(Shape17(meanshape)); + + const double x_meanmouth = + (shape17(L17_CTopOfTopLip, IX) + shape17(L17_CBotOfBotLip, IX)) / 2; + + const double y_meanmouth = + (shape17(L17_CTopOfTopLip, IY) + shape17(L17_CBotOfBotLip, IY)) / 2; + + meanline(0, IX) = shape17(L17_LPupil, IX); // left eye + meanline(0, IY) = shape17(L17_LPupil, IY); + meanline(1, IX) = x_meanmouth; // mouth + meanline(1, IY) = y_meanmouth; + + detline(0, IX) = detpar.lex; // left eye + detline(0, IY) = detpar.ley; + detline(1, IX) = detpar.mouthx; // mouth + detline(1, IY) = detpar.mouthy; + + return TransformShape(meanshape, AlignmentMat(meanline, detline)); +} + +static Shape AlignMeanShapeToRightEyeMouth( + const DetPar& detpar, // in + const Shape& meanshape) // in +{ + if (trace_g) + lprintf("AlignToRightEyeMouth "); + + CV_Assert(NSIZE(meanshape) > 0 && PointUsed(meanshape, 0)); + CV_Assert(!Valid(detpar.lex)); // left eye invalid? (else why are we here?) + CV_Assert(Valid(detpar.rex)); // right eye valid? + CV_Assert(Valid(detpar.mouthx)); // mouth valid? + + const Shape shape17(Shape17(meanshape)); + + const double x_meanmouth = + (shape17(L17_CTopOfTopLip, IX) + shape17(L17_CBotOfBotLip, IX)) / 2; + + const double y_meanmouth = + (shape17(L17_CTopOfTopLip, IY) + shape17(L17_CBotOfBotLip, IY)) / 2; + + Shape meanline(2, 2), detline(2, 2); // line from eye to mouth + + meanline(0, IX) = shape17(L17_RPupil, IX); // right eye + meanline(0, IY) = shape17(L17_RPupil, IY); + meanline(1, IX) = x_meanmouth; // mouth + meanline(1, IY) = y_meanmouth; + + detline(0, IX) = detpar.rex; // right eye + detline(0, IY) = detpar.rey; + detline(1, IX) = detpar.mouthx; // mouth + detline(1, IY) = detpar.mouthy; + + return TransformShape(meanshape, AlignmentMat(meanline, detline)); +} + +static void FlipIfLeftFacing( + Shape& shape, // io + EYAW eyaw, // in + int ncols) // in +{ + if (IsLeftFacing(eyaw)) + shape = FlipShape(shape, ncols); +} + +static Shape EstartRectOnly( + const DetPar& detpar_roi, // in: detpar wrt the ROI + const Image& face_roi, // in + const Shape& meanshape) // in +{ + return AlignMeanShapeToFaceDet(detpar_roi, meanshape, + FACERECT_SCALE_WHEN_NO_EYES, face_roi); +} + +static Shape EstartEyes( + const DetPar& detpar_roi, // in: detpar wrt the ROI + const Image& face_roi, // in + const Shape& meanshape) // in +{ + Shape startshape; + Shape meanshape1(meanshape); + if (Valid(detpar_roi.lex) && Valid(detpar_roi.rex)) // both eyes available? + { + FlipIfLeftFacing(meanshape1, detpar_roi.eyaw, face_roi.cols); + // TODO Tune the following code, what approach is best? + if (detpar_roi.eyaw == EYAW00) + startshape = AlignMeanShapeToBothEyesEstMouth(detpar_roi, meanshape1); + else + startshape = AlignMeanShapeToBothEyesNoMouth(detpar_roi, meanshape1); + FlipIfLeftFacing(startshape, detpar_roi.eyaw, face_roi.cols); + } + else // at least one eye is missing, use the face det rectangle + { + startshape = + AlignMeanShapeToFaceDet(detpar_roi, meanshape1, + FACERECT_SCALE_WHEN_NO_EYES, face_roi); + } + return startshape; +} + +static Shape EstartEyeMouth( + const DetPar& detpar_roi, // in: detpar wrt the ROI + const Image& face_roi, // in + const Shape& meanshape) // in +{ + Shape startshape; + Shape meanshape1(meanshape); + if (Valid(detpar_roi.mouthx) && // both eyes and mouth? + Valid(detpar_roi.lex) && + Valid(detpar_roi.rex)) + { + FlipIfLeftFacing(meanshape1, detpar_roi.eyaw, face_roi.cols); + startshape = AlignMeanShapeToBothEyesMouth(detpar_roi, meanshape1); + FlipIfLeftFacing(startshape, detpar_roi.eyaw, face_roi.cols); + } + else if (Valid(detpar_roi.lex) && // both eyes? + Valid(detpar_roi.rex)) + { + FlipIfLeftFacing(meanshape1, detpar_roi.eyaw, face_roi.cols); + // TODO Tune the following code, what approach is best? + if (detpar_roi.eyaw == EYAW00) + startshape = AlignMeanShapeToBothEyesEstMouth(detpar_roi, meanshape1); + else + startshape = AlignMeanShapeToBothEyesNoMouth(detpar_roi, meanshape1); + FlipIfLeftFacing(startshape, detpar_roi.eyaw, face_roi.cols); + } + else if (Valid(detpar_roi.mouthx) && // left eye and mouth? + Valid(detpar_roi.lex)) + { + FlipIfLeftFacing(meanshape1, detpar_roi.eyaw, face_roi.cols); + startshape = AlignMeanShapeToLeftEyeMouth(detpar_roi, meanshape1); + FlipIfLeftFacing(startshape, detpar_roi.eyaw, face_roi.cols); + } + else if (Valid(detpar_roi.mouthx) && // right eye and mouth? + Valid(detpar_roi.rex)) + { + FlipIfLeftFacing(meanshape1, detpar_roi.eyaw, face_roi.cols); + startshape = AlignMeanShapeToRightEyeMouth(detpar_roi, meanshape1); + FlipIfLeftFacing(startshape, detpar_roi.eyaw, face_roi.cols); + } + else // last resort: use the face det rectangle (can't use facial features) + { + startshape = + AlignMeanShapeToFaceDet(detpar_roi, meanshape1, + FACERECT_SCALE_WHEN_NO_EYES, face_roi); + } + return startshape; +} + +// Align the model meanshape to the detpar from the face and feature dets. +// Complexity enters in because the detected eyes and mouth may be useful +// if available. The "left facing" code is needed because our three +// quarter models are for right facing faces (wrt the viewer). + +static Shape StartShapeFromDetPar( + const DetPar& detpar_roi, // in: detpar wrt the ROI + const Image& face_roi, // in + const Shape& meanshape, // in + ESTART estart) // in: use mouth etc. to posn start shape? +{ + Shape startshape; + switch (estart) + { + case ESTART_RECT_ONLY: + startshape = EstartRectOnly(detpar_roi, face_roi, meanshape); + break; + case ESTART_EYES: + startshape = EstartEyes(detpar_roi, face_roi, meanshape); + break; + case ESTART_EYE_AND_MOUTH: + startshape = EstartEyeMouth(detpar_roi, face_roi, meanshape); + break; + default: + Err("Invalid estart %d", estart); + } + return JitterPointsAt00(startshape); +} + +static void TraceEyesMouth( + Image& face_roi, // out: ROI around face, possibly rotated upright + DetPar& detpar_roi) // out: detpar wrt to face_roi +{ +#if TRACE_IMAGES // will be 0 unless debugging (defined in stasm.h) + + CImage cimg; cvtColor(face_roi, cimg, CV_GRAY2BGR); // color image + rectangle(cimg, + cv::Point(cvRound(detpar_roi.x - .5 * detpar_roi.width), + cvRound(detpar_roi.y - .5 * detpar_roi.height)), + cv::Point(cvRound(detpar_roi.x + .5 * detpar_roi.width), + cvRound(detpar_roi.y + .5 * detpar_roi.height)), + ToCvColor(C_BLUE), 3); + if (Valid(detpar_roi.lex)) + cv::circle(cimg, + cv::Point(cvRound(detpar_roi.lex), cvRound(detpar_roi.ley)), + MAX(2, face_roi.cols / 40), + cv::Scalar(0, 0, 255), 2); + if (Valid(detpar_roi.rex)) + cv::circle(cimg, + cv::Point(cvRound(detpar_roi.rex), cvRound(detpar_roi.rey)), + MAX(2, face_roi.cols / 40), + cv::Scalar(0, 0, 255), 2); + if (Valid(detpar_roi.mouthx)) + cv::circle(cimg, + cv::Point(cvRound(detpar_roi.mouthx), cvRound(detpar_roi.mouthy)), + MAX(2, face_roi.cols / 40), + cv::Scalar(0, 0, 255), 2); + char s[SLEN]; sprintf(s, "%s_25_eyemouth.bmp", Base(imgpath_g)); + lprintf("%s\n", s); + if (!cv::imwrite(s, cimg)) + Err("Cannot write %s", s); + +#endif +} + +double EyeAngle( // eye angle in degrees, INVALID if eye angle not available + const DetPar& detpar) // in: detpar wrt the ROI +{ + double angle = 0; + if (Valid(detpar.lex) && Valid(detpar.rey)) // both eyes detected? + { + angle = RadsToDegrees( + -atan2(detpar.rey - detpar.ley, + detpar.rex - detpar.lex)); + } + return angle; +} + +double EyeAngle( // eye angle in degrees, INVALID if eye angle not available + const Shape& shape) // in +{ + double angle = INVALID; + + const Shape shape17(Shape17OrEmpty(shape)); + + if (shape17.rows && // converted shape to a Shape17 successfully? + Valid(shape17(L17_LPupil, IX)) && Valid(shape17(L17_RPupil, IX)) && + PointUsed(shape17, L17_LPupil) && PointUsed(shape17, L17_RPupil)) + { + angle = RadsToDegrees( + -atan2(shape17(L17_RPupil, IY) - shape17(L17_LPupil, IY), + shape17(L17_RPupil, IX) - shape17(L17_LPupil, IX))); + } + return angle; +} + +// Get the start shape and the ROI around it, given the face rectangle. +// Depending on the estart field in the model, we detect the eyes +// and mouth and use those to help fit the start shape. +// (Note also that the ROI is flipped if necessary because our three-quarter +// models are right facing and the face may be left facing.) + +static void StartShapeAndRoi( // we have the facerect, now get the rest + Shape& startshape, // out: the start shape we are looking for + Image& face_roi, // out: ROI around face, possibly rotated upright + DetPar& detpar_roi, // out: detpar wrt to face_roi + DetPar& detpar, // io: detpar wrt to img (has face rect on entry) + const Image& img, // in: the image (grayscale) + const vec_Mod& mods, // in: a vector of models, one for each yaw range + // (use only estart, and meanshape) + StasmCascadeClassifier cascade) +{ + PossiblySetRotToZero(detpar.rot); // treat small rots as zero rots + + FaceRoiAndDetPar(face_roi, detpar_roi, // get ROI around face + img, detpar, false); + + DetectEyesAndMouth(detpar_roi, // use OpenCV eye and mouth detectors + face_roi, cascade); + + // Some face detectors return the face rotation, some don't (in + // the call to NextFace_ just made via NextStartShapeAndRoi). + // If we don't have the rotation, then estimate it from the eye + // angle, if the eyes are available. + + if (!Valid(detpar.rot)) // don't have the face rotation? + { + detpar_roi.rot = EyeAngle(detpar_roi); + if (!Valid(detpar_roi.rot)) // eye angle not available? + detpar_roi.rot = 0; + PossiblySetRotToZero(detpar_roi.rot); + detpar.rot = detpar_roi.rot; + if (detpar.rot != 0) + { + // face is rotated: rotate ROI and re-get the eyes and mouth + + // TODO: Prevent bogus OpenCV assert fail face_roi.data == img.data. + face_roi = Image(0,0); + + FaceRoiAndDetPar(face_roi, detpar_roi, + img, detpar, false); + + DetectEyesAndMouth(detpar_roi, // use OpenCV eye and mouth detectors + face_roi, cascade); + } + } + TraceEyesMouth(face_roi, detpar_roi); + if (trace_g) + lprintf("%-6.6s yaw %3.0f rot %3.0f ", + EyawAsString(detpar_roi.eyaw), detpar_roi.yaw, detpar_roi.rot); + else + logprintf("%-6.6s yaw %3.0f rot %3.0f ", + EyawAsString(detpar_roi.eyaw), detpar_roi.yaw, detpar_roi.rot); + + // select an ASM model based on the face's yaw + const Mod* mod = mods[ABS(EyawAsModIndex(detpar_roi.eyaw, mods))]; + + const ESTART estart = mod->Estart_(); + + startshape = StartShapeFromDetPar(detpar_roi, + face_roi, mod->MeanShape_(), estart); + + detpar.lex = detpar_roi.lex; + + if (IsLeftFacing(detpar_roi.eyaw)) + FlipImgInPlace(face_roi); + + JitterPointsAt00InPlace(startshape); +} + +// Get the start shape for the next face in the image, and the ROI around it. +// The returned shape is wrt the ROI frame. +// +// Note that we we previously called the face detector, and the face +// rectangle(s) were saved privately in facedet, and are now ready for +// immediate retrieval by NextFace_. +// +// The following comment applies for three-quarter models (not for frontal +// models): If the three-quarter face is left-facing, we flip the ROI so +// the returned face is right-facing. This is because our three-quarter +// ASM models are for right-facing faces. For frontal faces (the yaw00 +// model), faces are not flipped. + +bool NextStartShapeAndRoi( // use face detector results to estimate start shape + Shape& startshape, // out: the start shape + Image& face_roi, // out: ROI around face, possibly rotated upright + DetPar& detpar_roi, // out: detpar wrt to face_roi + DetPar& detpar, // out: detpar wrt to img + const Image& img, // in: the image (grayscale) + const vec_Mod& mods, // in: a vector of models, one for each yaw range + // (use only estart, and meanshape) + FaceDet& facedet, // io: the face detector (internal face index bumped) + StasmCascadeClassifier cascade) +{ + detpar = facedet.NextFace_(); // get next face's detpar from the face det + + if (Valid(detpar.x)) // NextFace_ returned a face? + StartShapeAndRoi(startshape, face_roi, detpar_roi, detpar, img, mods, cascade); + + return Valid(detpar.x); +} + +} // namespace stasm diff --git a/3rdparty/stasm4.0.0/stasm/stasm/src/stasm_lib.cpp b/3rdparty/stasm4.0.0/stasm/stasm/src/stasm_lib.cpp new file mode 100755 index 0000000..d8e55f2 --- /dev/null +++ b/3rdparty/stasm4.0.0/stasm/stasm/src/stasm_lib.cpp @@ -0,0 +1,336 @@ +// stasm_lib.cpp: interface to the Stasm library +// +// Copyright (C) 2005-2013, Stephen Milborrow + +#include "stasm_lib.h" +#include "err.h" +#include "misc.h" +#include "asm.h" +#include "print.h" +#include "initasm.h" +#include "faceroi.h" +#include "pinstart.h" +#include "convshape.h" +#include "facedet.h" +#include "startshape.h" + +using namespace stasm; + +static vec_Mod mods_g; // the ASM model(s) +//static FaceDet facedet_g; // the face detector + +//----------------------------------------------------------------------------- + +namespace stasm +{ +static void CheckStasmInit(void) +{ + if (mods_g.empty()) + Err("Models not initialized (missing call to stasm_init?)"); +} + +static void ShapeToLandmarks( // convert Shape to landmarks (float *) + float* landmarks, // out + const Shape& shape) // in +{ + CV_Assert(shape.rows <= stasm_NLANDMARKS); + int i; + for (i = 0; i < MIN(shape.rows, stasm_NLANDMARKS); i++) + { + landmarks[i * 2] = float(shape(i, IX)); + landmarks[i * 2 + 1] = float(shape(i, IY)); + } + // set remaining unused landmarks if any to 0,0 + for (; i < stasm_NLANDMARKS; i++) + { + landmarks[i * 2] = 0; + landmarks[i * 2 + 1] = 0; + } +} + +static const Shape LandmarksAsShape( // return a Shape + const float* landmarks) // in +{ + Shape shape(stasm_NLANDMARKS, 2); + for (int i = 0; i < stasm_NLANDMARKS; i++) + { + shape(i, IX) = landmarks[i*2]; + shape(i, IY) = landmarks[i*2+1]; + } + return shape; +} + +} // namespace stasm + +//----------------------------------------------------------------------------- + +int stasm_init_ext( // extended version of stasm_init + const char* datadir, // in: directory of face detector files + int trace, // in: 0 normal use, 1 trace to stdout and stasm.log + void* detparams) // in: NULL or face detector parameters +{ + (void) detparams; + + int returnval = 1; // assume success + CatchOpenCvErrs(); + try + { + print_g = (trace != 0); + trace_g = (trace != 0); + if (mods_g.empty()) // not yet initialized? + { + if (trace) + { + // Open a log file in the current directory (if possible). + // After the log file is opened, lprintf and stasm_printf + // will print to stasm.log (as well as to stdout). + OpenLogFile(); + } + + CV_Assert(datadir && datadir[0] && STRNLEN(datadir, SLEN) < SLEN); + InitMods(mods_g, datadir); // init ASM model(s) + //facedet_g.OpenFaceDetector_(datadir, detparams); + //OpenEyeMouthDetectors(mods_g, datadir); + } + CheckStasmInit(); + } + catch(...) + { + returnval = 0; // a call was made to Err or a CV_Assert failed + } + UncatchOpenCvErrs(); + return returnval; +} + +int stasm_init( // call once, at bootup (to read models from disk) + const char* datadir, // in: directory of face detector files + int trace) // in: 0 normal use, 1 trace to stdout and stasm.log +{ + return stasm_init_ext(datadir, trace, NULL); +} + +int stasm_open_image_ext( // extended version of stasm_open_image + const char* img, // in: gray image data, top left corner at 0,0 + int width, // in: image width + int height, // in: image height + const char* imgpath, // in: image path, used only for err msgs and debug + int multiface, // in: 0=return only one face, 1=allow multiple faces + int minwidth, // in: min face width as percentage of img width + void* user) // in: NULL or pointer to user abort func +{ + (void) img; + (void) width; + (void) height; + (void) imgpath; + (void) user; + + int returnval = 1; // assume success + CatchOpenCvErrs(); + try + { + //CV_Assert(imgpath && STRNLEN(imgpath, SLEN) < SLEN); + CV_Assert(multiface == 0 || multiface == 1); + CV_Assert(minwidth >= 1 && minwidth <= 100); + + CheckStasmInit(); + + //img_g = Image(height, width,(unsigned char*)img); + + // call the face detector to detect the face rectangle(s) + //facedet_g.DetectFaces_(img_g, imgpath, multiface == 1, minwidth, user); + } + catch(...) + { + returnval = 0; // a call was made to Err or a CV_Assert failed + } + UncatchOpenCvErrs(); + return returnval; +} + +int stasm_open_image( // call once per image, detect faces + const char* img, // in: gray image data, top left corner at 0,0 + int width, // in: image width + int height, // in: image height + const char* imgpath, // in: image path, used only for err msgs and debug + int multiface, // in: 0=return only one face, 1=allow multiple faces + int minwidth) // in: min face width as percentage of img width +{ + return stasm_open_image_ext(img, width, height, imgpath, + multiface, minwidth, NULL); +} + +int stasm_search_auto_ext( // extended version of stasm_search_auto + int* foundface, // out: 0=no more faces, 1=found face + float* landmarks, // out: x0, y0, x1, y1, ..., caller must allocate + float* estyaw, // out: NULL or pointer to estimated yaw + const char* data, + const int width, + const int height, + StasmCascadeClassifier cascade) +{ + int returnval = 1; // assume success + *foundface = 0; // but assume no face found + CatchOpenCvErrs(); + try + { + CheckStasmInit(); + + Shape shape; // the shape with landmarks + Image face_roi; // cropped to area around startshape and possibly rotated + DetPar detpar_roi; // detpar translated to ROI frame + DetPar detpar; // params returned by face det, in img frame + + // Allocate image + Image img = Image(height, width,(unsigned char*)data); + + FaceDet facedet; + + // call the face detector to detect the face rectangle(s) + facedet.DetectFaces_(img, NULL, false, 10, NULL, cascade.faceCascade); + + // Get the start shape for the next face in the image, and the ROI around it. + // The shape will be wrt the ROI frame. + if (NextStartShapeAndRoi(shape, face_roi, detpar_roi, detpar, + img, mods_g, facedet, cascade)) + { + // now working with maybe flipped ROI and start shape in ROI frame + *foundface = 1; + if (trace_g) // show start shape? + LogShape(RoiShapeToImgFrame(shape, face_roi, detpar_roi, detpar), + "auto_start"); + + // select an ASM model based on the face's yaw + const int imod = ABS(EyawAsModIndex(detpar.eyaw, mods_g)); + + // do the actual ASM search + shape = mods_g[imod]->ModSearch_(shape, face_roi); + + shape = RoundMat(RoiShapeToImgFrame(shape, face_roi, detpar_roi, detpar)); + + // now working with non flipped start shape in image frame + ShapeToLandmarks(landmarks, shape); + if (estyaw) + *estyaw = float(detpar.yaw); + } + } + catch(...) + { + returnval = 0; // a call was made to Err or a CV_Assert failed + } + return returnval; +} + +int stasm_search_auto( // call repeatedly to find all faces + int* foundface, // out: 0=no more faces, 1=found face + float* landmarks, // out: x0, y0, x1, y1, ..., caller must allocate + const char *data, + const int width, + const int height, + StasmCascadeClassifier cascade) +{ + return stasm_search_auto_ext(foundface, landmarks, NULL, data, width, height, cascade); +} + +int stasm_search_single( // wrapper for stasm_search_auto and friends + int* foundface, // out: 0=no face, 1=found face + float* landmarks, // out: x0, y0, x1, y1, ..., caller must allocate + const char* img, // in: gray image data, top left corner at 0,0 + int width, // in: image width + int height, // in: image height + StasmCascadeClassifier cascade, + const char* imgpath, // in: image path, used only for err msgs and debug + const char* datadir) // in: directory of face detector files +{ + (void) datadir; + (void) imgpath; + + return stasm_search_auto(foundface, landmarks, img, width, height, cascade); +} + +int stasm_search_pinned( // call after the user has pinned some points + float* landmarks, // out: x0, y0, x1, y1, ..., caller must allocate + const float* pinned, // in: pinned landmarks (0,0 points not pinned) + const char* data, // in: gray image data, top left corner at 0,0 + int width, // in: image width + int height, // in: image height + const char* imgpath) // in: image path, used only for err msgs and debug +{ + (void) width; + (void) height; + (void) imgpath; + + int returnval = 1; // assume success + try + { + CheckStasmInit(); + + Image img = Image(height, width,(unsigned char*)data); + + const Shape pinnedshape(LandmarksAsShape(pinned)); + + Shape shape; // the shape with landmarks + Image face_roi; // img cropped to startshape area and maybe rotated + Shape pinned_roi; // pinned translated to ROI frame + DetPar detpar_roi; // detpar translated to ROI frame + DetPar detpar; // params returned by pseudo face det, in img frame + + PinnedStartShapeAndRoi(shape, face_roi, detpar_roi, detpar, pinned_roi, img, mods_g, pinnedshape); + + // now working with maybe flipped ROI and start shape in ROI frame + const int imod = ABS(EyawAsModIndex(detpar.eyaw, mods_g)); + + shape = mods_g[imod]->ModSearch_(shape, face_roi, &pinned_roi); // ASM search + + shape = RoiShapeToImgFrame(shape, face_roi, detpar_roi, detpar); + // now working with non flipped start shape in image frame + RoundMat(shape); + ForcePinnedPoints(shape, pinnedshape); // undo above RoundMat on pinned points + ShapeToLandmarks(landmarks, shape); + } + catch(...) + { + returnval = 0; // a call was made to Err or a CV_Assert failed + } + return returnval; +} + +const char* stasm_lasterr(void) // same as LastErr but not in stasm namespace +{ + return LastErr(); // return the last error message (stashed in sgErr) +} + +void stasm_force_points_into_image( // force landmarks into image boundary + float* landmarks, // io + int ncols, // in + int nrows) // in +{ + for (int i = 0; i < stasm_NLANDMARKS; i++) + { + landmarks[i * 2] = Clamp(landmarks[i * 2], 0.f, float(ncols-1)); + landmarks[i * 2 + 1] = Clamp(landmarks[i * 2 + 1], 0.f, float(nrows-1)); + } +} + +void stasm_convert_shape( // convert stasm_NLANDMARKS points to given number of points + float* landmarks, // io: return all points zero if can't do conversion + int nlandmarks) // in: see ConvertShape +{ + Shape newshape = ConvertShape(LandmarksAsShape(landmarks), nlandmarks); + if (newshape.rows) + ShapeToLandmarks(landmarks, newshape); + else // cannot convert, set all points to 0,0 + for (int i = 0; i < stasm_NLANDMARKS; i++) + landmarks[i * 2] = landmarks[i * 2 + 1] = 0; +} + +void stasm_printf( // print to stdout and to the stasm.log file if it is open + const char* format, // args like printf + ...) +{ + char s[SBIG]; + va_list args; + va_start(args, format); + VSPRINTF(s, format, args); + va_end(args); + lputs(s); +} -- libgit2 0.21.4