Neural image data preprocessing system and neural image data preprocessing method
By introducing technologies such as format recognition and conversion, task generation, computing node allocation and result storage in the neural image data preprocessing system, the sharing and preprocessing difficulties caused by the diversity of neural image data are solved, and efficient and automated data processing is achieved.
Patent Information
- Application Number
- CN202411687062.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-22
- Publication Date
- 2025-03-14
- Estimated Expiration
- 2044-11-22
AI Technical Summary
In the prior art, the data formats and naming methods of neural image data are diverse, resulting in difficulty in data sharing, integration and big data analysis, slow preprocessing speed, and unable to meet the actual application needs.
A neural image data preprocessing system is proposed, including file input module, workflow module, workflow scheduling module and file output module. Through steps such as format recognition and conversion, task generation, calculation node allocation and result storage, standardized processing of neural image data is realized.
By introducing format standardization technology, the preprocessing process of neural image data is significantly accelerated, the entire process of data is automated, and the processing efficiency is improved.
Smart Images

Figure CN119621316A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of data processing, and in particular to a neural imaging data preprocessing system and a neural imaging data preprocessing method. Background Art
[0002] Neuroimaging data is a collection of information that can be used to reflect the structure, function, and related physiological and pathological states of the brain, and is widely used in clinical medicine and psychology.
[0003] At present, there are some preprocessing software for neuroimaging data, which has the preprocessing function of functional neuroimaging data and structural neuroimaging data. In the existing technology, different research institutions and researchers use different equipment and software to collect and process data, resulting in a variety of data formats and naming methods for neuroimaging data, which brings great difficulties to the sharing, integration and subsequent big data analysis of neuroimaging data, resulting in a slow preprocessing speed of neuroimaging data, which cannot meet the needs of practical applications. Summary of the invention
[0004] In view of the problems in the prior art, the embodiments of the present invention provide a neural image data preprocessing system and a neural image data preprocessing method, which can at least partially solve the problems in the prior art.
[0005] In a first aspect, the present invention provides a neuroimaging data preprocessing system, comprising a file input module, a workflow module, a workflow scheduling module and a file output module, wherein:
[0006] The file input module is used to identify and convert the format of the original neural imaging data to obtain the neural imaging data in a standard format;
[0007] The workflow module is used to generate corresponding tasks to be processed according to the data information of the neuroimaging data in the standard format;
[0008] The workflow scheduling module is used to allocate computing nodes to the pending tasks corresponding to the neural imaging data in the standard format so that the computing nodes execute the pending tasks corresponding to the neural imaging data in the standard format and complete the preprocessing of the neural imaging data in the standard format;
[0009] The file output module is used to standardize the naming and storage of the preprocessing results corresponding to the original neural imaging data.
[0010] In a second aspect, the present invention provides a method for preprocessing neural image data, which is applied to the neural image data preprocessing system described in any one of the above embodiments, comprising:
[0011] Perform format recognition and conversion on raw neuroimaging data to obtain neuroimaging data in a standard format;
[0012] Generate corresponding tasks to be processed according to the data information of the neuroimaging data in the standard format;
[0013] Allocating computing nodes to the tasks to be processed so that the computing nodes execute the tasks to be processed corresponding to the neural imaging data in the standard format to complete preprocessing of the neural imaging data in the standard format;
[0014] The preprocessing results corresponding to the original neuroimaging data are named and stored in a standardized manner.
[0015] In a third aspect, the present invention provides a computer device, comprising a memory, a processor, and a computer program stored in the memory, wherein the processor executes the program to implement the neuroimaging data preprocessing method described in any one of the above embodiments.
[0016] In a fourth aspect, the present invention provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program / instruction, and when the computer program / instruction is executed by a processor, the method for preprocessing neuroimaging data described in any of the above embodiments is implemented.
[0017] In a fifth aspect, the present invention provides a computer program product, comprising a computer program / instruction, which, when executed by a processor, implements the neuroimaging data preprocessing method described in any of the above embodiments.
[0018] The neuroimaging data preprocessing system and the neuroimaging data preprocessing method provided by the embodiments of the present invention include a file input module, a workflow module, a workflow scheduling module and a file output module, wherein the file input module is used to perform format recognition and conversion on the original neuroimaging data to obtain neuroimaging data in a standard format; the workflow module is used to generate corresponding tasks to be processed according to the data information of the neuroimaging data in the standard format; the workflow scheduling module is used to allocate computing nodes to the tasks to be processed corresponding to the neuroimaging data in the standard format so that the computing nodes execute the tasks to be processed corresponding to the neuroimaging data in the standard format and complete the preprocessing of the neuroimaging data in the standard format; the file output module is used to perform standardized naming and storage on the preprocessing results corresponding to the original neuroimaging data, introduces the format standardization technology of neuroimaging data, accelerates the overall preprocessing process, realizes the full-process automated processing of neuroimaging data, and improves the processing efficiency of neuroimaging data. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the prior art descriptions. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work. In the drawings:
[0020] Figure 1 Schematic diagram of the structure of the neural imaging data preprocessing system provided by the first embodiment of the present invention.
[0021] Figure 2 Schematic diagram of the structure of the neuroimaging data preprocessing system provided by the second embodiment of the present invention.
[0022] Figure 3 4 is a flowchart of a method for preprocessing neuroimaging data provided in the third embodiment of the present invention.
[0023] Figure 4 Schematic diagram of various functional units of the structured image T1w provided by the fourth embodiment of the present invention.
[0024] Figure 5 It is a comparison chart of the data preprocessing effects of the present application and the prior art provided by the fifth embodiment of the present invention.
[0025] Figure 6 It is a schematic diagram of the physical structure of a computer device provided in the sixth embodiment of the present invention. DETAILED DESCRIPTION
[0026] In order to make the purpose, technical scheme and advantages of the embodiments of the present invention clearer, the embodiments of the present invention are further described in detail with reference to the accompanying drawings. Here, the illustrative embodiments of the present invention and their descriptions are used to explain the present invention, but are not intended to limit the present invention. It should be noted that, in the absence of conflict, the embodiments in this application and the features in the embodiments can be combined with each other arbitrarily. The acquisition, storage, use, and processing of data in the technical scheme in this application comply with the relevant provisions of laws and regulations. The user information in the embodiments of the present application is obtained through legal and compliant channels, and the acquisition, storage, use, and processing of user information are authorized and agreed by the customer.
[0027] In order to facilitate understanding of the technical solution provided by this application, the relevant contents of the technical solution of this application are first explained below.
[0028] The existing neuroimaging preprocessing software has a slow preprocessing speed for neuroimaging data and is difficult to meet the requirements of the big data era. In addition, when preprocessing large quantities of neuroimaging data, human intervention is required to set up the use of the software, and it is impossible to automatically preprocess large quantities of neuroimaging data, which reduces the processing efficiency of large quantities of neuroimaging data.
[0029] The present invention proposes a neuroimaging data preprocessing system, which effectively solves the above problems through module splitting technology, deep learning technology, graphics processing unit (GPU) resource scheduling technology, and neuroimaging data standardization technology, and can process neuroimaging data quickly, automatically, and in a standardized manner, and can significantly increase the speed of neuroimaging data preprocessing and improve the efficiency of neuroimaging data preprocessing. This allows researchers to focus on data analysis and scientific research without having to spend a lot of time on neuroimaging data preprocessing.
[0030] This application designs a standardized storage standard for neuroimaging data for neuroimaging data preprocessing, and the entire preprocessing pipeline relies on this standard for file reading and writing. Since the amount of neuroimaging data read and written in the pipeline is frequent and huge, and the standardized neuroimaging data is stored uniquely, there will be no storage redundancy and repeated copying problems when different modules are executed, which significantly reduces the number of pipeline file reads and writes and improves retrieval efficiency. This application not only solves the cumbersome and lengthy file retrieval steps caused by non-standard file formats, but also avoids the problems of low speed and efficiency caused by redundant file reading and writing.
[0031] Figure 1 is a schematic diagram of the structure of the neural image data preprocessing system provided by the first embodiment of the present invention. Figure 1 As shown, the neuroimaging data preprocessing system provided by the embodiment of the present invention includes a file input module 101, a workflow module 102, a workflow scheduling module 103 and a file output module 104, wherein:
[0032] The file input module 101 is used to identify and convert the format of the original neural imaging data to obtain the neural imaging data in a standard format;
[0033] The workflow module 102 is used to generate corresponding tasks to be processed according to the data information of the neuroimaging data in the standard format;
[0034] The workflow scheduling module 103 is used to allocate computing nodes to the tasks to be processed corresponding to the neural imaging data in the standard format so that the computing nodes execute the tasks to be processed corresponding to the neural imaging data in the standard format, and complete the preprocessing of the neural imaging data in the standard format;
[0035] The file output module 104 is used to standardize and name and store the preprocessing results corresponding to the original neural imaging data.
[0036] Specifically, the file input module 101 can identify the data format of the original neuroimaging data and determine whether the data format of the original neuroimaging data is a standard format. If it is not a standard format, the original neuroimaging data will be converted into a standard format of neuroimaging data. Neuroimaging data in a standard format is conducive to data sharing and data analysis, and the neuroimaging data in a standard format will be transmitted to the workflow module 102 for subsequent processing. If it is not a standard format, the file input module 101 can output a prompt message to prompt the user to standardize the neuroimaging data. Among them, the standard format is pre-set, such as the Brain Imaging Data Structure (BIDS) standard format.
[0037] For example, the data format of the original neuroimaging data is DICOM format, which can be converted to NIfTI format through the format conversion tool dcm2niix, and the original data's subject information, modality type, acquisition time, equipment, subject number, scan type, scan sequence and other information can be parsed to obtain standardized naming and storage according to the standard format requirements to obtain standard format neuroimaging data. The data format of the original neuroimaging data can also be converted to a standard format through the format conversion tool dcm2bids or BIDScoin.
[0038] For example, the standard format of the neuroimaging data adopts the BIDS standard format, and the BIDS Validator software tool can be used to identify whether the data format of the original neuroimaging data is the BIDS standard format. If the original neuroimaging data is already in the BIDS standard format, then there is no need to perform format conversion and it can be directly provided to the workflow module 102 for processing.
[0039] The workflow module 102 generates pending tasks corresponding to the neuroimaging data in the standard format according to the data information of the neuroimaging data in the standard format. The pending tasks corresponding to the neuroimaging data in the standard format may include multiple pending tasks and dependencies between the pending tasks, and each pending task is used to complete one or more processes in the neuroimaging data. The pending tasks with dependencies need to be executed in sequence, and the pending tasks without dependencies can be executed in parallel. The pending tasks corresponding to neuroimaging data of different modalities are different. The task information of the pending tasks may include the required computing resources, model identification, etc. For example, the pending tasks corresponding to the neuroimaging data in the standard format may include multiple pending tasks, each pending task corresponds to a functional unit, and each functional unit is obtained by splitting the preprocessing process of the neuroimaging data. When generating pending tasks, a functional unit will be assigned to each pending task.
[0040] The workflow scheduling module 103 can obtain the computing resources of each computing node, and according to the computing resources of each computing node and the computing resources required for the task to be processed, the task to be processed is assigned to the computing node for data preprocessing. The computing node assigned to the task to be processed will execute the assigned task to be processed, complete the corresponding data processing, and then return the data processing result to the file output module 104. Among them, the computing resources include but are not limited to CPU, memory, video memory, etc., which are set according to actual needs and are not limited in the embodiment of the present invention. The computing node can be a local node or a computing node on different distributed platforms.
[0041] After the to-be-processed tasks corresponding to the neural imaging data in the standard format are completed, the preprocessing results corresponding to the original neural imaging data can be obtained. The file output module 104 will standardize the naming and storage of the preprocessing results corresponding to the original neural imaging data. The standardized naming method and storage directory are set according to actual needs, and the embodiment of the present invention does not limit it.
[0042] For example, the preprocessing results corresponding to the original neuroimaging data are stored in the BIDS standard format and stored with a predetermined directory structure, predetermined directory naming, and predetermined file naming.
[0043] The neuroimaging data preprocessing system provided by an embodiment of the present invention includes a file input module, a workflow module, a workflow scheduling module and a file output module, wherein the file input module is used to perform format recognition and conversion on original neuroimaging data to obtain neuroimaging data in a standard format; the workflow module is used to generate corresponding tasks to be processed according to data information of the neuroimaging data in the standard format; the workflow scheduling module is used to allocate computing nodes to the tasks to be processed corresponding to the neuroimaging data in the standard format so that the computing nodes execute the tasks to be processed corresponding to the neuroimaging data in the standard format and complete the preprocessing of the neuroimaging data in the standard format; the file output module is used to perform standardized naming and storage on the preprocessing results corresponding to the original neuroimaging data, introduces the format standardization technology of neuroimaging data, accelerates the overall preprocessing process, realizes the full-process automated processing of neuroimaging data, and improves the processing efficiency of neuroimaging data.
[0044] On the basis of the above embodiments, further, the tasks to be processed corresponding to the neuroimaging data in the standard format include multiple tasks to be processed and dependencies between the tasks to be processed, each task to be processed corresponds to a functional unit, and each functional unit is obtained by splitting based on the preprocessing process of the neuroimaging data.
[0045] Specifically, the tasks to be processed include multiple tasks to be processed and the dependencies between the tasks to be processed. The tasks to be processed are the smallest task units that can be assigned to computing nodes for data processing. The dependencies between the tasks to be processed refer to whether there is a sequence relationship in the execution of the tasks to be processed. If there is no sequence relationship, the tasks to be processed without a sequence relationship can be executed in parallel to improve data processing efficiency; if there is a sequence relationship between multiple tasks to be processed, then the multiple tasks to be processed need to be executed according to the sequence relationship. The dependencies between the tasks to be processed are determined based on the dependencies between the functional units corresponding to the tasks to be processed, and the dependencies between the functional units are predetermined based on the preprocessing process of the neuroimaging data.
[0046] Each task to be processed corresponds to a functional unit, and each functional unit is obtained by splitting the preprocessing process of neuroimaging data. Based on the preprocessing process of neuroimaging data, the preprocessing process is split into multiple sub-processes, each sub-process corresponds to a functional unit, and each functional unit corresponds to at least one sub-process. The functional unit will be configured with a corresponding data processing program to implement data processing of the corresponding sub-process. Each functional unit obtained after splitting will obtain functional unit properties, which may include input files, output files, maximum memory consumption, average CPU consumption, running time, and GPU memory consumption.
[0047] Based on the preprocessing process of neuroimaging data, the functional units can be split according to the following principles:
[0048] (1) There is a file dependency in each preprocessing step in the functional unit. If there is a file dependency between two adjacent steps in the preprocessing process, then the two steps correspond to the same functional unit; if there is no file dependency between two adjacent steps in the preprocessing process, then the two steps can be split into different functional units. For example, the preprocessing process includes three steps, namely step A, step B, and step C. If the execution of step B does not need to depend on the output result of step A, but the execution of step C needs to depend on the output result of step B, then the above preprocessing process can be split into [step A] and [step B, step C]. [step A] corresponds to one functional unit, and [step B, step C] corresponds to another functional unit.
[0049] (2) When each step in the functional unit is running, are the resource consumption of each two adjacent steps roughly the same? For example, the functional unit includes four steps A, B, C, and D that are executed in sequence. A uses 100% of the applied resources when running, B uses 80% of the applied resources when running, C uses 60% of the applied resources when running, and D uses 20% of the applied resources when running. The functional unit can be further split into three functional units, functional unit 1 corresponds to steps [A, B], functional unit 2 corresponds to step [C], and functional unit 3 corresponds to step [D]. After the functional unit is split, functional unit 1 can apply for 100% of the resources of the original functional unit, functional unit 2 can apply for 60% of the resources of the original functional unit, and functional unit 3 can apply for 20% of the resources of the original functional unit. Compared with the original functional unit, the three functional units after the splitting require fewer resources to be applied for by functional unit 2 and functional unit 3, thereby avoiding resource waste and improving resource utilization.
[0050] In the process of splitting the preprocessing process of neuroimaging data to obtain each functional unit, the split result can be continuously adjusted according to the above two principles so that the resource consumption of adjacent steps in the functional unit is roughly the same, and the adjacent steps have a dependency relationship. After each split, the attribute information of the functional unit needs to be updated, including but not limited to input files, output files, maximum memory consumption, average CPU consumption and running time. Based on the input file and the output file, it can be determined whether there is a dependency relationship between the functional units. If the output file or part of the output file of a functional unit is used as the input file of another functional unit, then there is a dependency relationship between the two functional modules; based on the maximum memory consumption and the average CPU consumption, the resource consumption of each step in the functional unit can be determined. After determining the resource consumption of each step in the functional unit, the computing resources required by the functional unit can be determined. When generating a task to be processed, the computing resources required by the functional unit will be used as the computing resources required for the corresponding task to be processed. The computing resources may include CPU requirements, memory requirements, and video memory requirements, etc., which are set according to actual needs, and the embodiment of the present invention does not limit them.
[0051] The present application decomposes the preprocessing process of the structural image T1w magnetic resonance image (hereinafter referred to as T1w MRI) to obtain the data processing process corresponding to each functional unit as follows: after entering the process, the head movement during the scanning process will be corrected first (corresponding to the head movement correction unit), and then the bias field correction based on N4 will be performed (corresponding to the bias field correction unit), and then the brain tissue will be segmented into 95 cortical and subcortical areas (corresponding to the brain tissue segmentation unit), and then the cortical reconstruction of the white matter and gray matter of the brain will be performed (corresponding to the cortical reconstruction unit), and then the cortical surface will be aligned (corresponding to the cortical surface alignment unit), and finally the result of the cortical structure partitioning will be output (cortical structure partitioning unit); in addition, the volume alignment and projection (corresponding to the volume data alignment unit) have no dependency on the above-mentioned processes.
[0052] The specific splitting process is as follows: for the preprocessing flow of T1w MRI, to obtain the above results, according to the fact that there is no dependency between cortical data processing and volume data processing, it is split into two functional units, the cortical data processing unit and the volume data registration unit. Taking the cortical data processing unit as an example, it is found that the resource consumption of the cortical processing unit from the start of execution to the brain tissue segmentation step, from the end of the brain tissue segmentation step to the cortical reconstruction step, and from the end of the cortical reconstruction step to the cortical structure partitioning step is quite different, and after the cortical reconstruction step, the subsequent processing of the left and right cerebral hemispheres has no dependency and can be parallelized, so the cortical processing unit is divided into three functional units, the brain tissue segmentation unit, the cortical reconstruction unit, and the cortical structure partitioning unit. Subsequently, in the brain tissue segmentation unit, it is found that the resource consumption of the head motion correction step, the bias field correction step, and the brain tissue segmentation step is quite different, so the brain tissue segmentation unit is split into the head motion correction unit, the bias field correction unit, and the brain tissue segmentation unit. Subsequently, it was found that the computational resources of the cortical surface registration step in the cortical functional structure partitioning unit and the subsequent cortical structure partitioning step were quite different, so it was divided into a cortical surface registration unit and a cortical structure partitioning unit. Finally, the above-mentioned T1wMRI preprocessing process corresponding to each functional unit was formed.
[0053] By analyzing the split results of the neuroimaging preprocessing process, it was found that some functional units have a long running time. The corresponding functions of the functional units are realized through deep learning technology, and the file input and output are kept consistent. These modules with long running time can be accelerated without affecting the neuroimaging preprocessing process. For example, a cerebral cortex registration model based on deep learning and a brain volume registration model based on deep learning are used. The file interfaces of these two models use the same interface as the previous functional units, which can accelerate the preprocessing process without affecting the overall process. In addition, the process of neuroimaging preprocessing can be improved. By introducing deep learning technology, on the basis of accelerating the corresponding functional units, the steps of the neuroimaging preprocessing process can be reduced due to the reduction of dependencies, and the neuroimaging preprocessing process can be accelerated. For example, the use of a brain structure segmentation model and a cerebral cortex reconstruction model based on deep learning not only accelerates the original functional units, but also reduces time-consuming units.
[0054] On the basis of the above embodiments, further, the data processing program corresponding to the functional unit is encapsulated into a container to support cross-platform use.
[0055] Specifically, for each functional unit, a corresponding data processing program will be configured, and the data processing program corresponding to the functional unit can be encapsulated into a container so that it can be used across platforms. Each functional unit can be implemented using container technologies such as Docker and Singularity.
[0056] On the basis of the above embodiments, further, the multiple functional units include a functional unit that applies a deep learning model.
[0057] Specifically, for the preprocessing process of neuroimaging data, the split part of the process can be implemented using a deep learning model, and the corresponding functional unit is a functional unit that applies a deep learning model. If the functional unit is a functional unit that applies a deep learning model, a model identifier can be set for the functional unit, and the model identifier corresponding to the functional unit will be used as the model identifier of the corresponding task to be processed.
[0058] For example, brain tissue segmentation can be achieved by using deep learning models such as FastSurferCNN, FastSurferVINN, and SynthSeg to achieve brain tissue segmentation of multiple modal neuroimaging data, thereby improving the efficiency of brain tissue segmentation; cerebral cortex reconstruction can be achieved by using deep learning models such as FastCSR and CorticalFlow++, which can quickly reconstruct the cerebral cortex and ensure topological correctness. Compared with neuroimaging preprocessing systems that do not use deep learning models, the process of topological repair of the cerebral cortex surface is reduced, which greatly saves time. Cerebral cortex surface registration can be achieved by using deep learning models such as S3Reg and SUGAR, which reduces the time of cerebral cortex registration and improves the efficiency of cerebral cortex registration. Spatial standardization can be achieved by using deep learning models such as VoxelMorph and SynthMorph, which reduces time consumption and can achieve rigid and non-rigid spatial transformations between different modal neuroimaging data.
[0059] On the basis of the above embodiments, further, the data information includes the modality type of the original neural imaging data, and the workflow module 102 is specifically used to obtain each functional unit corresponding to the modality type and the dependency relationship between each functional unit according to the modality type.
[0060] Specifically, the neuroimaging data includes neuroimaging data of different modal types, and neuroimaging data of different modal types have different preprocessing processes. The modal type of the neuroimaging data and the various functional units required for the preprocessing of the neuroimaging data and the dependencies between the various functional units are pre-set. The workflow module 102 can obtain the modal type of the neuroimaging data in a standard format from the data information of the neuroimaging data in a standard format, and then query and obtain the various functional units corresponding to the modal type and the dependencies between the various functional units according to the modal type of the neuroimaging data in a standard format. When the workflow module 102 generates the tasks to be processed corresponding to the neuroimaging data in the standard format, the tasks to be processed correspond to the functional units one-to-one, and the dependencies between the various functional units are used as the dependencies between the various tasks to be processed.
[0061] Figure 2 is a schematic diagram of the structure of a neural image data preprocessing system provided by the second embodiment of the present invention. Figure 2 As shown, based on the above embodiments, the workflow scheduling module 103 further includes a queue unit 1031 and a resource allocation unit 1032, wherein:
[0062] The queue unit 1031 is used to store multiple tasks to be processed;
[0063] The resource allocation unit 1032 is used to allocate a computing node to each task to be processed, and after determining that the multiple tasks to be processed include a GPU task, allocate a computing node to the GPU task according to the video memory size of the GPU of the computing node, the free video memory size of the GPU of the computing node, and the required video memory size of the GPU task.
[0064] Specifically, the tasks to be processed corresponding to the neuroimaging data in the standard format include multiple tasks to be processed, the queue unit 1031 can store multiple tasks to be processed, and the resource allocation unit 1032 will allocate a computing node to each task to be processed. Each task to be processed has a demand for computing resources, and the resource allocation unit 1032 will allocate a computing node with sufficient computing resources to process the task to be processed to each task to be processed. The resource allocation unit 1032 can distribute each task to be processed to a computing node that meets the computing resource requirements of the task to be processed in a distributed manner for processing.
[0065] For example, the computing resources required for the task to be processed include CPU requirements and memory requirements. The resource allocation unit 1032 will select a computing node that meets the CPU requirements and memory requirements of the task to be processed according to the CPU and memory usage of each computing node, and allocate the task to be processed. After receiving the task to be processed, the computing node will execute the task to be processed, complete data processing, and send the processing result to the file output module 104. Among them, the CPU requirement can be represented by the number of CPUs. For the task to be processed that can be processed by multi-threading, multiple CPUs can be applied to improve processing efficiency. The memory requirement can be represented by the required memory size.
[0066] The resource allocation unit 1032 can determine whether the task to be processed is a GPU task according to the task information of the task to be processed. If the task information of the task to be processed includes a model identifier, it means that the data processing process of the task to be processed needs to be applied to a deep learning model, and the task to be processed is a GPU task, and the GPU processing efficiency is higher. If the task information of the task to be processed does not include a model identifier, then the task to be processed is not a GPU task and can be used as a conventional task to be processed. The resource allocation unit 1032 will obtain the video memory size and free video memory size of the GPU of each computing node, and compare the free video memory size of the computing node with the required video memory size of the GPU task. If the free video memory size of the computing node is greater than or equal to the required video memory size of the GPU task, then the GPU task is allocated to the computing node; if the free video memory size of the computing node is less than the required video memory size of the GPU task, and the video memory size of the GPU of the computing node is greater than the required video memory size of the GPU task, the GPU task can be allocated to the computing node, but it is necessary to wait for more free video memory to appear on the computing node. When the free video memory of the computing node is greater than the required video memory size of the GPU task, the GPU task will be processed. If the video memory size of the computing node is smaller than the required video memory size of the GPU task, then the GPU task will not be assigned to the computing node. It can be seen that the resource allocation unit 1032 will traverse each computing node, filter out the computing nodes whose idle video memory size is larger than the required video memory size of the GPU task, and assign the GPU task; if there is no computing node whose idle video memory size is larger than the required video memory size of the GPU task, then filter out the computing nodes whose video memory size is larger than the required video memory size of the GPU task, and assign the GPU task; if there is no computing node whose idle video memory size is larger than the required video memory size of the GPU task, then the GPU task will be assigned to the computing node as a regular task to be processed, that is, the video memory size will no longer be considered.
[0067] Due to different GPU models, the size of video memory varies greatly. The difference in the video memory occupied by deep learning models is also large. If the deep learning model monopolizes the GPU when in use, it will reduce the utilization of the GPU and increase the preprocessing time of the neural imaging data. Therefore, in the process of applying the deep learning model to process data, the resource allocation unit 1032 schedules GPU tasks based on the video memory usage of the computing node, and preferentially processes GPU tasks through computing nodes with sufficient video memory resources, which is conducive to improving the processing efficiency of neural imaging data.
[0068] On the basis of the above embodiments, further, the neuroimaging data in the standard format is stored in a preset directory and named in a standard manner.
[0069] Specifically, the present application proposes a standardized storage standard for neuroimaging data. For the configuration items of the neuroimaging data configuration files in the standard format, the file storage directory, file naming method, auxiliary file format, storage format, etc. are specified in the file configuration items. During the preprocessing of neuroimaging data, according to the file configuration items of the neuroimaging data, the storage location of the required neuroimaging data-related files can be quickly and accurately retrieved, and then read and write operations can be performed. The file storage directory included in the file configuration item is the preset directory for the storage of neuroimaging data in the standard format. The neuroimaging data in the standard format is standardizedly named according to the file naming method included in the file configuration item.
[0070] For example, neuroimaging data can be named using subject number (subject), experimental session (session), data run (run), and modality type (type).
[0071] On the basis of the above embodiments, further, the neural image data preprocessing system provided by the embodiment of the present invention further includes a visualization module, and the visualization module is used to summarize the preprocessing results of each neural image data and output a visualization report.
[0072] For example, a picture output can be designed for the processing results of each main functional unit, such as the results of brain tissue segmentation of T1w MRI, the results of cerebral cortex reconstruction of T1w MRI, the results of head motion correction of BOLD MRI, and the tSNR (temporal signal-to-noise ratio) of BOLD MRI. Finally, the collected pictures are summarized into a visual report to help users quickly check the correctness of the preprocessing results. The main functional units are set according to actual needs, and the embodiments of the present invention are not limited.
[0073] This application designs a file-based trigger interface, which realizes a fully automated preprocessing process without human intervention by managing the input and output files required for each module. A single module will first quickly locate the specific file directory based on the incoming file configuration items, and retrieve all the required files under this directory. The file configuration items support fuzzy search for large batches of related files, and also support precise search for single target files. After retrieving the required target file, the module can directly read the target file content and auxiliary file content according to the specified format. After processing the data, the module will name the result data file according to the specified format of the current result data file in the file configuration item and the file configuration, and then store it in the specified directory file, and finally transmit the corresponding configuration information of the output file to the dependent module for further processing. Finally, an automated preprocessing pipeline for the entire process is realized.
[0074] Figure 3 is a flow chart of a method for preprocessing neuroimaging data provided by a third embodiment of the present invention. Figure 3 As shown, the neural image data preprocessing method provided by an embodiment of the present invention, applied to the neural image data preprocessing system described in any of the above embodiments, includes:
[0075] S301, performing format recognition and conversion on the original neural imaging data to obtain neural imaging data in a standard format;
[0076] Specifically, the file input module can identify the data format of the original neural imaging data and determine whether the data format of the original neural imaging data is a standard format. If it is not a standard format, the original neural imaging data will be format converted to convert the original neural imaging data into neural imaging data in a standard format.
[0077] S302, generating corresponding tasks to be processed according to the data information of the neural imaging data in the standard format;
[0078] Specifically, the workflow module generates tasks to be processed corresponding to the neuroimaging data in the standard format according to the data information of the neuroimaging data in the standard format. The tasks to be processed corresponding to the neuroimaging data in the standard format may include multiple tasks to be processed and dependencies between the tasks to be processed, and each task to be processed is used to complete one or more processes in the neuroimaging data.
[0079] S303, allocating computing nodes to the tasks to be processed so that the computing nodes execute the tasks to be processed corresponding to the neural image data in the standard format to complete the preprocessing of the neural image data in the standard format;
[0080] Specifically, the workflow scheduling module may obtain the computing resources of each computing node, and according to the computing resources of each computing node and the computing resources required for the task to be processed, allocate the task to be processed to the computing node for data preprocessing.
[0081] S304: Standardize and name and store the preprocessing results corresponding to the original neural imaging data.
[0082] Specifically, the file output module can receive the preprocessing results corresponding to the original neural image data, and then perform standardized naming and storage on the preprocessing results corresponding to the original neural image data.
[0083] The neuroimaging data preprocessing method provided by the embodiment of the present invention can perform format recognition and conversion on original neuroimaging data to obtain neuroimaging data in a standard format; generate corresponding tasks to be processed based on data information of the neuroimaging data in the standard format; allocate computing nodes to the tasks to be processed so that the computing nodes execute the tasks to be processed corresponding to the neuroimaging data in the standard format to complete the preprocessing of the neuroimaging data in the standard format; and perform standardized naming and storage on the preprocessing results corresponding to the original neuroimaging data, thereby realizing the full-process automated processing of neuroimaging data and improving the processing efficiency of neuroimaging data.
[0084] The embodiments of the neuroimaging data preprocessing method provided by the embodiments of the present invention can be specifically described in detail in the embodiments of the above system, which will not be described in detail here.
[0085] The following describes the specific implementation of the technical solution of the present invention by taking the neural image data preprocessing system provided in an embodiment of the present invention as an example of preprocessing of the structural image T1w.
[0086] Based on the preprocessing process of T1w MRI, the functional units for obtaining the structural image T1w include: head motion correction unit, bias field correction unit, brain tissue segmentation unit, cortical reconstruction unit, volume data registration unit, cortical surface registration unit and cortical structure partitioning unit, as well as the dependency relationship among the head motion correction unit, bias field correction unit, brain tissue segmentation unit, cortical reconstruction unit, volume data registration unit, cortical surface registration unit and cortical structure partitioning unit, such as Figure 4 As shown. Among them, the brain tissue segmentation unit, cortical reconstruction unit, cortical surface registration unit, cortical structure partitioning unit, and volume data registration unit each apply a deep learning model, and a model identifier will be set. The above functional units and the dependencies of each functional unit are matched with the modality type of T1w MRI. And the computing resource requirements of each of the above functional units are obtained.
[0087] The collected original T1w MRI is input into the file input module 101. The file input module 101 identifies whether the data format of the original T1w MRI is the BIDS standard format. If it is not the BIDS standard format, the original T1w MRI will be converted to obtain a T1w MRI in a standard format. If it is in the BIDS standard format, subsequent processing will be performed directly. The T1w MRI in a standard format will be stored in a preset directory and named in a standard manner with subject number (subject), experimental session (session), data run (run), and modality type (type). The file input module 101 can parse the original data header information of the original T1w MRI to obtain information such as subject information, experimental session, data run, modality type, acquisition time, equipment instrument, subject number, scan type, scan sequence, etc.
[0088] The workflow module 102 generates corresponding tasks to be processed for the standard format T1w MRI. The workflow module 102 obtains the modality type from the data information of the standard format T1w MRI. According to the modality type of the T1w MRI, the head motion correction unit, the bias field correction unit, the brain tissue segmentation unit, the cortical reconstruction unit, the cortical surface registration unit, the cortical structure partition unit and the volume data registration unit can be queried and obtained, and the dependency relationship among the head motion correction unit, the bias field correction unit, the brain tissue segmentation unit, the cortical reconstruction unit, the cortical registration unit and the cortical structure partition unit is to be performed in sequence, and the volume data registration unit can be performed separately. Generate corresponding pending tasks for the head motion correction unit, the bias field correction unit, the brain tissue segmentation unit, the cortical reconstruction unit, the cortical surface registration unit, the cortical structure partitioning unit and the volume data registration unit, respectively, and obtain pending tasks 1 corresponding to the head motion correction unit, pending tasks 2 corresponding to the bias field correction unit, pending tasks 3 corresponding to the brain tissue segmentation unit, pending tasks 4 corresponding to the cortical reconstruction unit, pending tasks 5 corresponding to the cortical surface registration unit, pending tasks 6 corresponding to the cortical structure partitioning unit and pending tasks 7 corresponding to the volume data registration unit. Based on the sequential relationship of the head motion correction unit, the bias field correction unit, the brain tissue segmentation unit, the cortical reconstruction unit, the cortical surface registration unit and the cortical structure partitioning unit, it is obtained that pending tasks 1, pending tasks 2, pending tasks 3, pending tasks 4, pending tasks 5 and pending tasks 6 are executed in sequence, and pending tasks 7 can be executed separately. The task information of pending tasks 1 and 2 does not include a model identifier. The task information of pending task 3, pending task 4, pending task 5, pending task 6 and pending task 7 includes a model identifier.
[0089] The queue unit 1031 of the workflow scheduling module 103 stores the execution order of pending tasks 1, 2, 3, 4, 5 and 6 in the pending task queue, and stores pending task 7 in the pending task queue.
[0090] The resource allocation unit 1032 of the workflow scheduling module 103 will allocate computing nodes to each pending task. The resource allocation unit 1032 will determine that pending tasks 3, 4 and 5 are GPU tasks, and pending tasks 1 and 2 are regular pending tasks based on the model identifiers included in the task information of the above five pending tasks. The resource allocation unit 1032 will allocate computing nodes to pending tasks 1 and 2 in turn according to the computing resource requirements of pending tasks 1 and 2. The resource allocation unit 1032 will allocate computing nodes to pending tasks 3, 4, 5 and 6 in turn according to the required video memory sizes of pending tasks 3, 4, 5, 6 and 7, and allocate computing nodes to pending tasks 7.
[0091] The computing node assigned to the task 1 to be processed will call the container of the data processing program corresponding to the head motion correction unit, execute the assigned task 1 to be processed, and obtain the processing result of the assigned task 1. The computing node assigned to the task 2 to be processed will call the container of the data processing program corresponding to the bias field correction unit, execute the assigned task 2 to be processed, and obtain the processing result of the assigned task 2. The computing node assigned to the task 3 to be processed will call the container of the data processing program corresponding to the brain tissue segmentation unit, execute the assigned task 3 to be processed, and obtain the processing result of the assigned task 3. The computing node assigned to the task 4 to be processed will call the container of the data processing program corresponding to the cortical reconstruction unit, execute the assigned task 4 to be processed, and obtain the processing result of the assigned task 4. The computing node assigned to the task 5 to be processed will call the container of the data processing program corresponding to the cortical surface registration unit, execute the assigned task 5 to be processed, and obtain the processing result of the assigned task 5 to be processed. The computing node assigned to the task to be processed 6 will call the container of the data processing program corresponding to the cortical structure partitioning unit, execute the assigned task to be processed 6, and obtain the processing result of the assigned task to be processed 6. The computing node assigned to the task to be processed 7 will call the container of the data processing program corresponding to the volume data registration unit, execute the assigned task to be processed 7, and obtain the processing result of the assigned task to be processed 7.
[0092] The file output module 104 can standardize and name and store the processing results of the pending task 1, the processing results of the pending task 2, the processing results of the pending task 3, the processing results of the pending task 4, the processing results of the pending task 5, the processing results of the pending task 6, and the processing results of the pending task 7, respectively. The processing results of the pending task 1, the processing results of the pending task 2, the processing results of the pending task 3, the processing results of the pending task 4, the processing results of the pending task 5, the processing results of the pending task 6, and the processing results of the pending task 7 can be stored in the same root directory, stored in different folders, and stored in the BIDS standard format, each named with an agreed file name. Each processing result can be standardizedly named using the subject number (subject), experimental session (session), data run (run), modality type (type) and processing status (process).
[0093] The same neuroimaging data are preprocessed using an open source software toolkit for preprocessing magnetic resonance imaging (MRI) data in the prior art and the neuroimaging data preprocessing system of the present application. Figure 5 As shown, the technical solution of the present application, in the case of serial processing, can process neuroimaging data more than 10 times faster than the prior art; in the case of batch processing, the cumulative number of processed tests of the present application is more than 10 times that of the prior art; in the case of cluster processing, the resource consumption of the present application is at most 15% of the prior art; in the case of clinical data processing, the completion rate and accuracy of the present application are significantly higher than those of the prior art. Figure 5 In the figure, blue corresponds to the technical solution of the present application, and grey corresponds to the prior art.
[0094] Figure 6 is a schematic diagram of the physical structure of a computer device provided by a sixth embodiment of the present invention. Figure 6As shown, the computer device may include: a processor 601, a communication interface 602, a memory 603 and a communication bus 604, wherein the processor 601, the communication interface 602 and the memory 603 communicate with each other through the communication bus 604. The processor 601 may call the logic instructions in the memory 603 to execute the methods provided by the above-mentioned method embodiments, for example, including: format recognition and conversion of the original neural imaging data to obtain neural imaging data in a standard format; generating corresponding tasks to be processed according to the data information of the neural imaging data in the standard format; allocating computing nodes to the tasks to be processed so that the computing nodes execute the tasks to be processed corresponding to the neural imaging data in the standard format to complete the preprocessing of the neural imaging data in the standard format; and standardizing the naming and storage of the preprocessing results corresponding to the original neural imaging data.
[0095] In addition, the logic instructions in the above-mentioned memory 603 can be implemented in the form of a software functional unit and can be stored in a computer-readable storage medium when it is sold or used as an independent product. Based on such an understanding, the technical solution of the present invention can be essentially or partly embodied in the form of a software product that contributes to the prior art. The computer software product is stored in a storage medium, including several instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0096] The present embodiment discloses a computer program product, which includes a computer program / instructions stored on a non-transitory computer-readable storage medium. When the computer program / instructions are executed by a computer, the computer can execute the methods provided by the above-mentioned method embodiments, for example, including: format recognition and conversion of original neural imaging data to obtain neural imaging data in a standard format; generating corresponding tasks to be processed based on data information of the neural imaging data in the standard format; allocating computing nodes to the tasks to be processed so that the computing nodes execute the tasks to be processed corresponding to the neural imaging data in the standard format to complete the preprocessing of the neural imaging data in the standard format; and standardizing the naming and storage of the preprocessing results corresponding to the original neural imaging data.
[0097] The present embodiment provides a computer-readable storage medium, which stores a computer program / instruction, and the computer program / instruction enables the computer to execute the methods provided by the above-mentioned method embodiments, for example, including: identifying and converting the format of original neural imaging data to obtain neural imaging data in a standard format; generating corresponding tasks to be processed based on data information of the neural imaging data in the standard format; allocating computing nodes to the tasks to be processed so that the computing nodes execute the tasks to be processed corresponding to the neural imaging data in the standard format to complete the preprocessing of the neural imaging data in the standard format; and standardizing the naming and storage of the preprocessing results corresponding to the original neural imaging data.
[0098] Those skilled in the art will appreciate that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0099] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0100] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0101] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0102] In the description of this specification, the description with reference to the terms "one embodiment", "a specific embodiment", "some embodiments", "for example", "example", "specific example", or "some examples" means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic representation of the above terms does not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner.
[0103] The specific embodiments described above further illustrate the objectives, technical solutions and beneficial effects of the present invention in detail. It should be understood that the above description is only a specific embodiment of the present invention and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present invention should be included in the scope of protection of the present invention.
Claims
1. A neural imaging data preprocessing system, characterized in that: It includes a file input module, a workflow module, a workflow scheduling module and a file output module, wherein: The file input module is used to identify and convert the format of the original neural imaging data to obtain the neural imaging data in a standard format; The workflow module is used to generate corresponding tasks to be processed according to the data information of the neuroimaging data in the standard format; The workflow scheduling module is used to allocate computing nodes to the pending tasks corresponding to the neural imaging data in the standard format so that the computing nodes execute the pending tasks corresponding to the neural imaging data in the standard format and complete the preprocessing of the neural imaging data in the standard format; The file output module is used to standardize the naming and storage of the preprocessing results corresponding to the original neural imaging data.
2. The neural image data preprocessing system according to claim 1, characterized in that: The tasks to be processed corresponding to the neuroimaging data in the standard format include multiple tasks to be processed and dependencies between the tasks to be processed. Each task to be processed corresponds to a functional unit, and each functional unit is obtained by splitting based on the preprocessing process of the neuroimaging data.
3. The neural image data preprocessing system according to claim 2, characterized in that: The data processing program corresponding to the functional unit is encapsulated into a container to support cross-platform use.
4. The neural image data preprocessing system according to claim 2, characterized in that: The functional units include a functional unit for applying a deep learning model.
5. The neural image data preprocessing system according to claim 2, characterized in that: The data information includes the modality type of the original neural imaging data, and the workflow module is specifically used to obtain each functional unit corresponding to the modality type and the dependency relationship between each functional unit according to the modality type.
6. The neural image data preprocessing system according to claim 1, characterized in that: The workflow scheduling module includes a queue unit and a resource allocation unit, wherein: The queue unit is used to store multiple tasks to be processed; The resource allocation unit is used to allocate a computing node to each task to be processed, and after determining that the multiple tasks to be processed include a GPU task, allocate a computing node to the GPU task according to the video memory size of the GPU of the computing node, the free video memory size of the GPU of the computing node, and the required video memory size of the GPU task.
7. The neural imaging data preprocessing system according to any one of claims 1 to 6, characterized in that: The neuroimaging data in the standard format are stored in a preset directory and named in a standard manner.
8. A method for preprocessing neural image data based on the neural image data preprocessing system according to any one of claims 1 to 7, characterized in that: include: Perform format recognition and conversion on raw neuroimaging data to obtain neuroimaging data in a standard format; Generate corresponding tasks to be processed according to the data information of the neuroimaging data in the standard format; Allocating computing nodes to the tasks to be processed so that the computing nodes execute the tasks to be processed corresponding to the neural imaging data in the standard format to complete preprocessing of the neural imaging data in the standard format; The preprocessing results corresponding to the original neuroimaging data are named and stored in a standardized manner.
9. A computer device comprising a memory, a processor and a computer program stored in the memory, characterized in that: The processor executes the computer program to implement the method of claim 8.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program / instruction, and when the computer program / instruction is executed by a processor, the method of claim 8 is implemented.
11. A computer program product comprising a computer program / instructions, characterized in that The computer program / instructions implement the method of claim 8 when executed by a processor.
Citation Information
Patent Citations
Method and apparatus for identifying pathological picture
CN108596882A
Medical data distributed storage method and system
CN109887576A
Image transformation method and device
CN113821338A
Distributed CT imaging and intelligent diagnosis and treatment system and method
CN116646061A