1 package kaka.cakelight;
3 import org.opencv.core.Core;
5 import java.io.FileOutputStream;
6 import java.io.IOException;
10 public static void main(String[] args) {
11 System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
13 Configuration config = Configuration.from("config.properties");
14 System.out.println("Running with config:\n" + config);
16 FrameGrabber grabber = FrameGrabber.from(config);
18 Frame frame = grabber.grabFrame();
20 for (int i = 0; i < 100; i++) {
21 time += timeIt("frame", () -> grabber.grabFrame());
23 System.out.println("time = " + time);
25 // byte[] data = frame.getData();
26 // saveFile(data, "/home/kaka/test.img");
29 public static void saveFile(byte[] data, String filepath) {
31 FileOutputStream fos = new FileOutputStream(filepath);
34 } catch (IOException e) {
39 public static double timeIt(String tag, Runnable lambda) {
40 long start = System.nanoTime();
42 long end = System.nanoTime();
43 double duration = (end - start) * 0.000001;
44 System.out.println("duration (ms): " + tag + " = " + duration);
50 FrameGrabber läser frames asynkront
51 skickar frame till FrameConverter
53 läses av FrameProcessor/LedController