如何确定每个 DICOM 图像使用哪种传输语法?

How to determine which transfer syntax to use for each DICOM image?

我是 DICOM 协议的新手,我有一个与 "Transfer Syntax" 相关的问题需要在发送图像之前选择。

我有一个要发送到远程服务器的图像列表。该列表中的图像可以是以下格式之一:CR、CT、DOC、DX、ES、KO、MG、MR、NM、OT、PR、PT、RF、SC、US、XA。 所以我想知道是否有一些列表可以让我看到哪种传输语法对应于哪种 DICOM 格式?我可以获取我的 DICOM 图像并从上面确定它们的格式,但我不确定每个图像使用什么传输语法。

这是一个示例,当我对一张图像进行硬编码时:

   DicomDataSet ct = new DicomDataSet("CT.dcm");
   DicomDataSetCollection instancesToSend = new DicomDataSetCollection();
   instancesToSend.Add(ct);
   DicomAssociation connection = new DicomAssociation();
   // "Send CT in Implicit VR Little endian format"
   connection.RequestedContexts.Add(ct.SOPClass, "1.2.840.10008.1.2");
   connection.Open("remote host", 104, "client", "server"); 
   connection.SendInstances(instancesToSend);
   connection.Close();

正如我所说,我有图片列表。我可以循环使用它们中的每一个,但我如何知道每个 DICOM 图像使用哪种传输语法?

只要您只想创建和发送图像,一个合理的决定就是只支持隐式小字节序。它是 DICOM 中的默认传输语法 - 每个声称符合 DICOM 标准的系统都必须支持它。

当你想应用有损压缩或需要接收对象时,它会变得更加复杂。