该文章基于Android studio2024.1.2版本,为Android studio开发者尽量细致的讲解如何调用华为云图像识别api。

一、开通服务

1.登录华为云官网,申请华为账号,完成实名注册(有华为账号的请跳过该步骤,要确认自己的账号能够使用华为云服务)。

官网连接:共建智能世界云底座-华为云 (huaweicloud.com)

2.在上方导航栏中选择“产品”,输入想使用的服务(以图像识别服务为例),并点击进入。

3、由于华为云图像识别服务有每月1000次的免费调用,所以不用购买,直接点击控制台。

进入控制台后先完成前两步。点击对应的链接,按需求开通服务即可。

完成后服务就成功开通了!

二、配置环境

1.下载并打开Android studio开发软件。作者使用的是Android studio2024.1.2版本。

2.新建项目。

推荐选择empty views activity。

下一步:

推荐把语言从默认的kotlin改为java。把项目名字和存放地点填好就可以新建项目了。

3.把左侧项目结构更改为project类型。找到main文件夹下的AndroidManifest.xml,打开。

在manifest下添加如下代码,用来获取网络权限:

<uses-permission android:name="android.permission.INTERNET"/>

4.找到左侧项目结构中app文件夹下的build.gradle,点开。

在dependencies大括号内添加以下内容。作用是导入华为云图象识别服务的本地sdk包。下面提供kotlin和java两种格式供选择。

kotlin格式:

implementation("com.huaweicloud.sdk:huaweicloud-sdk-image:3.1.116")

java格式:

implementation "com.huaweicloud.sdk:huaweicloud-sdk-image:3.1.116"

然后点击上方的Sync now,等待下载sdk。下方会有进度条,当进度条消失并且显示成功就是下载完成了。

三、获取SDK示例

1.以图像识别服务为例,在华为云api explorer中找到该服务。

图像识别服务链接:API Explorer (huaweicloud.com)

2.在右侧代码示例中选择java语言,复制代码。也可以在该网站上先测试一下api再复制代码。

3.回到Android studio。在src->main->java->自己项目名 的文件夹下新建一个java class。将代码粘贴在此处。

修改ak,sk的值:

(1)登录“我的凭证”页面。选择“访问密钥>新增访问密钥获取”获得自己的ak和sk的值。该操作会下载一个excel表格到电脑,需要打开表格查看。

我的凭证页面链接:https://console.huaweicloud.com/iam/?region=cn-north-4#/myCredential

(2)将刚刚那段代码开头的string ak和sk的值修改为自己的。

修改图片url:

(1)获取目标图片url。将目标图片上传到下面的网站(或者随便选一个能把图片变为url格式的网站)。选择Image url,将url复制。

图片url网站:Image Upload - SM.MS - Simple Free Image Hosting

(2)将url粘贴到代码中body.withUrl后的括号中。

示例:body.withUrl("url值")

四、运行测试代码

在左侧项目结构中找到测试代码,右键,选择图中选项,等待运行。

预期运行结果类似于下图:

{
    "result": {
        "tags": [
            {
                "confidence": "37.51",
                "instances": [
                    {
                        "confidence": "92.38",
                        "bounding_box": {
                            "height": 133.32496056189905,
                            "top_left_x": 53.134917332575874,
                            "top_left_y": 254.21347984900842,
                            "width": 117.5866567171537
                        }
                    }
                ],
                "tag": "人",
                "i18n_tag": {
                    "en": "person",
                    "zh": "人"
                },
                "type": "人类",
                "i18n_type": {
                    "en": "Human",
                    "zh": "人类"
                }
            }
        ]
    }
}

恭喜你完成了调用api操作!

更多内容建议查看(也是本文的参考):

API Explorer (huaweicloud.com)

调用SDK实现图像标签功能_图像识别 Image_华为云 (huaweicloud.com)

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐