aws rekognition print boundingbox

时间:2018-04-30 00:31:18

标签: python amazon-web-services aws-sdk amazon-rekognition

我正在尝试从boundingbox打印出内容,问题是,如果图像有两个或更多面孔,作业将返回两个或更多个边界框,那么我将如何将其打印出来?

我试着写一个循环来读取str'BingingBox'并打印,但它只返回第一个boundingbox两次。有谁能请给我一些想法?谢谢

dist

格式为:

i=0
for bBox in response:
    print('found face at...')
    bBox = response['FaceDetails'][i]['BoundingBox']
    print("BoundingBox: ({}%)".format(bBox['Width']))
    print("BoundingBox: ({}%)".format(bBox['Height']))
    print("BoundingBox: ({}%)".format(bBox['Left']))
    print("BoundingBox: ({}%)".format(bBox['Top']))
    i+=i

以下是它的回报:

{'FaceDetails': [
{
'BoundingBox': 
    {'Width': 0.49861112236976624, 'Height': 0.2796874940395355, 'Left': 0.43611112236976624, 'Top': 0.27656251192092896}, 
'Landmarks': [
    {'Type': 'eyeLeft', 'X': 0.6100848913192749, 'Y': 0.394705593585968}, 
    {'Type': 'eyeRight', 'X': 0.7668542861938477, 'Y': 0.4047696590423584}, 
    {'Type': 'nose', 'X': 0.6669187545776367, 'Y': 0.45966070890426636}, 
    {'Type': 'mouthLeft', 'X': 0.5887312293052673, 'Y': 0.4715222418308258}, 
    {'Type': 'mouthRight', 'X': 0.7437177896499634, 'Y': 0.4851195216178894}
        ], 
'Pose': 
    {'Roll': 6.393648624420166, 'Yaw': -2.539684772491455, 'Pitch': -15.155187606811523}, 
'Quality': 
    {'Brightness': 48.02949905395508, 'Sharpness': 99.99090576171875}, 
'Confidence': 99.99468994140625}, 

{
'BoundingBox': 
    {'Width': 0.3791666626930237, 'Height': 0.21328124403953552, 'Left': 0.12638889253139496, 'Top': 0.29765623807907104}, 
'Landmarks': [
    {'Type': 'eyeLeft', 'X': 0.26656731963157654, 'Y': 0.3757162392139435}, 
    {'Type': 'eyeRight', 'X': 0.4015311002731323, 'Y': 0.39424583315849304}, 
    {'Type': 'nose', 'X': 0.31936877965927124, 'Y': 0.4345789849758148}, 
    {'Type': 'mouthLeft', 'X': 0.2394552081823349, 'Y': 0.4479488432407379}, 
    {'Type': 'mouthRight', 'X': 0.3651302456855774, 'Y': 0.4635950028896332}
        ], 
'Pose': 
    {'Roll': 13.218778610229492, 'Yaw': 5.575412273406982, 'Pitch': -11.283287048339844}, 
'Quality': 
    {'Brightness': 50.93876647949219, 'Sharpness': 99.98487854003906}, 
'Confidence': 99.99580383300781}
], 
'ResponseMetadata': 
{
    'RequestId': '24170e12-4c08-11e8-92d8-4be404513e1e', 
    'HTTPStatusCode': 200, 
    'HTTPHeaders': 
        {
        'content-type': 'application/x-amz-json-1.1', 
        'date': 'Sun, 29 Apr 2018 23:50:48 GMT', 
        'x-amzn-requestid': '24170e12-4c08-11e8-92d8-4be404513e1e', 
        'content-length': '1340', 'connection': 'keep-alive'
        }, 
'RetryAttempts': 0
}
}

1 个答案:

答案 0 :(得分:0)

Face found at...
Width 0.49861112237
Top 0.276562511921
Left 0.43611112237
Height 0.27968749404
Face found at...
Width 0.379166662693
Top 0.297656238079
Left 0.126388892531
Height 0.21328124404

返回:

E/AndroidRuntime: FATAL EXCEPTION: main
                  Process: com.murach.criminalintent, PID: 13516
                  java.lang.RuntimeException: Unable to start activity ComponentInfo{com.murach.criminalintent/com.murach.criminalintent.CrimeListActivity}: android.view.InflateException: Binary XML file line #2: Error inflating class android.support..v7.widget.RecyclerView
                      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3120)
                      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3219)
                      at android.app.ActivityThread.access$1000(ActivityThread.java:198)
                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1676)
                      at android.os.Handler.dispatchMessage(Handler.java:102)
                      at android.os.Looper.loop(Looper.java:145)
                      at android.app.ActivityThread.main(ActivityThread.java:6838)
                      at java.lang.reflect.Method.invoke(Native Method)
                      at java.lang.reflect.Method.invoke(Method.java:372)
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404)
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199)
                   Caused by: android.view.InflateException: Binary XML file line #2: Error inflating class android.support..v7.widget.RecyclerView
                      at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:764)
                      at android.view.LayoutInflater.inflate(LayoutInflater.java:483)
                      at android.view.LayoutInflater.inflate(LayoutInflater.java:415)
                      at com.murach.criminalintent.CrimeListFragment.onCreateView(CrimeListFragment.java:25)
                      at android.support.v4.app.Fragment.performCreateView(Fragment.java:2346)
                      at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1428)
                      at android.support.v4.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1759)
                      at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1827)
                      at android.support.v4.app.BackStackRecord.executeOps(BackStackRecord.java:797)
                      at android.support.v4.app.FragmentManagerImpl.executeOps(FragmentManager.java:2596)
                      at android.support.v4.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2383)
                      at android.support.v4.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManager.java:2338)
                      at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:2245)
                      at android.support.v4.app.FragmentManagerImpl.dispatchStateChange(FragmentManager.java:3248)
                      at android.support.v4.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManager.java:3200)
                      at android.support.v4.app.FragmentController.dispatchActivityCreated(FragmentController.java:195)
                      at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:597)
                      at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1250)
                      at android.app.Activity.performStart(Activity.java:6573)
                      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3083)
                      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3219) 
                      at android.app.ActivityThread.access$1000(ActivityThread.java:198) 
                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1676) 
                      at android.os.Handler.dispatchMessage(Handler.java:102) 
                      at android.os.Looper.loop(Looper.java:145) 
                      at android.app.ActivityThread.main(ActivityThread.java:6838) 
                      at java.lang.reflect.Method.invoke(Native Method) 
                      at java.lang.reflect.Method.invoke(Method.java:372) 
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404) 
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199) 
                   Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support..v7.widget.RecyclerView" on path: DexPathList[[zip file "/data/app/com.murach.criminalintent-2/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
                      at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
                      at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
                      at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
                      at android.view.LayoutInflater.createView(LayoutInflater.java:578)
                      at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:750)
                      at android.view.LayoutInflater.inflate(LayoutInflater.java:483) 
                      at android.view.LayoutInflater.inflate(LayoutInflater.java:415) 
                      at com.murach.criminalintent.CrimeListFragment.onCreateView(CrimeListFragment.java:25) 
                      at android.support.v4.app.Fragment.performCreateView(Fragment.java:2346) 
                      at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1428) 
                      at android.support.v4.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1759) 
                      at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1827) 
                      at android.support.v4.app.BackStackRecord.executeOps(BackStackRecord.java:797) 
                      at android.support.v4.app.FragmentManagerImpl.executeOps(FragmentManager.java:2596) 
                      at android.support.v4.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2383) 
                      at android.support.v4.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManager.java:2338) 
                      at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:2245) 
                      at android.support.v4.app.FragmentManagerImpl.dispatchStateChange(FragmentManager.java:3248) 
                      at android.support.v4.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManager.java:3200) 
                      at android.support.v4.app.FragmentController.dispatchActivityCreated(FragmentController.java:195) 
                      at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:597) 
                      at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1250) 
                      at android.app.Activity.performStart(Activity.java:6573) 
                      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3083) 
                      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3219) 
                      at android.app.ActivityThread.access$1000(ActivityThread.java:198) 
                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1676) 
                      at android.os.Handler.dispatchMessage(Handler.java:102) 
                      at android.os.Looper.loop(Looper.java:145) 
                      at android.app.ActivityThread.main(ActivityThread.java:6838) 
                      at java.lang.reflect.Method.invoke(Native Method) 
                      at java.lang.reflect.Method.invoke(Method.java:372) 
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404) 
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199) 
                    Suppressed: java.lang.ClassNotFoundException: Invalid name: android.support..v7.widget.RecyclerView
                      at java.lang.Class.classForName(Native Method)
                      at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
                      at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
                      at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
                            ... 32 more