Example usage for org.deeplearning4j.eval.meta Prediction getRecordMetaData

List of usage examples for org.deeplearning4j.eval.meta Prediction getRecordMetaData

Introduction

In this page you can find the example usage for org.deeplearning4j.eval.meta Prediction getRecordMetaData.

Prototype

public <T> T getRecordMetaData(Class<T> recordMetaDataClass) 

Source Link

Document

Convenience method for getting the record meta data as a particular class (as an alternative to casting it manually).

Usage

From source file:org.audiveris.omrdataset.train.Training.java

License:Open Source License

/**
 * Save to disk the image for a shape not correctly recognized.
 *
 * @param prediction the (wrong) prediction
 * @param rawData    pixels raw data/* www .  java 2  s  .  c om*/
 * @param folder     target folder for current epoch
 * @throws Exception
 */
private void saveMistake(Prediction prediction, List<Writable> rawData, Path folder) throws Exception {
    RecordMetaDataLine meta = prediction.getRecordMetaData(RecordMetaDataLine.class);
    final int line = meta.getLineNumber();
    final OmrShape predicted = shapeValues[prediction.getPredictedClass()];
    final OmrShape actual = shapeValues[prediction.getActualClass()];
    final Journal.Record record = journal.getRecord(line);
    System.out.println(record + " mistaken for " + predicted);

    if (folder != null) {
        Files.createDirectories(folder);

        // Generate mistaken subimage
        double[] pixels = new double[rawData.size()];

        for (int i = 0; i < pixels.length; i++) {
            pixels[i] = rawData.get(i).toDouble();
        }

        INDArray row = Nd4j.create(pixels);
        BufferedImage img = SubImages.buildSubImage(row);

        // Save subimage to disk, with proper naming
        String name = actual + "-" + line + "-" + predicted + OUTPUT_IMAGES_EXT;
        ImageIO.write(img, OUTPUT_IMAGES_FORMAT, folder.resolve(name).toFile());
    }
}