通用物体识别
检测图像中的通用对象主体,返回该对象主体的区域信息与置信度。支持识别300类物体,详情可参见本文中支持的目标识别实体列表。
适用场景
可应用于IPC图像检测、交通、安防等行业中图像场景的目标检测与跟踪。
支持的目标识别实体列表
| ID | 名称 | 
|---|---|
| accordion | 手风琴 | 
| airplane | 飞机 | 
| alligator | 鳄鱼 | 
| apple | 苹果 | 
| army_tank | 军队坦克 | 
| awning | 棚 | 
| backpack | 背包 | 
| ball | 球 | 
| balloon | 气球 | 
| banana | 香蕉 | 
| barrel | 桶 | 
| baseball | 棒球 | 
| baseball_bat | 棒球棒 | 
| baseball_glove | 棒球手套 | 
| basket | 篮子 | 
| bathtub | 浴缸 | 
| bear | 熊 | 
| bed | 床 | 
| bee | 蜜蜂 | 
| beer_bottle | 啤酒瓶 | 
| bell_pepper | 灯笼椒 | 
| belt | 腰带 | 
| bench | 长椅 | 
| bicycle | 自行车 | 
| billboard | 广告牌 | 
| bird | 鸟 | 
| blackboard | 黑板 | 
| boat | 船 | 
| book | 书 | 
| bookcase | 书柜 | 
| boot | 开机 | 
| bottle | 瓶子 | 
| bowl | 碗 | 
| bowling_ball | 保龄球 | 
| box | 盒子 | 
| bracelet | 手镯 | 
| brassiere | 乳罩 | 
| bread | 面包 | 
| broccoli | 西兰花 | 
| building | 建造 | 
| bus_(vehicle) | 公共汽车_(车辆) | 
| butterfly | 蝴蝶 | 
| cabinet | 内阁 | 
| cake | 蛋糕 | 
| camel | 骆驼 | 
| camera | 相机 | 
| can | 能够 | 
| candle | 蜡烛 | 
| candy_bar | 糖果条 | 
| cannon | 大炮 | 
| canoe | 独木舟 | 
| car_(automobile) | car_(汽车) | 
| carrot | 胡萝卜 | 
| cart | 大车 | 
| castle | 城堡 | 
| cat | 猫 | 
| caterpillar | 毛虫 | 
| cello | 大提琴 | 
| cellular_telephone | 蜂窝电话 | 
| chair | 椅子 | 
| chicken_(animal) | 鸡_(动物) | 
| chopping_board | 切菜板 | 
| chopstick | 筷子 | 
| christmas_tree | 圣诞树 | 
| clock | 钟 | 
| coat | 外套 | 
| cocktail | 鸡尾酒 | 
| coffee_table | 咖啡桌 | 
| coin | 硬币 | 
| computer_keyboard | 计算机键盘 | 
| computer_monitor | 电脑显示器 | 
| cone | 锥体 | 
| cookie | 曲奇饼 | 
| cow | 牛 | 
| cowboy_hat | 牛仔帽 | 
| crab_(animal) | 螃蟹_(动物) | 
| crown | 王冠 | 
| cucumber | 黄瓜 | 
| cup | 杯子 | 
| cupboard | 橱柜 | 
| curtain | 窗帘 | 
| deer | 鹿 | 
| desk | 桌子 | 
| dessert | 甜点 | 
| dinosaur | 恐龙 | 
| dog | 狗 | 
| doll | 玩具娃娃 | 
| dolphin | 海豚 | 
| door | 门 | 
| doorknob | 门把手 | 
| doughnut | 甜甜圈 | 
| dragonfly | 蜻蜓 | 
| drawer | 抽屉 | 
| dress | 裙子 | 
| drum_(musical_instrument) | 鼓_(音乐乐器) | 
| duck | 鸭 | 
| duffel_bag | 行李袋 | 
| eagle | 鹰 | 
| earring | 耳环 | 
| egg | 蛋 | 
| elephant | 大象 | 
| fan | 扇子 | 
| faucet | 龙头 | 
| fireplace | 壁炉 | 
| fireplug | 火塞 | 
| fish | 鱼 | 
| flag | 旗帜 | 
| flower_arrangement | 插花 | 
| flowerpot | 花盆 | 
| football_helmet | 足球头盔 | 
| fork | 叉 | 
| fountain | 喷泉 | 
| french_fries | 炸薯条 | 
| frisbee | 飞盘 | 
| frog | 青蛙 | 
| fruit | 水果 | 
| fruit_juice | 果汁 | 
| frying_pan | 平底锅 | 
| gazelle | 羚羊 | 
| giraffe | 长颈鹿 | 
| glass_(drink_container) | 玻璃_(饮料容器) | 
| glove | 手套 | 
| goat | 山羊 | 
| goggles | 风镜 | 
| goose | 鹅 | 
| grape | 葡萄 | 
| guitar | 吉他 | 
| gun | 枪 | 
| hamburger | 汉堡包 | 
| hamster | 仓鼠 | 
| handbag | 手提包 | 
| handle | 处理 | 
| harbor_seal | 港口密封 | 
| hat | 帽子 | 
| headset | 耳机 | 
| helicopter | 直升机 | 
| helmet | 头盔 | 
| high_heels | 高跟鞋 | 
| hog | 猪 | 
| horse | 马 | 
| house | 屋 | 
| icecream | 冰淇淋 | 
| insect | 昆虫 | 
| jacket | 夹克 | 
| jaguar | 捷豹 | 
| jean | 牛仔布 | 
| jellyfish | 海蜇 | 
| kitchen_table | 厨房的桌子 | 
| kite | 风筝 | 
| knife | 刀 | 
| ladder | 梯子 | 
| lamp | 灯 | 
| lantern | 灯笼 | 
| laptop_computer | 笔记本电脑 | 
| lavender | 薰衣草 | 
| lemon | 柠檬 | 
| lettuce | 莴苣 | 
| license_plate | 车牌 | 
| life_jacket | 救生衣 | 
| lightbulb | 灯泡 | 
| lighthouse | 灯塔 | 
| lily | 百合 | 
| lion | 狮子 | 
| lizard | 蜥蜴 | 
| maple | 枫 | 
| mask | 面具 | 
| microphone | 麦克风 | 
| microwave_oven | 微波炉 | 
| minivan | 小型货车 | 
| mirror | 镜子 | 
| monkey | 猴 | 
| motorcycle | 摩托车 | 
| mouse_(computer_equipment) | 鼠标_(计算机设备) | 
| muffin | 松饼 | 
| mug | 马克杯 | 
| mushroom | 蘑菇 | 
| musical_instrument | 乐器 | 
| napkin | 餐巾 | 
| necklace | 项链 | 
| necktie | 领带 | 
| nightstand | 床头柜 | 
| onion | 洋葱 | 
| orange_(fruit) | 橙子_(水果) | 
| oven | 烤箱 | 
| owl | 猫头鹰 | 
| paddle | 桨 | 
| painting | 绘画 | 
| palm_tree | 棕榈树 | 
| parachute | 降落伞 | 
| parking_meter | 停车收费表 | 
| parrot | 鹦鹉 | 
| pasta | 意大利面 | 
| pastry | 糕点 | 
| pen | 笔 | 
| penguin | 企鹅 | 
| person | 人 | 
| piano | 钢琴 | 
| pillow | 枕头 | 
| pizza | 比萨 | 
| plastic_bag | 塑料袋 | 
| plate | 盘子 | 
| polar_bear | 北极熊 | 
| pool_table | 池表 | 
| porch | 门廊 | 
| poster | 海报 | 
| potted_plant | 盆栽植物 | 
| pumpkin | 南瓜 | 
| rabbit | 兔子 | 
| refrigerator | 冰箱 | 
| remote_control | 遥控 | 
| ring | 戒指 | 
| roller_skate | 溜冰鞋 | 
| rose | 玫瑰 | 
| salad | 沙拉 | 
| sandal_(type_of_shoe) | 凉鞋 | 
| sandwich | 三明治 | 
| saucer | 碟子 | 
| saxophone | 萨克斯管 | 
| scarf | 围巾 | 
| scissors | 剪刀 | 
| sculpture | 雕塑 | 
| sheep | 羊 | 
| shirt | 衬衫 | 
| shoe | 鞋 | 
| short_pants | 短裤 | 
| shrimp | 虾 | 
| sink | 下沉 | 
| skateboard | 滑板 | 
| ski | 滑雪 | 
| skirt | 短裙 | 
| skullcap | 黄芩 | 
| snake | 蛇 | 
| snowboard | 滑雪板 | 
| soccer_ball | 足球 | 
| sock | 短袜 | 
| sofa | 沙发 | 
| sofa_bed | 沙发床 | 
| sparrow | 麻雀 | 
| speaker_(stero_equipment) | 扬声器_(音响设备) | 
| spectacles | 眼镜 | 
| spider | 蜘蛛 | 
| spoon | 勺子 | 
| sportswear | 运动服 | 
| squirrel | 松鼠 | 
| stool | 凳子 | 
| stop_sign | 停止标志 | 
| stove | 火炉 | 
| straw_(for_drinking) | 稻草_(喝) | 
| strawberry | 草莓 | 
| street_sign | 街道路标 | 
| streetlight | 路灯 | 
| suit_(clothing) | 套装_(服装) | 
| suitcase | 手提箱 | 
| sunflower | 向日葵 | 
| sunglasses | 太阳镜 | 
| sunhat | 太阳帽 | 
| surfboard | 冲浪板 | 
| sushi | 寿司 | 
| swimming_pool | 游泳池 | 
| swimsuit | 泳装 | 
| table | 桌子 | 
| tablet_computer | 平板电脑 | 
| taxi | 出租车 | 
| teddy_bear | 玩具熊 | 
| telephone | 电话 | 
| television_set | 电视机 | 
| tennis_ball | 网球 | 
| tennis_racket | 网球拍 | 
| tent | 帐篷 | 
| tiger | 老虎 | 
| toilet | 洗手间 | 
| toilet_tissue | 卫生纸 | 
| tomato | 番茄 | 
| toothbrush | 牙刷 | 
| towel | 毛巾 | 
| tower | 塔 | 
| toy | 玩具 | 
| traffic_light | 红绿灯 | 
| train_(railroad_vehicle) | 火车_(铁路_车辆) | 
| trash_can | 垃圾箱 | 
| tray | 托盘 | 
| tree | 树 | 
| tripod | 三脚架 | 
| trousers | 裤子 | 
| truck | 卡车 | 
| trumpet | 喇叭 | 
| turtle | 龟 | 
| umbrella | 伞 | 
| vase | 花瓶 | 
| vegetables | 蔬菜 | 
| violin | 小提琴 | 
| wall_socket | 墙上的插座 | 
| watch | 手表 | 
| water_jug | 水壶 | 
| whale | 鲸 | 
| wheel | 车轮 | 
| wheelchair | 轮椅 | 
| window | 窗户 | 
| wineglass | 红酒杯 | 
| zebra | 斑马 | 
API参数说明
- 
HTTP 方法:
POST - 
Body 请求参数
 
| 名称 | 类型 | 是否必选 | 说明 | 
|---|---|---|---|
| url | String | 与 img 参数二选一 | 图像的 URL 地址。支持 HTTP/HTTPS 和 S3 协议。要求图像格式为 jpg/jpeg/png/bmp ,最长边不超过 4096px。 | 
| img | String | 与 url 参数二选一 | 进行 Base64 编码的图像数据 | 
- 请求 Body 示例
 
{
"url": "图像的URL地址"
}
{
"img": "Base64编码的图像数据"
}
- 返回参数
 
| 名称 | 类型 | 说明 | 
|---|---|---|
| Labels | List | 图像中找到的目标列表 | 
| Name | String | 目标类别名 | 
| Instances | List | 类别实例列表 | 
| BoundingBox | JSON | 实例在图像中的的坐标值,包含top,left,width,height相对全画面的百分比 | 
| Confidence | Float | 实例的置信度,0-100 | 
| Confidence | Int | 当前类别实例置信度的最大值 | 
| LabelModelVersion | String | 当前模型版本号 | 
- 返回示例
 
{
    "Labels": [
        {
            "Name": "car_(automobile)", 
            "Confidence": 67.87780523300171, 
            "Instances": [
                {
                    "BoundingBox": {
                        "Width": 1.0013043403596384, 
                        "Height": 0.9958885181613408, 
                        "Left": -0.00021715163893532008, 
                        "Top": 0.00033918747441136817
                    }, 
                    "Confidence": 67.87780523300171
                }
            ]
        }, 
        {
            "Name": "mirror", 
            "Confidence": 59.2678964138031, 
            "Instances": [
                {
                    "BoundingBox": {
                        "Width": 0.14041614532470703, 
                        "Height": 0.29166373257057565, 
                        "Left": 0.2743588984012604, 
                        "Top": 0.2794425819140053
                    }, 
                    "Confidence": 59.2678964138031
                }
            ]
        }, 
        {
            "Name": "window", 
            "Confidence": 16.396354138851166, 
            "Instances": [
                {
                    "BoundingBox": {
                        "Width": 0.44319993257522583, 
                        "Height": 0.6673663154702585, 
                        "Left": 0.5509995222091675, 
                        "Top": 0.015529238811174562
                    }, 
                    "Confidence": 16.396354138851166
                }
            ]
        }
    ], 
    "LabelModelVersion": "1.2.0"
}
开始使用
API资源浏览器
前提条件
通过AWS CloudFormation部署解决方案时,您需要:
- 设置参数API Explorer为yes。
 - 设置参数API Gateway Authorization为NONE。
 
否则,在API资源浏览器中只能看到该API的参考定义,而不能进行在线测试等操作。
操作步骤
- 访问AWS CloudFormation控制台。
 - 
从堆栈列表中选择方案的根堆栈,而不是嵌套堆栈。列表中嵌套堆栈的名称旁边会显示嵌套(NESTED)。

 - 
打开输出(Outputs)标签页,找到APIExplorer对应的URL。
 - 
点击URL访问API资源浏览器。页面将显示在部署解决方案时选中的API。

 - 
点击API右侧的向下箭头,展开显示API标准模型的请求方法。
 - 点击右侧的测试(Try it out)按钮,并在Request body中输入正确的Body请求数据进行测试,并查看测试结果。
 - 确认格式正确后,点击下方的Execute。
 - 在Responses body中查看返回的JSON结果。您还可以通过右侧复制或下载按钮保存处理结果。
 - 在Response headers中查看响应头的相关信息。
 - (可选)点击Execute右侧Clear按钮,即可清空Request body与Responses测试结果。
 
Postman(AWS_IAM认证)
- 访问AWS CloudFormation控制台。
 - 从堆栈列表中选择方案的根堆栈。
 - 打开输出标签页,找到以 ObjectRecognition 为前缀的URL。
 - 
在Postman中新建标签页,并把URL粘贴到地址栏,选择POST作为HTTP调用方法。

 - 
打开Authorization配置,在下拉列表里选择Amazon Web Service Signature,并填写对应账户的AccessKey、SecretKey和Amazon Web Service Region(例如,cn-north-1或cn-northwest-1)。

 - 
打开Body配置项,选中raw和JSON数据类型。
 - 
在Body中输入测试数据,单击Send按钮即可看到相应返回结果。
 
{
  "url": "图像的URL地址"
}

cURL
- Windows
 
curl --location --request POST "https://[API_ID].execute-api.[AWS_REGION].amazonaws.com/[STAGE]/object_recognition" ^
--header "Content-Type: application/json" ^
--data-raw "{\"url\": \"图像的URL地址\"}"
- Linux/MacOS
 
curl --location --request POST 'https://[API_ID].execute-api.[AWS_REGION].amazonaws.com/[STAGE]/object_recognition' \
--header 'Content-Type: application/json' \
--data-raw '{
  "url":"图像的URL地址"
}'
Python(AWS_IAM认证)
import requests
import json
from aws_requests_auth.boto_utils import BotoAWSRequestsAuth
auth = BotoAWSRequestsAuth(aws_host='[API_ID].execute-api.[AWS_REGION].amazonaws.com',
                           aws_region='[AWS_REGION]',
                           aws_service='execute-api')
url = 'https://[API_ID].execute-api.[AWS_REGION].amazonaws.com/[STAGE]/object_recognition'
payload = {
    'url': '图像的URL地址'
}
response = requests.request("POST", url, data=json.dumps(payload), auth=auth)
print(json.loads(response.text))
Python(NONE认证)
import requests
import json
url = "https://[API_ID].execute-api.[AWS_REGION].amazonaws.com/[STAGE]/object_recognition"
payload = json.dumps({
  "url": "图像的URL地址"
})
headers = {
  'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
Java
OkHttpClient client = new OkHttpClient().newBuilder()
  .build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\n  \"url\":\"图像的URL地址\"\n}");
Request request = new Request.Builder()
  .url("https://xxxxxxxxxxx.execute-api.xxxxxxxxx.amazonaws.com/[STAGE]/object_recognition")
  .method("POST", body)
  .addHeader("Content-Type", "application/json")
  .build();
Response response = client.newCall(request).execute();
成本预估
您需要承担运行解决方案时使用亚马逊云科技各个服务的成本费用。截至这次发布的版本,影响解决方案的成本因素主要包括:
- Amazon API Gateway调用次数
 - Amazon API Gateway数据输出量
 - Amazon CloudWatch Logs存储量
 - Amazon Elastic Container Registry存储量
 
如果您选择基于Amazon Lambda架构部署,影响成本的因素还包括:
- Amazon Lambda调用次数
 - Amazon Lambda运行时间
 
与之对应的Amazon SageMaker架构部署,影响成本的因素还包括:
- Amazon SageMaker终端节点实例类型
 - Amazon SageMaker终端节点数据输入量
 - Amazon SageMaker终端节点数据输出量
 
成本预估示例1
以由西云数据运营的亚马逊云科技中国(宁夏)区域(cn-northwest-1)为例,处理1MB图像,处理时间1秒
使用本方案处理此图像所需的成本费用如下表所示:
| 服务 | 用量 | 费用 | 
|---|---|---|
| AWS Lambda | 调用百万次 | ¥1.36 | 
| AWS Lambda | 内存10240MB,每次运行1秒 | ¥1134.8 | 
| Amazon API Gateway | 调用百万次 | ¥28.94 | 
| Amazon API Gateway | 数据输出以每次10KB计算,¥0.933/GB | ¥9.33 | 
| Amazon CloudWatch Logs | 每次10KB,¥6.228/GB | ¥62.28 | 
| Amazon Elastic Container Registry | 0.5GB存储,每月每GB¥0.69 | ¥0.35 | 
| 合计 | ¥1237.06 | 
成本预估示例2
以美国东部(俄亥俄州)区域(us-east-2)为例,处理1MB图像,处理时间1秒
使用本方案处理此图像所需的成本费用如下表所示:
| 服务 | 用量 | 费用 | 
|---|---|---|
| AWS Lambda | 调用百万次 | $0.20 | 
| AWS Lambda | 内存10240MB,每次运行1秒 | $166.7 | 
| Amazon API Gateway | 调用百万次 | $3.5 | 
| Amazon API Gateway | 数据输出以每次10KB计算,$0.09/GB | $0.9 | 
| Amazon CloudWatch Logs | 每次10KB,$0.50/GB | $5 | 
| Amazon Elastic Container Registry | 0.5GB存储,每月每GB$0.1 | $0.05 | 
| 合计 | $176.35 | 
卸载部署
您可以通过AWS CloudFormation卸载 通用物体识别 功能,具体步骤请见部署解决方案:更新AWS CloudFormation堆栈(添加或删除AI功能),并在参数部分确认 ObjectRecognition 参数设置为no。
卸载时间:10 分钟