在Dlang中读取Dicom文件

时间:2019-05-23 15:12:28

标签: d dicom

是否可以使用D语言读取Dicom图像(在医学领域广泛使用)?

Dicom规格给定为here

此页面上对此主题进行了一些讨论,但没有this forum的详细信息。

我认为没有用于此目的的特定d库,但是有很多C库可供使用,例如:

https://dicom.offis.de/dcmtk.php.en

https://github.com/dgobbi/vtk-dicom

这里有一些关于使用C读取this forum上的Dicom文件的讨论。

这些库之一可以用来读取D语言的Dicom图像吗?

PS:here提供了示例Dicom图像。

1 个答案:

答案 0 :(得分:3)

Imebra(C ++ DICOM库)提供了一个SWIG idl,用于为C ++库生成Java和Python包装器。

对SWIG idl的一些调整也应该允许生成D的包装器。

免责声明:我是Imebra的作者

编辑:详细说明

  • 下载Imebra来源分发版本
  • cd进入分发根文件夹
  • I'm a worker I'm a worker
  • mkdir build
  • cd build
  • cmake ..
  • libimebra.so将在构建文件夹中
  • make
  • cd ../wrappers
  • mkdir dlang
  • 选项-d2告诉您为D2(phobos)创建一个包装,否则,包装将为D1(Tango)
  • swig -d -d2 -c++ -I../library/include/ -outdir dlang -o dlang/dlang_wrapper.cxx swig.i
  • 现在构建文件夹将包含g++ -shared -o ../build/libimebra_wrap.so -fPIC -I../library/include dlang/dlang_wrapper.cxx(标准Imebra库)和libimebra.so(D的包装器)。
  • 在您的D项目中同时包含libimebra_wrap.soimebra.dimebra_im.d使用imebra_im.d