euler-preprocess 3.20.0__tar.gz → 3.21.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. {euler_preprocess-3.20.0/euler_preprocess.egg-info → euler_preprocess-3.21.0}/PKG-INFO +2 -1
  2. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/README.md +1 -0
  3. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/docs/plans/coherent-cropping.md +3 -1
  4. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0/euler_preprocess.egg-info}/PKG-INFO +2 -1
  5. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/pyproject.toml +1 -1
  6. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/CHANGELOG.md +0 -0
  7. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/LICENSE +0 -0
  8. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/MANIFEST.in +0 -0
  9. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/docs/spatial.md +0 -0
  10. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/__init__.py +0 -0
  11. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/cli.py +0 -0
  12. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/common/__init__.py +0 -0
  13. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/common/color.py +0 -0
  14. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/common/dataset.py +0 -0
  15. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/common/device.py +0 -0
  16. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/common/intrinsics.py +0 -0
  17. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/common/io.py +0 -0
  18. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/common/logging.py +0 -0
  19. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/common/noise.py +0 -0
  20. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/common/normalize.py +0 -0
  21. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/common/output.py +0 -0
  22. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/common/sampling.py +0 -0
  23. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/common/transform.py +0 -0
  24. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/crop/__init__.py +0 -0
  25. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/crop/calibration.py +0 -0
  26. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/crop/files.py +0 -0
  27. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/crop/label_files.py +0 -0
  28. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/crop/roles.py +0 -0
  29. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/crop/run.py +0 -0
  30. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/crop/spec.py +0 -0
  31. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/crop/verify.py +0 -0
  32. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/fog/__init__.py +0 -0
  33. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/fog/airlight_from_sky.py +0 -0
  34. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/fog/atmospheric_light.py +0 -0
  35. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/fog/augmentations.py +0 -0
  36. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/fog/capture.py +0 -0
  37. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/fog/dcp_airlight.py +0 -0
  38. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/fog/dcp_airlight_torch.py +0 -0
  39. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/fog/dcp_heuristic_airlight.py +0 -0
  40. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/fog/dcp_heuristic_airlight_torch.py +0 -0
  41. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/fog/inference.py +0 -0
  42. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/fog/logging.py +0 -0
  43. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/fog/models.py +0 -0
  44. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/fog/pipeline.py +0 -0
  45. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/fog/transform.py +0 -0
  46. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/lidar_motion/__init__.py +0 -0
  47. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/lidar_motion/compensation.py +0 -0
  48. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/lidar_motion/transform.py +0 -0
  49. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/radial/__init__.py +0 -0
  50. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/radial/transform.py +0 -0
  51. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/sky_depth/__init__.py +0 -0
  52. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/sky_depth/transform.py +0 -0
  53. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess/spatial.py +0 -0
  54. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess.egg-info/SOURCES.txt +0 -0
  55. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess.egg-info/dependency_links.txt +0 -0
  56. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess.egg-info/entry_points.txt +0 -0
  57. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess.egg-info/requires.txt +0 -0
  58. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/euler_preprocess.egg-info/top_level.txt +0 -0
  59. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/examples/spatial-five-field.json +0 -0
  60. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/setup.cfg +0 -0
  61. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_airlight_fallback.py +0 -0
  62. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_cli_sample_selection.py +0 -0
  63. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_crop.py +0 -0
  64. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_crop_labels.py +0 -0
  65. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_crop_muses.py +0 -0
  66. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_crop_roles.py +0 -0
  67. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_crop_spec.py +0 -0
  68. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_dcp_heuristic_airlight.py +0 -0
  69. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_dense_gloomy_daylight_config.py +0 -0
  70. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_fog_aux_outputs.py +0 -0
  71. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_fog_aware_auto_exposure.py +0 -0
  72. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_fog_cpu_gpu_parity.py +0 -0
  73. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_fog_input_normalization.py +0 -0
  74. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_fog_integration.py +0 -0
  75. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_intrinsics.py +0 -0
  76. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_lidar_motion.py +0 -0
  77. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_modality_roles.py +0 -0
  78. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_radial.py +0 -0
  79. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_real_drive_sim_scenario_profiles.py +0 -0
  80. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_scene_illumination.py +0 -0
  81. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_sensor_identity.py +0 -0
  82. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_sky_depth.py +0 -0
  83. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_source_backed_output.py +0 -0
  84. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_spatial.py +0 -0
  85. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_tone_map_lut.py +0 -0
  86. {euler_preprocess-3.20.0 → euler_preprocess-3.21.0}/tests/test_zip_output.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: euler-preprocess
3
- Version: 3.20.0
3
+ Version: 3.21.0
4
4
  Summary: Physics-based preprocessing (fog, etc.) for RGB+depth datasets
5
5
  Author-email: Daniel Rothenpieler <rothenpielerdaniel@gmail.com>
6
6
  License-Expression: MIT
@@ -801,6 +801,7 @@ The crop config (`configs/crop_config.json`) describes the box relative to the
801
801
 
802
802
  | Key | Meaning |
803
803
  |---|---|
804
+ | `reference` | The per-sample raster the box is relative to (default `rgb`). Any image-shaped modality works, so `"reference": "semantic_segmentation"` with only that modality in the dataset config crops the labels alone; other rasters must have its size |
804
805
  | `crop.remove` | What to cut off each edge (`top`, `bottom`, `left`, `right`) |
805
806
  | `crop.keep` + `crop.anchor` | The kept `height` / `width`, placed at `center` (default), `top`, `bottom`, `left`, `right`, `top_left`, `top_right`, `bottom_left` or `bottom_right` |
806
807
  | `crop.unit` | `fraction` (default) or `pixel`. Fractions lie in `[0, 1)` (`keep`: `(0, 1]`) and round half up per edge: `floor(f · size + 0.5)` |
@@ -781,6 +781,7 @@ The crop config (`configs/crop_config.json`) describes the box relative to the
781
781
 
782
782
  | Key | Meaning |
783
783
  |---|---|
784
+ | `reference` | The per-sample raster the box is relative to (default `rgb`). Any image-shaped modality works, so `"reference": "semantic_segmentation"` with only that modality in the dataset config crops the labels alone; other rasters must have its size |
784
785
  | `crop.remove` | What to cut off each edge (`top`, `bottom`, `left`, `right`) |
785
786
  | `crop.keep` + `crop.anchor` | The kept `height` / `width`, placed at `center` (default), `top`, `bottom`, `left`, `right`, `top_left`, `top_right`, `bottom_left` or `bottom_right` |
786
787
  | `crop.unit` | `fraction` (default) or `pixel`. Fractions lie in `[0, 1)` (`keep`: `(0, 1]`) and round half up per edge: `floor(f · size + 0.5)` |
@@ -394,7 +394,9 @@ ground truth for every class, the sky included:
394
394
  - Labels are never interpolated.
395
395
 
396
396
  euler-view's crop addon offers `semantic_segmentation` instead of `sky_mask`,
397
- which is only a model output. Depth PNGs (§7.3) could use the same path later.
397
+ which is only a model output. RGB is optional in the addon: the crop's
398
+ `reference` is the first included of RGB, depth and semantic segmentation, so
399
+ a single modality (e.g. the semantic GT) can be cropped on its own. Depth PNGs (§7.3) could use the same path later.
398
400
 
399
401
  **MUSES lidar needs motion compensation.** The sensor is not a spinning lidar.
400
402
  It scans a ~124° × 25° forward window top to bottom in 84.5 ms: point
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: euler-preprocess
3
- Version: 3.20.0
3
+ Version: 3.21.0
4
4
  Summary: Physics-based preprocessing (fog, etc.) for RGB+depth datasets
5
5
  Author-email: Daniel Rothenpieler <rothenpielerdaniel@gmail.com>
6
6
  License-Expression: MIT
@@ -801,6 +801,7 @@ The crop config (`configs/crop_config.json`) describes the box relative to the
801
801
 
802
802
  | Key | Meaning |
803
803
  |---|---|
804
+ | `reference` | The per-sample raster the box is relative to (default `rgb`). Any image-shaped modality works, so `"reference": "semantic_segmentation"` with only that modality in the dataset config crops the labels alone; other rasters must have its size |
804
805
  | `crop.remove` | What to cut off each edge (`top`, `bottom`, `left`, `right`) |
805
806
  | `crop.keep` + `crop.anchor` | The kept `height` / `width`, placed at `center` (default), `top`, `bottom`, `left`, `right`, `top_left`, `top_right`, `bottom_left` or `bottom_right` |
806
807
  | `crop.unit` | `fraction` (default) or `pixel`. Fractions lie in `[0, 1)` (`keep`: `(0, 1]`) and round half up per edge: `floor(f · size + 0.5)` |
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "euler-preprocess"
7
- version = "3.20.0"
7
+ version = "3.21.0"
8
8
  description = "Physics-based preprocessing (fog, etc.) for RGB+depth datasets"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9"