AWS识别人脸API:从人脸切出牙齿部分嘴

问题描述

我要根据从AWS识别人脸API接收到的x,y坐标从人脸中修剪牙齿部分(嘴)

代码正在起作用,并像这样修剪牙齿部分

enter image description here

但是我只需要修剪牙齿部分。

  1. AWS识别API图像响应

    [data]="eventLogs$ | async"
    
    1. 使用gm ImageMagick库进行裁剪的Node Js代码
     [
       {
         "BoundingBox": {
           "Width": 0.4604368805885315,"Height": 0.7760819792747498,"Left": 0.28602713346481323,"Top": 0.07381705939769745
         },"AgeRange": {
           "Low": 48,"High": 66
         },"Smile": {
           "Value": true,"Confidence": 99.91497802734375
         },"Eyeglasses": {
           "Value": false,"Confidence": 98.94174194335938
         },"Sunglasses": {
           "Value": false,"Confidence": 99.84471130371094
         },"Gender": {
           "Value": "Male","Confidence": 99.57334899902344
         },"Beard": {
           "Value": false,"Confidence": 73.63420867919922
         },"Mustache": {
           "Value": false,"Confidence": 96.08769226074219
         },"EyesOpen": {
           "Value": true,"Confidence": 98.94685363769531
         },"MouthOpen": {
           "Value": true,"Confidence": 99.7721939086914
         },"Emotions": [
           {
             "Type": "HAPPY","Confidence": 99.75701904296875
           },{
             "Type": "SURPRISED","Confidence": 0.10713297128677368
           },{
             "Type": "CONFUSED","Confidence": 0.056786004453897476
           },{
             "Type": "CALM","Confidence": 0.02734198607504368
           },{
             "Type": "angrY","Confidence": 0.020567195490002632
           },{
             "Type": "disGUSTED","Confidence": 0.01198340579867363
           },{
             "Type": "SAD","Confidence": 0.011844608001410961
           },{
             "Type": "FEAR","Confidence": 0.007329543586820364
           }
         ],"Landmarks": [
           {
             "Type": "eyeLeft","X": 0.4020455777645111,"Y": 0.3627050220966339
           },{
             "Type": "eyeRight","X": 0.6262026429176331,"Y": 0.379489928483963
           },{
             "Type": "mouthLeft","X": 0.40419745445251465,"Y": 0.6104526519775391
           },{
             "Type": "mouthRight","X": 0.5907381772994995,"Y": 0.6247860193252563
           },{
             "Type": "nose","X": 0.49532997608184814,"Y": 0.48828810453414917
           },{
             "Type": "leftEyebrowLeft","X": 0.32399997115135193,"Y": 0.3045051097869873
           },{
             "Type": "leftEyebrowRight","X": 0.38662829995155334,"Y": 0.27300384640693665
           },{
             "Type": "leftEyebrowUp","X": 0.4492948651313782,"Y": 0.2880849540233612
           },{
             "Type": "rightEyebrowLeft","X": 0.578127920627594,"Y": 0.29742100834846497
           },{
             "Type": "rightEyebrowRight","X": 0.6459962725639343,"Y": 0.29183030128479004
           },{
             "Type": "rightEyebrowUp","X": 0.7144292593002319,"Y": 0.3330812454223633
           },{
             "Type": "leftEyeLeft","X": 0.3629233241081238,"Y": 0.3603385388851166
           },{
             "Type": "leftEyeRight","X": 0.4457237124443054,"Y": 0.36826738715171814
           },{
             "Type": "leftEyeUp","X": 0.4013364613056183,"Y": 0.3494759500026703
           },{
             "Type": "leftEyeDown","X": 0.40179359912872314,"Y": 0.37347349524497986
           },{
             "Type": "rightEyeLeft","X": 0.5811655521392822,"Y": 0.3783351182937622
           },{
             "Type": "rightEyeRight","X": 0.6668664813041687,"Y": 0.38298410177230835
           },{
             "Type": "rightEyeUp","X": 0.6265660524368286,"Y": 0.36624279618263245
           },{
             "Type": "rightEyeDown","X": 0.6238686442375183,"Y": 0.39007559418678284
           },{
             "Type": "noseLeft","X": 0.4562915861606598,"Y": 0.5203639268875122
           },{
             "Type": "noseRight","X": 0.5394821166992188,"Y": 0.5265129804611206
           },{
             "Type": "mouthUp","X": 0.4932428300380707,"Y": 0.5806143283843994
           },{
             "Type": "mouthDown","X": 0.48947831988334656,"Y": 0.6564671397209167
           },{
             "Type": "leftPupil",{
             "Type": "rightPupil",{
             "Type": "upperJawlineLeft","X": 0.28082960844039917,"Y": 0.37847602367401123
           },{
             "Type": "midJawlineLeft","X": 0.3077985942363739,"Y": 0.6443988680839539
           },{
             "Type": "chinBottom","X": 0.48529136180877686,"Y": 0.7894702553749084
           },{
             "Type": "midJawlineRight","X": 0.7061411738395691,"Y": 0.6732134819030762
           },{
             "Type": "upperJawlineRight","X": 0.77140212059021,"Y": 0.4138971269130707
           }
         ],"Pose": {
           "Roll": 3.0064163208007812,"Yaw": -2.569990634918213,"Pitch": 8.883845329284668
         },"Quality": {
           "Brightness": 76.55046844482422,"Sharpness": 94.08262634277344
         },"Confidence": 99.99818420410156
       }
     ]
    

原始图片

enter image description here

解决方法

您对口坐标的计算似乎是正确的。

但是,我看到您正在使用:

.crop(width,height,xPoint,yPoint,true) 

正如您所说,这“不是百分比,而是参数。”

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...