List of usage examples for org.deeplearning4j.eval.meta Prediction getRecordMetaData
public <T> T getRecordMetaData(Class<T> recordMetaDataClass)
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()); } }