/** * tags identified faces. * * @param identificationSet a set of identifications. * @return this */ @NotNull public ImageOverlayBuilder identify(@NotNull IdentificationSet identificationSet) { return identify(identificationSet, RectangleTextPosition.TOP_OF); }
/** * Merges another image onto the base image (to the right) * * @param mergeImage the image to be merged * @return this */ @NotNull public ImageOverlayBuilder mergeImage(@NotNull BufferedImage mergeImage) { return mergeImage(mergeImage, MergeImagesFilter.Position.RIGHT); }
@NotNull public ImageOverlayBuilder outFaceLandmarksOnImage(@NotNull Face face) { return outFaceLandmarksOnImage(face, BorderWeight.THICK); }
public static void main(String[] args) throws IOException { FaceScenarios faceScenarios = new FaceScenarios(System.getProperty("azure.cognitive.subscriptionKey"), System.getProperty("azure.cognitive.emotion.subscriptionKey")); ImageOverlayBuilder imageOverlayBuilder = ImageOverlayBuilder.builder(FILE_LOCATION_OF_US_PRESIDENT); Face face = faceScenarios.findSingleFace(FILE_LOCATION_OF_US_PRESIDENT); imageOverlayBuilder.outlineFaceOnImage(face, RectangleType.FULL, ImageOverlayBuilder.DEFAULT_BORDER_WEIGHT, CognitiveJColourPalette.POPPY).writeGenderAndAge(face, CognitiveJColourPalette.POPPY).launchViewer(); } }
public static void main(String[] args) throws IOException { FaceScenarios faceScenarios = new FaceScenarios(System.getProperty("azure.cognitive.subscriptionKey"), System.getProperty("azure.cognitive.emotion.subscriptionKey")); File imageFile = File.createTempFile("DetectSingleFaceFromFileExample", "pic"); //create a new java.io.File from a remote file FileUtils.copyURLToFile(new URL(IMAGE_LOCATION), imageFile); FileUtils.forceDeleteOnExit(imageFile); ImageOverlayBuilder imageOverlayBuilder = ImageOverlayBuilder.builder(imageFile); CognitiveJColourPalette colourPalette = CognitiveJColourPalette.STRAWBERRY; List<Face> faces = faceScenarios.findFaces(imageFile); faces.forEach(face -> imageOverlayBuilder.outlineFaceOnImage(face, RectangleType.FULL, ImageOverlayBuilder.DEFAULT_BORDER_WEIGHT, colourPalette).writeAge(face, colourPalette, RectangleTextPosition.TOP_OF)); imageOverlayBuilder.launchViewer(); } }
public static void main(String[] args) throws IOException { FaceScenarios faceScenarios = new FaceScenarios(getProperty("azure.cognitive.subscriptionKey"), getProperty("azure.cognitive.emotion.subscriptionKey")); List<Face> faces = faceScenarios.findFaces(IMAGE_URL); ImageOverlayBuilder.builder(IMAGE_URL).outlineFacesOnImage(faces, RectangleType.CORNERED, CognitiveJColourPalette.MEADOW). writeFaceAttributes(faces, CognitiveJColourPalette.MEADOW, RectangleTextPosition.TOP_OF).launchViewer(); } }
public static void main(String[] args) throws IOException { FaceScenarios faceScenarios = new FaceScenarios(getProperty("azure.cognitive.subscriptionKey"), getProperty("azure.cognitive.emotion.subscriptionKey")); ImageOverlayBuilder imageOverlayBuilder = ImageOverlayBuilder.builder(IMAGE); List<ImageHolder> candidates = candidates(); People people = ScenarioHelper. createPeopleFromHoldingImages(candidates, ImageNamingStrategy.DEFAULT); String groupId = faceScenarios. createGroupWithPeople(randomAlphabetic(6).toLowerCase(), people); Utils.waitFor(10, TimeUnit.SECONDS); //let the training be completed java.util.List<IdentificationSet> identificationSets = faceScenarios.identifyPersonsInGroup(groupId, IMAGE); imageOverlayBuilder.identify(identificationSets); buildGrid(imageOverlayBuilder, people); imageOverlayBuilder.launchViewer().toClipboard(); faceScenarios.deleteGroup(groupId); }
/** * Outlines a face on the base image with defaults; * ({@link ImageOverlayBuilder#outlineFaceOnImage(Face, RectangleType, BorderWeight, CognitiveJColourPalette)} * * @param face - the face. * @return this */ @NotNull public ImageOverlayBuilder outlineFaceOnImage(@NotNull Face face) { return outlineFaceOnImage(face, RectangleType.CORNERED); }
public static void main(String[] args) throws IOException { FaceScenarios faceScenarios = new FaceScenarios(getProperty("azure.cognitive.subscriptionKey"), getProperty("azure.cognitive.emotion.subscriptionKey")); ImageOverlayBuilder imageOverlayBuilder = ImageOverlayBuilder.builder(CANDIDATE_1); imageOverlayBuilder.verify(CANDIDATE_2, faceScenarios.verifyFaces(CANDIDATE_1, CANDIDATE_2)).launchViewer(); } }
public static void main(String[] args) throws IOException { FaceScenarios faceScenarios = new FaceScenarios(getProperty("azure.cognitive.subscriptionKey"), getProperty("azure.cognitive.emotion.subscriptionKey")); Face faces = faceScenarios.findSingleFace(IMAGE_URL); ImageOverlayBuilder.builder(IMAGE_URL).outFaceLandmarksOnImage(faces). launchViewer(); } }
public static void main(String[] args) throws IOException { FaceScenarios faceScenarios = new FaceScenarios(System.getProperty("azure.cognitive.subscriptionKey"),System.getProperty("azure.cognitive.emotion.subscriptionKey")); File imageFile = File.createTempFile("DetectSingleFaceFromFileExample", "pic"); //create a new java.io.File from a remote file FileUtils.copyURLToFile(new URL(FILE_LOCATION_OF_US_PRESIDENT), imageFile); FileUtils.forceDeleteOnExit(imageFile); ImageOverlayBuilder imageOverlayBuilder = ImageOverlayBuilder.builder(imageFile); imageOverlayBuilder.outlineFaceOnImage(faceScenarios.findSingleFace(imageFile), RectangleType.FULL).launchViewer(); } }
/** * write out the faces gender and age (formatted '%Gender, Age %.1f') * ({@link ImageOverlayBuilder#outlineFaceOnImage(Face, RectangleType, BorderWeight, CognitiveJColourPalette)} * * @param face the face. * @param colourPalette the colors to use * @param insets any Insets to take into consideration(e.g. border thickness). * @return this */ public ImageOverlayBuilder writeGenderAndAge(Face face, CognitiveJColourPalette colourPalette, @NotNull Insets insets) { return writeGenderAndAge(face, colourPalette, insets, RectangleTextPosition.TOP_OF); }
/** * write out the faces' {@link FaceAttributes} * * @param face - the face. * @return this */ @NotNull public ImageOverlayBuilder writeFaceAttributes(@NotNull Face face) { return writeFaceAttributes(face, CognitiveJColourPalette.GRAY); }
public static void main(String[] args) throws IOException { ComputerVisionScenario computerVisionScenario = new ComputerVisionScenario(getProperty("azure.cognitive.vision.subscriptionKey")); OCRResult ocrResult = computerVisionScenario.ocrImage(IMAGE_URL); ImageOverlayBuilder.builder(IMAGE_URL).ocrImage(ocrResult).launchViewer(); } }
public static void main(String[] args) throws IOException { FaceScenarios faceScenarios = new FaceScenarios(getProperty("azure.cognitive.subscriptionKey"), getProperty("azure.cognitive.emotion.subscriptionKey")); ImageOverlayBuilder.builder(IMAGE_URL) .outlineEmotionsOnImage(faceScenarios .findEmotionFaces(IMAGE_URL)).launchViewer(); } }
public static void main(String[] args) throws IOException { ComputerVisionScenario computerVisionScenario = new ComputerVisionScenario(getProperty("azure.cognitive.vision.subscriptionKey")); ImageDescription imageDescription = computerVisionScenario.describeImage(IMAGE_URL); ImageOverlayBuilder.builder(IMAGE_URL).describeImage(imageDescription).launchViewer(); } }
public static void main(String[] args){ FaceScenarios faceScenarios = new FaceScenarios( getProperty("azure.cognitive.subscriptionKey"), getProperty("azure.cognitive.emotion.subscriptionKey")); ImageOverlayBuilder imageOverlayBuilder = ImageOverlayBuilder.builder(IMAGE_URL); imageOverlayBuilder.outlineFacesOnImage(faceScenarios.findFaces(IMAGE_URL), RectangleType.FULL, CognitiveJColourPalette.STRAWBERRY).launchViewer(); } }
public static void main(String[] args) throws IOException { FaceScenarios faceScenarios = new FaceScenarios(getProperty("azure.cognitive.subscriptionKey"), getProperty("azure.cognitive.emotion.subscriptionKey")); ImageOverlayBuilder.builder(IMAGE_URL) .outlineDominantEmotionsOnImage(faceScenarios .findEmotionFaces(IMAGE_URL), RectangleTextPosition.BOTTOM_OF).launchViewer(); } }
/** * write out the faces age (formatted 'Age %.1f') to the top of the face rectangle. * ({@link ImageOverlayBuilder#outlineFaceOnImage(Face, RectangleType, BorderWeight, CognitiveJColourPalette)} * * @param face - the face. * @return this */ @NotNull public ImageOverlayBuilder writeAge(@NotNull Face face) { return writeAge(face, RectangleTextPosition.TOP_OF); }
/** * Draws a verification graphic for the base image and the passed image. * * @param candidateImageAsUrl - the passed image as an URL. * @param verificationSet - a verification set to be drawn. * @return this * @throws ImageNotFoundException if the image can't be downloaded */ @NotNull public ImageOverlayBuilder verify(@NotNull String candidateImageAsUrl, @NotNull VerificationSet verificationSet) { try { verify(ImageIO.read(new URL(candidateImageAsUrl)), verificationSet); } catch (IOException e) { throw new ImageNotFoundException(candidateImageAsUrl); } return this; }