调用豆包API实现图像内容识别

1、作者介绍

张丹丹,女,西安工程大学电子信息学院,2024级研究生
研究方向:滑坡地质灾害监测
电子邮件:1483540189@qq.com
乔幸荣,女,西安工程大学电子信息学院,2024级研究生,张宏伟人工智能课题组
研究方向:模式识别与智能系统
电子邮件:2029518801@qq.com

2、图像内容识别技术

图像识别:是一种计算机视觉技术,使计算机能够通过分析和理解数字图像中的内容来识别和分类对象。以下是图像识别的几个基本概念:
1.特征提取:图像识别的第一步是从图像中提取有意义的特征。特征可以是边缘、纹理、颜等。
2.特征匹配:将提取的特征与预先定义的特征库进行比较,以找到最匹配的对象。
3.分类:通过机器学习算法(如神经网络、支持向量机等)对特征进行分类,从而识别图像中的对象。

3、图像识别的原理

  1. 预处理
    图像预处理是图像识别的基础步骤,旨在提升图像质量,突出重要特征,并为后续的特征提取和分类奠定良好的基础。常见的图像预处理操作包括去噪、灰度化、二值化、滤波和边缘检测等。
  2. 特征提取
    特征提取是从图像中提取能够代表图像内容的关键信息,是实现图像分类和识别的关键步骤。常用的特征提取方法包括SIFT、SURF和HOG等。
  3. 特征选择
    特征选择的目的是从提取的特征中选择最具代表性的特征,以减少计算量和提高识别速度。常用的特征选择方法包括:主成分分析(PCA),线性判别分析(LDA),递归特征消除(RFE)。

4、火山引擎接口配置

1.接口配置
首先访问火山引擎官网:火山引擎
在这里插入图片描述
2.创建Api-key
进入之后,在左侧的栏目,找到API Key管理,点击创建API Key,可以看到这是已经生成了一个API Key.
在这里插入图片描述

3.进入火山方舟在左侧栏目中找到在线推理,点击创建推理接入点,然后选择对应所需要的大模型数据。此处用的是Doubao-1.5-vision-pro 模型。模型不仅可以处理文字问答,它还可以对图像进行识别和回答相应的问题。
在这里插入图片描述

4.进入火山方舟在左侧栏目中找到在线推理,点击创建推理接入点,然后选择我们对应所需要的大模型数据。此处用的是Doubao-1.5-vision-pro 模型。
在这里插入图片描述

5、代码实现

1.安装库
pip install volcengine-python-sdk
2.文字问答接口实现
步骤1:导入Ark类用于创建客户端。
步骤2:定义chat_dance函数,函数里创建Ark客户端实例,使用指定模型与服务端交互,发送用户消息 “你好,请问你是豆包 AI 吗”。
步骤3:获取服务端回复并打印第一条回复内容。
步骤4:通过if __name__ =='__main__'调用chat_dance函数。

from volcenginesdkarkruntime import Ark

def chat_dance():
    while True:
        str = input()
        if str == 'exit':
            break

        client = Ark(api_key='')
        response = client.chat.completions.create(
            model="",
            messages=[
                {
                    "role": "user",
                    "content": [
                        {"type": "text", "text": str},
                    ],
                }
            ],
        )
        print(response.choices[0].message.content)
        chat_dance()

if __name__ == '__main__':
    chat_dance()

3.图像内容识别

from volcenginesdkarkruntime import Ark

# 初始化 Ark 客户端,直接在代码中使用您的 AK 和 SK
client = Ark(
    base_url="https://ark.cn-beijing.volces.com/api/v3",
    ak="",
    sk=""
)

response = client.chat.completions.create(
    model="",
    messages=[
        {
            "role": "user",
            "content": [
                {"type": "text", "text": "这是哪里?"},
                {
                    "type": "image_url",
                    "image_url": {
                        "url": "https://m.qpic.cn/psc?/V11Y2N8h3OXkqt/TmEUgtj9EK6.7V8ajmQrENiiGwGx*4LG5gDPt4Y2BIUm2mXIONOKBxLGmBXbgBVOefQzAPAi7*PvuHGI3AxDpX.SvxO7rGvnSj36ZjYQEic!/b&bo=sAQgA7AEIAMDFzI!&rf=viewer_4"
                    },
                },
            ],
        }
    ],
)

try:
    choice = response.choices[0]
    print(f"finish_reason: {choice.finish_reason}")
    print(f"moderation_hit_type: {choice.moderation_hit_type}")
    print(f"index: {choice.index}")
    print(f"logprobs: {choice.logprobs}")
    content = choice.message.content
    # 设定每行显示的字符数,这里设为50,可按需调整
    line_length = 50
    while content:
        print(content[:line_length])
        content = content[line_length:]
except (IndexError, AttributeError):
    print("无法正确获取结果或结果格式不符合预期")

结果展示:
1.
在这里插入图片描述
在这里插入图片描述
2.
在这里插入图片描述
在这里插入图片描述3.

在这里插入图片描述

在这里插入图片描述

6、 问题与分析

1.pip install volcengine-python-sdk无法安装包
报错信息:
在这里插入图片描述
报错原因:由于 Windows 系统有最长路径限制,可能会导致安装失败。
解决方法:
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值