package com.chameleonvision.vision.pipeline; import com.chameleonvision.vision.camera.CameraCapture; import org.opencv.core.Mat; /** * * @param Pipeline result type */ public abstract class CVPipeline { protected Mat outputMat = new Mat(); CameraCapture cameraCapture; public S settings; protected CVPipeline(S settings) { this.settings = settings; } protected CVPipeline(String pipelineName, S settings) { this.settings = settings; settings.nickname = pipelineName; } public void initPipeline(CameraCapture camera) { cameraCapture = camera; cameraCapture.setExposure((int) settings.exposure); cameraCapture.setBrightness((int) settings.brightness); } abstract public R runPipeline(Mat inputMat); }