Skip to content

Commit a2e9651

Browse files
Merge pull request #40 from PatrickFarley/pafarley-snippets
add snippets
2 parents 75a8398 + d744e21 commit a2e9651

File tree

1 file changed

+24
-0
lines changed
  • Vision/CustomVision/src/main/java/com/microsoft/azure/cognitiveservices/vision/customvision/samples

1 file changed

+24
-0
lines changed

Vision/CustomVision/src/main/java/com/microsoft/azure/cognitiveservices/vision/customvision/samples/CustomVisionSamples.java

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,14 +54,17 @@ public static void runSample(TrainingApi trainer, PredictionEndpoint predictor)
5454

5555
public static void ImageClassification_Sample(TrainingApi trainClient, PredictionEndpoint predictor) {
5656
try {
57+
// <snippet_create>
5758
System.out.println("ImageClassification Sample");
5859
Trainings trainer = trainClient.trainings();
5960

6061
System.out.println("Creating project...");
6162
Project project = trainer.createProject()
6263
.withName("Sample Java Project")
6364
.execute();
65+
// </snippet_create>
6466

67+
// <snippet_tags>
6568
// create hemlock tag
6669
Tag hemlockTag = trainer.createTag()
6770
.withProjectId(project.id())
@@ -72,7 +75,9 @@ public static void ImageClassification_Sample(TrainingApi trainClient, Predictio
7275
.withProjectId(project.id())
7376
.withName("Japanese Cherry")
7477
.execute();
78+
// </snippet_tags>
7579

80+
// <snippet_upload>
7681
System.out.println("Adding images...");
7782
for (int i = 1; i <= 10; i++) {
7883
String fileName = "hemlock_" + i + ".jpg";
@@ -85,7 +90,9 @@ public static void ImageClassification_Sample(TrainingApi trainClient, Predictio
8590
byte[] contents = GetImage("/Japanese Cherry", fileName);
8691
AddImageToProject(trainer, project, fileName, contents, cherryTag.id(), null);
8792
}
93+
// </snippet_upload>
8894

95+
// <snippet_train>
8996
System.out.println("Training...");
9097
Iteration iteration = trainer.trainProject(project.id());
9198

@@ -97,6 +104,7 @@ public static void ImageClassification_Sample(TrainingApi trainClient, Predictio
97104
}
98105
System.out.println("Training Status: "+ iteration.status());
99106
trainer.updateIteration(project.id(), iteration.id(), iteration.withIsDefault(true));
107+
// </snippet_train>
100108

101109
// use below for url
102110
// String url = "some url";
@@ -105,6 +113,7 @@ public static void ImageClassification_Sample(TrainingApi trainClient, Predictio
105113
// .withUrl(url)
106114
// .execute();
107115

116+
// <snippet_predict>
108117
// load test image
109118
byte[] testImage = GetImage("/Test", "test_image.jpg");
110119

@@ -118,6 +127,7 @@ public static void ImageClassification_Sample(TrainingApi trainClient, Predictio
118127
{
119128
System.out.println(String.format("\t%s: %.2f%%", prediction.tagName(), prediction.probability() * 100.0f));
120129
}
130+
// </snippet_predict>
121131
} catch (Exception e) {
122132
System.out.println(e.getMessage());
123133
e.printStackTrace();
@@ -127,6 +137,7 @@ public static void ImageClassification_Sample(TrainingApi trainClient, Predictio
127137
public static void ObjectDetection_Sample(TrainingApi trainClient, PredictionEndpoint predictor)
128138
{
129139
try {
140+
// <snippet_od_mapping>
130141
// Mapping of filenames to their respective regions in the image. The coordinates are specified
131142
// as left, top, width, height in normalized coordinates. I.e. (left is left in pixels / width in pixels)
132143

@@ -177,6 +188,7 @@ public static void ObjectDetection_Sample(TrainingApi trainClient, PredictionEnd
177188
regionMap.put("fork_18.jpg", new double[] { 0.234068632, 0.445702642, 0.6127451, 0.344771236 });
178189
regionMap.put("fork_19.jpg", new double[] { 0.219362751, 0.141781077, 0.5919118, 0.6683006 });
179190
regionMap.put("fork_20.jpg", new double[] { 0.180147052, 0.239820287, 0.6887255, 0.235294119 });
191+
// </snippet_od_mapping>
180192

181193
System.out.println("Object Detection Sample");
182194
Trainings trainer = trainClient.trainings();
@@ -196,6 +208,7 @@ public static void ObjectDetection_Sample(TrainingApi trainClient, PredictionEnd
196208
return;
197209
}
198210

211+
// <snippet_create_od>
199212
System.out.println("Creating project...");
200213
// create an object detection project
201214
Project project = trainer.createProject()
@@ -204,7 +217,9 @@ public static void ObjectDetection_Sample(TrainingApi trainClient, PredictionEnd
204217
.withDomainId(objectDetectionDomain.id())
205218
.withClassificationType(Classifier.MULTILABEL.toString())
206219
.execute();
220+
// </snippet_create_od>
207221

222+
// <snippet_tags_od>
208223
// create fork tag
209224
Tag forkTag = trainer.createTag()
210225
.withProjectId(project.id())
@@ -216,7 +231,9 @@ public static void ObjectDetection_Sample(TrainingApi trainClient, PredictionEnd
216231
.withProjectId(project.id())
217232
.withName("scissor")
218233
.execute();
234+
// </snippet_tags_od>
219235

236+
// <snippet_upload_od>
220237
System.out.println("Adding images...");
221238
for (int i = 1; i <= 20; i++) {
222239
String fileName = "fork_" + i + ".jpg";
@@ -229,7 +246,9 @@ public static void ObjectDetection_Sample(TrainingApi trainClient, PredictionEnd
229246
byte[] contents = GetImage("/scissors", fileName);
230247
AddImageToProject(trainer, project, fileName, contents, scissorsTag.id(), regionMap.get(fileName));
231248
}
249+
// </snippet_upload_od>
232250

251+
// <snippet_train_od>
233252
System.out.println("Training...");
234253
Iteration iteration = trainer.trainProject(project.id());
235254
while (iteration.status().equals("Training"))
@@ -240,6 +259,7 @@ public static void ObjectDetection_Sample(TrainingApi trainClient, PredictionEnd
240259
}
241260
System.out.println("Training Status: "+ iteration.status());
242261
trainer.updateIteration(project.id(), iteration.id(), iteration.withIsDefault(true));
262+
// </snippet_train_od>
243263

244264
// use below for url
245265
// String url = "some url";
@@ -248,6 +268,7 @@ public static void ObjectDetection_Sample(TrainingApi trainClient, PredictionEnd
248268
// .withUrl(url)
249269
// .execute();
250270

271+
// <snippet_prediction_od>
251272
// load test image
252273
byte[] testImage = GetImage("/ObjectTest", "test_image.jpg");
253274

@@ -268,12 +289,14 @@ public static void ObjectDetection_Sample(TrainingApi trainClient, PredictionEnd
268289
prediction.boundingBox().height()
269290
));
270291
}
292+
// </snippet_prediction_od>
271293
} catch (Exception e) {
272294
System.out.println(e.getMessage());
273295
e.printStackTrace();
274296
}
275297
}
276298

299+
// <snippet_helpers>
277300
private static void AddImageToProject(Trainings trainer, Project project, String fileName, byte[] contents, UUID tag, double[] regionValues)
278301
{
279302
System.out.println("Adding image: " + fileName);
@@ -312,6 +335,7 @@ private static byte[] GetImage(String folder, String fileName)
312335
}
313336
return null;
314337
}
338+
// </snippet_helpers>
315339

316340
/**
317341
* Main entry point.

0 commit comments

Comments
 (0)