问题标签 [fo-dicom]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
390 浏览

c# - fo-Dicom - 如何从 DicomFile 中提取图像帧

我需要使用 fo-DICOM 从 DICOM SC 中提取所有图像帧。我有一个测试应用程序可以提取和显示图像,效果很好。但是,我需要将单个图像保存到数据库中,并且遇到了问题。

到目前为止,我有以下代码:

我得到一个 DicomImagingException, "Cannot cast to 'Bitmap'" on images.RenderImage。它在我的测试代码中工作,当我调用时PictureBox.Image = _image.RenderImage(count).As<Bitmap>();,我RenderImage认为必须专门用于渲染(顾名思义)。

我应该如何将单个帧提取到将保存到数据库中的字符串?

0 投票
1 回答
126 浏览

unit-testing - 从资源加载时无法访问 DICOM 图像流

我正在使用 fo-Dicom 访问图像流。我有单元测试调用加载测试 DICOM 文件的方法。为了自动化构建管道中的过程,我从使用图像路径切换到加载资源。我现在像这样加载我的测试 DICOM 文件:

这将返回一个 DicomFile,我可以访问相关的标签。但是,当我使用下面的(缩写)代码加载图像时,在 RenderImage 行上出现“无法从流中读取 - 可能已关闭”的异常。

当我从文件路径(RequestDicomFile 中注释掉的代码)打开 DicomFile 时,我可以访问渲染的图像。

有谁知道为什么资源文件会发生这种情况?或者,是否有更好的方法来引用我的测试文件,而无需尝试将它们复制到 Azure 管道中的正确路径?

0 投票
1 回答
130 浏览

fo-dicom - 我可以通过 FO-DICOM 中的登录号查询 MWL(Modality Worklist)吗?

如何使用 FO-DICOM 通过登录号查询 MWL?当我调用 CreateWorklistQuery 方法时,登录号不是我可以使用的参数之一。

0 投票
2 回答
113 浏览

c# - 如何使用 fo-dicom 从 DICOMDIR 中删除文件

我使用 fo-dicom 创建了 DICOMDIR,如下所示。

我必须从现有的 DICOMDIR 中删除已添加的文件,但在 DicomDirectory.cs 类中找不到方法。

如何使用 fo-dicom 从 DICOMDIR 成功删除文件引用,而不是重新创建整个 DICOMDIR?

0 投票
0 回答
32 浏览

fo-dicom - 生成的 DICOM 文件打不开

SCP 打印上生成的 DICOM 文件无法打开!我只是想以 DICOM 格式保存图像。我尝试了很多方法。感谢您的贡献!fo-dicom 4.0.7

0 投票
1 回答
29 浏览

c# - 帧数标签出现在数据集中但不在 DICOMDIR C# 中

我使用 AddFile(dicomFile,name) 方法添加 dicom 文件,但没有出现帧数标记。

我也尝试了 addorupdate 方法,但它不起作用。
我使用 fo-dicom 库 4.0.7

0 投票
1 回答
84 浏览

c# - 无法使用 fodicom 从 PACS 保存 DICOM

我正在使用 FoDicom 示例解决方案中的 QueryRetrieve SCU 项目...

FoDicom 样本

代码永远不会命中 SaveImage 方法。我正在查询www.dicomserver.co.uk以获取示例图像...我对此很陌生,不知所措。我错过了什么?

0 投票
1 回答
44 浏览

.net-core - 如何设置dicomfile编码

fo-dicom 4.0.6。

网核5

我根据现有文件创建 dicom 文件。仅在西里尔文中添加少量标签据我了解,当我打开 dicomfile 时,标签 SpecificCharacterSet 用于定义标签的值编码。据我了解,我可以使用自定义 IOManager 更改此行为。

前任 如果我想强制编码 1251 我可以定义类

并分配这个IOManager.SetImplementation(new AnsiIOManager());

我对吗?

有时我需要在多线程中同时创建不同编码的文件。我可以动态更改此 IOManager 编码而不是更改静态类型值吗?

0 投票
1 回答
54 浏览

c# - 使用 Fellow Oak Dicom Lib 创建由 PixelDataFactory.Create 产生的 IPixelData 数据是“像素值”吗?

我只能找到一个参考解释如何使用Fellow Oak 库获取 Hounsfield 值,该库说它是由公式确定的

此公式中的“像素值”是否高于由PixelDataFactory 中的Create 方法产生的IPixelData数据?

对于我使用 DicomPixelData 的 MONOCHROME2 图像数据集,BitsAllocated=16 BitsDepth.BitStored=16。PixelDataFactor.Create 方法返回GrayscalePixelData16S IPixelData 和所有图像范围内的数据(使用MinMax())-2048 和 1013)。我使用以下命令生成此 IPixelData.Data:

对于我正在使用的 95 个轴向图像,Rescale Intercept=0 和 Rescale Slope=1,所以在我的情况下,Hounsfield 单位将是stackoverflow post中显示的公式中的“像素值”输入。

我可以找到的参考资料说 Hounsfield 值范围 -1024 HU 到 3071 HU,这是否意味着生成的 IPixelData 数据不是 Hounsfield 值?最终,我怎样才能使用同胞橡树库获得 Hounsfield 场?

0 投票
0 回答
22 浏览

c# - 在 Fo-Dicom 中实现 CancellationToken

我需要在 fo-dicom 中实现一个取消令牌,但没有找到任何合适的解决方案或示例,基于此我可以获得一个想法或帮助,所以如果有人已经实现或有任何示例,请在此处发布。非常感谢,