【问题标题】:How to read dicom tag value using openDicom.net in C#?如何在 C# 中使用 openDicom.net 读取 dicom 标签值?
【发布时间】:2010-09-08 10:38:15
【问题描述】:

我正在使用 openDicom.net 读取 dicom 标签,如下所示:

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 标签值?

【问题讨论】:

  • 为什么这被否决了?这是一个合法的问题。

标签: c# tags dicom


【解决方案1】:

value.ToString() 方法未实现。在 Value.cs 中实现您自己的方法,您将获得“Value”的值。

例如(仅字符串和数值):

public override string ToString()
{
 return valueList[0].ToString();
}

【讨论】:

    【解决方案2】:

    我假设 sq 是一个序列...

    我没有使用过 openDicom,但我很确定你在那里所做的事情不会产生你想要的结果。

    您只有一个标签、描述和 val_rep 变量,但您使用 foreach 填充它们,这意味着序列中的最后一个 DataElement 将是您检索的唯一值。您可以使用以下方法达到相同的效果:

    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 时单步执行,它将加载您的 DICOM 文件中包含的所有不同 DataElement。

    如果我不在此处,请随时返回评论或在您的原始帖子中发布更多信息。

    【讨论】:

    • 您的代码没有读取任何标签。我的代码读取的内容与其他查看器相同,但我找不到如何显示标签值。
    • 当您逐步执行 foreach 时,val_rep 是否会加载其他值?我的观点是,即使您在序列的 DataElements 上使用 foreach,您仍然只能从序列的最终 DataElement 中返回值。最终的 DataElement 很可能是空的。
    • @Nathan Wheeler 不知道为什么这被标记为正确答案。 luc 在问你如何获得标签的价值。似乎所有能引导您获得价值的成员都是私有的。
    【解决方案3】:

    使用“Value”类中的“ToArray()”覆盖方法从“DataElement”中的“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));
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-03
      相关资源
      最近更新 更多