diff --git a/chameleon-server/src/main/java/com/chameleonvision/config/PipelineConfig.java b/chameleon-server/src/main/java/com/chameleonvision/config/PipelineConfig.java index e57ca250f..61376ed0e 100644 --- a/chameleon-server/src/main/java/com/chameleonvision/config/PipelineConfig.java +++ b/chameleon-server/src/main/java/com/chameleonvision/config/PipelineConfig.java @@ -2,6 +2,8 @@ package com.chameleonvision.config; import com.chameleonvision.util.JacksonHelper; import com.chameleonvision.vision.pipeline.*; +import com.chameleonvision.vision.pipeline.impl.CVPipeline2dSettings; +import com.chameleonvision.vision.pipeline.impl.CVPipeline3dSettings; import java.io.File; import java.io.IOException; diff --git a/chameleon-server/src/main/java/com/chameleonvision/vision/VisionProcess.java b/chameleon-server/src/main/java/com/chameleonvision/vision/VisionProcess.java index 9d11db4fd..595d49905 100644 --- a/chameleon-server/src/main/java/com/chameleonvision/vision/VisionProcess.java +++ b/chameleon-server/src/main/java/com/chameleonvision/vision/VisionProcess.java @@ -3,10 +3,12 @@ package com.chameleonvision.vision; import com.chameleonvision.Debug; import com.chameleonvision.config.ConfigManager; import com.chameleonvision.util.LoopingRunnable; -import com.chameleonvision.vision.camera.CameraCapture; import com.chameleonvision.vision.camera.CameraStreamer; import com.chameleonvision.vision.camera.USBCameraCapture; import com.chameleonvision.vision.pipeline.*; +import com.chameleonvision.vision.pipeline.impl.CVPipeline2d; +import com.chameleonvision.vision.pipeline.impl.CVPipeline3d; +import com.chameleonvision.vision.pipeline.impl.DriverVisionPipeline; import com.chameleonvision.web.SocketHandler; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; diff --git a/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/CVPipeline.java b/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/CVPipeline.java index 092939ace..d71bd64fb 100644 --- a/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/CVPipeline.java +++ b/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/CVPipeline.java @@ -1,6 +1,7 @@ package com.chameleonvision.vision.pipeline; import com.chameleonvision.vision.camera.CameraCapture; +import com.chameleonvision.vision.pipeline.impl.CVPipeline3d; import org.opencv.core.Mat; /** diff --git a/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/PipelineManager.java b/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/PipelineManager.java index 7e6a942a1..b0a2649f7 100644 --- a/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/PipelineManager.java +++ b/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/PipelineManager.java @@ -4,6 +4,7 @@ import com.chameleonvision.config.CameraConfig; import com.chameleonvision.config.ConfigManager; import com.chameleonvision.vision.VisionManager; import com.chameleonvision.vision.VisionProcess; +import com.chameleonvision.vision.pipeline.impl.*; import com.chameleonvision.web.SocketHandler; import edu.wpi.first.networktables.NetworkTableEntry; diff --git a/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/CVPipeline2d.java b/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/impl/CVPipeline2d.java similarity index 97% rename from chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/CVPipeline2d.java rename to chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/impl/CVPipeline2d.java index d7b45bacf..aeb75f5d2 100644 --- a/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/CVPipeline2d.java +++ b/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/impl/CVPipeline2d.java @@ -1,17 +1,18 @@ -package com.chameleonvision.vision.pipeline; +package com.chameleonvision.vision.pipeline.impl; import com.chameleonvision.Main; import com.chameleonvision.util.MemoryManager; import com.chameleonvision.vision.camera.CameraCapture; import com.chameleonvision.vision.camera.CaptureStaticProperties; -import com.chameleonvision.vision.enums.CalibrationMode; +import com.chameleonvision.vision.pipeline.CVPipeline; +import com.chameleonvision.vision.pipeline.CVPipelineResult; import com.chameleonvision.vision.pipeline.pipes.*; import org.apache.commons.lang3.tuple.Pair; import org.opencv.core.*; import java.util.List; -import static com.chameleonvision.vision.pipeline.CVPipeline2d.*; +import static com.chameleonvision.vision.pipeline.impl.CVPipeline2d.*; @SuppressWarnings("WeakerAccess") public class CVPipeline2d extends CVPipeline { diff --git a/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/CVPipeline2dSettings.java b/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/impl/CVPipeline2dSettings.java similarity index 91% rename from chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/CVPipeline2dSettings.java rename to chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/impl/CVPipeline2dSettings.java index 2f3be3ed8..4f023f16c 100644 --- a/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/CVPipeline2dSettings.java +++ b/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/impl/CVPipeline2dSettings.java @@ -1,9 +1,10 @@ -package com.chameleonvision.vision.pipeline; +package com.chameleonvision.vision.pipeline.impl; import com.chameleonvision.vision.enums.CalibrationMode; import com.chameleonvision.vision.enums.SortMode; import com.chameleonvision.vision.enums.TargetGroup; import com.chameleonvision.vision.enums.TargetIntersection; +import com.chameleonvision.vision.pipeline.CVPipelineSettings; import java.util.Arrays; import java.util.List; diff --git a/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/CVPipeline3d.java b/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/impl/CVPipeline3d.java similarity index 76% rename from chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/CVPipeline3d.java rename to chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/impl/CVPipeline3d.java index 7db893fef..c39469500 100644 --- a/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/CVPipeline3d.java +++ b/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/impl/CVPipeline3d.java @@ -1,10 +1,12 @@ -package com.chameleonvision.vision.pipeline; +package com.chameleonvision.vision.pipeline.impl; +import com.chameleonvision.vision.pipeline.CVPipeline; +import com.chameleonvision.vision.pipeline.CVPipelineResult; import org.opencv.core.Mat; import java.util.List; -import static com.chameleonvision.vision.pipeline.CVPipeline3d.*; +import static com.chameleonvision.vision.pipeline.impl.CVPipeline3d.*; public class CVPipeline3d extends CVPipeline { diff --git a/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/CVPipeline3dSettings.java b/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/impl/CVPipeline3dSettings.java similarity index 82% rename from chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/CVPipeline3dSettings.java rename to chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/impl/CVPipeline3dSettings.java index 342659ca1..70729f5b8 100644 --- a/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/CVPipeline3dSettings.java +++ b/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/impl/CVPipeline3dSettings.java @@ -1,4 +1,4 @@ -package com.chameleonvision.vision.pipeline; +package com.chameleonvision.vision.pipeline.impl; public class CVPipeline3dSettings extends CVPipeline2dSettings { // TODO: (2.1) define 3d-specific pipeline settings diff --git a/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/DriverVisionPipeline.java b/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/impl/DriverVisionPipeline.java similarity index 88% rename from chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/DriverVisionPipeline.java rename to chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/impl/DriverVisionPipeline.java index e00c156e4..ec38034d9 100644 --- a/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/DriverVisionPipeline.java +++ b/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/impl/DriverVisionPipeline.java @@ -1,9 +1,11 @@ -package com.chameleonvision.vision.pipeline; +package com.chameleonvision.vision.pipeline.impl; import com.chameleonvision.util.MemoryManager; import com.chameleonvision.vision.camera.CameraCapture; import com.chameleonvision.vision.enums.CalibrationMode; -import com.chameleonvision.vision.pipeline.pipes.Draw2dContoursPipe; +import com.chameleonvision.vision.pipeline.CVPipeline; +import com.chameleonvision.vision.pipeline.CVPipelineResult; +import com.chameleonvision.vision.pipeline.CVPipelineSettings; import com.chameleonvision.vision.pipeline.pipes.Draw2dCrosshairPipe; import com.chameleonvision.vision.pipeline.pipes.RotateFlipPipe; import org.apache.commons.lang3.tuple.Pair; @@ -12,7 +14,7 @@ import org.opencv.core.RotatedRect; import java.util.List; -import static com.chameleonvision.vision.pipeline.DriverVisionPipeline.DriverPipelineResult; +import static com.chameleonvision.vision.pipeline.impl.DriverVisionPipeline.DriverPipelineResult; public class DriverVisionPipeline extends CVPipeline { diff --git a/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/pipes/Collect2dTargetsPipe.java b/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/pipes/Collect2dTargetsPipe.java index 3d30f7d72..cafa503c6 100644 --- a/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/pipes/Collect2dTargetsPipe.java +++ b/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/pipes/Collect2dTargetsPipe.java @@ -1,12 +1,10 @@ package com.chameleonvision.vision.pipeline.pipes; import com.chameleonvision.vision.camera.CaptureStaticProperties; -import com.chameleonvision.vision.pipeline.CVPipeline2d; +import com.chameleonvision.vision.pipeline.impl.CVPipeline2d; import com.chameleonvision.vision.enums.CalibrationMode; -import com.chameleonvision.vision.pipeline.CVPipeline2dSettings; import org.apache.commons.lang3.tuple.Pair; import org.apache.commons.math3.util.FastMath; -import org.opencv.core.Mat; import org.opencv.core.RotatedRect; import java.util.ArrayList; diff --git a/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/pipes/Draw2dCrosshairPipe.java b/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/pipes/Draw2dCrosshairPipe.java index d0834420a..4f5ed80c5 100644 --- a/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/pipes/Draw2dCrosshairPipe.java +++ b/chameleon-server/src/main/java/com/chameleonvision/vision/pipeline/pipes/Draw2dCrosshairPipe.java @@ -1,10 +1,8 @@ package com.chameleonvision.vision.pipeline.pipes; import com.chameleonvision.util.Helpers; -import com.chameleonvision.vision.camera.CaptureStaticProperties; import com.chameleonvision.vision.enums.CalibrationMode; -import com.chameleonvision.vision.pipeline.CVPipeline2d; -import com.chameleonvision.vision.pipeline.CVPipeline2dSettings; +import com.chameleonvision.vision.pipeline.impl.CVPipeline2d; import org.apache.commons.lang3.tuple.Pair; import org.opencv.core.Mat; import org.opencv.core.Point; diff --git a/chameleon-server/src/main/java/com/chameleonvision/web/SocketHandler.java b/chameleon-server/src/main/java/com/chameleonvision/web/SocketHandler.java index ae5066f6d..342b132a2 100644 --- a/chameleon-server/src/main/java/com/chameleonvision/web/SocketHandler.java +++ b/chameleon-server/src/main/java/com/chameleonvision/web/SocketHandler.java @@ -9,7 +9,7 @@ import com.chameleonvision.vision.camera.USBCameraCapture; import com.chameleonvision.vision.enums.ImageRotationMode; import com.chameleonvision.vision.enums.StreamDivisor; import com.chameleonvision.vision.pipeline.CVPipeline; -import com.chameleonvision.vision.pipeline.CVPipeline2d; +import com.chameleonvision.vision.pipeline.impl.CVPipeline2d; import com.chameleonvision.vision.pipeline.CVPipelineSettings; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.type.TypeReference; @@ -164,6 +164,7 @@ public class SocketHandler { break; } case "rotationMode": {//Create new CaptureStaticProperties with new width and height, reset crosshair calib + ImageRotationMode rotationMode = currentPipeline.settings.rotationMode; CaptureStaticProperties prop = currentCamera.getProperties().getStaticProperties(); int width, height; diff --git a/chameleon-server/src/test/java/com/chameleonvision/config/StaticCaptureTest.java b/chameleon-server/src/test/java/com/chameleonvision/config/StaticCaptureTest.java index 93ead0087..845fd2fda 100644 --- a/chameleon-server/src/test/java/com/chameleonvision/config/StaticCaptureTest.java +++ b/chameleon-server/src/test/java/com/chameleonvision/config/StaticCaptureTest.java @@ -3,7 +3,7 @@ package com.chameleonvision.config; import com.chameleonvision.util.ProgramDirectoryUtilities; import com.chameleonvision.vision.camera.CameraStreamer; import com.chameleonvision.vision.image.StaticImageCapture; -import com.chameleonvision.vision.pipeline.CVPipeline2d; +import com.chameleonvision.vision.pipeline.impl.CVPipeline2d; import edu.wpi.cscore.CameraServerCvJNI; import edu.wpi.cscore.CameraServerJNI; import edu.wpi.first.networktables.NetworkTableInstance; @@ -17,7 +17,6 @@ import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; -import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List;