Partitioning of the gray matter of the brain of a human patient

The method segments gray matter in the brain by using a tractogram and clustering algorithm to merge regions based on overlap, improving accuracy and coherence in gray matter partitions for clinical applications.

JP2026012648APending Publication Date: 2026-01-27DASSAULT SYSTEMES SA
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025113847
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-07-11
Filing Date
2025-07-04
Publication Date
2026-01-27

AI Technical Summary

Technical Problem

Existing methods for segmenting gray matter in the brain of human patients are inadequate, often resulting in over-granular partitions that lack biological distinction and accuracy.

Method used

A computer-implemented method using a tractogram of brain fibers to identify regions of gray matter, followed by a clustering algorithm to group streamlines with similar connectivity, and an iterative merging process based on overlap metrics to refine these regions into biologically meaningful partitions.

Benefits of technology

The method provides accurate and coherent segmentation of gray matter by merging overlapping regions, ensuring each partition corresponds to a cohesive brain area, thus enhancing diagnostic and treatment applications.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026012648000001_ABST
    Figure 2026012648000001_ABST
Patent Text Reader

Abstract

To provide a method for segmenting gray matter of the brain of a human patient.SOLUTION: In particular, it relates to a computer-implemented method of segmenting gray matter of a brain of a human patient, the method comprising obtaining a tractogram comprising tractogram streamlines, each tractogram streamline having a first end located in a first portion of the gray matter and a second end located in a second portion of the gray matter. The method also includes using a predetermined clustering algorithm to obtain tractogram streamline clusters, and identifying, for each cluster of at least some of the clusters, a respective first region of gray matter comprising, for each streamline of the cluster, a first end thereof, and a respective second region of gray matter comprising, for each streamline of the cluster, a second end thereof. The method also includes determining a partition based on the identified regions, which includes an iterative merge process that includes merging regions of a region pair based on a metric that represents an amount of overlap.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to the field of computer programs and systems, and more particularly to methods, systems and programs for segmenting gray matter in the brain of a human patient. [Background technology]

[0002] The brain is made up of white matter and gray matter located deep within the brain and at the brain's periphery, with white matter consisting of fibers that conduct electrical impulses and gray matter receiving and processing the electrical impulses. Modeling of the brain's gray matter can be used to help clinicians make diagnoses based on familiar representations of contextualized gray matter data to make decisions about diagnosing, treating, or monitoring a medical condition. Gray matter data can represent anatomical information, such as cortical or subcortical gray matter, or functional information, such as the location of motor or visual areas.

[0003] In this context, there remains a need for improved solutions for segmenting the grey matter of the brain of human patients. Summary of the Invention

[0004] Accordingly, a computer-implemented method for segmenting gray matter of a human brain of a human patient is provided. The segmentation method includes obtaining a tractogram of the human patient's brain. The tractogram includes tractogram streamlines. Each streamline has a first end located in a first portion of the gray matter of the human patient's brain and a second end located in a second portion of the gray matter of the human patient's brain. The first and second portions are separate. The segmentation method also includes using a clustering algorithm to obtain a plurality of tractogram streamline clusters. The segmentation method also includes identifying, for each tractogram streamline cluster of at least some of the plurality of tractogram streamline clusters, a respective first region of gray matter. Each first region of gray matter includes a first end for each tractogram streamline of the cluster. The segmentation method also includes identifying a respective second region of gray matter. Each second region of gray matter includes a second end for each tractogram streamline of the cluster. Each first region is separate from each second region. The segmentation method also includes determining a segment based on the identified regions. Determining the partitions includes an iterative merging process that includes merging the regions of the region pairs at each iteration based on a metric that represents the amount of overlap.

[0005] The method may include one or more of the following. The metric that represents the amount of overlap is the dice score.

[0006] The iterative merging process, in each iteration, determining a value of the metric for each pair of regions, the value of the metric thereby representing the amount of overlap between the regions of the pair of regions; merging the regions of each of one or more region pairs each having a value of said metric greater than a predetermined first threshold, e.g., the region pair having the maximum value of said metric among all region pairs; a stage comprising: The stages of the iterative merging process are performed until no region pairs have values ​​of the metric greater than the first predetermined threshold.

[0007] The method is Before the iterative merging process, determining, for each tractogram streamline cluster, a graph comprising first nodes representing respective first regions, second nodes representing respective second regions, and edges connecting the first nodes and the second nodes, whereby the edges represent respective tractogram streamline clusters; - at each iteration of said stage, merging the nodes of each node pair of said graph representing each pair of merged regions; After the first stage, the iterative merging process includes a further stage of evaluating whether the graph is connected, and if the graph is not connected, iteratively merging regions of one or more region pairs and iteratively merging nodes of each node pair of the graph representing a merged region pair; Further provided with:

[0008] said further stage being identifying a principal connected component of the graph and one or more minor connected components of the graph; performing an iterative search process for each pair of a node in the primary connected component and a node in the secondary connected component, the search process performing, for each pair in each iteration: re-evaluating a metric representing the amount of overlap between the regions corresponding to each pair; merging each node of the minor connected components with each node of the principal connected components having the largest value of a metric representing the amount of overlap between the corresponding regions, the search process being performed until there are no minor connected components having nodes representing regions that form an overlap with the regions represented by the nodes of the principal connected components, the metric having a value greater than zero; Includes.

[0009] The determination of the partition includes, after the iterative merging process, performing an iterative post-processing on the remaining regions of the gray matter, wherein in each iteration, the iterative post-processing: determining pairs of overlapping regions and determining portions representing the overlap between said regions; calculating a respective Mahalanobis distance between each of the pair of regions and the determined portion; assigning said portions to each of said pairs of regions with the smallest Mahalanobis distance; Includes.

[0010] Each of said Mahalanobis distances is of type TIFF2026012648000002.tif12170, where: TIFF2026012648000003.tif5170 is the average of the voxels in the corresponding regions of the pair, TIFF2026012648000004.tif5170 is the standard deviation of voxels in the corresponding regions of the pair, TIFF2026012648000005.tif5170 is the location of the voxels that belong to the given portion.

[0011] After performing the iterative post-processing, the method determining subregions, each subregion having an average number of voxels less than a predetermined second threshold; For each subregion, - determining nearby large regions, where the large regions are regions whose average number of voxels is greater than the predetermined second threshold; calculating the most prevalent anatomical classification among the anatomical classifications associated with each of the determined large neighborhood regions; assigning voxels of said small regions to each of the largest number of neighboring large regions within an anatomical classification; Further includes:

[0012] The predetermined clustering algorithm performs the following for each of the plurality of tractogram streamlines: Obtaining the threshold as a predetermined third threshold (Q10); Assigning initial tractogram streamlines to initial tractogram streamline clusters (Q20); Iteratively examining subsequent tractogram streamlines for each of the plurality of tractogram streamlines (Q30); For each subsequent tractogram streamline, with respect to a given distance (Q40), Calculating (Q410) each distance value between the subsequent tractogram streamline and the centroid of each existing tractogram streamline cluster; Finding each tractogram streamline cluster with the smallest distance value (Q420); assigning each of the subsequent tractogram streamlines to each of the tractogram streamline clusters if each of the distance values ​​is less than the predetermined third threshold (Q430); and if each of the distance values ​​is not less than the predetermined third threshold, creating a subsequent tractogram streamline cluster and assigning each of the subsequent tractogram streamlines to the subsequent tractogram streamline cluster (Q432); Includes.

[0013] After assigning all of the tractogram streamlines among the plurality of tractogram streamlines, the predetermined clustering algorithm: recalculating the centroid of each tractogram streamline cluster using the predetermined centroid calculation algorithm; For each tractogram streamline assigned to each of the tractogram streamline clusters, with respect to the predetermined distance, calculating each of the distance values ​​between the tractogram streamlines and the centroids of each of the tractogram streamline clusters; deassigning the tractogram streamlines from the respective tractogram streamline clusters if the respective distance values ​​are greater than the third predetermined threshold; recalculating the centroid of each tractogram streamline cluster using the predetermined centroid calculation algorithm; for each tractogram streamline that is unassigned from each of the other tractogram streamline clusters, with respect to said predetermined distance, calculating distance values ​​between the tractogram streamlines and the centroids of each tractogram streamline cluster; Finding the tractogram streamline cluster with the smallest distance value; reassigning the unassigned tractogram streamlines to the determined tractogram streamline clusters if each of the distance values ​​is less than the third predetermined threshold; if each of the distance values ​​is not less than the third predetermined threshold, creating a subsequent tractogram streamline cluster and reassigning the subsequent tractogram streamline to the subsequent tractogram streamline cluster; Includes.

[0014] The predetermined distance is the minimum direct flip distance.

[0015] the predetermined clustering algorithm obtains another threshold value, the another threshold value being higher than the threshold value, and before the step of using the predetermined clustering algorithm, the method further comprises: Extracting all tractogram streamlines from the tractogram (P10); applying the predetermined clustering algorithm to all of the tractogram streamlines to obtain a plurality of initial tractogram streamline clusters (P20); selecting one or more initial sets of tractogram streamlines from the plurality of initial tractogram streamline clusters (P40), each of the initial tractogram streamline clusters being selected as an initial set, such that each of the initial tractogram streamline clusters satisfies a coarser proximity criterion; Including, Using the predetermined clustering algorithm to obtain the plurality of tractogram streamline clusters is applied to at least some streamlines of the one or more initial sets of tractogram streamlines.

[0016] A computer program comprising instructions for carrying out the method is further provided.

[0017] There is further provided a computer readable storage medium having the computer program recorded thereon.

[0018] A system is also provided that includes a processor coupled to a memory, the memory having the computer program recorded thereon. [Brief explanation of the drawings]

[0019] Non-limiting examples are now described with reference to the accompanying drawings. [Figure 1] FIG. 1 shows a flow chart of an example of the method. [Figure 2] Figure 2 shows an example of this system. [Figure 3] FIG. 3 illustrates the method. [Figure 4] FIG. 4 illustrates this method. [Figure 5] FIG. 5 illustrates this method. [Figure 6] FIG. 6 illustrates this method. [Figure 7] FIG. 7 illustrates this method. [Figure 8] Figure 8 illustrates this method. [Figure 9] FIG. 9 illustrates this method. [Figure 10] FIG. 10 illustrates this method. [Figure 11] FIG. 11 illustrates this method. [Figure 12] FIG. 12 illustrates this method. [Figure 13] FIG. 13 illustrates this method. DETAILED DESCRIPTION OF THE INVENTION

[0020] Referring to the flowchart of FIG. 1, a computer-implemented method for parceling gray matter in a human brain of a human patient is presented. The method includes obtaining a tractogram of the human brain (S10). The tractogram includes tractogram streamlines. Each streamline has a first end located in a first portion of the gray matter in the human brain and a second end located in a second portion of the gray matter in the human brain. The first and second portions are parceled from each other. The method also includes using a predetermined clustering algorithm to obtain a plurality of tractogram streamline clusters (S20). The parceling method also includes identifying a respective first region of gray matter for each of at least some of the plurality of tractogram streamline clusters (S30). Each first region of gray matter includes a first end for each tractogram streamline of the cluster. The parceling method also includes identifying a respective second region of gray matter. Each second region of gray matter includes a second end for each tractogram streamline of the cluster. Each of the first regions is partitioned from each of the second regions. The method also includes determining S40 a partition based on the identified regions. Determining the partition includes an iterative merging process. The iterative merging process includes merging (combining) the regions of the region pair at each iteration. Merging the regions of the region pair is based on a metric representing the amount of overlap.

[0021] Such methods provide an improved solution for segmenting gray matter in the brain of human patients.

[0022] In particular, this method allows for the acquisition of anatomical information of gray matter based on the underlying connectivity seen in the brain's white matter fiber structure, represented by tractogram streamlines, thereby enabling accurate segmentation.

[0023] More specifically, the method first identifies regions containing the ends of tractogram streamlines in S30 and provides an initial appropriate partition of the gray matter at the interface with the white matter based on the clustering of tractogram streamlines in S20. Indeed, the method uses a predetermined clustering algorithm to obtain multiple tractogram streamline clusters, thereby grouping tractogram streamlines with similar connectivity profiles, e.g., similar shape and / or spatial similarity between the ends of the tractogram streamline clusters. Thus, when separated, the two extremal regions of each cluster (corresponding to the ends of the tractogram streamlines and the represented white matter fibers) each represent an appropriate region of the gray matter at the interface with the white matter, since they are connected to each other by white matter fiber tissue. For each such cluster, by identifying a respective first region corresponding to one cluster end and a respective second region corresponding to the other cluster end in S30, the method has already reached a biologically meaningful partition (in terms of underlying connectivity) in S30.

[0024] However, due to the clustering step S20 resulting in a large number of clusters, the identification step S30 may result in a large number of regions. Thus, the resulting partition in S30 may be over-granular, with coherent gray matter regions being (undesirably) subdivided into separate regions without any proper biological distinction between them. Therefore, to determine the partition in S40, the method iteratively merges pairs of regions that overlap each other based on a metric representing the amount of overlap. This allows the method to identify overlapping regions that biologically belong to a single parcel and merge such regions. This allows the method to arrive at a usable number of parcels in the final partition and further ensures that the partition is biologically accurate (i.e., each corresponds to one and only one parcel in the final partition, is a coherent gray matter region / parcel based on connectivity—and therefore in terms of brain activity—and such coherent regions are not unnecessarily subdivided).

[0025] The method may further comprise displaying (eg, to one or more physicians) a three-dimensional representation of the segment, eg, presenting / highlighting grey matter represented by regions of different colours.

[0026] The segmentation based on the identified regions may be usable to diagnose and / or treat a patient with respect to a physical condition. In other words, the method may comprise using the results of the method to diagnose and / or treat where at least one parameter depends on the segmentation. For example, the method may comprise displaying (e.g., to one or more physicians) a three-dimensional representation of the segmentation, e.g., presenting / highlighting gray matter represented by regions of different colors. Alternatively, or additionally, the output of S20 may be input to an automated process for such use.

[0027] The method is computer-implemented, meaning that the steps (or substantially all steps) of the method are performed by at least one computer or any similar system. Thus, the steps of the method are performed by the computer, possibly fully or semi-automatically. In embodiments, initiation of at least some steps of the method may occur through user-computer interaction. The level of user-computer interaction required may depend on the level of automation envisioned and may be balanced against the need to realize the user's wishes. In embodiments, this level may be user-defined and / or predefined.

[0028] A typical example of a computer implementation of the method is performing the method on a system suitable for this purpose. The system may comprise a processor coupled to a memory and a graphical user interface (GUI), the memory having recorded thereon a computer program containing instructions for performing the method. The memory may also store a database. The memory may be any hardware suitable for such storage and may comprise several physically separate components (e.g., one for the program and possibly one for the database).

[0029] FIG. 2 shows an example of a system, where the system is a client computer system, eg, a user's workstation.

[0030] The client computer in this example includes a central processing unit (CPU) 2010 connected to an internal communication bus 2000 and a random access memory (RAM) 2070 also connected to this bus. The client computer further includes a graphics processing unit (GPU) 2110 associated with a video random access memory 2100 connected to this bus. The video RAM 2100 is also known in the art as a frame buffer. A mass storage controller 2020 manages access to a mass memory device such as a hard drive 2030. Mass memory devices suitable for embodying computer program instructions and data include all forms of non-volatile memory, including, by way of example, semiconductor memory devices such as EPROM, EEPROM, and flash memory devices, magnetic disks such as internal hard drives and removable disks, and magneto-optical disks. Any of the foregoing may be supplemented by or incorporated into a custom-designed application-specific integrated circuit (ASIC). A network adapter 2050 manages access to a network 2060. The client computer may also include a haptic device 2090 such as a cursor control device, keyboard, etc. A cursor control device is used in the client computer to allow a user to selectively position a cursor at any desired position on the display 2080. In addition, the cursor control device allows a user to select various commands and input control signals. The cursor control device includes multiple signal generators for inputting control signals. Typically, the cursor control device may be a mouse, and the buttons on the mouse are used to generate the signals. Alternatively or additionally, the client computer system may be equipped with a sensitive pad and / or a sensitive screen.

[0031] A computer program may include computer-executable instructions, including instructions for causing the system described above to perform the method. The program may be recorded on any data storage medium, including the system's memory. The program may be implemented, for example, in digital electronic circuitry, computer hardware, firmware, software, or a combination thereof. The program may be realized as an apparatus, e.g., an article embodied in a machine-readable storage device for execution by a programmable processor. The method steps may be performed by a programmable processor executing a program of instructions by manipulating input data and generating output to perform the functions of the method. Thus, the processor may be programmable and coupled to receive data and instructions from and transmit data and instructions to a data storage system, at least one input device, and at least one output device. The application program may be implemented in a high-level procedural or object-oriented programming language, or in assembly or machine language, if desired. In either case, the language may be a compiled or interpreted language. The program may be a full installation program or an update program. Application of the program to a system, in any case, results in instructions that perform the method. The computer program may alternatively be stored and executed on a server in a cloud computing environment, the server being in communication with one or more clients over a network, in which case the processing unit executes the instructions contained in the program, thereby causing the method to be performed in the cloud computing environment.

[0032] The present method is for segmenting gray matter of the brain of a human patient. In other words, the method determines regions or "parcels" (e.g., cortical and / or subcortical) of gray matter of the brain represented by a tractogram. This means that the method takes as input a tractogram of the brain of a human patient and outputs regions (e.g., a three-dimensional representation thereof) representing the gray matter. Each region or parcel is a cohesive area in the sense of brain function. The present method thus allows for the determination of cohesive areas of gray matter.

[0033] The method includes obtaining a tractogram of the brain of the human patient at S10. The tractogram includes tractogram streamlines. The tractogram streamlines may be represented in three-dimensional space.

[0034] The three-dimensional space may be voxelized, meaning that it includes a grid of voxels, for example, including the patient's brain. The tractogram streamlines may be represented by a voxel grid. The method may include calculating a voxel grid and / or calculating intersections of each streamline with the voxel grid and / or the ends of each streamline with the voxel grid. The method may include, for each first / second end identified in S30, determining each voxel that encompasses the first / second end.

[0035] Any voxel described herein may be a volume element (e.g., a cube) that can be identified by three-dimensional coordinates (e.g., x, y, z coordinates) corresponding to the voxel's location in the voxel grid. A tractogram may be three-dimensionally represented in voxels by projection onto the voxel grid. In other words, the three-dimensional representation in voxels may correspond to the intersection of the tractogram with the corresponding voxel in the voxel grid. It should be understood that the steps of the methods described herein may be performed on a voxel grid in any manner. The voxel grid may include more than 100 or 200 voxels in the width x direction, more than 100 or 200 voxels in the depth y direction, and / or more than 100 or 200 voxels in the height z direction, e.g., a 256 x 256 x 256 voxel grid. The voxel grid may be cubic. Each voxel may be a parallelepiped, such as a cube, and may represent a portion of the brain with a width greater than 0.1 mm or 0.5 mm and less than 2 mm and / or 1.5 mm, a depth greater than 0.1 mm or 0.5 mm and less than 2 mm and / or 1.5 mm, and a height greater than 0.1 mm or 0.5 mm and less than 2 mm and / or 1.5 mm, for example a 1 mm x 1 mm x 1 mm portion of the brain.

[0036] Each voxel further includes information such as one or more labels, each label having information about a respective anatomical classification, for example, a voxel that intersects with the end of a streamline may have a label indicating that it is gray matter.

[0037] Each first region identified in S30 may consist of a set of voxels that includes a respective first end, and each second region identified in S30 may consist of a set of voxels that includes a respective second end, so "region" herein may refer to a set of voxels.

[0038] Tractogram streamlines can be constructed from diffusion voxel models derived from diffusion magnetic resonance images (MRI).

[0039] Obtaining a tractogram S10 may include acquiring (i.e., physically measuring) and / or obtaining a diffusion MRI of the brain. Diffusion MRI may be obtained from physical measurements of the diffusion of water molecules in the brain performed by diffusion magnetic resonance imaging. White matter is tissue in the brain made up of fibers that are grouped together into bundles. Thus, water molecules present in white matter spread out within a constrained environment. Therefore, measuring the diffusion of water molecules in the brain corresponds to finding the tissue of white matter.

[0040] Obtaining a tractogram S10 may also include determining a diffusion voxel model from the diffusion MRI. The diffusion voxel model may be a set of voxels represented in a voxel grid, with each voxel containing a representation of the diffusion of water molecules in the brain. In other words, the diffusion voxel model is a three-dimensional representation of the tractogram in voxels. The diffusion voxel model may be modeled from a mathematical model that determines the diffusion of water molecules from the diffusion MRI for each voxel.

[0041] The diffusion voxel model can be derived from a fiber orientation density function (FOD), which gives the probability that water molecules will spread in one preferred direction. Tractogram streamlines therefore represent three-dimensional lines resulting from the calculated probability that water will spread in one preferred direction, and thus how water moves along the fibers of white matter.

[0042] Acquisition S10 may also include constructing a tractogram from the diffusion voxel model. In other words, acquisition S10 may collect tractogram streamlines resulting from the diffusion voxel model that represent a calculated probability of water spreading in one preferred direction in the brain, as acquired by diffusion MRI. Construction of the tractogram may be performed by selecting an initial location (also called a seed location) in the diffusion MRI. The initial location may be selected in an area of ​​the diffusion MRI that represents white matter. This construction may use the diffusion voxel model to determine a primary diffusion direction at the initial location. Construction of the tractogram streamlines may include, for example, creating a three-dimensional sequence of points that intersects the voxels of the diffusion voxel model, following this primary diffusion direction, until a stopping criterion or another voxel is reached.

[0043] The tractogram obtained at S10 includes tractogram streamlines that represent white matter fibers in the brain and reach their interfaces with gray matter. The tractogram may include full-fiber tractogram streamlines, i.e., tractogram streamlines that model the entire length of white matter fibers along with their interfaces with gray matter. The tractogram may also include non-circular tractogram streamlines, i.e., those that represent fibers that do not return to the same part of the brain's gray matter, thereby ensuring connectivity between two separate parts of gray matter.

[0044] Each (all-fiber, non-circular) tractogram streamline has a first end located in a first portion of the human patient's gray matter. The tractogram streamline has a second end located in a second portion of the human patient's gray matter. For example, constructing a tractogram may include selecting a seed to place at a location on the diffusion MRI that represents the interface between the brain's white matter and gray matter. The first end may correspond to the location of the seed. The second end may correspond to another location at the interface between the brain's white matter and gray matter. In other words, a stopping criterion may include reaching a location that corresponds to the interface between the brain's white matter and gray matter.

[0045] The first and second portions are disjoint with respect to such all-fiber, non-circular tractogram streamlines, i.e., the first and second portions do not overlap on the tractogram (e.g., the concave hull of the first portion does not intersect with the concave hull of the second portion, e.g., the first and second portions do not share voxels).

[0046] Depending on the technique used to acquire the tractogram, the tractogram obtained in S10 may also include "split fiber" tractogram streamlines, i.e., those representing split sections of fibers in the white matter. It is known that tractogram acquisition introduces such split fiber tractogram streamlines. Such split sections may have been accidentally cut during tractogram acquisition, and although the split fiber tractogram streamlines may be anatomically accurate along the split sections, they are incomplete. In fact, the split fiber tractogram streamlines exclude at least one end (e.g., both ends of the split fiber tractogram streamlines) located in each portion of the gray matter. Optionally, an initial tractogram including the split fiber tractogram streamlines is first acquired, and the method can then remove the split fiber tractogram streamlines in S10, leaving only the whole fiber tractogram streamlines.

[0047] The method includes using S20 a predetermined clustering algorithm to obtain a plurality of tractogram streamline clusters. The predetermined clustering algorithm may be represented by a set of instructions configured to receive as input each of a plurality of tractogram streamlines and output a plurality of tractogram streamline clusters. In S20, the predetermined clustering algorithm is provided as input with a plurality of (e.g., some or all) tractogram streamlines of the tractogram obtained in S10.

[0048] A given clustering algorithm may assign tractogram streamlines (from the input tractogram) to respective tractogram streamline clusters based on similarity and / or proximity criteria. The similarity and / or proximity criteria may include criteria (e.g., one or a combination thereof) for the shape, geometric similarity, and / or location of the tractogram streamlines. For example, obtaining respective tractogram streamline clusters may include assigning tractogram streamlines that have similar shapes and are close (in spatial proximity) to a cluster. Assigning tractogram streamlines to respective tractogram streamline clusters may include associating the tractogram streamlines with pieces of data (e.g., labels) that indicate their association with the tractogram cluster. As a result, a tractogram streamline cluster is a set of tractogram streamlines that satisfy the similarity criteria.

[0049] For each tractogram streamline cluster of at least some of the plurality of tractogram streamline clusters (e.g., some or all clusters having all-fiber and non-cyclic tractogram streamlines), the method includes identifying S30 a respective first region of gray matter and a respective second region of gray matter. Each first region includes a first end for each (all-fiber and non-cyclic) tractogram streamline of the cluster. The method also includes identifying each second region of gray matter. Each second region includes a second end for each tractogram streamline of the cluster. In an example, each (first or second) end may be represented by a voxel located at the intersection of the end with a voxel grid. In other words, the method may identify voxels that intersect with the first and second ends in S30.

[0050] Identifying each of the first and second regions may include performing a k-means algorithm on the ends of the tractogram streamlines of the clusters. For example, performing the k-means algorithm may include identifying the first and second regions with k=2. The first region may be identified as one (any) of two clusters of streamline ends output by the k-means algorithm, and the second region may be identified as the other cluster output by the k-means algorithm.

[0051] Additionally or alternatively, the method may identify ends of clusters comprising segmented fiber tractogram streamlines as being part of the first or second region, respectively (unless the method excludes actual segmented fiber tractogram streamlines).

[0052] For example, the method may include performing clustering in S20 using all tractogram streamlines obtained in S10 as input, even segmented fiber tractogram streamlines, and then, for each cluster, identifying all streamline ends that enter gray matter (thus, if the method has not excluded segmented fiber streamlines, excluding ends of segmented fiber streamlines that do not enter gray matter; otherwise, all ends of all fiber streamlines enter gray matter). This allows for excluding ends of segmented fiber tractogram streamlines that do not correspond to fiber ends and therefore do not enter gray matter, but rather correspond to points in the midsection of fibers and enter white matter. Identifying streamline ends that enter gray matter may include determining voxels that intersect each of the streamline ends and evaluating whether the voxels represent gray matter (e.g., whether the label associated with the voxels represents gray matter).

[0053] As a result of performing the k-means algorithm as described above, each of the first regions is separated from each of the second regions. The method may optionally exclude circular flow lines from the first and second regions. For example, if the k-means algorithm results in two resulting regions being too close to each other, for example, when the distance between the two resulting regions is less than a predetermined threshold, the method may consider this to be a "circular" cluster and discard it.

[0054] The method includes determining S40 a partition based on the identified regions. In other words, the method determines first and second regions of gray matter represented by each of the identified first and second regions. The determination of the partition includes an iterative merging process. The iterative merging process may include iterative application to the identified first regions and iterative application to the identified second regions.

[0055] The iterative merging process may include merging the regions of a region pair at each iteration based on a metric representing the amount of overlap. In other words, the method iterates through the region pairs and determines whether the regions of each pair overlap. By "merging," it is intended that the edges contained in each region of the pair are aggregated to form a single region. In other words, this single region includes all edges contained in the region pair. By "overlapping," it is intended that there is an intersection of a concave hull of a region of a pair with another concave hull of a second region of the pair. For example, any region pair described herein may overlap if there is at least one voxel in common between each region of the pair.

[0056] The iterative merging process may include a (first) stage that includes determining a metric value for each region pair at each iteration, whereby the metric value quantifies the overlap between the regions of the region pair. The metric may take on values ​​(e.g., real numbers) in a non-negative range, i.e., values ​​greater than or equal to zero and less than a maximum value. The metric value may increase in a non-negative range according to a measure of relative overlap between the regions of the region pair. In other words, the metric value may increase if the overlap of the region ranges increases. For example, if the iterative merging process calculates a metric value of zero for each region pair, the regions of the region pair do not overlap. If the iterative merging process calculates a metric value of maximum value for each region pair, the regions of the region pair completely overlap.

[0057] The metric representing the amount of overlap can be any measure of the degree of overlap between two regions, such as the dice score between the two regions. Let A represent one region of a pair and B represent the other region of the pair. The dice score can be defined as twice the number of edges in A and B divided by the number of edges in A plus the number of edges in B.

[0058] The dice score is It can be of the type TIFF2026012648000006.tif12170.

[0059] If the dice score is close to 1 (e.g., approximately equal to 1), it means that regions A and B have many edges in common, i.e., the two regions overlap significantly. If the dice score is close to 0 (e.g., approximately equal to zero), it means that regions A and B have few edges in common, i.e., the two regions do not overlap significantly.

[0060] A first stage of the iterative merging process may include merging regions of one or more respective (e.g., multiple) region pairs, each having a metric value greater than a predetermined first threshold. The predetermined first threshold may be a non-negative number set in any manner. For example, when the metric values ​​are dice scores, the predetermined threshold may be any number in the range [0, 1], such as 0.8. For example, the first stage may include merging regions of a region pair having the highest metric value among all region pairs having a metric value greater than the predetermined threshold.

[0061] The first stage of the iterative merging process may be performed until there are no region pairs with metric values ​​greater than a first predetermined threshold, i.e., the iterative process stops when it determines that there are no region pairs with significant overlap.

[0062] An example of the first stage involved in the iterative merging process will now be described.

[0063] In the first iteration, the first stage may include selecting a region pair, e.g., randomly (pair of identified first or second regions). The first stage may include determining a dice score value between the regions of the region pair. If the metric value is less than a predetermined first threshold, the first stage may include proceeding to select another region pair. Otherwise, if the dice score is greater than the predetermined first threshold, the first stage may include merging the region of the region pair having the highest value greater than the predetermined threshold to create a new region.

[0064] In the second iteration, the first stage may include selecting a region pair from the set of regions resulting from the first iteration (after merging the regions of the region pair in the first iteration). In the second iteration, the first stage may include determining a dice score value between the regions for each region pair. If the dice score is greater than a predetermined first threshold, in the second iteration, the first stage may include merging the region of the region pair having a highest value greater than the predetermined threshold to create another new region.

[0065] The iterative merging process may continue in the first stage until a stopping criterion is reached, for example, the first stage may be performed until there are no region pairs with dice score values ​​greater than a predetermined first threshold.

[0066] In one example, the iterative merging process may be followed by further post-processing as described below.

[0067] Thus, the present method improves the segmentation of gray matter in the brains of human patients. In fact, the present method utilizes the connectivity of tractogram streamlines to provide accurate output, since the ends of the tractogram streamlines are located in areas of gray matter. Thus, the segmentation follows the anatomical hypothesis that gray matter is connected by white matter fibers (represented by tractogram streamlines). The present method is efficient thanks to the use of a clustering algorithm. In fact, a given clustering algorithm collects tractogram streamlines with similar shapes and / or spatial locations in each cluster, thereby reducing the size of the tractogram. A tractogram may contain an infinite number of tractogram streamlines. A given clustering algorithm allows for a reduction in the number of tractogram streamlines and underlying connectivity paths. Therefore, the present method efficiently outputs regions while providing accurate results.

[0068] The method may further include determining the graph before the iterative merging process. Any graph G of the present disclosure may be represented as G = (V, E), where V is a set whose elements are called nodes (also called vertices) and E is a set of edges (also called links).

[0069] The graph comprises, for each tractogram streamline cluster, a first node representing each of the first regions and a second node representing each of the second regions. The graph also comprises edges connecting the first and second nodes, whereby the edges represent each of the tractogram streamline clusters. In other words, the method includes determining a graph from each tractogram streamline cluster and each of its regions such that, for each tractogram streamline cluster, the graph includes edges representing each of the tractogram clusters connecting nodes of node pairs representing the respective first and second region pairs of the tractogram clusters.

[0070] The method may further include merging the nodes of each node pair of graphs representing each of the merged region pairs at each iteration of the first stage. In other words, when the method determines that the regions of the region pair overlap, it combines the nodes of the node pair of graphs representing the merged region pair into one.

[0071] The method may further include evaluating whether the graph is connected after the first stage (and while there are region pairs with dice values ​​greater than a predetermined threshold, in other words, while the iterative merging process continues). In other words, the method includes evaluating, for every node pair, whether there is a path of edges linking the nodes of that node pair. If the graph is not connected, the iterative merging process may include a further (second) stage. In other words, the iterative merging process may include a first stage and a second stage at each iteration. The second stage may include iteratively merging regions of one or more region pairs, where each node pair of the graph represents a merged region pair.

[0072] An example will now be described with reference to Figures 3 and 4.

[0073] 3 illustrates an initialization process for the method. The method includes obtaining a graph 3100. The nodes of graphs 3111, 3121, and 3131 represent a first region, the nodes of graphs 3113, 3123, and 3133 represent a second region, and edges 3112, 3122, and 3132 represent tractogram clusters connecting the nodes of node pairs {3111, 3113}, {3121, 3123}, and {3131, 3133}, respectively. In the initialization process, the graph comprises node pairs {3111, 3113}, {3121, 3123}, and {3131, 3133} linked by edges 3112, 3122, and 3132, respectively.

[0074] The second stage involved in the iterative merging process is now described.

[0075] In a first iteration, the method may include selecting pairs of regions, e.g., randomly (e.g., from among all pairs of identified first regions and all pairs of identified second regions), and this stage may include determining the value of the dice score between the regions of the region pairs.

[0076] FIG. 3 shows region A corresponding to graph node 3121, region B corresponding to graph node 3131, and region C corresponding to graph node 3111. The dice score is defined as twice the number of edges (represented as voxels) contained in region A and contained in region B divided by the sum of the number of edges in A and the number of edges in B. If the dice score is close to 1, it means that areas A and B have many voxels in common. If the dice score is close to 0, it means that areas A and B have few voxels in common. The dice score between regions A and B is Dice(A,B)=0.2. The dice score between regions A and C is Dice(A,C)=0.05.

[0077] If the dice score is less than the first predetermined threshold, the second stage may include proceeding to select another pair of regions. Otherwise, if the dice score is greater than the first predetermined threshold, the second stage includes merging the regions of the region pair, thereby creating a new region. The second stage includes merging the nodes of the node pair corresponding to the region pair, thereby creating a node representing the new region.

[0078] 4 shows the result of the merging process in the first iteration. A predetermined first threshold may be less than 0.2 (e.g., 0.1). Because the dice score between region A and region B is greater than this predetermined threshold, the second stage merges the regions of this region pair into a new region A∪B, which corresponds to node 3130 in the graph representing the union of region A and region B. Thus, the graph representing the regions (nodes and edges are represented by the same reference numerals) is updated by replacing the nodes of regions A and B with the new node 3130.

[0079] In the second iteration, the second stage may include selecting a region resulting from the previous iteration with another region (e.g., chosen randomly or within a predetermined distance from the resulting region). The second stage may include measuring a dice score between the regions of the region pair. If the dice score is greater than a predetermined first threshold, the second stage includes merging the regions of the region pair. The second stage includes merging the nodes of the node pair corresponding to the region pair.

[0080] The iterative merging process (including the first stage and further / second stages) may continue with the first stage until there are no more region pairs with dice scores greater than a predetermined first threshold.

[0081] This improves the accuracy of the segmentation. Indeed, the graph follows the anatomical hypothesis that a graph representing the connectivity of a brain network should be connected. By merging node pairs in addition to merging region pairs in regions, the method ensures that the output follows this anatomical hypothesis. Furthermore, since the regions are located at the interface between gray and white matter, the segmentation provides anatomically relevant information about gray matter according to the connectivity provided by fibrous white matter in the human brain.

[0082] A further / second stage may include identifying a principal connected component of the graph. A principal connected component of the graph may be a largest subgraph of the graph having vertices linked through a path of edges. The further stage may also include identifying one or more subconnected components of the graph. A subconnected component may be a remaining subgraph of the graph having vertices linked through a path of edges that is not connected to the principal connected component.

[0083] A further stage may include iteratively performing a search process for each pair of a node of the principal connected component and a node of each of the minor connected components. In other words, in each iteration, the search process is performed for each node of the principal connected component and each node of the minor connected component. The search process may select each pair randomly, or according to an order or any other type of selection.

[0084] The searching process may include, at each iteration for each pair, re-determining a metric value representing the amount of overlap between the regions corresponding to each pair. In other words, the method calculates a metric value between a node of the primary connected component and each node of the secondary connected component.

[0085] The search process may also include merging each node of the minor connected component with each node of the major connected component that has the highest value of a metric that represents the amount of overlap between the corresponding regions.

[0086] For example, the search process may select a node of the principal connected component, which is fixed. In each iteration, the search process may select each node of the subconnected component and determine each metric value between the regions corresponding to each node pair (each node of the subconnected component is changed during the iteration, while the nodes of the principal connected component are fixed). The method may keep track of the metric value, which represents the amount of overlap, determined in each iteration. After searching each (e.g., all) node of the subconnected component, the method merges each node of the subconnected component with each node of the principal connected component having the highest metric value. In other words, the method connects the principal connected component to the subconnected component by replacing the node pair with the node corresponding to the merge. The graph may be updated to replace the node pair with the node corresponding to the merge, and the edges of the graph are updated accordingly. As a result, the principal connected component is connected to the subconnected component.

[0087] The search process may be performed in parallel, i.e., the method may include setting up a thread for each pair of nodes in the primary connected component and each node in the secondary connected component, so that the search process may be performed efficiently, for example, on a GPU.

[0088] The method may perform the search process until there is no minor connected component with a node representing a region that forms an overlap with the region represented by a node of the major connected component with a metric value (quantifying the overlap between the two regions) greater than zero.

[0089] This improves the accuracy of the segmentation. In fact, this results in merging the nodes of each subconnected component that represent an overlapping region with a region represented by a node of the principal connected component, thus the method strengthens the anatomical hypothesis that the graph representing the brain network should be connected. In this regard, there may still be subconnected components that are isolated from the principal connected graph, since there may be subconnected components that have regions that do not overlap (metric values ​​of zero or up to numerical rounding error) with regions represented by nodes of the principal connected component.

[0090] Determining the partition may include an iterative merging process followed by iterative post-processing of the remaining gray matter regions.

[0091] The iterative post-processing may include determining pairs of overlapping regions (i.e., those remaining from performing the search process) at each iteration. The iterative post-processing may also include determining a portion representing the overlap between the regions, which may be represented, for example, as one or more voxels.

[0092] The iterative post-processing may also include calculating a respective Mahalanobis distance between each region of the region pair and the determined portion. The Mahalanobis distance may be a measure of distance between the portion and a distribution defined by the region. The iterative post-processing may also include assigning the portion to each region of the region pair that has a minimum Mahalanobis distance with respect to the portion.

[0093] Since the partitions contain one area per section, this arrives at a state where there are no overlapping regions, thereby post-processing strengthens the anatomical hypothesis that the graph representing the brain network should be connected, since minor connected components isolated from the main connected graph are connected.

[0094] Each Mahalanobis distance is It can be of type TIFF2026012648000007.tif12170, where: TIFF2026012648000008.tif5170 is the average of the voxels in the corresponding regions of the region pair. TIFF2026012648000009.tif5170 is the standard deviation of voxels in corresponding regions of the region pair, TIFF2026012648000010.tif5170 is the location of the voxels that belong to the given part.

[0095] Each Mahalanobis distance ensures that a voxel that belongs to more than one region is assigned to only one region, so the output partition does not present overlapping voxels, i.e., the resulting graph is connected and each voxel at the interface between white and gray matter in the brain belongs to one region. Thus, the method satisfies the anatomical assumptions and the constraint of having only one area at each voxel, and is therefore anatomically accurate.

[0096] The method may further include determining subregions after performing the iterative post-processing. Each subregion is, by definition, a (first or second) region in which the average number of voxels (representing the first or second edges, respectively) is less than a predetermined second threshold. The method may, for example, count the number of (first or second) edges (e.g., represented by voxels) comprised by each (first or second) region and calculate the average number of edges per region. The predetermined second threshold may be a user-defined threshold times the average number (i.e., the user-defined threshold multiplied by the average number). If the average number of voxels in a region is less than the predetermined second threshold, the method determines that the region is a subregion.

[0097] The method may further include determining, for each small region, a nearby large region, which is by definition a region (either first or second) whose average number of voxels is greater than a predetermined second threshold. By nearby, we mean spatially close to the small region.

[0098] The method may further include counting the most present anatomical classifications among the anatomical classifications associated with each of the determined nearby large regions. For example, the nearby large region may be associated with one or more labels, each label having information of a respective anatomical classification. The method may count the most present labels of each anatomical classification.

[0099] The method may further include, for each small region, assigning voxels (representing the first or second end) of the (first or second) small region to each of the largest number of nearby large regions in the anatomical classification. In other words, the assignment is voxel-wise to the largest number of nearby large regions in the anatomical classification. The method may proceed voxel-by-voxel such that voxels included in a small region are assigned to nearby large regions. The method may stop assigning when there are no small regions.

[0100] This results in improved segmentation: in effect, the method merges small regions with larger regions so that there is no redundant or useless information that can clutter up the information (as represented by the labels) already presented in the larger regions.

[0101] The method thus generates a partition of the gray matter at its interface with the white matter at this stage, which can then be used (e.g., displayed and / or for diagnosis / treatment) as described above. The method may further comprise determining a partition of the entire gray matter based on this (intermediate) partition of the gray matter at its interface with the white matter. This may be done in any manner. For example, the method may comprise assigning each voxel representing gray matter to its nearest region found in the intermediate partition. The method may perform this assignment using distance information between each voxel of gray matter and its nearest labeled voxel found in the intermediate partition.

[0102] The predetermined clustering algorithm may be any algorithm configured to cluster multiple tractogram streamlines based on spatial proximity and / or shape similarity.

[0103] Certain clustering algorithms are further described herein with reference to FIG.

[0104] The predetermined clustering algorithm receives a plurality of tractogram streamlines as input. In other words, the predetermined clustering algorithm may be applied to the tractogram streamlines of a tractogram to obtain each of a plurality of tractogram streamlines. The predetermined clustering algorithm may receive all-fiber, acyclic, and / or segmented fiber tractogram streamlines (e.g., only all-fiber tractogram streamlines) as input and output a plurality of tractogram streamline clusters. In other words, the following predetermined clustering algorithm steps may be performed on the input all-fiber, acyclic, and / or segmented fiber tractogram streamlines to calculate the output tractogram streamline clusters. Thus, the output tractogram streamline clusters may include all-fiber, acyclic, and / or segmented fiber tractogram streamlines. For example, at least some (e.g., one or more or all) of the tractogram streamline clusters may include only all-fiber tractogram streamlines.

[0105] The method may include obtaining the threshold value as a predetermined third threshold.

[0106] The predetermined clustering algorithm may include assigning initial tractogram streamlines to initial tractogram streamline clusters Q20. The initial tractogram streamlines may be selected in any manner, for example, randomly selected from all tractogram streamlines. In an example, the initial tractogram streamlines may be selected according to the indexing (e.g., indexing is indicated) of the tractogram streamlines determined when the tractogram was obtained.

[0107] The predetermined clustering algorithm may also include iteratively examining Q30 subsequent tractogram streamlines for each of the plurality of tractogram streamlines. In other words, the predetermined clustering algorithm may traverse all other tractogram streamlines that were not selected as the initial tractogram streamline. The examination may be performed in any manner; for example, if the tractogram streamlines are indexed, the method may iteratively examine (e.g., one by one) the indices of subsequent tractogram streamlines (e.g., above or below) the initial tractogram streamline.

[0108] For each subsequent tractogram streamline, with respect to the predetermined distance Q40, the predetermined clustering algorithm may also include calculating Q410 a respective distance value between the subsequent tractogram streamline and the centroid of each of the already existing tractogram streamline clusters.

[0109] By "each subsequent tractogram streamline" is meant a tractogram streamline that is examined by a given clustering algorithm. By "already existing" tractogram streamline cluster is meant any tractogram streamline cluster previously created by a given clustering algorithm, e.g., an initial tractogram streamline cluster when no other tractogram streamline clusters exist.

[0110] The centroids may be the average tractogram streamlines for each of the tractogram streamline clusters with respect to the other tractogram streamlines already included in that cluster (e.g., assigned by label). That is, the centroids may be tractogram streamlines (e.g., a series of three-dimensional points) that are assigned to (i.e., included in) a tractogram streamline cluster and that correspond to an average position with respect to the other tractogram streamlines included in that cluster. The average position may be relative to an average distance (e.g., the same predetermined distance) for the other tractogram streamlines already included in the cluster; for example, the centroid may be the tractogram streamline that extends to the geometric mean (within some rounding error) of the other tractogram streamlines already included in the cluster (e.g., the initial tractogram streamline if the algorithm examines subsequent tractogram streamlines after assignment Q20). For example, when tractogram streamlines are indexed in a cluster, the mean may be a numerical mean. When a tractogram streamline is assigned to a tractogram streamline cluster, that is, each time a new tractogram streamline is assigned to a tractogram streamline cluster, the centroid of the tractogram streamline cluster may be dynamically relocated.

[0111] Calculation Q410 may be the result of a respective calculation of a predetermined distance between the subsequent tractogram streamline and the centroid for each cluster already present.

[0112] An example of a predetermined distance is now described.

[0113] The predetermined distance may be a minimum direct-flip distance. See FIG. 6, which shows for two tractogram streamlines 4100, 4200, where the minimum direct flip distance of type TIFF2026012648000011.tif8170 can be TIFF2026012648000012.tif6170 and The smallest of the terms in TIFF2026012648000013.tif8170, where: TIFF2026012648000014.tif5170 shows two points of the input tractogram streamlines s16100 and s26200.

[0114] term TIFF2026012648000015.tif5170 is the point of two tractogram streamlines s1 and s2. This shows the maximum Euclidean distance (also called the straight-line distance) between the points TIFF2026012648000016.tif8170. TIFF2026012648000017.tif8170 can be obtained in any way, for example, by applying a similar discretization to the two tractogram streamlines (uniform or non-uniform, but with the same number of points for the two tractogram streamlines), or by sampling points from the two tractogram streamlines s1 and s2. The points can be ordered, and the method can compare distances between points with the same order. For example, two tractogram streamlines s1 and s2 may have an ordered series of points 6101-6105 (for tractogram streamline s1) and 6201-6205 (for tractogram streamline s2). Thus, the direct distance TIFF2026012648000018.tif5170 may calculate the maximum Euclidean distance between two points, for example (6101, 6201), (6102, 6202), etc.

[0115] term TIFF2026012648000019.tif6170 shows the flip distance term. Let f and s denote the two points of each tractogram streamline, and s F , f F Denoting two points corresponding to a flip in each tractogram streamline (or a permutation in each tractogram streamline) as TIFF2026012648000020.tif6170. In other words, f and s FThe flip distance between F is the same as the distance between and s. For example, the term TIFF2026012648000021.tif6170 can, for example, calculate the distance between two end points (4101, 4205) corresponding to the first and last points of each tractogram streamline s1 and s2, respectively, and can also calculate the distance between two center points (4103, 4203), i.e., points corresponding to the central points of each tractogram streamline s1 and s2.

[0116] The predetermined clustering algorithm may also include determining Q420 each tractogram streamline cluster having the smallest distance value (with respect to each subsequent tractogram streamline) among the respective distance values ​​calculated in Q410. If there are multiple tractogram streamline clusters with smallest distance values ​​(e.g., equidistant to subsequent tractogram streamlines within some tolerance), the method may randomly select each of the tractogram streamline clusters from among the tractogram streamline clusters.

[0117] If the respective (smallest) distance value is less than a predetermined third threshold Q430, the predetermined clustering algorithm may assign each subsequent tractogram streamline to a respective tractogram streamline cluster Q431. For example, the assignment Q431 may associate each subsequent tractogram streamline with a piece of data (e.g., a label) indicating that it is assigned to the respective tractogram streamline cluster determined in Q420 as having the smallest distance value.

[0118] Otherwise (i.e., the respective minimum distances are greater than a predetermined third threshold), the predetermined clustering algorithm may create subsequent tractogram streamline clusters and assign each subsequent tractogram streamline to the subsequent tractogram streamline cluster Q432. For example, creation Q432 may associate each subsequent tractogram streamline with a piece of data (e.g., a label) indicating that it has been assigned to a new cluster, i.e., part of a new set of tractogram streamlines and thus distinct from other tractogram streamline clusters.

[0119] The method thus improves segmentation: thanks to the use of a predefined clustering algorithm, the method reduces the size of the tractogram by gathering closely located tractogram streamlines with similar shapes (as expressed by achieving a predefined distance).

[0120] Furthermore, when the given distance is the minimum direct flip distance, this results in the method improving the quality of the clusters, as the given clustering algorithm separates tractogram streamlines that are close in the center but far apart around the edges.

[0121] The predetermined clustering algorithm may further include, after assigning all tractogram streamlines of the plurality of tractogram streamlines, recalculating the centroid of each tractogram streamline using a predetermined centroid calculation algorithm. In other words, the predetermined centroid calculation algorithm may recalculate the mean tractogram streamline of the tractogram streamline cluster for the currently assigned tractogram streamline. In fact, after all subsequent assignments, the centroid may have changed. Recalculating the centroid at such time to perform the following steps allows for a trade-off between computational cost and final accuracy, as explained below.

[0122] The clustering algorithm may also include, for each tractogram streamline assigned to a respective tractogram streamline cluster, calculating a respective distance between the tractogram streamline and the centroid of the tractogram streamline cluster with respect to a predetermined distance. For example, the predetermined distance may be a minimum direct flip distance. In addition, the clustering algorithm may also unassign the tractogram streamline from the respective tractogram streamline cluster if the respective distance value is greater than a predetermined threshold. In other words, unassigning removes the association of the tractogram streamline associated with the respective tractogram streamline cluster, for example, by deleting a piece of data indicating the assignment (e.g., a label) or by marking it with another piece of data indicating that it is not assigned to the respective tractogram streamline cluster.

[0123] The predetermined clustering algorithm may also include recalculating the centroid of each tractogram streamline cluster using a predetermined centroid calculation algorithm, in other words, the predetermined centroid calculation algorithm may calculate the mean tractogram streamline of the tractogram streamline cluster for the tractogram streamlines that remain assigned to the respective tractogram streamline cluster after the deallocation.

[0124] The predetermined clustering algorithm may also include calculating, for each tractogram streamline that is not assigned to another respective tractogram streamline cluster, a respective distance value (e.g., a minimum direct flip distance) between the tractogram streamline and the centroid of each tractogram streamline cluster, relative to a predetermined distance.

[0125] The predetermined clustering algorithm may also determine a tractogram streamline cluster having a minimum distance value. If the respective distance values ​​are less than a predetermined threshold (e.g., 0.5 mm or less), the predetermined clustering algorithm may reassign the unassigned tractogram streamline to the determined tractogram streamline cluster. If there are multiple tractogram streamline clusters with the same minimum distance value, the method may reassign the unassigned tractogram streamline to one of the randomly selected tractogram streamline clusters. Otherwise, the predetermined clustering algorithm may create subsequent tractogram streamline clusters and reassign the subsequent tractogram streamline to the subsequent tractogram streamline cluster.

[0126] This further improves the quality of the tractogram segmentation. In fact, it allows for the reassignment of tractogram streamlines that may have been misplaced by a given clustering algorithm, thereby providing finer control over how tractogram streamlines are clustered before using the given centroids to recalculate the centroids of each tractogram streamline cluster. A given clustering algorithm, including centroid recalculation, results in a finer discretization of the tractogram streamlines, where each tractogram streamline is assigned to a different cluster if it does not correspond to its original cluster.

[0127] The predetermined clustering algorithm may obtain another threshold value, which is higher than the threshold obtained in Q10 and set as the predetermined third threshold value. In addition, prior to using the predetermined clustering algorithm and selecting one or more first sets and one or more second sets, the method may include extracting P10 all tractogram streamlines from the tractogram. In other words, the method collects a set of all tractogram streamlines for any (e.g., all) of the following steps P20-P40.

[0128] The method may also include applying a predetermined clustering algorithm to all the extracted tractogram streamlines P20 to obtain an initial plurality of tractogram streamline clusters, e.g., a set of initial tractogram clusters that are not previously associated with any other clusters.

[0129] The method may also include selecting P40 one or more initial sets of tractogram streamlines from the plurality of tractogram streamline clusters. The one or more initial sets of tractogram streamlines selected in P40 may be the sets to which the attribution S20 is performed. Each of the initial tractogram streamline clusters may be selected as the initial set when each of the initial tractogram streamline clusters satisfies a coarser proximity criterion. By "coarser proximity criterion," it is meant that the initial tractogram clusters have a greater distance than the result of applying the step using a predetermined clustering algorithm in step Q10-40. The higher predetermined threshold may be the input threshold. For example, the coarser proximity criterion may have a threshold of 15 mm, while the predetermined threshold used in S20 may be 5 mm.

[0130] The use of a predetermined clustering algorithm (having a threshold lower than the other thresholds as the predetermined third threshold in Q10) to obtain multiple tractogram streamline clusters can be applied to at least some (e.g., all) of the streamlines of one or more initial sets of tractogram streamlines. The use of the predetermined clustering algorithm can determine the locations on the tractogram from which at least some of the one or more initial sets of tractogram streamlines are obtained, for example, according to an initial distribution of the locations or a completely random distribution of the locations.

[0131] This improves the efficiency of the segmentation. Because initial tractogram streamline clusters are selected as an initial set when each of the initial tractogram streamline clusters satisfies a coarser proximity criterion, the selected initial set or sets are a rough (i.e., coarse) first segmentation that removes tractogram streamlines, such as tractogram streamlines that are far outlying or that are not located in a particular region of interest.

[0132] An example of this method will now be described with reference to Figures 7-13.

[0133] In an exemplary embodiment, the method is used to provide an anatomical parcellation of a subject's brain based on the brain's white matter fiber structure. The output parcellation may be referred to as a "connectivity-based" parcellation, in which each voxel of gray matter must be associated with a single cortical or subcortical area.

[0134] FIG. 7 illustrates the inputs of the method.

[0135] Step S10 The method may model the brain's white matter fiber structure using a tractography algorithm on an input diffusion MRI 700. The method begins the tractography algorithm with a seed voxel 701 located at the interface between white and gray matter in the brain.

[0136] The method obtains a tractogram 710 from an input diffusion MRI 700. For example, the method may include determining a diffusion voxel model from the diffusion MRI (e.g., obtained from a Fiber Orientation Density Function). The method may obtain a tractogram from the diffusion voxel model as described above.

[0137] Step S20 Once the method obtains a tractogram (a collection of fibers), it can apply a predetermined clustering algorithm to the tractogram to obtain tractogram streamline clusters. The clustering algorithm is configured to group fibers with similar shapes and spatial locations into a single cluster. In other words, the predetermined clustering algorithm reduces the size of the tractogram. Currently, tractograms contain millions of streamlines, and the clustering algorithm can reduce this number to approximately 3,000 clusters. Each tractogram streamline cluster is described by a centroid, which is the average streamline of all the streamlines in the tractogram streamline cluster.

[0138] Step S30 Once the streamlines are clustered, the method identifies a first region of gray matter that includes a first end of each tractogram streamline in the cluster, a second region of gray matter that includes a second end of each tractogram streamline in the cluster, a voxel located at the endpoint of each cluster, and a k-means algorithm with k=2 to separate the endpoints of the first and second regions.

[0139] FIG. 8 illustrates the identification of each of the first and second regions.

[0140] The method includes obtaining (S10) a tractogram of the brain 810. The method uses a predetermined clustering algorithm (S20) to obtain a plurality of tractogram streamline clusters (N clusters of tractogram streamlines / fibers) 820. For each tractogram streamline cluster 830, the method identifies (S30) a first region of gray matter 831, including a first end for each tractogram streamline of the cluster, and a second region of gray matter 832 (separate from the first region), including a second end for each tractogram streamline of the cluster. The ends (or endpoints) 831, 832 may be represented as three-dimensional points (or voxels). The method identifies the regions using a k-means algorithm with k=2.

[0141] The method's identification of, for each cluster, a set of voxels representing the two edge areas of the cluster makes it possible to obtain a first partition based on connectivity, which is treated by the method as having some areas that share voxels, and which are called overlapping areas.

[0142] Figure 9 shows the output 910 of the identification of the first and second regions. The output shows that 45% of the voxels are overlapped by the regions 920. Histogram 930 shows the histogram of this initial partition. The number of areas in this example partition is 1754, the minimum number of voxels in a region is 1, and the maximum number of voxels in a region is 530. The mean number of voxels in an area is 77.66761687571265, the median is 52.0, and the standard deviation is 83.08571915704944.

[0143] The method introduces a predetermined clustering algorithm as an initialization step for the connectivity-based segmentation method. In fact, the predetermined clustering algorithm reduces the computation time and allows for the initiation of connectivity-based segmentation of the whole brain without external anatomical knowledge, thus making it possible to have a comprehensive method with reduced computational cost.

[0144] Step S40 The method's processing of the resulting initial connectivity-based partitions relies on an iterative process using Dice scores and graph information.

[0145] The initialization process steps are as follows: For each pair of overlapping areas, calculate the dice score between the two considered areas. Construct a graph of areas, where nodes are cortical or subcortical areas and edges are clusters between areas. During initialization, the graph consists of pairs of nodes, which represent the two edge areas of a cluster.

[0146] The method comprises the following iterative steps: · Sort the dice scores and corresponding pairs of overlapping areas from largest (closest to 1) to smallest (closest to 0). Get the maximum dice score and its corresponding pair of overlapping areas, check whether the dice score is greater than a user-defined threshold, and if the dice score is greater than the threshold, Merge the pair of overlapping areas that corresponds to the maximum dice score into a new region, Update the graph to create new nodes corresponding to pairs of merged overlapping areas, Calculate the dice score between the newly created area and all areas it overlaps, Return to the first step, If the dice score is not greater than the threshold, the iteration step is stopped.

[0147] After the iteration step, the number of areas is significantly reduced compared to the initial number of areas, and the graph consists of a corresponding reduced number of nodes. However, some voxels are still shared between the areas of the overlapping area pairs. Since the final connectivity-based partition should include only one area per voxel, the method deals with the final overlapping area pairs and the criteria for it.

[0148] The method uses an anatomical hypothesis for post-processing of the remaining overlapping area pairs and corresponding graphs. The anatomical hypothesis states that graphs representing brain networks should be connected.

[0149] Thus, the next step in the method is to test the connectivity of the graph by doing the following: If the graph is connected, go to the final post-processing step, If the graph is not connected, Obtaining areas that constitute a principal connected component from the graph and isolating areas that are not connected to the principal component of the graph; For each area that is not part of the principal component of the graph, calculating the dice score between the area under consideration and its overlapping area that belongs to the principal component of the graph; Finding the pair of overlapping areas that corresponds to the maximum dice score; Merging pairs of selected overlapping areas; updating the graph to create new nodes corresponding to the merged pairs of overlapping areas and updating the graph edges accordingly; Checking if the graph is connected and returning to the iteration step, Some areas have to be merged by doing

[0150] After the above steps, there are no minor connected components whose nodes represent regions that form an overlap with the regions represented by the nodes of the major connected components with a metric value greater than zero.

[0151] It is possible that some areas still overlap and share voxels. Since the final, connectivity-based partitioning must have only one area per voxel, the method processes voxels that belong to more than one area in a post-processing step.

[0152] For each voxel that belongs to more than one area, the method calculates the Mahalanobis distance between the voxel of interest and each area to which it belongs, and the voxel is assigned to the area that has the smallest Mahalanobis distance from the voxel of interest. The Mahalanobis distance is: TIFF2026012648000022.tif12170, where TIFF2026012648000023.tif5170 is the cluster voxel mean, TIFF2026012648000024.tif5170 is the standard deviation of the cluster voxels, TIFF2026012648000025.tif5170 is the location of the voxel of interest.

[0153] After these steps, the method obtains a connected graph, where each voxel at the white-gray matter interface within the whole brain belongs to only one area, and thus the connectivity-based partitioning satisfies the anatomical assumptions and the constraint of having only one area within each voxel.

[0154] FIG. 10 shows a histogram 1010 of the initial partitioning based on connectivity, and a histogram 1020 after a second stage of merging nodes of node pairs in the graph.

[0155] Some areas are much smaller than others, and post-processing steps are performed as an optional part of the pipeline.

[0156] For each area, the post-processing is as follows: Counting the number of voxels, Calculating the average number of voxels per area; Setting a user-defined threshold to the average number of voxels per area times the threshold (multiplied by the average number of voxels per area); Finding areas with a voxel count below a user-specified threshold, Obtaining areas near the area of ​​interest where the number of voxels is greater than a user-specified threshold; Counting the most present labels in the found neighborhood area, Merging small areas into the most populated area; -updating the graph accordingly, Includes.

[0157] Finally, connectivity-based segmentation is only obtained at the gray-white matter interface voxels. From the segmentation obtained, it is necessary to label the entire gray matter. This label transfer can be performed by our method using distance information between each gray matter voxel and its nearest labeled voxel.

[0158] FIG. 11 shows a section 1110 before post-processing and a section 1120 after post-processing.

[0159] The output of the method can be validated by comparison of the resulting connectivity-based partitions with known functional and anatomical areas, ie, ground truth.

[0160] FIG. 12 shows the ground truth 1210, 1230 compared to the outputs 1220, 1240.

[0161] FIG. 13 shows the ground truth 1310, 1330 being compared with the outputs 1320, 1340.

Claims

1. 1. A computer-implemented method for segmenting gray matter in the brain of a human patient, comprising: obtaining a tractogram of the brain of the human patient, the tractogram including tractogram streamlines, each streamline having a first end located in a first portion of the gray matter of the brain of the human patient and a second end located in a second portion of the gray matter of the brain of the human patient, the first and second portions being separate; - using a predetermined clustering algorithm to obtain a plurality of tractogram streamline clusters; - identifying, for each tractogram streamline cluster of at least some of the plurality of tractogram streamline clusters, a respective first region of gray matter including a first end for each tractogram streamline of the cluster and a respective second region of gray matter including a second end for each tractogram streamline of the cluster, each of the first regions being separate from each of the second regions; determining a partition based on the identified regions, wherein determining the partition comprises an iterative merging process, the iterative merging process comprising, at each iteration, merging regions of pairs of regions based on a metric representing an amount of overlap; A method comprising:

2. The metric representing the amount of overlap is the dice score. The method of claim 1.

3. The iterative merging process, in each iteration, - determining a value of the metric for each pair of regions, the value of the metric thereby representing the amount of overlap between the regions of the pair of regions; - merging the regions of each of one or more region pairs each having a value of said metric greater than a predetermined first threshold, for example the region pair having the maximum value of said metric among all region pairs; a stage comprising: the stages of the iterative merging process are performed until there are no region pairs with values ​​of the metric greater than the first predetermined threshold. The method of claim 1.

4. - before the iterative merging process, determining, for each tractogram streamline cluster, a graph comprising first nodes representing respective first regions, second nodes representing respective second regions, and edges connecting the first nodes and the second nodes, whereby the edges represent respective tractogram streamline clusters; - at each iteration of said stage, merging the nodes of each node pair of said graph representing each pair of merged regions; After the first stage, the iterative merging process includes a further stage of evaluating whether the graph is connected, and if the graph is not connected, iteratively merging regions of one or more region pairs and iteratively merging nodes of each node pair of the graph representing a merged region pair; The method of claim 3 further comprising:

5. The further stage comprises: - identifying a principal connected component of the graph and one or more minor connected components of the graph; performing an iterative search process for pairs of each node of the primary connected component and each node of the secondary connected component, the search process performing, for each pair in each iteration: - re-evaluating a metric representing the amount of overlap between the regions corresponding to each pair; - merging each node of the minor connected components with each node of the principal connected component having the largest value of a metric representing the amount of overlap between the corresponding regions, the searching process being performed until there are no minor connected components having nodes representing regions that form an overlap with the regions represented by the nodes of the principal connected components, the metric having a value greater than zero; The method of claim 4, comprising:

6. Determining the partition includes performing iterative post-processing on the remaining regions of gray matter after the iterative merging process, the iterative post-processing comprising, at each iteration: - determining pairs of overlapping regions and determining portions representing the overlap between said regions; calculating a respective Mahalanobis distance between each of the paired regions and the determined portion; - assigning said portions to each of said pairs of regions with the smallest Mahalanobis distance; The method of claim 1 , comprising:

7. Each of the Mahalanobis distances is where: is the mean of the voxels of the corresponding regions of the pair, is the standard deviation of the voxels of the corresponding regions of the pair, is the location of a voxel belonging to the given part, The method of claim 6.

8. After performing the iterative post-processing, - determining sub-regions, each sub-region being a region having an average number of voxels less than a predetermined second threshold; ・For each small area, - determining nearby large regions, where large regions are regions whose average number of voxels is greater than said second predetermined threshold; Calculating the most prevalent anatomical classification among the anatomical classifications associated with each of the determined large neighborhood regions; assigning voxels of said small regions to each of the largest number of nearby large regions within an anatomical classification; The method of claim 6 further comprising:

9. The predetermined clustering algorithm performs the following for each of the plurality of tractogram streamlines: Obtaining a threshold value as a predetermined third threshold value (Q10); Assigning initial tractogram streamlines to initial tractogram streamline clusters (Q20); - iteratively examining subsequent tractogram streamlines of each of the plurality of tractogram streamlines (Q30); For each subsequent tractogram streamline, for a given distance (Q40), Calculating (Q410) each distance value between the subsequent tractogram streamline and the centroid of each existing tractogram streamline cluster; Finding each tractogram streamline cluster with the smallest distance value (Q420); - assigning each of the subsequent tractogram streamlines to each of the tractogram streamline clusters if each of the distance values ​​is less than the third predetermined threshold (Q430); - if each of the distance values ​​is not less than the third predetermined threshold, creating a subsequent tractogram streamline cluster and assigning each of the subsequent tractogram streamlines to the subsequent tractogram streamline cluster (Q432); The method of claim 1 , comprising:

10. After assigning all of the tractogram streamlines among the plurality of tractogram streamlines, the predetermined clustering algorithm recalculating the centroid of each tractogram streamline cluster using the predetermined centroid calculation algorithm; For each tractogram streamline assigned to each of the tractogram streamline clusters, with respect to said predetermined distance: - calculating each distance value between the tractogram streamline and the centroid of each of the tractogram streamline clusters; - unassigning the tractogram streamline from each of the tractogram streamline clusters if each of the distance values ​​is greater than the third predetermined threshold; - Re-calculating the centroid of each tractogram streamline cluster using the predetermined centroid calculation algorithm; For each tractogram streamline that is unassigned from each of the other tractogram streamline clusters, with respect to said predetermined distance: - calculating a distance value between each of the tractogram streamlines and the centroid of each tractogram streamline cluster; Finding the tractogram streamline cluster with the smallest distance value; reassigning the unassigned tractogram streamlines to the determined tractogram streamline clusters if each of the distance values ​​is less than the third predetermined threshold; - creating a subsequent tractogram streamline cluster and reassigning the subsequent tractogram streamline to the subsequent tractogram streamline cluster if each of the distance values ​​is not less than the third predetermined threshold; 10. The method of claim 9, comprising:

11. the predetermined distance is a minimum direct flip distance; 10. The method of claim 9.

12. The predetermined clustering algorithm obtains another threshold value, the another threshold value being higher than the threshold value, and prior to the step of using the predetermined clustering algorithm, the method further comprises: Extracting all tractogram streamlines from the tractogram (P10); applying the predetermined clustering algorithm to all the tractogram streamlines to obtain a plurality of initial tractogram streamline clusters (P20); selecting (P40) one or more initial sets of tractogram streamlines from the plurality of initial tractogram streamline clusters, each of the initial tractogram streamline clusters being selected as an initial set, such that each of the initial tractogram streamline clusters satisfies a coarser proximity criterion; Including, using the predetermined clustering algorithm to obtain the plurality of tractogram streamline clusters is applied to at least some streamlines of the one or more initial sets of tractogram streamlines; 10. The method of claim 9.

13. A computer program comprising instructions for carrying out the method according to any one of claims 1 to 12.

14. A computer-readable storage medium having the computer program according to claim 13 recorded thereon.

15. 14. A system comprising a processor coupled to a memory, the memory having the computer program of claim 13 stored therein. system.