コンソールに次のエラーが出力されたとき、Visual Studio で画像内の顔を識別するために Microsoft Face API を使用するためのこのドキュメントに従っていました。
'Microsoft.ProjectOxford.Face.FaceAPIException' 型の例外をグループに追加する際にエラーが発生しました。
既存の個人グループに個人を追加する次の関数が呼び出されると、例外が出力されます。
public async void AddPersonToGroup(string personGroupId, string name, string pathImage){
try{
await faceServiceClient.GetPersonGroupAsync(personGroupId);
CreatePersonResult person = await faceServiceClient.CreatePersonAsync(personGroupId, name);
foreach (var imgPath in Directory.GetFiles(pathImage, "*.jpg")) {
using (Stream s = File.OpenRead(imgPath)) {
await faceServiceClient.AddPersonFaceAsync(personGroupId, person.PersonId, s);
}
}
} catch (Exception ex){
//Below is where the error was printed.
Console.WriteLine("Error adding Person to Group " + ex.Message);
}
}
AddPersonToGroup
これは、メイン メソッドで呼び出す方法です。
new Program().AddPersonToGroup("actor", "Tom Cruise", @"C:\Users\ishaa\Documents\Face_Pictures\Tom_Cruise\");
Google でこのエラーを検索しようとしたところ、この SO questionに遭遇しましたが、その答えはうまくいきませんでした。(彼らの答えは、サブスクリプション キーとFaceServiceClient
コンストラクターのエンドポイントを渡すことでした。)
このエラーが発生している理由について誰かが洞察を提供できますか? 原因は特定できませんでしたが、何かに関係している可能性はあると思います
await faceServiceClient.GetPersonGroupAsync(personGroupId);
。また、私が選択した Cognitive Services の価格プランが原因である可能性があることも読みました。ただし、私が使用している無料のものでは、1 分間に 20 トランザクションが可能で、3 人の人物の写真を 9 枚だけ追加しようとしています。