zoukankan      html  css  js  c++  java
  • 人脸识别活体检测之张张嘴和眨眨眼——readme

    人脸检测返回参数详情
    ————————————————————————————————————————————————————————————————————————————————————————————————
    字段 必选 类型 说明

    face_num 是 int 检测到的图片中的人脸数量
    face_list 是 array 人脸信息列表,具体包含的参数参考下面的列表。
    +face_token 是 string 人脸图片的唯一标识
    +location 是 array 人脸在图片中的位置
    ++left 是 double 人脸区域离左边界的距离
    ++top 是 double 人脸区域离上边界的距离
    ++width 是 double 人脸区域的宽度
    ++height 是 double 人脸区域的高度
    ++rotation 是 int64 人脸框相对于竖直方向的顺时针旋转角,[-180,180]
    +face_probability 是 double 人脸置信度,范围【0~1】,代表这是一张人脸的概率,0最小、1最大。
    +angel 是 array 人脸旋转角度参数
    ++yaw 是 double 三维旋转之左右旋转角[-90(左), 90(右)]
    ++pitch 是 double 三维旋转之俯仰角度[-90(上), 90(下)]
    ++roll 是 double 平面内旋转角[-180(逆时针), 180(顺时针)]
    +age 否 double 年龄 ,当face_field包含age时返回
    +beauty 否 int64 美丑打分,范围0-100,越大表示越美。当face_fields包含beauty时返回
    +expression 否 array 表情,当 face_field包含expression时返回
    ++type 否 string none:不笑;smile:微笑;laugh:大笑
    ++probability 否 double 表情置信度,范围【0~1】,0最小、1最大。
    +face_shape 否 array 脸型,当face_field包含faceshape时返回
    ++type 否 double square: 正方形 triangle:三角形 oval: 椭圆 heart: 心形 round: 圆形
    ++probability 否 double 置信度,范围【0~1】,代表这是人脸形状判断正确的概率,0最小、1最大。
    +gender 否 array 性别,face_field包含gender时返回
    ++type 否 string male:男性 female:女性
    ++probability 否 double 性别置信度,范围【0~1】,0代表概率最小、1代表最大。
    +glasses 否 array 是否带眼镜,face_field包含glasses时返回
    ++type 否 string none:无眼镜,common:普通眼镜,sun:墨镜
    ++probability 否 double 眼镜置信度,范围【0~1】,0代表概率最小、1代表最大。
    +race 否 array 人种 face_field包含race时返回
    ++type 否 string yellow: 黄种人 white: 白种人 black:黑种人 arabs: 阿拉伯人
    ++probability 否 double 人种置信度,范围【0~1】,0代表概率最小、1代表最大。
    +face_type 否 array 真实人脸/卡通人脸 face_field包含face_type时返回
    ++type 否 string human: 真实人脸 cartoon: 卡通人脸
    ++probability 否 double 人脸类型判断正确的置信度,范围【0~1】,0代表概率最小、1代表最大。
    +landmark 否 array 4个关键点位置,左眼中心、右眼中心、鼻尖、嘴中心。face_field包含landmark时返回
    +landmark72 否 array 72个特征点位置 face_field包含landmark时返回
    +quality 否 array 人脸质量信息。face_field包含quality时返回
    ++occlusion 否 array 人脸各部分遮挡的概率,范围[0~1],0表示完整,1表示不完整
    +++left_eye 否 double 左眼遮挡比例
    +++right_eye 否 double 右眼遮挡比例
    +++nose 否 double 鼻子遮挡比例
    +++mouth 否 double 嘴巴遮挡比例
    +++left_cheek 否 double 左脸颊遮挡比例
    +++right_cheek 否 double 右脸颊遮挡比例
    +++chin 否 double 下巴遮挡比例
    ++blur 否 double 人脸模糊程度,范围[0~1],0表示清晰,1表示模糊
    ++illumination 否 double 取值范围在[0~255], 表示脸部区域的光照程度 越大表示光照越好
    ++completeness 否 int64 人脸完整度,0或1, 0为人脸溢出图像边界,1为人脸都在图像边界内
    +parsing_info 否 string 人脸分层结果 结果数据是使用gzip压缩后再base64编码 使用前需base64解码后再解压缩 原数据格式为string
    形如0,0,0,0,0,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,
    ————————————————————————————————————————————————————————————————————————————————————————————————————————————
    返回json数据:
    {
    “timestamp”: 1528371144,
    “result”: {
    “face_list”: [{
    “expression”: {
    “probability”: 0.9999684095,
    “type”: “none”
    },
    “face_probability”: 0.9626089931,
    “glasses”: {
    “probability”: 0.9998494387,
    “type”: “common”
    },
    “location”: {
    “height”: 307,
    “rotation”: 2,
    “width”: 273,
    “left”: 296.1046143,
    “top”: 163.5777588
    },
    “landmark72”: [
    {
    “y”: 241.360199,
    “x”: 292.4519043
    },
    {
    “y”: 284.3699341,
    “x”: 295.9116211
    },
    {
    “y”: 328.4156189,
    “x”: 304.021759
    },
    {
    “y”: 371.3819275,
    “x”: 314.0935364
    },
    {
    “y”: 416.5806274,
    “x”: 333.3151245
    },
    {
    “y”: 459.6279297,
    “x”: 370.47229
    },
    {
    “y”: 476.2438354,
    “x”: 412.0462036
    },
    {
    “y”: 469.1072998,
    “x”: 457.7119141
    },
    {
    “y”: 435.0166626,
    “x”: 501.7189941
    },
    {
    “y”: 390.2756348,
    “x”: 532.2461548
    },
    {
    “y”: 345.0927124,
    “x”: 548.138916
    },
    {
    “y”: 299.1921692,
    “x”: 559.2930298
    },
    {
    “y”: 254.285141,
    “x”: 565.3004761
    },
    {
    “y”: 230.1785583,
    “x”: 329.6694946
    },
    {
    “y”: 222.2650757,
    “x”: 343.285614
    },
    {
    “y”: 220.7796631,
    “x”: 356.7460938
    },
    {
    “y”: 223.9135742,
    “x”: 371.3406677
    },
    {
    “y”: 233.6182861,
    “x”: 385.2095947
    },
    {
    “y”: 235.2540588,
    “x”: 370.6172485
    },
    {
    “y”: 236.2314148,
    “x”: 356.4389343
    },
    {
    “y”: 234.2461243,
    “x”: 341.9369507
    },
    {
    “y”: 227.4796143,
    “x”: 355.9927368
    },
    {
    “y”: 193.4365387,
    “x”: 313.8055115
    },
    {
    “y”: 170.465332,
    “x”: 331.9764404
    },
    {
    “y”: 166.3371429,
    “x”: 356.399353
    },
    {
    “y”: 170.4036255,
    “x”: 380.4868774
    },
    {
    “y”: 188.2350311,
    “x”: 401.4260559
    },
    {
    “y”: 188.1490021,
    “x”: 379.4369202
    },
    {
    “y”: 186.7609863,
    “x”: 356.0379028
    },
    {
    “y”: 188.6333923,
    “x”: 333.6030884
    },
    {
    “y”: 237.4863892,
    “x”: 465.0245972
    },
    {
    “y”: 228.826889,
    “x”: 479.3971558
    },
    {
    “y”: 228.0735474,
    “x”: 494.7539673
    },
    {
    “y”: 231.1828613,
    “x”: 509.2977905
    },
    {
    “y”: 239.077301,
    “x”: 523.2540283
    },
    {
    “y”: 242.3865967,
    “x”: 508.8378296
    },
    {
    “y”: 242.7297668,
    “x”: 493.300415
    },
    {
    “y”: 240.5341339,
    “x”: 478.2283325
    },
    {
    “y”: 233.886261,
    “x”: 491.254364
    },
    {
    “y”: 192.1312256,
    “x”: 450.9655762
    },
    {
    “y”: 176.1939087,
    “x”: 474.1013794
    },
    {
    “y”: 174.3426819,
    “x”: 500.0958252
    },
    {
    “y”: 180.6152649,
    “x”: 525.2724609
    },
    {
    “y”: 205.0406799,
    “x”: 544.15802
    },
    {
    “y”: 198.3281097,
    “x”: 522.0322266
    },
    {
    “y”: 193.9849396,
    “x”: 498.171875
    },
    {
    “y”: 193.6101837,
    “x”: 474.463501
    },
    {
    “y”: 235.1314545,
    “x”: 405.7365417
    },
    {
    “y”: 263.1231384,
    “x”: 398.9992065
    },
    {
    “y”: 291.5641174,
    “x”: 392.697998
    },
    {
    “y”: 321.401062,
    “x”: 382.6131592
    },
    {
    “y”: 322.6088257,
    “x”: 400.7704468
    },
    {
    “y”: 323.8301086,
    “x”: 443.7107544
    },
    {
    “y”: 324.1907959,
    “x”: 464.1107788
    },
    {
    “y”: 293.3712769,
    “x”: 453.4411926
    },
    {
    “y”: 264.8468323,
    “x”: 448.3047485
    },
    {
    “y”: 236.6197968,
    “x”: 443.6154175
    },
    {
    “y”: 305.3646545,
    “x”: 421.223877
    },
    {
    “y”: 383.9639282,
    “x”: 375.137085
    },
    {
    “y”: 363.3876343,
    “x”: 393.6142578
    },
    {
    “y”: 360.5367126,
    “x”: 422.6240845
    },
    {
    “y”: 366.1363525,
    “x”: 451.1436768
    },
    {
    “y”: 389.2103271,
    “x”: 469.8604736
    },
    {
    “y”: 407.2568359,
    “x”: 450.6833191
    },
    {
    “y”: 413.2620239,
    “x”: 420.4364014
    },
    {
    “y”: 403.9484863,
    “x”: 390.8678589
    },
    {
    “y”: 377.3647461,
    “x”: 396.2229004
    },
    {
    “y”: 376.8469238,
    “x”: 421.9415588
    },
    {
    “y”: 379.1690674,
    “x”: 447.9805908
    },
    {
    “y”: 390.7108154,
    “x”: 446.4016724
    },
    {
    “y”: 391.1112061,
    “x”: 421.5936279
    },
    {
    “y”: 388.0070801,
    “x”: 396.4388733
    }
    ],
    “face_token”: “05f2d8abe9fb3ff0a7b2e590c3af1b94”,
    “face_shape”: {
    “probability”: 0.5348426104,
    “type”: “oval”
    },
    “race”: {
    “probability”: 0.9990831614,
    “type”: “yellow”
    },
    “angle”: {
    “yaw”: 0.9113687873,
    “roll”: 2.805583239,
    “pitch”: -3.07931757
    },
    “landmark”: [
    {
    “y”: 227.4796143,
    “x”: 355.9927368
    },
    {
    “y”: 233.886261,
    “x”: 491.254364
    },
    {
    “y”: 305.3646545,
    “x”: 421.223877
    },
    {
    “y”: 385.065155,
    “x”: 421.7819214
    }
    ],
    “parsing_info”: “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”,
    “quality”: {
    “completeness”: 1,
    “occlusion”: {
    “left_eye”: 0,
    “chin_contour”: 0.2168905884,
    “mouth”: 0,
    “right_cheek”: 0.02743142098,
    “left_cheek”: 0.01728247851,
    “nose”: 0.08578856289,
    “right_eye”: 0
    },
    “blur”: 8.371096101E-7,
    “illumination”: 54
    },
    “face_type”: {
    “probability”: 0.9988574386,
    “type”: “human”
    }
    }],
    “face_num”: 1
    },
    “cached”: 0,
    “error_code”: 0,
    “log_id”: 2850674365,
    “error_msg”: “SUCCESS”
    }
    ————————————————————————————————————————————————————————————————————————————————————————————————————
    思路分析:
    1.前台获取图像base64数据,每隔2秒提交一次,进行判断关键点的信息
    2.每次的关键点进行比对
    3.关键点分析
    ————————————————————————————————————————————————————————————————————————————————————————————————————
    眨眨眼的关键点分析:
    左眼中心:21
    右眼中心:33
    左眼上面:14-15
    右眼上面:32-33
    左眼下面:19-20
    右眼下面:36-37
    判断是否已经眨眼,需要判断关键点当前与以前的值
    差:
    左边:(14-19)(15-20)
    右边:(32-36)(33-37)
    两次的值进行相减去,看看值是否大于某个值,如果大于的话证明此人眨眼了,否则没有

    嘴巴分析:嘴上边:60/67
    嘴下边:70/64
    差:(60-70)(67-64)
    两次的值进行相减去,看看值是否大于某个值,如果大于的话证明此人张嘴了,否则没有
    ————————————————————————————————————————————————————6.20——————————————————————————————————
    判断上次的和本次的执行方法,通过count来计数,执行完方法之后每次count++,第二次来的时候对比count值是否发生变化,如果发生变化则进行比较,否则继续执行?
    ——————————————————–6.22—————————————-
    眼镜分析:
    闭着眼的左眼上边:235.673584
    闭着眼的左眼中间:239.9625549
    闭着眼的左眼下边:244.9061737
    闭着眼的左眼上边与中间的值:-4.288970899999981
    闭着眼的左眼下边与中间的值:4.943618800000024
    闭着眼的右眼上边:243.1592712
    闭着眼的右眼中间:247.2118683
    闭着眼的右眼下边:252.1771851
    闭着眼的右眼上边与中间的值:-4.052597099999986
    闭着眼的右眼下边与中间的值:4.965316800000011
    闭着眼的左眼上边:248.9268799
    闭着眼的左眼中间:250.9309082
    闭着眼的左眼下边:257.3150635
    闭着眼的左眼上边与中间的值:2.004028300000016
    闭着眼的左眼下边与中间的值:6.384155300000003
    闭着眼的右眼上边:252.9154053
    闭着眼的右眼中间:255.659668
    闭着眼的右眼下边:261.875
    闭着眼的右眼上边与中间的值:2.7442627000000073
    闭着眼的右眼下边与中间的值:6.215331999999989
    闭着眼的左眼上边:250.3865662
    闭着眼的左眼中间:253.4219513
    闭着眼的左眼下边:259.7618408
    闭着眼的左眼上边与中间的值:3.035385099999985
    闭着眼的左眼下边与中间的值:6.339889500000027
    闭着眼的右眼上边:251.3974152
    闭着眼的右眼中间:255.2081299
    闭着眼的右眼下边:261.6601562
    闭着眼的右眼上边与中间的值:3.810714699999977
    闭着眼的右眼下边与中间的值:6.452026300000028
    闭着眼的左眼上边:251.8607025
    闭着眼的左眼中间:254.4894714
    闭着眼的左眼下边:260.9414062
    闭着眼的左眼上边与中间的值:2.6287689000000114
    闭着眼的左眼下边与中间的值:6.451934800000004
    闭着眼的右眼上边:254.2806396
    闭着眼的右眼中间:257.3803711
    闭着眼的右眼下边:263.6567383
    闭着眼的右眼上边与中间的值:3.09973149999999
    闭着眼的右眼下边与中间的值:6.2763671999999815
    闭着眼的左眼上边:253.8615875
    闭着眼的左眼中间:259.0527344
    闭着眼的左眼下边:267.1407471
    闭着眼的左眼上边与中间的值:5.191146900000007
    闭着眼的左眼下边与中间的值:8.088012699999979
    闭着眼的右眼上边:255.8417053
    闭着眼的右眼中间:262.2324219
    闭着眼的右眼下边:270.5016785
    闭着眼的右眼上边与中间的值:6.390716600000019
    闭着眼的右眼下边与中间的值:8.269256600000006
    闭着眼的左眼上边:245.0301208
    闭着眼的左眼中间:249.7537384
    闭着眼的左眼下边:258.8632812
    闭着眼的左眼上边与中间的值:4.723617600000011
    闭着眼的左眼下边与中间的值:9.109542800000014
    闭着眼的右眼上边:246.4424133
    闭着眼的右眼中间:252.6153107
    闭着眼的右眼下边:261.8199768
    闭着眼的右眼上边与中间的值:6.172897400000011
    闭着眼的右眼下边与中间的值:9.204666099999997
    闭着眼的左眼上边:248.2448273
    闭着眼的左眼中间:256.3608093
    闭着眼的左眼下边:267.0386963
    闭着眼的左眼上边与中间的值:8.115982000000031
    闭着眼的左眼下边与中间的值:10.677886999999998
    闭着眼的右眼上边:249.8387146
    闭着眼的右眼中间:259.5440979
    闭着眼的右眼下边:271.0603027
    闭着眼的右眼上边与中间的值:9.705383299999994
    闭着眼的右眼下边与中间的值:11.516204800000025
    闭着眼的左眼上边:246.5606842
    闭着眼的左眼中间:255.3595581
    闭着眼的左眼下边:267.4218445
    闭着眼的左眼上边与中间的值:8.79887389999999
    闭着眼的左眼下边与中间的值:12.062286400000033
    闭着眼的右眼上边:247.7977905
    闭着眼的右眼中间:258.5551453
    闭着眼的右眼下边:270.7169189
    闭着眼的右眼上边与中间的值:10.757354800000002
    闭着眼的右眼下边与中间的值:12.161773600000004

    ————————————————————————————————————————————————————————————————————————————————
    闭着眼的左眼上边:224.0862427
    闭着眼的左眼中间:229.5478973
    闭着眼的左眼下边:238.1327515
    闭着眼的左眼上边与中间的值:5.461654599999974
    闭着眼的左眼下边与中间的值:8.584854200000024
    闭着眼的右眼上边:228.3572998
    闭着眼的右眼中间:234.6605072
    闭着眼的右眼下边:243.0907745
    闭着眼的右眼上边与中间的值:6.303207400000019
    闭着眼的右眼下边与中间的值:8.430267299999997

    闭着眼的左眼上边:230.9443359
    闭着眼的左眼中间:234.3552856
    闭着眼的左眼下边:242.05513
    闭着眼的左眼上边与中间的值:3.4109497000000033
    闭着眼的左眼下边与中间的值:7.699844399999989
    闭着眼的右眼上边:223.4838867
    闭着眼的右眼中间:228.5411987
    闭着眼的右眼下边:235.5321198
    闭着眼的右眼上边与中间的值:5.057311999999996
    闭着眼的右眼下边与中间的值:6.990921100000008

    闭着眼的左眼上边:226.1715698
    闭着眼的左眼中间:231.822876
    闭着眼的左眼下边:240.557785
    闭着眼的左眼上边与中间的值:5.651306200000022
    闭着眼的左眼下边与中间的值:8.734908999999988
    闭着眼的右眼上边:224.5886536
    闭着眼的右眼中间:231.2098999
    闭着眼的右眼下边:239.3190002
    闭着眼的右眼上边与中间的值:6.621246300000024
    闭着眼的右眼下边与中间的值:8.109100299999994


    闭着眼的左眼上边:250.549469
    闭着眼的左眼中间:252.7034607
    闭着眼的左眼下边:258.3751831
    闭着眼的左眼上边与中间的值:2.153991700000006
    闭着眼的左眼下边与中间的值:5.6717224000000215
    闭着眼的右眼上边:248.886261
    闭着眼的右眼中间:251.9490204
    闭着眼的右眼下边:257.2275391
    闭着眼的右眼上边与中间的值:3.0627594000000045
    闭着眼的右眼下边与中间的值:5.2785187000000064

    闭着眼的左眼上边:236.7052612
    闭着眼的左眼中间:239.7859192
    闭着眼的左眼下边:245.471283
    闭着眼的左眼上边与中间的值:3.0806579999999997
    闭着眼的左眼下边与中间的值:5.685363800000005
    闭着眼的右眼上边:234.837738
    闭着眼的右眼中间:238.6846619
    闭着眼的右眼下边:244.2976685
    闭着眼的右眼上边与中间的值:3.8469239000000073
    闭着眼的右眼下边与中间的值:5.613006599999977

    闭着眼的左眼上边:245.0596619
    闭着眼的左眼中间:246.9369202
    闭着眼的左眼下边:252.2763367
    闭着眼的左眼上边与中间的值:1.877258299999994
    闭着眼的左眼下边与中间的值:5.339416499999999
    闭着眼的右眼上边:241.4249573
    闭着眼的右眼中间:244.3227234
    闭着眼的右眼下边:249.2035217
    闭着眼的右眼上边与中间的值:2.8977661000000126
    闭着眼的右眼下边与中间的值:4.880798300000009


    闭着眼的左眼上边与中间的值:2.843383799999998
    闭着眼的左眼下边与中间的值:6.379211400000003
    闭着眼的右眼上边与中间的值:3.6415863
    闭着眼的右眼下边与中间的值:5.569457999999997
    闭着眼的左眼上边与中间的值:7.1395263
    闭着眼的左眼下边与中间的值:8.606811599999986
    闭着眼的右眼上边与中间的值:7.101028499999984
    闭着眼的右眼下边与中间的值:7.526168800000022
    闭着眼的左眼上边与中间的值:4.141037000000011
    闭着眼的左眼下边与中间的值:7.363510200000007
    闭着眼的右眼上边与中间的值:4.587234499999994
    闭着眼的右眼下边与中间的值:6.540771500000034
    闭着眼的左眼上边与中间的值:2.4197997999999643
    闭着眼的左眼下边与中间的值:5.460693300000003
    闭着眼的右眼上边与中间的值:2.9811705999999845
    闭着眼的右眼下边与中间的值:4.65585329999999

    闭着眼:2 5,2 4
    睁着眼:5 9,7 8

    取值比较:
    左眼上边与中间的值 右眼上边与中间的值都>5

    左眼下边与中间的值 右眼下边与中间的值都>7

    嘴巴分析:

    —-闭着嘴巴:
    第一次的上嘴唇:361.1332397
    第一次的嘴唇中心:378.8190308
    第一次的下嘴唇:382.1697388

    上中:17
    下中:4

    第一次的上嘴唇:390.951355
    第一次的嘴唇中心:409.0862122
    第一次的下嘴唇:414.6711731

    上中:19
    下中:5

    第一次的上嘴唇:402.4402466
    第一次的嘴唇中心:417.4428406
    第一次的下嘴唇:419.6887207

    上中:15
    下中:2

    第一次的上嘴唇:403.1029358
    第一次的嘴唇中心:419.4420166
    第一次的下嘴唇:424.0343018

    上中:16
    下中:5

    第一次的上嘴唇:445.7279663
    第一次的嘴唇中心:455.8665161
    第一次的下嘴唇:457.3482971

    上中:10
    下中:2

    第二次的上嘴唇:454.5872192
    第二次的嘴唇中心:462.1132812
    第二次的下嘴唇:463.1278381

    上中:8
    下中:1

    第二次的上嘴唇:454.7166748
    第二次的嘴唇中心:461.9048462
    第二次的下嘴唇:461.8540649
    上中:7
    下中:0

    第二次的上嘴唇:461.6982422
    第二次的嘴唇中心:470.1062622
    第二次的下嘴唇:471.3254395

    上中:9
    下中:1

    第二次的上嘴唇:455.5452881
    第二次的嘴唇中心:463.6194763
    第二次的下嘴唇:465.0067139

    上中:8
    下中:2

    第二次的上嘴唇:449.9391479
    第二次的嘴唇中心:458.7083435
    第二次的下嘴唇:458.4034424

    上中:9
    下中:0

    第二次的上嘴唇:444.0313721
    第二次的嘴唇中心:455.9846802
    第二次的下嘴唇:457.5951538

    上中:11
    下中:2

    第二次的上嘴唇:448.1293945
    第二次的嘴唇中心:458.4747009
    第二次的下嘴唇:458.9746704

    上中:10
    下中:0

    张开嘴巴:
    第一次的上嘴唇:320.0419922
    第一次的嘴唇中心:368.8484802
    第一次的下嘴唇:404.5977173

    上中:48
    下中:36

    第一次的上嘴唇:319.4178467
    第一次的嘴唇中心:370.0383911
    第一次的下嘴唇:406.3190918
    上中:51
    下中:36

    第二次的上嘴唇:322.6508179
    第二次的嘴唇中心:370.2564087
    第二次的下嘴唇:403.9906616
    上中:48
    下中:33

    第二次的上嘴唇:321.2287598
    第二次的嘴唇中心:369.5926208
    第二次的下嘴唇:404.2380676
    上中:48
    下中:35

    第二次的上嘴唇:322.1592407
    第二次的嘴唇中心:370.3101501
    第二次的下嘴唇:404.1273499
    上中:48
    下中:34

    第二次的上嘴唇:322.6243896
    第二次的嘴唇中心:372.0572815
    第二次的下嘴唇:407.5487671

    第二次的上嘴唇:330.9266968
    第二次的嘴唇中心:348.0892944
    第二次的下嘴唇:348.8345947
    第二次的上嘴唇:328.5309448
    第二次的嘴唇中心:346.5620728
    第二次的下嘴唇:347.8430786
    第二次的上嘴唇:329.5420532
    第二次的嘴唇中心:348.2042847
    第二次的下嘴唇:349.2839661
    第二次的上嘴唇:325.2203674
    第二次的嘴唇中心:371.9185181
    第二次的下嘴唇:404.8588257
    第二次的上嘴唇:328.3738098
    第二次的嘴唇中心:347.7101135
    第二次的下嘴唇:350.8613892
    第二次的上嘴唇:322.8365784
    第二次的嘴唇中心:367.2938232
    第二次的下嘴唇:398.3100586

    private void face_eye(String img, HttpServletResponse response,
    HttpServletRequest request) {

        /*if (dataMap == null) {
            // 第一次请求
            landmark = face_jiance(img);
            dataMap.put(1, landmark);
        } else {*/
            // 不是第一次请求
            Landmark landmark_next = face_jiance(img);
            System.out.println("闭着眼的左眼上边与中间的值:"+((landmark_next.getLeft_eye_zhongxin().get(0))-(landmark_next.getLeft_eye_top().get(0))));
            System.out.println("闭着眼的左眼下边与中间的值:"+((landmark_next.getLeft_eye_bottom().get(0))-(landmark_next.getLeft_eye_zhongxin().get(0))));
    
            System.out.println("闭着眼的右眼上边与中间的值:"+((landmark_next.getRight_eye_zhongxin().get(0))-(landmark_next.getRight_eye_top().get(0))));
            System.out.println("闭着眼的右眼下边与中间的值:"+((landmark_next.getRight_eye_bottom().get(0))-(landmark_next.getRight_eye_zhongxin().get(0))));
    
    
            // 和前一次的数据进行比较
            /*Landmark landmark_pre = (Landmark) dataMap.get(1);
            //左眼和右眼的上边相对于中心进行对比
            if ((landmark_next.getLeft_eye_top().get(0) - landmark_next
                    .getLeft_eye_zhongxin().get(0)) > (landmark_pre
                    .getLeft_eye_top().get(0) - landmark_next
                    .getLeft_eye_zhongxin().get(0))
                    || (landmark_next.getRight_eye_top().get(0) - landmark_next
                            .getRight_eye_zhongxin().get(0)) > (landmark_pre
                            .getRight_eye_top().get(0) - landmark_next
                            .getRight_eye_zhongxin().get(0))) {
                //左眼和右眼的下边相对于中心进行对比
                if ((landmark_next.getLeft_eye_bottom().get(0) - landmark_next
                        .getLeft_eye_zhongxin().get(0)) > (landmark_pre
                        .getLeft_eye_bottom().get(0) - landmark_next
                        .getLeft_eye_zhongxin().get(0))
                        || (landmark_next.getRight_eye_bottom().get(0) - landmark_next
                                .getRight_eye_zhongxin().get(0)) > (landmark_pre
                                .getRight_eye_bottom().get(0) - landmark_next
                                .getRight_eye_zhongxin().get(0))) {
                }
            }
            dataMap.put(1, landmark_next); // 放进去 方便下次进行比较
    
        }*/
    
    }
    
  • 相关阅读:
    记录一次 Linux crontab 执行django 脚本 失败 的经历和解决办法
    python3 使用 django-xadmin 遇到的许多坑
    简要说明 django restframework 的交互式文档
    No application found. Either work inside a view function or push an application context.
    解决Docker容器内访问宿主机MySQL数据库服务器的问题
    《计算机网络自顶向下方法-第七版》第三章总结
    《计算机网络自顶向下方法-第七版》第七章总结
    《计算机网络自顶向下方法-第七版》第二章总结
    《计算机网络自顶向下方法-第七版》第一章总结
    深入理解Docker容器执行引擎runC
  • 原文地址:https://www.cnblogs.com/a1111/p/12816019.html
Copyright © 2011-2022 走看看