Как добавить частный тег DICOM с помощью библиотеки ClearCanvas? - PullRequest
2 голосов
/ 10 марта 2020

Кто-нибудь успешно добавил частный тег DICOM в файл DICOM с помощью библиотеки ClearCanvas?

Следующий фрагмент кода - это то, что я пытаюсь добавить частный тег в набор данных файла DICOM. Но я не могу найти его, когда открываю сохраненный файл DICOM с помощью средства просмотра MicroDicom.

DicomTag tag = DicomTag.GetPrivateCreatorTag(0X7FE1, 0X0010); DataSet[tag].SetStringValue("Left");

Кто-нибудь знает причину?

Ответы [ 2 ]

1 голос
/ 10 марта 2020

Я никогда не использовал инструментарий, но я вижу проблему в вашем коде.

Вы правильно создаете закрытый тег и также правильно устанавливаете его значение.
Но вы не добавляет этот недавно созданный закрытый тег в набор данных.

Я не уверен в синтаксисе. Вы создали тег. Теперь вам нужно загрузить файл, в который вы хотите добавить этот тег. Вы получаете доступ к экземпляру набора данных DICOM и добавляете новый тег в его индексатор. Затем сохраните файл.

0 голосов
/ 11 марта 2020

Мой коллега узнал причину для меня. Фрагмент кода создания для частного тега выглядит следующим образом:

new DicomTag((uint)group << 16 | (uint)(element >> 8), "Private Creator", "PrivateCreator", DicomVr.LOvr, false, 1, 1, false);

номер элемента сместится влево на 8 бит, поэтому, когда я установлю его на 0X0010, номер элемента будет установлен на ноль. Когда я изменяю его на 0x0100, закрытый тег будет найден программой просмотра MicroDicom.

...