不知道讀者們是否有過以下的經驗:忘記了曾經在哪裡看過的漂亮衣服,可能是一件漂亮黑色洋裝,但是翻遍歷程記錄,都找不到那個曾經令你欣喜的服飾;但是你找到了很多類似的圖片,這時候,大多數人都會希望把類似的圖片丟進去購物商城內,就能夠找到心目中那件最美的洋裝......
沒錯,這就是圖像搜索的魅力所在,透過關鍵字、相似圖片來搜索需要的圖像。而阿里雲提供了「圖像搜索」這項AI服務,透過圖片內容的特徵標示,並使用阿里雲自建的訓練模型來建立屬於自己的圖片搜索引擎。
圖像搜索流程:
通常圖片搜索的應用可以使用在:
電商平台、圖庫網站以圖搜圖、關鍵字搜圖的應用場景。
製造業應用場景,可以用於晶片、晶圓品質管理,透過圖像來做第一層品質篩檢。
紡織業應用場景,透過餵入大量布料材質、紋飾的圖片,來訓練屬於自己的圖像檢索引擎,協助紡織廠商整合各類布料資訊,達成數位化轉型。
當然除了上述的應用之外,還有更多的圖片辨識應用場景,都可以依托雲原生的AI圖像服務來完成,除了節省訓練模型搭建的時間之外,也能節省額外的硬體成本。
接下來,就讓我們進實作,看看要怎麼使用雲原生的圖像搜索吧!
實作:
創建實例
做為測試用就購買一個月,請求頻率也選擇每秒一次。
創建實例後,等待一下,選擇操作
到OSS的頁面,新增一個Bucket,並把欲匯入的圖片檔案放進去(本次使用Kaggle Dog & Cat Dataset)
回到圖像搜索選擇批量操作並新建批量任務
選擇Buckets、資料路徑,並且記得在上傳圖片的同時,也需要上傳一個 increment.meta的資料,格式放在圖片下方。
{"OperationType": "ADD","ProductId": "cat-0","PicName": "0.jpg","CustomContent": "cute kitty"}
可以看到圖片數量變成198張,因為某些圖片解析度不足,因此直接被排除。
接下來網路上隨意找一張照片,進入圖片搜索,使用新圖片搜索舊圖片,可以得到如下的回傳值。
以分數上來看,最高分為0.8011,54.jpg、次高為0.774,14.jpg,搜索用照片與兩張圖庫照片如下:
搜索用照片:
排名1 (0.8011):
排名2 (0.774):
成功調用圖像搜索服務!雖然本次的圖片庫僅使用198張,但還是成功用新圖片找到類似的貓貓!各位有興趣的讀者也可以自己嘗試看看喔!