Machine Learning(四):Cloud Vision API 介紹與實作

GCP 機器學習(4) – Cloud Vision API 應用實例

作者:沒一村
本文轉載自:沒一村生活點滴

終於來到 Google Cloud Platform 第四篇 —— Cloud Vision API,也是前四篇之中,API 最為豐富的一個。話不多說,就直接開始吧!

快速測試

首先,先選好一張圖片,裡面有越多東西越好,或者圖片越奇怪越好,這樣才能展現這個 API 的威力。因此我特別選了一張辦公桌的照片和一張 meme,以下是我選的圖片 (單一檔案須 < 4MB,取自 VRD dataset 和 這個網址):

選好後,點選這個 網址,把圖片拖曳進去。接著我們來一一看 API 分析的結果:

1. Labels

在 labels 這個部分,API 會把圖中有的元素截取出來,並賦予一個 confidence 值,代表這個 label 在這張圖片裡出現的信心程度。由此可知,圖片中應含有 furniture, desk, table, chair 這些元素。label

詳細的 response 如下,其中 mid 是參考 Google knowledge-graph API 的 hash tag,description 則是該 hash tag 的描述,而 score 一樣代表信心值:

label_response

2. Web

在這個部分,API 結合搜尋引擎功能,回傳的 response 包含此張圖片的所有相關網頁。

3. Properties

Properties 子頁,則是顯示圖片的 dominant color,以及建議切割 image 的範圍 (crop hints)。dominant color 對於圖片的分類也是一個重要的指標喔!

properties

4. Safe Search

另外,這個 API 也可以判斷一張照片是否含有色情 (Adult)、欺騙 (Spoof)、醫藥 (Medical)、暴力 (Violence) 等潛在不好或不適合觀賞的元素。這部分我就不能在這裡亂試了,不然可能會被 ban 台。因此就該各位看倌自行試試看囉!圖片的部分,則可以參考這個 網頁 來餵一些可能會被偵測為不適當的圖片。像下面這張 meme 就充滿了欺騙的元素 XDDD

safe_search

5. Face & Logo & Landmarks

此外,Vision API 也包含人臉的表情辨識、地標辨識和 logo 辨識,對於以 B2C 為服務主力的產品可能會有很大的幫助喔!

face-analysis

6. Text & Document

除了圖像的資訊之外,Vision API 也能 detect 圖上文字的資訊,甚至連接 Natural Language API,進而得到更多圖上的資訊。

nlp_analysis

7. JSON

這一部分即是以上所有分析結果的統整,也是 Vision API 回傳的內容。

計價方式

Vision API 提供的功能很多,計價方式卻簡單,分 1.5USD/1000 unit 和 3.5 USD/1000 unit 兩種。其中,結合搜尋引擎的網路偵測和結合 Natural Language API 的皆為 3.5 USD/1000 unit。和 Speech API、Natural Language API、Translate API 比較起來,可以明顯發現 Vision API 的計價稍貴,這是因為圖片包含的潛藏資訊更多,也更為多元,因此訓練 model 相較於文字和聲音又更為困難。

price

結語

就目前電腦視覺的發展而言,Google Vision API 算是一個相當成熟的 API,整合了相當多目前尖端的論文技術。在開發一個產品時,倘若經費足夠,我認為 Vision API 能夠大幅減低自行訓練模型和調校參數的 overhead。然而,我也認為這個 API 可以更完善,在電腦視覺領域裡還有許多未解的問題,也期待將來會釋出 bounding box、segmentation 或者影片的分析結果。

此外,附錄的部分,我會放上一些電腦視覺最新的研究,有興趣的可以參考參考喔!圖片來源

maskrcnn_result

附錄

  1. Object detection
  2. Mask RCNN
  3. YOLO

這一系列的文章將帶您跨過 GCP 機器學習領域的實作門檻,下一篇會為您介紹:Cloud Video Intelligence API想瞭解更多更多 GCP 的內容嗎?趕快聯絡 GCP 專門家了解更多資訊吧。
(上一篇:Machine Learning(三):Translate API 介紹與實作)

連絡我們