我正在尝试从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
}
}
答案 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