2021年3月13日星期六

How to get attributes for SOPClassUID and SOPInstanceUID with C-FIND?

Using DCMTK, I am doing query with C-FIND to get SOPClassUID and SOPInstanceUID. I need these attributes later to copy SR file with C-MOVE. First I use StudyInstanceUID and PatientID to get SeriesInstanceUID (query at SERIES level with FINDPatientRootQueryRetrieveInformationModel). This is always successful. Then, I use the SeriesInstanceUID plus previous levels unique keys to get the SOPClassUID and SOPInstanceUID (query at IMAGE level with FINDPatientRootQueryRetrieveInformationModel). This is successful in most of the cases but there are some cases that the result is null for both SOPClassUID and SOPInstanceUID with error "Received Final Find Response (Failed: UnableToProcess)". I have attached the logs for the successful and failed cases below. What am I doing wrong? Thank you very much for your help. Logs for the successful case ` Perform a query at SERIES level to get SeriesInstanceUID

I: Requesting Association I: Association Accepted (Max Send PDV: 16372) I: Sending Find Request (MsgID 1) I: Request Identifiers: I: I: # Dicom-Data-Set I: # Used TransferSyntax: Little Endian Explicit I: (0008,0052) CS [SERIES] # 6, 1 QueryRetrieveLevel I: (0008,0060) CS [SR] # 2, 1 Modality I: (0010,0020) LO [CAROTID1234] # 12, 1 PatientID I: (0020,000d) UI [1.2.392.200036.9116.6.18.16593365.1467.20210219204625661.1.62] # 62, 1 StudyInstanceUID I: (0020,000e) UI (no value available) # 0, 0 SeriesInstanceUID I: (0020,0011) IS (no value available) # 0, 0 SeriesNumber I: I: Received Final Find Response (Success) I: Releasing Association

Results of first query at SERIES level: SeriesInstanceUID: 1.2.392.200036.9116.6.18.16593365.4835.20210219205009666.2.554 SeriesNumber: 2 Modality: SR

Now perform a second query at IMAGE level to get SOPClassUID and SOPInstanceUID

I: Requesting Association I: Association Accepted (Max Send PDV: 16372) I: Sending Find Request (MsgID 1) I: Request Identifiers: I: I: # Dicom-Data-Set I: # Used TransferSyntax: Little Endian Explicit I: (0008,0016) UI (no value available) # 0, 0 SOPClassUID I: (0008,0018) UI (no value available) # 0, 0 SOPInstanceUID I: (0008,0052) CS [IMAGE] # 6, 1 QueryRetrieveLevel I: (0008,0060) CS [SR] # 2, 1 Modality I: (0010,0020) LO [CAROTID1234] # 12, 1 PatientID I: (0020,000d) UI [1.2.392.200036.9116.6.18.16593365.1467.20210219204625661.1.62] # 62, 1 StudyInstanceUID I: (0020,000e) UI [1.2.392.200036.9116.6.18.16593365.4835.20210219205009666.2.554] # 62, 1 SeriesInstanceUID I: (0020,0011) IS (no value available) # 0, 0 SeriesNumber I: (0040,a730) SQ (Sequence with explicit length #=0) # 0, 1 ContentSequence I: (fffe,e0dd) na (SequenceDelimitationItem for re-encod.) # 0, 0 SequenceDelimitationItem I: I: Received Final Find Response (Success) I: Releasing Association

Results of second query at IMAGE level: SeriesInstanceUID: 1.2.392.200036.9116.6.18.16593365.4835.20210219205009666.2.554 SopClassUID: 1.2.840.10008.5.1.4.1.1.88.22 SopInstanceUID: 1.2.392.200036.9116.6.18.16593365.7072.20210219205009674.2.556 SeriesNumber: 2 Modality: SR Logs for the FAILED case Perform a query at SERIES level to get SeriesInstanceUID

I: Requesting Association I: Association Accepted (Max Send PDV: 16372) I: Sending Find Request (MsgID 1) I: Request Identifiers: I: I: # Dicom-Data-Set I: # Used TransferSyntax: Little Endian Explicit I: (0008,0052) CS [SERIES] # 6, 1 QueryRetrieveLevel I: (0008,0060) CS [SR] # 2, 1 Modality I: (0010,0020) LO [ID231232] # 8, 1 PatientID I: (0020,000d) UI [1.3.46.670589.14.1000.300.4.101708.20210307204243.4.0] # 54, 1 StudyInstanceUID I: (0020,000e) UI (no value available) # 0, 0 SeriesInstanceUID I: (0020,0011) IS (no value available) # 0, 0 SeriesNumber I: I: Received Final Find Response (Success) I: Releasing Association

Results of first query at SERIES level: SeriesInstanceUID: 1.3.46.670589.14.1000.300.3.101708.20210307205034.4.0 SeriesNumber: 2 Modality: SR

Now perform a second query at IMAGE level to get SOPClassUID and SOPInstanceUID

I: Requesting Association I: Association Accepted (Max Send PDV: 16372) I: Sending Find Request (MsgID 1) I: Request Identifiers: I: I: # Dicom-Data-Set I: # Used TransferSyntax: Little Endian Explicit I: (0008,0016) UI (no value available) # 0, 0 SOPClassUID I: (0008,0018) UI (no value available) # 0, 0 SOPInstanceUID I: (0008,0052) CS [IMAGE] # 6, 1 QueryRetrieveLevel I: (0008,0060) CS [SR] # 2, 1 Modality I: (0010,0020) LO [ID231232] # 8, 1 PatientID I: (0020,000d) UI [1.3.46.670589.14.1000.300.4.101708.20210307204243.4.0] # 54, 1 StudyInstanceUID I: (0020,000e) UI [1.3.46.670589.14.1000.300.3.101708.20210307205034.4.0] # 54, 1 SeriesInstanceUID I: (0020,0011) IS (no value available) # 0, 0 SeriesNumber I: (0040,a730) SQ (Sequence with explicit length #=0) # 0, 1 ContentSequence I: (fffe,e0dd) na (SequenceDelimitationItem for re-encod.) # 0, 0 SequenceDelimitationItem I: I: Received Final Find Response (Failed: UnableToProcess) I: Releasing Association

Results of second query at IMAGE level: SeriesInstanceUID: 1.3.46.670589.14.1000.300.3.101708.20210307205034.4.0 SopClassUID: (null) SopInstanceUID: (null) SeriesNumber: 2 Modality: SR`

https://stackoverflow.com/questions/66620679/how-to-get-attributes-for-sopclassuid-and-sopinstanceuid-with-c-find March 14, 2021 at 11:00AM

没有评论:

发表评论