siibra 0.4a86__py3-none-any.whl → 0.4a88__py3-none-any.whl

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.

Potentially problematic release.


This version of siibra might be problematic. Click here for more details.

siibra/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4a86
1
+ 0.4a88
siibra/commons.py CHANGED
@@ -698,6 +698,7 @@ class Species(Enum):
698
698
  MACACA_MULATTA = 5
699
699
  MACACA_FUSCATA = 6
700
700
  CHLOROCEBUS_AETHIOPS_SABAEUS = 7
701
+ CALLITHRIX_JACCHUS = 8
701
702
 
702
703
  UNSPECIFIED_SPECIES = 999
703
704
 
@@ -460,6 +460,10 @@ class Factory:
460
460
  return volume_of_interest.LSFMVolumeOfInterest(
461
461
  modality="Light Sheet Fluorescence Microscopy", **kwargs
462
462
  )
463
+ elif modality == "morphometry":
464
+ return volume_of_interest.MorphometryVolumeOfInterest(
465
+ modality="Morphometry", **kwargs
466
+ )
463
467
  else:
464
468
  raise ValueError(f"No method for building image section feature type {modality}.")
465
469
 
siibra/features/anchor.py CHANGED
@@ -146,24 +146,21 @@ class AnatomicalAnchor:
146
146
  """
147
147
  if concept not in self._assignments:
148
148
  matches: List[AnatomicalAssignment] = []
149
- if isinstance(concept, Space):
150
- if self.space == concept:
151
- matches.append(
152
- AnatomicalAssignment(self.space, concept, AssignmentQualification.EXACT)
153
- )
154
- elif isinstance(concept, Region):
155
- if concept.species in self.species:
156
- if any(_.matches(self._regionspec) for _ in concept) \
157
- or self.has_region_aliases: # dramatic speedup, since decoding _regionspec is expensive
158
- for r in self.regions:
159
- matches.append(AnatomicalAnchor.match_regions(r, concept))
160
- if len(concept.root.find(self._regionspec)) == 0:
161
- # We perform the (quite expensive) location-to-region test
162
- # only if this anchor's regionspec is not known to the
163
- # parcellation of the query region. Otherwise we can rely
164
- # on the region-to-region test.
165
- if self.location is not None:
166
- matches.append(AnatomicalAnchor.match_location_to_region(self.location, concept))
149
+ if isinstance(concept, Space) and self.space == concept:
150
+ matches.append(
151
+ AnatomicalAssignment(self.space, concept, AssignmentQualification.EXACT)
152
+ )
153
+ elif isinstance(concept, Region) and concept.species in self.species:
154
+ hierarchy_search = concept.root.find(self._regionspec)
155
+ if len(hierarchy_search) > 0 or self.has_region_aliases: # dramatic speedup, since decoding _regionspec is expensive
156
+ for r in self.regions:
157
+ matches.append(AnatomicalAnchor.match_regions(r, concept))
158
+ if len(hierarchy_search) == 0 and self.location is not None:
159
+ # We perform the (quite expensive) location-to-region test
160
+ # only if this anchor's regionspec is not known to the
161
+ # parcellation of the query region. Otherwise we can rely
162
+ # on the region-to-region test.
163
+ matches.append(AnatomicalAnchor.match_location_to_region(self.location, concept))
167
164
  elif isinstance(concept, Location):
168
165
  if self.location is not None:
169
166
  matches.append(AnatomicalAnchor.match_locations(self.location, concept))
@@ -21,7 +21,8 @@ from .volume_of_interest import (
21
21
  MRIVolumeOfInterest,
22
22
  XPCTVolumeOfInterest,
23
23
  LSFMVolumeOfInterest,
24
- DTIVolumeOfInterest
24
+ DTIVolumeOfInterest,
25
+ MorphometryVolumeOfInterest
25
26
  # SegmentedVolumeOfInterest
26
27
  )
27
28
  from .sections import CellbodyStainedSection
@@ -79,6 +79,14 @@ class LSFMVolumeOfInterest(
79
79
  def __init__(self, modality, **kwargs):
80
80
  image.Image.__init__(self, **kwargs, modality=modality)
81
81
 
82
+ class MorphometryVolumeOfInterest(
83
+ image.Image,
84
+ configuration_folder="features/images/vois/morphometry",
85
+ category="macrostructural"
86
+ ):
87
+ def __init__(self, modality, **kwargs):
88
+ image.Image.__init__(self, **kwargs, modality=modality)
89
+
82
90
  # class SegmentedVolumeOfInterest(
83
91
  # image.Image,
84
92
  # configuration_folder="features/images/vois/segmentation",
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: siibra
3
- Version: 0.4a86
3
+ Version: 0.4a88
4
4
  Summary: siibra - Software interfaces for interacting with brain atlases
5
5
  Home-page: https://github.com/FZJ-INM1-BDA/siibra-python
6
6
  Author: Big Data Analytics Group, Forschungszentrum Juelich, Institute of Neuroscience and Medicine (INM-1)
@@ -25,6 +25,16 @@ Requires-Dist: nilearn
25
25
  Requires-Dist: typing-extensions; python_version < "3.8"
26
26
  Requires-Dist: filelock
27
27
  Requires-Dist: ebrains-drive>=0.6.0
28
+ Dynamic: author
29
+ Dynamic: author-email
30
+ Dynamic: classifier
31
+ Dynamic: description
32
+ Dynamic: description-content-type
33
+ Dynamic: home-page
34
+ Dynamic: license-file
35
+ Dynamic: requires-dist
36
+ Dynamic: requires-python
37
+ Dynamic: summary
28
38
 
29
39
  |License| |PyPI version| |doi| |Python versions| |Documentation Status|
30
40
 
@@ -1,9 +1,9 @@
1
- siibra/VERSION,sha256=kzqfd3af8_hjOX7jAHdp_vlcXbPCyzBwJa_k6MVj4Ow,7
1
+ siibra/VERSION,sha256=qY8OsFdKoScwOjQMSZKCgqDP2JATV_eRVzVbFMJYt5U,7
2
2
  siibra/__init__.py,sha256=qBxxMRyl9RojNt0twQr2LDk1Nyk5eNsPHFxxoIwnpx4,4540
3
- siibra/commons.py,sha256=PImsqrZBp2Mn_9ZEJOxEOd4i-w_HPMv4sUcHCtN9cPw,25868
3
+ siibra/commons.py,sha256=y0yLQw1wWn8N9EgQGW2B0aAuo3FM_5zthMcEcvuvmH8,25895
4
4
  siibra/configuration/__init__.py,sha256=-_Kuf0TfMEdFXiSCTAdcHUL_krA8-cxhJypSNNay53Q,752
5
5
  siibra/configuration/configuration.py,sha256=x06QsaqGQbce1d9TuFCCYEgMWJBlLbkt8B3zTfYz5RE,6887
6
- siibra/configuration/factory.py,sha256=fpeyl3BbeDsjBdtqd9gNdQ_gEFuZQ1qUmDXYA5rB8Wg,20901
6
+ siibra/configuration/factory.py,sha256=olRMm__Q2DeQX5CoBFkmfBdgXlWhZ3Wsy-oKG7s9BuQ,21071
7
7
  siibra/core/__init__.py,sha256=z22elfoi5_TscUb17-pBoGyfT_q9PQpvgOgSLEJe2WE,916
8
8
  siibra/core/atlas.py,sha256=YwhVWAIT0XGfzKjSuQUNpljdIE4VP4crNQ3VNfTrgKg,7868
9
9
  siibra/core/concept.py,sha256=rKR7FO1HaFdy076Dy0y9Bjcdu_tcYUHbxLYNZxH7XTY,9595
@@ -15,7 +15,7 @@ siibra/explorer/__init__.py,sha256=_9gCCp7P8AniGlztulrRyleIOEKcNZlBFVurtnI8GBM,4
15
15
  siibra/explorer/url.py,sha256=mUAFN7OHfLELfdqqJmSdAkmXJjKCv6Qh5RHtyxNQjfo,5868
16
16
  siibra/explorer/util.py,sha256=Z2ruicDL3S_qcxhHHW0GF1q5-r963tJpzgtQmAn8YSM,1424
17
17
  siibra/features/__init__.py,sha256=Y5q2M7HoToTcfAdO50jmnPGZybJOi5GyEcbxQRscJjo,1518
18
- siibra/features/anchor.py,sha256=1w9VuSEWC3oapph8GtbsW26kvMcE7_9ik7281oRMjlE,14245
18
+ siibra/features/anchor.py,sha256=6XQC8kViFyxd6Xcwp4lMJi2XLoZVNpWevczU5lnhfgk,14135
19
19
  siibra/features/feature.py,sha256=YdIBmyJYFlJby6oIXxK1zFV6FJVr3_eygDynCLCe7vk,20478
20
20
  siibra/features/connectivity/__init__.py,sha256=ybKN9OfmabSeTx1I6WSrULu5dT6raefty8QB2XaiUrE,1077
21
21
  siibra/features/connectivity/functional_connectivity.py,sha256=AkRYufi4r3CeV50FLaI6kjKraQ4t9G58iPn521HRRGk,1407
@@ -25,10 +25,10 @@ siibra/features/connectivity/streamline_lengths.py,sha256=0a09Dag-eRvs1KgHSU47I3
25
25
  siibra/features/connectivity/tracing_connectivity.py,sha256=pyTMTLvkJL3ftk56s0AbT8dHexV4EyuTJ2yX27kLGfc,1083
26
26
  siibra/features/dataset/__init__.py,sha256=5h_wstfa3h35emL1qoKOtcFOiIjKZX9oIy-GwsChEyc,748
27
27
  siibra/features/dataset/ebrains.py,sha256=wdb1-4ovHE1duw2a9NSU0PYgqnlt8-f4pLsGwfTa8xw,2542
28
- siibra/features/image/__init__.py,sha256=UIECVLwKYKeuCPNa4WcjcLDuNr_3JxCyiOQSjBRf36U,1013
28
+ siibra/features/image/__init__.py,sha256=V83hLmG0M0OYG60M2wYpUm9_H1kKTjadyDgnV25fBZc,1046
29
29
  siibra/features/image/image.py,sha256=1K4u6X6q2CV8avguE56LQQSe5ziahnLr8QFIdvMmFKE,3348
30
30
  siibra/features/image/sections.py,sha256=d4TQSs6nIKQ5vgi89htERfWOMgnvOA9k4LhaXBMWNbE,961
31
- siibra/features/image/volume_of_interest.py,sha256=DIv9GNOptfungLddA_CfrrCfY8p36rbWCT9xkE6K66w,2654
31
+ siibra/features/image/volume_of_interest.py,sha256=6-Gu0Nw2tcNQC7RRnl7dMWP83BZeSwebLrooo5JLCnE,2910
32
32
  siibra/features/tabular/__init__.py,sha256=3DBwa8JtGd-npeOyyw6kJzcveKXadbqSATyJtTnY3-w,1176
33
33
  siibra/features/tabular/bigbrain_intensity_profile.py,sha256=-dXzznb6r1BhMjE8jOeugbZ3MjXo0AJkTtOw25SehYs,2238
34
34
  siibra/features/tabular/cell_density_profile.py,sha256=QICybWoFvyzyH0sVA79Q8WUEmXZLyIdge6arfOLkV78,9209
@@ -67,8 +67,8 @@ siibra/volumes/nifti.py,sha256=nGSCedjpsiy43XIiHQ2SRy9rPRK8Ci9QDq4AHKclCck,9030
67
67
  siibra/volumes/parcellationmap.py,sha256=phoMzNLI3Ig9rWvuD_c1yBm3ejLxAJGXtTHMXqw-ivc,44243
68
68
  siibra/volumes/sparsemap.py,sha256=j41ozLSgKri68-KDsqo46gEs4lT4aYsf2yMF4l-ruCo,21752
69
69
  siibra/volumes/volume.py,sha256=h_KrdDkpeoENnOrE7BlTZNXaZQGTrJXHX0eSyArxF-4,11667
70
- siibra-0.4a86.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
71
- siibra-0.4a86.dist-info/METADATA,sha256=qUNg7MNR_r_sL6BvtRddSiqRicW6hyvoY0Yw808w-_o,8328
72
- siibra-0.4a86.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
73
- siibra-0.4a86.dist-info/top_level.txt,sha256=NF0OSGLL0li2qyC7MaU0iBB5Y9S09_euPpvisD0-8Hg,7
74
- siibra-0.4a86.dist-info/RECORD,,
70
+ siibra-0.4a88.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
71
+ siibra-0.4a88.dist-info/METADATA,sha256=Q09Y1v799aCg8izE1g9Ay0JeTKiIRBkfEHCb3Fntje0,8547
72
+ siibra-0.4a88.dist-info/WHEEL,sha256=ooBFpIzZCPdw3uqIQsOo4qqbA4ZRPxHnOH7peeONza0,91
73
+ siibra-0.4a88.dist-info/top_level.txt,sha256=NF0OSGLL0li2qyC7MaU0iBB5Y9S09_euPpvisD0-8Hg,7
74
+ siibra-0.4a88.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.6.0)
2
+ Generator: setuptools (80.0.1)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5