如何在VTK DICOM Reader中读取ImageType(0008,0008)?

时间:2017-10-18 21:08:57

标签: c++ vtk dicom

我手上有一个应用程序,位于VTK 5.3之上。使用vtkDICOMImageReader我得到的图像位置,宽度,高度......,到目前为止一直很好。

但是有没有一种方法可以用标签(0008,0008)读取ImageType字符串?

更一般,我可以使用vtkDICOMImageReader读回任何标签吗?传递标签值,获取DICOM文件中的内容?

1 个答案:

答案 0 :(得分:0)

#include "gdcmReader.h"
#include "gdcmMediaStorage.h"

int main(int argc, char *argv [])
{
  if( argc < 2 ) return 1;
  const char *filename = argv[1];

  gdcm::Reader reader;
  reader.SetFileName( filename);
  if( !reader.Read() )
    {
    std::cerr << "Could not read: " << filename << std::endl;
    return 1;
    }
  std::stringstream strm;

  gdcm::File &file = reader.GetFile();
  gdcm::DataSet &ds = file.GetDataSet();
  gdcm::FileMetaInformation &fmi = file.GetHeader();

  ConstIterator it = ds.GetDES().begin();

  for( ; it != ds.GetDES().end(); ++it){
      if (it->GetTag()==gdcm::Tag (0x0008, 0x0008)){
      std:cout << it;
  }