public IEnumerator TestAnalyze() { Log.Debug("VisualRecognitionServiceV4IntegrationTests", "Attempting to Analyze..."); AnalyzeResponse analyzeResponse = null; List <FileWithMetadata> imagesFile = new List <FileWithMetadata>(); using (FileStream fs1 = File.OpenRead(giraffeImageFilepath), fs2 = File.OpenRead(turtleImageFilepath)) { using (MemoryStream ms1 = new MemoryStream(), ms2 = new MemoryStream()) { fs1.CopyTo(ms1); fs2.CopyTo(ms2); FileWithMetadata fileWithMetadata = new FileWithMetadata() { Data = ms1, ContentType = "image/jpeg", Filename = Path.GetFileName(giraffeImageFilepath) }; imagesFile.Add(fileWithMetadata); FileWithMetadata fileWithMetadata2 = new FileWithMetadata() { Data = ms2, ContentType = "image/jpeg", Filename = Path.GetFileName(turtleImageFilepath) }; imagesFile.Add(fileWithMetadata2); service.Analyze( callback: (DetailedResponse <AnalyzeResponse> response, IBMError error) => { Log.Debug("VisualRecognitionServiceV4IntegrationTests", "Analyze result: {0}", response.Response); analyzeResponse = response.Result; Assert.IsNotNull(analyzeResponse); Assert.IsNotNull(analyzeResponse.Images); Assert.IsTrue(analyzeResponse.Images.Count > 0); Assert.IsNotNull(analyzeResponse.Images[0].Objects.Collections); Assert.IsTrue(analyzeResponse.Images[0].Objects.Collections.Count > 0); Assert.IsNull(error); }, collectionIds: new List <string>() { giraffeCollectionId }, features: new List <string>() { "objects" }, imagesFile: imagesFile ); while (analyzeResponse == null) { yield return(null); } } } }
public void Analyze_Success() { DetailedResponse <AnalyzeResponse> analyzeResult = null; List <FileWithMetadata> imagesFile = new List <FileWithMetadata>(); using (FileStream fs = File.OpenRead(localGiraffeFilePath), fs2 = File.OpenRead(localTurtleFilePath)) { using (MemoryStream ms = new MemoryStream(), ms2 = new MemoryStream()) { fs.CopyTo(ms); fs2.CopyTo(ms2); FileWithMetadata fileWithMetadata = new FileWithMetadata() { Data = ms, ContentType = "image/jpeg", Filename = Path.GetFileName(localGiraffeFilePath) }; imagesFile.Add(fileWithMetadata); FileWithMetadata fileWithMetadata2 = new FileWithMetadata() { Data = ms2, ContentType = "image/jpeg", Filename = Path.GetFileName(localTurtleFilePath) }; imagesFile.Add(fileWithMetadata2); service.WithHeader("X-Watson-Test", "1"); analyzeResult = service.Analyze( collectionIds: new List <string>() { collectionId }, features: new List <string>() { "objects" }, imagesFile: imagesFile); } } Assert.IsNotNull(analyzeResult.Result); Assert.IsTrue(analyzeResult.Result.Images[0].Objects.Collections[0].Objects[0]._Object == giraffeClassname); Assert.IsTrue(analyzeResult.Result.Images.Count == 2); Assert.IsTrue(analyzeResult.Result.Images[0].Source.Filename == Path.GetFileName(localGiraffeFilePath)); Assert.IsTrue(analyzeResult.Result.Images[1].Source.Filename == Path.GetFileName(localTurtleFilePath)); }
public void Analyze() { IamAuthenticator authenticator = new IamAuthenticator( apikey: "{apikey}" ); VisualRecognitionService service = new VisualRecognitionService("2019-02-11", authenticator); DetailedResponse <AnalyzeResponse> result = null; List <FileWithMetadata> imagesFile = new List <FileWithMetadata>(); using (FileStream hondaFilestream = File.OpenRead("./honda.jpg"), diceFilestream = File.OpenRead("./dice.png")) { using (MemoryStream hondaMemoryStream = new MemoryStream(), diceMemoryStream = new MemoryStream()) { hondaFilestream.CopyTo(hondaMemoryStream); diceFilestream.CopyTo(diceMemoryStream); FileWithMetadata hondaFile = new FileWithMetadata() { Data = hondaMemoryStream, ContentType = "image/jpeg", Filename = "honda.jpg" }; FileWithMetadata diceFile = new FileWithMetadata() { Data = diceMemoryStream, ContentType = "image/png", Filename = "dice.png" }; imagesFile.Add(hondaFile); imagesFile.Add(diceFile); result = service.Analyze( collectionIds: new List <string>() { "{collectionId}" }, features: new List <string>() { "objects" }, imagesFile: imagesFile); Console.WriteLine(result.Response); } } }
public void Analyze_Success() { IClient client = Substitute.For <IClient>(); IRequest request = Substitute.For <IRequest>(); client.PostAsync(Arg.Any <string>()) .Returns(request); VisualRecognitionService service = new VisualRecognitionService(client); var versionDate = "versionDate"; service.VersionDate = versionDate; var collectionIds = new List <string>() { "collectionIds0", "collectionIds1" }; var features = new List <string>() { "features0", "features1" }; var imagesFile = new List <FileWithMetadata>() { new FileWithMetadata() { Filename = "filename", ContentType = "contentType", Data = new System.IO.MemoryStream() } }; var imageUrl = new List <string>() { "imageUrl0", "imageUrl1" }; float?threshold = 0.5f; var result = service.Analyze(collectionIds: collectionIds, features: features, imagesFile: imagesFile, imageUrl: imageUrl, threshold: threshold); request.Received().WithArgument("version", versionDate); }
public void Analysis() { IClient client = CreateClient(); IRequest request = Substitute.For <IRequest>(); client.GetAsync(Arg.Any <string>()) .Returns(request); #region response var analyzeResponse = new AnalyzeResponse() { Images = new List <Image>() { new Image() { Source = new ImageSource() { Type = "type", Filename = "filename", ArchiveFilename = "archiveFilename", SourceUrl = "sourceUrl", ResolvedUrl = "resolvedUrl" }, Dimensions = new ImageDimensions() { Width = 100, Height = 200 }, Objects = new DetectedObjects() { Collections = new List <CollectionObjects>() { new CollectionObjects() { CollectionId = "collectionId", Objects = new List <ObjectDetail>() { new ObjectDetail() { _Object = "object", Location = new ObjectDetailLocation() { Top = 0, Left = 1, Width = 2, Height = 3 } } } } } } } } }; var response = new DetailedResponse <AnalyzeResponse>(); response.Result = analyzeResponse; #endregion request.WithArgument(Arg.Any <string>(), Arg.Any <string>()) .Returns(request); request.WithBodyContent(new MultipartFormDataContent()) .Returns(request); request.As <AnalyzeResponse>() .Returns(Task.FromResult(response)); NoAuthAuthenticator authenticator = new NoAuthAuthenticator(); VisualRecognitionService service = new VisualRecognitionService(client); service.Version = "versionDate"; service.Analyze( collectionIds: new List <string> { "colletionIds" }, features: new List <string> { "features" }); Assert.IsTrue(response.Result.Images[0].Source.Type == "type"); Assert.IsTrue(response.Result.Images[0].Source.Filename == "filename"); Assert.IsTrue(response.Result.Images[0].Source.ArchiveFilename == "archiveFilename"); Assert.IsTrue(response.Result.Images[0].Source.SourceUrl == "sourceUrl"); Assert.IsTrue(response.Result.Images[0].Source.ResolvedUrl == "resolvedUrl"); Assert.IsTrue(response.Result.Images[0].Dimensions.Width == 100); Assert.IsTrue(response.Result.Images[0].Dimensions.Height == 200); Assert.IsTrue(response.Result.Images[0].Objects.Collections[0].CollectionId == "collectionId"); Assert.IsTrue(response.Result.Images[0].Objects.Collections[0].Objects[0]._Object == "object"); Assert.IsTrue(response.Result.Images[0].Objects.Collections[0].Objects[0].Location.Top == 0); Assert.IsTrue(response.Result.Images[0].Objects.Collections[0].Objects[0].Location.Left == 1); Assert.IsTrue(response.Result.Images[0].Objects.Collections[0].Objects[0].Location.Width == 2); Assert.IsTrue(response.Result.Images[0].Objects.Collections[0].Objects[0].Location.Height == 3); }