feat(perception): record E39 R1 refinement
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
from __future__ import annotations
|
||||
|
||||
import numpy as np
|
||||
|
||||
from k1link.compute.e39_perception_refinement import (
|
||||
_feature_names,
|
||||
_fit_robust_scaler,
|
||||
_predict_presence,
|
||||
_project_dimensions,
|
||||
_transform,
|
||||
)
|
||||
|
||||
|
||||
def test_e39_feature_contract_and_knn_are_deterministic() -> None:
|
||||
assert len(_feature_names()) == 262
|
||||
matrix = np.asarray(
|
||||
[
|
||||
[0.0, 1.0],
|
||||
[0.1, 1.1],
|
||||
[4.9, 5.0],
|
||||
[5.0, 5.1],
|
||||
],
|
||||
dtype=np.float64,
|
||||
)
|
||||
median, scale = _fit_robust_scaler(matrix)
|
||||
transformed = _transform(matrix, median=median, scale=scale, clip=20.0)
|
||||
first = _predict_presence(
|
||||
transformed[0],
|
||||
transformed[1:],
|
||||
["background", "object", "object"],
|
||||
neighbors=3,
|
||||
)
|
||||
second = _predict_presence(
|
||||
transformed[0],
|
||||
transformed[1:],
|
||||
["background", "object", "object"],
|
||||
neighbors=3,
|
||||
)
|
||||
assert first == second == ("object", 2 / 3)
|
||||
|
||||
|
||||
def test_e39_projects_presence_through_frozen_stratum_ontology() -> None:
|
||||
assert _project_dimensions("camera-only", "object-present") == {
|
||||
"presence": "object-present",
|
||||
"geometry_association": "insufficient-support",
|
||||
"freshness": "unavailable",
|
||||
}
|
||||
assert _project_dimensions("geometry-only", "occupied-environment") == {
|
||||
"presence": "occupied-environment",
|
||||
"geometry_association": "independent-occupied",
|
||||
"freshness": "current",
|
||||
}
|
||||
assert _project_dimensions("unknown", "background-or-noise") == {
|
||||
"presence": "background-or-noise",
|
||||
"geometry_association": "rejected-nonobject",
|
||||
"freshness": "current",
|
||||
}
|
||||
Reference in New Issue
Block a user