使用 Azure 的計算機視覺服務,開發人員可以訪問用於處理圖像並返回信息的高級算法。
主要包含如下高級算法:
標記視覺特性Tag visual features
檢測對象Detect objects
圖像分類Categorize an image
描述圖像Describe an image
檢測人臉Detect faces
檢測圖像類型Detect image types
檢測特定領域的內容Detect domain-specific content
檢測顏色方案Detect the color scheme
生成縮略圖Generate a thumbnail
獲取感興趣區域Get the area of interest
從圖像中提取文本Extract text from images
管理圖像中的內容Moderate content in images
要使用Computer Vision,圖像質量必須滿足如下要求:
-
圖像必須以 JPEG、PNG、GIF 或 BMP 格式顯示
-
圖像的文件大小必須不到 4 兆字節 (MB)
-
圖像的尺寸必須大於 50 x 50 像素
-
對於 OCR,圖像的尺寸必須介於 50 x 50 和 4200 x 4200 像素之間
若要分析圖像,可以上傳圖像,也可以指定圖像URL。
圖像處理算法可以通過多種不同的方式分析內容,具體取決於你感興趣的視覺功能。 例如,計算機視覺可以確定圖像是否包含成人內容或不雅內容,或者查找圖像中的所有人臉。
可以在應用程序中使用計算機視覺,方法是:使用本機SDK,或者直接調用 REST API。 SDK中,支持最全的是C# ,部分功能包含Java,NodeJS,Python,Go SDK。
本節實戰視頻,如何使用Computer Vision:
AI 之計算機視覺(Computer Vision)
下面分別舉幾個例子介紹計算機視覺API的功能:
圖像標記-Tags
計算機視覺在上千個可識別對象、生物、風景和操作的基礎上返回標記。 當標記內容不明確或者不屬常識時,API 響應會提供“提示”來澄清標記在已知場景中的含義。 標記不按分類來組織,且不存在繼承層次結構。 內容標記集合在一起,形成圖像“說明”的基礎。該“說明”以人類可讀語言顯示,採用完整句子的格式。 請注意,圖像說明目前只能使用英語。
上傳圖像或指定圖像 URL 後,計算機視覺算法在對象、生物和圖像中標識的操作的基礎上輸出標記。 標記不限於主體(例如前景中的人),還包括場景(戶內或戶外)、傢俱、工具、植物、動物、配件、小器具等。
結果示例:
"tags": [
{
"name": "grass",
"confidence": 0.9999995231628418
},
{
"name": "outdoor",
"confidence": 0.99992108345031738
},
{
"name": "house",
"confidence": 0.99685388803482056
}]
對象檢測-Detect common objects in images
對象檢測類似於標記,但是 API 返回找到的每個對象的邊框座標(以像素爲單位)。 例如,如果圖像包含狗、貓和人,檢測操作將列出這些對象及其在圖像中的座標。
結果示例:
"objects":[
{
"rectangle":{
"x":730,
"y":66,
"w":135,
"h":85
},
"object":"kitchen appliance",
"confidence":0.501
},
{
"rectangle":{
"x":523,
"y":377,
"w":185,
"h":46
},
圖像進行分類-Categorize images by subject matter
計算機視覺還返回圖像中檢測到的基於分類的類別。 不同於標記,類別是在父/子繼承層次結構中組織的,並且數量更少(86 個,與數千個標記截然相反)。 所有類別名稱均採用英語。 它可以單獨完成分類,也可以與新的標記模型共同完成。
示例結果:
"faces": [
{
"age": 23,
"gender": "Female",
"faceRectangle": {
"top": 45,
"left": 194,
"width": 44,
"height": 44
}
}
]
已支持的分類列表:
https://docs.azure.cn/zh-cn/cognitive-services/computer-vision/category-taxonomy
除了上述內容,還支持手寫體識別,表單識別等等,具體請參見官網:
https://docs.azure.cn/zh-cn/cognitive-services/computer-vision/concept-detecting-image-types
接下來,我們做一個案例,對如下圖像進行檢測,圖像位置:
https://upload.wikimedia.org/wikipedia/commons/3/3c/Shaki_waterfall.jpg
本案例步驟:
-
在Azure創建Computer Vison API;
-
使用Azure提供的 Online API 測試工具;
-
使用Postman進行測試;
本案例完整內容,參照本文開始視頻。
可使用如下地址進行在線測試:
https://dev.cognitive.azure.cn/docs/services/56f91f2d778daf23d8ec6739/operations/56f91f2e778daf14a499e1fa/console
其中必填項如下圖所示:
Request Body和結果如下:
Postman測試如下圖所示: