atlastrack 0.7.1__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 (208) hide show
  1. atlastrack-0.7.1/.gitignore +49 -0
  2. atlastrack-0.7.1/.import_linter_cache/.gitignore +2 -0
  3. atlastrack-0.7.1/.import_linter_cache/1f2c73f17c73c621955c943ccf7fb4cf63c39ecf.data.json +1 -0
  4. atlastrack-0.7.1/.import_linter_cache/249774fa66778c0ad43142ab45cf2d98f1880993.data.json +1 -0
  5. atlastrack-0.7.1/.import_linter_cache/4a69dfa28827c09e63d063acc19e3847c1780dfd.data.json +1 -0
  6. atlastrack-0.7.1/.import_linter_cache/CACHEDIR.TAG +3 -0
  7. atlastrack-0.7.1/.import_linter_cache/atlastrack.meta.json +1 -0
  8. atlastrack-0.7.1/.import_linter_cache/histo_to_ccf.meta.json +1 -0
  9. atlastrack-0.7.1/.importlinter +33 -0
  10. atlastrack-0.7.1/.pre-commit-config.yaml +17 -0
  11. atlastrack-0.7.1/HANDOFF.md +2249 -0
  12. atlastrack-0.7.1/LICENSE +28 -0
  13. atlastrack-0.7.1/MANUAL.md +299 -0
  14. atlastrack-0.7.1/PKG-INFO +151 -0
  15. atlastrack-0.7.1/README.md +93 -0
  16. atlastrack-0.7.1/TODO +3 -0
  17. atlastrack-0.7.1/TUTORIAL.md +184 -0
  18. atlastrack-0.7.1/pyproject.toml +162 -0
  19. atlastrack-0.7.1/src/atlastrack/__init__.py +3 -0
  20. atlastrack-0.7.1/src/atlastrack/atlas/__init__.py +1 -0
  21. atlastrack-0.7.1/src/atlastrack/atlas/meshes.py +82 -0
  22. atlastrack-0.7.1/src/atlastrack/atlas/planes.py +227 -0
  23. atlastrack-0.7.1/src/atlastrack/atlas/service.py +20 -0
  24. atlastrack-0.7.1/src/atlastrack/cli.py +541 -0
  25. atlastrack-0.7.1/src/atlastrack/config.py +151 -0
  26. atlastrack-0.7.1/src/atlastrack/ephys/__init__.py +60 -0
  27. atlastrack-0.7.1/src/atlastrack/ephys/alignment.py +93 -0
  28. atlastrack-0.7.1/src/atlastrack/ephys/analyzer.py +206 -0
  29. atlastrack-0.7.1/src/atlastrack/ephys/autolandmarks.py +636 -0
  30. atlastrack-0.7.1/src/atlastrack/ephys/combine.py +353 -0
  31. atlastrack-0.7.1/src/atlastrack/ephys/discovery.py +754 -0
  32. atlastrack-0.7.1/src/atlastrack/ephys/epochs.py +193 -0
  33. atlastrack-0.7.1/src/atlastrack/ephys/export.py +180 -0
  34. atlastrack-0.7.1/src/atlastrack/ephys/features.py +294 -0
  35. atlastrack-0.7.1/src/atlastrack/ephys/formats.py +305 -0
  36. atlastrack-0.7.1/src/atlastrack/ephys/landmarks.py +417 -0
  37. atlastrack-0.7.1/src/atlastrack/ephys/loader.py +401 -0
  38. atlastrack-0.7.1/src/atlastrack/ephys/penetration.py +149 -0
  39. atlastrack-0.7.1/src/atlastrack/ephys/probemap.py +441 -0
  40. atlastrack-0.7.1/src/atlastrack/ephys/recordings.py +224 -0
  41. atlastrack-0.7.1/src/atlastrack/ephys/regions.py +328 -0
  42. atlastrack-0.7.1/src/atlastrack/gui/__init__.py +1 -0
  43. atlastrack-0.7.1/src/atlastrack/gui/app.py +942 -0
  44. atlastrack-0.7.1/src/atlastrack/gui/crashlog.py +282 -0
  45. atlastrack-0.7.1/src/atlastrack/gui/gl_diagnostics.py +177 -0
  46. atlastrack-0.7.1/src/atlastrack/gui/section_display.py +53 -0
  47. atlastrack-0.7.1/src/atlastrack/gui/widgets/__init__.py +1 -0
  48. atlastrack-0.7.1/src/atlastrack/gui/widgets/atlas_browser.py +457 -0
  49. atlastrack-0.7.1/src/atlastrack/gui/widgets/atlas_help_dialog.py +199 -0
  50. atlastrack-0.7.1/src/atlastrack/gui/widgets/atlas_matcher.py +1272 -0
  51. atlastrack-0.7.1/src/atlastrack/gui/widgets/click_overlay.py +828 -0
  52. atlastrack-0.7.1/src/atlastrack/gui/widgets/ephys_align_dialog.py +557 -0
  53. atlastrack-0.7.1/src/atlastrack/gui/widgets/ephys_alignment_panel.py +1076 -0
  54. atlastrack-0.7.1/src/atlastrack/gui/widgets/ephys_discovery_dialog.py +705 -0
  55. atlastrack-0.7.1/src/atlastrack/gui/widgets/ephys_features_view.py +742 -0
  56. atlastrack-0.7.1/src/atlastrack/gui/widgets/ephys_panel.py +890 -0
  57. atlastrack-0.7.1/src/atlastrack/gui/widgets/help_panel.py +233 -0
  58. atlastrack-0.7.1/src/atlastrack/gui/widgets/image_tools.py +404 -0
  59. atlastrack-0.7.1/src/atlastrack/gui/widgets/ordering_panel.py +314 -0
  60. atlastrack-0.7.1/src/atlastrack/gui/widgets/probe_picker.py +176 -0
  61. atlastrack-0.7.1/src/atlastrack/gui/widgets/register_panel.py +1346 -0
  62. atlastrack-0.7.1/src/atlastrack/gui/widgets/save_panel.py +168 -0
  63. atlastrack-0.7.1/src/atlastrack/gui/widgets/separators.py +41 -0
  64. atlastrack-0.7.1/src/atlastrack/gui/widgets/slide_loader.py +751 -0
  65. atlastrack-0.7.1/src/atlastrack/gui/widgets/tooltips.py +53 -0
  66. atlastrack-0.7.1/src/atlastrack/gui/widgets/trajectory_preview_dialog.py +595 -0
  67. atlastrack-0.7.1/src/atlastrack/gui/widgets/viz_export_panel.py +777 -0
  68. atlastrack-0.7.1/src/atlastrack/gui/widgets/welcome_overlay.py +262 -0
  69. atlastrack-0.7.1/src/atlastrack/gui/workers.py +516 -0
  70. atlastrack-0.7.1/src/atlastrack/gui/workflow.py +123 -0
  71. atlastrack-0.7.1/src/atlastrack/io/__init__.py +1 -0
  72. atlastrack-0.7.1/src/atlastrack/io/brainreg.py +131 -0
  73. atlastrack-0.7.1/src/atlastrack/io/ccf_coords.py +316 -0
  74. atlastrack-0.7.1/src/atlastrack/io/herbs.py +127 -0
  75. atlastrack-0.7.1/src/atlastrack/io/herbs_writer.py +97 -0
  76. atlastrack-0.7.1/src/atlastrack/io/image.py +102 -0
  77. atlastrack-0.7.1/src/atlastrack/io/quicknii.py +77 -0
  78. atlastrack-0.7.1/src/atlastrack/io/series_export.py +344 -0
  79. atlastrack-0.7.1/src/atlastrack/landmarks/__init__.py +1 -0
  80. atlastrack-0.7.1/src/atlastrack/landmarks/anchors.py +26 -0
  81. atlastrack-0.7.1/src/atlastrack/landmarks/contour.py +25 -0
  82. atlastrack-0.7.1/src/atlastrack/landmarks/midline.py +123 -0
  83. atlastrack-0.7.1/src/atlastrack/landmarks/ventricles.py +69 -0
  84. atlastrack-0.7.1/src/atlastrack/probes/__init__.py +1 -0
  85. atlastrack-0.7.1/src/atlastrack/probes/catalog.py +172 -0
  86. atlastrack-0.7.1/src/atlastrack/probes/channels.py +508 -0
  87. atlastrack-0.7.1/src/atlastrack/probes/fitting.py +342 -0
  88. atlastrack-0.7.1/src/atlastrack/probes/geometry.py +118 -0
  89. atlastrack-0.7.1/src/atlastrack/probes/registration_suggestion.py +228 -0
  90. atlastrack-0.7.1/src/atlastrack/probes/track_path.py +139 -0
  91. atlastrack-0.7.1/src/atlastrack/probes/trajectory_fit.py +549 -0
  92. atlastrack-0.7.1/src/atlastrack/probes/trajectory_fit_io.py +205 -0
  93. atlastrack-0.7.1/src/atlastrack/probes/trajectory_refine.py +325 -0
  94. atlastrack-0.7.1/src/atlastrack/project/__init__.py +1 -0
  95. atlastrack-0.7.1/src/atlastrack/project/images.py +144 -0
  96. atlastrack-0.7.1/src/atlastrack/project/io.py +17 -0
  97. atlastrack-0.7.1/src/atlastrack/project/provenance.py +84 -0
  98. atlastrack-0.7.1/src/atlastrack/project/schema.py +376 -0
  99. atlastrack-0.7.1/src/atlastrack/registration/__init__.py +1 -0
  100. atlastrack-0.7.1/src/atlastrack/registration/boundary_snap.py +219 -0
  101. atlastrack-0.7.1/src/atlastrack/registration/bspline.py +172 -0
  102. atlastrack-0.7.1/src/atlastrack/registration/deepslice_adapter.py +290 -0
  103. atlastrack-0.7.1/src/atlastrack/registration/deepslice_run.py +41 -0
  104. atlastrack-0.7.1/src/atlastrack/registration/elastix_bspline.py +316 -0
  105. atlastrack-0.7.1/src/atlastrack/registration/internal_feature_snap.py +314 -0
  106. atlastrack-0.7.1/src/atlastrack/registration/landmarks_warp.py +285 -0
  107. atlastrack-0.7.1/src/atlastrack/registration/manual.py +61 -0
  108. atlastrack-0.7.1/src/atlastrack/registration/masks.py +144 -0
  109. atlastrack-0.7.1/src/atlastrack/registration/pipeline.py +610 -0
  110. atlastrack-0.7.1/src/atlastrack/registration/predictor.py +37 -0
  111. atlastrack-0.7.1/src/atlastrack/registration/tilt_refine.py +165 -0
  112. atlastrack-0.7.1/src/atlastrack/registration/transforms.py +306 -0
  113. atlastrack-0.7.1/src/atlastrack/sectioning/__init__.py +1 -0
  114. atlastrack-0.7.1/src/atlastrack/sectioning/ap_series.py +139 -0
  115. atlastrack-0.7.1/src/atlastrack/sectioning/ordering.py +197 -0
  116. atlastrack-0.7.1/src/atlastrack/sectioning/split.py +438 -0
  117. atlastrack-0.7.1/src/atlastrack/viz/__init__.py +1 -0
  118. atlastrack-0.7.1/src/atlastrack/viz/napari3d.py +281 -0
  119. atlastrack-0.7.1/src/atlastrack/viz/plotly3d.py +352 -0
  120. atlastrack-0.7.1/tests/__init__.py +0 -0
  121. atlastrack-0.7.1/tests/conftest.py +21 -0
  122. atlastrack-0.7.1/tests/fixtures/.gitkeep +0 -0
  123. atlastrack-0.7.1/tests/test_anchoring_guidance.py +106 -0
  124. atlastrack-0.7.1/tests/test_anchoring_rescale.py +93 -0
  125. atlastrack-0.7.1/tests/test_anchors.py +26 -0
  126. atlastrack-0.7.1/tests/test_ap_series.py +134 -0
  127. atlastrack-0.7.1/tests/test_atlas_anchors.py +390 -0
  128. atlastrack-0.7.1/tests/test_atlas_matcher_ap.py +502 -0
  129. atlastrack-0.7.1/tests/test_atlas_matcher_zoom.py +78 -0
  130. atlastrack-0.7.1/tests/test_atlas_switch_warning.py +128 -0
  131. atlastrack-0.7.1/tests/test_boundary_snap.py +108 -0
  132. atlastrack-0.7.1/tests/test_box_selection_syncs_section.py +156 -0
  133. atlastrack-0.7.1/tests/test_brainreg_io.py +135 -0
  134. atlastrack-0.7.1/tests/test_bspline.py +61 -0
  135. atlastrack-0.7.1/tests/test_channels_ephys_alignment.py +350 -0
  136. atlastrack-0.7.1/tests/test_cli_export.py +189 -0
  137. atlastrack-0.7.1/tests/test_config.py +210 -0
  138. atlastrack-0.7.1/tests/test_crashlog.py +231 -0
  139. atlastrack-0.7.1/tests/test_elastix_bspline.py +175 -0
  140. atlastrack-0.7.1/tests/test_ephys_alignment.py +211 -0
  141. atlastrack-0.7.1/tests/test_ephys_alignment_panel.py +407 -0
  142. atlastrack-0.7.1/tests/test_ephys_analyzer.py +113 -0
  143. atlastrack-0.7.1/tests/test_ephys_combine.py +227 -0
  144. atlastrack-0.7.1/tests/test_ephys_depth_features.py +117 -0
  145. atlastrack-0.7.1/tests/test_ephys_discovery.py +542 -0
  146. atlastrack-0.7.1/tests/test_ephys_discovery_dialog.py +403 -0
  147. atlastrack-0.7.1/tests/test_ephys_epochs.py +151 -0
  148. atlastrack-0.7.1/tests/test_ephys_export.py +317 -0
  149. atlastrack-0.7.1/tests/test_ephys_features_view.py +288 -0
  150. atlastrack-0.7.1/tests/test_ephys_formats.py +295 -0
  151. atlastrack-0.7.1/tests/test_ephys_landmarks.py +262 -0
  152. atlastrack-0.7.1/tests/test_ephys_lfp_excerpts.py +236 -0
  153. atlastrack-0.7.1/tests/test_ephys_panel_io.py +123 -0
  154. atlastrack-0.7.1/tests/test_ephys_panel_multirec.py +331 -0
  155. atlastrack-0.7.1/tests/test_ephys_penetration.py +173 -0
  156. atlastrack-0.7.1/tests/test_ephys_probemap.py +448 -0
  157. atlastrack-0.7.1/tests/test_ephys_recordings.py +174 -0
  158. atlastrack-0.7.1/tests/test_ephys_region_bands.py +318 -0
  159. atlastrack-0.7.1/tests/test_ephys_spikeglx.py +141 -0
  160. atlastrack-0.7.1/tests/test_export_panel.py +380 -0
  161. atlastrack-0.7.1/tests/test_gl_diagnostics.py +65 -0
  162. atlastrack-0.7.1/tests/test_gui_smoke.py +1848 -0
  163. atlastrack-0.7.1/tests/test_herbs_roundtrip.py +50 -0
  164. atlastrack-0.7.1/tests/test_import.py +20 -0
  165. atlastrack-0.7.1/tests/test_internal_feature_snap.py +186 -0
  166. atlastrack-0.7.1/tests/test_landmarks.py +56 -0
  167. atlastrack-0.7.1/tests/test_landmarks_warp.py +182 -0
  168. atlastrack-0.7.1/tests/test_manual_affine.py +69 -0
  169. atlastrack-0.7.1/tests/test_mask_fallback.py +131 -0
  170. atlastrack-0.7.1/tests/test_masks.py +113 -0
  171. atlastrack-0.7.1/tests/test_menus_and_atlas_reference.py +604 -0
  172. atlastrack-0.7.1/tests/test_merge_images.py +71 -0
  173. atlastrack-0.7.1/tests/test_meshes.py +268 -0
  174. atlastrack-0.7.1/tests/test_multiscale_boundaries.py +262 -0
  175. atlastrack-0.7.1/tests/test_overlay_extent.py +41 -0
  176. atlastrack-0.7.1/tests/test_panel_layout.py +123 -0
  177. atlastrack-0.7.1/tests/test_pipeline.py +105 -0
  178. atlastrack-0.7.1/tests/test_pipeline_reuse_anchoring.py +116 -0
  179. atlastrack-0.7.1/tests/test_planes.py +70 -0
  180. atlastrack-0.7.1/tests/test_plotly3d.py +121 -0
  181. atlastrack-0.7.1/tests/test_plotly_probe_coords.py +44 -0
  182. atlastrack-0.7.1/tests/test_prematch_deepslice.py +137 -0
  183. atlastrack-0.7.1/tests/test_prematch_guard_and_tooltips.py +188 -0
  184. atlastrack-0.7.1/tests/test_probes_channels.py +400 -0
  185. atlastrack-0.7.1/tests/test_probes_fitting.py +203 -0
  186. atlastrack-0.7.1/tests/test_probes_geometry.py +83 -0
  187. atlastrack-0.7.1/tests/test_project_images.py +144 -0
  188. atlastrack-0.7.1/tests/test_project_roundtrip.py +58 -0
  189. atlastrack-0.7.1/tests/test_provenance.py +83 -0
  190. atlastrack-0.7.1/tests/test_quicknii.py +48 -0
  191. atlastrack-0.7.1/tests/test_registration_suggestion.py +143 -0
  192. atlastrack-0.7.1/tests/test_registration_synthetic.py +160 -0
  193. atlastrack-0.7.1/tests/test_rename_migration.py +139 -0
  194. atlastrack-0.7.1/tests/test_section_rotation.py +267 -0
  195. atlastrack-0.7.1/tests/test_sectioning_split.py +209 -0
  196. atlastrack-0.7.1/tests/test_series_export.py +424 -0
  197. atlastrack-0.7.1/tests/test_shank_channel_split.py +140 -0
  198. atlastrack-0.7.1/tests/test_split_fragments.py +91 -0
  199. atlastrack-0.7.1/tests/test_split_margin.py +143 -0
  200. atlastrack-0.7.1/tests/test_tilt_refine.py +57 -0
  201. atlastrack-0.7.1/tests/test_track_path.py +187 -0
  202. atlastrack-0.7.1/tests/test_track_picks.py +191 -0
  203. atlastrack-0.7.1/tests/test_trajectory_fit.py +333 -0
  204. atlastrack-0.7.1/tests/test_trajectory_preview.py +608 -0
  205. atlastrack-0.7.1/tests/test_trajectory_refine.py +381 -0
  206. atlastrack-0.7.1/tests/test_transforms.py +54 -0
  207. atlastrack-0.7.1/tests/test_welcome_overlay.py +210 -0
  208. atlastrack-0.7.1/tests/test_workflow_state.py +28 -0
@@ -0,0 +1,49 @@
1
+ # --- Python ---
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+ *.egg-info/
6
+ *.egg
7
+ build/
8
+ dist/
9
+ .eggs/
10
+ pip-wheel-metadata/
11
+
12
+ # --- Virtual envs / lockfiles / local files ---
13
+ .venv/
14
+ venv/
15
+ env/
16
+ .python-version
17
+ uv.lock
18
+ .claude
19
+
20
+ # --- Tooling caches ---
21
+ .pytest_cache/
22
+ .mypy_cache/
23
+ .ruff_cache/
24
+ .tox/
25
+ htmlcov/
26
+ .coverage
27
+ .coverage.*
28
+ coverage.xml
29
+
30
+ # --- IDE ---
31
+ .idea/
32
+ .vscode/
33
+ *.swp
34
+ .DS_Store
35
+ Thumbs.db
36
+
37
+ # --- Project ---
38
+ # BrainGlobe atlas downloads
39
+ .brainglobe/
40
+
41
+ # Local-only test fixtures (downloaded via pooch)
42
+ tests/fixtures/_downloaded/
43
+
44
+ # Project files / scratch
45
+ *.histo2ccf.json
46
+ scratch/
47
+
48
+ # Example data
49
+ example data/
@@ -0,0 +1,2 @@
1
+ # Automatically created by Grimp.
2
+ *
@@ -0,0 +1 @@
1
+ {"atlastrack.ephys.analyzer":[],"atlastrack.landmarks.midline":[],"atlastrack.gui.widgets.ordering_panel":[["atlastrack.sectioning.ordering",23,"from atlastrack.sectioning.ordering import geometric_order"],["atlastrack.sectioning.ap_series",215,"from atlastrack.sectioning.ap_series import assign_section_ap"],["atlastrack.io.ccf_coords",21,"from atlastrack.io.ccf_coords import BREGMA_AP_FROM_ORIGIN_UM"],["atlastrack.gui.widgets.separators",20,"from atlastrack.gui.widgets.separators import section_header"],["atlastrack.gui.workflow",22,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.project.schema",256,"from atlastrack.project.schema import PlaneParams"]],"atlastrack.landmarks":[],"atlastrack.atlas.planes":[["atlastrack.io.ccf_coords",23,"from atlastrack.io.ccf_coords import atlas_resolution_um"],["atlastrack.project.schema",24,"from atlastrack.project.schema import PlaneParams"]],"atlastrack.probes.fitting":[],"atlastrack.viz.plotly3d":[["atlastrack.project.schema",16,"from atlastrack.project.schema import Project"],["atlastrack.atlas.meshes",162,"from atlastrack.atlas.meshes import region_acronyms_at_points"],["atlastrack.atlas.meshes",100,"from atlastrack.atlas.meshes import mesh_vertices_faces"],["atlastrack.io.ccf_coords",247,"from atlastrack.io.ccf_coords import BREGMA_AP_FROM_ORIGIN_UM, MIDLINE_ML_UM"],["atlastrack.probes.geometry",190,"from atlastrack.probes.geometry import probe_prism_mesh"]],"atlastrack.registration.transforms":[["atlastrack.atlas.planes",23,"from atlastrack.atlas.planes import Anchoring"],["atlastrack.project.schema",25,"from atlastrack.project.schema import PlaneParams, RegistrationResult"],["atlastrack.io.ccf_coords",272,"from atlastrack.io.ccf_coords import atlas_resolution_um"],["atlastrack.registration.landmarks_warp",104,"from atlastrack.registration.landmarks_warp import invert_points"],["atlastrack.atlas.planes",174,"from atlastrack.atlas.planes import resample_atlas_at_plane"],["atlastrack.io.ccf_coords",24,"from atlastrack.io.ccf_coords import MIDLINE_ML_UM"],["atlastrack.registration.manual",109,"from atlastrack.registration.manual import invert_apply"]],"atlastrack.project.schema":[],"atlastrack.atlas":[],"atlastrack.atlas.meshes":[],"atlastrack.project":[],"atlastrack.viz":[],"atlastrack.registration.landmarks_warp":[],"atlastrack.ephys.alignment":[],"atlastrack.io":[],"atlastrack.gui":[],"atlastrack.gui.widgets.ephys_alignment_panel":[["atlastrack.gui.widgets.ephys_features_view",39,"from atlastrack.gui.widgets.ephys_features_view import EphysFeaturesView, pyqtgraph_available"],["atlastrack.project.schema",480,"from atlastrack.project.schema import EphysAlignment"],["atlastrack.ephys.landmarks",33,"from atlastrack.ephys.landmarks import ("],["atlastrack.ephys.penetration",454,"from atlastrack.ephys.penetration import PenetrationProfile"],["atlastrack.ephys.penetration",42,"from atlastrack.ephys.penetration import PenetrationProfile"]],"atlastrack.probes.channels":[["atlastrack.probes.geometry",18,"from atlastrack.probes.geometry import ELECTRODE_COLUMN_CENTER_UM"],["atlastrack.probes.catalog",17,"from atlastrack.probes.catalog import ProbeLayout, get_layout"],["atlastrack.project.schema",21,"from atlastrack.project.schema import Project, Shank"],["atlastrack.io.ccf_coords",186,"from atlastrack.io.ccf_coords import ("]],"atlastrack.gui.widgets.click_overlay":[["atlastrack.gui.widgets.separators",42,"from atlastrack.gui.widgets.separators import section_header"],["atlastrack.sectioning.split",562,"from atlastrack.sectioning.split import _binarize, _to_gray"],["atlastrack.gui.workflow",43,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.project.schema",44,"from atlastrack.project.schema import Point2D"]],"atlastrack.gui.widgets.atlas_browser":[["atlastrack.gui.workers",193,"from atlastrack.gui.workers import load_atlas_worker"],["atlastrack.gui.crashlog",251,"from atlastrack.gui import crashlog"],["atlastrack.gui.widgets.separators",18,"from atlastrack.gui.widgets.separators import section_header"],["atlastrack.gui.workflow",20,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.config",147,"from atlastrack.config import get_settings"],["atlastrack.project.schema",332,"from atlastrack.project.schema import PlaneParams"],["atlastrack.io.ccf_coords",19,"from atlastrack.io.ccf_coords import BREGMA_AP_FROM_ORIGIN_UM"],["atlastrack.gui.widgets.atlas_matcher",252,"from atlastrack.gui.widgets.atlas_matcher import AtlasMatcherDialog"]],"atlastrack.gui.widgets":[],"atlastrack.gui.widgets.slide_loader":[["atlastrack.sectioning.split",436,"from atlastrack.sectioning.split import estimate_min_area"],["atlastrack.gui.crashlog",467,"from atlastrack.gui import crashlog"],["atlastrack.project.schema",540,"from atlastrack.project.schema import Section"],["atlastrack.io.image",312,"from atlastrack.io.image import load_image, merge_images, slide_bands"],["atlastrack.io.image",259,"from atlastrack.io.image import load_image, merge_images, slide_bands"],["atlastrack.gui.widgets.separators",19,"from atlastrack.gui.widgets.separators import section_header"],["atlastrack.io.image",240,"from atlastrack.io.image import load_image"],["atlastrack.gui.app",714,"from atlastrack.gui.app import _update_section_numbers"],["atlastrack.project.schema",473,"from atlastrack.project.schema import Section"],["atlastrack.gui.workers",453,"from atlastrack.gui.workers import detect_sections_worker"],["atlastrack.gui.workflow",20,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.project.schema",645,"from atlastrack.project.schema import Section"],["atlastrack.gui.section_display",715,"from atlastrack.gui.section_display import sections_to_outline_labels"]],"atlastrack.registration.manual":[],"atlastrack.registration.deepslice_adapter":[["atlastrack.io.quicknii",20,"from atlastrack.io.quicknii import QuickNiiDocument, load_quicknii"],["atlastrack.project.schema",21,"from atlastrack.project.schema import PlaneParams"]],"atlastrack.io.herbs":[["atlastrack.io.ccf_coords",29,"from atlastrack.io.ccf_coords import AP_UM, DV_UM, ML_UM"]],"atlastrack.registration.masks":[],"atlastrack.io.herbs_writer":[["atlastrack.io.herbs",17,"from atlastrack.io.herbs import DEFAULT_HERBS_GRID_UM, ccf_um_to_herbs_voxel"]],"atlastrack.project.io":[["atlastrack.project.schema",6,"from atlastrack.project.schema import Project"]],"atlastrack.cli":[["atlastrack",61,"from atlastrack import __version__"],["atlastrack.project.io",348,"from atlastrack.project.io import load_project, save_project"],["atlastrack.io.image",121,"from atlastrack.io.image import load_image"],["atlastrack.probes.fitting",494,"from atlastrack.probes.fitting import enforce_rigid_arrays"],["atlastrack.project.provenance",467,"from atlastrack.project.provenance import write_export_provenance"],["atlastrack.gui.app",74,"from atlastrack.gui.app import launch"],["atlastrack.registration.pipeline",476,"from atlastrack.registration.pipeline import ("],["atlastrack.project.io",218,"from atlastrack.project.io import save_project"],["atlastrack.registration.pipeline",349,"from atlastrack.registration.pipeline import register_project_with_atlas"],["atlastrack.io.image",217,"from atlastrack.io.image import load_image"],["atlastrack.probes.channels",465,"from atlastrack.probes.channels import export_channel_csv, export_paxinos_csv"],["atlastrack.registration.pipeline",230,"from atlastrack.registration.pipeline import register_project"],["atlastrack.registration.predictor",231,"from atlastrack.registration.predictor import ManualPredictor"],["atlastrack.io.herbs_writer",216,"from atlastrack.io.herbs_writer import write_herbs_pkl"],["atlastrack.sectioning.ordering",122,"from atlastrack.sectioning.ordering import order_sections"],["atlastrack.project.images",347,"from atlastrack.project.images import section_images"],["atlastrack.gui.gl_diagnostics",82,"from atlastrack.gui.gl_diagnostics import format_gl_report"],["atlastrack.project.io",466,"from atlastrack.project.io import load_project, save_project"],["atlastrack.project.schema",219,"from atlastrack.project.schema import ("],["atlastrack.sectioning.split",123,"from atlastrack.sectioning.split import detect_sections"]],"atlastrack.gui.widgets.image_tools":[["atlastrack.project.schema",250,"from atlastrack.project.schema import ChannelLevels"],["atlastrack.gui.workflow",21,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.gui.widgets.separators",20,"from atlastrack.gui.widgets.separators import section_header"]],"atlastrack.gui.gl_diagnostics":[],"atlastrack.ephys.loader":[],"atlastrack.gui.widgets.separators":[],"atlastrack.io.brainreg":[],"atlastrack.landmarks.ventricles":[],"atlastrack.gui.widgets.probe_picker":[["atlastrack.gui.workflow",17,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.project.schema",18,"from atlastrack.project.schema import ProbeSpec, ProbeType, Shank"]],"atlastrack.ephys.epochs":[],"atlastrack.gui.section_display":[],"atlastrack.probes":[],"atlastrack.registration":[],"atlastrack.registration.boundary_snap":[],"atlastrack.registration.elastix_bspline":[["atlastrack.registration.masks",89,"from atlastrack.registration.masks import section_tissue_mask"],["atlastrack.registration.masks",240,"from atlastrack.registration.masks import moment_similarity"],["atlastrack.registration.bspline",36,"from atlastrack.registration.bspline import RegisterResult"]],"atlastrack.registration.predictor":[["atlastrack.project.schema",13,"from atlastrack.project.schema import PlaneParams"]],"atlastrack.gui.widgets.save_panel":[["atlastrack.project.io",139,"from atlastrack.project.io import load_project"],["atlastrack.gui.workflow",17,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.config",53,"from atlastrack.config import save_app_settings"],["atlastrack.project.io",117,"from atlastrack.project.io import save_project"]],"atlastrack.gui.workers":[["atlastrack.ephys.loader",145,"from atlastrack.ephys.loader import load_lfp"],["atlastrack.project.schema",16,"from atlastrack.project.schema import Project"],["atlastrack.registration.pipeline",204,"from atlastrack.registration.pipeline import ("],["atlastrack.io.ccf_coords",203,"from atlastrack.io.ccf_coords import atlas_resolution_um"],["atlastrack.registration.deepslice_adapter",121,"from atlastrack.registration.deepslice_adapter import predict_anchorings"],["atlastrack.sectioning.split",12,"from atlastrack.sectioning.split import detect_sections"],["atlastrack.sectioning.ordering",11,"from atlastrack.sectioning.ordering import OrderedSection, order_sections"],["atlastrack.registration.tilt_refine",274,"from atlastrack.registration.tilt_refine import refine_tilt as _refine_tilt"],["atlastrack.registration.transforms",209,"from atlastrack.registration.transforms import RegisteredSectionTransform"],["atlastrack.ephys.features",144,"from atlastrack.ephys.features import lfp_psd, power_image"],["atlastrack.registration.pipeline",89,"from atlastrack.registration.pipeline import register_project_with_atlas"]],"atlastrack.gui.widgets.viz_export_panel":[["atlastrack.registration.pipeline",324,"from atlastrack.registration.pipeline import ("],["atlastrack.gui.workflow",27,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.probes.fitting",350,"from atlastrack.probes.fitting import enforce_rigid_arrays"],["atlastrack.viz.napari3d",402,"from atlastrack.viz.napari3d import show_3d_scene"],["atlastrack.probes.channels",460,"from atlastrack.probes.channels import export_channel_csv"],["atlastrack.viz.plotly3d",302,"from atlastrack.viz.plotly3d import build_figure, save_html"],["atlastrack.gui.workers",231,"from atlastrack.gui.workers import load_atlas_worker"],["atlastrack.io.herbs_writer",433,"from atlastrack.io.herbs_writer import write_herbs_pkl"],["atlastrack.probes.channels",477,"from atlastrack.probes.channels import export_paxinos_csv"],["atlastrack.gui.workers",270,"from atlastrack.gui.workers import load_atlas_worker"],["atlastrack.project.io",374,"from atlastrack.project.io import save_project"]],"atlastrack.probes.catalog":[],"atlastrack.atlas.service":[],"atlastrack.ephys.recordings":[],"atlastrack":[],"atlastrack.registration.deepslice_run":[["atlastrack.registration.deepslice_adapter",34,"from atlastrack.registration.deepslice_adapter import DeepSlicePredictor"]],"atlastrack.landmarks.contour":[],"atlastrack.gui.crashlog":[["atlastrack",84,"from atlastrack import __version__"],["atlastrack.gui.gl_diagnostics",122,"from atlastrack.gui.gl_diagnostics import format_gl_report"]],"atlastrack.probes.geometry":[],"atlastrack.registration.pipeline":[["atlastrack.registration.bspline",36,"from atlastrack.registration.bspline import refine_with_bspline"],["atlastrack.registration.elastix_bspline",218,"from atlastrack.registration.elastix_bspline import ELASTIX_AVAILABLE"],["atlastrack.registration.predictor",37,"from atlastrack.registration.predictor import PlanePredictor"],["atlastrack.registration.transforms",38,"from atlastrack.registration.transforms import ("],["atlastrack.project.schema",35,"from atlastrack.project.schema import Project, RegistrationResult, Section, Shank"],["atlastrack.atlas.planes",323,"from atlastrack.atlas.planes import sample_plane"],["atlastrack.registration.elastix_bspline",245,"from atlastrack.registration.elastix_bspline import refine_with_elastix"],["atlastrack.registration.boundary_snap",426,"from atlastrack.registration.boundary_snap import ("],["atlastrack.registration.masks",347,"from atlastrack.registration.masks import registration_moving_mask"],["atlastrack.atlas.planes",29,"from atlastrack.atlas.planes import ("],["atlastrack.io.ccf_coords",34,"from atlastrack.io.ccf_coords import atlas_resolution_um"],["atlastrack.registration.masks",430,"from atlastrack.registration.masks import section_tissue_mask"],["atlastrack.registration.transforms",431,"from atlastrack.registration.transforms import _warped_atlas_extent"]],"atlastrack.sectioning":[],"atlastrack.gui.widgets.ephys_panel":[["atlastrack.gui.widgets.ephys_alignment_panel",286,"from atlastrack.gui.widgets.ephys_alignment_panel import EphysLandmarkDialog"],["atlastrack.ephys.loader",177,"from atlastrack.ephys.loader import list_streams"],["atlastrack.gui.workflow",26,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.gui.workers",203,"from atlastrack.gui.workers import lfp_power_worker"],["atlastrack.project.io",313,"from atlastrack.project.io import save_project"],["atlastrack.gui.widgets.ephys_align_dialog",242,"from atlastrack.gui.widgets.ephys_align_dialog import EphysAlignmentDialog"]],"atlastrack.sectioning.split":[],"atlastrack.gui.widgets.register_panel":[["atlastrack.registration.landmarks_warp",984,"from atlastrack.registration.landmarks_warp import warp_label_image"],["atlastrack.gui.workers",1308,"from atlastrack.gui.workers import load_atlas_worker"],["atlastrack.project.schema",1217,"from atlastrack.project.schema import ManualLandmarks"],["atlastrack.gui.workers",472,"from atlastrack.gui.workers import deepslice_worker"],["atlastrack.gui.workflow",497,"from atlastrack.gui.workflow import crop_fingerprint"],["atlastrack.gui.workflow",357,"from atlastrack.gui.workflow import section_display_no"],["atlastrack.registration.landmarks_warp",1036,"from atlastrack.registration.landmarks_warp import salient_landmarks"],["atlastrack.project.io",617,"from atlastrack.project.io import save_project"],["atlastrack.io.ccf_coords",640,"from atlastrack.io.ccf_coords import BREGMA_AP_FROM_ORIGIN_UM"],["atlastrack.gui.workers",537,"from atlastrack.gui.workers import register_worker_progressive"],["atlastrack.registration.pipeline",529,"from atlastrack.registration.pipeline import guide_anchorings_with_planes"],["atlastrack.io.image",426,"from atlastrack.io.image import crop"],["atlastrack.registration.manual",671,"from atlastrack.registration.manual import section_to_world"],["atlastrack.registration.transforms",1049,"from atlastrack.registration.transforms import annotation_boundaries"],["atlastrack.gui.workflow",25,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.registration.landmarks_warp",708,"from atlastrack.registration.landmarks_warp import warp_label_image"],["atlastrack.registration.pipeline",1256,"from atlastrack.registration.pipeline import ("],["atlastrack.registration.transforms",998,"from atlastrack.registration.transforms import annotation_boundaries"],["atlastrack.registration.landmarks_warp",1205,"from atlastrack.registration.landmarks_warp import warp_contour_image"],["atlastrack.project.io",1276,"from atlastrack.project.io import save_project"],["atlastrack.registration.transforms",972,"from atlastrack.registration.transforms import warp_annotation_to_section"],["atlastrack.registration.transforms",672,"from atlastrack.registration.transforms import ("],["atlastrack.registration.manual",1010,"from atlastrack.registration.manual import section_to_world"],["atlastrack.registration.manual",892,"from atlastrack.registration.manual import is_identity, world_to_section"]],"atlastrack.ephys.landmarks":[],"atlastrack.registration.tilt_refine":[["atlastrack.registration.elastix_bspline",57,"from atlastrack.registration.elastix_bspline import ("],["atlastrack.registration.pipeline",119,"from atlastrack.registration.pipeline import register_section_image"],["atlastrack.registration.masks",62,"from atlastrack.registration.masks import moment_similarity, section_tissue_mask"],["atlastrack.atlas.planes",24,"from atlastrack.atlas.planes import Anchoring, sample_plane"]],"atlastrack.gui.workflow":[["atlastrack.project.schema",10,"from atlastrack.project.schema import Project, Slide"]],"atlastrack.project.images":[["atlastrack.io.image",22,"from atlastrack.io.image import crop, load_image, merge_images, slide_bands"],["atlastrack.project.schema",25,"from atlastrack.project.schema import Project, Slide"]],"atlastrack.gui.widgets.ephys_align_dialog":[["atlastrack.gui.workflow",41,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.ephys.regions",39,"from atlastrack.ephys.regions import region_strip_image, regions_at_ccf"],["atlastrack.project.schema",44,"from atlastrack.project.schema import Shank"],["atlastrack.ephys.features",38,"from atlastrack.ephys.features import power_image"],["atlastrack.gui.widgets.atlas_matcher",40,"from atlastrack.gui.widgets.atlas_matcher import _to_pixmap"],["atlastrack.project.schema",535,"from atlastrack.project.schema import EphysAlignment"],["atlastrack.ephys.alignment",37,"from atlastrack.ephys.alignment import apply_depth_alignment, channel_ccf_um, invert_anchors"]],"atlastrack.gui.widgets.atlas_matcher":[["atlastrack.gui.workflow",1012,"from atlastrack.gui.workflow import crop_fingerprint"],["atlastrack.gui.crashlog",53,"from atlastrack.gui import crashlog"],["atlastrack.project.schema",66,"from atlastrack.project.schema import ChannelLevels, Section"],["atlastrack.gui.workers",983,"from atlastrack.gui.workers import deepslice_worker"],["atlastrack.gui.workflow",54,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.registration.transforms",137,"from atlastrack.registration.transforms import annotation_boundaries"],["atlastrack.sectioning.ap_series",849,"from atlastrack.sectioning.ap_series import ap_offsets"],["atlastrack.io.ccf_coords",52,"from atlastrack.io.ccf_coords import BREGMA_AP_FROM_ORIGIN_UM"],["atlastrack.atlas.planes",713,"from atlastrack.atlas.planes import coronal_anchoring, resample_atlas_at_plane"],["atlastrack.io.ccf_coords",1013,"from atlastrack.io.ccf_coords import atlas_resolution_um"],["atlastrack.project.schema",907,"from atlastrack.project.schema import PlaneParams"],["atlastrack.registration.pipeline",1107,"from atlastrack.registration.pipeline import prematch_ap_order_issues"],["atlastrack.registration.pipeline",1014,"from atlastrack.registration.pipeline import anchoring_center_ap_um"],["atlastrack.io.image",923,"from atlastrack.io.image import crop"]],"atlastrack.sectioning.ordering":[["atlastrack.sectioning.split",13,"from atlastrack.sectioning.split import DetectedSection"]],"atlastrack.landmarks.anchors":[],"atlastrack.sectioning.ap_series":[["atlastrack.io.ccf_coords",97,"from atlastrack.io.ccf_coords import BREGMA_AP_FROM_ORIGIN_UM"],["atlastrack.project.schema",98,"from atlastrack.project.schema import PlaneParams"],["atlastrack.project.schema",28,"from atlastrack.project.schema import Section"]],"atlastrack.io.ccf_coords":[],"atlastrack.ephys.regions":[["atlastrack.atlas.meshes",14,"from atlastrack.atlas.meshes import structure_rgb"]],"atlastrack.gui.widgets.ephys_features_view":[["atlastrack.ephys.penetration",28,"from atlastrack.ephys.penetration import PenetrationProfile"],["atlastrack.ephys.regions",276,"from atlastrack.ephys.regions import region_bands, regions_along_track"],["atlastrack.ephys.landmarks",27,"from atlastrack.ephys.landmarks import Landmarks"],["atlastrack.ephys.features",167,"from atlastrack.ephys.features import raster_points"],["atlastrack.ephys.regions",29,"from atlastrack.ephys.regions import RegionBand"],["atlastrack.ephys.features",186,"from atlastrack.ephys.features import depth_profiles"]],"atlastrack.registration.internal_feature_snap":[["atlastrack.landmarks.midline",208,"from atlastrack.landmarks.midline import estimate_midline"],["atlastrack.registration.boundary_snap",281,"from atlastrack.registration.boundary_snap import fit_foldproof_tps"],["atlastrack.registration.transforms",173,"from atlastrack.registration.transforms import annotation_boundaries"]],"atlastrack.ephys":[["atlastrack.ephys.epochs",15,"from atlastrack.ephys.epochs import ("],["atlastrack.ephys.alignment",10,"from atlastrack.ephys.alignment import ("],["atlastrack.ephys.features",23,"from atlastrack.ephys.features import ("],["atlastrack.ephys.recordings",30,"from atlastrack.ephys.recordings import ("]],"atlastrack.project.provenance":[["atlastrack",40,"from atlastrack import __version__"]],"atlastrack.config":[],"atlastrack.ephys.penetration":[["atlastrack.ephys.recordings",24,"from atlastrack.ephys.recordings import ("]],"atlastrack.gui.app":[["atlastrack.gui.gl_diagnostics",29,"from atlastrack.gui.gl_diagnostics import report_launch_failure"],["atlastrack.gui.workflow",120,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.gui.widgets.click_overlay",122,"from atlastrack.gui.widgets.click_overlay import ClickOverlayWidget"],["atlastrack.gui.widgets.ephys_panel",123,"from atlastrack.gui.widgets.ephys_panel import EphysPanelWidget"],["atlastrack.gui.section_display",500,"from atlastrack.gui.section_display import sections_to_outline_labels"],["atlastrack.gui.widgets.image_tools",124,"from atlastrack.gui.widgets.image_tools import ImageToolsWidget"],["atlastrack.gui.widgets.viz_export_panel",129,"from atlastrack.gui.widgets.viz_export_panel import VizExportPanelWidget"],["atlastrack.config",119,"from atlastrack.config import load_app_settings, save_app_settings"],["atlastrack.gui.widgets.slide_loader",128,"from atlastrack.gui.widgets.slide_loader import SlideLoaderWidget"],["atlastrack.gui.section_display",570,"from atlastrack.gui.section_display import sections_to_outline_labels"],["atlastrack.gui.crashlog",14,"from atlastrack.gui import crashlog"],["atlastrack.gui.widgets.save_panel",293,"from atlastrack.gui.widgets.save_panel import SavePanelWidget"],["atlastrack.gui.widgets.atlas_browser",121,"from atlastrack.gui.widgets.atlas_browser import AtlasBrowserWidget"],["atlastrack.gui.widgets.probe_picker",126,"from atlastrack.gui.widgets.probe_picker import ProbePickerWidget"],["atlastrack.project.images",571,"from atlastrack.project.images import rebuild_slide_image"],["atlastrack.config",389,"from atlastrack.config import save_app_settings"],["atlastrack.gui.widgets.ordering_panel",125,"from atlastrack.gui.widgets.ordering_panel import OrderingPanelWidget"],["atlastrack.gui.widgets.register_panel",127,"from atlastrack.gui.widgets.register_panel import RegisterPanelWidget"]],"atlastrack.ephys.features":[],"atlastrack.viz.napari3d":[["atlastrack.io.ccf_coords",245,"from atlastrack.io.ccf_coords import BREGMA_AP_FROM_ORIGIN_UM, MIDLINE_ML_UM"],["atlastrack.atlas.meshes",118,"from atlastrack.atlas.meshes import mesh_vertices_faces"],["atlastrack.viz.plotly3d",195,"from atlastrack.viz.plotly3d import ("],["atlastrack.viz.plotly3d",146,"from atlastrack.viz.plotly3d import hex_to_rgb, styled_regions"],["atlastrack.project.schema",15,"from atlastrack.project.schema import Project"],["atlastrack.viz.plotly3d",165,"from atlastrack.viz.plotly3d import hex_to_rgb, region_style"]],"atlastrack.io.quicknii":[["atlastrack.atlas.planes",33,"from atlastrack.atlas.planes import Anchoring"]],"atlastrack.registration.bspline":[],"atlastrack.io.image":[]}
@@ -0,0 +1 @@
1
+ {"atlastrack.probes.geometry":[["numpy",8,"import numpy as np"],["__future__",6,"from __future__ import annotations"]],"atlastrack.project.provenance":[["datetime",18,"from datetime import datetime, timezone"],["json",17,"import json"],["atlastrack",40,"from atlastrack import __version__"],["__future__",14,"from __future__ import annotations"],["pathlib",19,"from pathlib import Path"],["typing",20,"from typing import Any"],["hashlib",16,"import hashlib"]],"atlastrack.io.series_export":[["csv",319,"import csv"],["typing",20,"from typing import TYPE_CHECKING"],["json",17,"import json"],["imageio",211,"import imageio.v3 as iio"],["dataclasses",18,"from dataclasses import dataclass, field"],["brainglobe_atlasapi",25,"from brainglobe_atlasapi import BrainGlobeAtlas"],["pathlib",19,"from pathlib import Path"],["__future__",15,"from __future__ import annotations"],["atlastrack.io.image",206,"from atlastrack.io.image import crop"],["numpy",22,"import numpy as np"],["atlastrack.registration.transforms",266,"from atlastrack.registration.transforms import ("],["scipy",151,"from scipy.ndimage import rotate as _rotate"],["atlastrack.project.schema",27,"from atlastrack.project.schema import Project, Section"],["atlastrack.project.images",132,"from atlastrack.project.images import deepslice_rotation_deg"],["atlastrack.project.images",207,"from atlastrack.project.images import rebuild_slide_image"],["skimage",83,"from skimage.measure import find_contours"],["atlastrack.registration.transforms",67,"from atlastrack.registration.transforms import warp_annotation_to_section"]],"atlastrack.gui.widgets.probe_picker":[["qtpy",6,"from qtpy.QtWidgets import ("],["atlastrack.gui.workflow",17,"from atlastrack.gui.workflow import WorkflowState"],["typing",4,"from typing import Callable"],["atlastrack.project.schema",18,"from atlastrack.project.schema import ProbeSpec, ProbeType, Shank"],["__future__",2,"from __future__ import annotations"]],"atlastrack.atlas.planes":[["brainglobe_atlasapi",27,"from brainglobe_atlasapi import BrainGlobeAtlas"],["dataclasses",17,"from dataclasses import dataclass"],["__future__",15,"from __future__ import annotations"],["scipy",21,"from scipy import ndimage"],["numpy",20,"import numpy as np"],["typing",18,"from typing import TYPE_CHECKING"],["atlastrack.io.ccf_coords",23,"from atlastrack.io.ccf_coords import atlas_resolution_um"],["atlastrack.project.schema",24,"from atlastrack.project.schema import PlaneParams"]],"atlastrack.ephys.analyzer":[["pathlib",20,"from pathlib import Path"],["spikeinterface",27,"import spikeinterface.full as si"],["__future__",17,"from __future__ import annotations"],["dataclasses",19,"from dataclasses import dataclass"],["numpy",22,"import numpy as np"]],"atlastrack.gui.widgets.slide_loader":[["atlastrack.gui.crashlog",469,"from atlastrack.gui import crashlog"],["pathlib",312,"from pathlib import Path"],["atlastrack.io.image",242,"from atlastrack.io.image import load_image"],["pathlib",270,"from pathlib import Path"],["pathlib",232,"from pathlib import Path"],["atlastrack.gui.widgets.separators",19,"from atlastrack.gui.widgets.separators import section_header"],["qtpy",403,"from qtpy.QtCore import Qt"],["qtpy",404,"from qtpy.QtWidgets import QMessageBox"],["atlastrack.gui.workers",455,"from atlastrack.gui.workers import detect_sections_worker"],["napari",434,"from napari.qt.threading import thread_worker"],["atlastrack.project.schema",676,"from atlastrack.project.schema import Section"],["atlastrack.io.image",261,"from atlastrack.io.image import load_image, merge_images, slide_bands"],["atlastrack.io.image",314,"from atlastrack.io.image import load_image, merge_images, slide_bands"],["atlastrack.gui.workflow",20,"from atlastrack.gui.workflow import WorkflowState"],["pathlib",203,"from pathlib import Path"],["atlastrack.project.schema",475,"from atlastrack.project.schema import Section"],["__future__",2,"from __future__ import annotations"],["atlastrack.gui.section_display",746,"from atlastrack.gui.section_display import sections_to_outline_labels"],["atlastrack.project.schema",542,"from atlastrack.project.schema import Section"],["typing",4,"from typing import TYPE_CHECKING, Callable"],["atlastrack.gui.app",745,"from atlastrack.gui.app import _update_section_numbers"],["atlastrack.sectioning.split",438,"from atlastrack.sectioning.split import estimate_min_area"],["qtpy",7,"from qtpy.QtWidgets import ("],["napari",23,"import napari"],["numpy",6,"import numpy as np"]],"atlastrack.gui.widgets.ephys_discovery_dialog":[["atlastrack.ephys.regions",588,"from atlastrack.ephys.regions import ("],["qtpy",25,"from qtpy.QtWidgets import ("],["pathlib",21,"from pathlib import Path"],["atlastrack.gui.workflow",52,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.ephys.discovery",45,"from atlastrack.ephys.discovery import ("],["qtpy",24,"from qtpy.QtCore import Qt"],["__future__",19,"from __future__ import annotations"],["pyqtgraph",187,"import pyqtgraph as pg"],["pyqtgraph",438,"import pyqtgraph as pg"],["numpy",586,"import numpy as np"],["typing",22,"from typing import TYPE_CHECKING"],["atlastrack.ephys.discovery",55,"from atlastrack.ephys.discovery import RecordingCandidate"],["atlastrack.gui.workers",223,"from atlastrack.gui.workers import discover_recordings_worker"],["atlastrack.gui.widgets.tooltips",51,"from atlastrack.gui.widgets.tooltips import wrap_tooltips"],["atlastrack.project.schema",656,"from atlastrack.project.schema import EphysRecordingRef"]],"atlastrack.project.images":[["typing",18,"from typing import TYPE_CHECKING"],["atlastrack.io.image",22,"from atlastrack.io.image import crop, load_image, merge_images, slide_bands"],["__future__",15,"from __future__ import annotations"],["scipy",56,"from scipy.ndimage import rotate as _rotate"],["math",40,"import math"],["pathlib",17,"from pathlib import Path"],["atlastrack.project.schema",25,"from atlastrack.project.schema import Project, Slide"],["numpy",20,"import numpy as np"]],"atlastrack.gui.widgets.viz_export_panel":[["__future__",7,"from __future__ import annotations"],["atlastrack.viz.plotly3d",474,"from atlastrack.viz.plotly3d import build_figure, save_html"],["atlastrack.probes.fitting",522,"from atlastrack.probes.fitting import enforce_rigid_arrays"],["atlastrack.gui.workers",403,"from atlastrack.gui.workers import load_atlas_worker"],["napari",572,"import napari"],["atlastrack.project.io",546,"from atlastrack.project.io import save_project"],["qtpy",13,"from qtpy.QtWidgets import ("],["atlastrack.gui.workflow",30,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.gui.workers",442,"from atlastrack.gui.workers import load_atlas_worker"],["qtpy",12,"from qtpy.QtCore import Qt"],["atlastrack.probes.channels",760,"from atlastrack.probes.channels import ("],["typing",10,"from typing import TYPE_CHECKING"],["atlastrack.io.series_export",675,"from atlastrack.io.series_export import export_section_series"],["numpy",734,"import numpy as np"],["atlastrack.registration.pipeline",496,"from atlastrack.registration.pipeline import ("],["atlastrack.io.herbs_writer",736,"from atlastrack.io.herbs_writer import write_herbs_pkl"],["pathlib",9,"from pathlib import Path"],["atlastrack.viz.napari3d",574,"from atlastrack.viz.napari3d import show_3d_scene"],["napari",135,"import napari"]],"atlastrack.atlas.service":[["functools",8,"from functools import lru_cache"],["typing",9,"from typing import TYPE_CHECKING"],["brainglobe_atlasapi",12,"from brainglobe_atlasapi import BrainGlobeAtlas"],["__future__",6,"from __future__ import annotations"],["brainglobe_atlasapi",18,"from brainglobe_atlasapi import BrainGlobeAtlas"]],"atlastrack.gui.widgets.ephys_alignment_panel":[["__future__",16,"from __future__ import annotations"],["qtpy",983,"from qtpy.QtWidgets import QFileDialog, QMessageBox"],["atlastrack.probes.geometry",889,"from atlastrack.probes.geometry import SHANK_TIP_LENGTH_UM"],["atlastrack.probes.catalog",1027,"from atlastrack.probes.catalog import get_layout"],["pyqtgraph",492,"import pyqtgraph as pg"],["qtpy",902,"from qtpy.QtWidgets import QFileDialog, QMessageBox"],["atlastrack.gui.widgets.ephys_features_view",42,"from atlastrack.gui.widgets.ephys_features_view import EphysFeaturesView, pyqtgraph_available"],["pyqtgraph",635,"import pyqtgraph as pg"],["contextlib",18,"import contextlib"],["atlastrack.project.schema",1046,"from atlastrack.project.schema import EphysAlignment"],["qtpy",23,"from qtpy.QtWidgets import ("],["typing",19,"from typing import TYPE_CHECKING"],["atlastrack.ephys.penetration",835,"from atlastrack.ephys.penetration import PenetrationProfile"],["atlastrack.gui.widgets.tooltips",43,"from atlastrack.gui.widgets.tooltips import wrap_tooltips"],["atlastrack.ephys.export",904,"from atlastrack.ephys.export import default_export_path, load_shank_features"],["numpy",21,"import numpy as np"],["pyqtgraph",84,"import pyqtgraph as pg"],["qtpy",22,"from qtpy.QtCore import Qt, Signal"],["atlastrack.ephys.landmarks",36,"from atlastrack.ephys.landmarks import ("],["atlastrack.ephys.recordings",872,"from atlastrack.ephys.recordings import channels_for_shank"],["atlastrack.ephys.features",938,"from atlastrack.ephys.features import depth_profiles"],["qtpy",789,"from qtpy.QtWidgets import QApplication"],["atlastrack.ephys.regions",808,"from atlastrack.ephys.regions import region_colour_map, white_matter_acronyms"],["atlastrack.ephys.export",937,"from atlastrack.ephys.export import ShankFeatureExport"],["atlastrack.ephys.penetration",46,"from atlastrack.ephys.penetration import PenetrationProfile"],["datetime",1044,"from datetime import datetime"],["atlastrack.probes.channels",1028,"from atlastrack.probes.channels import shank_channel_coords"],["atlastrack.ephys.export",985,"from atlastrack.ephys.export import default_export_path, save_feature_export"]],"atlastrack.gui":[],"atlastrack.registration.boundary_snap":[["SimpleITK",215,"import SimpleITK as sitk"],["SimpleITK",166,"import SimpleITK as sitk"],["scipy",57,"from scipy import ndimage as ndi"],["numpy",43,"import numpy as np"],["scipy",97,"from scipy import ndimage as ndi"],["scipy",65,"from scipy import ndimage as ndi"],["scipy",130,"from scipy.interpolate import RBFInterpolator"],["__future__",41,"from __future__ import annotations"]],"atlastrack.project.io":[["pathlib",4,"from pathlib import Path"],["atlastrack.project.schema",6,"from atlastrack.project.schema import Project"],["__future__",2,"from __future__ import annotations"]],"atlastrack.ephys.penetration":[["dataclasses",20,"from dataclasses import dataclass, field"],["atlastrack.ephys.recordings",24,"from atlastrack.ephys.recordings import ("],["__future__",18,"from __future__ import annotations"],["numpy",22,"import numpy as np"]],"atlastrack.io.quicknii":[["atlastrack.atlas.planes",33,"from atlastrack.atlas.planes import Anchoring"],["json",28,"import json"],["pydantic",31,"from pydantic import BaseModel, ConfigDict, Field"],["pathlib",29,"from pathlib import Path"],["__future__",26,"from __future__ import annotations"]],"atlastrack.gui.workflow":[["brainglobe_atlasapi",13,"from brainglobe_atlasapi import BrainGlobeAtlas"],["pathlib",5,"from pathlib import Path"],["__future__",2,"from __future__ import annotations"],["numpy",8,"import numpy as np"],["dataclasses",4,"from dataclasses import dataclass, field"],["atlastrack.project.schema",10,"from atlastrack.project.schema import Project, Slide"],["typing",6,"from typing import TYPE_CHECKING"]],"atlastrack.gui.widgets.ephys_panel":[["atlastrack.project.io",882,"from atlastrack.project.io import save_project"],["qtpy",13,"from qtpy.QtWidgets import ("],["atlastrack.probes.catalog",290,"from atlastrack.probes.catalog import CATALOG"],["atlastrack.gui.workers",377,"from atlastrack.gui.workers import lfp_power_worker"],["atlastrack.gui.widgets.ephys_discovery_dialog",652,"from atlastrack.gui.widgets.ephys_discovery_dialog import EphysDiscoveryDialog"],["atlastrack.ephys.probemap",289,"from atlastrack.ephys.probemap import BUILTIN_MAPS"],["numpy",740,"import numpy as np"],["atlastrack.gui.widgets.ephys_alignment_panel",698,"from atlastrack.gui.widgets.ephys_alignment_panel import ("],["atlastrack.gui.workflow",26,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.gui.widgets.trajectory_preview_dialog",830,"from atlastrack.gui.widgets.trajectory_preview_dialog import ("],["atlastrack.ephys.recordings",539,"from atlastrack.ephys.recordings import channels_for_shank"],["atlastrack.ephys.export",498,"from atlastrack.ephys.export import ShankFeatureExport"],["atlastrack.gui.widgets.ephys_discovery_dialog",31,"from atlastrack.gui.widgets.ephys_discovery_dialog import EphysDiscoveryDialog"],["atlastrack.gui.workers",436,"from atlastrack.gui.workers import multi_lfp_power_worker"],["atlastrack.ephys.export",569,"from atlastrack.ephys.export import default_export_path, save_feature_export"],["atlastrack.probes.trajectory_fit_io",797,"from atlastrack.probes.trajectory_fit_io import default_fit_path, save_fit"],["atlastrack.gui.workers",753,"from atlastrack.gui.workers import trajectory_fit_worker"],["atlastrack.ephys.export",610,"from atlastrack.ephys.export import default_export_path, load_shank_features"],["contextlib",9,"import contextlib"],["typing",11,"from typing import TYPE_CHECKING"],["atlastrack.probes.geometry",529,"from atlastrack.probes.geometry import SHANK_TIP_LENGTH_UM"],["numpy",526,"import numpy as np"],["numpy",496,"import numpy as np"],["atlastrack.probes.trajectory_fit_io",771,"from atlastrack.probes.trajectory_fit_io import ("],["atlastrack.ephys.loader",330,"from atlastrack.ephys.loader import list_streams"],["napari",29,"import napari"],["atlastrack.probes.trajectory_fit",770,"from atlastrack.probes.trajectory_fit import evidence_from_features"],["pathlib",10,"from pathlib import Path"],["__future__",7,"from __future__ import annotations"],["atlastrack.ephys.export",528,"from atlastrack.ephys.export import ShankFeatureExport"]],"atlastrack.probes.channels":[["atlastrack.probes.catalog",17,"from atlastrack.probes.catalog import ProbeLayout, get_layout"],["atlastrack.probes.track_path",184,"from atlastrack.probes.track_path import path_length_um, track_polyline"],["pathlib",12,"from pathlib import Path"],["atlastrack.probes.track_path",230,"from atlastrack.probes.track_path import ("],["atlastrack.ephys.landmarks",120,"from atlastrack.ephys.landmarks import Landmarks"],["datetime",387,"from datetime import datetime"],["__future__",9,"from __future__ import annotations"],["json",386,"import json"],["atlastrack.probes.geometry",18,"from atlastrack.probes.geometry import ELECTRODE_COLUMN_CENTER_UM"],["atlastrack.ephys.regions",358,"from atlastrack.ephys.regions import regions_at_ccf"],["numpy",15,"import numpy as np"],["csv",11,"import csv"],["atlastrack.project.schema",21,"from atlastrack.project.schema import Project, Shank"],["atlastrack.io.ccf_coords",476,"from atlastrack.io.ccf_coords import ("],["typing",13,"from typing import TYPE_CHECKING"]],"atlastrack.atlas.meshes":[["numpy",14,"import numpy as np"],["__future__",12,"from __future__ import annotations"]],"atlastrack.gui.widgets.ephys_features_view":[["qtpy",23,"from qtpy.QtCore import Qt, Signal"],["typing",20,"from typing import TYPE_CHECKING, ClassVar"],["pyqtgraph",462,"import pyqtgraph as pg"],["__future__",18,"from __future__ import annotations"],["qtpy",24,"from qtpy.QtWidgets import QLabel, QVBoxLayout, QWidget"],["pyqtgraph",174,"import pyqtgraph as pg"],["atlastrack.ephys.features",410,"from atlastrack.ephys.features import power_image"],["pyqtgraph",289,"import pyqtgraph as pg"],["atlastrack.ephys.features",291,"from atlastrack.ephys.features import raster_points"],["pyqtgraph",332,"import pyqtgraph as pg"],["pyqtgraph",408,"import pyqtgraph as pg"],["atlastrack.ephys.regions",546,"from atlastrack.ephys.regions import region_bands, regions_along_track"],["atlastrack.ephys.landmarks",29,"from atlastrack.ephys.landmarks import Landmarks"],["atlastrack.ephys.penetration",30,"from atlastrack.ephys.penetration import PenetrationProfile"],["pyqtgraph",626,"import pyqtgraph as pg"],["pyqtgraph",673,"import pyqtgraph as pg"],["numpy",22,"import numpy as np"],["pyqtgraph",310,"import pyqtgraph as pg"],["pyqtgraph",644,"import pyqtgraph as pg"],["atlastrack.ephys.features",312,"from atlastrack.ephys.features import depth_profiles"],["atlastrack.ephys.regions",26,"from atlastrack.ephys.regions import band_colours, white_matter_acronyms"],["atlastrack.ephys.regions",31,"from atlastrack.ephys.regions import RegionBand"],["pyqtgraph",108,"import pyqtgraph # noqa: F401"],["atlastrack.ephys.features",93,"from atlastrack.ephys.features import covered_rows"]],"atlastrack.gui.widgets.atlas_matcher":[["pathlib",22,"from pathlib import Path"],["atlastrack.project.schema",919,"from atlastrack.project.schema import PlaneParams"],["__future__",19,"from __future__ import annotations"],["atlastrack.io.ccf_coords",55,"from atlastrack.io.ccf_coords import ("],["tempfile",21,"import tempfile"],["atlastrack.project.schema",70,"from atlastrack.project.schema import ChannelLevels, Section"],["typing",23,"from typing import TYPE_CHECKING"],["atlastrack.io.ccf_coords",1050,"from atlastrack.io.ccf_coords import atlas_resolution_um"],["atlastrack.atlas.planes",725,"from atlastrack.atlas.planes import coronal_anchoring, resample_atlas_at_plane"],["atlastrack.sectioning.ap_series",861,"from atlastrack.sectioning.ap_series import ap_offsets"],["atlastrack.registration.pipeline",1051,"from atlastrack.registration.pipeline import anchoring_center_ap_um"],["atlastrack.gui.workers",1017,"from atlastrack.gui.workers import deepslice_worker"],["atlastrack.gui.crashlog",52,"from atlastrack.gui import crashlog"],["qtpy",28,"from qtpy.QtWidgets import ("],["qtpy",27,"from qtpy.QtGui import QColor, QImage, QPainter, QPen, QPixmap, QPolygonF, QTransform"],["qtpy",26,"from qtpy.QtCore import QPointF, Qt, Signal"],["numpy",25,"import numpy as np"],["atlastrack.gui.workflow",54,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.io.image",935,"from atlastrack.io.image import crop"],["atlastrack.registration.transforms",141,"from atlastrack.registration.transforms import annotation_boundaries"],["atlastrack.gui.widgets.tooltips",53,"from atlastrack.gui.widgets.tooltips import wrap_tooltips"],["atlastrack.registration.deepslice_adapter",1020,"from atlastrack.registration.deepslice_adapter import deepslice_run_note"],["atlastrack.registration.pipeline",1144,"from atlastrack.registration.pipeline import prematch_ap_order_issues"],["atlastrack.gui.workflow",1049,"from atlastrack.gui.workflow import crop_fingerprint"],["itertools",1189,"from itertools import pairwise"]],"atlastrack.ephys.discovery":[["csv",34,"import csv"],["re",35,"import re"],["dataclasses",36,"from dataclasses import dataclass, field"],["atlastrack.ephys.recordings",42,"from atlastrack.ephys.recordings import ("],["atlastrack.ephys.formats",260,"from atlastrack.ephys.formats import detect_format"],["spikeinterface",232,"import spikeinterface.full as si"],["pathlib",38,"from pathlib import Path"],["numpy",40,"import numpy as np"],["atlastrack.ephys.loader",403,"from atlastrack.ephys.loader import list_streams"],["datetime",37,"from datetime import date"],["__future__",32,"from __future__ import annotations"]],"atlastrack.landmarks.contour":[["__future__",2,"from __future__ import annotations"],["skimage",5,"from skimage import measure"],["numpy",4,"import numpy as np"]],"atlastrack.project.schema":[["pydantic",10,"from pydantic import BaseModel, ConfigDict, Field"],["typing",8,"from typing import Literal"],["__future__",6,"from __future__ import annotations"]],"atlastrack.gui.widgets.image_tools":[["__future__",2,"from __future__ import annotations"],["typing",4,"from typing import Callable"],["atlastrack.gui.widgets.separators",20,"from atlastrack.gui.widgets.separators import section_header"],["atlastrack.project.images",286,"from atlastrack.project.images import deepslice_rotation_deg"],["atlastrack.gui.workflow",21,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.project.schema",376,"from atlastrack.project.schema import ChannelLevels"],["numpy",6,"import numpy as np"],["qtpy",7,"from qtpy.QtWidgets import ("]],"atlastrack.gui.widgets.click_overlay":[["qtpy",28,"from qtpy.QtWidgets import ("],["numpy",27,"import numpy as np"],["atlastrack.gui.workflow",44,"from atlastrack.gui.workflow import WorkflowState"],["__future__",23,"from __future__ import annotations"],["atlastrack.gui.widgets.separators",43,"from atlastrack.gui.widgets.separators import section_header"],["atlastrack.project.schema",45,"from atlastrack.project.schema import Point2D"],["atlastrack.project.schema",508,"from atlastrack.project.schema import TrackPick"],["typing",25,"from typing import TYPE_CHECKING"],["atlastrack.sectioning.split",669,"from atlastrack.sectioning.split import _binarize, _to_gray"],["napari",48,"import napari"]],"atlastrack.sectioning.split":[["skimage",23,"from skimage import filters, measure, morphology"],["numpy",22,"import numpy as np"],["skimage",24,"from skimage.color import rgb2gray"],["dataclasses",20,"from dataclasses import dataclass, replace"],["__future__",18,"from __future__ import annotations"]],"atlastrack.cli":[["numpy",215,"import numpy as np"],["typing",18,"from typing import Annotated"],["atlastrack.io.image",218,"from atlastrack.io.image import load_image"],["__future__",14,"from __future__ import annotations"],["atlastrack.gui.app",75,"from atlastrack.gui.app import launch"],["json",120,"import json"],["atlastrack.io.image",122,"from atlastrack.io.image import load_image"],["atlastrack.project.images",348,"from atlastrack.project.images import section_images"],["atlastrack.io.herbs_writer",217,"from atlastrack.io.herbs_writer import write_herbs_pkl"],["atlastrack.project.provenance",468,"from atlastrack.project.provenance import write_export_provenance"],["atlastrack.sectioning.split",124,"from atlastrack.sectioning.split import detect_sections"],["atlastrack.registration.pipeline",350,"from atlastrack.registration.pipeline import register_project_with_atlas"],["atlastrack.registration.predictor",232,"from atlastrack.registration.predictor import ManualPredictor"],["atlastrack.probes.channels",466,"from atlastrack.probes.channels import export_channel_csv, export_paxinos_csv"],["atlastrack.registration.pipeline",231,"from atlastrack.registration.pipeline import register_project"],["brainglobe_atlasapi",475,"from brainglobe_atlasapi import BrainGlobeAtlas"],["atlastrack.project.io",467,"from atlastrack.project.io import load_project, save_project"],["atlastrack.probes.fitting",495,"from atlastrack.probes.fitting import enforce_rigid_arrays"],["atlastrack.project.schema",220,"from atlastrack.project.schema import ("],["atlastrack.project.io",349,"from atlastrack.project.io import load_project, save_project"],["sys",16,"import sys"],["atlastrack.sectioning.ordering",123,"from atlastrack.sectioning.ordering import order_sections"],["loguru",21,"from loguru import logger"],["brainglobe_atlasapi",346,"from brainglobe_atlasapi import BrainGlobeAtlas"],["typer",20,"import typer"],["atlastrack.project.io",219,"from atlastrack.project.io import save_project"],["pathlib",17,"from pathlib import Path"],["atlastrack",62,"from atlastrack import __version__"],["atlastrack.gui.gl_diagnostics",83,"from atlastrack.gui.gl_diagnostics import format_gl_report"],["atlastrack.registration.pipeline",477,"from atlastrack.registration.pipeline import ("]],"atlastrack.probes.trajectory_fit_io":[["pathlib",22,"from pathlib import Path"],["datetime",20,"from datetime import datetime, timezone"],["json",19,"import json"],["numpy",24,"import numpy as np"],["atlastrack.probes.trajectory_fit",26,"from atlastrack.probes.trajectory_fit import ("],["__future__",17,"from __future__ import annotations"],["hashlib",21,"from hashlib import sha256"],["atlastrack.ephys.export",43,"from atlastrack.ephys.export import default_export_path"]],"atlastrack.gui.app":[["atlastrack.gui.widgets.ephys_panel",239,"from atlastrack.gui.widgets.ephys_panel import EphysPanelWidget"],["atlastrack.gui.widgets.ordering_panel",241,"from atlastrack.gui.widgets.ordering_panel import OrderingPanelWidget"],["atlastrack.gui.widgets.click_overlay",238,"from atlastrack.gui.widgets.click_overlay import ClickOverlayWidget"],["qtpy",568,"from qtpy.QtGui import QFontMetrics"],["napari",12,"import napari"],["atlastrack.gui.widgets.help_panel",247,"from atlastrack.gui.widgets.help_panel import ATLASES, HelpPanelWidget"],["qtpy",654,"from qtpy.QtWidgets import QTabWidget"],["qtpy",233,"from qtpy.QtWidgets import QTabWidget, QVBoxLayout, QWidget"],["pathlib",413,"from pathlib import Path"],["atlastrack.gui.widgets.tooltips",403,"from atlastrack.gui.widgets.tooltips import wrap_tooltips"],["atlastrack.gui.widgets.atlas_help_dialog",697,"from atlastrack.gui.widgets.atlas_help_dialog import show_atlas_reference"],["__future__",2,"from __future__ import annotations"],["atlastrack.gui.crashlog",14,"from atlastrack.gui import crashlog"],["atlastrack.gui.widgets.welcome_overlay",70,"from atlastrack.gui.widgets.welcome_overlay import WelcomeOverlayWidget"],["numpy",894,"import numpy as np"],["atlastrack.gui.section_display",774,"from atlastrack.gui.section_display import sections_to_outline_labels"],["qtpy",617,"from qtpy.QtWidgets import QMenu"],["atlastrack.gui.section_display",844,"from atlastrack.gui.section_display import sections_to_outline_labels"],["qtpy",497,"from qtpy.QtCore import Qt"],["atlastrack.gui.widgets.help_panel",624,"from atlastrack.gui.widgets.help_panel import ATLASES, MANUAL, TUTORIAL"],["atlastrack.config",532,"from atlastrack.config import save_app_settings"],["atlastrack.gui.widgets.save_panel",436,"from atlastrack.gui.widgets.save_panel import SavePanelWidget"],["atlastrack.gui.gl_diagnostics",39,"from atlastrack.gui.gl_diagnostics import report_launch_failure"],["atlastrack.gui.widgets.welcome_overlay",15,"from atlastrack.gui.widgets.welcome_overlay import APP_TITLE"],["sys",4,"import sys"],["qtpy",192,"from qtpy.QtWidgets import QApplication"],["atlastrack.gui.widgets.viz_export_panel",245,"from atlastrack.gui.widgets.viz_export_panel import VizExportPanelWidget"],["qtpy",214,"from qtpy.QtWidgets import QApplication, QMessageBox"],["qtpy",593,"from qtpy.QtWidgets import QMenu"],["atlastrack.gui.workflow",236,"from atlastrack.gui.workflow import WorkflowState"],["numpy",907,"import numpy as np"],["qtpy",480,"from qtpy.QtWidgets import QMessageBox"],["atlastrack.gui.widgets.probe_picker",242,"from atlastrack.gui.widgets.probe_picker import ProbePickerWidget"],["pathlib",432,"from pathlib import Path"],["atlastrack.gui.widgets.atlas_browser",237,"from atlastrack.gui.widgets.atlas_browser import AtlasBrowserWidget"],["atlastrack.project.images",845,"from atlastrack.project.images import rebuild_slide_image"],["atlastrack.gui.widgets.slide_loader",244,"from atlastrack.gui.widgets.slide_loader import SlideLoaderWidget"],["numpy",7,"import numpy as np"],["atlastrack.gui.widgets.register_panel",243,"from atlastrack.gui.widgets.register_panel import RegisterPanelWidget"],["atlastrack.gui.widgets.image_tools",240,"from atlastrack.gui.widgets.image_tools import ImageToolsWidget"],["qtpy",434,"from qtpy.QtWidgets import QMenu"],["traceback",5,"import traceback"],["atlastrack.config",235,"from atlastrack.config import load_app_settings, save_app_settings"]],"atlastrack.ephys.epochs":[["numpy",24,"import numpy as np"],["__future__",20,"from __future__ import annotations"],["dataclasses",22,"from dataclasses import dataclass"]],"atlastrack.ephys.probemap":[["enum",28,"from enum import Enum"],["__future__",23,"from __future__ import annotations"],["csv",25,"import csv"],["atlastrack.probes.catalog",339,"from atlastrack.probes.catalog import CATALOG"],["xml",175,"import xml.etree.ElementTree as ET"],["dataclasses",27,"from dataclasses import dataclass"],["probeinterface",296,"import probeinterface as pi"],["collections",26,"from collections.abc import Callable"],["numpy",31,"import numpy as np"],["pathlib",29,"from pathlib import Path"]],"atlastrack.gui.widgets.separators":[["__future__",8,"from __future__ import annotations"],["qtpy",10,"from qtpy.QtCore import Qt"],["qtpy",11,"from qtpy.QtWidgets import QFrame, QHBoxLayout, QLabel, QVBoxLayout, QWidget"]],"atlastrack.probes":[],"atlastrack.registration.pipeline":[["atlastrack.registration.transforms",437,"from atlastrack.registration.transforms import _warped_atlas_extent"],["atlastrack.registration.transforms",38,"from atlastrack.registration.transforms import ("],["atlastrack.atlas.planes",329,"from atlastrack.atlas.planes import sample_plane"],["atlastrack.registration.bspline",36,"from atlastrack.registration.bspline import refine_with_bspline"],["atlastrack.registration.elastix_bspline",251,"from atlastrack.registration.elastix_bspline import refine_with_elastix"],["atlastrack.registration.masks",353,"from atlastrack.registration.masks import registration_moving_mask"],["atlastrack.registration.elastix_bspline",224,"from atlastrack.registration.elastix_bspline import ELASTIX_AVAILABLE"],["brainglobe_atlasapi",45,"from brainglobe_atlasapi import BrainGlobeAtlas"],["__future__",21,"from __future__ import annotations"],["SimpleITK",523,"import SimpleITK as sitk"],["atlastrack.registration.masks",436,"from atlastrack.registration.masks import section_tissue_mask"],["atlastrack.atlas.planes",29,"from atlastrack.atlas.planes import ("],["itertools",142,"from itertools import pairwise"],["atlastrack.project.schema",35,"from atlastrack.project.schema import Project, RegistrationResult, Section, Shank"],["numpy",26,"import numpy as np"],["loguru",27,"from loguru import logger"],["pathlib",23,"from pathlib import Path"],["atlastrack.registration.boundary_snap",432,"from atlastrack.registration.boundary_snap import ("],["typing",24,"from typing import TYPE_CHECKING"],["atlastrack.registration.predictor",37,"from atlastrack.registration.predictor import PlanePredictor"],["atlastrack.io.ccf_coords",34,"from atlastrack.io.ccf_coords import atlas_resolution_um"]],"atlastrack.registration.bspline":[["__future__",20,"from __future__ import annotations"],["numpy",24,"import numpy as np"],["SimpleITK",25,"import SimpleITK as sitk"],["dataclasses",22,"from dataclasses import dataclass"]],"atlastrack.viz.napari3d":[["atlastrack.viz.plotly3d",195,"from atlastrack.viz.plotly3d import ("],["__future__",6,"from __future__ import annotations"],["numpy",10,"import numpy as np"],["atlastrack.atlas.meshes",118,"from atlastrack.atlas.meshes import mesh_vertices_faces"],["napari",13,"import napari"],["atlastrack.viz.plotly3d",165,"from atlastrack.viz.plotly3d import hex_to_rgb, region_style"],["atlastrack.viz.plotly3d",146,"from atlastrack.viz.plotly3d import hex_to_rgb, styled_regions"],["brainglobe_atlasapi",14,"from brainglobe_atlasapi import BrainGlobeAtlas"],["napari",102,"from napari.utils.colormaps import Colormap"],["atlastrack.project.schema",15,"from atlastrack.project.schema import Project"],["atlastrack.io.ccf_coords",246,"from atlastrack.io.ccf_coords import MIDLINE_ML_UM, bregma_ap_for_display"],["typing",8,"from typing import TYPE_CHECKING"]],"atlastrack.probes.registration_suggestion":[["__future__",25,"from __future__ import annotations"],["dataclasses",27,"from dataclasses import dataclass, field"],["numpy",29,"import numpy as np"],["atlastrack.probes.trajectory_refine",31,"from atlastrack.probes.trajectory_refine import transformed_array"]],"atlastrack.registration.landmarks_warp":[["__future__",13,"from __future__ import annotations"],["scipy",190,"from scipy.interpolate import RBFInterpolator"],["scipy",176,"from scipy.ndimage import distance_transform_edt"],["scipy",275,"from scipy.ndimage import map_coordinates"],["scipy",79,"from scipy.ndimage import label as cc_label"],["skimage",99,"from skimage.feature import corner_harris, corner_peaks"],["numpy",15,"import numpy as np"],["scipy",239,"from scipy import ndimage as ndi"],["scipy",78,"from scipy.ndimage import convolve"],["skimage",80,"from skimage.morphology import skeletonize"]],"atlastrack.viz":[],"atlastrack.ephys.autolandmarks":[["itertools",528,"import itertools"],["atlastrack.ephys.features",151,"from atlastrack.ephys.features import boundary_contrast"],["__future__",21,"from __future__ import annotations"],["warnings",23,"import warnings"],["dataclasses",24,"from dataclasses import dataclass"],["numpy",26,"import numpy as np"]],"atlastrack.probes.trajectory_refine":[["atlastrack.ephys.autolandmarks",257,"from atlastrack.ephys.autolandmarks import candidate_boundaries"],["dataclasses",33,"from dataclasses import dataclass"],["atlastrack.ephys.regions",258,"from atlastrack.ephys.regions import region_bands, regions_along_track"],["__future__",31,"from __future__ import annotations"],["numpy",35,"import numpy as np"]],"atlastrack.ephys.loader":[["pathlib",14,"from pathlib import Path"],["__future__",11,"from __future__ import annotations"],["atlastrack.ephys.epochs",292,"from atlastrack.ephys.epochs import ("],["atlastrack.ephys.formats",142,"from atlastrack.ephys.formats import select_lfp_stream as _sel"],["atlastrack.ephys.recordings",257,"from atlastrack.ephys.recordings import SHANK_PITCH_UM"],["numpy",16,"import numpy as np"],["spikeinterface",27,"import spikeinterface.full as si"],["atlastrack.ephys.formats",169,"from atlastrack.ephys.formats import open_stream, select_lfp_stream, select_wideband_stream"],["atlastrack.ephys.formats",121,"from atlastrack.ephys.formats import detect_format"],["atlastrack.ephys.formats",141,"from atlastrack.ephys.formats import OPEN_EPHYS, DetectedRecording"],["atlastrack.ephys.probemap",208,"from atlastrack.ephys.probemap import GeometrySource, resolve_probe_map"],["atlastrack.ephys.formats",135,"from atlastrack.ephys.formats import list_streams as _list"],["atlastrack.ephys.features",108,"from atlastrack.ephys.features import lfp_psd"],["dataclasses",13,"from dataclasses import dataclass"],["atlastrack.ephys.formats",168,"from atlastrack.ephys.formats import list_streams as _list"],["atlastrack.ephys.formats",151,"from atlastrack.ephys.formats import select_wideband_stream as _sel"],["atlastrack.ephys.formats",150,"from atlastrack.ephys.formats import OPEN_EPHYS, DetectedRecording"]],"atlastrack.sectioning.ordering":[["numpy",11,"import numpy as np"],["__future__",7,"from __future__ import annotations"],["dataclasses",9,"from dataclasses import dataclass"],["atlastrack.sectioning.split",13,"from atlastrack.sectioning.split import DetectedSection"]],"atlastrack.ephys.alignment":[["numpy",16,"import numpy as np"],["__future__",14,"from __future__ import annotations"]],"atlastrack.gui.widgets.ordering_panel":[["atlastrack.sectioning.ap_series",221,"from atlastrack.sectioning.ap_series import assign_section_ap"],["atlastrack.gui.widgets.separators",20,"from atlastrack.gui.widgets.separators import section_header"],["__future__",2,"from __future__ import annotations"],["atlastrack.project.schema",263,"from atlastrack.project.schema import PlaneParams"],["atlastrack.io.ccf_coords",21,"from atlastrack.io.ccf_coords import bregma_ap_for_display"],["atlastrack.gui.workflow",22,"from atlastrack.gui.workflow import WorkflowState"],["numpy",4,"import numpy as np"],["qtpy",5,"from qtpy.QtCore import Qt"],["qtpy",6,"from qtpy.QtWidgets import ("],["atlastrack.sectioning.ordering",23,"from atlastrack.sectioning.ordering import geometric_order"]],"atlastrack.ephys.landmarks":[["dataclasses",37,"from dataclasses import dataclass"],["__future__",35,"from __future__ import annotations"],["numpy",39,"import numpy as np"]],"atlastrack.probes.catalog":[["numpy",16,"import numpy as np"],["dataclasses",14,"from dataclasses import dataclass, field"],["__future__",12,"from __future__ import annotations"]],"atlastrack.registration.internal_feature_snap":[["__future__",38,"from __future__ import annotations"],["numpy",40,"import numpy as np"],["skimage",88,"from skimage import measure"],["scipy",246,"from scipy import ndimage as ndi"],["atlastrack.landmarks.midline",208,"from atlastrack.landmarks.midline import estimate_midline"],["atlastrack.registration.transforms",173,"from atlastrack.registration.transforms import annotation_boundaries"],["scipy",87,"from scipy import ndimage as ndi"],["atlastrack.registration.boundary_snap",281,"from atlastrack.registration.boundary_snap import fit_foldproof_tps"]],"atlastrack.landmarks":[],"atlastrack.io":[],"atlastrack.gui.widgets.atlas_help_dialog":[["qtpy",16,"from qtpy.QtWidgets import ("],["qtpy",15,"from qtpy.QtCore import Qt"],["atlastrack.io.ccf_coords",133,"from atlastrack.io.ccf_coords import BREGMA_AP_BY_ATLAS"],["__future__",13,"from __future__ import annotations"],["qtpy",123,"from qtpy.QtGui import QPalette"]],"atlastrack.sectioning.ap_series":[["atlastrack.project.schema",28,"from atlastrack.project.schema import Section"],["typing",25,"from typing import TYPE_CHECKING, Literal"],["atlastrack.project.schema",104,"from atlastrack.project.schema import PlaneParams"],["__future__",23,"from __future__ import annotations"],["atlastrack.io.ccf_coords",103,"from atlastrack.io.ccf_coords import BREGMA_AP_FROM_ORIGIN_UM"]],"atlastrack.probes.fitting":[["numpy",8,"import numpy as np"],["__future__",6,"from __future__ import annotations"]],"atlastrack.project":[],"atlastrack.landmarks.ventricles":[["numpy",12,"import numpy as np"],["skimage",14,"from skimage import measure"],["__future__",8,"from __future__ import annotations"],["scipy",13,"from scipy import ndimage"],["dataclasses",10,"from dataclasses import dataclass"]],"atlastrack.gui.widgets":[],"atlastrack.gui.widgets.register_panel":[["numpy",1140,"import numpy as np"],["numpy",1021,"import numpy as np"],["qtpy",343,"from qtpy.QtWidgets import QDialog, QVBoxLayout"],["atlastrack.registration.landmarks_warp",1231,"from atlastrack.registration.landmarks_warp import warp_contour_image"],["napari",28,"import napari"],["atlastrack.gui.workflow",356,"from atlastrack.gui.workflow import section_display_no"],["atlastrack.gui.workers",478,"from atlastrack.gui.workers import deepslice_worker"],["atlastrack.registration.transforms",998,"from atlastrack.registration.transforms import warp_annotation_to_section"],["atlastrack.registration.pipeline",535,"from atlastrack.registration.pipeline import guide_anchorings_with_planes"],["typing",5,"from typing import TYPE_CHECKING"],["numpy",424,"import numpy as np"],["atlastrack.gui.workflow",25,"from atlastrack.gui.workflow import WorkflowState"],["napari",676,"from napari.utils.transforms import Affine"],["atlastrack.project.io",1302,"from atlastrack.project.io import save_project"],["atlastrack.gui.workflow",503,"from atlastrack.gui.workflow import crop_fingerprint"],["atlastrack.registration.pipeline",1282,"from atlastrack.registration.pipeline import ("],["atlastrack.gui.workers",1334,"from atlastrack.gui.workers import load_atlas_worker"],["atlastrack.registration.transforms",1075,"from atlastrack.registration.transforms import annotation_boundaries"],["atlastrack.project.schema",1243,"from atlastrack.project.schema import ManualLandmarks"],["napari",935,"from napari.utils.transforms import Affine"],["numpy",916,"import numpy as np"],["atlastrack.project.io",623,"from atlastrack.project.io import save_project"],["numpy",675,"import numpy as np"],["atlastrack.registration.landmarks_warp",715,"from atlastrack.registration.landmarks_warp import warp_label_image"],["importlib",108,"import importlib.util"],["atlastrack.registration.manual",678,"from atlastrack.registration.manual import section_to_world"],["numpy",1241,"import numpy as np"],["atlastrack.io.ccf_coords",646,"from atlastrack.io.ccf_coords import bregma_ap_for_display"],["atlastrack.registration.manual",918,"from atlastrack.registration.manual import is_identity, world_to_section"],["atlastrack.io.image",426,"from atlastrack.io.image import crop"],["atlastrack.registration.transforms",1024,"from atlastrack.registration.transforms import annotation_boundaries"],["atlastrack.registration.landmarks_warp",1062,"from atlastrack.registration.landmarks_warp import salient_landmarks"],["atlastrack.registration.manual",1036,"from atlastrack.registration.manual import section_to_world"],["__future__",2,"from __future__ import annotations"],["napari",1022,"from napari.utils.transforms import Affine"],["numpy",934,"import numpy as np"],["numpy",1211,"import numpy as np"],["atlastrack.gui.workers",543,"from atlastrack.gui.workers import register_worker_progressive"],["atlastrack.registration.deepslice_adapter",471,"from atlastrack.registration.deepslice_adapter import ("],["numpy",996,"import numpy as np"],["qtpy",7,"from qtpy.QtWidgets import ("],["atlastrack.registration.transforms",679,"from atlastrack.registration.transforms import ("],["atlastrack.registration.landmarks_warp",1010,"from atlastrack.registration.landmarks_warp import warp_label_image"],["pathlib",4,"from pathlib import Path"],["numpy",1060,"import numpy as np"]],"atlastrack.ephys.recordings":[["__future__",21,"from __future__ import annotations"],["numpy",25,"import numpy as np"],["dataclasses",23,"from dataclasses import dataclass"]],"atlastrack.registration.masks":[["scipy",73,"from scipy import ndimage as ndi"],["skimage",40,"from skimage.filters import threshold_otsu"],["scipy",39,"from scipy import ndimage as ndi"],["numpy",20,"import numpy as np"],["scipy",90,"from scipy import ndimage as ndi"],["__future__",18,"from __future__ import annotations"]],"atlastrack.ephys.combine":[["atlastrack.probes.geometry",53,"from atlastrack.probes.geometry import SHANK_TIP_LENGTH_UM"],["warnings",42,"import warnings"],["atlastrack.ephys.recordings",48,"from atlastrack.ephys.recordings import ("],["__future__",40,"from __future__ import annotations"],["itertools",44,"from itertools import pairwise"],["dataclasses",43,"from dataclasses import dataclass, field"],["numpy",46,"import numpy as np"]],"atlastrack.io.brainreg":[["pathlib",24,"from pathlib import Path"],["numpy",26,"import numpy as np"],["tifffile",40,"import tifffile"],["__future__",22,"from __future__ import annotations"]],"atlastrack.ephys.regions":[["dataclasses",12,"from dataclasses import dataclass"],["numpy",14,"import numpy as np"],["itertools",10,"import itertools"],["atlastrack.viz.plotly3d",294,"from atlastrack.viz.plotly3d import REGION_STYLE, hex_to_rgb"],["math",11,"import math"],["__future__",8,"from __future__ import annotations"],["zlib",292,"from zlib import crc32"],["atlastrack.atlas.meshes",16,"from atlastrack.atlas.meshes import structure_rgb"]],"atlastrack.ephys.export":[["pathlib",22,"from pathlib import Path"],["__future__",18,"from __future__ import annotations"],["json",20,"import json"],["dataclasses",21,"from dataclasses import dataclass, field"],["numpy",24,"import numpy as np"]],"atlastrack.gui.widgets.welcome_overlay":[["itertools",15,"from itertools import pairwise"],["qtpy",17,"from qtpy.QtCore import QEvent, QObject, QPoint, QRect, Qt"],["__future__",13,"from __future__ import annotations"],["qtpy",19,"from qtpy.QtWidgets import QWidget"],["napari",248,"from napari.utils.theme import get_theme"],["qtpy",18,"from qtpy.QtGui import QColor, QFont, QPainter, QPainterPath, QPen"]],"atlastrack.gui.gl_diagnostics":[["json",52,"import json"],["json",175,"import json"],["__future__",13,"from __future__ import annotations"],["OpenGL",104,"from OpenGL import GL"],["subprocess",53,"import subprocess"],["qtpy",86,"from qtpy.QtGui import QOffscreenSurface, QOpenGLContext"],["qtpy",87,"from qtpy.QtWidgets import QApplication"],["sys",54,"import sys"]],"atlastrack.registration.tilt_refine":[["atlastrack.registration.masks",62,"from atlastrack.registration.masks import moment_similarity, section_tissue_mask"],["typing",20,"from typing import TYPE_CHECKING"],["brainglobe_atlasapi",27,"from brainglobe_atlasapi import BrainGlobeAtlas"],["numpy",22,"import numpy as np"],["SimpleITK",64,"import SimpleITK as sitk"],["__future__",18,"from __future__ import annotations"],["atlastrack.registration.elastix_bspline",57,"from atlastrack.registration.elastix_bspline import ("],["atlastrack.registration.pipeline",119,"from atlastrack.registration.pipeline import register_section_image"],["atlastrack.atlas.planes",24,"from atlastrack.atlas.planes import Anchoring, sample_plane"]],"atlastrack.gui.widgets.ephys_align_dialog":[["atlastrack.ephys.alignment",37,"from atlastrack.ephys.alignment import apply_depth_alignment, channel_ccf_um, invert_anchors"],["atlastrack.gui.widgets.tooltips",41,"from atlastrack.gui.widgets.tooltips import wrap_tooltips"],["qtpy",21,"from qtpy.QtWidgets import ("],["qtpy",20,"from qtpy.QtGui import QColor, QPen"],["__future__",14,"from __future__ import annotations"],["qtpy",19,"from qtpy.QtCore import Qt"],["atlastrack.gui.workflow",42,"from atlastrack.gui.workflow import WorkflowState"],["csv",517,"import csv"],["atlastrack.project.schema",45,"from atlastrack.project.schema import Shank"],["qtpy",504,"from qtpy.QtWidgets import QFileDialog, QMessageBox"],["numpy",18,"import numpy as np"],["typing",16,"from typing import TYPE_CHECKING"],["atlastrack.ephys.features",38,"from atlastrack.ephys.features import power_image"],["atlastrack.gui.widgets.atlas_matcher",40,"from atlastrack.gui.widgets.atlas_matcher import _to_pixmap"],["atlastrack.ephys.regions",39,"from atlastrack.ephys.regions import region_strip_image, regions_at_ccf"],["atlastrack.project.schema",539,"from atlastrack.project.schema import EphysAlignment"]],"atlastrack.ephys.features":[["scipy",41,"from scipy.signal import welch"],["numpy",10,"import numpy as np"],["__future__",8,"from __future__ import annotations"]],"atlastrack.gui.crashlog":[["sys",25,"import sys"],["qtpy",148,"from qtpy.QtWidgets import QApplication"],["atlastrack",84,"from atlastrack import __version__"],["pathlib",29,"from pathlib import Path"],["qtpy",97,"import qtpy"],["__future__",21,"from __future__ import annotations"],["os",24,"import os"],["traceback",27,"import traceback"],["atlastrack.gui.gl_diagnostics",122,"from atlastrack.gui.gl_diagnostics import format_gl_report"],["threading",26,"import threading"],["platform",73,"import platform"],["datetime",28,"from datetime import datetime"],["qtpy",184,"from qtpy.QtCore import QtMsgType, qInstallMessageHandler"],["qtpy",147,"from qtpy.QtCore import QEvent, QObject"],["faulthandler",23,"import faulthandler"],["importlib",91,"import importlib.metadata as md"]],"atlastrack.probes.track_path":[["numpy",33,"import numpy as np"],["__future__",31,"from __future__ import annotations"]],"atlastrack.io.image":[["pathlib",8,"from pathlib import Path"],["__future__",6,"from __future__ import annotations"],["numpy",10,"import numpy as np"],["imageio",23,"import imageio.v3 as iio"],["tifffile",18,"import tifffile"]],"atlastrack.viz.plotly3d":[["atlastrack.project.schema",16,"from atlastrack.project.schema import Project"],["atlastrack.atlas.meshes",100,"from atlastrack.atlas.meshes import mesh_vertices_faces"],["webbrowser",7,"import webbrowser"],["typing",9,"from typing import TYPE_CHECKING"],["pathlib",8,"from pathlib import Path"],["numpy",11,"import numpy as np"],["atlastrack.io.ccf_coords",249,"from atlastrack.io.ccf_coords import MIDLINE_ML_UM, bregma_ap_for_display"],["atlastrack.probes.geometry",190,"from atlastrack.probes.geometry import probe_prism_mesh"],["__future__",5,"from __future__ import annotations"],["plotly",189,"import plotly.graph_objects as go"],["plotly",291,"import plotly.graph_objects as go"],["brainglobe_atlasapi",15,"from brainglobe_atlasapi import BrainGlobeAtlas"],["plotly",14,"import plotly.graph_objects as go"],["plotly",98,"import plotly.graph_objects as go"],["atlastrack.atlas.meshes",162,"from atlastrack.atlas.meshes import region_acronyms_at_points"]],"atlastrack.gui.widgets.tooltips":[["qtpy",16,"from qtpy.QtWidgets import QWidget"],["textwrap",14,"import textwrap"],["__future__",12,"from __future__ import annotations"]],"atlastrack.io.herbs_writer":[["pickle",10,"import pickle"],["atlastrack.io.herbs",17,"from atlastrack.io.herbs import DEFAULT_HERBS_GRID_UM, ccf_um_to_herbs_voxel"],["collections",11,"from collections.abc import Sequence"],["pathlib",12,"from pathlib import Path"],["typing",13,"from typing import Any"],["__future__",8,"from __future__ import annotations"],["numpy",15,"import numpy as np"]],"atlastrack":[],"atlastrack.landmarks.anchors":[["pydantic",9,"from pydantic import BaseModel, ConfigDict"],["__future__",7,"from __future__ import annotations"]],"atlastrack.sectioning":[],"atlastrack.registration":[],"atlastrack.probes.trajectory_fit":[["dataclasses",32,"from dataclasses import dataclass, field"],["atlastrack.ephys.regions",191,"from atlastrack.ephys.regions import region_bands, regions_along_track"],["atlastrack.ephys.autolandmarks",95,"from atlastrack.ephys.autolandmarks import ("],["__future__",30,"from __future__ import annotations"],["atlastrack.ephys.autolandmarks",190,"from atlastrack.ephys.autolandmarks import candidate_boundaries"],["numpy",34,"import numpy as np"],["atlastrack.ephys.features",99,"from atlastrack.ephys.features import lfp_band_power"],["atlastrack.probes.trajectory_refine",36,"from atlastrack.probes.trajectory_refine import shift_along_track, transformed_array"]],"atlastrack.registration.predictor":[["typing",9,"from typing import Protocol"],["numpy",11,"import numpy as np"],["atlastrack.project.schema",13,"from atlastrack.project.schema import PlaneParams"],["__future__",7,"from __future__ import annotations"]],"atlastrack.io.herbs":[["typing",25,"from typing import TypedDict"],["numpy",27,"import numpy as np"],["pathlib",24,"from pathlib import Path"],["pickle",23,"import pickle"],["atlastrack.io.ccf_coords",29,"from atlastrack.io.ccf_coords import AP_UM, DV_UM, ML_UM"],["__future__",21,"from __future__ import annotations"]],"atlastrack.registration.deepslice_adapter":[["importlib",244,"from importlib.util import find_spec"],["typing",16,"from typing import TYPE_CHECKING"],["re",13,"import re"],["sys",14,"import sys"],["atlastrack.io.quicknii",20,"from atlastrack.io.quicknii import QuickNiiDocument, load_quicknii"],["imageio",193,"import imageio.v3 as iio"],["numpy",18,"import numpy as np"],["brainglobe_atlasapi",24,"from brainglobe_atlasapi import BrainGlobeAtlas"],["atlastrack.project.schema",21,"from atlastrack.project.schema import PlaneParams"],["pathlib",245,"from pathlib import Path"],["json",243,"import json"],["subprocess",191,"import subprocess"],["__future__",11,"from __future__ import annotations"],["DeepSlice",50,"from DeepSlice import DSModel # imported lazily"],["pathlib",15,"from pathlib import Path"],["sys",279,"import sys"]],"atlastrack.io.ccf_coords":[["math",10,"import math"],["__future__",8,"from __future__ import annotations"],["brainglobe_atlasapi",17,"from brainglobe_atlasapi import BrainGlobeAtlas"],["numpy",14,"import numpy as np"],["typing",12,"from typing import TYPE_CHECKING"],["dataclasses",11,"from dataclasses import dataclass"]],"atlastrack.gui.section_display":[["__future__",9,"from __future__ import annotations"],["numpy",11,"import numpy as np"]],"atlastrack.registration.manual":[["__future__",20,"from __future__ import annotations"],["numpy",22,"import numpy as np"]],"atlastrack.gui.workers":[["typing",6,"from typing import TYPE_CHECKING"],["napari",9,"from napari.qt.threading import thread_worker"],["atlastrack.sectioning.ordering",11,"from atlastrack.sectioning.ordering import OrderedSection, order_sections"],["atlastrack.registration.tilt_refine",434,"from atlastrack.registration.tilt_refine import refine_tilt as _refine_tilt"],["time",4,"import time"],["loguru",408,"from loguru import logger"],["SimpleITK",361,"import SimpleITK as sitk"],["atlastrack.registration.transforms",369,"from atlastrack.registration.transforms import RegisteredSectionTransform"],["atlastrack.probes.trajectory_fit",143,"from atlastrack.probes.trajectory_fit import ("],["atlastrack.registration.pipeline",90,"from atlastrack.registration.pipeline import register_project_with_atlas"],["__future__",2,"from __future__ import annotations"],["atlastrack.ephys.features",278,"from atlastrack.ephys.features import power_image"],["atlastrack.ephys.combine",207,"from atlastrack.ephys.combine import RecordingFeatures, stack_penetration"],["atlastrack.registration.pipeline",364,"from atlastrack.registration.pipeline import ("],["numpy",8,"import numpy as np"],["atlastrack.ephys.discovery",514,"from atlastrack.ephys.discovery import discover"],["pathlib",5,"from pathlib import Path"],["atlastrack.sectioning.split",12,"from atlastrack.sectioning.split import detect_sections"],["atlastrack.ephys.loader",208,"from atlastrack.ephys.loader import excerpt_psd, load_lfp_excerpts"],["numpy",141,"import numpy as np"],["atlastrack.project.schema",17,"from atlastrack.project.schema import Project"],["atlastrack.registration.deepslice_adapter",122,"from atlastrack.registration.deepslice_adapter import predict_anchorings"],["atlastrack.ephys.loader",279,"from atlastrack.ephys.loader import excerpt_psd, load_lfp_excerpts"],["atlastrack.io.ccf_coords",363,"from atlastrack.io.ccf_coords import atlas_resolution_um"],["brainglobe_atlasapi",52,"from brainglobe_atlasapi import BrainGlobeAtlas"],["brainglobe_atlasapi",15,"from brainglobe_atlasapi import BrainGlobeAtlas"]],"atlastrack.gui.widgets.help_panel":[["atlastrack.gui.widgets.atlas_help_dialog",121,"from atlastrack.gui.widgets.atlas_help_dialog import ("],["__future__",12,"from __future__ import annotations"],["qtpy",17,"from qtpy.QtWidgets import ("],["qtpy",16,"from qtpy.QtCore import Qt"],["pathlib",14,"from pathlib import Path"]],"atlastrack.landmarks.midline":[["scipy",17,"from scipy import ndimage"],["dataclasses",14,"from dataclasses import dataclass"],["__future__",12,"from __future__ import annotations"],["numpy",16,"import numpy as np"]],"atlastrack.gui.widgets.trajectory_preview_dialog":[["contextlib",572,"import contextlib"],["qtpy",28,"from qtpy.QtCore import Qt"],["numpy",27,"import numpy as np"],["atlastrack.probes.trajectory_refine",44,"from atlastrack.probes.trajectory_refine import array_axes, transformed_array"],["typing",25,"from typing import TYPE_CHECKING"],["atlastrack.ephys.regions",310,"from atlastrack.ephys.regions import ("],["qtpy",29,"from qtpy.QtWidgets import ("],["pyqtgraph",444,"import pyqtgraph as pg"],["atlastrack.project.schema",496,"from atlastrack.project.schema import TrajectoryAdjustment"],["pyqtgraph",425,"import pyqtgraph as pg"],["pyqtgraph",270,"import pyqtgraph as pg"],["atlastrack.gui.widgets.tooltips",43,"from atlastrack.gui.widgets.tooltips import wrap_tooltips"],["atlastrack.probes.trajectory_fit_io",565,"from atlastrack.probes.trajectory_fit_io import save_fit"],["skimage",91,"from skimage.measure import find_contours"],["__future__",23,"from __future__ import annotations"],["pyqtgraph",393,"import pyqtgraph as pg"],["atlastrack.probes.registration_suggestion",545,"from atlastrack.probes.registration_suggestion import ("],["pyqtgraph",334,"import pyqtgraph as pg"],["atlastrack.gui.workflow",47,"from atlastrack.gui.workflow import WorkflowState"],["datetime",494,"from datetime import datetime, timezone"],["atlastrack.probes.trajectory_fit_io",574,"from atlastrack.probes.trajectory_fit_io import default_fit_path"]],"atlastrack.atlas":[],"atlastrack.ephys.formats":[["re",28,"import re"],["spikeinterface",212,"import spikeinterface.full as si"],["pathlib",30,"from pathlib import Path"],["dataclasses",29,"from dataclasses import dataclass"],["__future__",26,"from __future__ import annotations"]],"atlastrack.ephys":[["atlastrack.ephys.recordings",30,"from atlastrack.ephys.recordings import ("],["__future__",8,"from __future__ import annotations"],["atlastrack.ephys.alignment",10,"from atlastrack.ephys.alignment import ("],["atlastrack.ephys.epochs",15,"from atlastrack.ephys.epochs import ("],["atlastrack.ephys.features",23,"from atlastrack.ephys.features import ("]],"atlastrack.registration.deepslice_run":[["atlastrack.registration.deepslice_adapter",34,"from atlastrack.registration.deepslice_adapter import DeepSlicePredictor"],["__future__",18,"from __future__ import annotations"],["sys",20,"import sys"],["pathlib",21,"from pathlib import Path"]],"atlastrack.gui.widgets.atlas_browser":[["atlastrack.io.ccf_coords",22,"from atlastrack.io.ccf_coords import ("],["atlastrack.gui.workers",252,"from atlastrack.gui.workers import load_atlas_worker"],["atlastrack.gui.widgets.separators",21,"from atlastrack.gui.widgets.separators import section_header"],["atlastrack.gui.widgets.atlas_matcher",368,"from atlastrack.gui.widgets.atlas_matcher import AtlasMatcherDialog"],["atlastrack.config",195,"from atlastrack.config import get_settings"],["atlastrack.gui.widgets.atlas_help_dialog",276,"from atlastrack.gui.widgets.atlas_help_dialog import show_atlas_reference"],["atlastrack.project.schema",448,"from atlastrack.project.schema import PlaneParams"],["atlastrack.gui.crashlog",367,"from atlastrack.gui import crashlog"],["atlastrack.gui.workflow",26,"from atlastrack.gui.workflow import WorkflowState"],["typing",4,"from typing import TYPE_CHECKING"],["__future__",2,"from __future__ import annotations"],["qtpy",6,"from qtpy.QtWidgets import ("],["napari",29,"import napari"]],"atlastrack.gui.widgets.save_panel":[["qtpy",7,"from qtpy.QtWidgets import ("],["__future__",2,"from __future__ import annotations"],["atlastrack.config",53,"from atlastrack.config import save_app_settings"],["atlastrack.project.io",118,"from atlastrack.project.io import save_project"],["pathlib",4,"from pathlib import Path"],["atlastrack.project.io",140,"from atlastrack.project.io import load_project"],["typing",5,"from typing import Callable"],["atlastrack.gui.workflow",17,"from atlastrack.gui.workflow import WorkflowState"]],"atlastrack.registration.elastix_bspline":[["__future__",32,"from __future__ import annotations"],["itk",39,"import itk"],["SimpleITK",176,"import SimpleITK as sitk"],["SimpleITK",223,"import SimpleITK as sitk"],["scipy",70,"from scipy import ndimage as ndi"],["scipy",87,"from scipy import ndimage as ndi"],["atlastrack.registration.bspline",36,"from atlastrack.registration.bspline import RegisterResult"],["SimpleITK",165,"import SimpleITK as sitk"],["tempfile",274,"import tempfile"],["atlastrack.registration.masks",240,"from atlastrack.registration.masks import moment_similarity"],["numpy",34,"import numpy as np"],["atlastrack.registration.masks",89,"from atlastrack.registration.masks import section_tissue_mask"]],"atlastrack.registration.transforms":[["atlastrack.registration.landmarks_warp",103,"from atlastrack.registration.landmarks_warp import invert_points"],["atlastrack.atlas.planes",174,"from atlastrack.atlas.planes import resample_atlas_at_plane, rescale_atlas_anchoring"],["dataclasses",17,"from dataclasses import dataclass"],["__future__",15,"from __future__ import annotations"],["atlastrack.io.ccf_coords",24,"from atlastrack.io.ccf_coords import MIDLINE_ML_UM"],["atlastrack.project.schema",25,"from atlastrack.project.schema import PlaneParams, RegistrationResult"],["atlastrack.io.ccf_coords",281,"from atlastrack.io.ccf_coords import atlas_resolution_um"],["atlastrack.atlas.planes",23,"from atlastrack.atlas.planes import Anchoring"],["brainglobe_atlasapi",29,"from brainglobe_atlasapi import BrainGlobeAtlas"],["atlastrack.registration.manual",108,"from atlastrack.registration.manual import invert_apply"],["SimpleITK",236,"import SimpleITK as sitk"],["SimpleITK",286,"import SimpleITK as sitk"],["SimpleITK",28,"import SimpleITK as sitk"],["SimpleITK",134,"import SimpleITK as sitk"],["scipy",237,"from scipy import ndimage as ndi"],["SimpleITK",196,"import SimpleITK as sitk"],["pathlib",18,"from pathlib import Path"],["SimpleITK",87,"import SimpleITK as sitk"],["typing",19,"from typing import TYPE_CHECKING"],["numpy",21,"import numpy as np"]],"atlastrack.config":[["pydantic",8,"from pydantic import BaseModel, field_validator"],["loguru",7,"from loguru import logger"],["pathlib",5,"from pathlib import Path"],["json",4,"import json"],["__future__",2,"from __future__ import annotations"],["pydantic_settings",9,"from pydantic_settings import BaseSettings, SettingsConfigDict"]]}
@@ -0,0 +1 @@
1
+ {"atlastrack.registration.deepslice_run":[["pathlib",21,"from pathlib import Path"],["sys",20,"import sys"],["__future__",18,"from __future__ import annotations"],["atlastrack.registration.deepslice_adapter",34,"from atlastrack.registration.deepslice_adapter import DeepSlicePredictor"]],"atlastrack.registration.tilt_refine":[["atlastrack.registration.elastix_bspline",57,"from atlastrack.registration.elastix_bspline import ("],["brainglobe_atlasapi",27,"from brainglobe_atlasapi import BrainGlobeAtlas"],["atlastrack.registration.pipeline",119,"from atlastrack.registration.pipeline import register_section_image"],["numpy",22,"import numpy as np"],["__future__",18,"from __future__ import annotations"],["SimpleITK",64,"import SimpleITK as sitk"],["atlastrack.atlas.planes",24,"from atlastrack.atlas.planes import Anchoring, sample_plane"],["atlastrack.registration.masks",62,"from atlastrack.registration.masks import moment_similarity, section_tissue_mask"],["typing",20,"from typing import TYPE_CHECKING"]],"atlastrack.ephys.export":[["json",20,"import json"],["__future__",18,"from __future__ import annotations"],["numpy",24,"import numpy as np"],["pathlib",22,"from pathlib import Path"],["dataclasses",21,"from dataclasses import dataclass, field"]],"atlastrack.ephys.alignment":[["numpy",16,"import numpy as np"],["__future__",14,"from __future__ import annotations"]],"atlastrack.ephys.discovery":[["numpy",40,"import numpy as np"],["atlastrack.ephys.formats",260,"from atlastrack.ephys.formats import detect_format"],["pathlib",38,"from pathlib import Path"],["atlastrack.ephys.loader",403,"from atlastrack.ephys.loader import list_streams"],["spikeinterface",232,"import spikeinterface.full as si"],["csv",34,"import csv"],["datetime",37,"from datetime import date"],["dataclasses",36,"from dataclasses import dataclass, field"],["re",35,"import re"],["__future__",32,"from __future__ import annotations"],["atlastrack.ephys.recordings",42,"from atlastrack.ephys.recordings import ("]],"atlastrack.project.io":[["pathlib",4,"from pathlib import Path"],["__future__",2,"from __future__ import annotations"],["atlastrack.project.schema",6,"from atlastrack.project.schema import Project"]],"atlastrack.io.ccf_coords":[["math",10,"import math"],["dataclasses",11,"from dataclasses import dataclass"],["numpy",14,"import numpy as np"],["__future__",8,"from __future__ import annotations"],["brainglobe_atlasapi",17,"from brainglobe_atlasapi import BrainGlobeAtlas"],["typing",12,"from typing import TYPE_CHECKING"]],"atlastrack.registration.masks":[["__future__",18,"from __future__ import annotations"],["skimage",40,"from skimage.filters import threshold_otsu"],["scipy",39,"from scipy import ndimage as ndi"],["scipy",90,"from scipy import ndimage as ndi"],["numpy",20,"import numpy as np"],["scipy",73,"from scipy import ndimage as ndi"]],"atlastrack.probes.trajectory_fit":[["__future__",30,"from __future__ import annotations"],["atlastrack.ephys.regions",191,"from atlastrack.ephys.regions import region_bands, regions_along_track"],["atlastrack.ephys.features",99,"from atlastrack.ephys.features import lfp_band_power"],["atlastrack.ephys.autolandmarks",190,"from atlastrack.ephys.autolandmarks import candidate_boundaries"],["atlastrack.probes.trajectory_refine",36,"from atlastrack.probes.trajectory_refine import shift_along_track, transformed_array"],["atlastrack.ephys.autolandmarks",95,"from atlastrack.ephys.autolandmarks import ("],["numpy",34,"import numpy as np"],["dataclasses",32,"from dataclasses import dataclass, field"]],"atlastrack.io.herbs":[["pathlib",24,"from pathlib import Path"],["numpy",27,"import numpy as np"],["pickle",23,"import pickle"],["atlastrack.io.ccf_coords",29,"from atlastrack.io.ccf_coords import AP_UM, DV_UM, ML_UM"],["__future__",21,"from __future__ import annotations"],["typing",25,"from typing import TypedDict"]],"atlastrack.gui.widgets.atlas_browser":[["atlastrack.gui.widgets.atlas_help_dialog",276,"from atlastrack.gui.widgets.atlas_help_dialog import show_atlas_reference"],["atlastrack.gui.workers",252,"from atlastrack.gui.workers import load_atlas_worker"],["atlastrack.gui.widgets.atlas_matcher",368,"from atlastrack.gui.widgets.atlas_matcher import AtlasMatcherDialog"],["atlastrack.gui.widgets.separators",21,"from atlastrack.gui.widgets.separators import section_header"],["atlastrack.config",195,"from atlastrack.config import get_settings"],["atlastrack.project.schema",448,"from atlastrack.project.schema import PlaneParams"],["atlastrack.io.ccf_coords",22,"from atlastrack.io.ccf_coords import ("],["__future__",2,"from __future__ import annotations"],["qtpy",6,"from qtpy.QtWidgets import ("],["napari",29,"import napari"],["atlastrack.gui.crashlog",367,"from atlastrack.gui import crashlog"],["typing",4,"from typing import TYPE_CHECKING"],["atlastrack.gui.workflow",26,"from atlastrack.gui.workflow import WorkflowState"]],"atlastrack.ephys.recordings":[["dataclasses",23,"from dataclasses import dataclass"],["numpy",25,"import numpy as np"],["__future__",21,"from __future__ import annotations"]],"atlastrack.registration.internal_feature_snap":[["scipy",246,"from scipy import ndimage as ndi"],["__future__",38,"from __future__ import annotations"],["skimage",88,"from skimage import measure"],["atlastrack.landmarks.midline",208,"from atlastrack.landmarks.midline import estimate_midline"],["scipy",87,"from scipy import ndimage as ndi"],["numpy",40,"import numpy as np"],["atlastrack.registration.boundary_snap",281,"from atlastrack.registration.boundary_snap import fit_foldproof_tps"],["atlastrack.registration.transforms",173,"from atlastrack.registration.transforms import annotation_boundaries"]],"atlastrack.gui.widgets.ordering_panel":[["atlastrack.gui.workflow",22,"from atlastrack.gui.workflow import WorkflowState"],["qtpy",5,"from qtpy.QtCore import Qt"],["qtpy",6,"from qtpy.QtWidgets import ("],["atlastrack.io.ccf_coords",21,"from atlastrack.io.ccf_coords import bregma_ap_for_display"],["__future__",2,"from __future__ import annotations"],["atlastrack.project.schema",263,"from atlastrack.project.schema import PlaneParams"],["atlastrack.sectioning.ordering",23,"from atlastrack.sectioning.ordering import geometric_order"],["atlastrack.gui.widgets.separators",20,"from atlastrack.gui.widgets.separators import section_header"],["numpy",4,"import numpy as np"],["atlastrack.sectioning.ap_series",221,"from atlastrack.sectioning.ap_series import assign_section_ap"]],"atlastrack.ephys.features":[["scipy",41,"from scipy.signal import welch"],["numpy",10,"import numpy as np"],["__future__",8,"from __future__ import annotations"]],"atlastrack.gui.widgets.welcome_overlay":[["qtpy",19,"from qtpy.QtWidgets import QWidget"],["qtpy",17,"from qtpy.QtCore import QEvent, QObject, QPoint, QRect, Qt"],["qtpy",18,"from qtpy.QtGui import QColor, QFont, QPainter, QPainterPath, QPen"],["__future__",13,"from __future__ import annotations"],["itertools",15,"from itertools import pairwise"],["napari",248,"from napari.utils.theme import get_theme"]],"atlastrack.atlas.planes":[["scipy",21,"from scipy import ndimage"],["__future__",15,"from __future__ import annotations"],["typing",18,"from typing import TYPE_CHECKING"],["dataclasses",17,"from dataclasses import dataclass"],["atlastrack.io.ccf_coords",23,"from atlastrack.io.ccf_coords import atlas_resolution_um"],["atlastrack.project.schema",24,"from atlastrack.project.schema import PlaneParams"],["numpy",20,"import numpy as np"],["brainglobe_atlasapi",27,"from brainglobe_atlasapi import BrainGlobeAtlas"]],"atlastrack.gui.widgets.atlas_matcher":[["qtpy",26,"from qtpy.QtCore import QPointF, Qt, Signal"],["typing",23,"from typing import TYPE_CHECKING"],["numpy",25,"import numpy as np"],["itertools",1189,"from itertools import pairwise"],["atlastrack.sectioning.ap_series",861,"from atlastrack.sectioning.ap_series import ap_offsets"],["atlastrack.gui.crashlog",52,"from atlastrack.gui import crashlog"],["tempfile",21,"import tempfile"],["atlastrack.gui.workflow",54,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.io.image",935,"from atlastrack.io.image import crop"],["__future__",19,"from __future__ import annotations"],["atlastrack.io.ccf_coords",1050,"from atlastrack.io.ccf_coords import atlas_resolution_um"],["atlastrack.registration.pipeline",1051,"from atlastrack.registration.pipeline import anchoring_center_ap_um"],["atlastrack.atlas.planes",725,"from atlastrack.atlas.planes import coronal_anchoring, resample_atlas_at_plane"],["atlastrack.io.ccf_coords",55,"from atlastrack.io.ccf_coords import ("],["atlastrack.gui.workers",1017,"from atlastrack.gui.workers import deepslice_worker"],["atlastrack.registration.pipeline",1144,"from atlastrack.registration.pipeline import prematch_ap_order_issues"],["atlastrack.project.schema",919,"from atlastrack.project.schema import PlaneParams"],["atlastrack.registration.transforms",141,"from atlastrack.registration.transforms import annotation_boundaries"],["atlastrack.registration.deepslice_adapter",1020,"from atlastrack.registration.deepslice_adapter import deepslice_run_note"],["atlastrack.gui.widgets.tooltips",53,"from atlastrack.gui.widgets.tooltips import wrap_tooltips"],["qtpy",27,"from qtpy.QtGui import QColor, QImage, QPainter, QPen, QPixmap, QPolygonF, QTransform"],["qtpy",28,"from qtpy.QtWidgets import ("],["atlastrack.gui.workflow",1049,"from atlastrack.gui.workflow import crop_fingerprint"],["atlastrack.project.schema",70,"from atlastrack.project.schema import ChannelLevels, Section"],["pathlib",22,"from pathlib import Path"]],"atlastrack.probes.catalog":[["dataclasses",14,"from dataclasses import dataclass, field"],["__future__",12,"from __future__ import annotations"],["numpy",16,"import numpy as np"]],"atlastrack.gui.workflow":[["numpy",8,"import numpy as np"],["atlastrack.project.schema",10,"from atlastrack.project.schema import Project, Slide"],["__future__",2,"from __future__ import annotations"],["typing",6,"from typing import TYPE_CHECKING"],["dataclasses",4,"from dataclasses import dataclass, field"],["brainglobe_atlasapi",13,"from brainglobe_atlasapi import BrainGlobeAtlas"],["pathlib",5,"from pathlib import Path"]],"atlastrack.gui.workers":[["napari",9,"from napari.qt.threading import thread_worker"],["typing",6,"from typing import TYPE_CHECKING"],["atlastrack.sectioning.ordering",11,"from atlastrack.sectioning.ordering import OrderedSection, order_sections"],["loguru",408,"from loguru import logger"],["atlastrack.io.ccf_coords",363,"from atlastrack.io.ccf_coords import atlas_resolution_um"],["pathlib",5,"from pathlib import Path"],["atlastrack.ephys.loader",279,"from atlastrack.ephys.loader import excerpt_psd, load_lfp_excerpts"],["atlastrack.ephys.combine",207,"from atlastrack.ephys.combine import RecordingFeatures, stack_penetration"],["atlastrack.registration.deepslice_adapter",122,"from atlastrack.registration.deepslice_adapter import predict_anchorings"],["atlastrack.probes.trajectory_fit",143,"from atlastrack.probes.trajectory_fit import ("],["atlastrack.ephys.features",278,"from atlastrack.ephys.features import power_image"],["atlastrack.project.schema",17,"from atlastrack.project.schema import Project"],["atlastrack.registration.pipeline",364,"from atlastrack.registration.pipeline import ("],["numpy",141,"import numpy as np"],["brainglobe_atlasapi",15,"from brainglobe_atlasapi import BrainGlobeAtlas"],["numpy",8,"import numpy as np"],["atlastrack.ephys.loader",208,"from atlastrack.ephys.loader import excerpt_psd, load_lfp_excerpts"],["__future__",2,"from __future__ import annotations"],["atlastrack.registration.pipeline",90,"from atlastrack.registration.pipeline import register_project_with_atlas"],["time",4,"import time"],["atlastrack.sectioning.split",12,"from atlastrack.sectioning.split import detect_sections"],["atlastrack.registration.transforms",369,"from atlastrack.registration.transforms import RegisteredSectionTransform"],["brainglobe_atlasapi",52,"from brainglobe_atlasapi import BrainGlobeAtlas"],["SimpleITK",361,"import SimpleITK as sitk"],["atlastrack.registration.tilt_refine",434,"from atlastrack.registration.tilt_refine import refine_tilt as _refine_tilt"],["atlastrack.ephys.discovery",514,"from atlastrack.ephys.discovery import discover"]],"atlastrack.io":[],"atlastrack.cli":[["json",119,"import json"],["atlastrack.probes.fitting",494,"from atlastrack.probes.fitting import enforce_rigid_arrays"],["atlastrack.sectioning.ordering",122,"from atlastrack.sectioning.ordering import order_sections"],["pathlib",16,"from pathlib import Path"],["atlastrack.project.schema",219,"from atlastrack.project.schema import ("],["atlastrack.project.io",348,"from atlastrack.project.io import load_project, save_project"],["atlastrack",61,"from atlastrack import __version__"],["typing",17,"from typing import Annotated"],["atlastrack.io.herbs_writer",216,"from atlastrack.io.herbs_writer import write_herbs_pkl"],["atlastrack.registration.pipeline",230,"from atlastrack.registration.pipeline import register_project"],["atlastrack.registration.predictor",231,"from atlastrack.registration.predictor import ManualPredictor"],["atlastrack.sectioning.split",123,"from atlastrack.sectioning.split import detect_sections"],["brainglobe_atlasapi",474,"from brainglobe_atlasapi import BrainGlobeAtlas"],["atlastrack.io.image",121,"from atlastrack.io.image import load_image"],["atlastrack.project.io",466,"from atlastrack.project.io import load_project, save_project"],["atlastrack.gui.gl_diagnostics",82,"from atlastrack.gui.gl_diagnostics import format_gl_report"],["atlastrack.io.image",217,"from atlastrack.io.image import load_image"],["atlastrack.project.images",347,"from atlastrack.project.images import section_images"],["typer",19,"import typer"],["atlastrack.project.provenance",467,"from atlastrack.project.provenance import write_export_provenance"],["atlastrack.registration.pipeline",476,"from atlastrack.registration.pipeline import ("],["sys",15,"import sys"],["__future__",13,"from __future__ import annotations"],["loguru",20,"from loguru import logger"],["brainglobe_atlasapi",345,"from brainglobe_atlasapi import BrainGlobeAtlas"],["atlastrack.registration.pipeline",349,"from atlastrack.registration.pipeline import register_project_with_atlas"],["atlastrack.project.io",218,"from atlastrack.project.io import save_project"],["atlastrack.probes.channels",465,"from atlastrack.probes.channels import export_channel_csv, export_paxinos_csv"],["numpy",214,"import numpy as np"],["atlastrack.gui.app",74,"from atlastrack.gui.app import launch"]],"atlastrack.ephys.analyzer":[["spikeinterface",27,"import spikeinterface.full as si"],["numpy",22,"import numpy as np"],["dataclasses",19,"from dataclasses import dataclass"],["__future__",17,"from __future__ import annotations"],["pathlib",20,"from pathlib import Path"]],"atlastrack.probes.geometry":[["__future__",6,"from __future__ import annotations"],["numpy",8,"import numpy as np"]],"atlastrack.viz":[],"atlastrack.ephys.penetration":[["numpy",22,"import numpy as np"],["__future__",18,"from __future__ import annotations"],["atlastrack.ephys.recordings",24,"from atlastrack.ephys.recordings import ("],["dataclasses",20,"from dataclasses import dataclass, field"]],"atlastrack.landmarks.ventricles":[["scipy",13,"from scipy import ndimage"],["__future__",8,"from __future__ import annotations"],["numpy",12,"import numpy as np"],["skimage",14,"from skimage import measure"],["dataclasses",10,"from dataclasses import dataclass"]],"atlastrack.sectioning.ordering":[["dataclasses",9,"from dataclasses import dataclass"],["atlastrack.sectioning.split",13,"from atlastrack.sectioning.split import DetectedSection"],["__future__",7,"from __future__ import annotations"],["numpy",11,"import numpy as np"]],"atlastrack.io.image":[["pathlib",8,"from pathlib import Path"],["tifffile",18,"import tifffile"],["__future__",6,"from __future__ import annotations"],["numpy",10,"import numpy as np"],["imageio",23,"import imageio.v3 as iio"]],"atlastrack.gui.widgets.ephys_align_dialog":[["numpy",18,"import numpy as np"],["csv",517,"import csv"],["qtpy",21,"from qtpy.QtWidgets import ("],["atlastrack.ephys.alignment",37,"from atlastrack.ephys.alignment import apply_depth_alignment, channel_ccf_um, invert_anchors"],["atlastrack.gui.widgets.tooltips",41,"from atlastrack.gui.widgets.tooltips import wrap_tooltips"],["qtpy",20,"from qtpy.QtGui import QColor, QPen"],["atlastrack.gui.workflow",42,"from atlastrack.gui.workflow import WorkflowState"],["qtpy",504,"from qtpy.QtWidgets import QFileDialog, QMessageBox"],["atlastrack.ephys.features",38,"from atlastrack.ephys.features import power_image"],["atlastrack.project.schema",539,"from atlastrack.project.schema import EphysAlignment"],["__future__",14,"from __future__ import annotations"],["typing",16,"from typing import TYPE_CHECKING"],["atlastrack.ephys.regions",39,"from atlastrack.ephys.regions import region_strip_image, regions_at_ccf"],["atlastrack.project.schema",45,"from atlastrack.project.schema import Shank"],["atlastrack.gui.widgets.atlas_matcher",40,"from atlastrack.gui.widgets.atlas_matcher import _to_pixmap"],["qtpy",19,"from qtpy.QtCore import Qt"]],"atlastrack.gui.widgets":[],"atlastrack.atlas.service":[["functools",8,"from functools import lru_cache"],["brainglobe_atlasapi",12,"from brainglobe_atlasapi import BrainGlobeAtlas"],["__future__",6,"from __future__ import annotations"],["brainglobe_atlasapi",18,"from brainglobe_atlasapi import BrainGlobeAtlas"],["typing",9,"from typing import TYPE_CHECKING"]],"atlastrack.gui":[],"atlastrack.gui.gl_diagnostics":[["qtpy",87,"from qtpy.QtWidgets import QApplication"],["sys",54,"import sys"],["__future__",13,"from __future__ import annotations"],["qtpy",86,"from qtpy.QtGui import QOffscreenSurface, QOpenGLContext"],["OpenGL",104,"from OpenGL import GL"],["json",52,"import json"],["json",175,"import json"],["subprocess",53,"import subprocess"]],"atlastrack.io.quicknii":[["__future__",26,"from __future__ import annotations"],["pydantic",31,"from pydantic import BaseModel, ConfigDict, Field"],["json",28,"import json"],["atlastrack.atlas.planes",33,"from atlastrack.atlas.planes import Anchoring"],["pathlib",29,"from pathlib import Path"]],"atlastrack.landmarks.contour":[["numpy",4,"import numpy as np"],["skimage",5,"from skimage import measure"],["__future__",2,"from __future__ import annotations"]],"atlastrack.ephys.formats":[["__future__",26,"from __future__ import annotations"],["spikeinterface",212,"import spikeinterface.full as si"],["re",28,"import re"],["dataclasses",29,"from dataclasses import dataclass"],["pathlib",30,"from pathlib import Path"]],"atlastrack.gui.widgets.register_panel":[["atlastrack.registration.landmarks_warp",715,"from atlastrack.registration.landmarks_warp import warp_label_image"],["numpy",996,"import numpy as np"],["numpy",424,"import numpy as np"],["atlastrack.registration.manual",1036,"from atlastrack.registration.manual import section_to_world"],["atlastrack.registration.transforms",1024,"from atlastrack.registration.transforms import annotation_boundaries"],["napari",935,"from napari.utils.transforms import Affine"],["atlastrack.registration.pipeline",535,"from atlastrack.registration.pipeline import guide_anchorings_with_planes"],["atlastrack.registration.landmarks_warp",1231,"from atlastrack.registration.landmarks_warp import warp_contour_image"],["atlastrack.gui.workers",478,"from atlastrack.gui.workers import deepslice_worker"],["atlastrack.io.image",426,"from atlastrack.io.image import crop"],["atlastrack.io.ccf_coords",646,"from atlastrack.io.ccf_coords import bregma_ap_for_display"],["napari",1022,"from napari.utils.transforms import Affine"],["numpy",1241,"import numpy as np"],["numpy",675,"import numpy as np"],["napari",28,"import napari"],["atlastrack.project.io",623,"from atlastrack.project.io import save_project"],["numpy",1140,"import numpy as np"],["atlastrack.registration.landmarks_warp",1062,"from atlastrack.registration.landmarks_warp import salient_landmarks"],["pathlib",4,"from pathlib import Path"],["numpy",916,"import numpy as np"],["__future__",2,"from __future__ import annotations"],["atlastrack.gui.workers",543,"from atlastrack.gui.workers import register_worker_progressive"],["atlastrack.project.schema",1243,"from atlastrack.project.schema import ManualLandmarks"],["numpy",1060,"import numpy as np"],["atlastrack.registration.deepslice_adapter",471,"from atlastrack.registration.deepslice_adapter import ("],["atlastrack.project.io",1302,"from atlastrack.project.io import save_project"],["atlastrack.registration.pipeline",1282,"from atlastrack.registration.pipeline import ("],["qtpy",7,"from qtpy.QtWidgets import ("],["numpy",1211,"import numpy as np"],["atlastrack.gui.workflow",503,"from atlastrack.gui.workflow import crop_fingerprint"],["napari",676,"from napari.utils.transforms import Affine"],["atlastrack.registration.manual",918,"from atlastrack.registration.manual import is_identity, world_to_section"],["atlastrack.gui.workers",1334,"from atlastrack.gui.workers import load_atlas_worker"],["atlastrack.registration.transforms",679,"from atlastrack.registration.transforms import ("],["numpy",1021,"import numpy as np"],["numpy",934,"import numpy as np"],["importlib",108,"import importlib.util"],["atlastrack.registration.landmarks_warp",1010,"from atlastrack.registration.landmarks_warp import warp_label_image"],["atlastrack.gui.workflow",356,"from atlastrack.gui.workflow import section_display_no"],["typing",5,"from typing import TYPE_CHECKING"],["atlastrack.registration.transforms",998,"from atlastrack.registration.transforms import warp_annotation_to_section"],["atlastrack.registration.manual",678,"from atlastrack.registration.manual import section_to_world"],["atlastrack.gui.workflow",25,"from atlastrack.gui.workflow import WorkflowState"],["qtpy",343,"from qtpy.QtWidgets import QDialog, QVBoxLayout"],["atlastrack.registration.transforms",1075,"from atlastrack.registration.transforms import annotation_boundaries"]],"atlastrack.ephys.probemap":[["numpy",31,"import numpy as np"],["xml",175,"import xml.etree.ElementTree as ET"],["dataclasses",27,"from dataclasses import dataclass"],["pathlib",29,"from pathlib import Path"],["probeinterface",296,"import probeinterface as pi"],["collections",26,"from collections.abc import Callable"],["atlastrack.probes.catalog",339,"from atlastrack.probes.catalog import CATALOG"],["csv",25,"import csv"],["enum",28,"from enum import Enum"],["__future__",23,"from __future__ import annotations"]],"atlastrack.ephys.autolandmarks":[["atlastrack.ephys.features",151,"from atlastrack.ephys.features import boundary_contrast"],["__future__",21,"from __future__ import annotations"],["numpy",26,"import numpy as np"],["dataclasses",24,"from dataclasses import dataclass"],["itertools",528,"import itertools"],["warnings",23,"import warnings"]],"atlastrack.gui.widgets.ephys_discovery_dialog":[["pyqtgraph",438,"import pyqtgraph as pg"],["atlastrack.gui.workers",223,"from atlastrack.gui.workers import discover_recordings_worker"],["atlastrack.project.schema",656,"from atlastrack.project.schema import EphysRecordingRef"],["pyqtgraph",187,"import pyqtgraph as pg"],["atlastrack.ephys.discovery",45,"from atlastrack.ephys.discovery import ("],["atlastrack.ephys.discovery",55,"from atlastrack.ephys.discovery import RecordingCandidate"],["pathlib",21,"from pathlib import Path"],["atlastrack.gui.workflow",52,"from atlastrack.gui.workflow import WorkflowState"],["qtpy",25,"from qtpy.QtWidgets import ("],["atlastrack.ephys.regions",588,"from atlastrack.ephys.regions import ("],["numpy",586,"import numpy as np"],["qtpy",24,"from qtpy.QtCore import Qt"],["typing",22,"from typing import TYPE_CHECKING"],["atlastrack.gui.widgets.tooltips",51,"from atlastrack.gui.widgets.tooltips import wrap_tooltips"],["__future__",19,"from __future__ import annotations"]],"atlastrack.viz.napari3d":[["numpy",10,"import numpy as np"],["atlastrack.project.schema",15,"from atlastrack.project.schema import Project"],["__future__",6,"from __future__ import annotations"],["atlastrack.viz.plotly3d",146,"from atlastrack.viz.plotly3d import hex_to_rgb, styled_regions"],["atlastrack.io.ccf_coords",246,"from atlastrack.io.ccf_coords import MIDLINE_ML_UM, bregma_ap_for_display"],["atlastrack.atlas.meshes",118,"from atlastrack.atlas.meshes import mesh_vertices_faces"],["brainglobe_atlasapi",14,"from brainglobe_atlasapi import BrainGlobeAtlas"],["atlastrack.viz.plotly3d",195,"from atlastrack.viz.plotly3d import ("],["napari",102,"from napari.utils.colormaps import Colormap"],["napari",13,"import napari"],["typing",8,"from typing import TYPE_CHECKING"],["atlastrack.viz.plotly3d",165,"from atlastrack.viz.plotly3d import hex_to_rgb, region_style"]],"atlastrack.landmarks.anchors":[["pydantic",9,"from pydantic import BaseModel, ConfigDict"],["__future__",7,"from __future__ import annotations"]],"atlastrack.sectioning.ap_series":[["__future__",23,"from __future__ import annotations"],["atlastrack.project.schema",104,"from atlastrack.project.schema import PlaneParams"],["atlastrack.io.ccf_coords",103,"from atlastrack.io.ccf_coords import BREGMA_AP_FROM_ORIGIN_UM"],["atlastrack.project.schema",28,"from atlastrack.project.schema import Section"],["typing",25,"from typing import TYPE_CHECKING, Literal"]],"atlastrack.project":[],"atlastrack.gui.widgets.viz_export_panel":[["numpy",734,"import numpy as np"],["__future__",7,"from __future__ import annotations"],["atlastrack.probes.fitting",522,"from atlastrack.probes.fitting import enforce_rigid_arrays"],["typing",10,"from typing import TYPE_CHECKING"],["atlastrack.gui.workflow",30,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.gui.workers",403,"from atlastrack.gui.workers import load_atlas_worker"],["atlastrack.io.series_export",675,"from atlastrack.io.series_export import export_section_series"],["qtpy",13,"from qtpy.QtWidgets import ("],["napari",135,"import napari"],["pathlib",9,"from pathlib import Path"],["atlastrack.gui.workers",442,"from atlastrack.gui.workers import load_atlas_worker"],["atlastrack.viz.plotly3d",474,"from atlastrack.viz.plotly3d import build_figure, save_html"],["qtpy",12,"from qtpy.QtCore import Qt"],["atlastrack.probes.channels",760,"from atlastrack.probes.channels import ("],["atlastrack.registration.pipeline",496,"from atlastrack.registration.pipeline import ("],["atlastrack.io.herbs_writer",736,"from atlastrack.io.herbs_writer import write_herbs_pkl"],["atlastrack.project.io",546,"from atlastrack.project.io import save_project"],["napari",572,"import napari"],["atlastrack.viz.napari3d",574,"from atlastrack.viz.napari3d import show_3d_scene"]],"atlastrack.gui.crashlog":[["os",24,"import os"],["__future__",21,"from __future__ import annotations"],["datetime",28,"from datetime import datetime"],["qtpy",147,"from qtpy.QtCore import QEvent, QObject"],["atlastrack.gui.gl_diagnostics",122,"from atlastrack.gui.gl_diagnostics import format_gl_report"],["qtpy",184,"from qtpy.QtCore import QtMsgType, qInstallMessageHandler"],["platform",73,"import platform"],["atlastrack",84,"from atlastrack import __version__"],["importlib",91,"import importlib.metadata as md"],["faulthandler",23,"import faulthandler"],["threading",26,"import threading"],["traceback",27,"import traceback"],["pathlib",29,"from pathlib import Path"],["qtpy",148,"from qtpy.QtWidgets import QApplication"],["qtpy",97,"import qtpy"],["sys",25,"import sys"]],"atlastrack.io.herbs_writer":[["pickle",10,"import pickle"],["collections",11,"from collections.abc import Sequence"],["atlastrack.io.herbs",17,"from atlastrack.io.herbs import DEFAULT_HERBS_GRID_UM, ccf_um_to_herbs_voxel"],["pathlib",12,"from pathlib import Path"],["typing",13,"from typing import Any"],["__future__",8,"from __future__ import annotations"],["numpy",15,"import numpy as np"]],"atlastrack.ephys.combine":[["dataclasses",43,"from dataclasses import dataclass, field"],["atlastrack.ephys.recordings",48,"from atlastrack.ephys.recordings import ("],["itertools",44,"from itertools import pairwise"],["numpy",46,"import numpy as np"],["atlastrack.probes.geometry",53,"from atlastrack.probes.geometry import SHANK_TIP_LENGTH_UM"],["__future__",40,"from __future__ import annotations"],["warnings",42,"import warnings"]],"atlastrack.probes":[],"atlastrack.registration.landmarks_warp":[["__future__",13,"from __future__ import annotations"],["scipy",78,"from scipy.ndimage import convolve"],["scipy",176,"from scipy.ndimage import distance_transform_edt"],["scipy",239,"from scipy import ndimage as ndi"],["scipy",275,"from scipy.ndimage import map_coordinates"],["skimage",99,"from skimage.feature import corner_harris, corner_peaks"],["scipy",190,"from scipy.interpolate import RBFInterpolator"],["numpy",15,"import numpy as np"],["skimage",80,"from skimage.morphology import skeletonize"],["scipy",79,"from scipy.ndimage import label as cc_label"]],"atlastrack.gui.widgets.save_panel":[["atlastrack.config",53,"from atlastrack.config import save_app_settings"],["pathlib",4,"from pathlib import Path"],["qtpy",7,"from qtpy.QtWidgets import ("],["atlastrack.project.io",117,"from atlastrack.project.io import save_project"],["__future__",2,"from __future__ import annotations"],["atlastrack.gui.workflow",17,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.project.io",139,"from atlastrack.project.io import load_project"],["typing",5,"from typing import Callable"]],"atlastrack.registration.manual":[["__future__",20,"from __future__ import annotations"],["numpy",22,"import numpy as np"]],"atlastrack.atlas":[],"atlastrack.gui.widgets.ephys_alignment_panel":[["atlastrack.ephys.penetration",46,"from atlastrack.ephys.penetration import PenetrationProfile"],["atlastrack.ephys.penetration",835,"from atlastrack.ephys.penetration import PenetrationProfile"],["numpy",21,"import numpy as np"],["pyqtgraph",635,"import pyqtgraph as pg"],["__future__",16,"from __future__ import annotations"],["atlastrack.ephys.features",938,"from atlastrack.ephys.features import depth_profiles"],["atlastrack.probes.channels",1028,"from atlastrack.probes.channels import shank_channel_coords"],["atlastrack.gui.widgets.ephys_features_view",42,"from atlastrack.gui.widgets.ephys_features_view import EphysFeaturesView, pyqtgraph_available"],["atlastrack.ephys.export",985,"from atlastrack.ephys.export import default_export_path, save_feature_export"],["typing",19,"from typing import TYPE_CHECKING"],["contextlib",18,"import contextlib"],["qtpy",902,"from qtpy.QtWidgets import QFileDialog, QMessageBox"],["pyqtgraph",84,"import pyqtgraph as pg"],["pyqtgraph",492,"import pyqtgraph as pg"],["atlastrack.ephys.recordings",872,"from atlastrack.ephys.recordings import channels_for_shank"],["atlastrack.ephys.export",904,"from atlastrack.ephys.export import default_export_path, load_shank_features"],["atlastrack.ephys.landmarks",36,"from atlastrack.ephys.landmarks import ("],["qtpy",983,"from qtpy.QtWidgets import QFileDialog, QMessageBox"],["atlastrack.probes.geometry",889,"from atlastrack.probes.geometry import SHANK_TIP_LENGTH_UM"],["atlastrack.gui.widgets.tooltips",43,"from atlastrack.gui.widgets.tooltips import wrap_tooltips"],["atlastrack.ephys.export",937,"from atlastrack.ephys.export import ShankFeatureExport"],["atlastrack.probes.catalog",1027,"from atlastrack.probes.catalog import get_layout"],["atlastrack.ephys.regions",808,"from atlastrack.ephys.regions import region_colour_map, white_matter_acronyms"],["qtpy",23,"from qtpy.QtWidgets import ("],["datetime",1044,"from datetime import datetime"],["qtpy",789,"from qtpy.QtWidgets import QApplication"],["qtpy",22,"from qtpy.QtCore import Qt, Signal"],["atlastrack.project.schema",1046,"from atlastrack.project.schema import EphysAlignment"]],"atlastrack.gui.app":[["atlastrack.gui.widgets.atlas_help_dialog",688,"from atlastrack.gui.widgets.atlas_help_dialog import show_atlas_reference"],["atlastrack.gui.widgets.save_panel",427,"from atlastrack.gui.widgets.save_panel import SavePanelWidget"],["atlastrack.gui.widgets.register_panel",234,"from atlastrack.gui.widgets.register_panel import RegisterPanelWidget"],["qtpy",584,"from qtpy.QtWidgets import QMenu"],["atlastrack.gui.widgets.welcome_overlay",61,"from atlastrack.gui.widgets.welcome_overlay import WelcomeOverlayWidget"],["qtpy",205,"from qtpy.QtWidgets import QApplication, QMessageBox"],["numpy",885,"import numpy as np"],["sys",4,"import sys"],["qtpy",471,"from qtpy.QtWidgets import QMessageBox"],["atlastrack.config",523,"from atlastrack.config import save_app_settings"],["numpy",898,"import numpy as np"],["traceback",5,"import traceback"],["atlastrack.gui.widgets.probe_picker",233,"from atlastrack.gui.widgets.probe_picker import ProbePickerWidget"],["atlastrack.gui.workflow",227,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.gui.widgets.ephys_panel",230,"from atlastrack.gui.widgets.ephys_panel import EphysPanelWidget"],["atlastrack.project.images",836,"from atlastrack.project.images import rebuild_slide_image"],["atlastrack.gui.widgets.tooltips",394,"from atlastrack.gui.widgets.tooltips import wrap_tooltips"],["atlastrack.gui.widgets.click_overlay",229,"from atlastrack.gui.widgets.click_overlay import ClickOverlayWidget"],["atlastrack.gui.crashlog",14,"from atlastrack.gui import crashlog"],["qtpy",559,"from qtpy.QtGui import QFontMetrics"],["atlastrack.gui.widgets.viz_export_panel",236,"from atlastrack.gui.widgets.viz_export_panel import VizExportPanelWidget"],["qtpy",645,"from qtpy.QtWidgets import QTabWidget"],["atlastrack.gui.widgets.atlas_browser",228,"from atlastrack.gui.widgets.atlas_browser import AtlasBrowserWidget"],["qtpy",608,"from qtpy.QtWidgets import QMenu"],["qtpy",183,"from qtpy.QtWidgets import QApplication"],["atlastrack.gui.widgets.slide_loader",235,"from atlastrack.gui.widgets.slide_loader import SlideLoaderWidget"],["qtpy",488,"from qtpy.QtCore import Qt"],["__future__",2,"from __future__ import annotations"],["atlastrack.gui.gl_diagnostics",30,"from atlastrack.gui.gl_diagnostics import report_launch_failure"],["atlastrack.config",226,"from atlastrack.config import load_app_settings, save_app_settings"],["numpy",7,"import numpy as np"],["atlastrack.gui.widgets.image_tools",231,"from atlastrack.gui.widgets.image_tools import ImageToolsWidget"],["qtpy",224,"from qtpy.QtWidgets import QTabWidget, QVBoxLayout, QWidget"],["atlastrack.gui.widgets.ordering_panel",232,"from atlastrack.gui.widgets.ordering_panel import OrderingPanelWidget"],["atlastrack.gui.widgets.welcome_overlay",15,"from atlastrack.gui.widgets.welcome_overlay import APP_TITLE"],["atlastrack.gui.widgets.help_panel",615,"from atlastrack.gui.widgets.help_panel import ATLASES, MANUAL, TUTORIAL"],["pathlib",423,"from pathlib import Path"],["atlastrack.gui.widgets.help_panel",238,"from atlastrack.gui.widgets.help_panel import ATLASES, HelpPanelWidget"],["napari",12,"import napari"],["atlastrack.gui.section_display",765,"from atlastrack.gui.section_display import sections_to_outline_labels"],["atlastrack.gui.section_display",835,"from atlastrack.gui.section_display import sections_to_outline_labels"],["qtpy",425,"from qtpy.QtWidgets import QMenu"],["pathlib",404,"from pathlib import Path"]],"atlastrack.registration.pipeline":[["atlastrack.registration.predictor",37,"from atlastrack.registration.predictor import PlanePredictor"],["atlastrack.atlas.planes",29,"from atlastrack.atlas.planes import ("],["atlastrack.registration.bspline",36,"from atlastrack.registration.bspline import refine_with_bspline"],["brainglobe_atlasapi",45,"from brainglobe_atlasapi import BrainGlobeAtlas"],["atlastrack.registration.masks",436,"from atlastrack.registration.masks import section_tissue_mask"],["atlastrack.registration.elastix_bspline",224,"from atlastrack.registration.elastix_bspline import ELASTIX_AVAILABLE"],["atlastrack.registration.boundary_snap",432,"from atlastrack.registration.boundary_snap import ("],["pathlib",23,"from pathlib import Path"],["numpy",26,"import numpy as np"],["typing",24,"from typing import TYPE_CHECKING"],["__future__",21,"from __future__ import annotations"],["atlastrack.registration.transforms",38,"from atlastrack.registration.transforms import ("],["atlastrack.registration.elastix_bspline",251,"from atlastrack.registration.elastix_bspline import refine_with_elastix"],["atlastrack.io.ccf_coords",34,"from atlastrack.io.ccf_coords import atlas_resolution_um"],["atlastrack.atlas.planes",329,"from atlastrack.atlas.planes import sample_plane"],["atlastrack.registration.transforms",437,"from atlastrack.registration.transforms import _warped_atlas_extent"],["SimpleITK",523,"import SimpleITK as sitk"],["atlastrack.project.schema",35,"from atlastrack.project.schema import Project, RegistrationResult, Section, Shank"],["atlastrack.registration.masks",353,"from atlastrack.registration.masks import registration_moving_mask"],["loguru",27,"from loguru import logger"],["itertools",142,"from itertools import pairwise"]],"atlastrack.gui.widgets.trajectory_preview_dialog":[["atlastrack.probes.registration_suggestion",545,"from atlastrack.probes.registration_suggestion import ("],["atlastrack.project.schema",496,"from atlastrack.project.schema import TrajectoryAdjustment"],["qtpy",29,"from qtpy.QtWidgets import ("],["pyqtgraph",444,"import pyqtgraph as pg"],["skimage",91,"from skimage.measure import find_contours"],["atlastrack.gui.widgets.tooltips",43,"from atlastrack.gui.widgets.tooltips import wrap_tooltips"],["atlastrack.probes.trajectory_fit_io",574,"from atlastrack.probes.trajectory_fit_io import default_fit_path"],["atlastrack.ephys.regions",310,"from atlastrack.ephys.regions import ("],["pyqtgraph",334,"import pyqtgraph as pg"],["typing",25,"from typing import TYPE_CHECKING"],["atlastrack.probes.trajectory_fit_io",565,"from atlastrack.probes.trajectory_fit_io import save_fit"],["atlastrack.gui.workflow",47,"from atlastrack.gui.workflow import WorkflowState"],["contextlib",572,"import contextlib"],["qtpy",28,"from qtpy.QtCore import Qt"],["datetime",494,"from datetime import datetime, timezone"],["pyqtgraph",425,"import pyqtgraph as pg"],["atlastrack.probes.trajectory_refine",44,"from atlastrack.probes.trajectory_refine import array_axes, transformed_array"],["pyqtgraph",270,"import pyqtgraph as pg"],["pyqtgraph",393,"import pyqtgraph as pg"],["__future__",23,"from __future__ import annotations"],["numpy",27,"import numpy as np"]],"atlastrack.gui.widgets.slide_loader":[["atlastrack.gui.widgets.separators",19,"from atlastrack.gui.widgets.separators import section_header"],["qtpy",403,"from qtpy.QtCore import Qt"],["atlastrack.gui.workers",455,"from atlastrack.gui.workers import detect_sections_worker"],["atlastrack.project.schema",542,"from atlastrack.project.schema import Section"],["atlastrack.project.schema",676,"from atlastrack.project.schema import Section"],["atlastrack.gui.section_display",746,"from atlastrack.gui.section_display import sections_to_outline_labels"],["atlastrack.io.image",314,"from atlastrack.io.image import load_image, merge_images, slide_bands"],["__future__",2,"from __future__ import annotations"],["atlastrack.gui.app",745,"from atlastrack.gui.app import _update_section_numbers"],["atlastrack.io.image",242,"from atlastrack.io.image import load_image"],["atlastrack.gui.crashlog",469,"from atlastrack.gui import crashlog"],["pathlib",203,"from pathlib import Path"],["atlastrack.io.image",261,"from atlastrack.io.image import load_image, merge_images, slide_bands"],["pathlib",312,"from pathlib import Path"],["typing",4,"from typing import TYPE_CHECKING, Callable"],["atlastrack.gui.workflow",20,"from atlastrack.gui.workflow import WorkflowState"],["pathlib",270,"from pathlib import Path"],["numpy",6,"import numpy as np"],["qtpy",7,"from qtpy.QtWidgets import ("],["atlastrack.project.schema",475,"from atlastrack.project.schema import Section"],["atlastrack.sectioning.split",438,"from atlastrack.sectioning.split import estimate_min_area"],["napari",434,"from napari.qt.threading import thread_worker"],["qtpy",404,"from qtpy.QtWidgets import QMessageBox"],["napari",23,"import napari"],["pathlib",232,"from pathlib import Path"]],"atlastrack":[],"atlastrack.sectioning.split":[["dataclasses",20,"from dataclasses import dataclass, replace"],["numpy",22,"import numpy as np"],["skimage",24,"from skimage.color import rgb2gray"],["__future__",18,"from __future__ import annotations"],["skimage",23,"from skimage import filters, measure, morphology"]],"atlastrack.gui.widgets.tooltips":[["qtpy",16,"from qtpy.QtWidgets import QWidget"],["__future__",12,"from __future__ import annotations"],["textwrap",14,"import textwrap"]],"atlastrack.gui.widgets.probe_picker":[["atlastrack.gui.workflow",17,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.project.schema",18,"from atlastrack.project.schema import ProbeSpec, ProbeType, Shank"],["__future__",2,"from __future__ import annotations"],["typing",4,"from typing import Callable"],["qtpy",6,"from qtpy.QtWidgets import ("]],"atlastrack.registration.bspline":[["SimpleITK",25,"import SimpleITK as sitk"],["__future__",20,"from __future__ import annotations"],["dataclasses",22,"from dataclasses import dataclass"],["numpy",24,"import numpy as np"]],"atlastrack.registration.boundary_snap":[["SimpleITK",215,"import SimpleITK as sitk"],["numpy",43,"import numpy as np"],["scipy",65,"from scipy import ndimage as ndi"],["SimpleITK",166,"import SimpleITK as sitk"],["scipy",130,"from scipy.interpolate import RBFInterpolator"],["__future__",41,"from __future__ import annotations"],["scipy",97,"from scipy import ndimage as ndi"],["scipy",57,"from scipy import ndimage as ndi"]],"atlastrack.gui.widgets.separators":[["__future__",8,"from __future__ import annotations"],["qtpy",10,"from qtpy.QtCore import Qt"],["qtpy",11,"from qtpy.QtWidgets import QFrame, QHBoxLayout, QLabel, QVBoxLayout, QWidget"]],"atlastrack.gui.widgets.ephys_panel":[["atlastrack.ephys.export",528,"from atlastrack.ephys.export import ShankFeatureExport"],["atlastrack.ephys.recordings",539,"from atlastrack.ephys.recordings import channels_for_shank"],["atlastrack.probes.trajectory_fit",770,"from atlastrack.probes.trajectory_fit import evidence_from_features"],["atlastrack.gui.workers",377,"from atlastrack.gui.workers import lfp_power_worker"],["atlastrack.gui.widgets.ephys_alignment_panel",698,"from atlastrack.gui.widgets.ephys_alignment_panel import ("],["numpy",496,"import numpy as np"],["napari",29,"import napari"],["atlastrack.gui.workers",753,"from atlastrack.gui.workers import trajectory_fit_worker"],["atlastrack.gui.widgets.trajectory_preview_dialog",830,"from atlastrack.gui.widgets.trajectory_preview_dialog import ("],["atlastrack.gui.workers",436,"from atlastrack.gui.workers import multi_lfp_power_worker"],["numpy",526,"import numpy as np"],["atlastrack.probes.geometry",529,"from atlastrack.probes.geometry import SHANK_TIP_LENGTH_UM"],["typing",11,"from typing import TYPE_CHECKING"],["atlastrack.ephys.export",610,"from atlastrack.ephys.export import default_export_path, load_shank_features"],["atlastrack.ephys.export",569,"from atlastrack.ephys.export import default_export_path, save_feature_export"],["atlastrack.gui.widgets.ephys_discovery_dialog",31,"from atlastrack.gui.widgets.ephys_discovery_dialog import EphysDiscoveryDialog"],["__future__",7,"from __future__ import annotations"],["atlastrack.project.io",882,"from atlastrack.project.io import save_project"],["atlastrack.ephys.export",498,"from atlastrack.ephys.export import ShankFeatureExport"],["atlastrack.ephys.probemap",289,"from atlastrack.ephys.probemap import BUILTIN_MAPS"],["atlastrack.probes.catalog",290,"from atlastrack.probes.catalog import CATALOG"],["atlastrack.probes.trajectory_fit_io",797,"from atlastrack.probes.trajectory_fit_io import default_fit_path, save_fit"],["contextlib",9,"import contextlib"],["pathlib",10,"from pathlib import Path"],["numpy",740,"import numpy as np"],["qtpy",13,"from qtpy.QtWidgets import ("],["atlastrack.ephys.loader",330,"from atlastrack.ephys.loader import list_streams"],["atlastrack.gui.widgets.ephys_discovery_dialog",652,"from atlastrack.gui.widgets.ephys_discovery_dialog import EphysDiscoveryDialog"],["atlastrack.probes.trajectory_fit_io",771,"from atlastrack.probes.trajectory_fit_io import ("],["atlastrack.gui.workflow",26,"from atlastrack.gui.workflow import WorkflowState"]],"atlastrack.gui.widgets.help_panel":[["qtpy",17,"from qtpy.QtWidgets import ("],["pathlib",14,"from pathlib import Path"],["__future__",12,"from __future__ import annotations"],["atlastrack.gui.widgets.atlas_help_dialog",121,"from atlastrack.gui.widgets.atlas_help_dialog import ("],["qtpy",16,"from qtpy.QtCore import Qt"]],"atlastrack.viz.plotly3d":[["atlastrack.atlas.meshes",162,"from atlastrack.atlas.meshes import region_acronyms_at_points"],["atlastrack.atlas.meshes",100,"from atlastrack.atlas.meshes import mesh_vertices_faces"],["atlastrack.probes.geometry",190,"from atlastrack.probes.geometry import probe_prism_mesh"],["__future__",5,"from __future__ import annotations"],["plotly",291,"import plotly.graph_objects as go"],["plotly",14,"import plotly.graph_objects as go"],["pathlib",8,"from pathlib import Path"],["atlastrack.project.schema",16,"from atlastrack.project.schema import Project"],["plotly",189,"import plotly.graph_objects as go"],["numpy",11,"import numpy as np"],["brainglobe_atlasapi",15,"from brainglobe_atlasapi import BrainGlobeAtlas"],["atlastrack.io.ccf_coords",249,"from atlastrack.io.ccf_coords import MIDLINE_ML_UM, bregma_ap_for_display"],["plotly",98,"import plotly.graph_objects as go"],["typing",9,"from typing import TYPE_CHECKING"],["webbrowser",7,"import webbrowser"]],"atlastrack.config":[["json",4,"import json"],["loguru",7,"from loguru import logger"],["pydantic",8,"from pydantic import BaseModel, field_validator"],["pydantic_settings",9,"from pydantic_settings import BaseSettings, SettingsConfigDict"],["pathlib",5,"from pathlib import Path"],["__future__",2,"from __future__ import annotations"]],"atlastrack.probes.trajectory_fit_io":[["numpy",24,"import numpy as np"],["pathlib",22,"from pathlib import Path"],["atlastrack.ephys.export",43,"from atlastrack.ephys.export import default_export_path"],["json",19,"import json"],["__future__",17,"from __future__ import annotations"],["hashlib",21,"from hashlib import sha256"],["datetime",20,"from datetime import datetime, timezone"],["atlastrack.probes.trajectory_fit",26,"from atlastrack.probes.trajectory_fit import ("]],"atlastrack.registration.elastix_bspline":[["scipy",70,"from scipy import ndimage as ndi"],["SimpleITK",223,"import SimpleITK as sitk"],["atlastrack.registration.bspline",36,"from atlastrack.registration.bspline import RegisterResult"],["atlastrack.registration.masks",89,"from atlastrack.registration.masks import section_tissue_mask"],["tempfile",274,"import tempfile"],["atlastrack.registration.masks",240,"from atlastrack.registration.masks import moment_similarity"],["itk",39,"import itk"],["numpy",34,"import numpy as np"],["__future__",32,"from __future__ import annotations"],["SimpleITK",176,"import SimpleITK as sitk"],["SimpleITK",165,"import SimpleITK as sitk"],["scipy",87,"from scipy import ndimage as ndi"]],"atlastrack.io.series_export":[["skimage",83,"from skimage.measure import find_contours"],["atlastrack.io.image",206,"from atlastrack.io.image import crop"],["imageio",211,"import imageio.v3 as iio"],["typing",20,"from typing import TYPE_CHECKING"],["csv",319,"import csv"],["dataclasses",18,"from dataclasses import dataclass, field"],["scipy",151,"from scipy.ndimage import rotate as _rotate"],["numpy",22,"import numpy as np"],["atlastrack.project.images",207,"from atlastrack.project.images import rebuild_slide_image"],["atlastrack.registration.transforms",266,"from atlastrack.registration.transforms import ("],["atlastrack.registration.transforms",67,"from atlastrack.registration.transforms import warp_annotation_to_section"],["atlastrack.project.images",132,"from atlastrack.project.images import deepslice_rotation_deg"],["brainglobe_atlasapi",25,"from brainglobe_atlasapi import BrainGlobeAtlas"],["json",17,"import json"],["pathlib",19,"from pathlib import Path"],["__future__",15,"from __future__ import annotations"],["atlastrack.project.schema",27,"from atlastrack.project.schema import Project, Section"]],"atlastrack.ephys.epochs":[["numpy",24,"import numpy as np"],["__future__",20,"from __future__ import annotations"],["dataclasses",22,"from dataclasses import dataclass"]],"atlastrack.gui.widgets.atlas_help_dialog":[["qtpy",123,"from qtpy.QtGui import QPalette"],["qtpy",15,"from qtpy.QtCore import Qt"],["qtpy",16,"from qtpy.QtWidgets import ("],["__future__",13,"from __future__ import annotations"],["atlastrack.io.ccf_coords",133,"from atlastrack.io.ccf_coords import BREGMA_AP_BY_ATLAS"]],"atlastrack.io.brainreg":[["numpy",26,"import numpy as np"],["__future__",22,"from __future__ import annotations"],["pathlib",24,"from pathlib import Path"],["tifffile",40,"import tifffile"]],"atlastrack.probes.channels":[["typing",13,"from typing import TYPE_CHECKING"],["__future__",9,"from __future__ import annotations"],["json",386,"import json"],["atlastrack.probes.track_path",230,"from atlastrack.probes.track_path import ("],["atlastrack.probes.catalog",17,"from atlastrack.probes.catalog import ProbeLayout, get_layout"],["pathlib",12,"from pathlib import Path"],["atlastrack.ephys.landmarks",120,"from atlastrack.ephys.landmarks import Landmarks"],["numpy",15,"import numpy as np"],["atlastrack.probes.geometry",18,"from atlastrack.probes.geometry import ELECTRODE_COLUMN_CENTER_UM"],["atlastrack.project.schema",21,"from atlastrack.project.schema import Project, Shank"],["atlastrack.ephys.regions",358,"from atlastrack.ephys.regions import regions_at_ccf"],["csv",11,"import csv"],["atlastrack.probes.track_path",184,"from atlastrack.probes.track_path import path_length_um, track_polyline"],["datetime",387,"from datetime import datetime"],["atlastrack.io.ccf_coords",476,"from atlastrack.io.ccf_coords import ("]],"atlastrack.ephys.regions":[["__future__",8,"from __future__ import annotations"],["dataclasses",12,"from dataclasses import dataclass"],["math",11,"import math"],["itertools",10,"import itertools"],["zlib",292,"from zlib import crc32"],["atlastrack.atlas.meshes",16,"from atlastrack.atlas.meshes import structure_rgb"],["numpy",14,"import numpy as np"],["atlastrack.viz.plotly3d",294,"from atlastrack.viz.plotly3d import REGION_STYLE, hex_to_rgb"]],"atlastrack.project.images":[["numpy",20,"import numpy as np"],["__future__",15,"from __future__ import annotations"],["scipy",56,"from scipy.ndimage import rotate as _rotate"],["pathlib",17,"from pathlib import Path"],["math",40,"import math"],["typing",18,"from typing import TYPE_CHECKING"],["atlastrack.io.image",22,"from atlastrack.io.image import crop, load_image, merge_images, slide_bands"],["atlastrack.project.schema",25,"from atlastrack.project.schema import Project, Slide"]],"atlastrack.landmarks.midline":[["dataclasses",14,"from dataclasses import dataclass"],["__future__",12,"from __future__ import annotations"],["numpy",16,"import numpy as np"],["scipy",17,"from scipy import ndimage"]],"atlastrack.ephys.loader":[["atlastrack.ephys.recordings",257,"from atlastrack.ephys.recordings import SHANK_PITCH_UM"],["spikeinterface",27,"import spikeinterface.full as si"],["atlastrack.ephys.epochs",292,"from atlastrack.ephys.epochs import ("],["atlastrack.ephys.formats",150,"from atlastrack.ephys.formats import OPEN_EPHYS, DetectedRecording"],["__future__",11,"from __future__ import annotations"],["atlastrack.ephys.formats",168,"from atlastrack.ephys.formats import list_streams as _list"],["atlastrack.ephys.formats",169,"from atlastrack.ephys.formats import open_stream, select_lfp_stream, select_wideband_stream"],["atlastrack.ephys.features",108,"from atlastrack.ephys.features import lfp_psd"],["pathlib",14,"from pathlib import Path"],["atlastrack.ephys.formats",151,"from atlastrack.ephys.formats import select_wideband_stream as _sel"],["dataclasses",13,"from dataclasses import dataclass"],["atlastrack.ephys.formats",142,"from atlastrack.ephys.formats import select_lfp_stream as _sel"],["atlastrack.ephys.formats",135,"from atlastrack.ephys.formats import list_streams as _list"],["atlastrack.ephys.formats",141,"from atlastrack.ephys.formats import OPEN_EPHYS, DetectedRecording"],["atlastrack.ephys.formats",121,"from atlastrack.ephys.formats import detect_format"],["atlastrack.ephys.probemap",208,"from atlastrack.ephys.probemap import GeometrySource, resolve_probe_map"],["numpy",16,"import numpy as np"]],"atlastrack.project.provenance":[["pathlib",19,"from pathlib import Path"],["typing",20,"from typing import Any"],["json",17,"import json"],["hashlib",16,"import hashlib"],["__future__",14,"from __future__ import annotations"],["datetime",18,"from datetime import datetime, timezone"],["atlastrack",40,"from atlastrack import __version__"]],"atlastrack.gui.widgets.ephys_features_view":[["pyqtgraph",626,"import pyqtgraph as pg"],["atlastrack.ephys.regions",546,"from atlastrack.ephys.regions import region_bands, regions_along_track"],["atlastrack.ephys.features",291,"from atlastrack.ephys.features import raster_points"],["atlastrack.ephys.regions",26,"from atlastrack.ephys.regions import band_colours, white_matter_acronyms"],["pyqtgraph",108,"import pyqtgraph # noqa: F401"],["atlastrack.ephys.features",312,"from atlastrack.ephys.features import depth_profiles"],["numpy",22,"import numpy as np"],["pyqtgraph",462,"import pyqtgraph as pg"],["qtpy",23,"from qtpy.QtCore import Qt, Signal"],["typing",20,"from typing import TYPE_CHECKING, ClassVar"],["qtpy",24,"from qtpy.QtWidgets import QLabel, QVBoxLayout, QWidget"],["atlastrack.ephys.penetration",30,"from atlastrack.ephys.penetration import PenetrationProfile"],["pyqtgraph",332,"import pyqtgraph as pg"],["pyqtgraph",174,"import pyqtgraph as pg"],["__future__",18,"from __future__ import annotations"],["pyqtgraph",673,"import pyqtgraph as pg"],["atlastrack.ephys.landmarks",29,"from atlastrack.ephys.landmarks import Landmarks"],["atlastrack.ephys.features",410,"from atlastrack.ephys.features import power_image"],["atlastrack.ephys.regions",31,"from atlastrack.ephys.regions import RegionBand"],["pyqtgraph",644,"import pyqtgraph as pg"],["pyqtgraph",289,"import pyqtgraph as pg"],["atlastrack.ephys.features",93,"from atlastrack.ephys.features import covered_rows"],["pyqtgraph",310,"import pyqtgraph as pg"],["pyqtgraph",408,"import pyqtgraph as pg"]],"atlastrack.atlas.meshes":[["numpy",14,"import numpy as np"],["__future__",12,"from __future__ import annotations"]],"atlastrack.gui.widgets.click_overlay":[["numpy",27,"import numpy as np"],["napari",48,"import napari"],["qtpy",28,"from qtpy.QtWidgets import ("],["atlastrack.project.schema",45,"from atlastrack.project.schema import Point2D"],["typing",25,"from typing import TYPE_CHECKING"],["atlastrack.gui.workflow",44,"from atlastrack.gui.workflow import WorkflowState"],["atlastrack.sectioning.split",669,"from atlastrack.sectioning.split import _binarize, _to_gray"],["atlastrack.gui.widgets.separators",43,"from atlastrack.gui.widgets.separators import section_header"],["atlastrack.project.schema",508,"from atlastrack.project.schema import TrackPick"],["__future__",23,"from __future__ import annotations"]],"atlastrack.registration":[],"atlastrack.landmarks":[],"atlastrack.registration.transforms":[["SimpleITK",134,"import SimpleITK as sitk"],["atlastrack.atlas.planes",23,"from atlastrack.atlas.planes import Anchoring"],["atlastrack.project.schema",25,"from atlastrack.project.schema import PlaneParams, RegistrationResult"],["brainglobe_atlasapi",29,"from brainglobe_atlasapi import BrainGlobeAtlas"],["SimpleITK",236,"import SimpleITK as sitk"],["scipy",237,"from scipy import ndimage as ndi"],["atlastrack.registration.manual",108,"from atlastrack.registration.manual import invert_apply"],["SimpleITK",87,"import SimpleITK as sitk"],["pathlib",18,"from pathlib import Path"],["dataclasses",17,"from dataclasses import dataclass"],["SimpleITK",286,"import SimpleITK as sitk"],["atlastrack.atlas.planes",174,"from atlastrack.atlas.planes import resample_atlas_at_plane, rescale_atlas_anchoring"],["atlastrack.io.ccf_coords",281,"from atlastrack.io.ccf_coords import atlas_resolution_um"],["SimpleITK",196,"import SimpleITK as sitk"],["atlastrack.registration.landmarks_warp",103,"from atlastrack.registration.landmarks_warp import invert_points"],["atlastrack.io.ccf_coords",24,"from atlastrack.io.ccf_coords import MIDLINE_ML_UM"],["typing",19,"from typing import TYPE_CHECKING"],["__future__",15,"from __future__ import annotations"],["SimpleITK",28,"import SimpleITK as sitk"],["numpy",21,"import numpy as np"]],"atlastrack.probes.registration_suggestion":[["numpy",29,"import numpy as np"],["atlastrack.probes.trajectory_refine",31,"from atlastrack.probes.trajectory_refine import transformed_array"],["__future__",25,"from __future__ import annotations"],["dataclasses",27,"from dataclasses import dataclass, field"]],"atlastrack.ephys.landmarks":[["dataclasses",37,"from dataclasses import dataclass"],["numpy",39,"import numpy as np"],["__future__",35,"from __future__ import annotations"]],"atlastrack.probes.track_path":[["__future__",31,"from __future__ import annotations"],["numpy",33,"import numpy as np"]],"atlastrack.project.schema":[["pydantic",10,"from pydantic import BaseModel, ConfigDict, Field"],["__future__",6,"from __future__ import annotations"],["typing",8,"from typing import Literal"]],"atlastrack.registration.deepslice_adapter":[["DeepSlice",50,"from DeepSlice import DSModel # imported lazily"],["typing",16,"from typing import TYPE_CHECKING"],["pathlib",15,"from pathlib import Path"],["sys",279,"import sys"],["pathlib",245,"from pathlib import Path"],["atlastrack.io.quicknii",20,"from atlastrack.io.quicknii import QuickNiiDocument, load_quicknii"],["subprocess",191,"import subprocess"],["brainglobe_atlasapi",24,"from brainglobe_atlasapi import BrainGlobeAtlas"],["__future__",11,"from __future__ import annotations"],["sys",14,"import sys"],["atlastrack.project.schema",21,"from atlastrack.project.schema import PlaneParams"],["importlib",244,"from importlib.util import find_spec"],["numpy",18,"import numpy as np"],["re",13,"import re"],["imageio",193,"import imageio.v3 as iio"],["json",243,"import json"]],"atlastrack.gui.section_display":[["numpy",11,"import numpy as np"],["__future__",9,"from __future__ import annotations"]],"atlastrack.sectioning":[],"atlastrack.probes.fitting":[["numpy",8,"import numpy as np"],["__future__",6,"from __future__ import annotations"]],"atlastrack.probes.trajectory_refine":[["atlastrack.ephys.regions",258,"from atlastrack.ephys.regions import region_bands, regions_along_track"],["dataclasses",33,"from dataclasses import dataclass"],["atlastrack.ephys.autolandmarks",257,"from atlastrack.ephys.autolandmarks import candidate_boundaries"],["numpy",35,"import numpy as np"],["__future__",31,"from __future__ import annotations"]],"atlastrack.gui.widgets.image_tools":[["atlastrack.project.schema",376,"from atlastrack.project.schema import ChannelLevels"],["__future__",2,"from __future__ import annotations"],["typing",4,"from typing import Callable"],["qtpy",7,"from qtpy.QtWidgets import ("],["atlastrack.gui.widgets.separators",20,"from atlastrack.gui.widgets.separators import section_header"],["atlastrack.project.images",286,"from atlastrack.project.images import deepslice_rotation_deg"],["numpy",6,"import numpy as np"],["atlastrack.gui.workflow",21,"from atlastrack.gui.workflow import WorkflowState"]],"atlastrack.ephys":[["atlastrack.ephys.epochs",15,"from atlastrack.ephys.epochs import ("],["atlastrack.ephys.features",23,"from atlastrack.ephys.features import ("],["atlastrack.ephys.recordings",30,"from atlastrack.ephys.recordings import ("],["__future__",8,"from __future__ import annotations"],["atlastrack.ephys.alignment",10,"from atlastrack.ephys.alignment import ("]],"atlastrack.registration.predictor":[["__future__",7,"from __future__ import annotations"],["atlastrack.project.schema",13,"from atlastrack.project.schema import PlaneParams"],["numpy",11,"import numpy as np"],["typing",9,"from typing import Protocol"]]}
@@ -0,0 +1,3 @@
1
+ Signature: 8a477f597d28d172789f06886806bc55
2
+ # This file is a cache directory tag automatically created by Grimp.
3
+ # For information about cache directory tags see https://bford.info/cachedir/
@@ -0,0 +1 @@
1
+ {"atlastrack.gui.widgets.help_panel": 1788383362.8449469, "atlastrack.probes.channels": 1788383362.8600051, "atlastrack.io.series_export": 1788383362.85648, "atlastrack.ephys": 1788383362.8258512, "atlastrack.probes.geometry": 1788383362.861009, "atlastrack.registration.transforms": 1788383362.87327, "atlastrack.gui.widgets.ephys_panel": 1788383362.8439465, "atlastrack.gui.widgets.atlas_browser": 1788383362.8383944, "atlastrack.io.herbs": 1788383362.853447, "atlastrack.registration.pipeline": 1788383362.8717616, "atlastrack.registration.bspline": 1788383362.86722, "atlastrack.viz": 1788383362.8760066, "atlastrack.gui.widgets.atlas_matcher": 1788383362.8404126, "atlastrack.config": 1788383362.8258512, "atlastrack.io.herbs_writer": 1788383362.854966, "atlastrack.io.image": 1788383362.8554766, "atlastrack.registration.boundary_snap": 1788383362.86722, "atlastrack.probes.registration_suggestion": 1788383362.8615115, "atlastrack.ephys.autolandmarks": 1788383362.8288116, "atlastrack.sectioning": 1788383362.87327, "atlastrack.viz.plotly3d": 1788383362.8770068, "atlastrack.gui": 1788383362.835847, "atlastrack.gui.widgets.ephys_alignment_panel": 1788383362.841943, "atlastrack.gui.widgets.viz_export_panel": 1788383362.8504086, "atlastrack.landmarks": 1788383362.8569846, "atlastrack.ephys.probemap": 1788383362.8333392, "atlastrack.io.brainreg": 1788383362.853447, "atlastrack.gui.widgets.atlas_help_dialog": 1788383362.8393948, "atlastrack.gui.widgets.welcome_overlay": 1788383362.8514476, "atlastrack.gui.widgets.slide_loader": 1788383362.8484094, "atlastrack.atlas.planes": 1788383362.8253405, "atlastrack.gui.widgets.save_panel": 1788383362.8473177, "atlastrack.sectioning.ordering": 1788383362.8750021, "atlastrack.gui.crashlog": 1788383362.8368757, "atlastrack.atlas": 1788383362.8243313, "atlastrack.ephys.features": 1788383362.8308332, "atlastrack.project.io": 1788383362.8652167, "atlastrack.cli": 1788383362.8258512, "atlastrack.viz.napari3d": 1788383362.8760066, "atlastrack.gui.gl_diagnostics": 1788383362.8373897, "atlastrack.io.quicknii": 1788383362.8554766, "atlastrack.ephys.loader": 1788383362.8333392, "atlastrack.gui.widgets.register_panel": 1788383362.8473177, "atlastrack.ephys.analyzer": 1788383362.8279724, "atlastrack.gui.widgets.tooltips": 1788383362.8494093, "atlastrack.probes.fitting": 1788383362.8600051, "atlastrack.landmarks.ventricles": 1788383362.8579886, "atlastrack.landmarks.anchors": 1788383362.8569846, "atlastrack.gui.widgets.probe_picker": 1788383362.8468747, "atlastrack.ephys.regions": 1788383362.8348427, "atlastrack.registration.elastix_bspline": 1788383362.8692596, "atlastrack.gui.widgets.ephys_align_dialog": 1788383362.841434, "atlastrack.gui.widgets.ephys_features_view": 1788383362.8439465, "atlastrack.gui.widgets.trajectory_preview_dialog": 1788383362.8494093, "atlastrack.gui.workflow": 1788383362.8524487, "atlastrack.ephys.export": 1788383362.8308332, "atlastrack.landmarks.contour": 1788383362.8569846, "atlastrack.landmarks.midline": 1788383362.8579886, "atlastrack.ephys.landmarks": 1788383362.832336, "atlastrack.gui.widgets.click_overlay": 1788383362.840926, "atlastrack.gui.widgets.separators": 1788383362.8484094, "atlastrack.registration.internal_feature_snap": 1788383362.8692596, "atlastrack.probes.track_path": 1788383362.8620083, "atlastrack.sectioning.ap_series": 1788383362.87327, "atlastrack.registration.predictor": 1788383362.8717616, "atlastrack.probes.trajectory_refine": 1788383362.8637097, "atlastrack.atlas.service": 1788383362.8253405, "atlastrack.gui.widgets.ephys_discovery_dialog": 1788383362.842947, "atlastrack.registration.tilt_refine": 1788383362.8727653, "atlastrack.project": 1788383362.8637097, "atlastrack.registration.deepslice_run": 1788383362.8682199, "atlastrack.project.schema": 1788383362.86622, "atlastrack.io.ccf_coords": 1788383362.853447, "atlastrack.registration.masks": 1788383362.8702588, "atlastrack": 1788383362.8238187, "atlastrack.gui.section_display": 1788383362.8373897, "atlastrack.gui.widgets.image_tools": 1788383362.8454502, "atlastrack.sectioning.split": 1788383362.8750021, "atlastrack.atlas.meshes": 1788383362.8243313, "atlastrack.gui.widgets.ordering_panel": 1788383362.8459966, "atlastrack.registration.landmarks_warp": 1788383362.8702588, "atlastrack.gui.widgets": 1788383362.8383944, "atlastrack.registration.manual": 1788383362.8702588, "atlastrack.ephys.discovery": 1788383362.8298323, "atlastrack.ephys.epochs": 1788383362.8298323, "atlastrack.probes.trajectory_fit": 1788383362.862588, "atlastrack.io": 1788383362.8524487, "atlastrack.probes.catalog": 1788383362.8594918, "atlastrack.ephys.recordings": 1788383362.8348427, "atlastrack.project.images": 1788383362.864714, "atlastrack.ephys.combine": 1788383362.8288116, "atlastrack.gui.workers": 1788383362.8514476, "atlastrack.project.provenance": 1788383362.8652167, "atlastrack.ephys.alignment": 1788383362.8273835, "atlastrack.gui.app": 1788383362.835847, "atlastrack.probes": 1788383362.8579886, "atlastrack.registration.deepslice_adapter": 1788383362.86722, "atlastrack.ephys.penetration": 1788383362.8333392, "atlastrack.probes.trajectory_fit_io": 1788383362.8632026, "atlastrack.registration": 1788383362.86622, "atlastrack.ephys.formats": 1788383362.8308332}
@@ -0,0 +1 @@
1
+ {"atlastrack.registration.predictor": 1788280623.2129781, "atlastrack.probes.geometry": 1788280623.2129781, "atlastrack.ephys.regions": 1788280623.2119722, "atlastrack.gui.workers": 1788280623.188207, "atlastrack.registration.masks": 1788280623.2129781, "atlastrack.registration.deepslice_run": 1788280623.2129781, "atlastrack.registration.landmarks_warp": 1788280623.2129781, "atlastrack.gui.widgets.ephys_features_view": 1788280623.2119722, "atlastrack.project.schema": 1788288440.4398062, "atlastrack.gui.widgets.register_panel": 1788295506.8105226, "atlastrack.registration.manual": 1781121306.3250551, "atlastrack.probes": 1781121306.3209836, "atlastrack.gui.widgets.atlas_matcher": 1788284836.3045654, "atlastrack.ephys.epochs": 1788280623.2119722, "atlastrack.gui.widgets.ephys_alignment_panel": 1788284731.3334334, "atlastrack.viz": 1781121306.329099, "atlastrack.probes.trajectory_fit": 1788280623.2129781, "atlastrack.landmarks.anchors": 1781121306.3209836, "atlastrack.gui.widgets.trajectory_preview_dialog": 1788284836.3045654, "atlastrack.gui.widgets.image_tools": 1788295405.66973, "atlastrack.gui.widgets.separators": 1788280623.188207, "atlastrack.gui.widgets.ephys_align_dialog": 1788284836.3045654, "atlastrack.ephys.export": 1788280623.2119722, "atlastrack.gui.widgets.probe_picker": 1788280623.188207, "atlastrack.gui.widgets.tooltips": 1788284731.3280284, "atlastrack.gui.widgets": 1781121306.3128583, "atlastrack.gui.widgets.ordering_panel": 1788295396.858198, "atlastrack.config": 1783115468.4057803, "atlastrack.ephys.loader": 1788280623.2119722, "atlastrack.io.series_export": 1788300734.950678, "atlastrack.probes.trajectory_fit_io": 1788280623.2129781, "atlastrack.gui.widgets.ephys_discovery_dialog": 1788284836.3045654, "atlastrack.ephys": 1786129084.2859113, "atlastrack.sectioning.ap_series": 1788280623.2129781, "atlastrack.ephys.analyzer": 1788280623.2119722, "atlastrack.io.brainreg": 1788280623.2129781, "atlastrack.sectioning.split": 1788280623.2129781, "atlastrack.io.quicknii": 1788280623.2129781, "atlastrack.gui.widgets.save_panel": 1788280623.2119722, "atlastrack.gui.crashlog": 1788280623.188207, "atlastrack.ephys.penetration": 1788280623.2119722, "atlastrack.gui.widgets.atlas_help_dialog": 1788360146.419025, "atlastrack.io.herbs": 1788280623.2129781, "atlastrack.project.io": 1781121306.3209836, "atlastrack.landmarks.ventricles": 1788280623.2119722, "atlastrack.io.herbs_writer": 1781121306.3199804, "atlastrack.atlas.meshes": 1788280623.2119722, "atlastrack.probes.registration_suggestion": 1788280623.2129781, "atlastrack.gui.widgets.viz_export_panel": 1788360126.6173625, "atlastrack.gui.widgets.click_overlay": 1788280623.2119722, "atlastrack": 1788370125.2594833, "atlastrack.probes.fitting": 1788280623.2129781, "atlastrack.ephys.formats": 1788280623.2129781, "atlastrack.project.images": 1788292469.5565856, "atlastrack.cli": 1788280623.188207, "atlastrack.ephys.landmarks": 1788280623.2119722, "atlastrack.probes.trajectory_refine": 1788280623.2129781, "atlastrack.gui.workflow": 1788280623.188207, "atlastrack.ephys.autolandmarks": 1788280623.2119722, "atlastrack.probes.catalog": 1788280623.2129781, "atlastrack.gui.section_display": 1788280623.188207, "atlastrack.registration": 1781121306.3250551, "atlastrack.atlas.planes": 1788300751.0965817, "atlastrack.registration.transforms": 1788300758.2988534, "atlastrack.io.ccf_coords": 1788301598.0121844, "atlastrack.project.provenance": 1785776526.5160584, "atlastrack.viz.plotly3d": 1788280623.2119722, "atlastrack.probes.channels": 1788280623.2129781, "atlastrack.gui.widgets.atlas_browser": 1788360146.470304, "atlastrack.registration.boundary_snap": 1788280623.2129781, "atlastrack.atlas.service": 1781121306.3088279, "atlastrack.registration.elastix_bspline": 1788280623.2129781, "atlastrack.gui.app": 1788364297.7899911, "atlastrack.landmarks.contour": 1781121306.3209836, "atlastrack.atlas": 1781121306.3088279, "atlastrack.ephys.combine": 1788280623.2119722, "atlastrack.gui.widgets.slide_loader": 1788281195.5641842, "atlastrack.viz.napari3d": 1788280623.2119722, "atlastrack.ephys.probemap": 1788280623.2119722, "atlastrack.io.image": 1788280623.2129781, "atlastrack.ephys.recordings": 1788280623.2119722, "atlastrack.registration.pipeline": 1788280623.2129781, "atlastrack.landmarks": 1781121306.3209836, "atlastrack.registration.internal_feature_snap": 1788280623.2129781, "atlastrack.ephys.discovery": 1788280623.2119722, "atlastrack.registration.bspline": 1788280623.2129781, "atlastrack.gui.widgets.welcome_overlay": 1788302552.1514058, "atlastrack.gui.gl_diagnostics": 1788280623.188207, "atlastrack.registration.tilt_refine": 1788280623.2129781, "atlastrack.ephys.alignment": 1788280623.2119722, "atlastrack.gui.widgets.help_panel": 1788370084.6361427, "atlastrack.gui.widgets.ephys_panel": 1788280623.1987276, "atlastrack.sectioning": 1781121306.3250551, "atlastrack.project": 1788280623.2129781, "atlastrack.gui": 1781121306.3128583, "atlastrack.registration.deepslice_adapter": 1788284581.2753263, "atlastrack.ephys.features": 1788280623.2119722, "atlastrack.landmarks.midline": 1788280623.2119722, "atlastrack.sectioning.ordering": 1788280623.2129781, "atlastrack.probes.track_path": 1788280623.2129781, "atlastrack.io": 1781121306.3168955}
@@ -0,0 +1,33 @@
1
+ [importlinter]
2
+ root_package = atlastrack
3
+ # Required whenever the forbidden modules are third-party (napari, qtpy, ...):
4
+ # without it import-linter 2.x refuses to build the graph and exits with a config
5
+ # error, which looks enough like a failed contract to be mistaken for one. The
6
+ # contract below was silently not being checked until this was added.
7
+ include_external_packages = True
8
+
9
+ # The single most important architectural rule: the core (registration, atlas,
10
+ # probes, landmarks, sectioning, io, viz.plotly3d) must NOT depend on Qt/napari.
11
+ # Only atlastrack.gui (and viz.napari3d) may import them.
12
+
13
+ [importlinter:contract:core-stays-headless]
14
+ name = Core modules must not import Qt/napari/magicgui
15
+ type = forbidden
16
+ source_modules =
17
+ atlastrack.project
18
+ atlastrack.io
19
+ atlastrack.atlas
20
+ atlastrack.sectioning
21
+ atlastrack.landmarks
22
+ atlastrack.registration
23
+ atlastrack.probes
24
+ atlastrack.ephys
25
+ atlastrack.viz.plotly3d
26
+ forbidden_modules =
27
+ napari
28
+ qtpy
29
+ magicgui
30
+ PyQt5
31
+ PyQt6
32
+ PySide2
33
+ PySide6
@@ -0,0 +1,17 @@
1
+ repos:
2
+ - repo: https://github.com/astral-sh/ruff-pre-commit
3
+ rev: v0.5.7
4
+ hooks:
5
+ - id: ruff
6
+ args: [--fix]
7
+ - id: ruff-format
8
+
9
+ - repo: https://github.com/pre-commit/pre-commit-hooks
10
+ rev: v4.6.0
11
+ hooks:
12
+ - id: trailing-whitespace
13
+ - id: end-of-file-fixer
14
+ - id: check-yaml
15
+ - id: check-toml
16
+ - id: check-added-large-files
17
+ args: [--maxkb=2000]