欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

利用Python實現(xiàn)給圖像添加標簽

 更新時間:2023年07月16日 11:14:01   作者:幸福清風  
這篇文章主要為大家詳細介紹了如何利用Python實現(xiàn)給指定的圖片添加標簽,文中的示例代碼講解詳細,具有一定的學習價值,需要的可以參考一下

一、需求

給指定的圖片添加標簽

二、代碼

# !/usr/bin/env python
# coding: utf-8
import tkinter as tk
from tkinter import filedialog, messagebox
import os
import json
from google.protobuf.json_format import MessageToJson
from clarifai_grpc.channel.clarifai_channel import ClarifaiChannel
from clarifai_grpc.grpc.api import resources_pb2, service_pb2, service_pb2_grpc
from clarifai_grpc.grpc.api.status import status_code_pb2
# 授權密鑰
API_KEY = '5************************************'
USER_ID = '3*********h'
APP_ID = 'my***************'
# 注冊網(wǎng)址:https://www.clarifai.com/
# 網(wǎng)址注冊后,拿授權密鑰,每月1000次免費
def analyze_image(image_path):
    # 使用 Clarifai API 進行圖像分析
    results = []
    channel = ClarifaiChannel.get_grpc_channel()
    stub = service_pb2_grpc.V2Stub(channel)
    metadata = (('authorization', 'Key ' + API_KEY),)
    userDataObject = resources_pb2.UserAppIDSet(user_id=USER_ID, app_id=APP_ID)
    with open(image_path, 'rb') as f:
        file_bytes = f.read()
    try:
        print(f"開始分析圖像: {image_path}")  # 添加調試語句
        post_model_outputs_response = stub.PostModelOutputs(
            service_pb2.PostModelOutputsRequest(
                user_app_id=userDataObject,
                model_id='general-image-recognition',
                inputs=[
                    resources_pb2.Input(
                        data=resources_pb2.Data(
                            image=resources_pb2.Image(
                                base64=file_bytes
                            )
                        )
                    )
                ]
            ),
            metadata=metadata
        )
        print(f"圖像分析完成: {image_path}")  # 添加調試語句
    except Exception as e:
        messagebox.showerror("錯誤", "圖像分析失敗,原因: " + str(e))
        return
    if post_model_outputs_response.status.code != status_code_pb2.SUCCESS:
        messagebox.showerror("錯誤", "模型輸出提交失敗,狀態(tài): " + post_model_outputs_response.status.description)
        return
        # 將獲取到的結果轉為 JSON
    json_result = MessageToJson(post_model_outputs_response)
    json_output = json.loads(json_result)
    print(json_output)
    # 從 JSON 結果中提取并顯示關鍵信息
    for output in json_output["outputs"]:
        for concept in output['data']['concepts']:
            object_name = concept['name']
            results.append(object_name)
    return results
if __name__ == '__main__':
    image_path = r"D:\Desktop\tp.png"
    ret = analyze_image(image_path)

三、圖片

四、結果

['interior design', 'luxury', 'contemporary', 'indoors', 'furniture', 'comfort', 'family', 'room', 'hotel', 'sofa', 'no person', 'minimalist', 'rug', 'chair', 'seat', 'lamp', 'coffee table', 'curtain', 'trading floor', 'mansion']

到此這篇關于利用Python實現(xiàn)給圖像添加標簽的文章就介紹到這了,更多相關Python圖像添加標簽內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 用Python編寫一個簡單的Lisp解釋器的教程

    用Python編寫一個簡單的Lisp解釋器的教程

    這篇文章主要介紹了用Python編寫一個簡單的Lisp解釋器的教程,Lisp是一種源碼簡單的函數(shù)式編程語言,本文主要介紹對其中的一個子集Scheme的解釋器開發(fā),需要的朋友可以參考下
    2015-04-04
  • python六種基本數(shù)據(jù)類型及常用函數(shù)展示

    python六種基本數(shù)據(jù)類型及常用函數(shù)展示

    這篇文章主要為大家介紹了python六種基本數(shù)據(jù)類型及常用函數(shù),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-11-11
  • Pyqt實現(xiàn)簡易計算器功能

    Pyqt實現(xiàn)簡易計算器功能

    這篇文章主要為大家詳細介紹了Pyqt實現(xiàn)簡易計算器功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • python+selenium實現(xiàn)自動化百度搜索關鍵詞

    python+selenium實現(xiàn)自動化百度搜索關鍵詞

    在本篇文章里我們給大家分享了一篇關于python+selenium實現(xiàn)自動化百度搜索關鍵詞的實例文章,需要的朋友們可以跟著操作下。
    2019-06-06
  • Python中 CSV格式清洗與轉換的實例代碼

    Python中 CSV格式清洗與轉換的實例代碼

    這篇文章主要介紹了Python123 CSV格式清洗與轉換的實例代碼,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-08-08
  • OpenCV連通域數(shù)量統(tǒng)計學習示例

    OpenCV連通域數(shù)量統(tǒng)計學習示例

    這篇文章主要為大家介紹了OpenCV連通域數(shù)量統(tǒng)計示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-06-06
  • Python中的命名元組簡單而強大的數(shù)據(jù)結構示例詳解

    Python中的命名元組簡單而強大的數(shù)據(jù)結構示例詳解

    namedtuple是Python中一個非常有用的數(shù)據(jù)結構,它提供了一種簡單的方式創(chuàng)建具有固定字段的輕量級對象,通過使用namedtuple,可以提高代碼的可讀性和可維護性,避免了使用類定義對象的復雜性,這篇文章主要介紹了Python中的命名元組簡單而強大的數(shù)據(jù)結構,需要的朋友可以參考下
    2024-05-05
  • Python實現(xiàn)的企業(yè)粉絲抽獎功能示例

    Python實現(xiàn)的企業(yè)粉絲抽獎功能示例

    這篇文章主要介紹了Python實現(xiàn)的企業(yè)粉絲抽獎功能,涉及Python數(shù)值運算與隨機數(shù)生成相關操作技巧,需要的朋友可以參考下
    2019-07-07
  • python模擬登陸網(wǎng)站的示例

    python模擬登陸網(wǎng)站的示例

    這篇文章主要介紹了python模擬登陸網(wǎng)站的示例,幫助大家更好的理解和學習使用python,感興趣的朋友可以了解下
    2021-03-03
  • 對Python中內(nèi)置異常層次結構詳解

    對Python中內(nèi)置異常層次結構詳解

    今天小編就為大家分享一篇對Python中內(nèi)置異常層次結構詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10

最新評論