![](/img/trans.png)
[英]await faceClient.Face.DetectWithStreamAsync returning null
[英]await client.Face.DetectWithStreamAsync not responding
我想在 Unity 中使用 Microsoft.Azure.CognitiveServices.Vision.Face 為 Hololens 2 執行人臉識別。
我基本上按照這個Face Client Tutorial並嘗試使用await faceClient.Face.DetectWithUrlAsync
以及await faceClient.Face.DetectWithStreamAsync
與本地圖像,但程序沒有通過這行代碼(根本沒有響應,Unity 也顯示沒有回復)。 但是,在調查 azure 資源指標時,它會顯示成功的調用和輸出數據。 我在 Visual Studio 中得到的唯一輸出是“加載:模塊:匿名托管的 DynamicMethods 程序集”。
這是有問題的代碼片段:
using (Stream faceimagestream = File.OpenRead(filepath))
{
detectedFaces = await client.Face.DetectWithStreamAsync(faceimagestream, returnFaceAttributes: features);
}
解決方案是根據基於任務的異步模式 (TAP) 使用await
而不是教程示例中使用的method.Wait()
(顯然不是為 Unity 構建的)。 Wait()
調用會阻塞整個線程,因此 Unity 不會響應。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.