无法使用 GDCM 从 DICOM 获取像素数据



我需要一些关于GDCM的帮助。

几天来,我一直在尝试从DICOM文件中获取像素数据。有很多方法可以做到这一点...我决定使用GDCM。我下载了他们的库并尝试获取这样的像素数据:

#include "gdcmFileHelper.h"
#include "gdcmFile.h"
int main( int argc, char* argv[] )
{
   gdcm::File *f1 = new gdcm::File();
   f1->SetFileName( 'test.dcm' );
   f1->Load();   
   gdcm::FileHelper *fh = gdcm::FileHelper::New(f1);
   unsigned int *imageData = fh->GetImageDataRaw();
   unsigned int imageDatasize = fh->GGetImageDataRawSize();
   return 0;
}  

但是,我在他们的标题和库列表中没有gdcmFileHelper.h......所以我试过这样:

#include "gdcmImageReader.h"
#include "gdcmImage.h"
int main(int argc, char *argv[])
{
  gdcm::ImageReader reader;
  reader.SetFileName( filename );
  const gdcm::Image &image = reader.GetImage();
  return 0;
}

如何以这种方式获取像素数据?或。。我在哪里可以得到gdcmFileHelper.h...

你必须调用图像。GetBuffer((,例如参见 PIL <-> GDCM 绑定:

ConvertPIL.py

你的第一个例子是行不通的,它使用 GDCM 1.x,它已被放弃 AFAIK。

最新更新