Ускорение Dicom Writer - PullRequest
       32

Ускорение Dicom Writer

0 голосов
/ 07 ноября 2019

Я работаю над C # Conic Dicom Writer, который будет изменять значения тегов для набора данных. Файлы, над которыми я работаю, находятся на сервере, я не могу загрузить их локально для изменения. Что у меня работает, но работает довольно медленно.

Я указываю путь к каталогу, содержащему файлы dicom. Затем я запускаю свой метод, который модифицирует dicom и обновляет значения.

using System;
using System.Collections.Generic;
using System.Text;
using Dicom;

namespace SpiromicsImporterPrep.DicomMethods
{
    class ModifyDicom
    {
        public static void ModifyCommonDicomTags(string path_to_file)
        {
            try
            {
                //this will put all of the dicom files that are in a directory into an array, I still need to write a method that
                //will get to the directories that contain the dicom files, once that is done I can use this method. 
                string[] files = System.IO.Directory.GetFiles(path_to_file);
                foreach (var item in files)
                {
                    Console.WriteLine("Modifying the following file: " + item);
                    DicomFile dicomFile = DicomFile.Open(item, FileReadOption.ReadAll);
                    dicomFile.Dataset.AddOrUpdate<string>(DicomTag.PatientName, "NEW-PATIENTNAME");
                    dicomFile.Dataset.AddOrUpdate<string>(DicomTag.PatientID, "NEW-PATIENTID");
                    dicomFile.Dataset.AddOrUpdate<string>(DicomTag.StudyID, "NEW-STUDYID");
                    dicomFile.Save(item);
                }

            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
    }
}

Я ищу несколько советов, которые могли бы ускорить этот процесс, я довольно новичок в разработке на c #. В настоящее время обновление набора данных занимает ~ 8 минут.

...