【发布时间】:2011-08-09 08:51:25
【问题描述】:
我想在 C# 中使用 GDCM 库加载 DICOM 图像。
我已经下载/安装了 GDCM 库,但我不知道如何使用 GDCM 读取 DICOM 图像并将其转换为可以在 WPF 应用程序中显示的格式。
有人可以分享任何一段代码,告诉我如何实现这一点吗?
【问题讨论】:
我想在 C# 中使用 GDCM 库加载 DICOM 图像。
我已经下载/安装了 GDCM 库,但我不知道如何使用 GDCM 读取 DICOM 图像并将其转换为可以在 WPF 应用程序中显示的格式。
有人可以分享任何一段代码,告诉我如何实现这一点吗?
【问题讨论】:
我没有玩 dicom,但出于好奇,我在 how to convert gdcm image to Qt Image 上搜索了示例(它是在 c++ 中,但我希望 c# 端口提供相同的功能)
您可能只是做他们正在做的事情,但有趣的部分是如何创建 WPF Image 而不是 QTImage。基本上,在处理本机缓冲区时,WriteableBitmap 是您要使用的类。所以而不是:
imageQt = new QImage(ubuffer, dimX, dimY, QImage::Format_RGB888);
你可以这样使用:
int dimX;
int dimY;
byte* uBuffer; // Those fields are filled from code from this sample
WriteableBitmap bmp = new WriteableBitmap(dimX, dimY, 96.0, 96.0, PixelFormats.Bgr24, null);
bmp.Lock();
bmp.CopyPixels(new Int32Rect(0, 0, dimX, dimY), uBuffer, uBuffer.Length,
uBuffer.Length / dimY);
bmp.Unlock();
WriteableBitmap 是BitmapSource,因此它可以像 WPF 中的任何其他 Image 一样使用。
【讨论】: