发新话题
打印

findscu无法查找dicom服务器上的文件

findscu无法查找dicom服务器上的文件

用dcmtk中的findscu无法查找dicom服务器上的文件

命令如下:findscu 192.168.0.100 5678 -aec "CONQUESTSRV1" -v -k 0010,0020="*" -P

结果是:

equesting Association
Association Accepted (Max Send PDV: 16372)
Find SCU RQ: MsgID 1
REQUEST:

# Dicom-Data-Set
# Used TransferSyntax: UnknownTransferSyntax
(0010,0020) LO
  • # 2, 1 PatientID
    --------
    C-Find RSP: MsgID: 1 [Status=Failed: UnableToProcess]
    AffectedSOPClassUID: =FINDPatientRootQueryRetrieveInformationModel
    Data Set: Not Present
    Releasing Association"



    确信网络、地址、AE都没有错,服务端是ConQuestDICOMServer且工作正常(用eFilm验证过)

    请问各位这是怎么回事?这是小弟我的第一个项目,急!
  • TOP

    findscu无法查找dicom服务器上的文件

    嗯,不好意思,上面的传输语法错了。为此我改了如下:

    为了方便查询,我做了一个查询文件内容如下:

    (0008,0000) VL [] # IdentifyingGroupLength
    (0008,0020) DA [] # StudyDate
    (0008,0030) TM [] # StudyTime
    (0008,0050) SH [] # AccessionNumber
    (0008,0052) CS [Study ] # QueryRetrieveLevel
    (0008,0090) PN [] # ReferringPhysiciansName
    (0008,1030) LO [] # StudyDescription
    (0010,0000) VL [] # patienGroupLength
    (0010,0010) PN [] # PatientsName
    (0010,0020) LO [] # PatientID
    (0010,0030) DA [] # patientBirthDate
    (0010,0040) CS [] # PatientSex
    (0020,0000) VL [] # ImageGroupLength
    (0020,000d) UI [] # StudyInstanceUID
    (0020,0010) SH [] # StudyID

    将其转换为query.dcm后对ConQuestDICOMServe服务端再次查询如下:

    findscu 192.168.0.100 5678 -aec "CONQUESTSRV1" -v -k 0010,0020="*" query.dcm -S

    返回如下:

    Requesting Association
    Association Accepted (Max Send PDV: 16372)
    Find SCU RQ: MsgID 1
    REQUEST:

    # Dicom-Data-Set
    # Used TransferSyntax: LittleEndianExplicit
    (0008,0000) UL 54 # 4, 1 IdentifyingGroupLength
    (0008,0020) DA (no value available) # 0, 0 StudyDate
    (0008,0030) TM (no value available) # 0, 0 StudyTime
    (0008,0050) SH (no value available) # 0, 0 AccessionNumber
    (0008,0052) CS [Study ] # 6, 1 QueryRetrieveLevel
    (0008,0090) PN (no value available) # 0, 0 ReferringPhysiciansName
    (0008,1030) LO (no value available) # 0, 0 StudyDescription
    (0010,0000) UL 32 # 4, 1 PatientGroupLength
    (0010,0010) PN (no value available) # 0, 0 PatientsName
    (0010,0020) LO
  • # 2, 1 PatientID
    (0010,0030) DA (no value available) # 0, 0 PatientsBirthDate
    (0010,0040) CS (no value available) # 0, 0 PatientsSex
    (0020,0000) UL 16 # 4, 1 ImageGroupLength
    (0020,000d) UI (no value available) # 0, 0 StudyInstanceUID
    (0020,0010) SH (no value available) # 0, 0 StudyID
    --------
    C-Find RSP: MsgID: 1 [Status=Failed: UnableToProcess]
    AffectedSOPClassUID: =FINDStudyRootQueryRetrieveInformationModel
    Data Set: Not Present
    Releasing Association

    很显然连接上了,但服务器那端出了问题,但这个服务器应该是没有问题的(用eFilm验证过)。为了验证findscu,我又用同样的命名查询了dcmtk中以imagectn作为服务器的机器,当然端口和AE改了

    findscu 192.168.0.100 6789 -aec "COMMON" -v -k 0010,0020="*" query.dcm -S

    结果如下:

    Requesting Association
    Association Accepted (Max Send PDV: 16372)
    Find SCU RQ: MsgID 1
    REQUEST:

    # Dicom-Data-Set
    # Used TransferSyntax: LittleEndianExplicit
    (0008,0000) UL 54 # 4, 1 IdentifyingGroupLength
    (0008,0020) DA (no value available) # 0, 0 StudyDate
    (0008,0030) TM (no value available) # 0, 0 StudyTime
    (0008,0050) SH (no value available) # 0, 0 AccessionNumber
    (0008,0052) CS [Study ] # 6, 1 QueryRetrieveLevel
    (0008,0090) PN (no value available) # 0, 0 ReferringPhysiciansName
    (0008,1030) LO (no value available) # 0, 0 StudyDescription
    (0010,0000) UL 32 # 4, 1 PatientGroupLength
    (0010,0010) PN (no value available) # 0, 0 PatientsName
    (0010,0020) LO
  • # 2, 1 PatientID
    (0010,0030) DA (no value available) # 0, 0 PatientsBirthDate
    (0010,0040) CS (no value available) # 0, 0 PatientsSex
    (0020,0000) UL 16 # 4, 1 ImageGroupLength
    (0020,000d) UI (no value available) # 0, 0 StudyInstanceUID
    (0020,0010) SH (no value available) # 0, 0 StudyID
    --------
    RESPONSE: 1 (Pending)

    # Dicom-Data-Set
    # Used TransferSyntax: LittleEndianExplicit
    (0008,0020) DA [2002.04.01] # 10, 1 StudyDate
    (0008,0030) TM [11:11:00] # 8, 1 StudyTime
    (0008,0050) SH (no value available) # 0, 0 AccessionNumber
    (0008,0052) CS [STUDY ] # 6, 1 QueryRetrieveLevel
    (0008,0054) AE [COMMON] # 6, 1 RetrieveAETitle
    (0008,0090) PN (no value available) # 0, 0 ReferringPhysiciansName
    (0008,1030) LO (no value available) # 0, 0 StudyDescription
    (0010,0010) PN [Anonymous ] # 10, 1 PatientsName
    (0010,0020) LO [0000] # 4, 1 PatientID
    (0010,0030) DA (no value available) # 0, 0 PatientsBirthDate
    (0010,0040) CS [M ] # 2, 1 PatientsSex
    (0020,000d) UI [1111] # 4, 1 StudyInstanceUID
    (0020,0010) SH [0000] # 4, 1 StudyID
    --------
    RESPONSE: 2 (Pending)

    # Dicom-Data-Set
    # Used TransferSyntax: LittleEndianExplicit
    (0008,0020) DA [20030401] # 8, 1 StudyDate
    (0008,0030) TM [124030] # 6, 1 StudyTime
    (0008,0050) SH [4282] # 4, 1 AccessionNumber
    (0008,0052) CS [STUDY ] # 6, 1 QueryRetrieveLevel
    (0008,0054) AE [COMMON] # 6, 1 RetrieveAETitle
    (0008,0090) PN (no value available) # 0, 0 ReferringPhysiciansName
    (0008,1030) LO (no value available) # 0, 0 StudyDescription
    (0010,0010) PN [COLOGRAPHIE^^^^ ] # 16, 1 PatientsName
    (0010,0020) LO [0000] # 4, 1 PatientID
    (0010,0030) DA (no value available) # 0, 0 PatientsBirthDate
    (0010,0040) CS [F ] # 2, 1 PatientsSex
    (0020,000d) UI [1.2.392.200036.9116.2.2.2.1762587269.1055387749.844680] # 54, 1 StudyInstanceUID
    (0020,0010) SH [8591] # 4, 1 StudyID
    --------
    C-Find RSP: MsgID: 1 [Status=Success]
    AffectedSOPClassUID: =FINDStudyRootQueryRetrieveInformationModel
    Data Set: Not Present
    Releasing Association

    这次成功了。

    现在我面临的问题就是,如果dcmtk无法与其他遵循Dicom标准的程序通信的话,我就无法利用它提供的函数写出程序,或者是更恐怖的选择:改写imagectn作为一个合格的服务器。这是我不想面对的。望各位能解小弟心中疑惑,给我有个安稳觉睡。

    [em06][em06]
  • TOP

    发新话题