如何使用 Google Cloud 的 Vision API?


Google Cloud Vision API 是一款強大的基於雲的工具,允許開發人員將其應用程式整合到高階影像分析功能中。在當今的數字時代,大量影像可用。Vision API 用於從這些影像中提取有意義的資訊,例如識別物件、檢測文字、理解情感等。在本文中,我們將瞭解如何使用 Google Cloud 的 Vision API 來分析影像資料。

演算法

  • 匯入所需的庫

    • 匯入您正在使用的程式語言所需的庫,例如 Python 的 google.cloud.vision 庫。

  • 設定 Google Cloud 專案

    • 建立一個 Google Cloud 專案並在專案中啟用 Vision API。

    • 生成 API 金鑰或設定身份驗證憑據以授權 API 訪問。

  • 安裝所需的庫

    • 安裝 Google Cloud 提供的必要客戶端庫或 SDK 以與 Vision API 互動。使用像 pip 這樣的包管理器來安裝庫。

  • 身份驗證並設定客戶端

    • 使用生成的 API 金鑰或身份驗證憑據對客戶端進行身份驗證。

    • 建立 Vision API 客戶端例項以建立與 Vision API 的連線。

  • 準備要分析的影像

    • 載入要分析的影像檔案或提供影像的公共可訪問 URL。

    • 將影像轉換為適合 Vision API 的格式,例如 base64 編碼格式或位元組陣列。

  • 發出 API 請求

    • 使用必要的引數(例如影像和所需的功能)建立一個 API 請求物件。

    • 使用客戶端將 API 請求傳送到相應的 Vision API 端點。

    • 在請求有效負載中包含影像資料。

  • 處理 API 響應

    • 接收來自 Vision API 的響應。

    • 解析 API 返回的 JSON 響應以提取分析結果。

    • 從響應中提取相關資訊,例如物件標籤、邊界框或置信度分數。

  • 利用結果

    • 根據需要將獲得的資訊整合到您的應用程式邏輯中。

    • 根據分析資料執行進一步分析或採取適當的操作。

示例

假設我們有一個包含多個物件的影像,並且我們想使用 Vision API 識別這些物件的標籤。在下面的示例中,我們首先匯入必要的庫,包括 os、io、google.cloud.vision 和 matplotlib.pyplot。服務帳戶金鑰檔案的路徑使用 os.environ['GOOGLE_APPLICATION_CREDENTIALS'] 設定。建立 ImageAnnotatorClient 的例項以對客戶端進行身份驗證並設定訪問 Vision API 的客戶端。使用 io.open() 開啟影像檔案“multi_object.jpg”並讀取內容。

一個視覺。使用影像內容建立影像物件。在客戶端上呼叫 label_detection 方法,並傳入影像物件以執行標籤檢測。影像中檢測到的標籤儲存在 labels 變數中。使用 matplotlib.pyplot.imshow() 視覺化影像。使用遍歷 labels 變數的迴圈列印每個標籤的描述。

import os
import io
from google.cloud import vision
from matplotlib import pyplot as plt
 
os.environ['GOOGLE_APPLICATION_CREDENTIALS'] = os.path.join(os.curdir, 'testing-388309-da3d81cb5874.json')
 
client = vision.ImageAnnotatorClient()
 
f = 'multi_object.jpg'
with io.open(f, 'rb') as image:
    content = image.read()
     
image = vision.Image(content = content)
response = client.label_detection(image = image)
labels = response.label_annotations
 
a = plt.imread(f)
plt.imshow(a)
 
for label in labels:
    print(label.description)

輸出

Google Cloud Vision API 的應用

Google Cloud Vision API 使用最先進的機器學習模型來分析影像並提取有價值的見解。它提供了一系列經過預訓練的模型和功能,可以透過簡單的 REST API 利用這些模型和功能。Vision API 的一些關鍵功能包括

  • 影像分類

    API 可以將影像識別和分類為數千個預定義的類別。例如,它可以識別常見物件、地標、動物,甚至特定品牌。

  • 物件檢測

    使用物件檢測,API 可以識別和定點陣圖像中的多個物件,在每個物件周圍提供邊界框並相應地對其進行標記。此功能在您需要在影像中計數或跟蹤物件的情況下特別有用。

  • OCR(光學字元識別)

    Vision API 的 OCR 功能能夠從影像中提取文字。它可以檢測和識別各種語言的印刷文字,使其對涉及文件掃描、資料提取或文字分析的應用程式非常有價值。

  • 人臉檢測和分析

    使用 Vision API,您可以在影像中識別面部,分析面部屬性(例如情緒、地標或表情),甚至執行面部匹配或驗證。

  • 顯式內容檢測

    API 可以檢測和分類影像中的顯式或不適當內容。此功能對於維護包含使用者生成內容的應用程式的完整性和安全性至關重要。

結論

在本文中,我們討論瞭如何使用 Google Cloud 的 Vision API 在 Python 中進行影像分析。憑藉 Vision API 的廣泛功能,您可以構建能夠理解、解釋和從影像中提取有價值的見解的應用程式。透過遵循本指南中概述的步驟,您可以將 Vision API 整合到您自己的應用程式中,為基於影像的分析和理解開闢無限可能。

更新於: 2023年10月16日

191 次瀏覽

開啟您的 職業生涯

透過完成課程獲得認證

立即開始
廣告