diff --git a/photon-core/src/main/java/org/photonvision/vision/pipeline/DriverModePipeline.java b/photon-core/src/main/java/org/photonvision/vision/pipeline/DriverModePipeline.java index f29cb2be3..7da971550 100644 --- a/photon-core/src/main/java/org/photonvision/vision/pipeline/DriverModePipeline.java +++ b/photon-core/src/main/java/org/photonvision/vision/pipeline/DriverModePipeline.java @@ -20,19 +20,15 @@ package org.photonvision.vision.pipeline; import java.util.List; import org.apache.commons.lang3.tuple.Pair; import org.photonvision.common.util.math.MathUtils; -import org.photonvision.raspi.LibCameraJNI; -import org.photonvision.vision.camera.CameraQuirk; import org.photonvision.vision.frame.Frame; import org.photonvision.vision.frame.FrameThresholdType; import org.photonvision.vision.pipe.impl.CalculateFPSPipe; import org.photonvision.vision.pipe.impl.Draw2dCrosshairPipe; import org.photonvision.vision.pipe.impl.ResizeImagePipe; -import org.photonvision.vision.pipe.impl.RotateImagePipe; import org.photonvision.vision.pipeline.result.DriverModePipelineResult; public class DriverModePipeline extends CVPipeline { - private final RotateImagePipe rotateImagePipe = new RotateImagePipe(); private final Draw2dCrosshairPipe draw2dCrosshairPipe = new Draw2dCrosshairPipe(); private final CalculateFPSPipe calculateFPSPipe = new CalculateFPSPipe(); private final ResizeImagePipe resizeImagePipe = new ResizeImagePipe(); @@ -51,10 +47,6 @@ public class DriverModePipeline @Override protected void setPipeParamsImpl() { - RotateImagePipe.RotateImageParams rotateImageParams = - new RotateImagePipe.RotateImageParams(settings.inputImageRotationMode); - rotateImagePipe.setParams(rotateImageParams); - Draw2dCrosshairPipe.Draw2dCrosshairParams draw2dCrosshairParams = new Draw2dCrosshairPipe.Draw2dCrosshairParams( frameStaticProperties, settings.streamingFrameDivisor, settings.inputImageRotationMode); @@ -72,7 +64,6 @@ public class DriverModePipeline @Override public DriverModePipelineResult process(Frame frame, DriverModePipelineSettings settings) { long totalNanos = 0; - boolean accelerated = LibCameraJNI.isSupported() && cameraQuirks.hasQuirk(CameraQuirk.PiCam); // apply pipes var inputMat = frame.colorImage.getMat(); @@ -80,11 +71,6 @@ public class DriverModePipeline boolean emptyIn = inputMat.empty(); if (!emptyIn) { - if (!accelerated) { - var rotateImageResult = rotateImagePipe.run(inputMat); - totalNanos += rotateImageResult.nanosElapsed; - } - totalNanos += resizeImagePipe.run(inputMat).nanosElapsed; var draw2dCrosshairResult = draw2dCrosshairPipe.run(Pair.of(inputMat, List.of())); diff --git a/photon-core/src/main/java/org/photonvision/vision/processes/VisionRunner.java b/photon-core/src/main/java/org/photonvision/vision/processes/VisionRunner.java index 60acc0d39..7fd0266d3 100644 --- a/photon-core/src/main/java/org/photonvision/vision/processes/VisionRunner.java +++ b/photon-core/src/main/java/org/photonvision/vision/processes/VisionRunner.java @@ -75,6 +75,7 @@ public class VisionRunner { // (pipeline-dependent). I kinda hate how much leak this has... // TODO would a callback object be a better fit? var wantedProcessType = pipeline.getThresholdType(); + frameSupplier.requestFrameThresholdType(wantedProcessType); var settings = pipeline.getSettings(); if (settings instanceof AdvancedPipelineSettings) {