Как прочитать значение тега dicom, используя openDicom.net в C #? - PullRequest
1 голос
/ 08 сентября 2010

Я читаю тэги dicom, используя openDicom.net, вот так:

string tag = "";
string description = "";
string val_rep = "";

foreach (DataElement elementy in sq)
{
    tag = elementy.Tag.ToString();
    description = elementy.VR.Tag.GetDictionaryEntry().Description;
    val_rep = elementy.VR.ToString();
}

Как прочитать значения тегов dicom?

Ответы [ 3 ]

1 голос
/ 30 марта 2011

метод value.ToString() не реализован. Реализуйте свой собственный метод в Value.cs, и вы получите значение для «Value».

Например (только строки и числовые значения):

public override string ToString()
{
 return valueList[0].ToString();
}
0 голосов
/ 06 января 2015

Значение тега извлекается как массив универсального объекта из элемента «Value» в «DataElement» с использованием метода переопределения «ToArray ()» в классе «Value».

cniDicomTagList = new List<CNIDicomTag>();
foreach (DataElement element in sq)
{
     string tag = element.Tag.ToString();
     string description = element.VR.Tag.GetDictionaryEntry().Description;
     object[] valueArr = element.Value.ToArray();
     cniDicomTagList.Add(new CNIDicomTag(tag, description, valueArr));
}
0 голосов
/ 08 сентября 2010

Я предполагаю, что sq - это последовательность ...

Я не работал с openDicom, но я почти уверен, что то, что вы там делаете, не даст вам результатов.want.

У вас есть один тег, описание и переменная val_rep, но вы заполняете их, используя foreach, то есть последний DataElement в Sequence будет единственными полученными вами значениями.Вы можете достичь того же эффекта, используя:

string tag = sq[sq.Count - 1].Tag.ToString();
string description = sq[sq.Count -1].VR.Tag.GetDictionaryEntry().Description;
string val_rep = sq[sq.Count - 1].VR.ToString();

Таким образом, получая последний набор значений из последовательности.Я полагаю, что вы обнаружите, что если вы выполните шаг foreach во время его выполнения, он загрузит все различные элементы DataElements, содержащиеся в вашем файле DICOM.

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

...