如何从 PACS 中找到已接受的 Dicom 关联,然后根据已接受的语法更新我的 Dicom 文件,然后发送到 PACS

问题描述 投票:0回答:0

我会尽力解释。 根据我的一致性声明,我想支持 VL 内窥镜和二次图像捕获语法。 在我的 dicom 文件中,我将 secondaryimagecapture 和 Explicit VRIndian 语法设置为默认值。 现在,我正尝试按照以下示例代码使用 fo-dicom 与 PACS 建立关联。

var connectionRequest = new AdvancedDicomClientConnectionRequest
        {                
NetworkStreamCreationOptions = new NetworkStreamCreationOptions { 
Host = "127.0.0.1", Port = 1004 }
        };
        
var openAssociationRequest = new 
AdvancedDicomClientAssociationRequest
        {
            CallingAE = "SCU",
            CalledAE = "SCP"
        };
         var connection = await 
 AdvancedDicomClientConnectionFactory.OpenConnectionAsync(connectionRequest, _cancellationToken);
            
 openAssociationRequest.PresentationContexts.Add(DicomUID.VLEndoscopicImageStorage, DicomTransferSyntax.ExplicitVRLittleEndian);
           openAssociationRequest.PresentationContexts.Add(DicomUID.VLEndoscopicImageStorage, DicomTransferSyntax.ImplicitVRLittleEndian);
        openAssociationRequest.PresentationContexts.Add(DicomUID.SecondaryCaptureImageStorage, DicomTransferSyntax.ExplicitVRLittleEndian);
        openAssociationRequest.PresentationContexts.Add(DicomUID.SecondaryCaptureImageStorage, DicomTransferSyntax.ImplicitVRLittleEndian);

var association = await connection.OpenAssociationAsync(openAssociationRequest, _cancellationToken);       

现在我可以在 connection.OpenAssociationAsync 看到 PACS 接受的关联,但我不确定如何知道接受了什么语法,以便我可以使用接受的关联语法更新我的 Dicom 文件数据集,然后将它们发送到 PACS下面。

var cStoreRequest = new DicomCStoreRequest(dicomFile);

await association.SendCStoreRequestAsync(cStoreRequest, _cancellationToken);

如果我知道建立了什么关联,将帮助我更新 dicom 文件语法,然后发送到 PACS。

非常感谢任何建议。

我在线尝试了所有选项,但没有任何效果/帮助很大。

dicom fo-dicom
© www.soinside.com 2019 - 2024. All rights reserved.