Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Amazon Rekognition Image dapat menganalisis citra yang disimpan dalam bucket Amazon S3 atau citra yang disediakan sebagai bit citra.
Dalam topik ini, Anda menggunakan operasi API DetectLabels untuk mendeteksi objek, konsep, dan adegan dalam citra (JPEG atau PNG) yang disimpan dalam bucket Amazon S3. Anda meneruskan gambar ke operasi Amazon Rekognition Image API dengan menggunakan parameter input Image. Di dalamnyaImage
, Anda menentukan properti objek S3Object untuk mereferensikan gambar yang disimpan dalam bucket S3. Bit citra untuk citra yang disimpan dalam bucket Amazon S3 tidak perlu dikodekan ke base64. Untuk informasi selengkapnya, lihat Spesifikasi citra.
Contoh Permintaan
Dalam contoh permintaan JSON ini untuk DetectLabels
, citra sumber (input.jpg
) dimuat dari bucket Amazon S3 bernama amzn-s3-demo-bucket
. Ingat bahwa wilayah untuk bucket S3 yang berisi objek S3 harus sesuai dengan wilayah yang Anda gunakan untuk operasi Amazon Rekognition Image.
{ "Image": { "S3Object": { "Bucket": "
amzn-s3-demo-bucket
", "Name": "input.jpg" } }, "MaxLabels": 10, "MinConfidence": 75 }
Contoh berikut menggunakan berbagai AWS SDKs dan AWS CLI untuk memanggilDetectLabels
. Untuk informasi tentang respons operasi DetectLabels
, lihat DetectLabels respon.
Untuk mendeteksi label dalam citra
Jika belum:
Buat atau perbarui pengguna dengan
AmazonRekognitionFullAccess
danAmazonS3ReadOnlyAccess
izin. Untuk informasi selengkapnya, lihat Langkah 1: Siapkan akun AWS dan buat Pengguna.Instal dan konfigurasikan AWS CLI dan AWS SDKs. Untuk informasi selengkapnya, lihat Langkah 2: Mengatur AWS CLI dan AWS SDKs. Pastikan bahwa Anda telah memberi pengguna yang memanggil operasi API izin yang tepat untuk akses terprogram, lihat Memberikan akses programatis petunjuk tentang cara melakukannya.
-
Unggah citra yang berisi satu atau beberapa objek—seperti pohon, rumah, dan perahu—ke bucket S3 Anda. Citra harus dalam format .jpg atau .png.
Untuk petunjuk, lihat Mengunggah Objek ke Amazon S3 di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.
-
Gunakan contoh berikut untuk memanggil operasi
DetectLabels
.Contoh ini menampilkan daftar label yang terdeteksi pada citra input. Ganti nilai-nilai
bucket
danphoto
dengan nama bucket Amazon S3 dan citra yang Anda gunakan di langkah 2.//Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved. //PDX-License-Identifier: MIT-0 (For details, see https://github.com/awsdocs/amazon-rekognition-developer-guide/blob/master/LICENSE-SAMPLECODE.) package com.amazonaws.samples; import com.amazonaws.services.rekognition.AmazonRekognition; import com.amazonaws.services.rekognition.AmazonRekognitionClientBuilder; import com.amazonaws.services.rekognition.model.AmazonRekognitionException; import com.amazonaws.services.rekognition.model.DetectLabelsRequest; import com.amazonaws.services.rekognition.model.DetectLabelsResult; import com.amazonaws.services.rekognition.model.Image; import com.amazonaws.services.rekognition.model.Label; import com.amazonaws.services.rekognition.model.S3Object; import java.util.List; public class DetectLabels { public static void main(String[] args) throws Exception { String photo = "input.jpg"; String bucket = "bucket"; AmazonRekognition rekognitionClient = AmazonRekognitionClientBuilder.defaultClient(); DetectLabelsRequest request = new DetectLabelsRequest() .withImage(new Image() .withS3Object(new S3Object() .withName(photo).withBucket(bucket))) .withMaxLabels(10) .withMinConfidence(75F); try { DetectLabelsResult result = rekognitionClient.detectLabels(request); List <Label> labels = result.getLabels(); System.out.println("Detected labels for " + photo); for (Label label: labels) { System.out.println(label.getName() + ": " + label.getConfidence().toString()); } } catch(AmazonRekognitionException e) { e.printStackTrace(); } } }
Contoh respons
Respons dari DetectLabels
adalah array label yang terdeteksi dalam citra dan tingkat kepercayaan yang mereka deteksi.
Ketika Anda melakukan operasi DetectLabels
pada citra, Amazon Rekognition mengembalikan output yang mirip dengan contoh respons berikut.
Respons menunjukkan bahwa operasi mendeteksi beberapa label termasuk Orang, Kendaraan, dan Mobil. Setiap label memiliki tingkat kepercayaan yang terkait. Misalnya, algoritme deteksi adalah 98.991432% kepercayaan bahwa citra berisi seseorang.
Respons juga mencakup label leluhur untuk label di array Parents
. Misalnya, label Otomobil memiliki dua label induk bernama Kendaraan dan Transportasi.
Respons untuk label objek umum mencakup informasi kotak pembatas untuk lokasi label pada citra input. Misalnya, label Orang memiliki array instans yang berisi dua kotak batas. Ini adalah lokasi dari dua orang yang terdeteksi dalam citra.
Bidang LabelModelVersion
berisi nomor versi model deteksi yang digunakan oleh DetectLabels
.
Untuk informasi selengkapnya tentang menggunakan operasi DetectLabels
, lihat Mendeteksi objek dan konsep.
{
{
"Labels": [
{
"Name": "Vehicle",
"Confidence": 99.15271759033203,
"Instances": [],
"Parents": [
{
"Name": "Transportation"
}
]
},
{
"Name": "Transportation",
"Confidence": 99.15271759033203,
"Instances": [],
"Parents": []
},
{
"Name": "Automobile",
"Confidence": 99.15271759033203,
"Instances": [],
"Parents": [
{
"Name": "Vehicle"
},
{
"Name": "Transportation"
}
]
},
{
"Name": "Car",
"Confidence": 99.15271759033203,
"Instances": [
{
"BoundingBox": {
"Width": 0.10616336017847061,
"Height": 0.18528179824352264,
"Left": 0.0037978808395564556,
"Top": 0.5039216876029968
},
"Confidence": 99.15271759033203
},
{
"BoundingBox": {
"Width": 0.2429988533258438,
"Height": 0.21577216684818268,
"Left": 0.7309805154800415,
"Top": 0.5251884460449219
},
"Confidence": 99.1286392211914
},
{
"BoundingBox": {
"Width": 0.14233611524105072,
"Height": 0.15528248250484467,
"Left": 0.6494812965393066,
"Top": 0.5333095788955688
},
"Confidence": 98.48368072509766
},
{
"BoundingBox": {
"Width": 0.11086395382881165,
"Height": 0.10271988064050674,
"Left": 0.10355594009160995,
"Top": 0.5354844927787781
},
"Confidence": 96.45606231689453
},
{
"BoundingBox": {
"Width": 0.06254628300666809,
"Height": 0.053911514580249786,
"Left": 0.46083059906959534,
"Top": 0.5573825240135193
},
"Confidence": 93.65448760986328
},
{
"BoundingBox": {
"Width": 0.10105438530445099,
"Height": 0.12226245552301407,
"Left": 0.5743985772132874,
"Top": 0.534368634223938
},
"Confidence": 93.06217193603516
},
{
"BoundingBox": {
"Width": 0.056389667093753815,
"Height": 0.17163699865341187,
"Left": 0.9427769780158997,
"Top": 0.5235804319381714
},
"Confidence": 92.6864013671875
},
{
"BoundingBox": {
"Width": 0.06003860384225845,
"Height": 0.06737709045410156,
"Left": 0.22409997880458832,
"Top": 0.5441341400146484
},
"Confidence": 90.4227066040039
},
{
"BoundingBox": {
"Width": 0.02848697081208229,
"Height": 0.19150497019290924,
"Left": 0.0,
"Top": 0.5107086896896362
},
"Confidence": 86.65286254882812
},
{
"BoundingBox": {
"Width": 0.04067881405353546,
"Height": 0.03428703173995018,
"Left": 0.316415935754776,
"Top": 0.5566273927688599
},
"Confidence": 85.36471557617188
},
{
"BoundingBox": {
"Width": 0.043411049991846085,
"Height": 0.0893595889210701,
"Left": 0.18293385207653046,
"Top": 0.5394920110702515
},
"Confidence": 82.21705627441406
},
{
"BoundingBox": {
"Width": 0.031183116137981415,
"Height": 0.03989990055561066,
"Left": 0.2853088080883026,
"Top": 0.5579366683959961
},
"Confidence": 81.0157470703125
},
{
"BoundingBox": {
"Width": 0.031113790348172188,
"Height": 0.056484755128622055,
"Left": 0.2580395042896271,
"Top": 0.5504819750785828
},
"Confidence": 56.13441467285156
},
{
"BoundingBox": {
"Width": 0.08586374670267105,
"Height": 0.08550430089235306,
"Left": 0.5128012895584106,
"Top": 0.5438792705535889
},
"Confidence": 52.37760925292969
}
],
"Parents": [
{
"Name": "Vehicle"
},
{
"Name": "Transportation"
}
]
},
{
"Name": "Human",
"Confidence": 98.9914321899414,
"Instances": [],
"Parents": []
},
{
"Name": "Person",
"Confidence": 98.9914321899414,
"Instances": [
{
"BoundingBox": {
"Width": 0.19360728561878204,
"Height": 0.2742200493812561,
"Left": 0.43734854459762573,
"Top": 0.35072067379951477
},
"Confidence": 98.9914321899414
},
{
"BoundingBox": {
"Width": 0.03801717236638069,
"Height": 0.06597328186035156,
"Left": 0.9155802130699158,
"Top": 0.5010883808135986
},
"Confidence": 85.02790832519531
}
],
"Parents": []
}
],
"LabelModelVersion": "2.0"
}
}