首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >显示存储的比特少于分配的比特的DICOM monochrome2

显示存储的比特少于分配的比特的DICOM monochrome2
EN

Stack Overflow用户
提问于 2017-06-02 14:32:45
回答 2查看 570关注 0票数 5

我想显示具有光度解释MONOCHROME2的DICOM文件。

图像的一些规格是-

代码语言:javascript
复制
Rows:           1024
Columns:        1024
No of Frames:   622
Bits Allocated: 16
Bits Stored:    10
High Bit:       9
Pixel Representation: 0
Sample per pixel: 1

我使用gdcmRegionReader以下面的方式提取单帧字节数组。

代码语言:javascript
复制
 gdcm.ImageRegionReader _regionReader = new gdcm.ImageRegionReader();
 _regionReader.SetRegion(_boxRegion);  // _boxRegion is some region
 _regionReader.ReadIntoBuffer(Result, (uint)Result.Length);
 Marshal.Copy(Result.ToArray(), 0, _imageData.GetScalarPointer(), 
 Result.ToArray().Length);
 _viewer.SetInput(_imageData);  // _viewer = vtkImageViewer

但是当我显示该文件时,它是这样显示的。

但原始图像是这样的..

所以有人可以帮助我如何加载和显示MONOCHROME2 dicom图像。

EN

回答 2

Stack Overflow用户

发布于 2017-06-06 15:12:50

免责声明:我从未使用过有问题的工具包。基于我对DICOM的理解,我尝试回答这个问题。根据我对DICOM的经验,语法很少是问题所在。真正的问题是概念和术语。

我在输出中看到了两个问题。

一个是关于渲染的图像的一部分。请注意,输出中不会呈现整个数据。查看工具包文档,了解如何在渲染图像时设置尺寸/边界。

另一个问题是输出质量。最初,我怀疑传输语法可能是问题所在。我不认为它是,但只要确保你是不妥协的图像渲染之前。我不确定你的工具包在渲染时是如何处理压缩的。

还有其他方法可以在工具包中呈现像素数据。

代码语言:javascript
复制
_ImageViewer.SetRenderWindow(renderWindow);
_ImageViewer.GetRenderer().AddActor2D(sliceStatusActor);
_ImageViewer.GetRenderer().AddActor2D(usageTextActor);
_ImageViewer.SetSlice(_MinSlice);
_ImageViewer.Render();

上面的代码是从"http://www.vtk.org/Wiki/VTK/Examples/CSharp/IO/ReadDICOMSeries“复制过来的。详细的代码可以在这里找到。

以下链接也可能对您有所帮助:

http://vtk.1045678.n5.nabble.com/How-to-map-negative-grayscale-to-color-td5737080.html

https://www.codeproject.com/Articles/31581/Displaying-bit-Images-Using-C

票数 1
EN

Stack Overflow用户

发布于 2017-06-06 15:17:48

您真的应该在代码中使用vtkGDCMImageReader2vtkGDCMImageReader2精确封装了gdcm::RegionReader,以便与VTK绑定。

如果由于某种原因不能直接使用这个类,只需将main函数中的C++代码复制/粘贴到C#代码中即可。

请参见:

  • http://gdcm.sourceforge.net/2.6/html/classvtkGDCMImageReader2.xhtml
  • http://gdcm.sourceforge.net/2.6/html/classgdcm_1_1ImageRegionReader.xhtml
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44322287

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档