2017-10-18 61 views
0

我有手坐在VTK 5.3之上的應用。使用vtkDICOMImageReader我得到的圖像位置,寬度,高度,...,到目前爲止一切順利。如何VTK DICOM閱讀器將ImageType讀取(0008,0008)?

但有讀字符串將ImageType與標籤(0008,0008)的好辦法?

更一般的,我可以閱讀使用vtkDICOMImageReader任何標記回來?傳遞標籤值,找回DICOM文件中的內容?

+0

我認爲你需要一個ITK圖像讀取。這是一個例子。 https://itk.org/Doxygen/html/Examples_2IO_2DicomImageReadPrintTags_8cxx-example.html –

回答

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; 
    }