Fo-dicom Как я могу вызвать мой файл Output.dcm в Main
Я новичок в Fo-Dicom, я пытаюсь вызвать мой файл output.dcm в Dicom Dump, я пытаюсь добавить личные теги, используя fo-dicom
string filename = "output.dcm";
DicomDataset ds = new DicomDataset(); //Main dataset
ds.Add(DicomTag.SpecificCharacterSet, txtCharacherSet.Text);
//Add some items
ds.Add(DicomTag.PatientID, txtid.Text);
ds.Add(DicomTag.PatientName, txtname.Text);
DicomDataset sqContent = new DicomDataset();
//Content of the sequence
sqContent.Add(DicomTag.Modality, txtModality.Text);
sqContent.Add(DicomTag.ScheduledProcedureStepStartDate,
DateTime.Now.Date);
DicomSequence sq = new
DicomSequence(DicomTag.ScheduledProcedureStepSequence, sqContent);
// Create sequence, add content
ds.Add(sq); //Add sequence to main dataset
DicomFile file = new DicomFile();
file.Dataset.Add(ds); //Add main dataset to DicomFile
file.FileMetaInfo.TransferSyntax =
DicomTransferSyntax.ImplicitVRLittleEndian;
//Specify transfer syntax
file.Save(filename); //Save file to disk
Этот код работает хорошо, но мои личные теги не отображаются в форме отображения.
1 ответ
Я не совсем уверен, правильно ли я понимаю, что вы хотите сделать. Но, как я вижу, вы хотите анонимизировать набор данных, это означает, что вы хотите записать свои собственные значения в общедоступные теги dicom по умолчанию (закрытые теги - это термин, определенный в DICOM, и означающий теги, которые не определены в стандарте DICOM).,
Я бы порекомендовал вам сделать следующее: сначала откройте первый файл
DicomDataset ds = DicomFile.Read("input1.dcm").Dataset;
вместо создания полностью нового экземпляра DicomDataset. Затем добавьте всю информацию из второго заголовка:
ds.AddOrUpdate(DicomTag.PatientId, txtid.Text);
...
AddOrUpdate добавляет DicomTag, если он еще не существует, или заменяет его новым значением, если оно существует.