调用阿里云智能云实现垃圾分类

1. 作者介绍

孙作正,男,西安工程大学电子信息学院,2023级研究生
研究方向:机器视觉与人工智能
电子邮件:2455789378@qq.com

陈俐如,女,西安工程大学电子信息学院,2023级研究生,张宏伟人工智能课题组
研究方向:机器视觉与人工智能
电子邮件:2313987364@qq.com

2. API

API(Application Programming Interface),即应用程序编程接口,是一组定义了软件组件之间交互方式的规范。简单来说,它是一种允许不同软件系统之间相互通信和交换数据的方式。API可以让开发者利用已有的功能来构建新的应用程序,而不必从头开始编写所有代码。API可以用于多种用途,包括:数据访问:允许应用程序通过API访问另一个应用程序或服务的数据,例如社交媒体平台的API允许开发者访问用户的信息或发布内容。功能扩展:允许开发者利用另一个软件或服务的功能来扩展自己的应用程序,例如地图服务提供的API可以让开发者在自己的应用中集成地图功能。集成:允许不同软件系统之间实现集成,使它们可以共同工作,例如电子商务网站可以通过支付网关的API接受信用卡支付。

3. 阿里云API垃圾分类业务

阿里云视觉智能开放平台(Vision Intelligent Application Programming Interface Platform)简称视觉智能平台,是基于阿里巴巴视觉智能技术实践经验,面向视觉智能技术企业和开发商(含开发者),为其提供高易用、普惠的视觉API服务,帮助企业快速建立视觉智能技术应用能力的综合性视觉AI能力平台。具体方向包括:生成专区、人脸人体、文字识别、商品理解、内容审核、图像识别、图像生产、分割抠图、视觉搜索、图像分析处理、目标检测、视频理解、视频生产、视频分割共14个类目,上百项AI能力供使用。

4. 实验过程

4.1 接入阿里云

打开阿里云视觉智能开放平台并在搜索框中输入“垃圾分类”
购买垃圾分类api链接
在这里插入图片描述
选择立即开通
在这里插入图片描述
在这里插入图片描述

4.2 创建并获取AccessKey ID和Secret

在这里插入图片描述
创建新的AccessKey ID和Secret
在这里插入图片描述

4.3 登录阿里云官网,搜索垃圾分类技术文档

链接: https://help.aliyun.com/zh/viapi/use-cases/garbage-classification-1?spm=a2c4g.11186623.0.0.64446df4Sc0UzE
在这里插入图片描述

4.4 配置环境变量

右击桌面此电脑<属性<高级系统设置
在这里插入图片描述
高级<环境变量
在这里插入图片描述
新建
在这里插入图片描述
创建分别为ALIBABA_CLOUD_ACCESS_KEY_ID和ALIBABA_CLOUD_ACCESS_KEY_SECRET的环境变量,分别填入4.2节中创建的AccessKey ID和Secret
在这里插入图片描述

4.5 代码部分

在示例代码中选择python版本
在这里插入图片描述
提前安装依赖包
pip install alibabacloud_imagerecog20190930
选择文件在本地的方式,填写所需识别垃圾的路径
在这里插入图片描述

4.7完整代码

# -*- coding: utf-8 -*-
# 引入依赖包
# pip install alibabacloud_imagerecog20190930

import os
import io
from urllib.request import urlopen
from alibabacloud_imagerecog20190930.client import Client
from alibabacloud_imagerecog20190930.models import ClassifyingRubbishAdvanceRequest
from alibabacloud_tea_openapi.models import Config
from alibabacloud_tea_util.models import RuntimeOptions

config = Config(
  # 创建AccessKey ID和AccessKey Secret,请参考https://help.aliyun.com/document_detail/175144.html。
  # 如果您用的是RAM用户的AccessKey,还需要为RAM用户授予权限AliyunVIAPIFullAccess,请参考https://help.aliyun.com/document_detail/145025.html
  # 从环境变量读取配置的AccessKey ID和AccessKey Secret。运行代码示例前必须先配置环境变量。
  access_key_id=os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_ID'),
  access_key_secret=os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),
  # 访问的域名
  endpoint='imagerecog.cn-shanghai.aliyuncs.com',
  # 访问的域名对应的region
  region_id='cn-shanghai'
)
#场景一:文件在本地
#img = open(r'/tmp/ClassifyingRubbish1.jpg', 'rb')
#场景二:使用任意可访问的url
url = 'https://viapi-test-bj.oss-cn-beijing.aliyuncs.com/viapi-3.0domepic/imagerecog/ClassifyingRubbish/ClassifyingRubbish1.jpg'
img = io.BytesIO(urlopen(url).read())
classifying_rubbish_request = ClassifyingRubbishAdvanceRequest()
classifying_rubbish_request.image_urlobject = img
runtime = RuntimeOptions()
try:
  # 初始化Client
  client = Client(config)
  response = client.classifying_rubbish_advance(classifying_rubbish_request, runtime)
  # 获取整体结果
  print(response.body)
except Exception as error:
  # 获取整体报错信息
  print(error)
  # 获取单个字段
  print(error.code)

输入图片
在这里插入图片描述
输出结果
在这里插入图片描述
输入图片
在这里插入图片描述
输出结果
在这里插入图片描述
输入图片
在这里插入图片描述
输出结果
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值