diff --git a/common/polystar/common/pipeline/debug_pipeline.py b/common/polystar/common/pipeline/debug_pipeline.py index defee08148e1553830a9329052adcf51225bde8e..c5822a53d6a664f6e40fd8af1adcc40dc88dcfd7 100644 --- a/common/polystar/common/pipeline/debug_pipeline.py +++ b/common/polystar/common/pipeline/debug_pipeline.py @@ -11,6 +11,7 @@ from polystar.common.pipeline.pipeline import Pipeline @dataclass class DebugInfo: + detected_objects: List[Object] = field(init=False) validated_objects: List[Object] = field(init=False) selected_object: Object = field(init=False) target: TargetABC = field(init=False) @@ -36,3 +37,8 @@ class DebugPipeline(Pipeline): objects = super()._get_objects_of_interest(image) self.debug_info_.validated_objects = objects return objects + + def _detect_all_objects(self, image) -> List[Object]: + objects = super()._detect_all_objects(image) + self.debug_info_.detected_objects = objects + return objects diff --git a/common/polystar/common/pipeline/pipeline.py b/common/polystar/common/pipeline/pipeline.py index 154c6615bc6d92064a951814eb4320be5d030d46..5333a47444fa670956461fb11d051e8a3eda548d 100644 --- a/common/polystar/common/pipeline/pipeline.py +++ b/common/polystar/common/pipeline/pipeline.py @@ -35,7 +35,7 @@ class Pipeline: return selected_object def _get_objects_of_interest(self, image: np.ndarray) -> List[Object]: - objects = self.objects_detector.detect(image) + objects = self._detect_all_objects(image) for objects_validator in self.objects_validators: objects = objects_validator.filter(objects, image) @@ -43,3 +43,6 @@ class Pipeline: raise NoTargetFound() return objects + + def _detect_all_objects(self, image) -> List[Object]: + return self.objects_detector.detect(image)