// Path: hackadrone-core/src/main/java/nl/ordina/jtech/hackadrone/io/recognition/Prediction.java
// public class Prediction {
// 
//     private String label;
//     private double percentage;
// 
//     public Prediction(String label, double percentage) {
//         this.label = label;
//         this.percentage = percentage;
//     }
// 
//     public void setLabel(final String label) {
//         this.label = label;
//     }
// 
//     public void setPercentage(final double percentage) {
//         this.percentage = percentage;
//     }
// 
//     public String toString() {
//         return String.format("%s: %.2f ", this.label, this.percentage);
//     }
// 
// }


import java.awt.image.BufferedImage;
import java.util.List;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import nl.ordina.jtech.hackadrone.io.recognition.Prediction;
package nl.ordina.jtech.hackadrone.io;




public class VideoFrame {

    private static final int FRAME_WIDTH = 720;
    private static final int FRAME_HEIGHT = 676;

    private JFrame frame;
    private JLabel label;
    private BufferedImage bufferedImage;

    public VideoFrame() {
        frame = new JFrame("Video Frame");
        frame.setSize(FRAME_WIDTH, FRAME_HEIGHT);
        label = new JLabel();
        frame.add(label);
    }

    public void showFrame() {
        frame.setVisible(true);
    }

    public void hideFrame() {
        frame.setVisible(false);
    }

    public void updateVideoFrame(BufferedImage bufferedImage) {
        setBufferedImage(bufferedImage);
        label.setIcon(new ImageIcon(bufferedImage));
    }

// Path: hackadrone-core/src/main/java/nl/ordina/jtech/hackadrone/io/recognition/Prediction.java
// public class Prediction {
// 
//     private String label;
//     private double percentage;
// 
//     public Prediction(String label, double percentage) {
//         this.label = label;
//         this.percentage = percentage;
//     }
// 
//     public void setLabel(final String label) {
//         this.label = label;
//     }
// 
//     public void setPercentage(final double percentage) {
//         this.percentage = percentage;
//     }
// 
//     public String toString() {
//         return String.format("%s: %.2f ", this.label, this.percentage);
//     }
// 
// }


// Path: hackadrone-core/src/main/java/nl/ordina/jtech/hackadrone/io/VideoFrame.java
import java.awt.image.BufferedImage;
import java.util.List;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import nl.ordina.jtech.hackadrone.io.recognition.Prediction;

package nl.ordina.jtech.hackadrone.io;




public class VideoFrame {

    private static final int FRAME_WIDTH = 720;
    private static final int FRAME_HEIGHT = 676;

    private JFrame frame;
    private JLabel label;
    private BufferedImage bufferedImage;

    public VideoFrame() {
        frame = new JFrame("Video Frame");
        frame.setSize(FRAME_WIDTH, FRAME_HEIGHT);
        label = new JLabel();
        frame.add(label);
    }

    public void showFrame() {
        frame.setVisible(true);
    }

    public void hideFrame() {
        frame.setVisible(false);
    }

    public void updateVideoFrame(BufferedImage bufferedImage) {
        setBufferedImage(bufferedImage);
        label.setIcon(new ImageIcon(bufferedImage));
    }

    public void setFrameLabel(List<Prediction> predictionList) {