MCPcopy
hub / github.com/mne-tools/mne-python / compute_area

Method compute_area

mne/label.py:933–964  ·  view source on GitHub ↗

Compute the surface area of a label. Parameters ---------- %(subject_label)s %(subjects_dir)s %(surface)s %(verbose)s Returns ------- area : float The area (in m²) of the label. Notes -----

(
        self, subject=None, subjects_dir=None, surface="white", *, verbose=None
    )

Source from the content-addressed store, hash-verified

931
932 @verbose
933 def compute_area(
934 self, subject=None, subjects_dir=None, surface="white", *, verbose=None
935 ):
936 """Compute the surface area of a label.
937
938 Parameters
939 ----------
940 %(subject_label)s
941 %(subjects_dir)s
942 %(surface)s
943 %(verbose)s
944
945 Returns
946 -------
947 area : float
948 The area (in m²) of the label.
949
950 Notes
951 -----
952 .. versionadded:: 0.24
953 """
954 _, _, surf = self._load_surface(
955 subject, subjects_dir, surface, return_dict=True
956 )
957 complete_surface_info(
958 surf, do_neighbor_vert=False, do_neighbor_tri=False, copy=False
959 )
960 in_ = np.isin(surf["tris"], self.vertices).reshape(surf["tris"].shape)
961 tidx = np.where(in_.all(-1))[0]
962 if len(tidx) == 0:
963 warn("No complete triangles found, perhaps label is not filled?")
964 return surf["tri_area"][tidx].sum() * 1e-6 # mm² -> m²
965
966 def _load_surface(self, subject, subjects_dir, surface, **kwargs):
967 subject = _check_subject(self.subject, subject)

Callers 2

test_label_geometryFunction · 0.80
70_point_spread.pyFile · 0.80

Calls 4

_load_surfaceMethod · 0.95
complete_surface_infoFunction · 0.85
warnFunction · 0.85
sumMethod · 0.45

Tested by 1

test_label_geometryFunction · 0.64